Re: [PATCH 1/3] arm: dts: sun8i: V3s: Add pinctrl for pwm

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

 



On Sat, 24 Jun 2023 12:57:49 +0800
Icenowy Zheng <uwu@xxxxxxxxxx> wrote:

> 在 2023-06-21星期三的 00:50 +0100,Andre Przywara写道:
> > On Tue, 20 Jun 2023 15:00:20 -0500
> > Chris Morgan <macroalpha82@xxxxxxxxx> wrote:
> > 
> > Hi Chris,
> > 
> > thanks for taking care of upstreaming, cute little device.
> >   
> > > From: Chris Morgan <macromorgan@xxxxxxxxxxx>
> > > 
> > > Add a default pinctrl for the pwm function.
> > > 
> > > Signed-off-by: Chris Morgan <macromorgan@xxxxxxxxxxx>  
> > 
> >   
> > > ---
> > >  arch/arm/boot/dts/sun8i-v3s.dtsi | 7 +++++++
> > >  1 file changed, 7 insertions(+)
> > > 
> > > diff --git a/arch/arm/boot/dts/sun8i-v3s.dtsi
> > > b/arch/arm/boot/dts/sun8i-v3s.dtsi
> > > index b001251644f7..e5977524abe2 100644
> > > --- a/arch/arm/boot/dts/sun8i-v3s.dtsi
> > > +++ b/arch/arm/boot/dts/sun8i-v3s.dtsi
> > > @@ -414,6 +414,11 @@ mmc1_pins: mmc1-pins {
> > >                                 bias-pull-up;
> > >                         };
> > >  
> > > +                       pwm_pins: pwm-pins {
> > > +                               pins = "PB4";
> > > +                               function = "pwm0";
> > > +                       };
> > > +
> > >                         spi0_pins: spi0-pins {
> > >                                 pins = "PC0", "PC1", "PC2", "PC3";
> > >                                 function = "spi0";
> > > @@ -441,6 +446,8 @@ pwm: pwm@1c21400 {
> > >                                      "allwinner,sun7i-a20-pwm";
> > >                         reg = <0x01c21400 0xc>;
> > >                         clocks = <&osc24M>;
> > > +                       pinctrl-0 = <&pwm_pins>;
> > > +                       pinctrl-names = "default";  
> > 
> > How is this supposed to work with multiple channels? There is PWM1 on
> > PB5. If one wants to potentially use that, we would need to add a
> > reference to those pins here as well, and they would all be muxed to
> > PWM upon the PWM controller probing?
> > 
> > So while I see that it's the only output pin for PWM0, this might
> > still
> > need to go into the board .dts, alongside the status = "okay"; line.
> > So
> > each board would specify exactly the pins it needs (PWM0 only, PWM1
> > only, both or none).  
> 
> Maybe we should have two PWM pinctrl nodes, pwm0_pins and pwm1_pins,
> and then enable the controller (with the pinctrl property) in
> individual board DTs.

Yes, that's what I meant: keep the pinctrl node in the .dtsi here, but move
the pinctrl *properties* to each board's .dts.

Cheers,
Andre

> > Otherwise I compared this against the manual and Linux pinctrl
> > driver,
> > it all matches up.
> > 
> > Cheers,
> > Andre
> >   
> > >                         #pwm-cells = <3>;
> > >                         status = "disabled";
> > >                 };  
> >   
> 




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux