Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again
@ 2019-11-07 10:30 H. Nikolaus Schaller
  2019-11-07 10:30 ` [PATCH v3 01/12] Documentation: dt: wireless: update wl1251 for sdio H. Nikolaus Schaller
                   ` (12 more replies)
  0 siblings, 13 replies; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, netdev, linux-omap, linux-arm-kernel


* add a revisit note for special wl1251 handling code because it should
  be solved more generic in mmc core - suggested by Ulf Hansson <ulf.hansson@linaro.org>
* remove init_card callback from platform_data/hsmmc-omap.h - suggested by Ulf Hansson <ulf.hansson@linaro.org>
* remove obstructive always-on for vwlan regulator - suggested by Ulf Hansson <ulf.hansson@linaro.org>
* rename DT node - suggested by Rob Herring <robh@kernel.org>
* fix ARM: dts: subject prefix - suggested by Tony Lindgren <tony@atomide.com>
* also remove omap2_hsmmc_info and obc-y line in Makefile - suggested by Tony Lindgren <tony@atomide.com>

PATCH V2 2019-10-19 20:41:47:
* added acked-by for wl1251 patches - Kalle Valo <kvalo@codeaurora.org>
* really removed old pdata-quirks code (not through #if 0)
* splited out a partial revert of
	efdfeb079cc3b ("regulator: fixed: Convert to use GPIO descriptor only")
  because that was introduced after v4.19 and stops the removal of
  the pdata-quirks patch from cleanly applying to v4.9, v4.14, v4.19
  - reported by Sasha Levin <sashal@kernel.org>
* added a new patch to remove old omap hsmmc since pdata quirks
  were last user - suggested by Tony Lindgren <tony@atomide.com>

PATCH V1 2019-10-18 22:25:39:
Here we have a set of scattered patches to make the OpenPandora WiFi work again.

v4.7 did break the pdata-quirks which made the mmc3 interface
fail completely, because some code now assumes device tree
based instantiation.

Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")

v4.11 did break the sdio qirks for wl1251 which made the driver no longer
load, although the device was found as an sdio client.

Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")

To solve these issues:
* we convert mmc3 and wl1251 initialization from pdata-quirks
  to device tree
* we make the wl1251 driver read properties from device tree
* we fix the mmc core vendor ids and quirks
* we fix the wl1251 (and wl1271) driver to use only vendor ids
  from header file instead of (potentially conflicting) local
  definitions


H. Nikolaus Schaller (12):
  Documentation: dt: wireless: update wl1251 for sdio
  net: wireless: ti: wl1251 add device tree support
  ARM: dts: pandora-common: define wl1251 as child node of mmc3
  mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid
    of pandora_wl1251_init_card
  omap: pdata-quirks: revert pandora specific gpiod additions
  omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251
  omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile
  mmc: host: omap-hsmmc: remove init_card pdata callback from pdata
  mmc: sdio: fix wl1251 vendor id
  mmc: core: fix wl1251 sdio quirks
  net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition
  net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions

 .../bindings/net/wireless/ti,wl1251.txt       |  26 +++
 arch/arm/boot/dts/omap3-pandora-common.dtsi   |  36 +++-
 arch/arm/mach-omap2/Makefile                  |   3 -
 arch/arm/mach-omap2/common.h                  |   1 -
 arch/arm/mach-omap2/hsmmc.c                   | 171 ------------------
 arch/arm/mach-omap2/hsmmc.h                   |  32 ----
 arch/arm/mach-omap2/pdata-quirks.c            | 105 -----------
 drivers/mmc/core/quirks.h                     |   7 +
 drivers/mmc/host/omap_hsmmc.c                 |  30 ++-
 drivers/net/wireless/ti/wl1251/sdio.c         |  23 ++-
 drivers/net/wireless/ti/wlcore/sdio.c         |   8 -
 include/linux/mmc/sdio_ids.h                  |   2 +
 include/linux/platform_data/hsmmc-omap.h      |   3 -
 13 files changed, 111 insertions(+), 336 deletions(-)
 delete mode 100644 arch/arm/mach-omap2/hsmmc.c
 delete mode 100644 arch/arm/mach-omap2/hsmmc.h

-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 01/12] Documentation: dt: wireless: update wl1251 for sdio
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-13 13:33   ` Rob Herring
  2019-11-14 14:11   ` Ulf Hansson
  2019-11-07 10:30 ` [PATCH v3 02/12] net: wireless: ti: wl1251 add device tree support H. Nikolaus Schaller
                   ` (11 subsequent siblings)
  12 siblings, 2 replies; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, netdev, linux-omap, linux-arm-kernel

The standard method for sdio devices connected to
an sdio interface is to define them as a child node
like we can see with wlcore.

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Acked-by: Kalle Valo <kvalo@codeaurora.org>
---
 .../bindings/net/wireless/ti,wl1251.txt       | 26 +++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/Documentation/devicetree/bindings/net/wireless/ti,wl1251.txt b/Documentation/devicetree/bindings/net/wireless/ti,wl1251.txt
index bb2fcde6f7ff..f38950560982 100644
--- a/Documentation/devicetree/bindings/net/wireless/ti,wl1251.txt
+++ b/Documentation/devicetree/bindings/net/wireless/ti,wl1251.txt
@@ -35,3 +35,29 @@ Examples:
 		ti,power-gpio = <&gpio3 23 GPIO_ACTIVE_HIGH>; /* 87 */
 	};
 };
+
+&mmc3 {
+	vmmc-supply = <&wlan_en>;
+
+	bus-width = <4>;
+	non-removable;
+	ti,non-removable;
+	cap-power-off-card;
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc3_pins>;
+
+	#address-cells = <1>;
+	#size-cells = <0>;
+
+	wlan: wifi@1 {
+		compatible = "ti,wl1251";
+
+		reg = <1>;
+
+		interrupt-parent = <&gpio1>;
+		interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;	/* GPIO_21 */
+
+		ti,wl1251-has-eeprom;
+	};
+};
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 02/12] net: wireless: ti: wl1251 add device tree support
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
  2019-11-07 10:30 ` [PATCH v3 01/12] Documentation: dt: wireless: update wl1251 for sdio H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-14 14:12   ` Ulf Hansson
  2019-11-07 10:30 ` [PATCH v3 03/12] ARM: dts: pandora-common: define wl1251 as child node of mmc3 H. Nikolaus Schaller
                   ` (10 subsequent siblings)
  12 siblings, 1 reply; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, netdev, linux-omap, linux-arm-kernel

We will have the wl1251 defined as a child node of the mmc interface
and can read setup for gpios, interrupts and the ti,use-eeprom
property from there instead of pdata to be provided by pdata-quirks.

Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Acked-by: Kalle Valo <kvalo@codeaurora.org>
---
 drivers/net/wireless/ti/wl1251/sdio.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/net/wireless/ti/wl1251/sdio.c b/drivers/net/wireless/ti/wl1251/sdio.c
index 677f1146ccf0..c54a273713ed 100644
--- a/drivers/net/wireless/ti/wl1251/sdio.c
+++ b/drivers/net/wireless/ti/wl1251/sdio.c
@@ -16,6 +16,9 @@
 #include <linux/irq.h>
 #include <linux/pm_runtime.h>
 #include <linux/gpio.h>
+#include <linux/of.h>
+#include <linux/of_gpio.h>
+#include <linux/of_irq.h>
 
 #include "wl1251.h"
 
