Patch "wifi: wilc1000: use correct sequence of RESET for chip Power-UP/Down" has been added to the 5.19-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    wifi: wilc1000: use correct sequence of RESET for chip Power-UP/Down

to the 5.19-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     wifi-wilc1000-use-correct-sequence-of-reset-for-chip.patch
and it can be found in the queue-5.19 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 283ab338cdd67b1df552f300a8afe996f8ea4298
Author: Ajay Singh <ajay.kathat@xxxxxxxxxxxxx>
Date:   Tue May 24 12:06:19 2022 +0000

    wifi: wilc1000: use correct sequence of RESET for chip Power-UP/Down
    
    [ Upstream commit fcf690b0b47494df51d214db5c5a714a400b0257 ]
    
    For power-up sequence, WILC expects RESET set to high 5ms after making
    chip_en(enable) so corrected chip power-up sequence by making RESET high.
    For Power-Down sequence, the correct sequence make RESET and CHIP_EN low
    without any extra delay.
    
    Fixes: ec031ac4792c ("wilc1000: Add reset/enable GPIO support to SPI driver")
    Signed-off-by: Ajay Singh <ajay.kathat@xxxxxxxxxxxxx>
    Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxx>
    Link: https://lore.kernel.org/r/20220524120606.9675-1-ajay.kathat@xxxxxxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/wireless/microchip/wilc1000/spi.c b/drivers/net/wireless/microchip/wilc1000/spi.c
index 18420e954402..2ae8dd3411ac 100644
--- a/drivers/net/wireless/microchip/wilc1000/spi.c
+++ b/drivers/net/wireless/microchip/wilc1000/spi.c
@@ -191,11 +191,11 @@ static void wilc_wlan_power(struct wilc *wilc, bool on)
 		/* assert ENABLE: */
 		gpiod_set_value(gpios->enable, 1);
 		mdelay(5);
-		/* deassert RESET: */
-		gpiod_set_value(gpios->reset, 0);
-	} else {
 		/* assert RESET: */
 		gpiod_set_value(gpios->reset, 1);
+	} else {
+		/* deassert RESET: */
+		gpiod_set_value(gpios->reset, 0);
 		/* deassert ENABLE: */
 		gpiod_set_value(gpios->enable, 0);
 	}



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux