diff options
Diffstat (limited to 'drivers/serial')
-rw-r--r-- | drivers/serial/8250_pci.c | 20 | ||||
-rw-r--r-- | drivers/serial/cpm_uart/cpm_uart_cpm1.c | 2 | ||||
-rw-r--r-- | drivers/serial/jsm/jsm.h | 2 | ||||
-rw-r--r-- | drivers/serial/jsm/jsm_driver.c | 3 | ||||
-rw-r--r-- | drivers/serial/jsm/jsm_neo.c | 30 |
5 files changed, 42 insertions, 15 deletions
diff --git a/drivers/serial/8250_pci.c b/drivers/serial/8250_pci.c index 52b0a0558ed4..0e21f583690e 100644 --- a/drivers/serial/8250_pci.c +++ b/drivers/serial/8250_pci.c | |||
@@ -865,6 +865,8 @@ enum pci_board_num_t { | |||
865 | pbn_b0_2_921600, | 865 | pbn_b0_2_921600, |
866 | pbn_b0_4_921600, | 866 | pbn_b0_4_921600, |
867 | 867 | ||
868 | pbn_b0_2_1130000, | ||
869 | |||
868 | pbn_b0_4_1152000, | 870 | pbn_b0_4_1152000, |
869 | 871 | ||
870 | pbn_b0_bt_1_115200, | 872 | pbn_b0_bt_1_115200, |
@@ -999,6 +1001,14 @@ static struct pciserial_board pci_boards[] __devinitdata = { | |||
999 | .base_baud = 921600, | 1001 | .base_baud = 921600, |
1000 | .uart_offset = 8, | 1002 | .uart_offset = 8, |
1001 | }, | 1003 | }, |
1004 | |||
1005 | [pbn_b0_2_1130000] = { | ||
1006 | .flags = FL_BASE0, | ||
1007 | .num_ports = 2, | ||
1008 | .base_baud = 1130000, | ||
1009 | .uart_offset = 8, | ||
1010 | }, | ||
1011 | |||
1002 | [pbn_b0_4_1152000] = { | 1012 | [pbn_b0_4_1152000] = { |
1003 | .flags = FL_BASE0, | 1013 | .flags = FL_BASE0, |
1004 | .num_ports = 4, | 1014 | .num_ports = 4, |
@@ -1868,6 +1878,16 @@ static struct pci_device_id serial_pci_tbl[] = { | |||
1868 | { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954, | 1878 | { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954, |
1869 | PCI_SUBVENDOR_ID_SIIG, PCI_SUBDEVICE_ID_SIIG_QUARTET_SERIAL, 0, 0, | 1879 | PCI_SUBVENDOR_ID_SIIG, PCI_SUBDEVICE_ID_SIIG_QUARTET_SERIAL, 0, 0, |
1870 | pbn_b0_4_1152000 }, | 1880 | pbn_b0_4_1152000 }, |
1881 | |||
1882 | /* | ||
1883 | * The below card is a little controversial since it is the | ||
1884 | * subject of a PCI vendor/device ID clash. (See | ||
1885 | * www.ussg.iu.edu/hypermail/linux/kernel/0303.1/0516.html). | ||
1886 | * For now just used the hex ID 0x950a. | ||
1887 | */ | ||
1888 | { PCI_VENDOR_ID_OXSEMI, 0x950a, | ||
1889 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, | ||
1890 | pbn_b0_2_1130000 }, | ||
1871 | { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954, | 1891 | { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954, |
1872 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, | 1892 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, |
1873 | pbn_b0_4_115200 }, | 1893 | pbn_b0_4_115200 }, |
diff --git a/drivers/serial/cpm_uart/cpm_uart_cpm1.c b/drivers/serial/cpm_uart/cpm_uart_cpm1.c index 7911912f50c7..8efbd6d1d6a4 100644 --- a/drivers/serial/cpm_uart/cpm_uart_cpm1.c +++ b/drivers/serial/cpm_uart/cpm_uart_cpm1.c | |||
@@ -185,7 +185,7 @@ int cpm_uart_allocbuf(struct uart_cpm_port *pinfo, unsigned int is_con) | |||
185 | memsz = L1_CACHE_ALIGN(pinfo->rx_nrfifos * pinfo->rx_fifosize) + | 185 | memsz = L1_CACHE_ALIGN(pinfo->rx_nrfifos * pinfo->rx_fifosize) + |
186 | L1_CACHE_ALIGN(pinfo->tx_nrfifos * pinfo->tx_fifosize); | 186 | L1_CACHE_ALIGN(pinfo->tx_nrfifos * pinfo->tx_fifosize); |
187 | if (is_con) { | 187 | if (is_con) { |
188 | mem_addr = (u8 *) m8xx_cpm_hostalloc(memsz); | 188 | mem_addr = (u8 *) cpm_dpram_addr(cpm_dpalloc(memsz, 8)); |
189 | dma_addr = 0; | 189 | dma_addr = 0; |
190 | } else | 190 | } else |
191 | mem_addr = dma_alloc_coherent(NULL, memsz, &dma_addr, | 191 | mem_addr = dma_alloc_coherent(NULL, memsz, &dma_addr, |
diff --git a/drivers/serial/jsm/jsm.h b/drivers/serial/jsm/jsm.h index 5bf3c45521f4..18753193f59b 100644 --- a/drivers/serial/jsm/jsm.h +++ b/drivers/serial/jsm/jsm.h | |||
@@ -89,7 +89,7 @@ enum { | |||
89 | #define WRITEBUFLEN ((4096) + 4) | 89 | #define WRITEBUFLEN ((4096) + 4) |
90 | #define MYFLIPLEN N_TTY_BUF_SIZE | 90 | #define MYFLIPLEN N_TTY_BUF_SIZE |
91 | 91 | ||
92 | #define JSM_VERSION "jsm: 1.1-1-INKERNEL" | 92 | #define JSM_VERSION "jsm: 1.2-1-INKERNEL" |
93 | #define JSM_PARTNUM "40002438_A-INKERNEL" | 93 | #define JSM_PARTNUM "40002438_A-INKERNEL" |
94 | 94 | ||
95 | struct jsm_board; | 95 | struct jsm_board; |
diff --git a/drivers/serial/jsm/jsm_driver.c b/drivers/serial/jsm/jsm_driver.c index cc5d21300ed3..7e56c7824194 100644 --- a/drivers/serial/jsm/jsm_driver.c +++ b/drivers/serial/jsm/jsm_driver.c | |||
@@ -22,6 +22,7 @@ | |||
22 | * Scott H Kilau <Scott_Kilau@digi.com> | 22 | * Scott H Kilau <Scott_Kilau@digi.com> |
23 | * Wendy Xiong <wendyx@us.ltcfwd.linux.ibm.com> | 23 | * Wendy Xiong <wendyx@us.ltcfwd.linux.ibm.com> |
24 | * | 24 | * |
25 | * | ||
25 | ***********************************************************************/ | 26 | ***********************************************************************/ |
26 | #include <linux/moduleparam.h> | 27 | #include <linux/moduleparam.h> |
27 | #include <linux/pci.h> | 28 | #include <linux/pci.h> |
@@ -42,7 +43,7 @@ struct uart_driver jsm_uart_driver = { | |||
42 | .owner = THIS_MODULE, | 43 | .owner = THIS_MODULE, |
43 | .driver_name = JSM_DRIVER_NAME, | 44 | .driver_name = JSM_DRIVER_NAME, |
44 | .dev_name = "ttyn", | 45 | .dev_name = "ttyn", |
45 | .major = 253, | 46 | .major = 0, |
46 | .minor = JSM_MINOR_START, | 47 | .minor = JSM_MINOR_START, |
47 | .nr = NR_PORTS, | 48 | .nr = NR_PORTS, |
48 | }; | 49 | }; |
diff --git a/drivers/serial/jsm/jsm_neo.c b/drivers/serial/jsm/jsm_neo.c index 3a11a69feb44..6f22b42d9337 100644 --- a/drivers/serial/jsm/jsm_neo.c +++ b/drivers/serial/jsm/jsm_neo.c | |||
@@ -48,8 +48,9 @@ static inline void neo_pci_posting_flush(struct jsm_board *bd) | |||
48 | 48 | ||
49 | static void neo_set_cts_flow_control(struct jsm_channel *ch) | 49 | static void neo_set_cts_flow_control(struct jsm_channel *ch) |
50 | { | 50 | { |
51 | u8 ier = readb(&ch->ch_neo_uart->ier); | 51 | u8 ier, efr; |
52 | u8 efr = readb(&ch->ch_neo_uart->efr); | 52 | ier = readb(&ch->ch_neo_uart->ier); |
53 | efr = readb(&ch->ch_neo_uart->efr); | ||
53 | 54 | ||
54 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Setting CTSFLOW\n"); | 55 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Setting CTSFLOW\n"); |
55 | 56 | ||
@@ -78,8 +79,9 @@ static void neo_set_cts_flow_control(struct jsm_channel *ch) | |||
78 | 79 | ||
79 | static void neo_set_rts_flow_control(struct jsm_channel *ch) | 80 | static void neo_set_rts_flow_control(struct jsm_channel *ch) |
80 | { | 81 | { |
81 | u8 ier = readb(&ch->ch_neo_uart->ier); | 82 | u8 ier, efr; |
82 | u8 efr = readb(&ch->ch_neo_uart->efr); | 83 | ier = readb(&ch->ch_neo_uart->ier); |
84 | efr = readb(&ch->ch_neo_uart->efr); | ||
83 | 85 | ||
84 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Setting RTSFLOW\n"); | 86 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Setting RTSFLOW\n"); |
85 | 87 | ||
@@ -117,8 +119,9 @@ static void neo_set_rts_flow_control(struct jsm_channel *ch) | |||
117 | 119 | ||
118 | static void neo_set_ixon_flow_control(struct jsm_channel *ch) | 120 | static void neo_set_ixon_flow_control(struct jsm_channel *ch) |
119 | { | 121 | { |
120 | u8 ier = readb(&ch->ch_neo_uart->ier); | 122 | u8 ier, efr; |
121 | u8 efr = readb(&ch->ch_neo_uart->efr); | 123 | ier = readb(&ch->ch_neo_uart->ier); |
124 | efr = readb(&ch->ch_neo_uart->efr); | ||
122 | 125 | ||
123 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Setting IXON FLOW\n"); | 126 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Setting IXON FLOW\n"); |
124 | 127 | ||
@@ -153,8 +156,9 @@ static void neo_set_ixon_flow_control(struct jsm_channel *ch) | |||
153 | 156 | ||
154 | static void neo_set_ixoff_flow_control(struct jsm_channel *ch) | 157 | static void neo_set_ixoff_flow_control(struct jsm_channel *ch) |
155 | { | 158 | { |
156 | u8 ier = readb(&ch->ch_neo_uart->ier); | 159 | u8 ier, efr; |
157 | u8 efr = readb(&ch->ch_neo_uart->efr); | 160 | ier = readb(&ch->ch_neo_uart->ier); |
161 | efr = readb(&ch->ch_neo_uart->efr); | ||
158 | 162 | ||
159 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Setting IXOFF FLOW\n"); | 163 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Setting IXOFF FLOW\n"); |
160 | 164 | ||
@@ -190,8 +194,9 @@ static void neo_set_ixoff_flow_control(struct jsm_channel *ch) | |||
190 | 194 | ||
191 | static void neo_set_no_input_flow_control(struct jsm_channel *ch) | 195 | static void neo_set_no_input_flow_control(struct jsm_channel *ch) |
192 | { | 196 | { |
193 | u8 ier = readb(&ch->ch_neo_uart->ier); | 197 | u8 ier, efr; |
194 | u8 efr = readb(&ch->ch_neo_uart->efr); | 198 | ier = readb(&ch->ch_neo_uart->ier); |
199 | efr = readb(&ch->ch_neo_uart->efr); | ||
195 | 200 | ||
196 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Unsetting Input FLOW\n"); | 201 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Unsetting Input FLOW\n"); |
197 | 202 | ||
@@ -228,8 +233,9 @@ static void neo_set_no_input_flow_control(struct jsm_channel *ch) | |||
228 | 233 | ||
229 | static void neo_set_no_output_flow_control(struct jsm_channel *ch) | 234 | static void neo_set_no_output_flow_control(struct jsm_channel *ch) |
230 | { | 235 | { |
231 | u8 ier = readb(&ch->ch_neo_uart->ier); | 236 | u8 ier, efr; |
232 | u8 efr = readb(&ch->ch_neo_uart->efr); | 237 | ier = readb(&ch->ch_neo_uart->ier); |
238 | efr = readb(&ch->ch_neo_uart->efr); | ||
233 | 239 | ||
234 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Unsetting Output FLOW\n"); | 240 | jsm_printk(PARAM, INFO, &ch->ch_bd->pci_dev, "Unsetting Output FLOW\n"); |
235 | 241 | ||