@@ -217,6 +220,7 @@ static int wl1251_sdio_probe(struct sdio_func *func,
 	struct ieee80211_hw *hw;
 	struct wl1251_sdio *wl_sdio;
 	const struct wl1251_platform_data *wl1251_board_data;
+	struct device_node *np = func->dev.of_node;
 
 	hw = wl1251_alloc_hw();
 	if (IS_ERR(hw))
@@ -248,6 +252,15 @@ static int wl1251_sdio_probe(struct sdio_func *func,
 		wl->power_gpio = wl1251_board_data->power_gpio;
 		wl->irq = wl1251_board_data->irq;
 		wl->use_eeprom = wl1251_board_data->use_eeprom;
+	} else if (np) {
+		wl->use_eeprom =of_property_read_bool(np, "ti,wl1251-has-eeprom");
+		wl->power_gpio = of_get_named_gpio(np, "ti,power-gpio", 0);
+		wl->irq = of_irq_get(np, 0);
+
+		if (wl->power_gpio == -EPROBE_DEFER || wl->irq == -EPROBE_DEFER) {
+			ret = -EPROBE_DEFER;
+			goto disable;
+		}
 	}
 
 	if (gpio_is_valid(wl->power_gpio)) {
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 03/12] ARM: dts: pandora-common: define wl1251 as child node of mmc3
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
  2019-11-07 10:30 ` [PATCH v3 01/12] Documentation: dt: wireless: update wl1251 for sdio H. Nikolaus Schaller
  2019-11-07 10:30 ` [PATCH v3 02/12] net: wireless: ti: wl1251 add device tree support H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-08 17:10   ` Tony Lindgren
  2019-11-07 10:30 ` [PATCH v3 04/12] mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid of pandora_wl1251_init_card H. Nikolaus Schaller
                   ` (9 subsequent siblings)
  12 siblings, 1 reply; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, stable, netdev, linux-omap, linux-arm-kernel

Since v4.7 the dma initialization requires that there is a
device tree property for "rx" and "tx" channels which is
not provided by the pdata-quirks initialization.

By conversion of the mmc3 setup to device tree this will
finally allows to remove the OpenPandora wlan specific omap3
data-quirks.

Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Cc: <stable@vger.kernel.org> # 4.7.0
---
 arch/arm/boot/dts/omap3-pandora-common.dtsi | 36 +++++++++++++++++++--
 1 file changed, 34 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/omap3-pandora-common.dtsi b/arch/arm/boot/dts/omap3-pandora-common.dtsi
index ec5891718ae6..150d5be42d27 100644
--- a/arch/arm/boot/dts/omap3-pandora-common.dtsi
+++ b/arch/arm/boot/dts/omap3-pandora-common.dtsi
@@ -226,6 +226,17 @@
 		gpio = <&gpio6 4 GPIO_ACTIVE_HIGH>;	/* GPIO_164 */
 	};
 
+	/* wl1251 wifi+bt module */
+	wlan_en: fixed-regulator-wg7210_en {
+		compatible = "regulator-fixed";
+		regulator-name = "vwlan";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+		startup-delay-us = <50000>;
+		enable-active-high;
+		gpio = <&gpio1 23 GPIO_ACTIVE_HIGH>;
+	};
+
 	/* wg7210 (wifi+bt module) 32k clock buffer */
 	wg7210_32k: fixed-regulator-wg7210_32k {
 		compatible = "regulator-fixed";
@@ -522,9 +533,30 @@
 	/*wp-gpios = <&gpio4 31 GPIO_ACTIVE_HIGH>;*/	/* GPIO_127 */
 };
 
-/* mmc3 is probed using pdata-quirks to pass wl1251 card data */
 &mmc3 {
-	status = "disabled";
+	vmmc-supply = <&wlan_en>;
+
+	bus-width = <4>;
+	non-removable;
+	ti,non-removable;
+	cap-power-off-card;
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&mmc3_pins>;
+
+	#address-cells = <1>;
+	#size-cells = <0>;
+
+	wlan: wifi@1 {
+		compatible = "ti,wl1251";
+
+		reg = <1>;
+
+		interrupt-parent = <&gpio1>;
+		interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;	/* GPIO_21 */
+
+		ti,wl1251-has-eeprom;
+	};
 };
 
 /* bluetooth*/
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 04/12] mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid of pandora_wl1251_init_card
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (2 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 03/12] ARM: dts: pandora-common: define wl1251 as child node of mmc3 H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-07 10:30 ` [PATCH v3 05/12] omap: pdata-quirks: revert pandora specific gpiod additions H. Nikolaus Schaller
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, stable, netdev, linux-omap, linux-arm-kernel

Pandora_wl1251_init_card was used to do special pdata based
setup of the sdio mmc interface. This does no longer work with
v4.7 and later. A fix requires a device tree based mmc3 setup.

Therefore we move the special setup to omap_hsmmc.c instead
of calling some pdata supplied init_card function.

The new code checks for a DT child node compatible to wl1251
so it will not affect other MMC3 use cases.

Generally, this code was and still is a hack and should be
moved to mmc core to e.g. read such properties from optional
DT child nodes.

Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Cc: <stable@vger.kernel.org> # 4.7.0
---
 drivers/mmc/host/omap_hsmmc.c | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 952fa4063ff8..a7192731ac13 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1512,6 +1512,34 @@ static void omap_hsmmc_init_card(struct mmc_host *mmc, struct mmc_card *card)
 
 	if (mmc_pdata(host)->init_card)
 		mmc_pdata(host)->init_card(card);
+	else if (card->type == MMC_TYPE_SDIO || card->type == MMC_TYPE_SD_COMBO) {
+		struct device_node *np = mmc_dev(mmc)->of_node;
+
+		/*
+		 * REVISIT: should be moved to sdio core and made more
+		 * general e.g. by expanding the DT bindings of child nodes
+		 * to provide a mechanism to provide this information:
+		 * Documentation/devicetree/bindings/mmc/mmc-card.txt
+		 */
+
+		np = of_get_compatible_child(np, "ti,wl1251");
+		if (np) {
+			/*
+			 * We have TI wl1251 attached to MMC3. Pass this information to
+			 * SDIO core because it can't be probed by normal methods.
+			 */
+
+			dev_info(host->dev, "found wl1251\n");
+			card->quirks |= MMC_QUIRK_NONSTD_SDIO;
+			card->cccr.wide_bus = 1;
+			card->cis.vendor = 0x104c;
+			card->cis.device = 0x9066;
+			card->cis.blksize = 512;
+			card->cis.max_dtr = 24000000;
+			card->ocr = 0x80;
+			of_node_put(np);
+		}
+	}
 }
 
 static void omap_hsmmc_enable_sdio_irq(struct mmc_host *mmc, int enable)
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 05/12] omap: pdata-quirks: revert pandora specific gpiod additions
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (3 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 04/12] mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid of pandora_wl1251_init_card H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-08 17:10   ` Tony Lindgren
  2019-11-07 10:30 ` [PATCH v3 06/12] omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251 H. Nikolaus Schaller
                   ` (7 subsequent siblings)
  12 siblings, 1 reply; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, netdev, linux-omap, linux-arm-kernel

introduced by commit

efdfeb079cc3b ("regulator: fixed: Convert to use GPIO descriptor only")

We must remove this from mainline first, so that the following patch
to remove the openpandora quirks for mmc3 and wl1251 cleanly applies
to stable v4.9, v4.14, v4.19 where the above mentioned patch is not yet
present.

Since the code affected is removed (no pandora gpios in pdata-quirks
and more), there will be no matching revert-of-the-revert.

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
---
 arch/arm/mach-omap2/pdata-quirks.c | 19 ++++---------------
 1 file changed, 4 insertions(+), 15 deletions(-)

diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c
index 2efd18e8824c..800a602c06ec 100644
--- a/arch/arm/mach-omap2/pdata-quirks.c
+++ b/arch/arm/mach-omap2/pdata-quirks.c
@@ -7,7 +7,6 @@
 #include <linux/clk.h>
 #include <linux/davinci_emac.h>
 #include <linux/gpio.h>
-#include <linux/gpio/machine.h>
 #include <linux/init.h>
 #include <linux/kernel.h>
 #include <linux/of_platform.h>
@@ -334,7 +333,9 @@ static struct regulator_init_data pandora_vmmc3 = {
 static struct fixed_voltage_config pandora_vwlan = {
 	.supply_name		= "vwlan",
 	.microvolts		= 1800000, /* 1.8V */
+	.gpio			= PANDORA_WIFI_NRESET_GPIO,
 	.startup_delay		= 50000, /* 50ms */
+	.enable_high		= 1,
 	.init_data		= &pandora_vmmc3,
 };
 
@@ -346,19 +347,6 @@ static struct platform_device pandora_vwlan_device = {
 	},
 };
 
-static struct gpiod_lookup_table pandora_vwlan_gpiod_table = {
-	.dev_id = "reg-fixed-voltage.1",
-	.table = {
-		/*
-		 * As this is a low GPIO number it should be at the first
-		 * GPIO bank.
-		 */
-		GPIO_LOOKUP("gpio-0-31", PANDORA_WIFI_NRESET_GPIO,
-			    NULL, GPIO_ACTIVE_HIGH),
-		{ },
-	},
-};
-
 static void pandora_wl1251_init_card(struct mmc_card *card)
 {
 	/*
@@ -380,6 +368,8 @@ static struct omap2_hsmmc_info pandora_mmc3[] = {
 	{
 		.mmc		= 3,
 		.caps		= MMC_CAP_4_BIT_DATA | MMC_CAP_POWER_OFF_CARD,
+		.gpio_cd	= -EINVAL,
+		.gpio_wp	= -EINVAL,
 		.init_card	= pandora_wl1251_init_card,
 	},
 	{}	/* Terminator */
@@ -418,7 +408,6 @@ static void __init pandora_wl1251_init(void)
 static void __init omap3_pandora_legacy_init(void)
 {
 	platform_device_register(&pandora_backlight);
-	gpiod_add_lookup_table(&pandora_vwlan_gpiod_table);
 	platform_device_register(&pandora_vwlan_device);
 	omap_hsmmc_init(pandora_mmc3);
 	omap_hsmmc_late_init(pandora_mmc3);
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 06/12] omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (4 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 05/12] omap: pdata-quirks: revert pandora specific gpiod additions H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-08 17:11   ` Tony Lindgren
  2019-11-07 10:30 ` [PATCH v3 07/12] omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile H. Nikolaus Schaller
                   ` (6 subsequent siblings)
  12 siblings, 1 reply; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, stable, netdev, linux-omap, linux-arm-kernel

With a wl1251 child node of mmc3 in the device tree decoded
in omap_hsmmc.c to handle special wl1251 initialization, we do
no longer need to instantiate the mmc3 through pdata quirks.

We also can remove the wlan regulator and reset/interrupt definitions
and do them through device tree.

Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Cc: <stable@vger.kernel.org> # 4.7.0
---
 arch/arm/mach-omap2/pdata-quirks.c | 93 ------------------------------
 1 file changed, 93 deletions(-)

diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c
index 800a602c06ec..1b7cf81ff035 100644
--- a/arch/arm/mach-omap2/pdata-quirks.c
+++ b/arch/arm/mach-omap2/pdata-quirks.c
@@ -310,108 +310,15 @@ static void __init omap3_logicpd_torpedo_init(void)
 }
 
 /* omap3pandora legacy devices */
-#define PANDORA_WIFI_IRQ_GPIO		21
-#define PANDORA_WIFI_NRESET_GPIO	23
 
 static struct platform_device pandora_backlight = {
 	.name	= "pandora-backlight",
 	.id	= -1,
 };
 
