Enable Device Tree Overlay for Beaglebone Black linux 4.14-ti

I have a problem with Devicetree overlay. My overlay file is here;

/dts-v1/;
/plugin/;

/{
    compatible = "ti,beaglebone", "ti,beaglebone-black";
    part_number = "DO6_Overlay";           /* BS_PINMODE_P9_24_0x7 */
    version = "00A0";

    exclusive-use =
        "gpio0_15";

    /*
     * Free up the pins used by the cape from the pinmux helpers.
     */
    fragment@0 {
        target = <&ocp>;
        __overlay__ {
            P9_24_pinmux { status = "disabled"; };  /* uart1_txd */
        };
    };    

    fragment@1 {
        target = <&am33xx_pinmux>;
        __overlay__ {
            bs_pinmode_P9_24_0x7: bs_pinmode_P9_24_0x7 {
                pinctrl-single,pins = <0x184 0x17>;
            };
        };
    };


    fragment@2 {
        target = <&ocp>;
        __overlay__ {
            bs_pinmode_P9_24_0x7_pinmux {
                compatible = "bone-pinmux-helper";
                status = "okay";
                pinctrl-names = "default";
                pinctrl-0 = <&bs_pinmode_P9_24_0x7>;
            };
        };
    };
};

Then I add this .dts file to lib/firmware . I have compiled this .dts file. The output is .dtbo file .

My compile method is here;

dtc -O dtb -o /lib/firmware/GPIO_Overlays-00A0.dtbo -b 0 -@ /lib/firmware/GPIO_Overlays-00A0.dts

Then, I have add the changes to boot/uEnv.txt. My changes are below;

###Additional custom capes
uboot_overlay_addr4=/lib/firmware/DO6_Overlay-00A0.dtbo
###

When I reboot the BBB, These pins are reverting to their old state.

What is the worng? I couldn’t solve this problem. Can anyone help me?

Note: I use the linux-4.14-rt and debian 9.5.

Well, please run:

sudo /opt/scripts/tools/version.sh

So we can see why…

Regards,

Hello Robert,
Thank you for your reply.

I run this command. Result is below;

git:/opt/scripts/:[4d3a0aff57aae78a0db890f72ce505f61f1a93ce]
eeprom:[A335BNLT00C04219BBBK089B]
model:[TI_AM335x_BeagleBone_Black]
dogtag:[Machinekit Debian Image 2020-05-02]
bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 2019.04-00002-g07d5700e21]:[location: dd MBR]
UBOOT: Booted Device-Tree:[am335x-boneblack-uboot-univ.dts]
UBOOT: Loaded Overlay:[BB-BONE-eMMC1-01-00A0]
UBOOT: Loaded Overlay:[BB-SPIDEV0-00A0]
kernel:[4.14.192-bone-rt-r38]
/boot/uEnv.txt Settings:
uboot_overlay_options:[enable_uboot_overlays=1]
uboot_overlay_options:[uboot_overlay_addr4=/lib/firmware/DO6_Overlay-00A0.dtbo]
uboot_overlay_options:[enable_uboot_cape_universal=1]
pkg check: to individually upgrade run: [sudo apt install --only-upgrade <pkg>]
pkg:[bb-cape-overlays]:[4.14.20200430.0-0~stretch+20200430]
pkg:[bb-wl18xx-firmware]:[1.20200420.1-0~stretch+20200424]
pkg:[kmod]:[23-2rcnee1~stretch+20171005]
WARNING:pkg:[librobotcontrol]:[NOT_INSTALLED]
pkg:[firmware-ti-connectivity]:[20190717-2rcnee1~stretch+20200305]
groups:[machinekit : machinekit adm kmem dialout cdrom floppy audio dip video plugdev users systemd-journal input i2c bluetooth netdev gpio pwm eqep remoteproc admin spi iio docker tisdk weston-launch xenomai cloud9ide]
cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 root=/dev/mmcblk0p1 ro rootfstype=ext4 rootwait coherent_pool=1M quiet cape_universal=enable]
dmesg | grep remote
[    0.898405] remoteproc remoteproc0: wkup_m3 is available
[    0.956794] remoteproc remoteproc0: powering up wkup_m3
[    0.956815] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 217168
[    0.959950] remoteproc remoteproc0: remote processor wkup_m3 is now up
dmesg | grep pru
dmesg | grep pinctrl-single
[    0.628284] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
dmesg | grep gpio-of-helper
[    0.638377] gpio-of-helper ocp:cape-universal: ready
lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
END