diff options
Diffstat (limited to 'src/devices/device.c')
-rw-r--r-- | src/devices/device.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/devices/device.c b/src/devices/device.c index 796aafb6ff..a2ded6d17c 100644 --- a/src/devices/device.c +++ b/src/devices/device.c @@ -27,7 +27,7 @@ /** Linked list of ALL devices */ struct device *all_devices = &dev_root; /** Pointer to the last device */ -static struct device **last_dev_p = &dev_root.next; +extern struct device **last_dev_p; /** The upper limit of MEM resource of the devices. * Reserve 20M for the system */ @@ -504,6 +504,9 @@ void dev_enumerate(void) unsigned subordinate; printk_info("Enumerating buses...\n"); root = &dev_root; + if (root->chip_ops && root->chip_ops->enable_dev) { + root->chip_ops->enable_dev(root); + } if (!root->ops || !root->ops->scan_bus) { printk_err("dev_root missing scan_bus operation"); return; |