-static struct regulator_consumer_supply pandora_vmmc3_supply[] = {
-	REGULATOR_SUPPLY("vmmc", "omap_hsmmc.2"),
-};
-
-static struct regulator_init_data pandora_vmmc3 = {
-	.constraints = {
-		.valid_ops_mask		= REGULATOR_CHANGE_STATUS,
-	},
-	.num_consumer_supplies	= ARRAY_SIZE(pandora_vmmc3_supply),
-	.consumer_supplies	= pandora_vmmc3_supply,
-};
-
-static struct fixed_voltage_config pandora_vwlan = {
-	.supply_name		= "vwlan",
-	.microvolts		= 1800000, /* 1.8V */
-	.gpio			= PANDORA_WIFI_NRESET_GPIO,
-	.startup_delay		= 50000, /* 50ms */
-	.enable_high		= 1,
-	.init_data		= &pandora_vmmc3,
-};
-
-static struct platform_device pandora_vwlan_device = {
-	.name		= "reg-fixed-voltage",
-	.id		= 1,
-	.dev = {
-		.platform_data = &pandora_vwlan,
-	},
-};
-
-static void pandora_wl1251_init_card(struct mmc_card *card)
-{
-	/*
-	 * We have TI wl1251 attached to MMC3. Pass this information to
-	 * SDIO core because it can't be probed by normal methods.
-	 */
-	if (card->type == MMC_TYPE_SDIO || card->type == MMC_TYPE_SD_COMBO) {
-		card->quirks |= MMC_QUIRK_NONSTD_SDIO;
-		card->cccr.wide_bus = 1;
-		card->cis.vendor = 0x104c;
-		card->cis.device = 0x9066;
-		card->cis.blksize = 512;
-		card->cis.max_dtr = 24000000;
-		card->ocr = 0x80;
-	}
-}
-
-static struct omap2_hsmmc_info pandora_mmc3[] = {
-	{
-		.mmc		= 3,
-		.caps		= MMC_CAP_4_BIT_DATA | MMC_CAP_POWER_OFF_CARD,
-		.gpio_cd	= -EINVAL,
-		.gpio_wp	= -EINVAL,
-		.init_card	= pandora_wl1251_init_card,
-	},
-	{}	/* Terminator */
-};
-
-static void __init pandora_wl1251_init(void)
-{
-	struct wl1251_platform_data pandora_wl1251_pdata;
-	int ret;
-
-	memset(&pandora_wl1251_pdata, 0, sizeof(pandora_wl1251_pdata));
-
-	pandora_wl1251_pdata.power_gpio = -1;
-
-	ret = gpio_request_one(PANDORA_WIFI_IRQ_GPIO, GPIOF_IN, "wl1251 irq");
-	if (ret < 0)
-		goto fail;
-
-	pandora_wl1251_pdata.irq = gpio_to_irq(PANDORA_WIFI_IRQ_GPIO);
-	if (pandora_wl1251_pdata.irq < 0)
-		goto fail_irq;
-
-	pandora_wl1251_pdata.use_eeprom = true;
-	ret = wl1251_set_platform_data(&pandora_wl1251_pdata);
-	if (ret < 0)
-		goto fail_irq;
-
-	return;
-
-fail_irq:
-	gpio_free(PANDORA_WIFI_IRQ_GPIO);
-fail:
-	pr_err("wl1251 board initialisation failed\n");
-}
-
 static void __init omap3_pandora_legacy_init(void)
 {
 	platform_device_register(&pandora_backlight);
-	platform_device_register(&pandora_vwlan_device);
-	omap_hsmmc_init(pandora_mmc3);
-	omap_hsmmc_late_init(pandora_mmc3);
-	pandora_wl1251_init();
 }
 #endif /* CONFIG_ARCH_OMAP3 */
 
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 07/12] omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (5 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 06/12] omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251 H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-08 17:11   ` Tony Lindgren
  2019-11-07 10:30 ` [PATCH v3 08/12] mmc: host: omap-hsmmc: remove init_card pdata callback from pdata H. Nikolaus Schaller
                   ` (5 subsequent siblings)
  12 siblings, 1 reply; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, netdev, linux-omap, linux-arm-kernel

There is a new driver in drivers/mmc/host/omap_hsmmc.c
configured by CONFIG_MMC_OMAP_HS and the last user
was the pdata-quirks for pandora.

Suggested-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
---
 arch/arm/mach-omap2/Makefile       |   3 -
 arch/arm/mach-omap2/common.h       |   1 -
 arch/arm/mach-omap2/hsmmc.c        | 171 -----------------------------
 arch/arm/mach-omap2/hsmmc.h        |  32 ------
 arch/arm/mach-omap2/pdata-quirks.c |   1 -
 5 files changed, 208 deletions(-)
 delete mode 100644 arch/arm/mach-omap2/hsmmc.c
 delete mode 100644 arch/arm/mach-omap2/hsmmc.h

diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index 8f208197988f..1e1e86d17fc5 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -216,9 +216,6 @@ obj-$(CONFIG_MACH_NOKIA_N8X0)		+= board-n8x0.o
 
 # Platform specific device init code
 
-omap-hsmmc-$(CONFIG_MMC_OMAP_HS)	:= hsmmc.o
-obj-y					+= $(omap-hsmmc-m) $(omap-hsmmc-y)
-
 obj-y					+= omap_phy_internal.o
 
 obj-$(CONFIG_MACH_OMAP2_TUSB6010)	+= usb-tusb6010.o
diff --git a/arch/arm/mach-omap2/common.h b/arch/arm/mach-omap2/common.h
index 6316da3623b3..223b37c48389 100644
--- a/arch/arm/mach-omap2/common.h
+++ b/arch/arm/mach-omap2/common.h
@@ -352,7 +352,6 @@ void omap_pcs_legacy_init(int irq, void (*rearm)(void));
 struct omap_sdrc_params;
 extern void omap_sdrc_init(struct omap_sdrc_params *sdrc_cs0,
 				      struct omap_sdrc_params *sdrc_cs1);
-struct omap2_hsmmc_info;
 extern void omap_reserve(void);
 
 struct omap_hwmod;
diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
deleted file mode 100644
index 63423ea6a240..000000000000
--- a/arch/arm/mach-omap2/hsmmc.c
+++ /dev/null
@@ -1,171 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/*
- * linux/arch/arm/mach-omap2/hsmmc.c
- *
- * Copyright (C) 2007-2008 Texas Instruments
- * Copyright (C) 2008 Nokia Corporation
- * Author: Texas Instruments
- */
-#include <linux/kernel.h>
-#include <linux/slab.h>
-#include <linux/string.h>
-#include <linux/delay.h>
-#include <linux/mmc/host.h>
-#include <linux/platform_data/hsmmc-omap.h>
-
-#include "soc.h"
-#include "omap_device.h"
-
-#include "hsmmc.h"
-#include "control.h"
-
-#if IS_ENABLED(CONFIG_MMC_OMAP_HS)
-
-static u16 control_pbias_offset;
-static u16 control_devconf1_offset;
-
-#define HSMMC_NAME_LEN	9
-
-static int __init omap_hsmmc_pdata_init(struct omap2_hsmmc_info *c,
-					struct omap_hsmmc_platform_data *mmc)
-{
-	char *hc_name;
-
-	hc_name = kzalloc(HSMMC_NAME_LEN + 1, GFP_KERNEL);
-	if (!hc_name)
-		return -ENOMEM;
-
-	snprintf(hc_name, (HSMMC_NAME_LEN + 1), "mmc%islot%i", c->mmc, 1);
-	mmc->name = hc_name;
-	mmc->caps = c->caps;
-	mmc->reg_offset = 0;
-
-	return 0;
-}
-
-static int omap_hsmmc_done;
-
-void omap_hsmmc_late_init(struct omap2_hsmmc_info *c)
-{
-	struct platform_device *pdev;
-	int res;
-
-	if (omap_hsmmc_done)
-		return;
-
-	omap_hsmmc_done = 1;
-
-	for (; c->mmc; c++) {
-		pdev = c->pdev;
-		if (!pdev)
-			continue;
-		res = omap_device_register(pdev);
-		if (res)
-			pr_err("Could not late init MMC\n");
-	}
-}
-
-#define MAX_OMAP_MMC_HWMOD_NAME_LEN		16
-
-static void __init omap_hsmmc_init_one(struct omap2_hsmmc_info *hsmmcinfo,
-					int ctrl_nr)
-{
-	struct omap_hwmod *oh;
-	struct omap_hwmod *ohs[1];
-	struct omap_device *od;
-	struct platform_device *pdev;
-	char oh_name[MAX_OMAP_MMC_HWMOD_NAME_LEN];
-	struct omap_hsmmc_platform_data *mmc_data;
-	struct omap_hsmmc_dev_attr *mmc_dev_attr;
-	char *name;
-	int res;
-
-	mmc_data = kzalloc(sizeof(*mmc_data), GFP_KERNEL);
-	if (!mmc_data)
-		return;
-
-	res = omap_hsmmc_pdata_init(hsmmcinfo, mmc_data);
-	if (res < 0)
-		goto free_mmc;
-
-	name = "omap_hsmmc";
-	res = snprintf(oh_name, MAX_OMAP_MMC_HWMOD_NAME_LEN,
-		     "mmc%d", ctrl_nr);
-	WARN(res >= MAX_OMAP_MMC_HWMOD_NAME_LEN,
-	     "String buffer overflow in MMC%d device setup\n", ctrl_nr);
-
-	oh = omap_hwmod_lookup(oh_name);
-	if (!oh) {
-		pr_err("Could not look up %s\n", oh_name);
-		goto free_name;
-	}
-	ohs[0] = oh;
-	if (oh->dev_attr != NULL) {
-		mmc_dev_attr = oh->dev_attr;
-		mmc_data->controller_flags = mmc_dev_attr->flags;
-	}
-
-	pdev = platform_device_alloc(name, ctrl_nr - 1);
-	if (!pdev) {
-		pr_err("Could not allocate pdev for %s\n", name);
-		goto free_name;
-	}
-	dev_set_name(&pdev->dev, "%s.%d", pdev->name, pdev->id);
-
-	od = omap_device_alloc(pdev, ohs, 1);
-	if (IS_ERR(od)) {
-		pr_err("Could not allocate od for %s\n", name);
-		goto put_pdev;
-	}
-
-	res = platform_device_add_data(pdev, mmc_data,
-			      sizeof(struct omap_hsmmc_platform_data));
-	if (res) {
-		pr_err("Could not add pdata for %s\n", name);
-		goto put_pdev;
-	}
-
-	hsmmcinfo->pdev = pdev;
-
-	res = omap_device_register(pdev);
-	if (res) {
-		pr_err("Could not register od for %s\n", name);
-		goto free_od;
-	}
-
-	goto free_mmc;
-
-free_od:
-	omap_device_delete(od);
-
-put_pdev:
-	platform_device_put(pdev);
-
-free_name:
-	kfree(mmc_data->name);
-
-free_mmc:
-	kfree(mmc_data);
-}
-
-void __init omap_hsmmc_init(struct omap2_hsmmc_info *controllers)
-{
-	if (omap_hsmmc_done)
-		return;
-
-	omap_hsmmc_done = 1;
-
-	if (cpu_is_omap2430()) {
-		control_pbias_offset = OMAP243X_CONTROL_PBIAS_LITE;
-		control_devconf1_offset = OMAP243X_CONTROL_DEVCONF1;
-	} else {
-		control_pbias_offset = OMAP343X_CONTROL_PBIAS_LITE;
-		control_devconf1_offset = OMAP343X_CONTROL_DEVCONF1;
-	}
-
-	for (; controllers->mmc; controllers++)
-		omap_hsmmc_init_one(controllers, controllers->mmc);
-
-}
-
-#endif
diff --git a/arch/arm/mach-omap2/hsmmc.h b/arch/arm/mach-omap2/hsmmc.h
deleted file mode 100644
index 76c5ed2afa72..000000000000
--- a/arch/arm/mach-omap2/hsmmc.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-/*
- * MMC definitions for OMAP2
- */
-
-struct mmc_card;
-
-struct omap2_hsmmc_info {
-	u8	mmc;		/* controller 1/2/3 */
-	u32	caps;		/* 4/8 wires and any additional host
-				 * capabilities OR'd (ref. linux/mmc/host.h) */
-	struct platform_device *pdev;	/* mmc controller instance */
-	/* init some special card */
-	void (*init_card)(struct mmc_card *card);
-};
-
-#if IS_ENABLED(CONFIG_MMC_OMAP_HS)
-
-void omap_hsmmc_init(struct omap2_hsmmc_info *);
-void omap_hsmmc_late_init(struct omap2_hsmmc_info *);
-
-#else
-
-static inline void omap_hsmmc_init(struct omap2_hsmmc_info *info)
-{
-}
-
-static inline void omap_hsmmc_late_init(struct omap2_hsmmc_info *info)
-{
-}
-
-#endif
diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c
index 1b7cf81ff035..ad0e00724578 100644
--- a/arch/arm/mach-omap2/pdata-quirks.c
+++ b/arch/arm/mach-omap2/pdata-quirks.c
@@ -32,7 +32,6 @@
 #include "omap_device.h"
 #include "omap-secure.h"
 #include "soc.h"
-#include "hsmmc.h"
 
 static struct omap_hsmmc_platform_data __maybe_unused mmc_pdata[2];
 
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 08/12] mmc: host: omap-hsmmc: remove init_card pdata callback from pdata
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (6 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 07/12] omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-07 10:30 ` [PATCH v3 09/12] mmc: sdio: fix wl1251 vendor id H. Nikolaus Schaller
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, netdev, linux-omap, linux-arm-kernel

