mirror of
https://github.com/ipxe/ipxe
synced 2025-12-17 18:11:49 +03:00
Use the magic of common symbols to allow struct dev to effectively grow at
link time to accommodate whatever bus objects are included.
This commit is contained in:
@@ -144,7 +144,10 @@ static int initialized;
|
||||
|
||||
|
||||
/* Global instance of the current boot device */
|
||||
struct dev dev;
|
||||
DEV_BUS(struct {}, dev_bus);
|
||||
struct dev dev = {
|
||||
.bus = &dev_bus,
|
||||
};
|
||||
|
||||
/**************************************************************************
|
||||
* initialise() - perform any C-level initialisation
|
||||
@@ -213,24 +216,6 @@ void exit(int status)
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Set PCI device to use.
|
||||
*
|
||||
* This routine can be called by e.g. the ROM prefix to specify that
|
||||
* the first device to be tried should be the device on which the ROM
|
||||
* was physically located.
|
||||
*
|
||||
* Note that this is deliberately in main.c rather than pci.c, because
|
||||
* this function should generalise to other bus types (e.g. ISAPnP),
|
||||
* and we don't want to end up dragging in pci.o unnecessarily.
|
||||
*/
|
||||
void set_pci_device ( uint16_t busdevfn ) {
|
||||
dev.devid.bus_type = PCI_BUS_TYPE;
|
||||
dev.pci.busdevfn = busdevfn;
|
||||
dev.pci.already_tried = 0;
|
||||
}
|
||||
|
||||
|
||||
#if 0
|
||||
|
||||
static int main_loop(int state)
|
||||
|
||||
Reference in New Issue
Block a user