PRU GPIO default value

Skip to first unread message

Bruce Chidester

Jan 21, 2022, 1:02:35 PMJan 21
to BeagleBone

I am unable to set the default value of a GPIO for the PRU. I would like to have a “pull-down” default, but when I boot the signal is “high” > 3.3v.

My system:

Linux beaglebone 4.19.94-ti-r62 #1buster SMP PREEMPT Sat Apr 24 00:27:24 UTC 2021 armv7l GNU/Linux

Beaglebone Black Rev C

Booting with the UIO pruss

In /boot/uEnv.txt - uboot_overlay_pru=AM335X-PRU-UIO-00A0.dtbo

Steps I took:

1.      Went to to get a dts

2.      Selected P9_27, fast Slew, Output, Pulldown, Mode5: pr1_pru0_pru_r30_5

3.      It generated:




    compatible = "ti,beaglebone", "ti,beaglebone-black";

    part_number = "BS_PINMODE_P9_27_0x5";


    exclusive-use =




    fragment@0 {

        target = <&am33xx_pinmux>;

        __overlay__ {

            bs_pinmode_P9_27_0x5: pinmux_bs_pinmode_P9_27_0x5 {

                pinctrl-single,pins = <0x1a4 0x5>;




     fragment@1 {

        target = <&ocp>;

        __overlay__ {

            bs_pinmode_P9_27_0x5_pinmux {

                compatible = "bone-pinmux-helper";

                status = "okay";

                pinctrl-names = "default";

                pinctrl-0 = <&bs_pinmode_P9_27_0x5>;






4.      Compiled and applied the device tree

5.      Reboot, on boot the o-scope on P9_27  goes high

I’ve tried on P9_25 as well, same result. I’ve configured it for Mode 7 (standard GPIO) and it works fine. Just Mode 5 does not seem to be responding as expected.

Can anyone verify my issue and offer a solution?

Thanks in advance.

Reply all
Reply to author
0 new messages