Re: [PATCH v2] arm64: dts: qcom: sc7280: Add bluetooth node on SC7280

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Quoting bgodavar@xxxxxxxxxxxxxx (2021-10-12 22:30:50)
> On 2021-10-12 22:54, Stephen Boyd wrote:
> > Quoting Balakrishna Godavarthi (2021-10-12 06:01:38)
> >> diff --git a/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
> >> b/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
> >> index 272d5ca..09adc802 100644
> >> --- a/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
> >> +++ b/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
> >> +               compatible = "qcom,wcn6750-bt";
> >> +               pinctrl-names = "default";
> >> +               pinctrl-0 = <&bt_en_default>;
> >> +               enable-gpios = <&tlmm 85 GPIO_ACTIVE_HIGH>;
> >> +               swctrl-gpios = <&tlmm 86 GPIO_ACTIVE_HIGH>;
> >
> > Is there any pinctrl config for gpio 86?
> >
> [Bala]: This is input GPIO to apps, BT SOC will handle configurations.

Ok. So there should be some pinctrl stating that the function is "gpio"
and the biasing is probably bias-disable. The BT SOC will handle setting
any pull, either up or down?

>
> >> +               vddaon-supply = <&vreg_s7b_0p9>;
> >> +               vddbtcxmx-supply = <&vreg_s7b_0p9>;
> >> +               vddrfacmn-supply = <&vreg_s7b_0p9>;
> >> +               vddrfa0p8-supply = <&vreg_s7b_0p9>;
> >> +               vddrfa1p7-supply = <&vreg_s1b_1p8>;
> >> +               vddrfa1p2-supply = <&vreg_s8b_1p2>;
> >> +               vddrfa2p2-supply = <&vreg_s1c_2p2>;
> >> +               vddasd-supply = <&vreg_l11c_2p8>;
> >> +               max-speed = <3200000>;
> >> +       };
> >>  };
> >>
> >>  /* PINCTRL - additions to nodes defined in sc7280.dtsi */
> >> @@ -504,6 +521,14 @@
> >>                  */
> >>                 bias-pull-up;
> >>         };
> >> +
> >> +       bt_en_default: bt_en_default {
> >
> > bt_en: bt-en {
> >
> > Node names shouldn't have underscores and 'default' is redundant.
> >
> [Bala]: will update in next patch.
>
> >> +               pins = "gpio85";
> >> +               function = "gpio";
> >> +               drive-strength = <2>;
> >> +               output-low;
> >> +               bias-pull-down;
> >
> > Why is there a pull down on an output gpio? Shouldn't this be
> > bias-disable?
> >
>
> [Bala]: BT_EN pin is OP of apps and input to BT SoC.
> by default we want the state of BT_EN to be low. so used pull down
> instead of bias-disable

The pin state will be low because of the 'output-low' property.

> as AFAIK bias-disable may trigger a tristate on BT_EN pin, which may
> trigger BT SoC enable
> if it is not actually triggered.

Is the pin ever "turned around" and made an input? If not then it will
be output and be driving low until the enable-gpios is set to output
active. The pull down is probably wasting power when the pin is being
driven either high or low.



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux