table of contents
STRUCT BUS_TYPE(9) | Device drivers infrastructure | STRUCT BUS_TYPE(9) |
NAME¶
struct_bus_type - The bus type of the device
SYNOPSIS¶
struct bus_type {
const char * name;
const char * dev_name;
struct device * dev_root;
struct bus_attribute * bus_attrs;
struct device_attribute * dev_attrs;
struct driver_attribute * drv_attrs;
const struct attribute_group ** bus_groups;
const struct attribute_group ** dev_groups;
const struct attribute_group ** drv_groups;
int (* match) (struct device *dev, struct device_driver *drv);
int (* uevent) (struct device *dev, struct kobj_uevent_env *env);
int (* probe) (struct device *dev);
int (* remove) (struct device *dev);
void (* shutdown) (struct device *dev);
int (* online) (struct device *dev);
int (* offline) (struct device *dev);
int (* suspend) (struct device *dev, pm_message_t state);
int (* resume) (struct device *dev);
const struct dev_pm_ops * pm;
struct iommu_ops * iommu_ops;
struct subsys_private * p; };
MEMBERS¶
name
dev_name
dev_root
bus_attrs
dev_attrs
drv_attrs
bus_groups
dev_groups
drv_groups
match
uevent
probe
remove
shutdown
online
offline
suspend
resume
pm
iommu_ops
p
DESCRIPTION¶
A bus is a channel between the processor and one or more devices. For the purposes of the device model, all devices are connected via a bus, even if it is an internal, virtual, “platform” bus. Buses can plug into each other. A USB controller is usually a PCI device, for example. The device model represents the actual connections between buses and the devices they control. A bus is represented by the bus_type structure. It contains the name, the default attributes, the bus' methods, PM operations, and the driver core's private data.
COPYRIGHT¶
June 2024 | Kernel Hackers Manual 3.10 |