Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

tty: moxa: drop ISA support

I doubt anyone actually uses this driver (unlike mxser.c and serial
moxa driven devices). Even less there is anyone with a moxa ISA card.
The newer mxser dropped the support for ISA in 2021. Let this moxa
follow now.

Good diet.

Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Link: https://lore.kernel.org/r/20250317070046.24386-20-jirislaby@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Jiri Slaby (SUSE) and committed by
Greg Kroah-Hartman
eed0d311 0fdbeabf

+6 -96
+1 -1
drivers/tty/Kconfig
··· 210 210 211 211 config MOXA_INTELLIO 212 212 tristate "Moxa Intellio support" 213 - depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI) 213 + depends on SERIAL_NONSTANDARD && PCI 214 214 select FW_LOADER 215 215 help 216 216 Say Y here if you have a Moxa Intellio multiport serial card.
+5 -95
drivers/tty/moxa.c
··· 355 355 #define MAX_PORTS_PER_BOARD 32 /* Don't change this value */ 356 356 #define MAX_PORTS (MAX_BOARDS * MAX_PORTS_PER_BOARD) 357 357 358 - #define MOXA_IS_320(brd) ((brd)->boardType == MOXA_BOARD_C320_ISA || \ 359 - (brd)->boardType == MOXA_BOARD_C320_PCI) 360 - 361 - /* 362 - * Define the Moxa PCI vendor and device IDs. 363 - */ 364 - #define MOXA_BUS_TYPE_ISA 0 365 - #define MOXA_BUS_TYPE_PCI 1 358 + #define MOXA_IS_320(brd) ((brd)->boardType == MOXA_BOARD_C320_PCI) 366 359 367 360 enum { 368 361 MOXA_BOARD_C218_PCI = 1, 369 - MOXA_BOARD_C218_ISA, 370 362 MOXA_BOARD_C320_PCI, 371 - MOXA_BOARD_C320_ISA, 372 363 MOXA_BOARD_CP204J, 373 364 }; 374 365 375 366 static char *moxa_brdname[] = 376 367 { 377 368 "C218 Turbo PCI series", 378 - "C218 Turbo ISA series", 379 369 "C320 Turbo PCI series", 380 - "C320 Turbo ISA series", 381 370 "CP-204J series", 382 371 }; 383 372 384 - #ifdef CONFIG_PCI 385 373 static const struct pci_device_id moxa_pcibrds[] = { 386 374 { PCI_DEVICE(PCI_VENDOR_ID_MOXA, PCI_DEVICE_ID_MOXA_C218), 387 375 .driver_data = MOXA_BOARD_C218_PCI }, ··· 380 392 { 0 } 381 393 }; 382 394 MODULE_DEVICE_TABLE(pci, moxa_pcibrds); 383 - #endif /* CONFIG_PCI */ 384 395 385 396 struct moxa_port; 386 397 387 398 static struct moxa_board_conf { 388 399 int boardType; 389 400 int numPorts; 390 - int busType; 391 401 392 402 unsigned int ready; 393 403 ··· 445 459 static DEFINE_MUTEX(moxa_openlock); 446 460 static DEFINE_SPINLOCK(moxa_lock); 447 461 448 - static unsigned long baseaddr[MAX_BOARDS]; 449 - static unsigned int type[MAX_BOARDS]; 450 - static unsigned int numports[MAX_BOARDS]; 451 462 static struct tty_port moxa_service_port; 452 463 453 464 MODULE_AUTHOR("William Chen"); ··· 453 470 MODULE_FIRMWARE("c218tunx.cod"); 454 471 MODULE_FIRMWARE("cp204unx.cod"); 455 472 MODULE_FIRMWARE("c320tunx.cod"); 456 - 457 - module_param_array(type, uint, NULL, 0); 458 - MODULE_PARM_DESC(type, "card type: C218=2, C320=4"); 459 - module_param_hw_array(baseaddr, ulong, ioport, NULL, 0); 460 - MODULE_PARM_DESC(baseaddr, "base address"); 461 - module_param_array(numports, uint, NULL, 0); 462 - MODULE_PARM_DESC(numports, "numports (ignored for C218)"); 463 473 464 474 module_param(ttymajor, int, 0); 465 475 ··· 699 723 static int moxa_check_fw_model(struct moxa_board_conf *brd, u8 model) 700 724 { 701 725 switch (brd->boardType) { 702 - case MOXA_BOARD_C218_ISA: 703 726 case MOXA_BOARD_C218_PCI: 704 727 if (model != 1) 705 728 goto err; ··· 742 767 msleep(2000); 743 768 744 769 switch (brd->boardType) { 745 - case MOXA_BOARD_C218_ISA: 746 770 case MOXA_BOARD_C218_PCI: 747 771 tmp = readw(baseAddr + C218_key); 748 772 if (tmp != C218_KeyCode) ··· 805 831 806 832 switch (brd->boardType) { 807 833 case MOXA_BOARD_CP204J: 808 - case MOXA_BOARD_C218_ISA: 809 834 case MOXA_BOARD_C218_PCI: 810 835 key = C218_key; 811 836 loadbuf = C218_LoadBuf; ··· 869 896 return -EIO; 870 897 871 898 if (MOXA_IS_320(brd)) { 872 - if (brd->busType == MOXA_BUS_TYPE_PCI) { /* ASIC board */ 873 - writew(0x3800, baseAddr + TMS320_PORT1); 874 - writew(0x3900, baseAddr + TMS320_PORT2); 875 - writew(28499, baseAddr + TMS320_CLOCK); 876 - } else { 877 - writew(0x3200, baseAddr + TMS320_PORT1); 878 - writew(0x3400, baseAddr + TMS320_PORT2); 879 - writew(19999, baseAddr + TMS320_CLOCK); 880 - } 899 + writew(0x3800, baseAddr + TMS320_PORT1); 900 + writew(0x3900, baseAddr + TMS320_PORT2); 901 + writew(28499, baseAddr + TMS320_CLOCK); 881 902 } 882 903 writew(1, baseAddr + Disable_IRQ); 883 904 writew(0, baseAddr + Magic_no); ··· 922 955 return retval; 923 956 924 957 switch (brd->boardType) { 925 - case MOXA_BOARD_C218_ISA: 926 958 case MOXA_BOARD_C218_PCI: 927 959 case MOXA_BOARD_CP204J: 928 960 port = brd->ports; ··· 1105 1139 } 1106 1140 1107 1141 switch (brd->boardType) { 1108 - case MOXA_BOARD_C218_ISA: 1109 1142 case MOXA_BOARD_C218_PCI: 1110 1143 file = "c218tunx.cod"; 1111 1144 break; ··· 1190 1225 kfree(brd->ports); 1191 1226 } 1192 1227 1193 - #ifdef CONFIG_PCI 1194 1228 static int moxa_pci_probe(struct pci_dev *pdev, 1195 1229 const struct pci_device_id *ent) 1196 1230 { ··· 1232 1268 1233 1269 board->boardType = board_type; 1234 1270 switch (board_type) { 1235 - case MOXA_BOARD_C218_ISA: 1236 1271 case MOXA_BOARD_C218_PCI: 1237 1272 board->numPorts = 8; 1238 1273 break; ··· 1243 1280 board->numPorts = 0; 1244 1281 break; 1245 1282 } 1246 - board->busType = MOXA_BUS_TYPE_PCI; 1247 1283 1248 1284 retval = moxa_init_board(board, &pdev->dev); 1249 1285 if (retval) ··· 1278 1316 .probe = moxa_pci_probe, 1279 1317 .remove = moxa_pci_remove 1280 1318 }; 1281 - #endif /* CONFIG_PCI */ 1282 1319 1283 1320 static int __init moxa_init(void) 1284 1321 { 1285 - unsigned int isabrds = 0; 1286 1322 int retval = 0; 1287 - struct moxa_board_conf *brd = moxa_boards; 1288 - unsigned int i; 1289 1323 1290 1324 tty_port_init(&moxa_service_port); 1291 1325 ··· 1310 1352 return -1; 1311 1353 } 1312 1354 1313 - /* Find the boards defined from module args. */ 1314 - 1315 - for (i = 0; i < MAX_BOARDS; i++) { 1316 - if (!baseaddr[i]) 1317 - break; 1318 - if (type[i] == MOXA_BOARD_C218_ISA || 1319 - type[i] == MOXA_BOARD_C320_ISA) { 1320 - pr_debug("Moxa board %2d: %s board(baseAddr=%lx)\n", 1321 - isabrds + 1, moxa_brdname[type[i] - 1], 1322 - baseaddr[i]); 1323 - brd->boardType = type[i]; 1324 - brd->numPorts = type[i] == MOXA_BOARD_C218_ISA ? 8 : 1325 - numports[i]; 1326 - brd->busType = MOXA_BUS_TYPE_ISA; 1327 - brd->basemem = ioremap(baseaddr[i], 0x4000); 1328 - if (!brd->basemem) { 1329 - printk(KERN_ERR "MOXA: can't remap %lx\n", 1330 - baseaddr[i]); 1331 - continue; 1332 - } 1333 - if (moxa_init_board(brd, NULL)) { 1334 - iounmap(brd->basemem); 1335 - brd->basemem = NULL; 1336 - continue; 1337 - } 1338 - 1339 - printk(KERN_INFO "MOXA isa board found at 0x%.8lx and " 1340 - "ready (%u ports, firmware loaded)\n", 1341 - baseaddr[i], brd->numPorts); 1342 - 1343 - brd++; 1344 - isabrds++; 1345 - } 1346 - } 1347 - 1348 - #ifdef CONFIG_PCI 1349 1355 retval = pci_register_driver(&moxa_pci_driver); 1350 - if (retval) { 1356 + if (retval) 1351 1357 printk(KERN_ERR "Can't register MOXA pci driver!\n"); 1352 - if (isabrds) 1353 - retval = 0; 1354 - } 1355 - #endif 1356 1358 1357 1359 return retval; 1358 1360 } 1359 1361 1360 1362 static void __exit moxa_exit(void) 1361 1363 { 1362 - unsigned int i; 1363 - 1364 - #ifdef CONFIG_PCI 1365 1364 pci_unregister_driver(&moxa_pci_driver); 1366 - #endif 1367 - 1368 - for (i = 0; i < MAX_BOARDS; i++) /* ISA boards */ 1369 - if (moxa_boards[i].ready) 1370 - moxa_board_deinit(&moxa_boards[i]); 1371 1365 1372 1366 del_timer_sync(&moxaTimer); 1373 1367