Register a driver-core subsystem
int bus_register(struct bus_type * bus);
bus
bus to register
Once we have that, we register the bus with the kobject infrastructure, then register the children subsystems it has: the devices and drivers that belong to the subsystem.