diff options
Diffstat (limited to 'package/ep80579-drivers/patches/230-can_remove_driver_data_direct_access.patch')
-rw-r--r-- | package/ep80579-drivers/patches/230-can_remove_driver_data_direct_access.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/package/ep80579-drivers/patches/230-can_remove_driver_data_direct_access.patch b/package/ep80579-drivers/patches/230-can_remove_driver_data_direct_access.patch new file mode 100644 index 0000000000..533daef1e7 --- /dev/null +++ b/package/ep80579-drivers/patches/230-can_remove_driver_data_direct_access.patch @@ -0,0 +1,41 @@ +diff -Nur a/Embedded/src/CAN/can_main.c b/Embedded/src/CAN/can_main.c +--- a/Embedded/src/CAN/can_main.c 2009-11-30 10:44:39.044269751 +0100 ++++ b/Embedded/src/CAN/can_main.c 2009-11-30 10:54:41.434355642 +0100 +@@ -213,8 +213,8 @@ + spin_lock_init(&(g_can_os[can_num].int_spinlock)); + spin_lock_init(&(g_can_os[can_num].open_spinlock)); + +- dev->dev.driver_data = (void *) &(g_can_os[can_num]); +- if (!dev->dev.driver_data) ++ dev_set_drvdata(&dev->dev, (void *) &(g_can_os[can_num])); ++ if (!dev_get_drvdata(&dev->dev)) + { + printk("Couldn't create CAN device %d. Exiting.\n", + dev->device); +@@ -236,7 +236,7 @@ + *****************************************************************************/ + void can_pci_remove(struct pci_dev *dev) + { +- can_os_t *can_os = dev->dev.driver_data; ++ can_os_t *can_os = dev_get_drvdata(&dev->dev); + + iounmap(can_os->pci_remap); + icp_can_destroy(can_os->can); +@@ -250,7 +250,7 @@ + { + unsigned int i; + unsigned int int_status; +- can_os_t *can_os = dev->dev.driver_data; ++ can_os_t *can_os = dev_get_drvdata(&dev->dev); + int err; + + /* Indicate that we are suspending */ +@@ -321,7 +321,7 @@ + int can_pci_resume(struct pci_dev *dev) + { + unsigned int i; +- can_os_t *can_os = dev->dev.driver_data; ++ can_os_t *can_os = dev_get_drvdata(&dev->dev); + + /* Restore PCI CFG space */ + pci_restore_state(dev); |