summaryrefslogtreecommitdiffstats
path: root/include/linux/amba/bus.h
diff options
context:
space:
mode:
authorviresh kumar <viresh.kumar@st.com>2012-03-15 10:40:38 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-03-16 23:32:35 +0000
commit9e5ed094c89e55fbf11d2e81d60be98eb12346c0 (patch)
treeb77c63a452580643cdede36c3038d52995e54d8e /include/linux/amba/bus.h
parenta64ae394eb7de5e39cf462c18edb202196c678fa (diff)
ARM: 7362/1: AMBA: Add module_amba_driver() helper macro for amba_driver
For simple modules that contain a single amba_driver without any additional setup code then ends up being a block of duplicated boilerplate. This patch adds a new macro, module_amba_driver(), which replaces the module_init()/module_exit() registrations with template functions. Signed-off-by: Viresh Kumar <viresh.kumar@st.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include/linux/amba/bus.h')
-rw-r--r--include/linux/amba/bus.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/amba/bus.h b/include/linux/amba/bus.h
index a9fab831caf..7847e197730 100644
--- a/include/linux/amba/bus.h
+++ b/include/linux/amba/bus.h
@@ -125,4 +125,13 @@ struct amba_device name##_device = { \
.periphid = id, \
}
+/*
+ * module_amba_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_amba_driver(__amba_drv) \
+ module_driver(__amba_drv, amba_driver_register, amba_driver_unregister)
+
#endif