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 13extern int devices_init(void); 14extern int buses_init(void); 15extern int classes_init(void); 16extern int firmware_init(void); 17extern int platform_bus_init(void); 18extern int system_bus_init(void); 19extern int cpu_dev_init(void); 20extern int attribute_container_init(void); 21/** 22 * driver_init - initialize driver model. 23 * 24 * Call the driver model init functions to initialize their 25 * subsystems. Called early from init/main.c. 26 */ 27 28void __init driver_init(void) 29{ 30 /* These are the core pieces */ 31 devices_init(); 32 buses_init(); 33 classes_init(); 34 firmware_init(); 35 36 /* These are also core pieces, but must come after the 37 * core core pieces. 38 */ 39 platform_bus_init(); 40 system_bus_init(); 41 cpu_dev_init(); 42 attribute_container_init(); 43}