lkml.org 
[lkml]   [2003]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectVSCom Serialcard driver
Hello,

i just modified the serial driver for 2.4.20 to find VScom Serial and ECP
cards:

- Supported cards VSCom S,L and H series
- supports VScom ECP cards without IRQ

Cu
Sebastian Ohl
- asco GmbH

diff -u -r kernel-source-2.4.20/drivers/char/serial.c
kernel-source-2.4.20.vs/drivers/char/serial.c
--- kernel-source-2.4.20/drivers/char/serial.c 2002-11-29
00:53:12.000000000 +0100
+++ kernel-source-2.4.20.vs/drivers/char/serial.c 2003-03-27
11:05:44.000000000 +0100
@@ -4364,6 +4364,11 @@
pbn_computone_4,
pbn_computone_6,
pbn_computone_8,
+ pbn_b1_1_921600,
+ pbn_b1_bt_2_921600,
+ pbn_b1_bt_4_921600,
+ pbn_b1_bt_8_921600,
+ pbn_b4_2_921600,
};

static struct pci_board pci_boards[] __devinitdata = {
@@ -4471,6 +4476,12 @@
0x40, 2, NULL, 0x200 },
{ SPCI_FL_BASE0, 8, 921600, /* IOMEM */ /* pbn_computone_8 */
0x40, 2, NULL, 0x200 },
+ { SPCI_FL_BASE1, 1, 921600}, /* IOMEM*/ /* pbn_b1_1_921600 */
+ { SPCI_FL_BASE1 | SPCI_FL_BASE_TABLE, 2, 921600}, /* pbn_b1_bt_2_921600
*/
+ { SPCI_FL_BASE1 | SPCI_FL_BASE_TABLE, 4, 921600}, /* pbn_b1_bt_4_921600
*/
+ { SPCI_FL_BASE1 | SPCI_FL_BASE_TABLE, 8, 921600}, /* pbn_b1_bt_8_921600
*/
+ { SPCI_FL_BASE4 , 2, 921600}, /* pbn_b4_2_921600 */
+ { SPCI_FL_BASE0 | SPCI_FL_BASE_TABLE, 2, 921600}, /* pbn_b0_bt_2_921600
*/
};

/*
@@ -4752,18 +4763,22 @@
PCI_ANY_ID, PCI_ANY_ID, 0, 0,
pbn_b0_4_921600 },
{ PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_100L,
- PCI_ANY_ID, PCI_ANY_ID,
- SPCI_FL_BASE1, 1, 921600 },
+ PCI_ANY_ID, PCI_ANY_ID,0,0,pbn_b1_1_921600},
{ PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_200L,
- PCI_ANY_ID, PCI_ANY_ID,
- SPCI_FL_BASE1 | SPCI_FL_BASE_TABLE, 2, 921600 },
+ PCI_ANY_ID, PCI_ANY_ID,0,0,pbn_b1_bt_2_921600 },
/* The 400L and 800L have a custom hack in get_pci_port */
+ /* changed by damian gruszka VScom (TM) VS Vision Systems GmbH */
{ PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_400L,
- PCI_ANY_ID, PCI_ANY_ID,
- SPCI_FL_BASE_TABLE, 4, 921600 },
+ PCI_ANY_ID, PCI_ANY_ID,0,0,pbn_b1_bt_4_921600},
{ PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_800L,
- PCI_ANY_ID, PCI_ANY_ID,
- SPCI_FL_BASE_TABLE, 8, 921600 },
+ PCI_ANY_ID, PCI_ANY_ID,0,0,pbn_b1_bt_8_921600},
+ { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_200I,
+ PCI_ANY_ID, PCI_ANY_ID,0,0,pbn_b4_2_921600},
+ /* VScom HV2 cards damian gruszka VScom (TM) */
+ { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_100HV2,
+ PCI_ANY_ID, PCI_ANY_ID,0,0,pbn_b0_1_921600},
+ { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_200HV2,
+ PCI_ANY_ID, PCI_ANY_ID,0,0,pbn_b0_bt_2_921600},

{ PCI_VENDOR_ID_SIIG, PCI_DEVICE_ID_SIIG_1S_10x_550,
PCI_ANY_ID, PCI_ANY_ID, 0, 0,
diff -u -r kernel-source-2.4.20/drivers/parport/parport_pc.c
kernel-source-2.4.20.vs/drivers/parport/parport_pc.c
--- kernel-source-2.4.20/drivers/parport/parport_pc.c 2002-11-30
05:49:41.000000000 +0100
+++ kernel-source-2.4.20.vs/drivers/parport/parport_pc.c 2003-03-27
11:00:06.000000000 +0100
@@ -2699,6 +2699,9 @@
oxsemi_840,
aks_0100,
mobility_pp,
+ vscom_010s,
+ vscom_020s,
+ oxsemi_952,
};


@@ -2768,6 +2771,9 @@
/* oxsemi_840 */ { 1, { { 0, -1 }, } },
/* aks_0100 */ { 1, { { 0, 1 }, } },
/* mobility_pp */ { 1, { { 0, 1 }, } },
+ /* vscom_010s */ { 1, { { 2,1 }, } },
+ /* vscom_020s */ { 2, { { 2, -1 },{3,-1}} },
+ /* oxsemi_952 */ { 1, { { 0, 1 }, } },
};

