1 | // SPDX-License-Identifier: GPL-2.0 |
---|---|
2 | /* |
3 | * Copyright (c) 2002-3 Patrick Mochel |
4 | * Copyright (c) 2002-3 Open Source Development Labs |
5 | */ |
6 | |
7 | #include <linux/device.h> |
8 | #include <linux/init.h> |
9 | #include <linux/memory.h> |
10 | #include <linux/of.h> |
11 | #include <linux/backing-dev.h> |
12 | |
13 | #include "base.h" |
14 | |
15 | /** |
16 | * driver_init - initialize driver model. |
17 | * |
18 | * Call the driver model init functions to initialize their |
19 | * subsystems. Called early from init/main.c. |
20 | */ |
21 | void __init driver_init(void) |
22 | { |
23 | /* These are the core pieces */ |
24 | bdi_init(bdi: &noop_backing_dev_info); |
25 | devtmpfs_init(); |
26 | devices_init(); |
27 | buses_init(); |
28 | classes_init(); |
29 | firmware_init(); |
30 | hypervisor_init(); |
31 | |
32 | /* These are also core pieces, but must come after the |
33 | * core core pieces. |
34 | */ |
35 | of_core_init(); |
36 | platform_bus_init(); |
37 | auxiliary_bus_init(); |
38 | cpu_dev_init(); |
39 | memory_dev_init(); |
40 | node_dev_init(); |
41 | container_dev_init(); |
42 | } |
43 |