]> git.hungrycats.org Git - linux/commitdiff
Update Acorn serial drivers.
authorRussell King <rmk@flint.arm.linux.org.uk>
Mon, 11 Mar 2002 16:12:22 +0000 (16:12 +0000)
committerRussell King <rmk@flint.arm.linux.org.uk>
Mon, 11 Mar 2002 16:12:22 +0000 (16:12 +0000)
drivers/acorn/char/serial-atomwide.c
drivers/acorn/char/serial-card.c
drivers/acorn/char/serial-dualsp.c

index cb040f462c2dde9e39c6599f8a4645200afa017f..8f55b80c31de82df5aed107b90424af3fb0cb7ce 100644 (file)
@@ -20,7 +20,4 @@
 #define MY_PORT_ADDRESS(port,cardaddr) \
        ((cardaddr) + 0x200 - (port) * 0x100)
 
-#define INIT serial_card_atomwide_init
-#define EXIT serial_card_atomwide_exit
-
 #include "serial-card.c"
index bca694db459335b1c64d2b656a872e7a3828aa11..3e5c30c316a238cac2db917966b454912ddb9067 100644 (file)
@@ -29,6 +29,7 @@
 #include <linux/types.h>
 #include <linux/serial.h>
 #include <linux/errno.h>
+#include <linux/ioport.h>
 #include <linux/init.h>
 
 #include <asm/ecard.h>
 #define NUM_SERIALS    MY_NUMPORTS * MAX_ECARDS
 #endif
 
-#ifdef MODULE
-static int __serial_ports[NUM_SERIALS];
-static int __serial_pcount;
-static int __serial_addr[NUM_SERIALS];
+static int serial_ports[NUM_SERIALS];
+static int serial_pcount;
+static int serial_addr[NUM_SERIALS];
 static struct expansion_card *expcard[MAX_ECARDS];
-#define ADD_ECARD(ec,card) expcard[(card)] = (ec)
-#define ADD_PORT(port,addr)                                    \
-       do {                                                    \
-               __serial_ports[__serial_pcount] = (port);       \
-               __serial_addr[__serial_pcount] = (addr);        \
-               __serial_pcount += 1;                           \
-       } while (0)
-#else
-#define ADD_ECARD(ec,card)
-#define ADD_PORT(port,addr)
-#endif
 
 static const card_ids serial_cids[] = { MY_CARD_LIST, { 0xffff, 0xffff } };
 
 static inline int serial_register_onedev (unsigned long port, int irq)
 {
-    struct serial_struct req;
+       struct serial_struct req;
 
-    memset(&req, 0, sizeof(req));
-    req.baud_base = MY_BAUD_BASE;
-    req.irq = irq;
-    req.port = port;
-    req.flags = 0;
+       memset(&req, 0, sizeof(req));
+       req.baud_base = MY_BAUD_BASE;
+       req.irq = irq;
+       req.port = port;
+       req.flags = 0;
 
-    return register_serial(&req);
+       return register_serial(&req);
 }
 
-static int __init INIT (void)
+static int __init serial_card_init(void)
 {
-    int card = 0;
-
-    ecard_startfind ();
-
-    do {
-       struct expansion_card *ec;
-       unsigned long cardaddr;
-       int port;
-
-       ec = ecard_find (0, serial_cids);
-       if (!ec)
-           break;
-
-       cardaddr = MY_BASE_ADDRESS(ec);
-
-       for (port = 0; port < MY_NUMPORTS; port ++) {
-           unsigned long address;
-           int line;
-
-           address = MY_PORT_ADDRESS(port, cardaddr);
-
-           line = serial_register_onedev (address, ec->irq);
-           if (line < 0)
-               break;
-           ADD_PORT(line, address);
-       }
-
-       if (port) {
-           ecard_claim (ec);
-           ADD_ECARD(ec, card);
-       } else
-           break;
-    } while (++card < MAX_ECARDS);
-    return card ? 0 : -ENODEV;
+       int card = 0;
+
+       ecard_startfind ();
+
+       do {
+               struct expansion_card *ec;
+               unsigned long cardaddr;
+               int port;
+
+               ec = ecard_find (0, serial_cids);
+               if (!ec)
+                       break;
+
+               cardaddr = MY_BASE_ADDRESS(ec);
+
+               for (port = 0; port < MY_NUMPORTS; port ++) {
+                       unsigned long address;
+                       int line;
+
+                       address = MY_PORT_ADDRESS(port, cardaddr);
+
+                       line = serial_register_onedev (address, ec->irq);
+                       if (line < 0)
+                               break;
+                       serial_ports[serial_pcount] = line;
+                       serial_addr[serial_pcount] = address;
+                       serial_pcount += 1;
+               }
+
+               if (port) {
+                       ecard_claim (ec);
+                       expcard[card] = ec;
+               } else
+                       break;
+       } while (++card < MAX_ECARDS);
+       return card ? 0 : -ENODEV;
 }
 
-static void __exit EXIT (void)
+static void __exit serial_card_exit(void)
 {
-#ifdef MODULE
-    int i;
+       int i;
 
-    for (i = 0; i < __serial_pcount; i++) {
-       unregister_serial(__serial_ports[i]);
-       release_region(__serial_addr[i], 8);
-    }
+       for (i = 0; i < serial_pcount; i++) {
+               unregister_serial(serial_ports[i]);
+               release_region(serial_addr[i], 8);
+       }
 
-    for (i = 0; i < MAX_ECARDS; i++)
-       if (expcard[i])
-           ecard_release (expcard[i]);
-#endif
+       for (i = 0; i < MAX_ECARDS; i++)
+               if (expcard[i])
+                       ecard_release (expcard[i]);
 }
 
 EXPORT_NO_SYMBOLS;
 
+MODULE_AUTHOR("Russell King");
 MODULE_LICENSE("GPL");
 
-module_init(INIT);
-module_exit(EXIT);
+module_init(serial_card_init);
+module_exit(serial_card_exit);
index 722c27736f1fee73154bacc6d93a2b3eb9442da9..dcd26c1f8d29522992805fb8af04d15314f9b62b 100644 (file)
@@ -18,7 +18,4 @@
 #define MY_PORT_ADDRESS(port,cardaddress) \
        ((cardaddress) + (port) * 8)
 
-#define INIT serial_card_dualsp_init
-#define EXIT serial_card_dualsp_exit
-
 #include "serial-card.c"