Now as we have removed the last user (pandora_wl1251_init_card)
of this callback, we can remove it from the hsmmc code.

Suggested-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
---
 drivers/mmc/host/omap_hsmmc.c            | 4 +---
 include/linux/platform_data/hsmmc-omap.h | 3 ---
 2 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index a7192731ac13..b8c040691bab 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1510,9 +1510,7 @@ static void omap_hsmmc_init_card(struct mmc_host *mmc, struct mmc_card *card)
 {
 	struct omap_hsmmc_host *host = mmc_priv(mmc);
 
-	if (mmc_pdata(host)->init_card)
-		mmc_pdata(host)->init_card(card);
-	else if (card->type == MMC_TYPE_SDIO || card->type == MMC_TYPE_SD_COMBO) {
+	if (card->type == MMC_TYPE_SDIO || card->type == MMC_TYPE_SD_COMBO) {
 		struct device_node *np = mmc_dev(mmc)->of_node;
 
 		/*
diff --git a/include/linux/platform_data/hsmmc-omap.h b/include/linux/platform_data/hsmmc-omap.h
index e79d238ff18f..7124a5f4bf06 100644
--- a/include/linux/platform_data/hsmmc-omap.h
+++ b/include/linux/platform_data/hsmmc-omap.h
@@ -67,9 +67,6 @@ struct omap_hsmmc_platform_data {
 	/* string specifying a particular variant of hardware */
 	char *version;
 
-	/* if we have special card, init it using this callback */
-	void (*init_card)(struct mmc_card *card);
-
 	const char *name;
 	u32 ocr_mask;
 };
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 09/12] mmc: sdio: fix wl1251 vendor id
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (7 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 08/12] mmc: host: omap-hsmmc: remove init_card pdata callback from pdata H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-07 10:30 ` [PATCH v3 10/12] mmc: core: fix wl1251 sdio quirks H. Nikolaus Schaller
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, stable, netdev, linux-omap, linux-arm-kernel

v4.11-rc1 did introduce a patch series that rearranged the
sdio quirks into a header file. Unfortunately this did forget
to handle SDIO_VENDOR_ID_TI differently between wl1251 and
wl1271 with the result that although the wl1251 was found on
the sdio bus, the firmware did not load any more and there was
no interface registration.

This patch defines separate constants to be used by sdio quirks
and drivers.

Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Cc: <stable@vger.kernel.org> # 4.11.0
---
 include/linux/mmc/sdio_ids.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/linux/mmc/sdio_ids.h b/include/linux/mmc/sdio_ids.h
index d1a5d5df02f5..08b25c02b5a1 100644
--- a/include/linux/mmc/sdio_ids.h
+++ b/include/linux/mmc/sdio_ids.h
@@ -71,6 +71,8 @@
 
 #define SDIO_VENDOR_ID_TI			0x0097
 #define SDIO_DEVICE_ID_TI_WL1271		0x4076
+#define SDIO_VENDOR_ID_TI_WL1251		0x104c
+#define SDIO_DEVICE_ID_TI_WL1251		0x9066
 
 #define SDIO_VENDOR_ID_STE			0x0020
 #define SDIO_DEVICE_ID_STE_CW1200		0x2280
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 10/12] mmc: core: fix wl1251 sdio quirks
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (8 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 09/12] mmc: sdio: fix wl1251 vendor id H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-07 10:30 ` [PATCH v3 11/12] net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition H. Nikolaus Schaller
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, stable, netdev, linux-omap, linux-arm-kernel

wl1251 and wl1271 have different vendor id and device id.
So we need to handle both with sdio quirks.

Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Cc: <stable@vger.kernel.org> # 4.11.0
---
 drivers/mmc/core/quirks.h | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/mmc/core/quirks.h b/drivers/mmc/core/quirks.h
index 2d2d9ea8be4f..3dba15bccce2 100644
--- a/drivers/mmc/core/quirks.h
+++ b/drivers/mmc/core/quirks.h
@@ -119,7 +119,14 @@ static const struct mmc_fixup mmc_ext_csd_fixups[] = {
 	END_FIXUP
 };
 
+
 static const struct mmc_fixup sdio_fixup_methods[] = {
+	SDIO_FIXUP(SDIO_VENDOR_ID_TI_WL1251, SDIO_DEVICE_ID_TI_WL1251,
+		   add_quirk, MMC_QUIRK_NONSTD_FUNC_IF),
+
+	SDIO_FIXUP(SDIO_VENDOR_ID_TI_WL1251, SDIO_DEVICE_ID_TI_WL1251,
+		   add_quirk, MMC_QUIRK_DISABLE_CD),
+
 	SDIO_FIXUP(SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1271,
 		   add_quirk, MMC_QUIRK_NONSTD_FUNC_IF),
 
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 11/12] net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (9 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 10/12] mmc: core: fix wl1251 sdio quirks H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-07 10:30 ` [PATCH v3 12/12] net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions H. Nikolaus Schaller
  2019-11-14 14:18 ` [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again Ulf Hansson
  12 siblings, 0 replies; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, stable, netdev, linux-omap, linux-arm-kernel

SDIO_VENDOR_ID_TI_WL1251 is now defined in mmc/sdio_ids.h separately
from SDIO_VENDOR_ID_TI for wl1271.

Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Acked-by: Kalle Valo <kvalo@codeaurora.org>
Cc: <stable@vger.kernel.org> # 4.11.0
---
 drivers/net/wireless/ti/wl1251/sdio.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/ti/wl1251/sdio.c b/drivers/net/wireless/ti/wl1251/sdio.c
index c54a273713ed..42b55f3a50df 100644
--- a/drivers/net/wireless/ti/wl1251/sdio.c
+++ b/drivers/net/wireless/ti/wl1251/sdio.c
@@ -52,7 +52,7 @@ static void wl1251_sdio_interrupt(struct sdio_func *func)
 }
 
 static const struct sdio_device_id wl1251_devices[] = {
-	{ SDIO_DEVICE(SDIO_VENDOR_ID_TI, SDIO_DEVICE_ID_TI_WL1251) },
+	{ SDIO_DEVICE(SDIO_VENDOR_ID_TI_WL1251, SDIO_DEVICE_ID_TI_WL1251) },
 	{}
 };
 MODULE_DEVICE_TABLE(sdio, wl1251_devices);
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [PATCH v3 12/12] net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (10 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 11/12] net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition H. Nikolaus Schaller
@ 2019-11-07 10:30 ` H. Nikolaus Schaller
  2019-11-14 14:18 ` [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again Ulf Hansson
  12 siblings, 0 replies; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-07 10:30 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Rob Herring, Mark Rutland,
	Russell King, Ulf Hansson, Kalle Valo, Mike Rapoport,
	David Sterba, Rafael J. Wysocki, Petr Mladek, Sakari Ailus,
	H. Nikolaus Schaller, Kefeng Wang, Yangtao Li, Alexios Zavras,
	Thomas Gleixner, Allison Randal, Greg Kroah-Hartman, John Stultz,
	Bjorn Helgaas
  Cc: devicetree, letux-kernel, linux-mmc, kernel, linux-wireless,
	linux-kernel, stable, netdev, linux-omap, linux-arm-kernel

They are already included from mmc/sdio_ids.h and do not need
a local definition.

Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Acked-by: Kalle Valo <kvalo@codeaurora.org>
Cc: <stable@vger.kernel.org> # 4.11.0
---
 drivers/net/wireless/ti/wl1251/sdio.c | 8 --------
 drivers/net/wireless/ti/wlcore/sdio.c | 8 --------
 2 files changed, 16 deletions(-)

diff --git a/drivers/net/wireless/ti/wl1251/sdio.c b/drivers/net/wireless/ti/wl1251/sdio.c
index 42b55f3a50df..3c4d5e38c66c 100644
--- a/drivers/net/wireless/ti/wl1251/sdio.c
+++ b/drivers/net/wireless/ti/wl1251/sdio.c
@@ -22,14 +22,6 @@
 
 #include "wl1251.h"
 
-#ifndef SDIO_VENDOR_ID_TI
-#define SDIO_VENDOR_ID_TI		0x104c
-#endif
-
-#ifndef SDIO_DEVICE_ID_TI_WL1251
-#define SDIO_DEVICE_ID_TI_WL1251	0x9066
-#endif
-
 struct wl1251_sdio {
 	struct sdio_func *func;
 	u32 elp_val;
diff --git a/drivers/net/wireless/ti/wlcore/sdio.c b/drivers/net/wireless/ti/wlcore/sdio.c
index 7afaf35f2453..9fd8cf2d270c 100644
--- a/drivers/net/wireless/ti/wlcore/sdio.c
+++ b/drivers/net/wireless/ti/wlcore/sdio.c
@@ -26,14 +26,6 @@
 #include "wl12xx_80211.h"
 #include "io.h"
 
-#ifndef SDIO_VENDOR_ID_TI
-#define SDIO_VENDOR_ID_TI		0x0097
-#endif
-
-#ifndef SDIO_DEVICE_ID_TI_WL1271
-#define SDIO_DEVICE_ID_TI_WL1271	0x4076
-#endif
-
 static bool dump = false;
 
 struct wl12xx_sdio_glue {
-- 
2.23.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 03/12] ARM: dts: pandora-common: define wl1251 as child node of mmc3
  2019-11-07 10:30 ` [PATCH v3 03/12] ARM: dts: pandora-common: define wl1251 as child node of mmc3 H. Nikolaus Schaller
@ 2019-11-08 17:10   ` Tony Lindgren
  0 siblings, 0 replies; 23+ messages in thread
From: Tony Lindgren @ 2019-11-08 17:10 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Mark Rutland, Ulf Hansson, devicetree, Yangtao Li,
	linux-wireless, Kefeng Wang, Bjorn Helgaas, netdev, linux-omap,
	Rafael J. Wysocki, Russell King, Mike Rapoport, Kalle Valo,
	Petr Mladek, Benoît Cousson, Alexios Zavras, Rob Herring,
	John Stultz, David Sterba, Thomas Gleixner, letux-kernel,
	Allison Randal, linux-arm-kernel, Greg Kroah-Hartman, linux-mmc,
	linux-kernel, stable, Sakari Ailus, kernel

* H. Nikolaus Schaller <hns@goldelico.com> [191107 10:33]:
> Since v4.7 the dma initialization requires that there is a
> device tree property for "rx" and "tx" channels which is
> not provided by the pdata-quirks initialization.
> 
> By conversion of the mmc3 setup to device tree this will
> finally allows to remove the OpenPandora wlan specific omap3
> data-quirks.
> 
> Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")

Probably best to queue this all via the mmc tree when no more comments:

Acked-by: Tony Lindgren <tony@atomide.com>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 05/12] omap: pdata-quirks: revert pandora specific gpiod additions
  2019-11-07 10:30 ` [PATCH v3 05/12] omap: pdata-quirks: revert pandora specific gpiod additions H. Nikolaus Schaller
@ 2019-11-08 17:10   ` Tony Lindgren
  0 siblings, 0 replies; 23+ messages in thread
From: Tony Lindgren @ 2019-11-08 17:10 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Mark Rutland, Ulf Hansson, devicetree, Yangtao Li,
	linux-wireless, Kefeng Wang, Bjorn Helgaas, netdev, linux-omap,
	Rafael J. Wysocki, Russell King, Mike Rapoport, Kalle Valo,
	Petr Mladek, Benoît Cousson, Alexios Zavras, Rob Herring,
	John Stultz, David Sterba, Thomas Gleixner, letux-kernel,
	Allison Randal, linux-arm-kernel, Greg Kroah-Hartman, linux-mmc,
	linux-kernel, Sakari Ailus, kernel

* H. Nikolaus Schaller <hns@goldelico.com> [191107 10:33]:
> introduced by commit
> 
> efdfeb079cc3b ("regulator: fixed: Convert to use GPIO descriptor only")
> 
> We must remove this from mainline first, so that the following patch
> to remove the openpandora quirks for mmc3 and wl1251 cleanly applies
> to stable v4.9, v4.14, v4.19 where the above mentioned patch is not yet
> present.
> 
> Since the code affected is removed (no pandora gpios in pdata-quirks
> and more), there will be no matching revert-of-the-revert.

This too:

Acked-by: Tony Lindgren <tony@atomide.com>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 06/12] omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251
  2019-11-07 10:30 ` [PATCH v3 06/12] omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251 H. Nikolaus Schaller
@ 2019-11-08 17:11   ` Tony Lindgren
  0 siblings, 0 replies; 23+ messages in thread
From: Tony Lindgren @ 2019-11-08 17:11 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Mark Rutland, Ulf Hansson, devicetree, Yangtao Li,
	linux-wireless, Kefeng Wang, Bjorn Helgaas, letux-kernel,
	Rafael J. Wysocki, Russell King, Mike Rapoport, Kalle Valo,
	Petr Mladek, Benoît Cousson, kernel, Alexios Zavras,
	Rob Herring, John Stultz, David Sterba, Thomas Gleixner,
	linux-omap, Allison Randal, linux-arm-kernel, Greg Kroah-Hartman,
	linux-mmc, linux-kernel, stable, Sakari Ailus, netdev

* H. Nikolaus Schaller <hns@goldelico.com> [191107 10:32]:
> With a wl1251 child node of mmc3 in the device tree decoded
> in omap_hsmmc.c to handle special wl1251 initialization, we do
> no longer need to instantiate the mmc3 through pdata quirks.
> 
> We also can remove the wlan regulator and reset/interrupt definitions
> and do them through device tree.
> 
> Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")

Good to see this go away:

Acked-by: Tony Lindgren <tony@atomide.com>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 07/12] omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile
  2019-11-07 10:30 ` [PATCH v3 07/12] omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile H. Nikolaus Schaller
@ 2019-11-08 17:11   ` Tony Lindgren
  0 siblings, 0 replies; 23+ messages in thread
