* Symbols defined by linker
*
*/
-extern struct isa_driver isa_drivers[];
-extern struct isa_driver isa_drivers_end[];
+static struct isa_driver isa_drivers[0] __table_start ( isa_driver );
+static struct isa_driver isa_drivers_end[0] __table_end ( isa_driver );
/*
* Increment a bus_loc structure to the next possible ISA location.
uint16_t mfg_id;
uint16_t prod_id;
};
-#define __isa_driver __attribute__ (( section ( ".drivers.isa" ) ))
/*
* Define an ISA driver
*
*/
#define ISA_DRIVER( _name, _probe_addrs, _probe_addr, _mfg_id, _prod_id ) \
-static struct isa_driver _name __isa_driver = { \
+static struct isa_driver _name __table(isa_driver,01 ) = { \
.probe_addrs = _probe_addrs, \
.addr_count = sizeof ( _probe_addrs ) / sizeof ( _probe_addrs[0] ), \
.probe_addr = _probe_addr, \