From: "A.s. Dong" <aisheng.dong@nxp.com> To: "A.s. Dong" <aisheng.dong@nxp.com>, "linux-gpio@vger.kernel.org" <linux-gpio@vger.kernel.org> Cc: "linux-arm-kernel@lists.infradead.org" <linux-arm-kernel@lists.infradead.org>, "linus.walleij@linaro.org" <linus.walleij@linaro.org>, "shawnguo@kernel.org" <shawnguo@kernel.org>, "stefan@agner.ch" <stefan@agner.ch>, Jacky Bai <ping.bai@nxp.com>, Andy Duan <fugang.duan@nxp.com>, "kernel@pengutronix.de" <kernel@pengutronix.de>, Alexandre Courbot <gnurou@gmail.com> Subject: RE: [PATCH V4 7/7] pinctrl: pinctrl-imx7ulp: add gpio_set_direction support Date: Wed, 12 Jul 2017 13:59:57 +0000 [thread overview] Message-ID: <AM3PR04MB3067C5E7E96CBFFF84B68B180AF0@AM3PR04MB306.eurprd04.prod.outlook.com> (raw) In-Reply-To: <1498046395-30001-8-git-send-email-aisheng.dong@nxp.com> Hi Shawn, > -----Original Message----- > From: Dong Aisheng [mailto:aisheng.dong@nxp.com] > Sent: Wednesday, June 21, 2017 8:00 PM > To: linux-gpio@vger.kernel.org > Cc: linux-arm-kernel@lists.infradead.org; linus.walleij@linaro.org; > shawnguo@kernel.org; stefan@agner.ch; Jacky Bai; Andy Duan; > kernel@pengutronix.de; A.s. Dong; Alexandre Courbot > Subject: [PATCH V4 7/7] pinctrl: pinctrl-imx7ulp: add gpio_set_direction > support > > Add gpio_set_direction support. This makes the driver support GPIO > input/output dynamically change from userspace. > > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Alexandre Courbot <gnurou@gmail.com> > Cc: Shawn Guo <shawnguo@kernel.org> > Cc: Stefan Agner <stefan@agner.ch> > Cc: Fugang Duan <fugang.duan@nxp.com> > Cc: Bai Ping <ping.bai@nxp.com> > Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com> > > --- > ChangeLog: > * New patch. Derived from the original: > [PATCH 1/2] pinctrl: pinctrl-imx: add IBE and OBE SoC property And this one. Please help review. Regards Dong Aisheng > --- > drivers/pinctrl/freescale/pinctrl-imx7ulp.c | 26 > ++++++++++++++++++++++++++ > 1 file changed, 26 insertions(+) > > diff --git a/drivers/pinctrl/freescale/pinctrl-imx7ulp.c > b/drivers/pinctrl/freescale/pinctrl-imx7ulp.c > index 96127dc..b7bebb2 100644 > --- a/drivers/pinctrl/freescale/pinctrl-imx7ulp.c > +++ b/drivers/pinctrl/freescale/pinctrl-imx7ulp.c > @@ -259,6 +259,8 @@ static const struct pinctrl_pin_desc > imx7ulp_pinctrl_pads[] = { > IMX_PINCTRL_PIN(IMX7ULP_PAD_PTF19), > }; > > +#define BM_OBE_ENABLED BIT(17) > +#define BM_IBE_ENABLED BIT(16) > #define BM_LK_ENABLED BIT(15) > #define BM_MUX_MODE 0xf00 > #define BP_MUX_MODE 8 > @@ -300,10 +302,34 @@ static void imx7ulp_cfg_params_fixup(unsigned long > *configs, > } > } > > +static int imx7ulp_pmx_gpio_set_direction(struct pinctrl_dev *pctldev, > + struct pinctrl_gpio_range *range, > + unsigned offset, bool input) > +{ > + struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); > + struct imx_pinctrl_soc_info *info = ipctl->info; > + const struct imx_pin_reg *pin_reg; > + u32 reg; > + > + pin_reg = &info->pin_regs[offset]; > + if (pin_reg->mux_reg == -1) > + return -EINVAL; > + > + reg = readl(ipctl->base + pin_reg->mux_reg); > + if (input) > + reg = (reg & ~BM_OBE_ENABLED) | BM_IBE_ENABLED; > + else > + reg = (reg & ~BM_IBE_ENABLED) | BM_OBE_ENABLED; > + writel(reg, ipctl->base + pin_reg->mux_reg); > + > + return 0; > +} > + > static struct imx_pinctrl_soc_info imx7ulp_pinctrl_info = { > .pins = imx7ulp_pinctrl_pads, > .npins = ARRAY_SIZE(imx7ulp_pinctrl_pads), > .flags = ZERO_OFFSET_VALID | SHARE_MUX_CONF_REG, > + .gpio_set_direction = imx7ulp_pmx_gpio_set_direction, > .mux_mask = BM_MUX_MODE, > .mux_shift = BP_MUX_MODE, > .generic_pinconf = true, > -- > 2.7.4
WARNING: multiple messages have this Message-ID (diff)
From: aisheng.dong@nxp.com (A.s. Dong) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH V4 7/7] pinctrl: pinctrl-imx7ulp: add gpio_set_direction support Date: Wed, 12 Jul 2017 13:59:57 +0000 [thread overview] Message-ID: <AM3PR04MB3067C5E7E96CBFFF84B68B180AF0@AM3PR04MB306.eurprd04.prod.outlook.com> (raw) In-Reply-To: <1498046395-30001-8-git-send-email-aisheng.dong@nxp.com> Hi Shawn, > -----Original Message----- > From: Dong Aisheng [mailto:aisheng.dong at nxp.com] > Sent: Wednesday, June 21, 2017 8:00 PM > To: linux-gpio at vger.kernel.org > Cc: linux-arm-kernel at lists.infradead.org; linus.walleij at linaro.org; > shawnguo at kernel.org; stefan at agner.ch; Jacky Bai; Andy Duan; > kernel at pengutronix.de; A.s. Dong; Alexandre Courbot > Subject: [PATCH V4 7/7] pinctrl: pinctrl-imx7ulp: add gpio_set_direction > support > > Add gpio_set_direction support. This makes the driver support GPIO > input/output dynamically change from userspace. > > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Alexandre Courbot <gnurou@gmail.com> > Cc: Shawn Guo <shawnguo@kernel.org> > Cc: Stefan Agner <stefan@agner.ch> > Cc: Fugang Duan <fugang.duan@nxp.com> > Cc: Bai Ping <ping.bai@nxp.com> > Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com> > > --- > ChangeLog: > * New patch. Derived from the original: > [PATCH 1/2] pinctrl: pinctrl-imx: add IBE and OBE SoC property And this one. Please help review. Regards Dong Aisheng > --- > drivers/pinctrl/freescale/pinctrl-imx7ulp.c | 26 > ++++++++++++++++++++++++++ > 1 file changed, 26 insertions(+) > > diff --git a/drivers/pinctrl/freescale/pinctrl-imx7ulp.c > b/drivers/pinctrl/freescale/pinctrl-imx7ulp.c > index 96127dc..b7bebb2 100644 > --- a/drivers/pinctrl/freescale/pinctrl-imx7ulp.c > +++ b/drivers/pinctrl/freescale/pinctrl-imx7ulp.c > @@ -259,6 +259,8 @@ static const struct pinctrl_pin_desc > imx7ulp_pinctrl_pads[] = { > IMX_PINCTRL_PIN(IMX7ULP_PAD_PTF19), > }; > > +#define BM_OBE_ENABLED BIT(17) > +#define BM_IBE_ENABLED BIT(16) > #define BM_LK_ENABLED BIT(15) > #define BM_MUX_MODE 0xf00 > #define BP_MUX_MODE 8 > @@ -300,10 +302,34 @@ static void imx7ulp_cfg_params_fixup(unsigned long > *configs, > } > } > > +static int imx7ulp_pmx_gpio_set_direction(struct pinctrl_dev *pctldev, > + struct pinctrl_gpio_range *range, > + unsigned offset, bool input) > +{ > + struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); > + struct imx_pinctrl_soc_info *info = ipctl->info; > + const struct imx_pin_reg *pin_reg; > + u32 reg; > + > + pin_reg = &info->pin_regs[offset]; > + if (pin_reg->mux_reg == -1) > + return -EINVAL; > + > + reg = readl(ipctl->base + pin_reg->mux_reg); > + if (input) > + reg = (reg & ~BM_OBE_ENABLED) | BM_IBE_ENABLED; > + else > + reg = (reg & ~BM_IBE_ENABLED) | BM_OBE_ENABLED; > + writel(reg, ipctl->base + pin_reg->mux_reg); > + > + return 0; > +} > + > static struct imx_pinctrl_soc_info imx7ulp_pinctrl_info = { > .pins = imx7ulp_pinctrl_pads, > .npins = ARRAY_SIZE(imx7ulp_pinctrl_pads), > .flags = ZERO_OFFSET_VALID | SHARE_MUX_CONF_REG, > + .gpio_set_direction = imx7ulp_pmx_gpio_set_direction, > .mux_mask = BM_MUX_MODE, > .mux_shift = BP_MUX_MODE, > .generic_pinconf = true, > -- > 2.7.4
next prev parent reply other threads:[~2017-07-12 14:00 UTC|newest] Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-06-21 11:59 [PATCH V4 0/7] pinctrl: imx: add imx7ulp pinctrl support Dong Aisheng 2017-06-21 11:59 ` Dong Aisheng [not found] ` <1498046395-30001-1-git-send-email-aisheng.dong-3arQi8VN3Tc@public.gmane.org> 2017-06-21 11:59 ` [PATCH V4 1/7] dt-bindings: pinctrl: extend the pinmux property to support integers array Dong Aisheng 2017-06-21 11:59 ` Dong Aisheng [not found] ` <1498046395-30001-2-git-send-email-aisheng.dong-3arQi8VN3Tc@public.gmane.org> 2017-06-21 21:50 ` jmondi 2017-06-21 21:50 ` jmondi 2017-06-22 14:35 ` A.s. Dong 2017-06-22 14:35 ` A.s. Dong 2017-06-22 14:49 ` [PATCH V5 1/1] " Dong Aisheng 2017-06-22 14:49 ` Dong Aisheng [not found] ` <1498142940-7982-1-git-send-email-aisheng.dong-3arQi8VN3Tc@public.gmane.org> 2017-06-26 18:49 ` Rob Herring 2017-06-26 18:49 ` Rob Herring 2017-06-29 12:35 ` Linus Walleij 2017-06-29 12:35 ` Linus Walleij 2017-06-21 11:59 ` [PATCH V4 2/7] dt-bindings: pinctrl: add imx7ulp pinctrl binding doc Dong Aisheng 2017-06-21 11:59 ` Dong Aisheng [not found] ` <1498046395-30001-3-git-send-email-aisheng.dong-3arQi8VN3Tc@public.gmane.org> 2017-06-26 18:02 ` Rob Herring 2017-06-26 18:02 ` Rob Herring 2017-06-21 11:59 ` [PATCH V4 3/7] pinctrl: imx: switch to use the generic pinmux property Dong Aisheng 2017-06-21 11:59 ` Dong Aisheng 2017-07-12 13:57 ` A.s. Dong 2017-07-12 13:57 ` A.s. Dong 2017-07-13 8:43 ` Shawn Guo 2017-07-13 8:43 ` Shawn Guo 2017-06-21 11:59 ` [PATCH V4 4/7] pinctrl: imx: add imx7ulp driver Dong Aisheng 2017-06-21 11:59 ` Dong Aisheng 2017-06-21 11:59 ` [PATCH V4 5/7] pinctrl: imx: remove gpio_request_enable and gpio_disable_free Dong Aisheng 2017-06-21 11:59 ` Dong Aisheng 2017-06-27 3:47 ` Stefan Agner 2017-06-27 3:47 ` Stefan Agner 2017-06-27 5:27 ` A.s. Dong 2017-06-27 5:27 ` A.s. Dong 2017-06-21 11:59 ` [PATCH V4 6/7] pinctrl: imx: make imx_pmx_ops.gpio_set_direction platform specific callbacks Dong Aisheng 2017-06-21 11:59 ` Dong Aisheng 2017-06-27 3:53 ` Stefan Agner 2017-06-27 3:53 ` Stefan Agner 2017-06-21 11:59 ` [PATCH V4 7/7] pinctrl: pinctrl-imx7ulp: add gpio_set_direction support Dong Aisheng 2017-06-21 11:59 ` Dong Aisheng 2017-07-12 13:59 ` A.s. Dong [this message] 2017-07-12 13:59 ` A.s. Dong 2017-07-13 8:46 ` Shawn Guo 2017-07-13 8:46 ` Shawn Guo 2017-07-03 10:36 ` [PATCH V4 0/7] pinctrl: imx: add imx7ulp pinctrl support A.s. Dong 2017-07-03 10:36 ` A.s. Dong 2017-07-12 11:59 ` Linus Walleij 2017-07-12 11:59 ` Linus Walleij 2017-07-12 13:54 ` A.s. Dong 2017-07-12 13:54 ` A.s. Dong
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=AM3PR04MB3067C5E7E96CBFFF84B68B180AF0@AM3PR04MB306.eurprd04.prod.outlook.com \ --to=aisheng.dong@nxp.com \ --cc=fugang.duan@nxp.com \ --cc=gnurou@gmail.com \ --cc=kernel@pengutronix.de \ --cc=linus.walleij@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-gpio@vger.kernel.org \ --cc=ping.bai@nxp.com \ --cc=shawnguo@kernel.org \ --cc=stefan@agner.ch \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.