* [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers
@ 2012-05-06 12:58 Shawn Guo
2012-05-06 12:58 ` [PATCH 1/5] tty: serial: imx: adopt pinctrl API Shawn Guo
` (5 more replies)
0 siblings, 6 replies; 12+ messages in thread
From: Shawn Guo @ 2012-05-06 12:58 UTC (permalink / raw)
To: linux-arm-kernel
With patch 5b3aa5f (pinctrl: add pinctrl_provide_dummies interface for
platforms to use) applied on pinctrl tree, and patch "ARM: imx: enable
pinctrl dummy states" [1] being there, we are ready to adopt pinctrl
API for imx drivers. So let's start from a few outstanding ones.
I would expect to ask Arnd and Olof to pull pinctrl tree into arm-soc
as a dependency and then have series [1] and this patch set go through
arm-soc tree to ease the merge process.
Regards,
Shawn
[1] http://thread.gmane.org/gmane.linux.kernel.mmc/14180
Shawn Guo (5):
tty: serial: imx: adopt pinctrl API
net: fec: adopt pinctrl API
can: flexcan: adopt pinctrl API
i2c: imx: adopt pinctrl API
spi/imx: adopt pinctrl API
drivers/i2c/busses/i2c-imx.c | 8 ++++++++
drivers/net/can/flexcan.c | 6 ++++++
drivers/net/ethernet/freescale/fec.c | 9 +++++++++
drivers/spi/spi-imx.c | 8 ++++++++
drivers/tty/serial/imx.c | 8 ++++++++
5 files changed, 39 insertions(+), 0 deletions(-)
--
1.7.5.4
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/5] tty: serial: imx: adopt pinctrl API
2012-05-06 12:58 [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
@ 2012-05-06 12:58 ` Shawn Guo
2012-05-06 13:47 ` Shawn Guo
2012-05-06 12:58 ` [PATCH 2/5] net: fec: " Shawn Guo
` (4 subsequent siblings)
5 siblings, 1 reply; 12+ messages in thread
From: Shawn Guo @ 2012-05-06 12:58 UTC (permalink / raw)
To: linux-arm-kernel
Cc: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
---
drivers/tty/serial/imx.c | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index e7fecee..ec20673 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -47,6 +47,7 @@
#include <linux/slab.h>
#include <linux/of.h>
#include <linux/of_device.h>
+#include <linux/pinctrl/consumer.h>
#include <asm/io.h>
#include <asm/irq.h>
@@ -1464,6 +1465,7 @@ static int serial_imx_probe(struct platform_device *pdev)
void __iomem *base;
int ret = 0;
struct resource *res;
+ struct pinctrl *pinctrl;
sport = kzalloc(sizeof(*sport), GFP_KERNEL);
if (!sport)
@@ -1503,6 +1505,12 @@ static int serial_imx_probe(struct platform_device *pdev)
sport->timer.function = imx_timeout;
sport->timer.data = (unsigned long)sport;
+ pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
+ if (IS_ERR(pinctrl)) {
+ ret = PTR_ERR(pinctrl);
+ goto unmap;
+ }
+
sport->clk = clk_get(&pdev->dev, "uart");
if (IS_ERR(sport->clk)) {
ret = PTR_ERR(sport->clk);
--
1.7.5.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/5] net: fec: adopt pinctrl API
2012-05-06 12:58 [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
2012-05-06 12:58 ` [PATCH 1/5] tty: serial: imx: adopt pinctrl API Shawn Guo
@ 2012-05-06 12:58 ` Shawn Guo
2012-05-06 16:46 ` David Miller
2012-05-06 17:26 ` Steven King
2012-05-06 12:58 ` [PATCH 3/5] can: flexcan: " Shawn Guo
` (3 subsequent siblings)
5 siblings, 2 replies; 12+ messages in thread
From: Shawn Guo @ 2012-05-06 12:58 UTC (permalink / raw)
To: linux-arm-kernel
Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
---
drivers/net/ethernet/freescale/fec.c | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/drivers/net/ethernet/freescale/fec.c b/drivers/net/ethernet/freescale/fec.c
index a12b3f5..500c106 100644
--- a/drivers/net/ethernet/freescale/fec.c
+++ b/drivers/net/ethernet/freescale/fec.c
@@ -48,6 +48,7 @@
#include <linux/of_device.h>
#include <linux/of_gpio.h>
#include <linux/of_net.h>
+#include <linux/pinctrl/consumer.h>
#include <asm/cacheflush.h>
@@ -1542,6 +1543,7 @@ fec_probe(struct platform_device *pdev)
struct resource *r;
const struct of_device_id *of_id;
static int dev_id;
+ struct pinctrl *pinctrl;
of_id = of_match_device(fec_dt_ids, &pdev->dev);
if (of_id)
@@ -1609,6 +1611,12 @@ fec_probe(struct platform_device *pdev)
}
}
+ pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
+ if (IS_ERR(pinctrl)) {
+ ret = PTR_ERR(pinctrl);
+ goto failed_pin;
+ }
+
fep->clk = clk_get(&pdev->dev, NULL);
if (IS_ERR(fep->clk)) {
ret = PTR_ERR(fep->clk);
@@ -1639,6 +1647,7 @@ failed_mii_init:
failed_init:
clk_disable_unprepare(fep->clk);
clk_put(fep->clk);
+failed_pin:
failed_clk:
for (i = 0; i < FEC_IRQ_NUM; i++) {
irq = platform_get_irq(pdev, i);
--
1.7.5.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 3/5] can: flexcan: adopt pinctrl API
2012-05-06 12:58 [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
2012-05-06 12:58 ` [PATCH 1/5] tty: serial: imx: adopt pinctrl API Shawn Guo
2012-05-06 12:58 ` [PATCH 2/5] net: fec: " Shawn Guo
@ 2012-05-06 12:58 ` Shawn Guo
2012-05-06 12:58 ` [PATCH 4/5] i2c: imx: " Shawn Guo
` (2 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: Shawn Guo @ 2012-05-06 12:58 UTC (permalink / raw)
To: linux-arm-kernel
Cc: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
---
drivers/net/can/flexcan.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/drivers/net/can/flexcan.c b/drivers/net/can/flexcan.c
index 1efb083..38c0690 100644
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -35,6 +35,7 @@
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
+#include <linux/pinctrl/consumer.h>
#define DRV_NAME "flexcan"
@@ -927,11 +928,16 @@ static int __devinit flexcan_probe(struct platform_device *pdev)
struct flexcan_priv *priv;
struct resource *mem;
struct clk *clk = NULL;
+ struct pinctrl *pinctrl;
void __iomem *base;
resource_size_t mem_size;
int err, irq;
u32 clock_freq = 0;
+ pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
+ if (IS_ERR(pinctrl))
+ return PTR_ERR(pinctrl);
+
if (pdev->dev.of_node) {
const u32 *clock_freq_p;
--
1.7.5.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 4/5] i2c: imx: adopt pinctrl API
2012-05-06 12:58 [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
` (2 preceding siblings ...)
2012-05-06 12:58 ` [PATCH 3/5] can: flexcan: " Shawn Guo
@ 2012-05-06 12:58 ` Shawn Guo
2012-05-06 12:58 ` [PATCH 5/5] spi/imx: " Shawn Guo
2012-05-06 13:45 ` [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
5 siblings, 0 replies; 12+ messages in thread
From: Shawn Guo @ 2012-05-06 12:58 UTC (permalink / raw)
To: linux-arm-kernel
Cc: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
---
drivers/i2c/busses/i2c-imx.c | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/drivers/i2c/busses/i2c-imx.c b/drivers/i2c/busses/i2c-imx.c
index dfb84b7..56bce9a 100644
--- a/drivers/i2c/busses/i2c-imx.c
+++ b/drivers/i2c/busses/i2c-imx.c
@@ -51,6 +51,7 @@
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/of_i2c.h>
+#include <linux/pinctrl/consumer.h>
#include <mach/irqs.h>
#include <mach/hardware.h>
@@ -470,6 +471,7 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
struct imx_i2c_struct *i2c_imx;
struct resource *res;
struct imxi2c_platform_data *pdata = pdev->dev.platform_data;
+ struct pinctrl *pinctrl;
void __iomem *base;
resource_size_t res_size;
int irq, bitrate;
@@ -520,6 +522,12 @@ static int __init i2c_imx_probe(struct platform_device *pdev)
i2c_imx->base = base;
i2c_imx->res = res;
+ pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
+ if (IS_ERR(pinctrl)) {
+ ret = PTR_ERR(pinctrl);
+ goto fail3;
+ }
+
/* Get I2C clock */
i2c_imx->clk = clk_get(&pdev->dev, "i2c_clk");
if (IS_ERR(i2c_imx->clk)) {
--
1.7.5.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 5/5] spi/imx: adopt pinctrl API
2012-05-06 12:58 [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
` (3 preceding siblings ...)
2012-05-06 12:58 ` [PATCH 4/5] i2c: imx: " Shawn Guo
@ 2012-05-06 12:58 ` Shawn Guo
2012-05-06 13:45 ` [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
5 siblings, 0 replies; 12+ messages in thread
From: Shawn Guo @ 2012-05-06 12:58 UTC (permalink / raw)
To: linux-arm-kernel
Cc: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
---
drivers/spi/spi-imx.c | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/drivers/spi/spi-imx.c b/drivers/spi/spi-imx.c
index 570f220..69c9a66 100644
--- a/drivers/spi/spi-imx.c
+++ b/drivers/spi/spi-imx.c
@@ -37,6 +37,7 @@
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/of_gpio.h>
+#include <linux/pinctrl/consumer.h>
#include <mach/spi.h>
@@ -758,6 +759,7 @@ static int __devinit spi_imx_probe(struct platform_device *pdev)
struct spi_master *master;
struct spi_imx_data *spi_imx;
struct resource *res;
+ struct pinctrl *pinctrl;
int i, ret, num_cs;
if (!np && !mxc_platform_info) {
@@ -845,6 +847,12 @@ static int __devinit spi_imx_probe(struct platform_device *pdev)
goto out_iounmap;
}
+ pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
+ if (IS_ERR(pinctrl)) {
+ ret = PTR_ERR(pinctrl);
+ goto out_free_irq;
+ }
+
spi_imx->clk = clk_get(&pdev->dev, NULL);
if (IS_ERR(spi_imx->clk)) {
dev_err(&pdev->dev, "unable to get clock\n");
--
1.7.5.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers
2012-05-06 12:58 [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
` (4 preceding siblings ...)
2012-05-06 12:58 ` [PATCH 5/5] spi/imx: " Shawn Guo
@ 2012-05-06 13:45 ` Shawn Guo
5 siblings, 0 replies; 12+ messages in thread
From: Shawn Guo @ 2012-05-06 13:45 UTC (permalink / raw)
To: linux-arm-kernel
Sorry for forgetting updating Greg's email address.
Regards,
Shawn
On Sun, May 06, 2012 at 08:58:09PM +0800, Shawn Guo wrote:
> With patch 5b3aa5f (pinctrl: add pinctrl_provide_dummies interface for
> platforms to use) applied on pinctrl tree, and patch "ARM: imx: enable
> pinctrl dummy states" [1] being there, we are ready to adopt pinctrl
> API for imx drivers. So let's start from a few outstanding ones.
>
> I would expect to ask Arnd and Olof to pull pinctrl tree into arm-soc
> as a dependency and then have series [1] and this patch set go through
> arm-soc tree to ease the merge process.
>
> Regards,
> Shawn
>
> [1] http://thread.gmane.org/gmane.linux.kernel.mmc/14180
>
> Shawn Guo (5):
> tty: serial: imx: adopt pinctrl API
> net: fec: adopt pinctrl API
> can: flexcan: adopt pinctrl API
> i2c: imx: adopt pinctrl API
> spi/imx: adopt pinctrl API
>
> drivers/i2c/busses/i2c-imx.c | 8 ++++++++
> drivers/net/can/flexcan.c | 6 ++++++
> drivers/net/ethernet/freescale/fec.c | 9 +++++++++
> drivers/spi/spi-imx.c | 8 ++++++++
> drivers/tty/serial/imx.c | 8 ++++++++
> 5 files changed, 39 insertions(+), 0 deletions(-)
>
> --
> 1.7.5.4
>
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/5] tty: serial: imx: adopt pinctrl API
2012-05-06 12:58 ` [PATCH 1/5] tty: serial: imx: adopt pinctrl API Shawn Guo
@ 2012-05-06 13:47 ` Shawn Guo
0 siblings, 0 replies; 12+ messages in thread
From: Shawn Guo @ 2012-05-06 13:47 UTC (permalink / raw)
To: linux-arm-kernel
On Sun, May 06, 2012 at 08:58:10PM +0800, Shawn Guo wrote:
> Cc: Greg Kroah-Hartman <gregkh@suse.de>
Corrected to "Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>".
Regards,
Shawn
> Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
> ---
> drivers/tty/serial/imx.c | 8 ++++++++
> 1 files changed, 8 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
> index e7fecee..ec20673 100644
> --- a/drivers/tty/serial/imx.c
> +++ b/drivers/tty/serial/imx.c
> @@ -47,6 +47,7 @@
> #include <linux/slab.h>
> #include <linux/of.h>
> #include <linux/of_device.h>
> +#include <linux/pinctrl/consumer.h>
>
> #include <asm/io.h>
> #include <asm/irq.h>
> @@ -1464,6 +1465,7 @@ static int serial_imx_probe(struct platform_device *pdev)
> void __iomem *base;
> int ret = 0;
> struct resource *res;
> + struct pinctrl *pinctrl;
>
> sport = kzalloc(sizeof(*sport), GFP_KERNEL);
> if (!sport)
> @@ -1503,6 +1505,12 @@ static int serial_imx_probe(struct platform_device *pdev)
> sport->timer.function = imx_timeout;
> sport->timer.data = (unsigned long)sport;
>
> + pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
> + if (IS_ERR(pinctrl)) {
> + ret = PTR_ERR(pinctrl);
> + goto unmap;
> + }
> +
> sport->clk = clk_get(&pdev->dev, "uart");
> if (IS_ERR(sport->clk)) {
> ret = PTR_ERR(sport->clk);
> --
> 1.7.5.4
>
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 2/5] net: fec: adopt pinctrl API
2012-05-06 12:58 ` [PATCH 2/5] net: fec: " Shawn Guo
@ 2012-05-06 16:46 ` David Miller
2012-05-07 0:41 ` Shawn Guo
2012-05-06 17:26 ` Steven King
1 sibling, 1 reply; 12+ messages in thread
From: David Miller @ 2012-05-06 16:46 UTC (permalink / raw)
To: linux-arm-kernel
CC:'ing me privately on networking patches accomplishes nothing,
I mostly ignore all private email.
CC:'ing netdev at vger.kernel.org instead is the thing to do.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 2/5] net: fec: adopt pinctrl API
2012-05-06 12:58 ` [PATCH 2/5] net: fec: " Shawn Guo
2012-05-06 16:46 ` David Miller
@ 2012-05-06 17:26 ` Steven King
2012-05-07 0:46 ` Shawn Guo
1 sibling, 1 reply; 12+ messages in thread
From: Steven King @ 2012-05-06 17:26 UTC (permalink / raw)
To: linux-arm-kernel
On Sunday 06 May 2012 5:58:11 am Shawn Guo wrote:
> Cc: David S. Miller <davem@davemloft.net>
> Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
> ---
> drivers/net/ethernet/freescale/fec.c | 9 +++++++++
> 1 files changed, 9 insertions(+), 0 deletions(-)
As the fec driver is also used by m68k/coldfire, perhaps a CC to the
uclinux-dev at uclinux.org would be apropos.
>
> + pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
> + if (IS_ERR(pinctrl)) {
> + ret = PTR_ERR(pinctrl);
> + goto failed_pin;
> + }
What happens here if pinmux support isnt implemented yet as is the case for
m68k/coldfire?
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 2/5] net: fec: adopt pinctrl API
2012-05-06 16:46 ` David Miller
@ 2012-05-07 0:41 ` Shawn Guo
0 siblings, 0 replies; 12+ messages in thread
From: Shawn Guo @ 2012-05-07 0:41 UTC (permalink / raw)
To: linux-arm-kernel
On Sun, May 06, 2012 at 12:46:23PM -0400, David Miller wrote:
>
> CC:'ing me privately on networking patches accomplishes nothing,
> I mostly ignore all private email.
>
> CC:'ing netdev at vger.kernel.org instead is the thing to do.
Ok, will resend to have the list Cc-ed.
--
Regards,
Shawn
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 2/5] net: fec: adopt pinctrl API
2012-05-06 17:26 ` Steven King
@ 2012-05-07 0:46 ` Shawn Guo
0 siblings, 0 replies; 12+ messages in thread
From: Shawn Guo @ 2012-05-07 0:46 UTC (permalink / raw)
To: linux-arm-kernel
On Sun, May 06, 2012 at 10:26:28AM -0700, Steven King wrote:
> > + pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
> > + if (IS_ERR(pinctrl)) {
> > + ret = PTR_ERR(pinctrl);
> > + goto failed_pin;
> > + }
>
> What happens here if pinmux support isnt implemented yet as is the case for
> m68k/coldfire?
There are a set of stub functions defined for !CONFIG_PINCTRL
in include/linux/pinctrl/consumer.h to ensure the pinctrl calls
succeed for those cases.
--
Regards,
Shawn
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2012-05-07 0:46 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-06 12:58 [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
2012-05-06 12:58 ` [PATCH 1/5] tty: serial: imx: adopt pinctrl API Shawn Guo
2012-05-06 13:47 ` Shawn Guo
2012-05-06 12:58 ` [PATCH 2/5] net: fec: " Shawn Guo
2012-05-06 16:46 ` David Miller
2012-05-07 0:41 ` Shawn Guo
2012-05-06 17:26 ` Steven King
2012-05-07 0:46 ` Shawn Guo
2012-05-06 12:58 ` [PATCH 3/5] can: flexcan: " Shawn Guo
2012-05-06 12:58 ` [PATCH 4/5] i2c: imx: " Shawn Guo
2012-05-06 12:58 ` [PATCH 5/5] spi/imx: " Shawn Guo
2012-05-06 13:45 ` [PATCH 0/5] Adopt pinctrl API for a few outstanding imx drivers Shawn Guo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).