Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 45a1b531 authored by Patrice Chotard's avatar Patrice Chotard Committed by Linus Walleij
Browse files

pinctrl/nomadik: add ASIC DB8450 pinctrl driver



This implements a subdriver for the DB8540 ASIC for the
Nomadik pin controller.

Signed-off-by: default avatarPatrice Chotard <patrice.chotard@stericsson.com>
Reviewed-by: default avatarStephen Warren <swarren@wwwdotorg.org>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent e60bc2df
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -90,6 +90,10 @@ config PINCTRL_DB8500
	bool "DB8500 pin controller driver"
	depends on PINCTRL_NOMADIK && ARCH_U8500

config PINCTRL_DB8540
	bool "DB8540 pin controller driver"
	depends on PINCTRL_NOMADIK && ARCH_U8500

config PINCTRL_PXA168
	bool "PXA168 pin controller driver"
	depends on ARCH_MMP
+1 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ obj-$(CONFIG_PINCTRL_IMX23) += pinctrl-imx23.o
obj-$(CONFIG_PINCTRL_IMX28)	+= pinctrl-imx28.o
obj-$(CONFIG_PINCTRL_NOMADIK)	+= pinctrl-nomadik.o
obj-$(CONFIG_PINCTRL_DB8500)	+= pinctrl-nomadik-db8500.o
obj-$(CONFIG_PINCTRL_DB8540)	+= pinctrl-nomadik-db8540.o
obj-$(CONFIG_PINCTRL_PXA168)	+= pinctrl-pxa168.o
obj-$(CONFIG_PINCTRL_PXA910)	+= pinctrl-pxa910.o
obj-$(CONFIG_PINCTRL_SINGLE)	+= pinctrl-single.o
+999 −0

File added.

Preview size limit exceeded, changes collapsed.

+3 −0
Original line number Diff line number Diff line
@@ -1722,6 +1722,8 @@ static int __devinit nmk_pinctrl_probe(struct platform_device *pdev)
	/* Poke in other ASIC variants here */
	if (version == PINCTRL_NMK_DB8500)
		nmk_pinctrl_db8500_init(&npct->soc);
	if (version == PINCTRL_NMK_DB8540)
		nmk_pinctrl_db8540_init(&npct->soc);

	/*
	 * We need all the GPIO drivers to probe FIRST, or we will not be able
@@ -1772,6 +1774,7 @@ static struct platform_driver nmk_gpio_driver = {
static const struct platform_device_id nmk_pinctrl_id[] = {
	{ "pinctrl-stn8815", PINCTRL_NMK_STN8815 },
	{ "pinctrl-db8500", PINCTRL_NMK_DB8500 },
	{ "pinctrl-db8540", PINCTRL_NMK_DB8540 },
};

static struct platform_driver nmk_pinctrl_driver = {
+14 −0
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@
/* Package definitions */
#define PINCTRL_NMK_STN8815	0
#define PINCTRL_NMK_DB8500	1
#define PINCTRL_NMK_DB8540	2

/**
 * struct nmk_function - Nomadik pinctrl mux function
@@ -74,4 +75,17 @@ nmk_pinctrl_db8500_init(const struct nmk_pinctrl_soc_data **soc)

#endif

#ifdef CONFIG_PINCTRL_DB8540

void nmk_pinctrl_db8540_init(const struct nmk_pinctrl_soc_data **soc);

#else

static inline void
nmk_pinctrl_db8540_init(const struct nmk_pinctrl_soc_data **soc)
{
}

#endif

#endif /* PINCTRL_PINCTRL_NOMADIK_H */