On Mon, 11 Mar 2019 at 16:22, Adrian Bunk <bunk@xxxxxxxxxx> wrote: > > Hi, > > I am facing two issues with pwrseq_sd8787: > > 1. Usage with modular mwifiex but built-in MMC > I have built-in MMC (also for the root filesystem) but modular > pwrseq_sd8787. Are the Kconfig dependencies incorrect and I should > be able to set PWRSEQ_SD8787=y, or how is this supposed to work? The Kconfig currently depends on MWIFIEX, so if you have that set to M you can only set PWRSEQ_SD8787 to M as well. This should work! When the corresponding mmc host driver probes, the DT parsing via mmc_of_parse() should finds the pwrseq node, but then we fail to lookup the corresponding mmc pwrseq driver, simply because it has not been registred yet (built as module). If everything works as expected, this should lead to that -EPROBE_DEFER becomes propagated, such that the driver core re-try to prob later. Are you saying this doesn't work, no? > > 2. GPIO_ACTIVE_LOW reset-gpios > With reset-gpios active low it is initially low, > mmc_pwrseq_sd8787_probe() sets that to high for a very short > amount of time before mmc_pwrseq_sd8787_pre_power_on() sets > it back to low. > What is the proper way to get rid of this sub-ms low-high-low? Is that not according to the spec? In such case, I suggest you post a patch changing the code so confirms to the spec. However, we need to be careful, because this pwrseq driver is also used for some LIBERTAS_SDIO. Hope this helps! Kind regards Uffe