linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: "Heiko Stübner" <heiko@sntech.de>
To: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: tom@vamrs.com, mani@kernel.org, linux-kernel@vger.kernel.org,
	dev@vamrs.com, linux-rockchip@lists.infradead.org,
	Peter Robinson <pbrobinson@gmail.com>,
	ezequiel@collabora.com, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] arm64: dts: rockchip: Add on-board WiFi/BT support for Rock960 boards
Date: Mon, 11 Feb 2019 13:33:08 +0100	[thread overview]
Message-ID: <10789434.psaOHqdiec@diego> (raw)
In-Reply-To: <20190211113128.GA22843@mani>

Am Montag, 11. Februar 2019, 12:31:28 CET schrieb Manivannan Sadhasivam:
> Hi Peter,
> 
> On Fri, Feb 08, 2019 at 04:45:01PM +0000, Peter Robinson wrote:
> > Hi Mani,
> > 
> > On Thu, Feb 7, 2019 at 5:54 AM Manivannan Sadhasivam
> > 
> > <manivannan.sadhasivam@linaro.org> wrote:
> > > Add on-board WiFi/BT support for Rock960 boards such as Rock960 based
> > > on AP6356S and Ficus based on AP6354 wireless modules.
> > > 
> > > Firmwares for the respective boards are available here:
> > > 
> > > http://people.linaro.org/~manivannan.sadhasivam/rock960_wifi/
> > > http://people.linaro.org/~manivannan.sadhasivam/ficus_wifi/
> > > 
> > > Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
> > 
> > There's some warnings on building these I noticed in testing this on 
Fedora:
> >   DTC     arch/arm64/boot/dts/rockchip/rk3399-ficus.dtb
> > 
> > arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi:490.3-13: Warning
> > (reg_format): /dwmmc@fe310000/wifi@1:reg: property has invalid length
> > (4 bytes) (#address-cells == 2, #size-cells == 1)
> > arch/arm64/boot/dts/rockchip/rk3399-ficus.dtb: Warning
> > (pci_device_bus_num): Failed prerequisite 'reg_format'
> > arch/arm64/boot/dts/rockchip/rk3399-ficus.dtb: Warning (i2c_bus_reg):
> > Failed prerequisite 'reg_format'
> > arch/arm64/boot/dts/rockchip/rk3399-ficus.dtb: Warning (spi_bus_reg):
> > Failed prerequisite 'reg_format'
> > arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi:488.16-496.4: Warning
> > (avoid_default_addr_size): /dwmmc@fe310000/wifi@1: Relying on default
> > #address-cells value
> > arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi:488.16-496.4: Warning
> > (avoid_default_addr_size): /dwmmc@fe310000/wifi@1: Relying on default
> > #size-cells value
> > 
> >   DTC     arch/arm64/boot/dts/rockchip/rk3399-rock960.dtb
> > 
> > arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi:490.3-13: Warning
> > (reg_format): /dwmmc@fe310000/wifi@1:reg: property has invalid length
> > (4 bytes) (#address-cells == 2, #size-cells == 1)
> > arch/arm64/boot/dts/rockchip/rk3399-rock960.dtb: Warning
> > (pci_device_bus_num): Failed prerequisite 'reg_format'
> > arch/arm64/boot/dts/rockchip/rk3399-rock960.dtb: Warning
> > (i2c_bus_reg): Failed prerequisite 'reg_format'
> > arch/arm64/boot/dts/rockchip/rk3399-rock960.dtb: Warning
> > (spi_bus_reg): Failed prerequisite 'reg_format'
> > arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi:488.16-496.4: Warning
> > (avoid_default_addr_size): /dwmmc@fe310000/wifi@1: Relying on default
> > #address-cells value
> > arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi:488.16-496.4: Warning
> > (avoid_default_addr_size): /dwmmc@fe310000/wifi@1: Relying on default
> > #size-cells value
> 
> Hmm. Since the parent node "sdio0" is missing the address/size cells
> property, the default value has been used by the DTC. I think it would
> make sense to just drop the reg property from "wifi" node instead of
> modifying the parent "sdio0" node.
> 
> If no one has any issue over this, I'll send out another revision with the
> reg property removed.

actually I do think you might just want to add address+size-cells
to your &sdio0 instance instead. Especially as I'm not sure that the
system will find the card-node when matching against the card itself
without the reg property?

The core sdio0 does not necessarily have subnodes, so I guess
the *-cells may just live in the board dts?


Heiko



> > > ---
> > > 
> > >  .../boot/dts/rockchip/rk3399-rock960.dtsi     | 96 ++++++++++++++++++-
> > >  1 file changed, 95 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi
> > > b/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi index
> > > 56abbb08c133..1b2f7cd82244 100644
> > > --- a/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi
> > > +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock960.dtsi
> > > @@ -9,6 +9,15 @@
> > > 
> > >  #include "rk3399-opp.dtsi"
> > >  
> > >  / {
> > > 
> > > +       sdio_pwrseq: sdio-pwrseq {
> > > +               compatible = "mmc-pwrseq-simple";
> > > +               clocks = <&rk808 1>;
> > > +               clock-names = "ext_clock";
> > > +               pinctrl-names = "default";
> > > +               pinctrl-0 = <&wifi_enable_h>;
> > > +               reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
> > > +       };
> > > +
> > > 
> > >         vcc1v8_s0: vcc1v8-s0 {
> > >         
> > >                 compatible = "regulator-fixed";
> > >                 regulator-name = "vcc1v8_s0";
> > > 
> > > @@ -362,6 +371,20 @@
> > > 
> > >  };
> > >  
> > >  &pinctrl {
> > > 
> > > +       bt {
> > > +               bt_enable_h: bt-enable-h {
> > > +                       rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO
> > > &pcfg_pull_none>; +               };
> > > +
> > > +               bt_host_wake_l: bt-host-wake-l {
> > > +                       rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO
> > > &pcfg_pull_none>; +               };
> > > +
> > > +               bt_wake_l: bt-wake-l {
> > > +                       rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO
> > > &pcfg_pull_none>; +               };
> > > +       };
> > > +
> > > 
> > >         sdmmc {
> > >         
> > >                 sdmmc_bus1: sdmmc-bus1 {
> > >                 
> > >                         rockchip,pins =
> > > 
> > > @@ -387,6 +410,26 @@
> > > 
> > >                 };
> > >         
> > >         };
> > > 
> > > +       sdio0 {
> > > +               sdio0_bus4: sdio0-bus4 {
> > > +                       rockchip,pins =
> > > +                               <2 20 RK_FUNC_1 &pcfg_pull_up_20ma>,
> > > +                               <2 21 RK_FUNC_1 &pcfg_pull_up_20ma>,
> > > +                               <2 22 RK_FUNC_1 &pcfg_pull_up_20ma>,
> > > +                               <2 23 RK_FUNC_1 &pcfg_pull_up_20ma>;
> > > +               };
> > > +
> > > +               sdio0_cmd: sdio0-cmd {
> > > +                       rockchip,pins =
> > > +                               <2 24 RK_FUNC_1 &pcfg_pull_up_20ma>;
> > > +               };
> > > +
> > > +               sdio0_clk: sdio0-clk {
> > > +                       rockchip,pins =
> > > +                               <2 25 RK_FUNC_1 &pcfg_pull_none_20ma>;
> > > +               };
> > > +       };
> > > +
> > > 
> > >         pmic {
> > >         
> > >                 pmic_int_l: pmic-int-l {
> > >                 
> > >                         rockchip,pins =
> > > 
> > > @@ -403,6 +446,19 @@
> > > 
> > >                                 <1 14 RK_FUNC_GPIO &pcfg_pull_down>;
> > >                 
> > >                 };
> > >         
> > >         };
> > > 
> > > +
> > > +       sdio-pwrseq {
> > > +               wifi_enable_h: wifi-enable-h {
> > > +                       rockchip,pins =
> > > +                               <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
> > > +               };
> > > +       };
> > > +
> > > +       wifi {
> > > +               wifi_host_wake_l: wifi-host-wake-l {
> > > +                       rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO
> > > &pcfg_pull_none>; +               };
> > > +       };
> > > 
> > >  };
> > >  
> > >  &pwm2 {
> > > 
> > > @@ -413,6 +469,33 @@
> > > 
> > >         status = "okay";
> > >  
> > >  };
> > > 
> > > +&sdio0 {
> > > +       clock-frequency = <50000000>;
> > > +       bus-width = <4>;
> > > +       cap-sdio-irq;
> > > +       cap-sd-highspeed;
> > > +       no-emmc;
> > > +       keep-power-in-suspend;
> > > +       mmc-pwrseq = <&sdio_pwrseq>;
> > > +       non-removable;
> > > +       num-slots = <1>;
> > > +       pinctrl-names = "default";
> > > +       pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
> > > +       sd-uhs-sdr104;
> > > +
> > > +       status = "okay";
> > > +
> > > +       brcmf: wifi@1 {
> > > +               compatible = "brcm,bcm4329-fmac";
> > > +               reg = <1>;
> > > +               interrupt-parent = <&gpio0>;
> > > +               interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
> > > +               interrupt-names = "host-wake";
> > > +               pinctrl-names = "default";
> > > +               pinctrl-0 = <&wifi_host_wake_l>;
> > > +       };
> > > +};
> > > +
> > > 
> > >  &sdhci {
> > >  
> > >         bus-width = <8>;
> > >         mmc-hs400-1_8v;
> > > 
> > > @@ -439,8 +522,19 @@
> > > 
> > >  &uart0 {
> > >  
> > >         pinctrl-names = "default";
> > > 
> > > -       pinctrl-0 = <&uart0_xfer &uart0_cts>;
> > > +       pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
> > > 
> > >         status = "okay";
> > > 
> > > +
> > > +       bluetooth {
> > > +               compatible = "brcm,bcm43438-bt";
> > > +               clocks = <&rk808 1>;
> > > +               clock-names = "ext_clock";
> > > +               device-wakeup-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>;
> > > +               host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
> > > +               shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
> > > +               pinctrl-names = "default";
> > > +               pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
> > > +       };
> > > 
> > >  };
> > >  
> > >  &uart2 {
> > > 
> > > --
> > > 2.17.1





_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

      reply	other threads:[~2019-02-11 12:34 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-07  5:53 [PATCH] arm64: dts: rockchip: Add on-board WiFi/BT support for Rock960 boards Manivannan Sadhasivam
2019-02-08 16:45 ` Peter Robinson
2019-02-11 11:31   ` Manivannan Sadhasivam
2019-02-11 12:33     ` Heiko Stübner [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=10789434.psaOHqdiec@diego \
    --to=heiko@sntech.de \
    --cc=dev@vamrs.com \
    --cc=ezequiel@collabora.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=mani@kernel.org \
    --cc=manivannan.sadhasivam@linaro.org \
    --cc=pbrobinson@gmail.com \
    --cc=tom@vamrs.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).