From: Tony Lindgren @ 2019-11-08 17:11 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Mark Rutland, Ulf Hansson, devicetree, Yangtao Li,
	linux-wireless, Kefeng Wang, Bjorn Helgaas, letux-kernel,
	Rafael J. Wysocki, Russell King, Mike Rapoport, Kalle Valo,
	Petr Mladek, Benoît Cousson, kernel, Alexios Zavras,
	Rob Herring, John Stultz, David Sterba, Thomas Gleixner,
	linux-omap, Allison Randal, linux-arm-kernel, Greg Kroah-Hartman,
	linux-mmc, linux-kernel, Sakari Ailus, netdev

* H. Nikolaus Schaller <hns@goldelico.com> [191107 10:32]:
> There is a new driver in drivers/mmc/host/omap_hsmmc.c
> configured by CONFIG_MMC_OMAP_HS and the last user
> was the pdata-quirks for pandora.

Thanks for doing this:

Acked-by: Tony Lindgren <tony@atomide.com>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 01/12] Documentation: dt: wireless: update wl1251 for sdio
  2019-11-07 10:30 ` [PATCH v3 01/12] Documentation: dt: wireless: update wl1251 for sdio H. Nikolaus Schaller
@ 2019-11-13 13:33   ` Rob Herring
  2019-11-14 14:11   ` Ulf Hansson
  1 sibling, 0 replies; 23+ messages in thread
From: Rob Herring @ 2019-11-13 13:33 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Mark Rutland, linux-wireless, Ulf Hansson, devicetree,
	Tony Lindgren, H. Nikolaus Schaller, Kefeng Wang, Bjorn Helgaas,
	netdev, linux-omap, Rafael J. Wysocki, Russell King,
	Mike Rapoport, Yangtao Li, Kalle Valo, Petr Mladek,
	Benoît Cousson, Alexios Zavras, John Stultz, David Sterba,
	Thomas Gleixner, letux-kernel, Allison Randal, linux-arm-kernel,
	Greg Kroah-Hartman, linux-mmc, linux-kernel, Sakari Ailus,
	kernel

On Thu,  7 Nov 2019 11:30:34 +0100, "H. Nikolaus Schaller" wrote:
> The standard method for sdio devices connected to
> an sdio interface is to define them as a child node
> like we can see with wlcore.
> 
> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
> Acked-by: Kalle Valo <kvalo@codeaurora.org>
> ---
>  .../bindings/net/wireless/ti,wl1251.txt       | 26 +++++++++++++++++++
>  1 file changed, 26 insertions(+)
> 

Reviewed-by: Rob Herring <robh@kernel.org>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 01/12] Documentation: dt: wireless: update wl1251 for sdio
  2019-11-07 10:30 ` [PATCH v3 01/12] Documentation: dt: wireless: update wl1251 for sdio H. Nikolaus Schaller
  2019-11-13 13:33   ` Rob Herring
@ 2019-11-14 14:11   ` Ulf Hansson
  1 sibling, 0 replies; 23+ messages in thread
