bus_attribute
static struct bus_attribute bus_attr_cmo_bus_##name = \
struct bus_attribute *bus_attr = to_bus_attr(attr);
struct bus_attribute *bus_attr = to_bus_attr(attr);
int bus_create_file(const struct bus_type *bus, struct bus_attribute *attr)
void bus_remove_file(const struct bus_type *bus, struct bus_attribute *attr)
#define to_bus_attr(_attr) container_of(_attr, struct bus_attribute, attr)
static struct bus_attribute bus_attr_uevent = __ATTR(uevent, 0200, NULL,
struct bus_attribute bus_attr_##_name = __ATTR_RW(_name)
struct bus_attribute bus_attr_##_name = __ATTR_RO(_name)
struct bus_attribute bus_attr_##_name = __ATTR_WO(_name)
int __must_check bus_create_file(const struct bus_type *bus, struct bus_attribute *attr);
void bus_remove_file(const struct bus_type *bus, struct bus_attribute *attr);