diff options
| author | Michael Brown | 2005-04-26 14:30:14 +0200 |
|---|---|---|
| committer | Michael Brown | 2005-04-26 14:30:14 +0200 |
| commit | 3dbdeb588f27eea038b5b5ac9819e67698d636e0 (patch) | |
| tree | b7c62bb438157e9fd7499cdff0cc4784a8d0e742 /src/arch | |
| parent | PCI_DRIVER changed (diff) | |
| download | ipxe-3dbdeb588f27eea038b5b5ac9819e67698d636e0.tar.gz ipxe-3dbdeb588f27eea038b5b5ac9819e67698d636e0.tar.xz ipxe-3dbdeb588f27eea038b5b5ac9819e67698d636e0.zip | |
ISA bus driver updated to report devices as present only if a driver
thinks they are.
Other bus drivers modified for consistency.
Diffstat (limited to 'src/arch')
| -rw-r--r-- | src/arch/i386/drivers/disk/floppy.c | 3 | ||||
| -rw-r--r-- | src/arch/i386/include/bios_disks.h | 11 | ||||
| -rw-r--r-- | src/arch/i386/scripts/i386.lds | 3 |
3 files changed, 10 insertions, 7 deletions
diff --git a/src/arch/i386/drivers/disk/floppy.c b/src/arch/i386/drivers/disk/floppy.c index 865273397..0582ca18f 100644 --- a/src/arch/i386/drivers/disk/floppy.c +++ b/src/arch/i386/drivers/disk/floppy.c @@ -21,8 +21,7 @@ static void floppy_disable ( struct disk *disk, } -static struct bios_disk_driver floppy_driver = - BIOS_DISK_DRIVER ( fill_floppy_name, 0x00, 0x7f ); +BIOS_DISK_DRIVER ( floppy_driver, fill_floppy_name, 0x00, 0x7f ); DRIVER ( "floppy", disk_driver, bios_disk_driver, floppy_driver, floppy_probe, floppy_disable ); diff --git a/src/arch/i386/include/bios_disks.h b/src/arch/i386/include/bios_disks.h index 1a2c31aab..0dd7c4ebb 100644 --- a/src/arch/i386/include/bios_disks.h +++ b/src/arch/i386/include/bios_disks.h @@ -47,11 +47,12 @@ struct bios_disk_driver { * Define a BIOS disk driver * */ -#define BIOS_DISK_DRIVER( _fill_drive_name, _min_drive, _max_drive ) { \ - .fill_drive_name = _fill_drive_name, \ - .min_drive = _min_drive, \ - .max_drive = _max_drive, \ -} +#define BIOS_DISK_DRIVER( _name, _fill_drive_name, _min_drive, _max_drive ) \ + static struct bios_disk_driver _name = { \ + .fill_drive_name = _fill_drive_name, \ + .min_drive = _min_drive, \ + .max_drive = _max_drive, \ + } /* * Functions in bios_disks.c diff --git a/src/arch/i386/scripts/i386.lds b/src/arch/i386/scripts/i386.lds index 0ed9955d0..51cfbd333 100644 --- a/src/arch/i386/scripts/i386.lds +++ b/src/arch/i386/scripts/i386.lds @@ -145,6 +145,9 @@ SECTIONS { device_drivers = .; *(.drivers.device) device_drivers_end = .; + isa_drivers = . ; + *(.drivers.isa) + isa_drivers_end = .; bus_drivers = .; *(.drivers.bus) bus_drivers_end = .; |
