于 2018年7月24日 GMT+08:00 上午10:26:02, Chen-Yu Tsai <wens@xxxxxxxx> 写到: >On Tue, Jul 24, 2018 at 10:23 AM, Icenowy Zheng <icenowy@xxxxxxx> >wrote: >> >> >> 于 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. > >Cool. Then I can put away my RTL module for now. :) P.S. SDIO is auto detectable, and for BCM chips, the OOB interrupt is only a bonus function and it can fall back to standard in-band interrupt (which doesn't need special binding, and is currently used by mainline r8723bs driver.) > >ChenYu > >> >>> >>>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 >>>> >> >> -- >> You received this message because you are subscribed to the Google >Groups "linux-sunxi" group. >> To unsubscribe from this group and stop receiving emails from it, >send an email to linux-sunxi+unsubscribe@xxxxxxxxxxxxxxxx. >> For more options, visit https://groups.google.com/d/optout. -- 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