[Letux-kernel] omap_hsmmc + gta04 + sdio irq + runtime_suspend + 4 bit = trouble
Tony Lindgren
tony at atomide.com
Tue Sep 4 17:47:50 CEST 2018
* Andreas Kemnade <andreas at kemnade.info> [180902 20:46]:
> mmc2_pins: pinmux_mmc2_pins {
> pinctrl-single,pins = <
> /* sdmmc2_clk.sdmmc2_clk */
> OMAP3_CORE1_IOPAD(0x2158, PIN_INPUT_PULLUP | MUX_MODE0)
>
> /* sdmmc2_cmd.sdmmc2_cmd */
> OMAP3_CORE1_IOPAD(0x215a, PIN_INPUT_PULLUP | MUX_MODE0)
>
> /* sdmmc2_dat0.sdmmc2_dat0 */
> OMAP3_CORE1_IOPAD(0x215c, PIN_INPUT_PULLUP | MUX_MODE0)
>
> /* sdmmc2_dat0.sdmmc2_dat1 */
> OMAP3_CORE1_IOPAD(0x215e, PIN_INPUT_PULLUP | MUX_MODE0 | WAKEUP_EN)
Having WAKEUP_EN here is wrong nowadays, this bit is managed by
Linux generic wakeirqs.
> &mmc2 {
> pinctrl-names = "default";
> pinctrl-0 = <&mmc2_pins>;
>
> interrupts-extended = <&intc 86>, <&omap3_pmx_core 0x12e>;
And then the second interrupt here must match padconf register like
you have 0x215e - 0x2030 = 0x12e which seems correct. And you should
start seeing interrupts with grep wake /proc/interrupts.
> I can make it work by using bus-width = <1>;
> But that is not what I want. The entry in /proc/interrupts behaves
> sane.
Please check that your board is using the pads you configured.
Some signals may be using alternate pads.
Regards,
Tony
More information about the Letux-kernel
mailing list