diff mbox

clk: ti: fix dual-registration of uart4_ick

Message ID 1443019714-12926-1-git-send-email-ben.dooks@codethink.co.uk (mailing list archive)
State New, archived
Headers show

Commit Message

Ben Dooks Sept. 23, 2015, 2:48 p.m. UTC
On the OMAP AM3517 platform the uart4_ick gets registered
twice, causing any power managment to /dev/ttyO3 to fail
when trying to wake the device up.

This solves the following oops:

[] Unhandled fault: external abort on non-linefetch (0x1028) at 0xfa09e008
[] PC is at serial_omap_pm+0x48/0x15c
[] LR is at _raw_spin_unlock_irqrestore+0x30/0x5c

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
---
 drivers/clk/ti/clk-3xxx.c | 1 -
 1 file changed, 1 deletion(-)

Comments

Greg Kroah-Hartman Sept. 23, 2015, 3:15 p.m. UTC | #1
On Wed, Sep 23, 2015 at 03:48:34PM +0100, Ben Dooks wrote:
> On the OMAP AM3517 platform the uart4_ick gets registered
> twice, causing any power managment to /dev/ttyO3 to fail
> when trying to wake the device up.
> 
> This solves the following oops:
> 
> [] Unhandled fault: external abort on non-linefetch (0x1028) at 0xfa09e008
> [] PC is at serial_omap_pm+0x48/0x15c
> [] LR is at _raw_spin_unlock_irqrestore+0x30/0x5c
> 
> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> ---
>  drivers/clk/ti/clk-3xxx.c | 1 -
>  1 file changed, 1 deletion(-)

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read Documentation/stable_kernel_rules.txt
for how to do this properly.

</formletter>
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tony Lindgren Sept. 23, 2015, 5:30 p.m. UTC | #2
* Ben Dooks <ben.dooks@codethink.co.uk> [150923 07:53]:
> On the OMAP AM3517 platform the uart4_ick gets registered
> twice, causing any power managment to /dev/ttyO3 to fail
> when trying to wake the device up.
> 
> This solves the following oops:
> 
> [] Unhandled fault: external abort on non-linefetch (0x1028) at 0xfa09e008
> [] PC is at serial_omap_pm+0x48/0x15c
> [] LR is at _raw_spin_unlock_irqrestore+0x30/0x5c

No uart4 on 34xx/35xx, that got introduced with 36xx so:

Acked-by: Tony Lindgren <tony@atomide.com>

> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> ---
>  drivers/clk/ti/clk-3xxx.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/drivers/clk/ti/clk-3xxx.c b/drivers/clk/ti/clk-3xxx.c
> index 5e12f32..2e7ef1f 100644
> --- a/drivers/clk/ti/clk-3xxx.c
> +++ b/drivers/clk/ti/clk-3xxx.c
> @@ -374,7 +374,6 @@ static struct ti_dt_clk omap3xxx_clks[] = {
>  	DT_CLK(NULL, "gpio2_ick", "gpio2_ick"),
>  	DT_CLK(NULL, "wdt3_ick", "wdt3_ick"),
>  	DT_CLK(NULL, "uart3_ick", "uart3_ick"),
> -	DT_CLK(NULL, "uart4_ick", "uart4_ick"),
>  	DT_CLK(NULL, "gpt9_ick", "gpt9_ick"),
>  	DT_CLK(NULL, "gpt8_ick", "gpt8_ick"),
>  	DT_CLK(NULL, "gpt7_ick", "gpt7_ick"),
> -- 
> 2.5.1
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" 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-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tero Kristo Sept. 25, 2015, 5:42 a.m. UTC | #3
On 09/23/2015 08:30 PM, Tony Lindgren wrote:
> * Ben Dooks <ben.dooks@codethink.co.uk> [150923 07:53]:
>> On the OMAP AM3517 platform the uart4_ick gets registered
>> twice, causing any power managment to /dev/ttyO3 to fail
>> when trying to wake the device up.
>>
>> This solves the following oops:
>>
>> [] Unhandled fault: external abort on non-linefetch (0x1028) at 0xfa09e008
>> [] PC is at serial_omap_pm+0x48/0x15c
>> [] LR is at _raw_spin_unlock_irqrestore+0x30/0x5c
>
> No uart4 on 34xx/35xx, that got introduced with 36xx so:
>
> Acked-by: Tony Lindgren <tony@atomide.com>
>
>> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
>> ---
>>   drivers/clk/ti/clk-3xxx.c | 1 -
>>   1 file changed, 1 deletion(-)
>>
>> diff --git a/drivers/clk/ti/clk-3xxx.c b/drivers/clk/ti/clk-3xxx.c
>> index 5e12f32..2e7ef1f 100644
>> --- a/drivers/clk/ti/clk-3xxx.c
>> +++ b/drivers/clk/ti/clk-3xxx.c
>> @@ -374,7 +374,6 @@ static struct ti_dt_clk omap3xxx_clks[] = {
>>   	DT_CLK(NULL, "gpio2_ick", "gpio2_ick"),
>>   	DT_CLK(NULL, "wdt3_ick", "wdt3_ick"),
>>   	DT_CLK(NULL, "uart3_ick", "uart3_ick"),
>> -	DT_CLK(NULL, "uart4_ick", "uart4_ick"),
>>   	DT_CLK(NULL, "gpt9_ick", "gpt9_ick"),
>>   	DT_CLK(NULL, "gpt8_ick", "gpt8_ick"),
>>   	DT_CLK(NULL, "gpt7_ick", "gpt7_ick"),

NAK.

This patch is actually only partially correct, it removes the uart4_ick 
alias for omap36xx also. It should be added back to the omap36xx clks 
array. Care to post a v2?

-Tero

>> --
>> 2.5.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-omap" 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-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Ben Dooks Sept. 29, 2015, 1:10 p.m. UTC | #4
On 25/09/15 06:42, Tero Kristo wrote:
> On 09/23/2015 08:30 PM, Tony Lindgren wrote:
>> * Ben Dooks <ben.dooks@codethink.co.uk> [150923 07:53]:
>>> On the OMAP AM3517 platform the uart4_ick gets registered
>>> twice, causing any power managment to /dev/ttyO3 to fail
>>> when trying to wake the device up.
>>>
>>> This solves the following oops:
>>>
>>> [] Unhandled fault: external abort on non-linefetch (0x1028) at
>>> 0xfa09e008
>>> [] PC is at serial_omap_pm+0x48/0x15c
>>> [] LR is at _raw_spin_unlock_irqrestore+0x30/0x5c
>>
>> No uart4 on 34xx/35xx, that got introduced with 36xx so:
>>
>> Acked-by: Tony Lindgren <tony@atomide.com>
>>
>>> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
>>> ---
>>>   drivers/clk/ti/clk-3xxx.c | 1 -
>>>   1 file changed, 1 deletion(-)
>>>
>>> diff --git a/drivers/clk/ti/clk-3xxx.c b/drivers/clk/ti/clk-3xxx.c
>>> index 5e12f32..2e7ef1f 100644
>>> --- a/drivers/clk/ti/clk-3xxx.c
>>> +++ b/drivers/clk/ti/clk-3xxx.c
>>> @@ -374,7 +374,6 @@ static struct ti_dt_clk omap3xxx_clks[] = {
>>>       DT_CLK(NULL, "gpio2_ick", "gpio2_ick"),
>>>       DT_CLK(NULL, "wdt3_ick", "wdt3_ick"),
>>>       DT_CLK(NULL, "uart3_ick", "uart3_ick"),
>>> -    DT_CLK(NULL, "uart4_ick", "uart4_ick"),
>>>       DT_CLK(NULL, "gpt9_ick", "gpt9_ick"),
>>>       DT_CLK(NULL, "gpt8_ick", "gpt8_ick"),
>>>       DT_CLK(NULL, "gpt7_ick", "gpt7_ick"),
> 
> NAK.
> 
> This patch is actually only partially correct, it removes the uart4_ick
> alias for omap36xx also. It should be added back to the omap36xx clks
> array. Care to post a v2?

Thankyou for the feedback. I'll update, but do not have a device to test.
Tony Lindgren Oct. 5, 2015, 10:17 a.m. UTC | #5
* Ben Dooks <ben.dooks@codethink.co.uk> [150929 06:14]:
> On 25/09/15 06:42, Tero Kristo wrote:
> > On 09/23/2015 08:30 PM, Tony Lindgren wrote:
> >> * Ben Dooks <ben.dooks@codethink.co.uk> [150923 07:53]:
> >>> On the OMAP AM3517 platform the uart4_ick gets registered
> >>> twice, causing any power managment to /dev/ttyO3 to fail
> >>> when trying to wake the device up.
> >>>
> >>> This solves the following oops:
> >>>
> >>> [] Unhandled fault: external abort on non-linefetch (0x1028) at
> >>> 0xfa09e008
> >>> [] PC is at serial_omap_pm+0x48/0x15c
> >>> [] LR is at _raw_spin_unlock_irqrestore+0x30/0x5c
> >>
> >> No uart4 on 34xx/35xx, that got introduced with 36xx so:
> >>
> >> Acked-by: Tony Lindgren <tony@atomide.com>
> >>
> >>> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> >>> ---
> >>>   drivers/clk/ti/clk-3xxx.c | 1 -
> >>>   1 file changed, 1 deletion(-)
> >>>
> >>> diff --git a/drivers/clk/ti/clk-3xxx.c b/drivers/clk/ti/clk-3xxx.c
> >>> index 5e12f32..2e7ef1f 100644
> >>> --- a/drivers/clk/ti/clk-3xxx.c
> >>> +++ b/drivers/clk/ti/clk-3xxx.c
> >>> @@ -374,7 +374,6 @@ static struct ti_dt_clk omap3xxx_clks[] = {
> >>>       DT_CLK(NULL, "gpio2_ick", "gpio2_ick"),
> >>>       DT_CLK(NULL, "wdt3_ick", "wdt3_ick"),
> >>>       DT_CLK(NULL, "uart3_ick", "uart3_ick"),
> >>> -    DT_CLK(NULL, "uart4_ick", "uart4_ick"),
> >>>       DT_CLK(NULL, "gpt9_ick", "gpt9_ick"),
> >>>       DT_CLK(NULL, "gpt8_ick", "gpt8_ick"),
> >>>       DT_CLK(NULL, "gpt7_ick", "gpt7_ick"),
> > 
> > NAK.
> > 
> > This patch is actually only partially correct, it removes the uart4_ick
> > alias for omap36xx also. It should be added back to the omap36xx clks
> > array. Care to post a v2?
> 
> Thankyou for the feedback. I'll update, but do not have a device to test.

Hmm but isn't that entry already there for 36xx? So this just removes
a duplicate for 36xx.. Tero, can you please check again, maybe I'm
confused.

Regars,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tero Kristo Oct. 5, 2015, 12:35 p.m. UTC | #6
On 10/05/2015 01:17 PM, Tony Lindgren wrote:
> * Ben Dooks <ben.dooks@codethink.co.uk> [150929 06:14]:
>> On 25/09/15 06:42, Tero Kristo wrote:
>>> On 09/23/2015 08:30 PM, Tony Lindgren wrote:
>>>> * Ben Dooks <ben.dooks@codethink.co.uk> [150923 07:53]:
>>>>> On the OMAP AM3517 platform the uart4_ick gets registered
>>>>> twice, causing any power managment to /dev/ttyO3 to fail
>>>>> when trying to wake the device up.
>>>>>
>>>>> This solves the following oops:
>>>>>
>>>>> [] Unhandled fault: external abort on non-linefetch (0x1028) at
>>>>> 0xfa09e008
>>>>> [] PC is at serial_omap_pm+0x48/0x15c
>>>>> [] LR is at _raw_spin_unlock_irqrestore+0x30/0x5c
>>>>
>>>> No uart4 on 34xx/35xx, that got introduced with 36xx so:
>>>>
>>>> Acked-by: Tony Lindgren <tony@atomide.com>
>>>>
>>>>> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
>>>>> ---
>>>>>    drivers/clk/ti/clk-3xxx.c | 1 -
>>>>>    1 file changed, 1 deletion(-)
>>>>>
>>>>> diff --git a/drivers/clk/ti/clk-3xxx.c b/drivers/clk/ti/clk-3xxx.c
>>>>> index 5e12f32..2e7ef1f 100644
>>>>> --- a/drivers/clk/ti/clk-3xxx.c
>>>>> +++ b/drivers/clk/ti/clk-3xxx.c
>>>>> @@ -374,7 +374,6 @@ static struct ti_dt_clk omap3xxx_clks[] = {
>>>>>        DT_CLK(NULL, "gpio2_ick", "gpio2_ick"),
>>>>>        DT_CLK(NULL, "wdt3_ick", "wdt3_ick"),
>>>>>        DT_CLK(NULL, "uart3_ick", "uart3_ick"),
>>>>> -    DT_CLK(NULL, "uart4_ick", "uart4_ick"),
>>>>>        DT_CLK(NULL, "gpt9_ick", "gpt9_ick"),
>>>>>        DT_CLK(NULL, "gpt8_ick", "gpt8_ick"),
>>>>>        DT_CLK(NULL, "gpt7_ick", "gpt7_ick"),
>>>
>>> NAK.
>>>
>>> This patch is actually only partially correct, it removes the uart4_ick
>>> alias for omap36xx also. It should be added back to the omap36xx clks
>>> array. Care to post a v2?
>>
>> Thankyou for the feedback. I'll update, but do not have a device to test.
>
> Hmm but isn't that entry already there for 36xx? So this just removes
> a duplicate for 36xx.. Tero, can you please check again, maybe I'm
> confused.

uart4_ick wasn't there, we only had uart4_fck listed for omap36xx.

-Tero

>
> Regars,
>
> Tony
>

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tony Lindgren Oct. 5, 2015, 5:12 p.m. UTC | #7
* Tero Kristo <t-kristo@ti.com> [151005 05:39]:
> On 10/05/2015 01:17 PM, Tony Lindgren wrote:
> >* Ben Dooks <ben.dooks@codethink.co.uk> [150929 06:14]:
> >>On 25/09/15 06:42, Tero Kristo wrote:
> >>>On 09/23/2015 08:30 PM, Tony Lindgren wrote:
> >>>>* Ben Dooks <ben.dooks@codethink.co.uk> [150923 07:53]:
> >>>>>On the OMAP AM3517 platform the uart4_ick gets registered
> >>>>>twice, causing any power managment to /dev/ttyO3 to fail
> >>>>>when trying to wake the device up.
> >>>>>
> >>>>>This solves the following oops:
> >>>>>
> >>>>>[] Unhandled fault: external abort on non-linefetch (0x1028) at
> >>>>>0xfa09e008
> >>>>>[] PC is at serial_omap_pm+0x48/0x15c
> >>>>>[] LR is at _raw_spin_unlock_irqrestore+0x30/0x5c
> >>>>
> >>>>No uart4 on 34xx/35xx, that got introduced with 36xx so:
> >>>>
> >>>>Acked-by: Tony Lindgren <tony@atomide.com>
> >>>>
> >>>>>Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> >>>>>---
> >>>>>   drivers/clk/ti/clk-3xxx.c | 1 -
> >>>>>   1 file changed, 1 deletion(-)
> >>>>>
> >>>>>diff --git a/drivers/clk/ti/clk-3xxx.c b/drivers/clk/ti/clk-3xxx.c
> >>>>>index 5e12f32..2e7ef1f 100644
> >>>>>--- a/drivers/clk/ti/clk-3xxx.c
> >>>>>+++ b/drivers/clk/ti/clk-3xxx.c
> >>>>>@@ -374,7 +374,6 @@ static struct ti_dt_clk omap3xxx_clks[] = {
> >>>>>       DT_CLK(NULL, "gpio2_ick", "gpio2_ick"),
> >>>>>       DT_CLK(NULL, "wdt3_ick", "wdt3_ick"),
> >>>>>       DT_CLK(NULL, "uart3_ick", "uart3_ick"),
> >>>>>-    DT_CLK(NULL, "uart4_ick", "uart4_ick"),
> >>>>>       DT_CLK(NULL, "gpt9_ick", "gpt9_ick"),
> >>>>>       DT_CLK(NULL, "gpt8_ick", "gpt8_ick"),
> >>>>>       DT_CLK(NULL, "gpt7_ick", "gpt7_ick"),
> >>>
> >>>NAK.
> >>>
> >>>This patch is actually only partially correct, it removes the uart4_ick
> >>>alias for omap36xx also. It should be added back to the omap36xx clks
> >>>array. Care to post a v2?
> >>
> >>Thankyou for the feedback. I'll update, but do not have a device to test.
> >
> >Hmm but isn't that entry already there for 36xx? So this just removes
> >a duplicate for 36xx.. Tero, can you please check again, maybe I'm
> >confused.
> 
> uart4_ick wasn't there, we only had uart4_fck listed for omap36xx.

OK thanks for checking.

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/clk/ti/clk-3xxx.c b/drivers/clk/ti/clk-3xxx.c
index 5e12f32..2e7ef1f 100644
--- a/drivers/clk/ti/clk-3xxx.c
+++ b/drivers/clk/ti/clk-3xxx.c
@@ -374,7 +374,6 @@  static struct ti_dt_clk omap3xxx_clks[] = {
 	DT_CLK(NULL, "gpio2_ick", "gpio2_ick"),
 	DT_CLK(NULL, "wdt3_ick", "wdt3_ick"),
 	DT_CLK(NULL, "uart3_ick", "uart3_ick"),
-	DT_CLK(NULL, "uart4_ick", "uart4_ick"),
 	DT_CLK(NULL, "gpt9_ick", "gpt9_ick"),
 	DT_CLK(NULL, "gpt8_ick", "gpt8_ick"),
 	DT_CLK(NULL, "gpt7_ick", "gpt7_ick"),