Hi, * Andreas Kemnade <andreas@xxxxxxxxxxxx> [180926 21:16]: > With the dirty letux patch (enabling SDIO_IRQ and adding a pair of > pm_runtime_get_sync()/put() in omap_hsmmc_enable_sdio_irq()), > the values are 30mA and > 1000KByte/s. > The wifi chip (with libertas driver) just behaves better with low > latency sdio irq. Hmm so what is this sdio patch? We've had omap_hsmmc working for years with sdio dat1 interrupt and waking to interrupts from off idle as long as the wakeirq is configured with interrupts-extended in the dts file. For omap3, there should not be any remuxing to gpio needed, only am335x needs that. Maybe I just don't follow you here :) > On Fri, 7 Sep 2018 10:08:50 -0700 > Tony Lindgren <tony@xxxxxxxxxxx> wrote: > > > * Andreas Kemnade <andreas@xxxxxxxxxxxx> [180907 16:52]: > > > sdio irq + wakeirq via remapped dat1 as gpio + 4 bit -(=reverted) > > > generic_wakeirq_patch = does not work Sounds like you're unnecessarily remapping dat1 to gpio for wake. With omap3 just configure the dat1 padconf irq as the "wakeup". Care to try something like this in the in omap3-gta04.dtsi: &mmc2 { interrupts-extended = <&intc 86 &omap3_pmx_core 0x12e>; interrupt-names = "irq", "wakeup"; vmmc-supply = <&vaux4>; bus-width = <4>; ti,non-removable; cap-power-off-card; mmc-pwrseq = <&wifi_pwrseq>; }; Untested.. And I just hastily looked up that the the sdmmc2_dat1 is at 0x4800215C + 2 making the padconf interrupt then 0x4800215C + 2 - 0x48002030 = 0x12e. But I know a similar setup works just fine with omap3 and mwifiex_sdio and off idle. Please leave out all remuxing initially, then if the sdio needs some pins with pull up/down configured for idle you can add a pinctrl idle or sleep mode with PULL | MUX_MODE7. Regards, Tony