aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/vexpress.h
diff options
context:
space:
mode:
authorPawel Moll <pawel.moll@arm.com>2014-04-23 05:49:31 -0400
committerPawel Moll <pawel.moll@arm.com>2014-05-15 12:02:19 -0400
commit974cc7b93441a0e78f030495436d1be7eb7c208d (patch)
treebc59d8bdfbb3c8bc25282495a40247eef810a415 /include/linux/vexpress.h
parent29f9b6cf7bff6a118130163c848811e14f8022da (diff)
mfd: vexpress: Define the device as MFD cells
This patch - finally, after over 6 months! :-( - addresses Samuel's request to split the vexpress-sysreg driver into smaller portions and define the device in a form of MFD cells: * LEDs code has been completely removed and replaced with "gpio-leds" nodes in the tree (referencing dedicated GPIO subnodes in sysreg - bindings documentation updated); this also better fits the reality as some variants of the motherboard don't have all the LEDs populated * syscfg bridge code has been extracted into a separate driver (placed in drivers/misc for no better place) * all the ID & MISC registers are defined as sysconf making them available for other drivers should they need to use them (and also to the user via /sys/kernel/debug/regmap which can be helpful in platform debugging) Signed-off-by: Pawel Moll <pawel.moll@arm.com> Acked-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'include/linux/vexpress.h')
-rw-r--r--include/linux/vexpress.h16
1 files changed, 2 insertions, 14 deletions
diff --git a/include/linux/vexpress.h b/include/linux/vexpress.h
index 6b206ba6aa0e..46636e3f43fd 100644
--- a/include/linux/vexpress.h
+++ b/include/linux/vexpress.h
@@ -24,18 +24,6 @@
24#define VEXPRESS_SITE_DB2 2 24#define VEXPRESS_SITE_DB2 2
25#define VEXPRESS_SITE_MASTER 0xf 25#define VEXPRESS_SITE_MASTER 0xf
26 26
27#define VEXPRESS_GPIO_MMC_CARDIN 0
28#define VEXPRESS_GPIO_MMC_WPROT 1
29#define VEXPRESS_GPIO_FLASH_WPn 2
30#define VEXPRESS_GPIO_LED0 3
31#define VEXPRESS_GPIO_LED1 4
32#define VEXPRESS_GPIO_LED2 5
33#define VEXPRESS_GPIO_LED3 6
34#define VEXPRESS_GPIO_LED4 7
35#define VEXPRESS_GPIO_LED5 8
36#define VEXPRESS_GPIO_LED6 9
37#define VEXPRESS_GPIO_LED7 10
38
39#define VEXPRESS_RES_FUNC(_site, _func) \ 27#define VEXPRESS_RES_FUNC(_site, _func) \
40{ \ 28{ \
41 .start = (_site), \ 29 .start = (_site), \
@@ -70,14 +58,14 @@ struct regmap *devm_regmap_init_vexpress_config(struct device *dev);
70 58
71/* Platform control */ 59/* Platform control */
72 60
61unsigned int vexpress_get_mci_cardin(struct device *dev);
73u32 vexpress_get_procid(int site); 62u32 vexpress_get_procid(int site);
74u32 vexpress_get_hbi(int site); 63u32 vexpress_get_hbi(int site);
75void *vexpress_get_24mhz_clock_base(void); 64void *vexpress_get_24mhz_clock_base(void);
76void vexpress_flags_set(u32 data); 65void vexpress_flags_set(u32 data);
77 66
78void vexpress_sysreg_early_init(void __iomem *base); 67void vexpress_sysreg_early_init(void __iomem *base);
79void vexpress_sysreg_of_early_init(void); 68int vexpress_syscfg_device_register(struct platform_device *pdev);
80int vexpress_sysreg_config_device_register(struct platform_device *pdev);
81 69
82/* Clocks */ 70/* Clocks */
83 71