ARM: dts: sun7i: Add wifi dt node on Banana Pro
The Banana Pro has an AMPAK AP6181 WiFi+Bluetooth module. The WiFi part is a BCM43362 IC connected to MMC3 of the A20 SoC via SDIO. The IC also takes a power enable signal via GPIO. This commit adds a device-tree node to power it up, so the mmc subsys can scan it, and enables the mmc controller which is connected to it. As the wifi enable pin of the AP6181 module is not really a regulator, switch the mmc3 node to the mmc-pwrseq framework for controlling it. This more accurately reflectes how the hardware actually works. Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
This commit is contained in:
parent
0183c256f3
commit
f2cb904f07
|
@ -76,6 +76,13 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
wifi_pwrseq: wifi-pwrseq {
|
||||||
|
compatible = "mmc-pwrseq-simple";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&vmmc3_pin_bananapro>;
|
||||||
|
reset-gpios = <&pio 7 22 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
reg_gmac_3v3: gmac-3v3 {
|
reg_gmac_3v3: gmac-3v3 {
|
||||||
compatible = "regulator-fixed";
|
compatible = "regulator-fixed";
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
|
@ -87,17 +94,6 @@
|
||||||
enable-active-high;
|
enable-active-high;
|
||||||
gpio = <&pio 7 23 GPIO_ACTIVE_HIGH>;
|
gpio = <&pio 7 23 GPIO_ACTIVE_HIGH>;
|
||||||
};
|
};
|
||||||
|
|
||||||
reg_vmmc3: vmmc3 {
|
|
||||||
compatible = "regulator-fixed";
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&vmmc3_pin_bananapro>;
|
|
||||||
regulator-name = "vmmc3";
|
|
||||||
regulator-min-microvolt = <3300000>;
|
|
||||||
regulator-max-microvolt = <3300000>;
|
|
||||||
enable-active-high;
|
|
||||||
gpio = <&pio 7 22 GPIO_ACTIVE_HIGH>;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
&ahci {
|
&ahci {
|
||||||
|
@ -170,10 +166,19 @@
|
||||||
&mmc3 {
|
&mmc3 {
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
pinctrl-0 = <&mmc3_pins_a>;
|
pinctrl-0 = <&mmc3_pins_a>;
|
||||||
vmmc-supply = <®_vmmc3>;
|
vmmc-supply = <®_vcc3v3>;
|
||||||
|
mmc-pwrseq = <&wifi_pwrseq>;
|
||||||
bus-width = <4>;
|
bus-width = <4>;
|
||||||
non-removable;
|
non-removable;
|
||||||
status = "okay";
|
status = "okay";
|
||||||
|
|
||||||
|
brcmf: bcrmf@1 {
|
||||||
|
reg = <1>;
|
||||||
|
compatible = "brcm,bcm4329-fmac";
|
||||||
|
interrupt-parent = <&pio>;
|
||||||
|
interrupts = <7 15 IRQ_TYPE_LEVEL_LOW>;
|
||||||
|
interrupt-names = "host-wake";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
&ohci0 {
|
&ohci0 {
|
||||||
|
|
Loading…
Reference in a new issue