Commit e08534b5 authored by James Kime's avatar James Kime Committed by Marc Kleine-Budde

can: plx_pci: add support for IXXAT PCI cards

This patch adds support for IXXAT passive CAN controllers
Signed-off-by: default avatarJames Kime <kime@ixxat.de>
Acked-by: default avatarWolfgang Grandegger <wg@grandegger.com>
Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
parent 2ee6850c
...@@ -71,6 +71,7 @@ config CAN_PLX_PCI ...@@ -71,6 +71,7 @@ config CAN_PLX_PCI
- esd CAN-PCIe/2000 - esd CAN-PCIe/2000
- Marathon CAN-bus-PCI card (http://www.marathon.ru/) - Marathon CAN-bus-PCI card (http://www.marathon.ru/)
- TEWS TECHNOLOGIES TPMC810 card (http://www.tews.com/) - TEWS TECHNOLOGIES TPMC810 card (http://www.tews.com/)
- IXXAT Automation PC-I 04/PCI card (http://www.ixxat.com/)
config CAN_TSCAN1 config CAN_TSCAN1
tristate "TS-CAN1 PC104 boards" tristate "TS-CAN1 PC104 boards"
......
...@@ -43,7 +43,8 @@ MODULE_SUPPORTED_DEVICE("Adlink PCI-7841/cPCI-7841, " ...@@ -43,7 +43,8 @@ MODULE_SUPPORTED_DEVICE("Adlink PCI-7841/cPCI-7841, "
"TEWS TECHNOLOGIES TPMC810, " "TEWS TECHNOLOGIES TPMC810, "
"esd CAN-PCI/CPCI/PCI104/200, " "esd CAN-PCI/CPCI/PCI104/200, "
"esd CAN-PCI/PMC/266, " "esd CAN-PCI/PMC/266, "
"esd CAN-PCIe/2000") "esd CAN-PCIe/2000, "
"IXXAT PC-I 04/PCI")
MODULE_LICENSE("GPL v2"); MODULE_LICENSE("GPL v2");
#define PLX_PCI_MAX_CHAN 2 #define PLX_PCI_MAX_CHAN 2
...@@ -121,6 +122,10 @@ struct plx_pci_card { ...@@ -121,6 +122,10 @@ struct plx_pci_card {
#define ESD_PCI_SUB_SYS_ID_PCIE2000 0x0200 #define ESD_PCI_SUB_SYS_ID_PCIE2000 0x0200
#define ESD_PCI_SUB_SYS_ID_PCI104200 0x0501 #define ESD_PCI_SUB_SYS_ID_PCI104200 0x0501
#define IXXAT_PCI_VENDOR_ID 0x10b5
#define IXXAT_PCI_DEVICE_ID 0x9050
#define IXXAT_PCI_SUB_SYS_ID 0x2540
#define MARATHON_PCI_DEVICE_ID 0x2715 #define MARATHON_PCI_DEVICE_ID 0x2715
#define TEWS_PCI_VENDOR_ID 0x1498 #define TEWS_PCI_VENDOR_ID 0x1498
...@@ -193,6 +198,14 @@ static struct plx_pci_card_info plx_pci_card_info_esd2000 __devinitdata = { ...@@ -193,6 +198,14 @@ static struct plx_pci_card_info plx_pci_card_info_esd2000 __devinitdata = {
/* based on PEX8311 */ /* based on PEX8311 */
}; };
static struct plx_pci_card_info plx_pci_card_info_ixxat __devinitdata = {
"IXXAT PC-I 04/PCI", 2,
PLX_PCI_CAN_CLOCK, PLX_PCI_OCR, PLX_PCI_CDR,
{0, 0x00, 0x00}, { {2, 0x00, 0x80}, {2, 0x200, 0x80} },
&plx_pci_reset_common
/* based on PLX9050 */
};
static struct plx_pci_card_info plx_pci_card_info_marathon __devinitdata = { static struct plx_pci_card_info plx_pci_card_info_marathon __devinitdata = {
"Marathon CAN-bus-PCI", 2, "Marathon CAN-bus-PCI", 2,
PLX_PCI_CAN_CLOCK, PLX_PCI_OCR, PLX_PCI_CDR, PLX_PCI_CAN_CLOCK, PLX_PCI_OCR, PLX_PCI_CDR,
...@@ -266,6 +279,13 @@ static DEFINE_PCI_DEVICE_TABLE(plx_pci_tbl) = { ...@@ -266,6 +279,13 @@ static DEFINE_PCI_DEVICE_TABLE(plx_pci_tbl) = {
0, 0, 0, 0,
(kernel_ulong_t)&plx_pci_card_info_esd2000 (kernel_ulong_t)&plx_pci_card_info_esd2000
}, },
{
/* IXXAT PC-I 04/PCI card */
IXXAT_PCI_VENDOR_ID, IXXAT_PCI_DEVICE_ID,
PCI_ANY_ID, IXXAT_PCI_SUB_SYS_ID,
0, 0,
(kernel_ulong_t)&plx_pci_card_info_ixxat
},
{ {
/* Marathon CAN-bus-PCI card */ /* Marathon CAN-bus-PCI card */
PCI_VENDOR_ID_PLX, MARATHON_PCI_DEVICE_ID, PCI_VENDOR_ID_PLX, MARATHON_PCI_DEVICE_ID,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment