diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
commit | 8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch) | |
tree | a8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /drivers/i2c/busses/i2c-pxa-pci.c | |
parent | 406089d01562f1e2bf9f089fd7637009ebaad589 (diff) |
Patched in Tegra support.
Diffstat (limited to 'drivers/i2c/busses/i2c-pxa-pci.c')
-rw-r--r-- | drivers/i2c/busses/i2c-pxa-pci.c | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/drivers/i2c/busses/i2c-pxa-pci.c b/drivers/i2c/busses/i2c-pxa-pci.c index 3d4985695ae..b73da6cd6f9 100644 --- a/drivers/i2c/busses/i2c-pxa-pci.c +++ b/drivers/i2c/busses/i2c-pxa-pci.c | |||
@@ -3,7 +3,6 @@ | |||
3 | * It does not support slave mode, the register slightly moved. This PCI | 3 | * It does not support slave mode, the register slightly moved. This PCI |
4 | * device provides three bars, every contains a single I2C controller. | 4 | * device provides three bars, every contains a single I2C controller. |
5 | */ | 5 | */ |
6 | #include <linux/module.h> | ||
7 | #include <linux/pci.h> | 6 | #include <linux/pci.h> |
8 | #include <linux/platform_device.h> | 7 | #include <linux/platform_device.h> |
9 | #include <linux/i2c/pxa-i2c.h> | 8 | #include <linux/i2c/pxa-i2c.h> |
@@ -94,7 +93,7 @@ out: | |||
94 | return ERR_PTR(ret); | 93 | return ERR_PTR(ret); |
95 | } | 94 | } |
96 | 95 | ||
97 | static int ce4100_i2c_probe(struct pci_dev *dev, | 96 | static int __devinit ce4100_i2c_probe(struct pci_dev *dev, |
98 | const struct pci_device_id *ent) | 97 | const struct pci_device_id *ent) |
99 | { | 98 | { |
100 | int ret; | 99 | int ret; |
@@ -135,7 +134,7 @@ err_mem: | |||
135 | return ret; | 134 | return ret; |
136 | } | 135 | } |
137 | 136 | ||
138 | static void ce4100_i2c_remove(struct pci_dev *dev) | 137 | static void __devexit ce4100_i2c_remove(struct pci_dev *dev) |
139 | { | 138 | { |
140 | struct ce4100_devices *sds; | 139 | struct ce4100_devices *sds; |
141 | unsigned int i; | 140 | unsigned int i; |
@@ -150,7 +149,7 @@ static void ce4100_i2c_remove(struct pci_dev *dev) | |||
150 | kfree(sds); | 149 | kfree(sds); |
151 | } | 150 | } |
152 | 151 | ||
153 | static DEFINE_PCI_DEVICE_TABLE(ce4100_i2c_devices) = { | 152 | static struct pci_device_id ce4100_i2c_devices[] __devinitdata = { |
154 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x2e68)}, | 153 | { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x2e68)}, |
155 | { }, | 154 | { }, |
156 | }; | 155 | }; |
@@ -160,10 +159,20 @@ static struct pci_driver ce4100_i2c_driver = { | |||
160 | .name = "ce4100_i2c", | 159 | .name = "ce4100_i2c", |
161 | .id_table = ce4100_i2c_devices, | 160 | .id_table = ce4100_i2c_devices, |
162 | .probe = ce4100_i2c_probe, | 161 | .probe = ce4100_i2c_probe, |
163 | .remove = ce4100_i2c_remove, | 162 | .remove = __devexit_p(ce4100_i2c_remove), |
164 | }; | 163 | }; |
165 | 164 | ||
166 | module_pci_driver(ce4100_i2c_driver); | 165 | static int __init ce4100_i2c_init(void) |
166 | { | ||
167 | return pci_register_driver(&ce4100_i2c_driver); | ||
168 | } | ||
169 | module_init(ce4100_i2c_init); | ||
170 | |||
171 | static void __exit ce4100_i2c_exit(void) | ||
172 | { | ||
173 | pci_unregister_driver(&ce4100_i2c_driver); | ||
174 | } | ||
175 | module_exit(ce4100_i2c_exit); | ||
167 | 176 | ||
168 | MODULE_DESCRIPTION("CE4100 PCI-I2C glue code for PXA's driver"); | 177 | MODULE_DESCRIPTION("CE4100 PCI-I2C glue code for PXA's driver"); |
169 | MODULE_LICENSE("GPL v2"); | 178 | MODULE_LICENSE("GPL v2"); |