devices/8139too-2.6.13-ethercat.c
changeset 495 88c597598bbc
parent 474 9850c3fb3865
child 497 04552130dd54
equal deleted inserted replaced
494:178b1b43a88c 495:88c597598bbc
  2905 		if (!(rtl_ec_dev = ecdev_register(ec_device_master_index,
  2905 		if (!(rtl_ec_dev = ecdev_register(ec_device_master_index,
  2906 			rtl_ec_net_dev, rtl8139_interrupt, THIS_MODULE))) {
  2906 			rtl_ec_net_dev, rtl8139_interrupt, THIS_MODULE))) {
  2907 			printk(KERN_ERR "Failed to register EtherCAT device!\n");
  2907 			printk(KERN_ERR "Failed to register EtherCAT device!\n");
  2908 			goto out_pci;
  2908 			goto out_pci;
  2909 		}
  2909 		}
  2910 
       
  2911 		printk(KERN_INFO "Starting EtherCAT device...\n");
       
  2912 		if (ecdev_start(ec_device_master_index)) {
       
  2913 			printk(KERN_ERR "Failed to start EtherCAT device!\n");
       
  2914 			goto out_unregister;
       
  2915 		}
       
  2916 	} else {
  2910 	} else {
  2917 		printk(KERN_WARNING "No EtherCAT device registered!\n");
  2911 		printk(KERN_WARNING "No EtherCAT device registered!\n");
  2918 	}
  2912 	}
  2919 
  2913 
  2920 	return 0;
  2914 	return 0;
  2921 
  2915 
  2922     out_unregister:
       
  2923 	ecdev_unregister(ec_device_master_index, rtl_ec_dev);
       
  2924     out_pci:
  2916     out_pci:
  2925 	pci_unregister_driver(&rtl8139_pci_driver);
  2917 	pci_unregister_driver(&rtl8139_pci_driver);
  2926     out_return:
  2918     out_return:
  2927 	return -1;
  2919 	return -1;
  2928 
  2920 
  2935 	/* EtherCAT >>>>>>>>>>>>>>>>>>>>>>>>>>>>*/
  2927 	/* EtherCAT >>>>>>>>>>>>>>>>>>>>>>>>>>>>*/
  2936 
  2928 
  2937 	printk(KERN_INFO "Cleaning up RTL8139-EtherCAT module...\n");
  2929 	printk(KERN_INFO "Cleaning up RTL8139-EtherCAT module...\n");
  2938 
  2930 
  2939 	if (rtl_ec_net_dev) {
  2931 	if (rtl_ec_net_dev) {
  2940 		printk(KERN_INFO "Stopping device...\n");
       
  2941 		ecdev_stop(ec_device_master_index);
       
  2942 		printk(KERN_INFO "Unregistering device...\n");
  2932 		printk(KERN_INFO "Unregistering device...\n");
  2943 		ecdev_unregister(ec_device_master_index, rtl_ec_dev);
  2933 		ecdev_unregister(ec_device_master_index, rtl_ec_dev);
  2944 		rtl_ec_dev = NULL;
  2934 		rtl_ec_dev = NULL;
  2945 	}
  2935 	}
  2946 
  2936