* [PATCH 1/2] serial: mxs-auart: fix the wrong setting order
@ 2012-09-07 2:38 ` Huang Shijie
0 siblings, 0 replies; 26+ messages in thread
From: Huang Shijie @ 2012-09-07 2:38 UTC (permalink / raw)
To: gregkh
Cc: alan, linux-serial, linux-kernel, shawn.guo, linux-arm-kernel,
Huang Shijie
After set the AUART_CTRL0_CLKGATE, the UART will gate all the clocks off.
So the following line will not take effect.
................................................................
writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN,
u->membase + AUART_INTR_CLR);
................................................................
To fix this issue, the patch moves this gate-off line to
the end of setting registers.
Signed-off-by: Huang Shijie <shijie8@gmail.com>
---
drivers/tty/serial/mxs-auart.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c
index dafeef2..ea5f888 100644
--- a/drivers/tty/serial/mxs-auart.c
+++ b/drivers/tty/serial/mxs-auart.c
@@ -457,11 +457,11 @@ static void mxs_auart_shutdown(struct uart_port *u)
writel(AUART_CTRL2_UARTEN, u->membase + AUART_CTRL2_CLR);
- writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET);
-
writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN,
u->membase + AUART_INTR_CLR);
+ writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET);
+
clk_disable_unprepare(s->clk);
}
--
1.7.4.4
^ permalink raw reply related [flat|nested] 26+ messages in thread* [PATCH 1/2] serial: mxs-auart: fix the wrong setting order @ 2012-09-07 2:38 ` Huang Shijie 0 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:38 UTC (permalink / raw) To: linux-arm-kernel After set the AUART_CTRL0_CLKGATE, the UART will gate all the clocks off. So the following line will not take effect. ................................................................ writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, u->membase + AUART_INTR_CLR); ................................................................ To fix this issue, the patch moves this gate-off line to the end of setting registers. Signed-off-by: Huang Shijie <shijie8@gmail.com> --- drivers/tty/serial/mxs-auart.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c index dafeef2..ea5f888 100644 --- a/drivers/tty/serial/mxs-auart.c +++ b/drivers/tty/serial/mxs-auart.c @@ -457,11 +457,11 @@ static void mxs_auart_shutdown(struct uart_port *u) writel(AUART_CTRL2_UARTEN, u->membase + AUART_CTRL2_CLR); - writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); - writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, u->membase + AUART_INTR_CLR); + writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); + clk_disable_unprepare(s->clk); } -- 1.7.4.4 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 2/2] serial: mxs-auart: put the device in mxs_auart_probe() 2012-09-07 2:38 ` Huang Shijie @ 2012-09-07 2:38 ` Huang Shijie -1 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:38 UTC (permalink / raw) To: gregkh Cc: alan, linux-serial, linux-kernel, shawn.guo, linux-arm-kernel, Huang Shijie We call the get_device() in the mxs_auart_probe(). For the balance of the reference count, we should put the device in the mxs_auart_remove(). Signed-off-by: Huang Shijie <shijie8@gmail.com> --- drivers/tty/serial/mxs-auart.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c index ea5f888..6898413 100644 --- a/drivers/tty/serial/mxs-auart.c +++ b/drivers/tty/serial/mxs-auart.c @@ -796,6 +796,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) auart_port[pdev->id] = NULL; + put_device(s->dev); clk_put(s->clk); free_irq(s->irq, s); kfree(s); -- 1.7.4.4 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH 2/2] serial: mxs-auart: put the device in mxs_auart_probe() @ 2012-09-07 2:38 ` Huang Shijie 0 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:38 UTC (permalink / raw) To: linux-arm-kernel We call the get_device() in the mxs_auart_probe(). For the balance of the reference count, we should put the device in the mxs_auart_remove(). Signed-off-by: Huang Shijie <shijie8@gmail.com> --- drivers/tty/serial/mxs-auart.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c index ea5f888..6898413 100644 --- a/drivers/tty/serial/mxs-auart.c +++ b/drivers/tty/serial/mxs-auart.c @@ -796,6 +796,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) auart_port[pdev->id] = NULL; + put_device(s->dev); clk_put(s->clk); free_irq(s->irq, s); kfree(s); -- 1.7.4.4 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* Re: [PATCH 2/2] serial: mxs-auart: put the device in mxs_auart_probe() 2012-09-07 2:38 ` Huang Shijie @ 2012-09-07 2:43 ` Shawn Guo -1 siblings, 0 replies; 26+ messages in thread From: Shawn Guo @ 2012-09-07 2:43 UTC (permalink / raw) To: Huang Shijie; +Cc: gregkh, alan, linux-serial, linux-kernel, linux-arm-kernel On Thu, Sep 06, 2012 at 10:38:41PM -0400, Huang Shijie wrote: > We call the get_device() in the mxs_auart_probe(). > For the balance of the reference count, we should put the > device in the mxs_auart_remove(). > > Signed-off-by: Huang Shijie <shijie8@gmail.com> > --- > drivers/tty/serial/mxs-auart.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c > index ea5f888..6898413 100644 > --- a/drivers/tty/serial/mxs-auart.c > +++ b/drivers/tty/serial/mxs-auart.c > @@ -796,6 +796,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) > > auart_port[pdev->id] = NULL; > > + put_device(s->dev); > clk_put(s->clk); > free_irq(s->irq, s); > kfree(s); So the error path of probe needs function fixing too, right? -- Regards, Shawn ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 2/2] serial: mxs-auart: put the device in mxs_auart_probe() @ 2012-09-07 2:43 ` Shawn Guo 0 siblings, 0 replies; 26+ messages in thread From: Shawn Guo @ 2012-09-07 2:43 UTC (permalink / raw) To: linux-arm-kernel On Thu, Sep 06, 2012 at 10:38:41PM -0400, Huang Shijie wrote: > We call the get_device() in the mxs_auart_probe(). > For the balance of the reference count, we should put the > device in the mxs_auart_remove(). > > Signed-off-by: Huang Shijie <shijie8@gmail.com> > --- > drivers/tty/serial/mxs-auart.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c > index ea5f888..6898413 100644 > --- a/drivers/tty/serial/mxs-auart.c > +++ b/drivers/tty/serial/mxs-auart.c > @@ -796,6 +796,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) > > auart_port[pdev->id] = NULL; > > + put_device(s->dev); > clk_put(s->clk); > free_irq(s->irq, s); > kfree(s); So the error path of probe needs function fixing too, right? -- Regards, Shawn ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] serial: mxs-auart: put the device when exit or error 2012-09-07 2:43 ` Shawn Guo (?) @ 2012-09-07 2:33 ` Huang Shijie -1 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:33 UTC (permalink / raw) To: gregkh Cc: alan, linux-serial, linux-arm-kernel, linux-kernel, shawn.guo, Huang Shijie We call the get_device() in the mxs_auart_probe(). For the balance of the reference count, we should put the device in the mxs_auart_remove() or in the error path of probe. Signed-off-by: Huang Shijie <b32955@freescale.com> --- drivers/tty/serial/mxs-auart.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c index 3a667ee..203e512 100644 --- a/drivers/tty/serial/mxs-auart.c +++ b/drivers/tty/serial/mxs-auart.c @@ -781,6 +781,7 @@ out_free_irq: auart_port[pdev->id] = NULL; free_irq(s->irq, s); out_free_clk: + put_device(s->dev); clk_put(s->clk); out_free: kfree(s); @@ -796,6 +797,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) auart_port[pdev->id] = NULL; + put_device(s->dev); clk_put(s->clk); free_irq(s->irq, s); kfree(s); -- 1.7.0.4 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH] serial: mxs-auart: put the device when exit or error @ 2012-09-07 2:33 ` Huang Shijie 0 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:33 UTC (permalink / raw) To: gregkh Cc: alan, linux-serial, linux-arm-kernel, linux-kernel, shawn.guo, Huang Shijie We call the get_device() in the mxs_auart_probe(). For the balance of the reference count, we should put the device in the mxs_auart_remove() or in the error path of probe. Signed-off-by: Huang Shijie <b32955@freescale.com> --- drivers/tty/serial/mxs-auart.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c index 3a667ee..203e512 100644 --- a/drivers/tty/serial/mxs-auart.c +++ b/drivers/tty/serial/mxs-auart.c @@ -781,6 +781,7 @@ out_free_irq: auart_port[pdev->id] = NULL; free_irq(s->irq, s); out_free_clk: + put_device(s->dev); clk_put(s->clk); out_free: kfree(s); @@ -796,6 +797,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) auart_port[pdev->id] = NULL; + put_device(s->dev); clk_put(s->clk); free_irq(s->irq, s); kfree(s); -- 1.7.0.4 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* [PATCH] serial: mxs-auart: put the device when exit or error @ 2012-09-07 2:33 ` Huang Shijie 0 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:33 UTC (permalink / raw) To: linux-arm-kernel We call the get_device() in the mxs_auart_probe(). For the balance of the reference count, we should put the device in the mxs_auart_remove() or in the error path of probe. Signed-off-by: Huang Shijie <b32955@freescale.com> --- drivers/tty/serial/mxs-auart.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c index 3a667ee..203e512 100644 --- a/drivers/tty/serial/mxs-auart.c +++ b/drivers/tty/serial/mxs-auart.c @@ -781,6 +781,7 @@ out_free_irq: auart_port[pdev->id] = NULL; free_irq(s->irq, s); out_free_clk: + put_device(s->dev); clk_put(s->clk); out_free: kfree(s); @@ -796,6 +797,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) auart_port[pdev->id] = NULL; + put_device(s->dev); clk_put(s->clk); free_irq(s->irq, s); kfree(s); -- 1.7.0.4 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* Re: [PATCH] serial: mxs-auart: put the device when exit or error 2012-09-07 2:33 ` Huang Shijie @ 2012-09-07 3:14 ` Shawn Guo -1 siblings, 0 replies; 26+ messages in thread From: Shawn Guo @ 2012-09-07 3:14 UTC (permalink / raw) To: Huang Shijie; +Cc: gregkh, alan, linux-serial, linux-arm-kernel, linux-kernel On Fri, Sep 07, 2012 at 10:33:07AM +0800, Huang Shijie wrote: > We call the get_device() in the mxs_auart_probe(). > For the balance of the reference count, we should put the > device in the mxs_auart_remove() or in the error path of > probe. > > Signed-off-by: Huang Shijie <b32955@freescale.com> Acked-by: Shawn Guo <shawn.guo@linaro.org> > --- > drivers/tty/serial/mxs-auart.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c > index 3a667ee..203e512 100644 > --- a/drivers/tty/serial/mxs-auart.c > +++ b/drivers/tty/serial/mxs-auart.c > @@ -781,6 +781,7 @@ out_free_irq: > auart_port[pdev->id] = NULL; > free_irq(s->irq, s); > out_free_clk: > + put_device(s->dev); > clk_put(s->clk); > out_free: > kfree(s); > @@ -796,6 +797,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) > > auart_port[pdev->id] = NULL; > > + put_device(s->dev); > clk_put(s->clk); > free_irq(s->irq, s); > kfree(s); > -- > 1.7.0.4 > > ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] serial: mxs-auart: put the device when exit or error @ 2012-09-07 3:14 ` Shawn Guo 0 siblings, 0 replies; 26+ messages in thread From: Shawn Guo @ 2012-09-07 3:14 UTC (permalink / raw) To: linux-arm-kernel On Fri, Sep 07, 2012 at 10:33:07AM +0800, Huang Shijie wrote: > We call the get_device() in the mxs_auart_probe(). > For the balance of the reference count, we should put the > device in the mxs_auart_remove() or in the error path of > probe. > > Signed-off-by: Huang Shijie <b32955@freescale.com> Acked-by: Shawn Guo <shawn.guo@linaro.org> > --- > drivers/tty/serial/mxs-auart.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c > index 3a667ee..203e512 100644 > --- a/drivers/tty/serial/mxs-auart.c > +++ b/drivers/tty/serial/mxs-auart.c > @@ -781,6 +781,7 @@ out_free_irq: > auart_port[pdev->id] = NULL; > free_irq(s->irq, s); > out_free_clk: > + put_device(s->dev); > clk_put(s->clk); > out_free: > kfree(s); > @@ -796,6 +797,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) > > auart_port[pdev->id] = NULL; > > + put_device(s->dev); > clk_put(s->clk); > free_irq(s->irq, s); > kfree(s); > -- > 1.7.0.4 > > ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH] serial: mxs-auart: put the device when exit or error 2012-09-07 2:33 ` Huang Shijie @ 2012-09-10 23:00 ` Greg KH -1 siblings, 0 replies; 26+ messages in thread From: Greg KH @ 2012-09-10 23:00 UTC (permalink / raw) To: Huang Shijie Cc: alan, linux-serial, linux-arm-kernel, linux-kernel, shawn.guo On Fri, Sep 07, 2012 at 10:33:07AM +0800, Huang Shijie wrote: > We call the get_device() in the mxs_auart_probe(). > For the balance of the reference count, we should put the > device in the mxs_auart_remove() or in the error path of > probe. > > Signed-off-by: Huang Shijie <b32955@freescale.com> > --- > drivers/tty/serial/mxs-auart.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) I already applied the previous version, so can you make up a patch against the tty-next tree that fixes it up properly based on this patch? thanks, greg k-h ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] serial: mxs-auart: put the device when exit or error @ 2012-09-10 23:00 ` Greg KH 0 siblings, 0 replies; 26+ messages in thread From: Greg KH @ 2012-09-10 23:00 UTC (permalink / raw) To: linux-arm-kernel On Fri, Sep 07, 2012 at 10:33:07AM +0800, Huang Shijie wrote: > We call the get_device() in the mxs_auart_probe(). > For the balance of the reference count, we should put the > device in the mxs_auart_remove() or in the error path of > probe. > > Signed-off-by: Huang Shijie <b32955@freescale.com> > --- > drivers/tty/serial/mxs-auart.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) I already applied the previous version, so can you make up a patch against the tty-next tree that fixes it up properly based on this patch? thanks, greg k-h ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH] serial: mxs-auart: put the device in the error path 2012-09-10 23:00 ` Greg KH (?) @ 2012-09-11 7:30 ` Huang Shijie -1 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-11 7:30 UTC (permalink / raw) To: gregkh; +Cc: alan, linux-serial, shawn.guo, Huang Shijie The mxs_auart_probe() gets the device by the get_device(). So we should put the device in the error path to balance the device's reference counter. Signed-off-by: Huang Shijie <b32955@freescale.com> --- drivers/tty/serial/mxs-auart.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c index 6898413..6db3baa 100644 --- a/drivers/tty/serial/mxs-auart.c +++ b/drivers/tty/serial/mxs-auart.c @@ -781,6 +781,7 @@ out_free_irq: auart_port[pdev->id] = NULL; free_irq(s->irq, s); out_free_clk: + put_device(s->dev); clk_put(s->clk); out_free: kfree(s); -- 1.7.0.4 ^ permalink raw reply related [flat|nested] 26+ messages in thread
* Re: [PATCH 2/2] serial: mxs-auart: put the device in mxs_auart_probe() 2012-09-07 2:43 ` Shawn Guo (?) @ 2012-09-07 2:48 ` Huang Shijie -1 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:48 UTC (permalink / raw) To: Shawn Guo Cc: Huang Shijie, gregkh, alan, linux-serial, linux-kernel, linux-arm-kernel 于 2012年09月07日 10:43, Shawn Guo 写道: > On Thu, Sep 06, 2012 at 10:38:41PM -0400, Huang Shijie wrote: >> We call the get_device() in the mxs_auart_probe(). >> For the balance of the reference count, we should put the >> device in the mxs_auart_remove(). >> >> Signed-off-by: Huang Shijie<shijie8@gmail.com> >> --- >> drivers/tty/serial/mxs-auart.c | 1 + >> 1 files changed, 1 insertions(+), 0 deletions(-) >> >> diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c >> index ea5f888..6898413 100644 >> --- a/drivers/tty/serial/mxs-auart.c >> +++ b/drivers/tty/serial/mxs-auart.c >> @@ -796,6 +796,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) >> >> auart_port[pdev->id] = NULL; >> >> + put_device(s->dev); >> clk_put(s->clk); >> free_irq(s->irq, s); >> kfree(s); > So the error path of probe needs function fixing too, right? > OK. Send out the new version right now. Huang Shijie -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH 2/2] serial: mxs-auart: put the device in mxs_auart_probe() @ 2012-09-07 2:48 ` Huang Shijie 0 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:48 UTC (permalink / raw) To: Shawn Guo Cc: Huang Shijie, gregkh, alan, linux-serial, linux-kernel, linux-arm-kernel 于 2012年09月07日 10:43, Shawn Guo 写道: > On Thu, Sep 06, 2012 at 10:38:41PM -0400, Huang Shijie wrote: >> We call the get_device() in the mxs_auart_probe(). >> For the balance of the reference count, we should put the >> device in the mxs_auart_remove(). >> >> Signed-off-by: Huang Shijie<shijie8@gmail.com> >> --- >> drivers/tty/serial/mxs-auart.c | 1 + >> 1 files changed, 1 insertions(+), 0 deletions(-) >> >> diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c >> index ea5f888..6898413 100644 >> --- a/drivers/tty/serial/mxs-auart.c >> +++ b/drivers/tty/serial/mxs-auart.c >> @@ -796,6 +796,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) >> >> auart_port[pdev->id] = NULL; >> >> + put_device(s->dev); >> clk_put(s->clk); >> free_irq(s->irq, s); >> kfree(s); > So the error path of probe needs function fixing too, right? > OK. Send out the new version right now. Huang Shijie ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 2/2] serial: mxs-auart: put the device in mxs_auart_probe() @ 2012-09-07 2:48 ` Huang Shijie 0 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:48 UTC (permalink / raw) To: linux-arm-kernel ? 2012?09?07? 10:43, Shawn Guo ??: > On Thu, Sep 06, 2012 at 10:38:41PM -0400, Huang Shijie wrote: >> We call the get_device() in the mxs_auart_probe(). >> For the balance of the reference count, we should put the >> device in the mxs_auart_remove(). >> >> Signed-off-by: Huang Shijie<shijie8@gmail.com> >> --- >> drivers/tty/serial/mxs-auart.c | 1 + >> 1 files changed, 1 insertions(+), 0 deletions(-) >> >> diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c >> index ea5f888..6898413 100644 >> --- a/drivers/tty/serial/mxs-auart.c >> +++ b/drivers/tty/serial/mxs-auart.c >> @@ -796,6 +796,7 @@ static int __devexit mxs_auart_remove(struct platform_device *pdev) >> >> auart_port[pdev->id] = NULL; >> >> + put_device(s->dev); >> clk_put(s->clk); >> free_irq(s->irq, s); >> kfree(s); > So the error path of probe needs function fixing too, right? > OK. Send out the new version right now. Huang Shijie ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH 1/2] serial: mxs-auart: fix the wrong setting order 2012-09-07 2:38 ` Huang Shijie @ 2012-09-07 2:38 ` Shawn Guo -1 siblings, 0 replies; 26+ messages in thread From: Shawn Guo @ 2012-09-07 2:38 UTC (permalink / raw) To: Huang Shijie; +Cc: gregkh, alan, linux-serial, linux-kernel, linux-arm-kernel On Thu, Sep 06, 2012 at 10:38:40PM -0400, Huang Shijie wrote: > After set the AUART_CTRL0_CLKGATE, the UART will gate all the clocks off. > So the following line will not take effect. > ................................................................ > writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, > u->membase + AUART_INTR_CLR); > ................................................................ > > To fix this issue, the patch moves this gate-off line to > the end of setting registers. > > Signed-off-by: Huang Shijie <shijie8@gmail.com> Acked-by: Shawn Guo <shawn.guo@linaro.org> Are you experiencing any user visible problem with this bug? Regards, Shawn > --- > drivers/tty/serial/mxs-auart.c | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c > index dafeef2..ea5f888 100644 > --- a/drivers/tty/serial/mxs-auart.c > +++ b/drivers/tty/serial/mxs-auart.c > @@ -457,11 +457,11 @@ static void mxs_auart_shutdown(struct uart_port *u) > > writel(AUART_CTRL2_UARTEN, u->membase + AUART_CTRL2_CLR); > > - writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); > - > writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, > u->membase + AUART_INTR_CLR); > > + writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); > + > clk_disable_unprepare(s->clk); > } > > -- > 1.7.4.4 > ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 1/2] serial: mxs-auart: fix the wrong setting order @ 2012-09-07 2:38 ` Shawn Guo 0 siblings, 0 replies; 26+ messages in thread From: Shawn Guo @ 2012-09-07 2:38 UTC (permalink / raw) To: linux-arm-kernel On Thu, Sep 06, 2012 at 10:38:40PM -0400, Huang Shijie wrote: > After set the AUART_CTRL0_CLKGATE, the UART will gate all the clocks off. > So the following line will not take effect. > ................................................................ > writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, > u->membase + AUART_INTR_CLR); > ................................................................ > > To fix this issue, the patch moves this gate-off line to > the end of setting registers. > > Signed-off-by: Huang Shijie <shijie8@gmail.com> Acked-by: Shawn Guo <shawn.guo@linaro.org> Are you experiencing any user visible problem with this bug? Regards, Shawn > --- > drivers/tty/serial/mxs-auart.c | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c > index dafeef2..ea5f888 100644 > --- a/drivers/tty/serial/mxs-auart.c > +++ b/drivers/tty/serial/mxs-auart.c > @@ -457,11 +457,11 @@ static void mxs_auart_shutdown(struct uart_port *u) > > writel(AUART_CTRL2_UARTEN, u->membase + AUART_CTRL2_CLR); > > - writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); > - > writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, > u->membase + AUART_INTR_CLR); > > + writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); > + > clk_disable_unprepare(s->clk); > } > > -- > 1.7.4.4 > ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH 1/2] serial: mxs-auart: fix the wrong setting order 2012-09-07 2:38 ` Shawn Guo (?) @ 2012-09-07 2:43 ` Huang Shijie -1 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:43 UTC (permalink / raw) To: Shawn Guo Cc: Huang Shijie, gregkh, alan, linux-serial, linux-kernel, linux-arm-kernel 于 2012年09月07日 10:38, Shawn Guo 写道: > On Thu, Sep 06, 2012 at 10:38:40PM -0400, Huang Shijie wrote: >> After set the AUART_CTRL0_CLKGATE, the UART will gate all the clocks off. >> So the following line will not take effect. >> ................................................................ >> writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, >> u->membase + AUART_INTR_CLR); >> ................................................................ >> >> To fix this issue, the patch moves this gate-off line to >> the end of setting registers. >> >> Signed-off-by: Huang Shijie<shijie8@gmail.com> > Acked-by: Shawn Guo<shawn.guo@linaro.org> > > Are you experiencing any user visible problem with this bug? > I do not experience any user problem. I found this bug when i tried to add DMA support for MXS-AUART. Best Regards Huang Shijie > Regards, > Shawn > >> --- >> drivers/tty/serial/mxs-auart.c | 4 ++-- >> 1 files changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c >> index dafeef2..ea5f888 100644 >> --- a/drivers/tty/serial/mxs-auart.c >> +++ b/drivers/tty/serial/mxs-auart.c >> @@ -457,11 +457,11 @@ static void mxs_auart_shutdown(struct uart_port *u) >> >> writel(AUART_CTRL2_UARTEN, u->membase + AUART_CTRL2_CLR); >> >> - writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); >> - >> writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, >> u->membase + AUART_INTR_CLR); >> >> + writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); >> + >> clk_disable_unprepare(s->clk); >> } >> >> -- >> 1.7.4.4 >> > -- > To unsubscribe from this list: send the line "unsubscribe linux-serial" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH 1/2] serial: mxs-auart: fix the wrong setting order @ 2012-09-07 2:43 ` Huang Shijie 0 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:43 UTC (permalink / raw) To: Shawn Guo Cc: Huang Shijie, gregkh, alan, linux-serial, linux-kernel, linux-arm-kernel 于 2012年09月07日 10:38, Shawn Guo 写道: > On Thu, Sep 06, 2012 at 10:38:40PM -0400, Huang Shijie wrote: >> After set the AUART_CTRL0_CLKGATE, the UART will gate all the clocks off. >> So the following line will not take effect. >> ................................................................ >> writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, >> u->membase + AUART_INTR_CLR); >> ................................................................ >> >> To fix this issue, the patch moves this gate-off line to >> the end of setting registers. >> >> Signed-off-by: Huang Shijie<shijie8@gmail.com> > Acked-by: Shawn Guo<shawn.guo@linaro.org> > > Are you experiencing any user visible problem with this bug? > I do not experience any user problem. I found this bug when i tried to add DMA support for MXS-AUART. Best Regards Huang Shijie > Regards, > Shawn > >> --- >> drivers/tty/serial/mxs-auart.c | 4 ++-- >> 1 files changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c >> index dafeef2..ea5f888 100644 >> --- a/drivers/tty/serial/mxs-auart.c >> +++ b/drivers/tty/serial/mxs-auart.c >> @@ -457,11 +457,11 @@ static void mxs_auart_shutdown(struct uart_port *u) >> >> writel(AUART_CTRL2_UARTEN, u->membase + AUART_CTRL2_CLR); >> >> - writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); >> - >> writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, >> u->membase + AUART_INTR_CLR); >> >> + writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); >> + >> clk_disable_unprepare(s->clk); >> } >> >> -- >> 1.7.4.4 >> > -- > To unsubscribe from this list: send the line "unsubscribe linux-serial" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 1/2] serial: mxs-auart: fix the wrong setting order @ 2012-09-07 2:43 ` Huang Shijie 0 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-07 2:43 UTC (permalink / raw) To: linux-arm-kernel ? 2012?09?07? 10:38, Shawn Guo ??: > On Thu, Sep 06, 2012 at 10:38:40PM -0400, Huang Shijie wrote: >> After set the AUART_CTRL0_CLKGATE, the UART will gate all the clocks off. >> So the following line will not take effect. >> ................................................................ >> writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, >> u->membase + AUART_INTR_CLR); >> ................................................................ >> >> To fix this issue, the patch moves this gate-off line to >> the end of setting registers. >> >> Signed-off-by: Huang Shijie<shijie8@gmail.com> > Acked-by: Shawn Guo<shawn.guo@linaro.org> > > Are you experiencing any user visible problem with this bug? > I do not experience any user problem. I found this bug when i tried to add DMA support for MXS-AUART. Best Regards Huang Shijie > Regards, > Shawn > >> --- >> drivers/tty/serial/mxs-auart.c | 4 ++-- >> 1 files changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/tty/serial/mxs-auart.c b/drivers/tty/serial/mxs-auart.c >> index dafeef2..ea5f888 100644 >> --- a/drivers/tty/serial/mxs-auart.c >> +++ b/drivers/tty/serial/mxs-auart.c >> @@ -457,11 +457,11 @@ static void mxs_auart_shutdown(struct uart_port *u) >> >> writel(AUART_CTRL2_UARTEN, u->membase + AUART_CTRL2_CLR); >> >> - writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); >> - >> writel(AUART_INTR_RXIEN | AUART_INTR_RTIEN | AUART_INTR_CTSMIEN, >> u->membase + AUART_INTR_CLR); >> >> + writel(AUART_CTRL0_CLKGATE, u->membase + AUART_CTRL0_SET); >> + >> clk_disable_unprepare(s->clk); >> } >> >> -- >> 1.7.4.4 >> > -- > To unsubscribe from this list: send the line "unsubscribe linux-serial" in > the body of a message to majordomo at vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH 1/2] serial: mxs-auart: fix the wrong setting order 2012-09-07 2:43 ` Huang Shijie @ 2012-09-13 5:28 ` Lauri Hintsala -1 siblings, 0 replies; 26+ messages in thread From: Lauri Hintsala @ 2012-09-13 5:28 UTC (permalink / raw) To: Huang Shijie; +Cc: Huang Shijie, linux-arm-kernel, linux-serial Hi Huang, On 09/07/2012 05:43 AM, Huang Shijie wrote: > I found this bug when i tried to add DMA support for MXS-AUART. What is the status of DMA support? We could help you testing your patches. Best regards, Lauri Hintsala ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 1/2] serial: mxs-auart: fix the wrong setting order @ 2012-09-13 5:28 ` Lauri Hintsala 0 siblings, 0 replies; 26+ messages in thread From: Lauri Hintsala @ 2012-09-13 5:28 UTC (permalink / raw) To: linux-arm-kernel Hi Huang, On 09/07/2012 05:43 AM, Huang Shijie wrote: > I found this bug when i tried to add DMA support for MXS-AUART. What is the status of DMA support? We could help you testing your patches. Best regards, Lauri Hintsala ^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: [PATCH 1/2] serial: mxs-auart: fix the wrong setting order 2012-09-13 5:28 ` Lauri Hintsala @ 2012-09-13 5:45 ` Huang Shijie -1 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-13 5:45 UTC (permalink / raw) To: Lauri Hintsala; +Cc: Huang Shijie, linux-serial, linux-arm-kernel 于 2012年09月13日 13:28, Lauri Hintsala 写道: > Hi Huang, > > On 09/07/2012 05:43 AM, Huang Shijie wrote: >> I found this bug when i tried to add DMA support for MXS-AUART. > > What is the status of DMA support? We could help you testing your > patches. thanks. I maybe send out the new patch set in next week. I resume this work recently. BR Huang Shijie > > Best regards, > Lauri Hintsala > -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 26+ messages in thread
* [PATCH 1/2] serial: mxs-auart: fix the wrong setting order @ 2012-09-13 5:45 ` Huang Shijie 0 siblings, 0 replies; 26+ messages in thread From: Huang Shijie @ 2012-09-13 5:45 UTC (permalink / raw) To: linux-arm-kernel ? 2012?09?13? 13:28, Lauri Hintsala ??: > Hi Huang, > > On 09/07/2012 05:43 AM, Huang Shijie wrote: >> I found this bug when i tried to add DMA support for MXS-AUART. > > What is the status of DMA support? We could help you testing your > patches. thanks. I maybe send out the new patch set in next week. I resume this work recently. BR Huang Shijie > > Best regards, > Lauri Hintsala > ^ permalink raw reply [flat|nested] 26+ messages in thread
end of thread, other threads:[~2012-09-13 5:45 UTC | newest] Thread overview: 26+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-09-07 2:38 [PATCH 1/2] serial: mxs-auart: fix the wrong setting order Huang Shijie 2012-09-07 2:38 ` Huang Shijie 2012-09-07 2:38 ` [PATCH 2/2] serial: mxs-auart: put the device in mxs_auart_probe() Huang Shijie 2012-09-07 2:38 ` Huang Shijie 2012-09-07 2:43 ` Shawn Guo 2012-09-07 2:43 ` Shawn Guo 2012-09-07 2:33 ` [PATCH] serial: mxs-auart: put the device when exit or error Huang Shijie 2012-09-07 2:33 ` Huang Shijie 2012-09-07 2:33 ` Huang Shijie 2012-09-07 3:14 ` Shawn Guo 2012-09-07 3:14 ` Shawn Guo 2012-09-10 23:00 ` Greg KH 2012-09-10 23:00 ` Greg KH 2012-09-11 7:30 ` [PATCH] serial: mxs-auart: put the device in the error path Huang Shijie 2012-09-07 2:48 ` [PATCH 2/2] serial: mxs-auart: put the device in mxs_auart_probe() Huang Shijie 2012-09-07 2:48 ` Huang Shijie 2012-09-07 2:48 ` Huang Shijie 2012-09-07 2:38 ` [PATCH 1/2] serial: mxs-auart: fix the wrong setting order Shawn Guo 2012-09-07 2:38 ` Shawn Guo 2012-09-07 2:43 ` Huang Shijie 2012-09-07 2:43 ` Huang Shijie 2012-09-07 2:43 ` Huang Shijie 2012-09-13 5:28 ` Lauri Hintsala 2012-09-13 5:28 ` Lauri Hintsala 2012-09-13 5:45 ` Huang Shijie 2012-09-13 5:45 ` Huang Shijie
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.