diff options
author | James Kime <kime@ixxat.de> | 2011-12-12 07:45:58 -0500 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2012-02-02 19:21:25 -0500 |
commit | e08534b57e79fa722e3136b79868a725a8eea0f0 (patch) | |
tree | 927f73b51ac38077cda3f430c9f9b91ba92f14da | |
parent | 2ee6850ca0cac95101d2a36c8b186b40d4fc7311 (diff) |
can: plx_pci: add support for IXXAT PCI cards
This patch adds support for IXXAT passive CAN controllers
Signed-off-by: James Kime <kime@ixxat.de>
Acked-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
-rw-r--r-- | drivers/net/can/sja1000/Kconfig | 1 | ||||
-rw-r--r-- | drivers/net/can/sja1000/plx_pci.c | 22 |
2 files changed, 22 insertions, 1 deletions
diff --git a/drivers/net/can/sja1000/Kconfig b/drivers/net/can/sja1000/Kconfig index 36e9d594069d..b21523ddff3c 100644 --- a/drivers/net/can/sja1000/Kconfig +++ b/drivers/net/can/sja1000/Kconfig | |||
@@ -71,6 +71,7 @@ config CAN_PLX_PCI | |||
71 | - esd CAN-PCIe/2000 | 71 | - esd CAN-PCIe/2000 |
72 | - Marathon CAN-bus-PCI card (http://www.marathon.ru/) | 72 | - Marathon CAN-bus-PCI card (http://www.marathon.ru/) |
73 | - TEWS TECHNOLOGIES TPMC810 card (http://www.tews.com/) | 73 | - TEWS TECHNOLOGIES TPMC810 card (http://www.tews.com/) |
74 | - IXXAT Automation PC-I 04/PCI card (http://www.ixxat.com/) | ||
74 | 75 | ||
75 | config CAN_TSCAN1 | 76 | config CAN_TSCAN1 |
76 | tristate "TS-CAN1 PC104 boards" | 77 | tristate "TS-CAN1 PC104 boards" |
diff --git a/drivers/net/can/sja1000/plx_pci.c b/drivers/net/can/sja1000/plx_pci.c index c7f3d4ea1167..a227586ddd52 100644 --- a/drivers/net/can/sja1000/plx_pci.c +++ b/drivers/net/can/sja1000/plx_pci.c | |||
@@ -43,7 +43,8 @@ MODULE_SUPPORTED_DEVICE("Adlink PCI-7841/cPCI-7841, " | |||
43 | "TEWS TECHNOLOGIES TPMC810, " | 43 | "TEWS TECHNOLOGIES TPMC810, " |
44 | "esd CAN-PCI/CPCI/PCI104/200, " | 44 | "esd CAN-PCI/CPCI/PCI104/200, " |
45 | "esd CAN-PCI/PMC/266, " | 45 | "esd CAN-PCI/PMC/266, " |
46 | "esd CAN-PCIe/2000") | 46 | "esd CAN-PCIe/2000, " |
47 | "IXXAT PC-I 04/PCI") | ||
47 | MODULE_LICENSE("GPL v2"); | 48 | MODULE_LICENSE("GPL v2"); |
48 | 49 | ||
49 | #define PLX_PCI_MAX_CHAN 2 | 50 | #define PLX_PCI_MAX_CHAN 2 |
@@ -121,6 +122,10 @@ struct plx_pci_card { | |||
121 | #define ESD_PCI_SUB_SYS_ID_PCIE2000 0x0200 | 122 | #define ESD_PCI_SUB_SYS_ID_PCIE2000 0x0200 |
122 | #define ESD_PCI_SUB_SYS_ID_PCI104200 0x0501 | 123 | #define ESD_PCI_SUB_SYS_ID_PCI104200 0x0501 |
123 | 124 | ||
125 | #define IXXAT_PCI_VENDOR_ID 0x10b5 | ||
126 | #define IXXAT_PCI_DEVICE_ID 0x9050 | ||
127 | #define IXXAT_PCI_SUB_SYS_ID 0x2540 | ||
128 | |||
124 | #define MARATHON_PCI_DEVICE_ID 0x2715 | 129 | #define MARATHON_PCI_DEVICE_ID 0x2715 |
125 | 130 | ||
126 | #define TEWS_PCI_VENDOR_ID 0x1498 | 131 | #define TEWS_PCI_VENDOR_ID 0x1498 |
@@ -193,6 +198,14 @@ static struct plx_pci_card_info plx_pci_card_info_esd2000 __devinitdata = { | |||
193 | /* based on PEX8311 */ | 198 | /* based on PEX8311 */ |
194 | }; | 199 | }; |
195 | 200 | ||
201 | static struct plx_pci_card_info plx_pci_card_info_ixxat __devinitdata = { | ||
202 | "IXXAT PC-I 04/PCI", 2, | ||
203 | PLX_PCI_CAN_CLOCK, PLX_PCI_OCR, PLX_PCI_CDR, | ||
204 | {0, 0x00, 0x00}, { {2, 0x00, 0x80}, {2, 0x200, 0x80} }, | ||
205 | &plx_pci_reset_common | ||
206 | /* based on PLX9050 */ | ||
207 | }; | ||
208 | |||
196 | static struct plx_pci_card_info plx_pci_card_info_marathon __devinitdata = { | 209 | static struct plx_pci_card_info plx_pci_card_info_marathon __devinitdata = { |
197 | "Marathon CAN-bus-PCI", 2, | 210 | "Marathon CAN-bus-PCI", 2, |
198 | PLX_PCI_CAN_CLOCK, PLX_PCI_OCR, PLX_PCI_CDR, | 211 | PLX_PCI_CAN_CLOCK, PLX_PCI_OCR, PLX_PCI_CDR, |
@@ -267,6 +280,13 @@ static DEFINE_PCI_DEVICE_TABLE(plx_pci_tbl) = { | |||
267 | (kernel_ulong_t)&plx_pci_card_info_esd2000 | 280 | (kernel_ulong_t)&plx_pci_card_info_esd2000 |
268 | }, | 281 | }, |
269 | { | 282 | { |
283 | /* IXXAT PC-I 04/PCI card */ | ||
284 | IXXAT_PCI_VENDOR_ID, IXXAT_PCI_DEVICE_ID, | ||
285 | PCI_ANY_ID, IXXAT_PCI_SUB_SYS_ID, | ||
286 | 0, 0, | ||
287 | (kernel_ulong_t)&plx_pci_card_info_ixxat | ||
288 | }, | ||
289 | { | ||
270 | /* Marathon CAN-bus-PCI card */ | 290 | /* Marathon CAN-bus-PCI card */ |
271 | PCI_VENDOR_ID_PLX, MARATHON_PCI_DEVICE_ID, | 291 | PCI_VENDOR_ID_PLX, MARATHON_PCI_DEVICE_ID, |
272 | PCI_ANY_ID, PCI_ANY_ID, | 292 | PCI_ANY_ID, PCI_ANY_ID, |