Hi!
Sorry for the newbie question. I’m building a program to control pins P8.39 to P8.46 of a Beaglebone Black. Everything is ok, except the fact that when I unplug then plug again the power source on the board, these pins starts with 3.3V, that to me (and to the solution that I’m trying to develop) is a really big problem.
I’m only writing here because all examples that I found use mode 7 (GPIO). Nothing showing how to do that with mode 5 (PRU_OUT)
Here is the DTS file that I make to set up the pins to be used from PRU1
/*
* This is a template-generated file from BoneScript`
*/``
/dts-v1/;
/plugin/;``
/{ ```compatible = "ti,beaglebone", "ti,beaglebone-black";
part_number = "PRU1_FAST_GPIOs";` ``
exclusive-use = ```"P8.27",
"P8.28",`
“P8.29”, `` ```"P8.39",
"P8.40",`
“P8.41”, ```"P8.42",
"P8.43",`
“P8.44”, ```"P8.45",
"P8.46",` ``
“P9.39”, // AIN0 ```"P9.40", // AIN1
"P9.37", // AIN2`
“P9.38”, // AIN3 ```"P9.33", // AIN4
"P9.36", // AIN5`
“P9.35”, // AIN6 `` ```"pr1_pru1_pru_r31",
"pr1_pru1_pru_r30",` ``
“tscadc”; // hardware ip used `` ```fragment@0 {
target = <&am33xx_pinmux>;`
overlay { ```bs_pinmode_PRU1_GPIOS: pinmux_bs_pru1_outputs {
pinctrl-single,pins = <0x0e0 0x26`
0x0e8 0x26 ```0x0e4 0x26
```0x0b8 0x05` ```0x0bc 0x05` ```0x0b0 0x05` ```0x0b4 0x05` ```0x0a8 0x05` ```0x0ac 0x05` ```0x0a0 0x05` ```0x0a4 0x05` ```>;` ```};` ```};` ```};`
fragment@1 {`
target = <&ocp>; ```__overlay__ {
bs_pinmode_P8_PR1_pinmux {`
compatible = “bone-pinmux-helper”; ```status = "okay";
pinctrl-names = "default";`
pinctrl-0 = <&bs_pinmode_PRU1_GPIOS>; ```};
};`
}; `` ```fragment@2 {
target = <&tscadc>;`
overlay { `` ```status = "okay";
adc {`
ti,adc-channels = <0 1 2 3 4 5 6 7>; ```ti,chan-step-avg = <16 16 16 16 16 16 16 16>;
ti,chan-step-opendelay = <0x98 0x98 0x98 0x98 0x98 0x98 0x98 0x98>;`
ti,chan-step-sampledelay = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>; ```};
};`
};
};`