Thread (23 messages) flat view 23 messages, 4 authors, 2019-10-31

Re: [PATCH v2 03/11] DTS: ARM: pandora-common: define wl1251 as child node of mmc3

From: H. Nikolaus Schaller <hidden>
Date: 2019-10-30 17:25:11
Also in: linux-arm-kernel, linux-devicetree, linux-mmc, linux-omap, linux-wireless, lkml, stable

Am 30.10.2019 um 17:44 schrieb Ulf Hansson [off-list ref]:

On Sat, 19 Oct 2019 at 20:42, H. Nikolaus Schaller [off-list ref] wrote:
quoted
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 <redacted>
Cc: <redacted> # 4.7.0
---
arch/arm/boot/dts/omap3-pandora-common.dtsi | 37 +++++++++++++++++++--
1 file changed, 35 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..c595b3eb314d 100644
--- a/arch/arm/boot/dts/omap3-pandora-common.dtsi
+++ b/arch/arm/boot/dts/omap3-pandora-common.dtsi
@@ -226,6 +226,18 @@
               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>;
I doubt these are correct.

I guess this should be in the range of 2.7V-3.6V.
Well, it is a gpio which enables some LDO inside the
wifi chip. We do not really know the voltage it produces
and it does not matter. The gpio voltage is 1.8V.

Basically we use a fixed-regulator to "translate" a
regulator into a control gpio because the mmc interface
wants to see a vmmc-supply.
quoted
+               startup-delay-us = <50000>;
+               regulator-always-on;
Always on?
Oops. Yes, that is something to check!
quoted
+               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 +534,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: wl1251@1 {
+               compatible = "ti,wl1251";
+
+               reg = <1>;
+
+               interrupt-parent = <&gpio1>;
+               interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;  /* GPIO_21 */
+
+               ti,wl1251-has-eeprom;
+       };
};

/* bluetooth*/
--
2.19.1
BR and thanks,
Nikolaus
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help