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 */
21void __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

source code of linux/drivers/base/init.c