From: Ulf Hansson @ 2019-11-14 14:11 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Mark Rutland, Kefeng Wang, DTML, Tony Lindgren, linux-wireless,
	Bjorn Helgaas, netdev, linux-omap, Rafael J. Wysocki,
	Russell King, Mike Rapoport, Yangtao Li, Kalle Valo, Petr Mladek,
	Benoît Cousson, Alexios Zavras, Rob Herring, John Stultz,
	David Sterba, Thomas Gleixner,
	Discussions about the Letux Kernel, Allison Randal, Linux ARM,
	Greg Kroah-Hartman, linux-mmc, Linux Kernel Mailing List,
	Sakari Ailus, kernel

On Thu, 7 Nov 2019 at 11:32, H. Nikolaus Schaller <hns@goldelico.com> wrote:
>
> The standard method for sdio devices connected to
> an sdio interface is to define them as a child node
> like we can see with wlcore.
>
> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
> Acked-by: Kalle Valo <kvalo@codeaurora.org>
> ---
>  .../bindings/net/wireless/ti,wl1251.txt       | 26 +++++++++++++++++++
>  1 file changed, 26 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/net/wireless/ti,wl1251.txt b/Documentation/devicetree/bindings/net/wireless/ti,wl1251.txt
> index bb2fcde6f7ff..f38950560982 100644
> --- a/Documentation/devicetree/bindings/net/wireless/ti,wl1251.txt
> +++ b/Documentation/devicetree/bindings/net/wireless/ti,wl1251.txt
> @@ -35,3 +35,29 @@ Examples:
>                 ti,power-gpio = <&gpio3 23 GPIO_ACTIVE_HIGH>; /* 87 */
>         };
>  };
> +
> +&mmc3 {
> +       vmmc-supply = <&wlan_en>;
> +
> +       bus-width = <4>;
> +       non-removable;
> +       ti,non-removable;
> +       cap-power-off-card;
> +
> +       pinctrl-names = "default";
> +       pinctrl-0 = <&mmc3_pins>;
> +
> +       #address-cells = <1>;
> +       #size-cells = <0>;
> +
> +       wlan: wifi@1 {
> +               compatible = "ti,wl1251";
> +
> +               reg = <1>;
> +
> +               interrupt-parent = <&gpio1>;
> +               interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;  /* GPIO_21 */
> +
> +               ti,wl1251-has-eeprom;
> +       };
> +};

One minor thing, the "ti,power-gpio" is not required anymore, as it's
not needed for the SDIO case for pandora.

Please move it to an option section.

Kind regards
Uffe

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 02/12] net: wireless: ti: wl1251 add device tree support
  2019-11-07 10:30 ` [PATCH v3 02/12] net: wireless: ti: wl1251 add device tree support H. Nikolaus Schaller
@ 2019-11-14 14:12   ` Ulf Hansson
  0 siblings, 0 replies; 23+ messages in thread
From: Ulf Hansson @ 2019-11-14 14:12 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Mark Rutland, Kefeng Wang, DTML, Tony Lindgren, linux-wireless,
	Bjorn Helgaas, netdev, linux-omap, Rafael J. Wysocki,
	Russell King, Mike Rapoport, Yangtao Li, Kalle Valo, Petr Mladek,
	Benoît Cousson, Alexios Zavras, Rob Herring, John Stultz,
	David Sterba, Thomas Gleixner,
	Discussions about the Letux Kernel, Allison Randal, Linux ARM,
	Greg Kroah-Hartman, linux-mmc, Linux Kernel Mailing List,
	Sakari Ailus, kernel

