[RFC] ARM: DTS: AM3517-evm: Enabled Extended Interrupts
diff mbox series

Message ID 20181028230908.14306-1-aford173@gmail.com
State New
Headers show
Series
  • [RFC] ARM: DTS: AM3517-evm: Enabled Extended Interrupts
Related show

Commit Message

Adam Ford Oct. 28, 2018, 11:09 p.m. UTC
MMCx_dat1 and serial RX pins can be associated to additional
interrupts.  Enable these on AM3517-evm.

Signed-off-by: Adam Ford <aford173@gmail.com>

Comments

Adam Ford Oct. 28, 2018, 11:15 p.m. UTC | #1
On Sun, Oct 28, 2018 at 6:09 PM Adam Ford <aford173@gmail.com> wrote:
>
> MMCx_dat1 and serial RX pins can be associated to additional
> interrupts.  Enable these on AM3517-evm.
>

The reason, I made this an RFC, is that I think there might be some
IRQ support missing in AM3517, and I am not sure where to look.

During boot, I get multiple instances of the following message:

irq: no irq domain found for pinmux@30 !

They seem to correspond to each of the newly added
'interrupts-extended' entries.

Looking at the technical reference manual for the AM3517, it appears
as if this 'should' be possible.

When  cat /proc/interrupts on a different  omap36/37 board, I can see
the irq entries:

147:          0   pinctrl 338 Edge      4806a000.serial:wakeup
149:          0   pinctrl 282 Edge      4809c000.mmc:wakeup
150:          0   pinctrl 310 Edge      480ad000.mmc:wakeup

However, when I look on the AM3517, no pinctrl entries exist in
/proc/interrupts, so I am guessing something needs to happen to setup
this up.  I am curious to know if there is a missing component
somewhere that needs to enable this.

thanks in advance,

adam

