0001
0002
0003
0004 #ifndef __SOUNDWIRE_TYPES_H
0005 #define __SOUNDWIRE_TYPES_H
0006
0007 extern struct bus_type sdw_bus_type;
0008 extern struct device_type sdw_slave_type;
0009 extern struct device_type sdw_master_type;
0010
0011 static inline int is_sdw_slave(const struct device *dev)
0012 {
0013 return dev->type == &sdw_slave_type;
0014 }
0015
0016 #define drv_to_sdw_driver(_drv) container_of(_drv, struct sdw_driver, driver)
0017
0018 #define sdw_register_driver(drv) \
0019 __sdw_register_driver(drv, THIS_MODULE)
0020
0021 int __sdw_register_driver(struct sdw_driver *drv, struct module *owner);
0022 void sdw_unregister_driver(struct sdw_driver *drv);
0023
0024 int sdw_slave_uevent(struct device *dev, struct kobj_uevent_env *env);
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034 #define module_sdw_driver(__sdw_driver) \
0035 module_driver(__sdw_driver, sdw_register_driver, \
0036 sdw_unregister_driver)
0037 #endif