Hi Heiko On Sat, Aug 8, 2015 at 11:05 PM, Heiko Stübner <heiko@xxxxxxxxx> wrote: > Hi Michael, > > Am Freitag, 7. August 2015, 16:12:05 schrieb Michael Trimarchi: >> This patch enable wifi support for the firefly board. >> Card answer to me that support from 2.0V but regulator is connected >> to 1.8V, so voltage capability is wrong. In order to avoid this >> we just defined a fixed regulator trigger by the wifi enable gpio >> that report 2.0V. >> >> Signed-off-by: Michael Trimarchi <michael@xxxxxxxxxxxxxxxxxxxx> >> --- >> arch/arm/boot/dts/rk3288-firefly.dtsi | 43 >> +++++++++++++++++++++++++++++++++-- 1 file changed, 41 insertions(+), 2 >> deletions(-) >> >> diff --git a/arch/arm/boot/dts/rk3288-firefly.dtsi >> b/arch/arm/boot/dts/rk3288-firefly.dtsi index 0b42372..fcf234e 100644 >> --- a/arch/arm/boot/dts/rk3288-firefly.dtsi >> +++ b/arch/arm/boot/dts/rk3288-firefly.dtsi >> @@ -116,6 +116,28 @@ >> vin-supply = <&vcc_io>; >> }; >> >> + io_domains: io-domains { >> + compatible = "rockchip,rk3288-io-voltage-domain"; >> + rockchip,grf = <&grf>; >> + >> + wifi-supply = <&vcc_18>; >> + audio-supply = <&vcca_33>; >> + }; > > should be a separate patch and include the other interesting io-domains as > well. > This is alredy in mainline >> + >> + vcc_wifi: wifi-regulator { >> + compatible = "regulator-fixed"; >> + enable-active-high; >> + gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>; >> + pinctrl-names = "default"; >> + pinctrl-0 = <&sdio0_pwr>; >> + regulator-name = "vcc_wifi"; >> + regulator-min-microvolt = <2000000>; >> + regulator-max-microvolt = <2000000>; >> + startup-delay-us = <100000>; >> + regulator-always-on; >> + vin-supply = <&vcc_io>; >> + }; >> + >> vcc_flash: flash-regulator { >> compatible = "regulator-fixed"; >> regulator-name = "vcc_flash"; >> @@ -437,13 +459,30 @@ >> &sdio0 { >> broken-cd; >> bus-width = <4>; >> + clock-freq-min-max = <400000 50000000>; >> disable-wp; >> non-removable; >> + cap-sd-highspeed; >> num-slots = <1>; >> pinctrl-names = "default"; >> - pinctrl-0 = <&sdio0_bus4>, <&sdio0_cmd>, <&sdio0_clk>; >> - vmmc-supply = <&vcc_18>; >> + pinctrl-0 = <&sdio0_bus4>, <&sdio0_cmd>, <&sdio0_clk>, <&sdio0_int>; >> + >> + sd-uhs-sdr50; >> + sd-uhs-sdr104; >> + sd-uhs-ddr50; > > we don't have mmc tuning capabilities yet, so please no sd-uhs-* stuff. That > way you should also be able to leave out the clock-freq-min-max above, as > regular "highspeed" does not venture above the 50MHz limit. > >> + cap-sdio-irq; >> + >> + vmmc-supply = <&vcc_wifi>; > > the original supply is actually wrong in the dts. vcc_18 is the io voltage > used on the > pins _to_ the card, not to supply the card itself. So vcc_18 is actually the > so called vqmmc-supply. > vmmc-supply is done regularly from vcc_io. So your voltage hack above can go > away too. > > Bringup should also use a mmc-power-sequency so you can make sure the > rtc_clock is running, which is also needed by the wifi module. > > >> status = "okay"; > > missing #address-cells and #size-cells values for the subnodes > I can confirm that patch 2 fix the issue of subnodes. I will try to complete here the support Michael >> + >> + brcmf: bcrmf@0 { >> + compatible = "brcm,bcm4329-fmac"; >> + interrupt-parent = <&gpio4>; >> + reg = <0>; >> + interrupts = <30 IRQ_TYPE_EDGE_FALLING>; >> + interrupt-names = "host-wake"; >> + status = "okay"; >> + }; >> }; >> >> &sdmmc { > > I took the liberty to move stuff around how it should look like, but did not > find the time to actually test this. So maybe you can take a look at the > attached patches. > > > Heiko -- | Michael Nazzareno Trimarchi Amarula Solutions BV | | COO - Founder Cruquiuskade 47 | | +31(0)851119172 Amsterdam 1018 AM NL | | [`as] http://www.amarulasolutions.com | -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html