Hi Alan,

alan.martino...@senic.com píše v Pá 17. 11. 2017 v 03:41 -0800:
> &pio {
>     uart2_pins_ctsrts: uart2-ctsrts {
>         pins = "PA#", "PA#"; // replace # with number of the CTS/DTS pin
>         function = "uart2";
>     };
> };
> 
> Where are you referencing those strings from (both "PA#" and "uart2")?

These are defined in the driver. You can grep the kernel tree for the
value of the compatible field to find any driver that handles that
node. In this case it would be compatible of node referenced by &pio.

You'll see it there.

In your case it's probably this:

http://elixir.free-electrons.com/linux/latest/source/drivers/pinctrl/su
nxi/pinctrl-sun8i-h3.c

> Tried looking at both the pinctrl-bindings as well as sunxi pinctrl.
> 
> * 
> http://elixir.free-electrons.com/linux/v4.13/source/Documentation/devicetree/bindings/pinctrl/allwinner,sunxi-pinctrl.txt
> * 
> http://elixir.free-electrons.com/linux/v4.13/source/Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
> 
> 
> Also I seem to have inherited device tree with:
>     allwinner,function:
> 
> Am I interpreting this correctly that this has been deprecated for the 
> generic 
> pinctrl bindings and should be renamed?

Yes.

regards,
  o.