static struct pci_device_id parport_pc_pci_tbl[] __devinitdata = {
@@ -2795,6 +2801,9 @@
PCI_ANY_ID, PCI_ANY_ID, 0, 0, boca_ioppar },
{ PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
PCI_SUBVENDOR_ID_EXSYS, PCI_SUBDEVICE_ID_EXSYS_4014, 0,0, plx_9050 },
+ /* VScom / Titan parallel ports */
+ { PCI_VENDOR_ID_PLX, 0x1147, PCI_ANY_ID, PCI_ANY_ID, 0,0, vscom_020s },
+ { PCI_VENDOR_ID_PLX, 0x1146, PCI_ANY_ID, PCI_ANY_ID, 0,0, vscom_010s },
/* PCI_VENDOR_ID_TIMEDIA/SUNIX has many differing cards ...*/
{ 0x1409, 0x7168, 0x1409, 0x4078, 0, 0, timedia_4078a },
{ 0x1409, 0x7168, 0x1409, 0x4079, 0, 0, timedia_4079h },
@@ -2827,6 +2836,10 @@
{ PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_010L,
PCI_ANY_ID, PCI_ANY_ID, 0, 0, titan_010l },
{ 0x9710, 0x9815, 0x1000, 0x0020, 0, 0, titan_1284p2 },
+ { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_010H,
+ PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_954 },
+ { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_010HV2,
+ PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_952 },
/* PCI_VENDOR_ID_AVLAB/Intek21 has another bunch of cards ...*/
{ 0x14db, 0x2120, PCI_ANY_ID, PCI_ANY_ID, 0, 0, avlab_1p}, /*
AFAVLAB_TK9902 */
{ 0x14db, 0x2121, PCI_ANY_ID, PCI_ANY_ID, 0, 0, avlab_2p},
diff -u -r kernel-source-2.4.20/drivers/parport/parport_serial.c
kernel-source-2.4.20.vs/drivers/parport/parport_serial.c
--- kernel-source-2.4.20/drivers/parport/parport_serial.c 2002-08-05
13:23:34.000000000 +0200
+++ kernel-source-2.4.20.vs/drivers/parport/parport_serial.c 2003-03-27
10:56:11.000000000 +0100
@@ -32,6 +32,8 @@
enum parport_pc_pci_cards {
titan_110l = 0,
titan_210l,
+ /* d.gruszka VScom (R) */
+ vscom_2s1p_210s,
avlab_1s1p,
avlab_1s1p_650,
avlab_1s1p_850,
@@ -70,6 +72,7 @@
} cards[] __devinitdata = {
/* titan_110l */ { 1, { { 3, -1 }, } },
/* titan_210l */ { 1, { { 3, -1 }, } },
+ /* vscom_2s1p_210s */ { 1, { { 5, -1}, } },
/* avlab_1s1p */ { 1, { { 1, 2}, } },
/* avlab_1s1p_650 */ { 1, { { 1, 2}, } },
/* avlab_1s1p_850 */ { 1, { { 1, 2}, } },
@@ -92,6 +95,8 @@
PCI_ANY_ID, PCI_ANY_ID, 0, 0, titan_110l },
{ PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_210L,
PCI_ANY_ID, PCI_ANY_ID, 0, 0, titan_210l },
+ { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_TITAN_210S,
+ PCI_ANY_ID, PCI_ANY_ID, 0, 0, vscom_2s1p_210s },
/* PCI_VENDOR_ID_AVLAB/Intek21 has another bunch of cards ...*/
{ 0x14db, 0x2110, PCI_ANY_ID, PCI_ANY_ID, 0, 0, avlab_1s1p},
{ 0x14db, 0x2111, PCI_ANY_ID, PCI_ANY_ID, 0, 0, avlab_1s1p_650},
@@ -171,6 +176,7 @@

/* titan_110l */ { SPCI_FL_BASE1 | SPCI_FL_BASE_TABLE, 1, 921600 },
/* titan_210l */ { SPCI_FL_BASE1 | SPCI_FL_BASE_TABLE, 2, 921600 },
+/* vscom_2s1p_210s */ { SPCI_FL_BASE2 | SPCI_FL_BASE_TABLE, 2, 921600 },
/* avlab_1s1p (n/t) */ { SPCI_FL_BASE0 | SPCI_FL_BASE_TABLE, 1, 115200 },
/* avlab_1s1p_650 (nt)*/{ SPCI_FL_BASE0 | SPCI_FL_BASE_TABLE, 1, 115200 },
/* avlab_1s1p_850 (nt)*/{ SPCI_FL_BASE0 | SPCI_FL_BASE_TABLE, 1, 115200 },
diff -u -r kernel-source-2.4.20/include/linux/pci_ids.h
kernel-source-2.4.20.vs/include/linux/pci_ids.h
--- kernel-source-2.4.20/include/linux/pci_ids.h 2002-11-30
05:49:28.000000000 +0100
+++ kernel-source-2.4.20.vs/include/linux/pci_ids.h 2003-03-27
10:56:11.000000000 +0100
@@ -1530,6 +1530,14 @@
#define PCI_DEVICE_ID_TITAN_200 0xA005
#define PCI_DEVICE_ID_TITAN_400 0xA003
#define PCI_DEVICE_ID_TITAN_800B 0xA004
+/* d.gruszka VScom (R) */
+#define PCI_DEVICE_ID_TITAN_200I 0x8028
+#define PCI_DEVICE_ID_TITAN_100HV2 0xE010
+#define PCI_DEVICE_ID_TITAN_200HV2 0xE020
+#define PCI_DEVICE_ID_TITAN_010HV2 0xE001
+#define PCI_DEVICE_ID_TITAN_010H 0xA000
+#define PCI_DEVICE_ID_TITAN_210S 0x1078
+

#define PCI_VENDOR_ID_PANACOM 0x14d4
#define PCI_DEVICE_ID_PANACOM_QUADMODEM 0x0400
Only in kernel-source-2.4.20.vs/include/linux: pci_ids.h.orig
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:34    [W:0.026 / U:0.280 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site