> Signed-off-by: Adam Ford <aford173@gmail.com>
>
> diff --git a/arch/arm/boot/dts/am3517-evm.dts b/arch/arm/boot/dts/am3517-evm.dts
> index c45aef806870..c518c51eb198 100644
> --- a/arch/arm/boot/dts/am3517-evm.dts
> +++ b/arch/arm/boot/dts/am3517-evm.dts
> @@ -221,6 +221,7 @@
>  };
>
>  &mmc1 {
> +       interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>;
>         status = "okay";
>         pinctrl-names = "default";
>         pinctrl-0 = <&mmc1_pins>;
> diff --git a/arch/arm/boot/dts/am3517-som.dtsi b/arch/arm/boot/dts/am3517-som.dtsi
> index b1c988eed87c..ae93dd72020a 100644
> --- a/arch/arm/boot/dts/am3517-som.dtsi
> +++ b/arch/arm/boot/dts/am3517-som.dtsi
> @@ -148,7 +148,7 @@
>  };
>
>  &mmc2 {
> -       interrupts-extended = <&intc 86 /* &omap3_pmx_core 0x12c */>;
> +       interrupts-extended = <&intc 86 &omap3_pmx_core 0x12e>;
>
>         status = "okay";
>         pinctrl-names = "default";
> @@ -172,6 +172,7 @@
>  &uart2 {
>         pinctrl-names = "default";
>         pinctrl-0 = <&uart2_pins>;
> +       interrupts-extended = <&intc 73 &omap3_pmx_core OMAP3_UART2_RX>;
>
>         bluetooth {
>                 compatible = "ti,wl1271-st";
> --
> 2.17.1
>
Adam Ford Oct. 29, 2018, 10:11 p.m. UTC | #2
On Sun, Oct 28, 2018 at 6:15 PM Adam Ford <aford173@gmail.com> wrote:
>
> On Sun, Oct 28, 2018 at 6:09 PM Adam Ford <aford173@gmail.com> wrote:
> >
> > MMCx_dat1 and serial RX pins can be associated to additional
> > interrupts.  Enable these on AM3517-evm.
> >
>
> The reason, I made this an RFC, is that I think there might be some
> IRQ support missing in AM3517, and I am not sure where to look.
>
> During boot, I get multiple instances of the following message:
>
> irq: no irq domain found for pinmux@30 !
>
I should also note, that the am3517 is also returning

pm: Failed to request pm_wkup irq

> They seem to correspond to each of the newly added
> 'interrupts-extended' entries.
>
> Looking at the technical reference manual for the AM3517, it appears
> as if this 'should' be possible.
>
> When  cat /proc/interrupts on a different  omap36/37 board, I can see
> the irq entries:
>
> 147:          0   pinctrl 338 Edge      4806a000.serial:wakeup
> 149:          0   pinctrl 282 Edge      4809c000.mmc:wakeup
> 150:          0   pinctrl 310 Edge      480ad000.mmc:wakeup
>
> However, when I look on the AM3517, no pinctrl entries exist in
> /proc/interrupts, so I am guessing something needs to happen to setup
> this up.  I am curious to know if there is a missing component
> somewhere that needs to enable this.
>
> thanks in advance,
>
> adam
>
> > Signed-off-by: Adam Ford <aford173@gmail.com>
> >
> > diff --git a/arch/arm/boot/dts/am3517-evm.dts b/arch/arm/boot/dts/am3517-evm.dts
> > index c45aef806870..c518c51eb198 100644
> > --- a/arch/arm/boot/dts/am3517-evm.dts
> > +++ b/arch/arm/boot/dts/am3517-evm.dts
> > @@ -221,6 +221,7 @@
> >  };
> >
> >  &mmc1 {
> > +       interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>;
> >         status = "okay";
> >         pinctrl-names = "default";
> >         pinctrl-0 = <&mmc1_pins>;
> > diff --git a/arch/arm/boot/dts/am3517-som.dtsi b/arch/arm/boot/dts/am3517-som.dtsi
> > index b1c988eed87c..ae93dd72020a 100644
> > --- a/arch/arm/boot/dts/am3517-som.dtsi
> > +++ b/arch/arm/boot/dts/am3517-som.dtsi
> > @@ -148,7 +148,7 @@
> >  };
> >
> >  &mmc2 {
> > -       interrupts-extended = <&intc 86 /* &omap3_pmx_core 0x12c */>;
> > +       interrupts-extended = <&intc 86 &omap3_pmx_core 0x12e>;
> >
> >         status = "okay";
> >         pinctrl-names = "default";
> > @@ -172,6 +172,7 @@
> >  &uart2 {
> >         pinctrl-names = "default";
> >         pinctrl-0 = <&uart2_pins>;
> > +       interrupts-extended = <&intc 73 &omap3_pmx_core OMAP3_UART2_RX>;
> >
> >         bluetooth {
> >                 compatible = "ti,wl1271-st";
> > --
> > 2.17.1
> >
Grygorii Strashko Oct. 31, 2018, 11:32 p.m. UTC | #3
On 10/29/18 5:11 PM, Adam Ford wrote:
> On Sun, Oct 28, 2018 at 6:15 PM Adam Ford <aford173@gmail.com> wrote:
>>
>> On Sun, Oct 28, 2018 at 6:09 PM Adam Ford <aford173@gmail.com> wrote:
>>>
>>> MMCx_dat1 and serial RX pins can be associated to additional
>>> interrupts.  Enable these on AM3517-evm.
>>>
>>
>> The reason, I made this an RFC, is that I think there might be some
>> IRQ support missing in AM3517, and I am not sure where to look.
>>
>> During boot, I get multiple instances of the following message:
>>
>> irq: no irq domain found for pinmux@30 !
>>
> I should also note, that the am3517 is also returning
> 
> pm: Failed to request pm_wkup irq

most probably padconf IRQs are not initialized properly.
you could try to check pcs_probe() and PCS_FEAT_IRQ
Tony Lindgren Nov. 6, 2018, 3:44 p.m. UTC | #4
* Grygorii Strashko <grygorii.strashko@ti.com> [181031 23:32]:
> 
> 
> On 10/29/18 5:11 PM, Adam Ford wrote:
> > On Sun, Oct 28, 2018 at 6:15 PM Adam Ford <aford173@gmail.com> wrote:
> > > 
> > > On Sun, Oct 28, 2018 at 6:09 PM Adam Ford <aford173@gmail.com> wrote:
> > > > 
> > > > MMCx_dat1 and serial RX pins can be associated to additional
> > > > interrupts.  Enable these on AM3517-evm.
> > > > 
> > > 
> > > The reason, I made this an RFC, is that I think there might be some
> > > IRQ support missing in AM3517, and I am not sure where to look.
> > > 
> > > During boot, I get multiple instances of the following message:
> > > 
> > > irq: no irq domain found for pinmux@30 !
> > > 
> > I should also note, that the am3517 is also returning
> > 
> > pm: Failed to request pm_wkup irq
> 
> most probably padconf IRQs are not initialized properly.
> you could try to check pcs_probe() and PCS_FEAT_IRQ

Those get passed to the driver in pdata-quirks.c BTW if
something is missing there.

Regards,

Tony
Adam Ford Nov. 6, 2018, 11:39 p.m. UTC | #5
On Tue, Nov 6, 2018 at 9:44 AM Tony Lindgren <tony@atomide.com> wrote:
>
> * Grygorii Strashko <grygorii.strashko@ti.com> [181031 23:32]:
> >
> >
> > On 10/29/18 5:11 PM, Adam Ford wrote:
> > > On Sun, Oct 28, 2018 at 6:15 PM Adam Ford <aford173@gmail.com> wrote:
> > > >
> > > > On Sun, Oct 28, 2018 at 6:09 PM Adam Ford <aford173@gmail.com> wrote:
> > > > >
> > > > > MMCx_dat1 and serial RX pins can be associated to additional
> > > > > interrupts.  Enable these on AM3517-evm.
> > > > >
> > > >
> > > > The reason, I made this an RFC, is that I think there might be some
> > > > IRQ support missing in AM3517, and I am not sure where to look.
> > > >
> > > > During boot, I get multiple instances of the following message:
> > > >
> > > > irq: no irq domain found for pinmux@30 !
> > > >
> > > I should also note, that the am3517 is also returning
> > >
> > > pm: Failed to request pm_wkup irq
> >
> > most probably padconf IRQs are not initialized properly.
> > you could try to check pcs_probe() and PCS_FEAT_IRQ
>
> Those get passed to the driver in pdata-quirks.c BTW if
> something is missing there.

From what I can tell, omap_pcs_legacy_init sets the pcs_pdata.  It
appears to get called from omap_prcm_register_chain_handler, but I am
not seeing a clear different between any of the omap2plus boards.

I double checked the addresses of pinmux@30 to see if it's any
different between the DM37 and the AM35, and the addresses seem to
match, so I don't think it's a device tree issue.

adam
>
> Regards,
>
> Tony

Patch
diff mbox series

diff --git a/arch/arm/boot/dts/am3517-evm.dts b/arch/arm/boot/dts/am3517-evm.dts
index c45aef806870..c518c51eb198 100644
--- a/arch/arm/boot/dts/am3517-evm.dts
+++ b/arch/arm/boot/dts/am3517-evm.dts
@@ -221,6 +221,7 @@ 
 };
 
 &mmc1 {
+	interrupts-extended = <&intc 83 &omap3_pmx_core 0x11a>;
 	status = "okay";
 	pinctrl-names = "default";
 	pinctrl-0 = <&mmc1_pins>;
diff --git a/arch/arm/boot/dts/am3517-som.dtsi b/arch/arm/boot/dts/am3517-som.dtsi
index b1c988eed87c..ae93dd72020a 100644
--- a/arch/arm/boot/dts/am3517-som.dtsi
+++ b/arch/arm/boot/dts/am3517-som.dtsi
@@ -148,7 +148,7 @@ 
 };
 
 &mmc2 {
-	interrupts-extended = <&intc 86 /* &omap3_pmx_core 0x12c */>;
+	interrupts-extended = <&intc 86 &omap3_pmx_core 0x12e>;
 
 	status = "okay";
 	pinctrl-names = "default";
@@ -172,6 +172,7 @@ 
 &uart2 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&uart2_pins>;
+	interrupts-extended = <&intc 73 &omap3_pmx_core OMAP3_UART2_RX>;
 
 	bluetooth {
 		compatible = "ti,wl1271-st";