于 2018年7月24日 GMT+08:00 上午10:21:59, Chen-Yu Tsai <wens@xxxxxxxx> 写到: >On Tue, Jul 24, 2018 at 9:15 AM, Icenowy Zheng <icenowy@xxxxxxx> wrote: >> The Pine H64 model A has a Wi-Fi module connector and the model B has >an >> on-board RTL8723BS Wi-Fi module. >> >> Add support for them. For model A, as it's not defaultly present, >keep >> it disabled now. > >Nope. Pine64 actually has two WiFi/BT modules. And they require >different >device tree snippets for both the WiFi and BT side. This is better >resolved >with device tree overlays. > >I have both, though I've yet found time to work on them. I have also both. The skeleton here can get the Wi-Fi of both to work. > >ChenYu > >> Signed-off-by: Icenowy Zheng <icenowy@xxxxxxx> >> --- >> .../allwinner/sun50i-h6-pine-h64-model-b.dts | 8 +++++ >> .../boot/dts/allwinner/sun50i-h6-pine-h64.dts | 29 >+++++++++++++++++++ >> 2 files changed, 37 insertions(+) >> >> diff --git >a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-model-b.dts >b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-model-b.dts >> index d0fcc25efb00..d0f775613c9b 100644 >> --- a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-model-b.dts >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-model-b.dts >> @@ -18,3 +18,11 @@ >> }; >> }; >> }; >> + >> +&mmc1 { >> + status = "okay"; >> +}; >> + >> +&wifi_pwrseq { >> + status = "okay"; >> +}; >> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts >b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts >> index a85867f8b684..75db6d4139bf 100644 >> --- a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts >> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dts >> @@ -40,6 +40,12 @@ >> gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 >*/ >> }; >> }; >> + >> + wifi_pwrseq: wifi_pwrseq { >> + compatible = "mmc-pwrseq-simple"; >> + reset-gpios = <&r_pio 1 3 GPIO_ACTIVE_LOW>; /* PL2 */ >> + status = "disabled"; >> + }; >> }; >> >> &mmc0 { >> @@ -50,6 +56,17 @@ >> status = "okay"; >> }; >> >> +&mmc1 { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&mmc1_pins>; >> + vmmc-supply = <®_cldo2>; >> + vqmmc-supply = <®_bldo2>; >> + mmc-pwrseq = <&wifi_pwrseq>; >> + bus-width = <4>; >> + non-removable; >> + status = "disabled"; >> +}; >> + >> &mmc2 { >> pinctrl-names = "default"; >> pinctrl-0 = <&mmc2_pins>; >> @@ -128,12 +145,24 @@ >> }; >> >> reg_cldo2: cldo2 { >> + /* >> + * This regulator is connected with >CLDO3. >> + * Before the kernel can support >synchronized >> + * enable of coupled regulators, keep >them >> + * both always on as a ugly hack. >> + */ >> + regulator-always-on; >> regulator-min-microvolt = <3300000>; >> regulator-max-microvolt = <3300000>; >> regulator-name = "vcc-wifi-1"; >> }; >> >> reg_cldo3: cldo3 { >> + /* >> + * This regulator is connected with >CLDO2. >> + * See the comments for CLDO2. >> + */ >> + regulator-always-on; >> regulator-min-microvolt = <3300000>; >> regulator-max-microvolt = <3300000>; >> regulator-name = "vcc-wifi-2"; >> -- >> 2.18.0 >> -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html