aboutsummaryrefslogtreecommitdiff
path: root/src/devices/device.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/device.c')
-rw-r--r--src/devices/device.c5
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;