Hi Tony, On Friday 21 August 2015 01:11 PM, Tony Lindgren wrote: > * Kishon Vijay Abraham I <kishon@xxxxxx> [150820 05:39]: >> Hi, >> >> On Monday 03 August 2015 05:56 PM, Kishon Vijay Abraham I wrote: >>> Changes from v1: >>> *) return on -EPROBE_DEFER and other fatal errors. (Don't return only >>> if the return value is -ENODEV) >>> *) Remove the beagle x15 dts patch. It can be part of a different >>> series. >>> *) Avoid using regulator_is_enabled for vqmmc since if the regulator >>> is shared and the other users are not using regulator_is_enabled >>> then there can be unbalanced regulator_enable/regulator_disable >>> >>> This patch series does the following >>> *) Uses devm_regulator_get_optional() for vmmc and then removes the >>> CONFIG_REGULATOR check altogether. >>> *) return on -EPROBE_DEFER and any other fatal errors >>> *) enable/disable vmmc_aux regulator based on prior state >>> >>> I've pushed this patch series to >>> git://git.ti.com/linux-phy/linux-phy.git mmc_regulator_cleanup_fixes_v2 >>> >>> Please note the branch also has the pbias fixes [1] & [2]. >>> [1] -> https://lkml.org/lkml/2015/7/27/358 >>> [2] -> https://lkml.org/lkml/2015/7/27/391 >>> >>> This series is in preparation for implementing the voltage switch >>> sequence so that UHS cards can be supported. >>> >>> Did basic read/write test in J6, J6 Eco, Beagle-x15, AM437x EVM, >>> Beaglebone black, OMAP5 uEVM and OMAP4 PANDA. >> >> I have now done read/write test in omap3 beagle-xm with this series! > > Great thanks for doing that. Also gave this series a try here > with my off idle MMC SDIO WLAN card test and things still work > for me. That's not really testing the PBIAS regulator though, > but a good torture test for saving and restoring context. So > FWIW: > > Tested-by: Tony Lindgren <tony@xxxxxxxxxxx> > > If you need a PM torture test for PBIAS regulator, you could try > to do the following on your beagle xm MMC card with > oamp2plus_defconfig: > > 1. Make sure EHCI modules are not loaded and OTG USB cable is > not connected > > 2. Enable UART timeouts and off idle with something like: > > !/bin/bash > > uarts=$(find /sys/class/tty/tty[SO]*/device/power/ -type d) > for uart in $uarts; do > echo 3000 > $uart/autosuspend_delay_ms 2>&1 > done > > modprobe leds-gpio > modprobe ledtrig-default-on > > uarts=$(find /sys/class/tty/tty[SO]*/power/ -type d 2>/dev/null) > for uart in $uarts; do > echo enabled > $uart/wakeup 2>&1 > echo auto > $uart/control 2>&1 > done > > echo 1 > /sys/kernel/debug/pm_debug/enable_off_mode > > 3. Make sure you start seeing core_pwrdm OFF count increasing > with cat /sys/kernel/debug/pm_debug/count > > MMC should keep on working when hitting idle, if not, something > is not saved or restored properly. And SDIO WLAN cards should > wake up the system and respond to ping if the wakeirq is > configured in the dts file for the MMC controller. At least > mwifiex_sdio cards work for this :) Thanks for the detailed explanation. Sure will add those tests. Cheers Kishon -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html