|
@@ -54,6 +54,18 @@ struct fsi_driver {
|
|
|
#define to_fsi_dev(devp) container_of(devp, struct fsi_device, dev)
|
|
|
#define to_fsi_drv(drvp) container_of(drvp, struct fsi_driver, drv)
|
|
|
|
|
|
+extern int fsi_driver_register(struct fsi_driver *fsi_drv);
|
|
|
+extern void fsi_driver_unregister(struct fsi_driver *fsi_drv);
|
|
|
+
|
|
|
+/* module_fsi_driver() - Helper macro for drivers that don't do
|
|
|
+ * anything special in module init/exit. This eliminates a lot of
|
|
|
+ * boilerplate. Each module may only use this macro once, and
|
|
|
+ * calling it replaces module_init() and module_exit()
|
|
|
+ */
|
|
|
+#define module_fsi_driver(__fsi_driver) \
|
|
|
+ module_driver(__fsi_driver, fsi_driver_register, \
|
|
|
+ fsi_driver_unregister)
|
|
|
+
|
|
|
extern struct bus_type fsi_bus_type;
|
|
|
|
|
|
#endif /* LINUX_FSI_H */
|