xref: /openbmc/linux/drivers/base/init.c (revision d5cb9783536a41df9f9cba5b0a1d78047ed787f7)
1 /*
2  *
3  * Copyright (c) 2002-3 Patrick Mochel
4  * Copyright (c) 2002-3 Open Source Development Labs
5  *
6  * This file is released under the GPLv2
7  *
8  */
9 
10 #include <linux/device.h>
11 #include <linux/init.h>
12 #include <linux/memory.h>
13 
14 #include "base.h"
15 
16 /**
17  *	driver_init - initialize driver model.
18  *
19  *	Call the driver model init functions to initialize their
20  *	subsystems. Called early from init/main.c.
21  */
22 
23 void __init driver_init(void)
24 {
25 	/* These are the core pieces */
26 	devices_init();
27 	buses_init();
28 	classes_init();
29 	firmware_init();
30 
31 	/* These are also core pieces, but must come after the
32 	 * core core pieces.
33 	 */
34 	platform_bus_init();
35 	system_bus_init();
36 	cpu_dev_init();
37 	memory_dev_init();
38 	attribute_container_init();
39 }
40