aboutsummaryrefslogtreecommitdiffstats
path: root/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0024-wl18xx-do-not-invert-IRQ-on-WLxxxx-side.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0024-wl18xx-do-not-invert-IRQ-on-WLxxxx-side.patch')
-rw-r--r--meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0024-wl18xx-do-not-invert-IRQ-on-WLxxxx-side.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0024-wl18xx-do-not-invert-IRQ-on-WLxxxx-side.patch b/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0024-wl18xx-do-not-invert-IRQ-on-WLxxxx-side.patch
new file mode 100644
index 0000000..f956c58
--- /dev/null
+++ b/meta-rcar-gen3-adas/recipes-kernel/linux/linux-renesas/0024-wl18xx-do-not-invert-IRQ-on-WLxxxx-side.patch
@@ -0,0 +1,48 @@
+From 60d86113a92ac35421865f9b8db504530962c829 Mon Sep 17 00:00:00 2001
+From: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
+Date: Mon, 22 May 2017 17:22:38 +0300
+Subject: [PATCH] wl18xx: do not invert IRQ on WLxxxx side
+
+
+Signed-off-by: Andrey Gusakov <andrey.gusakov@cogentembedded.com>
+---
+ drivers/net/wireless/ti/wl18xx/main.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/drivers/net/wireless/ti/wl18xx/main.c b/drivers/net/wireless/ti/wl18xx/main.c
+index ae47c79..cdde6e0 100644
+--- a/drivers/net/wireless/ti/wl18xx/main.c
++++ b/drivers/net/wireless/ti/wl18xx/main.c
+@@ -876,7 +876,9 @@ static int wl18xx_pre_upload(struct wl1271 *wl)
+ {
+ u32 tmp;
+ int ret;
++#if 0
+ u16 irq_invert;
++#endif
+
+ BUILD_BUG_ON(sizeof(struct wl18xx_mac_and_phy_params) >
+ WL18XX_PHY_INIT_MEM_SIZE);
+@@ -929,6 +931,11 @@ static int wl18xx_pre_upload(struct wl1271 *wl)
+ if (ret < 0)
+ goto out;
+
++#if 0
++ /* We have level translator with inversion on IRQ line so we
++ * set IRQ_TYPE_EDGE_FALLING in DTS, but we do not need to
++ * invert IRQ logic on WLxxxx side!
++ */
+ ret = irq_get_trigger_type(wl->irq);
+ if ((ret == IRQ_TYPE_LEVEL_LOW) || (ret == IRQ_TYPE_EDGE_FALLING)) {
+ wl1271_info("using inverted interrupt logic: %d", ret);
+@@ -948,6 +955,7 @@ static int wl18xx_pre_upload(struct wl1271 *wl)
+
+ ret = wlcore_set_partition(wl, &wl->ptable[PART_PHY_INIT]);
+ }
++#endif
+
+ out:
+ return ret;
+--
+1.7.10.4
+