> 
> On Thursday, November 16, 2017 at 8:38:40 PM UTC+1, Ondřej Jirman wrote:
> > Hi,
> > 
> > for flow control, you need to configure relevant flow control pins for 
> > uart2 function too too. Perhaps DTS and CTS?
> > 
> > Add:
> > 
> > &pio {
> > > uart2_pins_ctsrts: uart2-ctsrts {
> > >     pins = "PA#", "PA#";  // replace # with number of the CTS/DTS pin
> > >     function = "uart2";
> > 
> > };
> > 
> > You can check pinctrl code for H3 for what functions are available on what 
> > pins.
> > 
> > And then modify:
> > 
> > > &uart2 {
> > >         pinctrl-names = "default";
> > >         pinctrl-0 = <&uart2_pins &uart2_pins_ctsrts>;
> > >         status = "okay";
> > > };
> > 
> > This will configure pins for both listed function definitions.
> > 
> > regards,
> > o.
> > 
> > alan.ma...@senic.com píše v Čt 16. 11. 2017 v 08:34 -0800:
> > > Hi,
> > > I'm trying to enable uart2 for a connection with bluetooth on a H3 based 
> > > board 
> > > It lays on a custom pcb connected through the exposed headers.
> > > 
> > > For that we have a custom device tree:
> > > https://github.com/getsenic/senic-os-linux/blob/senic/4.13/arch/arm/boot/dts/sun8i-h3-senic-hub.dts
> > > modified just to add some extra switches.
> > > 
> > > I'm trying to now enable the uart2 with flow control which is needed for 
> > > connection the H3 with
> > > a bluetooth module.
> > > 
> > > My first try was to extend the device tree with what is working for the 
> > > debug uart:
> > > 
> > > &uart2 {
> > >         pinctrl-names = "default";
> > >         pinctrl-0 = <&uart2_pins>;
> > >         status = "okay";
> > > };
> > > 
> > > however that seems to end up with errors:
> > > 
> > > [ 0.849626] dw-apb-uart 1c28800.serial: Error applying setting, reverse 
> > > things back
> > > [ 0.857292] dw-apb-uart: probe of 1c28800.serial failed with error -22
> > > 
> > > Searching for uart2 in the exteneded device tree results in:
> > > 
> > >   uart2: serial@01c28800 {
> > >    compatible = "snps,dw-apb-uart";
> > >    reg = <0x01c28800 0x400>;
> > >    interrupts = <0 2 4>;
> > >    reg-shift = <2>;
> > >    reg-io-width = <4>;
> > >    clocks = <&ccu 64>;
> > >    resets = <&ccu 51>;
> > >    dmas = <&dma 8>, <&dma 8>;
> > >    dma-names = "rx", "tx";
> > >    status = "disabled";
> > >   };
> > > 
> > >   pio: pinctrl@01c20800 {
> > >    reg = <0x01c20800 0x400>;
> > >    interrupts = <0 11 4>,
> > >          <0 17 4>;
> > >    clocks = <&ccu 54>, <&osc24M>, <&osc32k>;
> > >    clock-names = "apb", "hosc", "losc";
> > >    gpio-controller;
> > >    #gpio-cells = <3>;
> > >    interrupt-controller;
> > >    #interrupt-cells = <3>;
> > > 
> > >    .... OTHER ENTRIES
> > > 
> > >    uart2_pins: uart2 {
> > >     pins = "PA0", "PA1";
> > >     function = "uart2";
> > >    };
> > > };
> > > 
> > > and finally the one that I've entered in the device
> > > tree we introduced:
> > > 
> > > &uart2 {
> > >         pinctrl-names = "default";
> > >         pinctrl-0 = <&uart2_pins>;
> > >         status = "okay";
> > > };
> > > 
> > > Any directions on how to proceed next?
> > > 
> > > Be Well,
> > > Alan
> > > 
> > > 
> > > -- 
> > > 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...@googlegroups.com.
> > > For more options, visit https://groups.google.com/d/optout.
> 
> On Thursday, November 16, 2017 at 8:38:40 PM UTC+1, Ondřej Jirman wrote:
> > Hi,
> > 
> > for flow control, you need to configure relevant flow control pins for 
> > uart2 function too too. Perhaps DTS and CTS?
> > 
> > Add:
> > 
> > &pio {
> > > uart2_pins_ctsrts: uart2-ctsrts {
> > >     pins = "PA#", "PA#";  // replace # with number of the CTS/DTS pin
> > >     function = "uart2";
> > 
> > };
> > 
> > You can check pinctrl code for H3 for what functions are available on what 
> > pins.
> > 
> > And then modify:
> > 
> > > &uart2 {
> > >         pinctrl-names = "default";
> > >         pinctrl-0 = <&uart2_pins &uart2_pins_ctsrts>;
> > >         status = "okay";
> > > };
> > 
> > This will configure pins for both listed function definitions.
> > 
> > regards,
> > o.
> > 
> > alan.ma...@senic.com píše v Čt 16. 11. 2017 v 08:34 -0800:
> > > Hi,
> > > I'm trying to enable uart2 for a connection with bluetooth on a H3 based 
> > > board 
> > > It lays on a custom pcb connected through the exposed headers.
> > > 
> > > For that we have a custom device tree:
> > > https://github.com/getsenic/senic-os-linux/blob/senic/4.13/arch/arm/boot/dts/sun8i-h3-senic-hub.dts
> > > modified just to add some extra switches.
> > > 
> > > I'm trying to now enable the uart2 with flow control which is needed for 
> > > connection the H3 with
> > > a bluetooth module.
> > > 
> > > My first try was to extend the device tree with what is working for the 
> > > debug uart:
> > > 
> > > &uart2 {
> > >         pinctrl-names = "default";
> > >         pinctrl-0 = <&uart2_pins>;
> > >         status = "okay";
> > > };
> > > 
> > > however that seems to end up with errors:
> > > 
> > > [ 0.849626] dw-apb-uart 1c28800.serial: Error applying setting, reverse 
> > > things back
> > > [ 0.857292] dw-apb-uart: probe of 1c28800.serial failed with error -22
> > > 
> > > Searching for uart2 in the exteneded device tree results in:
> > > 
> > >   uart2: serial@01c28800 {
> > >    compatible = "snps,dw-apb-uart";
> > >    reg = <0x01c28800 0x400>;
> > >    interrupts = <0 2 4>;
> > >    reg-shift = <2>;
> > >    reg-io-width = <4>;
> > >    clocks = <&ccu 64>;
> > >    resets = <&ccu 51>;
> > >    dmas = <&dma 8>, <&dma 8>;
> > >    dma-names = "rx", "tx";
> > >    status = "disabled";
> > >   };
> > > 
> > >   pio: pinctrl@01c20800 {
> > >    reg = <0x01c20800 0x400>;
> > >    interrupts = <0 11 4>,
> > >          <0 17 4>;
> > >    clocks = <&ccu 54>, <&osc24M>, <&osc32k>;
> > >    clock-names = "apb", "hosc", "losc";
> > >    gpio-controller;
> > >    #gpio-cells = <3>;
> > >    interrupt-controller;
> > >    #interrupt-cells = <3>;
> > > 
> > >    .... OTHER ENTRIES
> > > 
> > >    uart2_pins: uart2 {
> > >     pins = "PA0", "PA1";
> > >     function = "uart2";
> > >    };
> > > };
> > > 
> > > and finally the one that I've entered in the device
> > > tree we introduced:
> > > 
> > > &uart2 {
> > >         pinctrl-names = "default";
> > >         pinctrl-0 = <&uart2_pins>;
> > >         status = "okay";
> > > };
> > > 
> > > Any directions on how to proceed next?
> > > 
> > > Be Well,
> > > Alan
> > > 
> > > 

-- 
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+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to