On Wed, Nov 28, 2018 at 12:08 PM Ken Shirriff <
ken.sh...@gmail.com> wrote:
>
> I need to configure a bunch of pins in a device tree, and I'm unclear of how many fragments I need and how to name them. Specifically, I want the PRU to control some GPIO pins, PRU pins, and PWM pins.
>
> Looking at a typical overlay, it has:
> __overlay__ {
> pru_gpio_pins: pinmux_pru_gpio_pins {
> pinctrl-single,pins = <
> 0x1a4 0x0f
> >;
> };
> pru_pru_pins: pinmux_pru_pru_pins {
> pinctrl-single,pins = <
> 0x1a4 0x25
> >;
> };
> };
>
> In the line "pru_gpio_pins: pinmux_pru_gpio_pins", am I correct that "pru_gpio_pins" is an arbitrary name that gets used in pinctrl-0? What about "pinmux_pru_gpio_pins" - is that arbitrary, or does this need to match something else? (And if it needs to match something, where is that defined?)
It's pretty arbitrary, we've just kinda defaulted to the
xyz_pins: pinmux_xyz_pins for awhile now, so it became the
un-documented default..
But there is one change on
kernel.org, the second string can't use
"_", so every is defaulting "-".. (there's a dtc warning about it)
pru_gpio_pins: pinmux-pru-gpio-pins
> Also, do I need to handle GPIO pins and PRU pins separately, as above? Or is that for convenience / convention? And if I want to configure ehrpwm pins, do I need a third section, or can I lump it in with the rest?
I'd keep them separate, at one time there was a plan to have a global
list of all pinmux options, but the imx guys found out that just
bloated up the dtb too much, so they removed their's.
Regards,
--
Robert Nelson
https://rcn-ee.com/