This set of two patches adds the ablity for ath6kl_sdio to control the CHIP_PWD_L pin on startup and for suspend/wakeup. This is importaint because on some platforms, this is the only way to achieve minimum power consumption. The CHIP_PWD_L pin is used to hold the ath chip in reset and this is the proper way to achieve its lowest power state (per QCA's datasheets). This GPIO is controled by the kernel standard GPIOLIB and as such depends on CONFIG_GPIOLIB. If this isn't enabled, then the various usages will generally compile out. Even if enabled, by default the GPIO is set to an invalid number, and each use will check: if not a valid GPIO, then behavior will be unchanged. This adds a new module parameter to allow the user to set the GPIO to use. To utilize: modprobe ath6kl_sdio reset_pwd_gpio=28 Where "28" should be replaced by the GPIO id of the pin connected to the CHIP_PWD_L pin on the wifi chip. v2: Changes due to review comments * Fix __init and __exit on gpio init/cleanup functions * Remove unnecessary #ifdef defines on GPIO as gpio.h already takes care of it * Utilize already available ARCH_NR_GPIOS * Remove msleep on exit as the problem it resolves is taken care of a different patch. This applies against kvalo/ath.git master branch Steve deRosier (2): ath6kl_sdio: Add reset gpio module parameter for CHIP_PWD_L pin ath6kl_sdio: Add power gpio reset feature into sdio driver for suspend drivers/net/wireless/ath/ath6kl/sdio.c | 113 ++++++++++++++++++++++++++++++++- 1 file changed, 110 insertions(+), 3 deletions(-) -- 1.9.1 _______________________________________________ ath6kl mailing list ath6kl@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/ath6kl