On Thu, 7 Nov 2019 at 11:31, H. Nikolaus Schaller <hns@goldelico.com> wrote:
>
> We will have the wl1251 defined as a child node of the mmc interface
> and can read setup for gpios, interrupts and the ti,use-eeprom
> property from there instead of pdata to be provided by pdata-quirks.
>
> Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")
>
> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
> Acked-by: Kalle Valo <kvalo@codeaurora.org>
> ---
>  drivers/net/wireless/ti/wl1251/sdio.c | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
>
> diff --git a/drivers/net/wireless/ti/wl1251/sdio.c b/drivers/net/wireless/ti/wl1251/sdio.c
> index 677f1146ccf0..c54a273713ed 100644
> --- a/drivers/net/wireless/ti/wl1251/sdio.c
> +++ b/drivers/net/wireless/ti/wl1251/sdio.c
> @@ -16,6 +16,9 @@
>  #include <linux/irq.h>
>  #include <linux/pm_runtime.h>
>  #include <linux/gpio.h>
> +#include <linux/of.h>
> +#include <linux/of_gpio.h>
> +#include <linux/of_irq.h>
>
>  #include "wl1251.h"
>
> @@ -217,6 +220,7 @@ static int wl1251_sdio_probe(struct sdio_func *func,
>         struct ieee80211_hw *hw;
>         struct wl1251_sdio *wl_sdio;
>         const struct wl1251_platform_data *wl1251_board_data;
> +       struct device_node *np = func->dev.of_node;
>
>         hw = wl1251_alloc_hw();
>         if (IS_ERR(hw))
> @@ -248,6 +252,15 @@ static int wl1251_sdio_probe(struct sdio_func *func,
>                 wl->power_gpio = wl1251_board_data->power_gpio;
>                 wl->irq = wl1251_board_data->irq;
>                 wl->use_eeprom = wl1251_board_data->use_eeprom;
> +       } else if (np) {
> +               wl->use_eeprom =of_property_read_bool(np, "ti,wl1251-has-eeprom");
> +               wl->power_gpio = of_get_named_gpio(np, "ti,power-gpio", 0);

This isn't needed as it seems. Perhaps remove or keep it as optional?

> +               wl->irq = of_irq_get(np, 0);
> +
> +               if (wl->power_gpio == -EPROBE_DEFER || wl->irq == -EPROBE_DEFER) {
> +                       ret = -EPROBE_DEFER;
> +                       goto disable;
> +               }
>         }
>
>         if (gpio_is_valid(wl->power_gpio)) {
> --

Kind regards
Uffe

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again
  2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
                   ` (11 preceding siblings ...)
  2019-11-07 10:30 ` [PATCH v3 12/12] net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions H. Nikolaus Schaller
@ 2019-11-14 14:18 ` Ulf Hansson
  2019-11-14 15:15   ` H. Nikolaus Schaller
  12 siblings, 1 reply; 23+ messages in thread
From: Ulf Hansson @ 2019-11-14 14:18 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Mark Rutland, Kefeng Wang, DTML, Tony Lindgren, linux-wireless,
	Bjorn Helgaas, Discussions about the Letux Kernel,
	Rafael J. Wysocki, Russell King, Mike Rapoport, Yangtao Li,
	Kalle Valo, Petr Mladek, Benoît Cousson, kernel,
	Alexios Zavras, Rob Herring, John Stultz, David Sterba,
	Thomas Gleixner, linux-omap, Allison Randal, Linux ARM,
	Greg Kroah-Hartman, linux-mmc, Linux Kernel Mailing List,
	Sakari Ailus, netdev

On Thu, 7 Nov 2019 at 11:31, H. Nikolaus Schaller <hns@goldelico.com> wrote:
>
>
> * add a revisit note for special wl1251 handling code because it should
>   be solved more generic in mmc core - suggested by Ulf Hansson <ulf.hansson@linaro.org>
> * remove init_card callback from platform_data/hsmmc-omap.h - suggested by Ulf Hansson <ulf.hansson@linaro.org>
> * remove obstructive always-on for vwlan regulator - suggested by Ulf Hansson <ulf.hansson@linaro.org>
> * rename DT node - suggested by Rob Herring <robh@kernel.org>
> * fix ARM: dts: subject prefix - suggested by Tony Lindgren <tony@atomide.com>
> * also remove omap2_hsmmc_info and obc-y line in Makefile - suggested by Tony Lindgren <tony@atomide.com>

No further comments from my side. Let's just agree on how to deal with
the ti,power-gpio, then I can apply this.

Thanks a lot for fixing all this mess!

Kind regards
Uffe

>
> PATCH V2 2019-10-19 20:41:47:
> * added acked-by for wl1251 patches - Kalle Valo <kvalo@codeaurora.org>
> * really removed old pdata-quirks code (not through #if 0)
> * splited out a partial revert of
>         efdfeb079cc3b ("regulator: fixed: Convert to use GPIO descriptor only")
>   because that was introduced after v4.19 and stops the removal of
>   the pdata-quirks patch from cleanly applying to v4.9, v4.14, v4.19
>   - reported by Sasha Levin <sashal@kernel.org>
> * added a new patch to remove old omap hsmmc since pdata quirks
>   were last user - suggested by Tony Lindgren <tony@atomide.com>
>
> PATCH V1 2019-10-18 22:25:39:
> Here we have a set of scattered patches to make the OpenPandora WiFi work again.
>
> v4.7 did break the pdata-quirks which made the mmc3 interface
> fail completely, because some code now assumes device tree
> based instantiation.
>
> Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")
>
> v4.11 did break the sdio qirks for wl1251 which made the driver no longer
> load, although the device was found as an sdio client.
>
> Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")
>
> To solve these issues:
> * we convert mmc3 and wl1251 initialization from pdata-quirks
>   to device tree
> * we make the wl1251 driver read properties from device tree
> * we fix the mmc core vendor ids and quirks
> * we fix the wl1251 (and wl1271) driver to use only vendor ids
>   from header file instead of (potentially conflicting) local
>   definitions
>
>
> H. Nikolaus Schaller (12):
>   Documentation: dt: wireless: update wl1251 for sdio
>   net: wireless: ti: wl1251 add device tree support
>   ARM: dts: pandora-common: define wl1251 as child node of mmc3
>   mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid
>     of pandora_wl1251_init_card
>   omap: pdata-quirks: revert pandora specific gpiod additions
>   omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251
>   omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile
>   mmc: host: omap-hsmmc: remove init_card pdata callback from pdata
>   mmc: sdio: fix wl1251 vendor id
>   mmc: core: fix wl1251 sdio quirks
>   net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition
>   net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions
>
>  .../bindings/net/wireless/ti,wl1251.txt       |  26 +++
>  arch/arm/boot/dts/omap3-pandora-common.dtsi   |  36 +++-
>  arch/arm/mach-omap2/Makefile                  |   3 -
>  arch/arm/mach-omap2/common.h                  |   1 -
>  arch/arm/mach-omap2/hsmmc.c                   | 171 ------------------
>  arch/arm/mach-omap2/hsmmc.h                   |  32 ----
>  arch/arm/mach-omap2/pdata-quirks.c            | 105 -----------
>  drivers/mmc/core/quirks.h                     |   7 +
>  drivers/mmc/host/omap_hsmmc.c                 |  30 ++-
>  drivers/net/wireless/ti/wl1251/sdio.c         |  23 ++-
>  drivers/net/wireless/ti/wlcore/sdio.c         |   8 -
>  include/linux/mmc/sdio_ids.h                  |   2 +
>  include/linux/platform_data/hsmmc-omap.h      |   3 -
>  13 files changed, 111 insertions(+), 336 deletions(-)
>  delete mode 100644 arch/arm/mach-omap2/hsmmc.c
>  delete mode 100644 arch/arm/mach-omap2/hsmmc.h
>
> --
> 2.23.0
>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again
  2019-11-14 14:18 ` [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again Ulf Hansson
@ 2019-11-14 15:15   ` H. Nikolaus Schaller
  2019-11-15  9:29     ` Ulf Hansson
  0 siblings, 1 reply; 23+ messages in thread
From: H. Nikolaus Schaller @ 2019-11-14 15:15 UTC (permalink / raw)
  To: Ulf Hansson
  Cc: Mark Rutland, Kefeng Wang, DTML, Tony Lindgren, linux-wireless,
	Bjorn Helgaas, Discussions about the Letux Kernel,
	Rafael J. Wysocki, Russell King, Mike Rapoport, Yangtao Li,
	Kalle Valo, Petr Mladek, Benoît Cousson, kernel,
	Alexios Zavras, Rob Herring, John Stultz, David Sterba,
	Thomas Gleixner, linux-omap, Allison Randal, Linux ARM,
	Greg Kroah-Hartman, linux-mmc, Linux Kernel Mailing List,
	Sakari Ailus, netdev

Hi Ulf,

> Am 14.11.2019 um 15:18 schrieb Ulf Hansson <ulf.hansson@linaro.org>:
> 
> On Thu, 7 Nov 2019 at 11:31, H. Nikolaus Schaller <hns@goldelico.com> wrote:
>> 
>> 
>> * add a revisit note for special wl1251 handling code because it should
>>  be solved more generic in mmc core - suggested by Ulf Hansson <ulf.hansson@linaro.org>
>> * remove init_card callback from platform_data/hsmmc-omap.h - suggested by Ulf Hansson <ulf.hansson@linaro.org>
>> * remove obstructive always-on for vwlan regulator - suggested by Ulf Hansson <ulf.hansson@linaro.org>
>> * rename DT node - suggested by Rob Herring <robh@kernel.org>
>> * fix ARM: dts: subject prefix - suggested by Tony Lindgren <tony@atomide.com>
>> * also remove omap2_hsmmc_info and obc-y line in Makefile - suggested by Tony Lindgren <tony@atomide.com>
> 
> No further comments from my side. Let's just agree on how to deal with
> the ti,power-gpio, then I can apply this.

I'd say it can be a separate patch since it does not fix the Pandora
issues, but is a new and independent optimization.

And in case someone complains and uses it for some out-of tree purpose
it can be discussed or even be reverted easier if it is a separate patch.

I can do it in the next days.

> Thanks a lot for fixing all this mess!

I hope the users also appreciate our work.

Best regards,
Nikolaus

> 
> Kind regards
> Uffe
> 
>> 
>> PATCH V2 2019-10-19 20:41:47:
>> * added acked-by for wl1251 patches - Kalle Valo <kvalo@codeaurora.org>
>> * really removed old pdata-quirks code (not through #if 0)
>> * splited out a partial revert of
>>        efdfeb079cc3b ("regulator: fixed: Convert to use GPIO descriptor only")
>>  because that was introduced after v4.19 and stops the removal of
>>  the pdata-quirks patch from cleanly applying to v4.9, v4.14, v4.19
>>  - reported by Sasha Levin <sashal@kernel.org>
>> * added a new patch to remove old omap hsmmc since pdata quirks
>>  were last user - suggested by Tony Lindgren <tony@atomide.com>
>> 
>> PATCH V1 2019-10-18 22:25:39:
>> Here we have a set of scattered patches to make the OpenPandora WiFi work again.
>> 
>> v4.7 did break the pdata-quirks which made the mmc3 interface
>> fail completely, because some code now assumes device tree
>> based instantiation.
>> 
>> Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")
>> 
>> v4.11 did break the sdio qirks for wl1251 which made the driver no longer
>> load, although the device was found as an sdio client.
>> 
>> Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")
>> 
>> To solve these issues:
>> * we convert mmc3 and wl1251 initialization from pdata-quirks
>>  to device tree
>> * we make the wl1251 driver read properties from device tree
>> * we fix the mmc core vendor ids and quirks
>> * we fix the wl1251 (and wl1271) driver to use only vendor ids
>>  from header file instead of (potentially conflicting) local
>>  definitions
>> 
>> 
>> H. Nikolaus Schaller (12):
>>  Documentation: dt: wireless: update wl1251 for sdio
>>  net: wireless: ti: wl1251 add device tree support
>>  ARM: dts: pandora-common: define wl1251 as child node of mmc3
>>  mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid
>>    of pandora_wl1251_init_card
>>  omap: pdata-quirks: revert pandora specific gpiod additions
>>  omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251
>>  omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile
>>  mmc: host: omap-hsmmc: remove init_card pdata callback from pdata
>>  mmc: sdio: fix wl1251 vendor id
>>  mmc: core: fix wl1251 sdio quirks
>>  net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition
>>  net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions
>> 
>> .../bindings/net/wireless/ti,wl1251.txt       |  26 +++
>> arch/arm/boot/dts/omap3-pandora-common.dtsi   |  36 +++-
>> arch/arm/mach-omap2/Makefile                  |   3 -
>> arch/arm/mach-omap2/common.h                  |   1 -
>> arch/arm/mach-omap2/hsmmc.c                   | 171 ------------------
>> arch/arm/mach-omap2/hsmmc.h                   |  32 ----
>> arch/arm/mach-omap2/pdata-quirks.c            | 105 -----------
>> drivers/mmc/core/quirks.h                     |   7 +
>> drivers/mmc/host/omap_hsmmc.c                 |  30 ++-
>> drivers/net/wireless/ti/wl1251/sdio.c         |  23 ++-
>> drivers/net/wireless/ti/wlcore/sdio.c         |   8 -
>> include/linux/mmc/sdio_ids.h                  |   2 +
>> include/linux/platform_data/hsmmc-omap.h      |   3 -
>> 13 files changed, 111 insertions(+), 336 deletions(-)
>> delete mode 100644 arch/arm/mach-omap2/hsmmc.c
>> delete mode 100644 arch/arm/mach-omap2/hsmmc.h
>> 
>> --
>> 2.23.0
>> 


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again
  2019-11-14 15:15   ` H. Nikolaus Schaller
@ 2019-11-15  9:29     ` Ulf Hansson
  0 siblings, 0 replies; 23+ messages in thread
From: Ulf Hansson @ 2019-11-15  9:29 UTC (permalink / raw)
  To: H. Nikolaus Schaller
  Cc: Mark Rutland, Kefeng Wang, Petr Mladek, Tony Lindgren, linux-mmc,
	Bjorn Helgaas, netdev, Discussions about the Letux Kernel,
	Rafael J. Wysocki, Russell King, Mike Rapoport, Yangtao Li,
	Kalle Valo, DTML, Sakari Ailus, Alexios Zavras, Rob Herring,
	John Stultz, David Sterba, Thomas Gleixner, linux-omap,
	Allison Randal, Linux ARM, Greg Kroah-Hartman, linux-wireless,
	Linux Kernel Mailing List, Benoît Cousson, kernel

On Thu, 14 Nov 2019 at 16:16, H. Nikolaus Schaller <hns@goldelico.com> wrote:
>
> Hi Ulf,
>
> > Am 14.11.2019 um 15:18 schrieb Ulf Hansson <ulf.hansson@linaro.org>:
> >
> > On Thu, 7 Nov 2019 at 11:31, H. Nikolaus Schaller <hns@goldelico.com> wrote:
> >>
> >>
> >> * add a revisit note for special wl1251 handling code because it should
> >>  be solved more generic in mmc core - suggested by Ulf Hansson <ulf.hansson@linaro.org>
> >> * remove init_card callback from platform_data/hsmmc-omap.h - suggested by Ulf Hansson <ulf.hansson@linaro.org>
> >> * remove obstructive always-on for vwlan regulator - suggested by Ulf Hansson <ulf.hansson@linaro.org>
> >> * rename DT node - suggested by Rob Herring <robh@kernel.org>
> >> * fix ARM: dts: subject prefix - suggested by Tony Lindgren <tony@atomide.com>
> >> * also remove omap2_hsmmc_info and obc-y line in Makefile - suggested by Tony Lindgren <tony@atomide.com>
> >
> > No further comments from my side. Let's just agree on how to deal with
> > the ti,power-gpio, then I can apply this.
>
> I'd say it can be a separate patch since it does not fix the Pandora
> issues, but is a new and independent optimization.
>
> And in case someone complains and uses it for some out-of tree purpose
> it can be discussed or even be reverted easier if it is a separate patch.
>
> I can do it in the next days.

Okay, that sounds reasonable.

In the meantime, I have queued up the series on my next branch (for v5.5).

I fixed up a couple of complaints from checkpatch, and also added
stable tags for the first two patches in the series, as that what
missing.

Kind regards
Uffe


>
> > Thanks a lot for fixing all this mess!
>
> I hope the users also appreciate our work.
>
> Best regards,
> Nikolaus
>
> >
> > Kind regards
> > Uffe
> >
> >>
> >> PATCH V2 2019-10-19 20:41:47:
> >> * added acked-by for wl1251 patches - Kalle Valo <kvalo@codeaurora.org>
> >> * really removed old pdata-quirks code (not through #if 0)
> >> * splited out a partial revert of
> >>        efdfeb079cc3b ("regulator: fixed: Convert to use GPIO descriptor only")
> >>  because that was introduced after v4.19 and stops the removal of
> >>  the pdata-quirks patch from cleanly applying to v4.9, v4.14, v4.19
> >>  - reported by Sasha Levin <sashal@kernel.org>
> >> * added a new patch to remove old omap hsmmc since pdata quirks
> >>  were last user - suggested by Tony Lindgren <tony@atomide.com>
> >>
> >> PATCH V1 2019-10-18 22:25:39:
> >> Here we have a set of scattered patches to make the OpenPandora WiFi work again.
> >>
> >> v4.7 did break the pdata-quirks which made the mmc3 interface
> >> fail completely, because some code now assumes device tree
> >> based instantiation.
> >>
> >> Fixes: 81eef6ca9201 ("mmc: omap_hsmmc: Use dma_request_chan() for requesting DMA channel")
> >>
> >> v4.11 did break the sdio qirks for wl1251 which made the driver no longer
> >> load, although the device was found as an sdio client.
> >>
> >> Fixes: 884f38607897 ("mmc: core: move some sdio IDs out of quirks file")
> >>
> >> To solve these issues:
> >> * we convert mmc3 and wl1251 initialization from pdata-quirks
> >>  to device tree
> >> * we make the wl1251 driver read properties from device tree
> >> * we fix the mmc core vendor ids and quirks
> >> * we fix the wl1251 (and wl1271) driver to use only vendor ids
> >>  from header file instead of (potentially conflicting) local
> >>  definitions
> >>
> >>
> >> H. Nikolaus Schaller (12):
> >>  Documentation: dt: wireless: update wl1251 for sdio
> >>  net: wireless: ti: wl1251 add device tree support
> >>  ARM: dts: pandora-common: define wl1251 as child node of mmc3
> >>  mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid
> >>    of pandora_wl1251_init_card
> >>  omap: pdata-quirks: revert pandora specific gpiod additions
> >>  omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251
> >>  omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile
> >>  mmc: host: omap-hsmmc: remove init_card pdata callback from pdata
> >>  mmc: sdio: fix wl1251 vendor id
> >>  mmc: core: fix wl1251 sdio quirks
> >>  net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition
> >>  net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions
> >>
> >> .../bindings/net/wireless/ti,wl1251.txt       |  26 +++
> >> arch/arm/boot/dts/omap3-pandora-common.dtsi   |  36 +++-
> >> arch/arm/mach-omap2/Makefile                  |   3 -
> >> arch/arm/mach-omap2/common.h                  |   1 -
> >> arch/arm/mach-omap2/hsmmc.c                   | 171 ------------------
> >> arch/arm/mach-omap2/hsmmc.h                   |  32 ----
> >> arch/arm/mach-omap2/pdata-quirks.c            | 105 -----------
> >> drivers/mmc/core/quirks.h                     |   7 +
> >> drivers/mmc/host/omap_hsmmc.c                 |  30 ++-
> >> drivers/net/wireless/ti/wl1251/sdio.c         |  23 ++-
> >> drivers/net/wireless/ti/wlcore/sdio.c         |   8 -
> >> include/linux/mmc/sdio_ids.h                  |   2 +
> >> include/linux/platform_data/hsmmc-omap.h      |   3 -
> >> 13 files changed, 111 insertions(+), 336 deletions(-)
> >> delete mode 100644 arch/arm/mach-omap2/hsmmc.c
> >> delete mode 100644 arch/arm/mach-omap2/hsmmc.h
> >>
> >> --
> >> 2.23.0
> >>
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, back to index

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-07 10:30 [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again H. Nikolaus Schaller
2019-11-07 10:30 ` [PATCH v3 01/12] Documentation: dt: wireless: update wl1251 for sdio H. Nikolaus Schaller
2019-11-13 13:33   ` Rob Herring
2019-11-14 14:11   ` Ulf Hansson
2019-11-07 10:30 ` [PATCH v3 02/12] net: wireless: ti: wl1251 add device tree support H. Nikolaus Schaller
2019-11-14 14:12   ` Ulf Hansson
2019-11-07 10:30 ` [PATCH v3 03/12] ARM: dts: pandora-common: define wl1251 as child node of mmc3 H. Nikolaus Schaller
2019-11-08 17:10   ` Tony Lindgren
2019-11-07 10:30 ` [PATCH v3 04/12] mmc: host: omap_hsmmc: add code for special init of wl1251 to get rid of pandora_wl1251_init_card H. Nikolaus Schaller
2019-11-07 10:30 ` [PATCH v3 05/12] omap: pdata-quirks: revert pandora specific gpiod additions H. Nikolaus Schaller
2019-11-08 17:10   ` Tony Lindgren
2019-11-07 10:30 ` [PATCH v3 06/12] omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251 H. Nikolaus Schaller
2019-11-08 17:11   ` Tony Lindgren
2019-11-07 10:30 ` [PATCH v3 07/12] omap: remove omap2_hsmmc_info in old hsmmc.[ch] and update Makefile H. Nikolaus Schaller
2019-11-08 17:11   ` Tony Lindgren
2019-11-07 10:30 ` [PATCH v3 08/12] mmc: host: omap-hsmmc: remove init_card pdata callback from pdata H. Nikolaus Schaller
2019-11-07 10:30 ` [PATCH v3 09/12] mmc: sdio: fix wl1251 vendor id H. Nikolaus Schaller
2019-11-07 10:30 ` [PATCH v3 10/12] mmc: core: fix wl1251 sdio quirks H. Nikolaus Schaller
2019-11-07 10:30 ` [PATCH v3 11/12] net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition H. Nikolaus Schaller
2019-11-07 10:30 ` [PATCH v3 12/12] net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions H. Nikolaus Schaller
2019-11-14 14:18 ` [PATCH v3 00/12] OpenPandora: make wl1251 connected to mmc3 sdio port of OpenPandora work again Ulf Hansson
2019-11-14 15:15   ` H. Nikolaus Schaller
2019-11-15  9:29     ` Ulf Hansson

Linux-ARM-Kernel Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/0 linux-arm-kernel/git/0.git
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/1 linux-arm-kernel/git/1.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-arm-kernel linux-arm-kernel/ https://lore.kernel.org/linux-arm-kernel \
		linux-arm-kernel@lists.infradead.org
	public-inbox-index linux-arm-kernel

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.infradead.lists.linux-arm-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git