I think this is due to the initramfs. There's a way to update that, but I don't know it off the top of my head. It's been covered several times on this list, though.
> On May 16, 2016, at 12:10 , Super Twang <[email protected]> wrote: > > > I'm seeing some strange persistent/erroneous behavior with a device tree > overlay that I wanted to ask about. > > Specifically, I'm seeing startup errors in 'dmesg' which reference symbols in > a device tree overlay (.dtbo) that no longer exist. > > [ 11.591461] pinctrl-single 44e10800.pinmux: bad data for mux MYOVERLAY_pru > [ 11.671379] pinctrl-single 44e10800.pinmux: no pins entries for > MYOVERLAY_pru > > I'm using image: > bone-debian-8.4-console-armhf-2016-04-07-2gb.img.xz > > (With some packages removed) > > I'm using kernel: > 4.4.9-bone-rt-r10 > > > The errors originated from an old *.dtc file that did indeed contain errors > (no pins defined for a mux called MYOVERLAY_pru). So, I simplified it, > created a 'good' version of the *dtc, which compiles and loads properly. The > new overlay doesn't contain ANY references to MYOVERLAY_pru, and yet, I'm > still seeing errors referencing it on reboot (when the part is enabled in > /boot/uEnv.txt), when I type 'dmesg' > > Also, if it is helpful, I've found that the directory below seems to appear > with the error messages. > > /sys/firmware/devicetree/base/ocp/l4_wkup@44c00000/scm@210000/pinmux@800/MYOVERLAY_pru > > I've tried disabling the part in /boot/uEnv.txt, and rebooting. > I've tried doing a full halt, then disconnecting power for several minutes, > then rebooting. > > I can make the errors go away if I disable the part in /boot/uEnv.txt, but, I > actually want the (correct) overlay to load (with no errors) upon startup. > > Does anyone have any idea what is going on here? How can a symbol from a > device tree overlay persist beyond its own deletion/de-install? Is something > being saved, but then not cleared from persistent memory? > > > Thanks for any insights you might have, > > ST > > > > PS. I've attached the two *dtc files in question below > > > ----------------------------------- BELOW IS THE ORIG DTC WHICH CAUSED THE > ERROR > > /dts-v1/; > > / { > compatible = "ti,beaglebone-black"; > part-number = "MY_OVERLAY"; > version = "00A0"; > exclusive-use = "P8.12", "pruss", "pru0"; > > fragment@0 { > target = <0xdeadbeef>; > > __overlay__ { > > MY_OVERLAY_gpio { > pinctrl-single,pins = <0x30 0x7>; > linux,phandle = <0x2>; > phandle = <0x2>; > }; > > MY_OVERLAY_pru { > pinctrl-single,pins; // <----- NOTE, THE > LACK OF PIN DEFS HERE CAUSES THE ERROR MESSAGE(I think) > linux,phandle = <0x1>; > phandle = <0x1>; > }; > }; > }; > > fragment@1 { > target = <0xdeadbeef>; > > __overlay__ { > status = "okay"; > pinctrl-names = "default"; > pinctrl-0 = <0x1>; > }; > }; > > fragment@2 { > target = <0xdeadbeef>; > > __overlay__ { > > gpio_helper { > compatible = "gpio-of-helper"; > status = "okay"; > pinctrl-names = "default"; > pinctrl-0 = <0x2>; > }; > }; > }; > > __symbols__ { > my_overlay_gpio = "/fragment@0/__overlay__/MY_OVERLAY_gpio"; > my_overlay_pru = "/fragment@0/__overlay__/MY_OVERLAY_pru"; > }; > > __local_fixups__ { > > fragment@1 { > > __overlay__ { > pinctrl-0 = <0x0>; > }; > }; > > fragment@2 { > > __overlay__ { > > gpio_helper { > pinctrl-0 = <0x0>; > }; > }; > }; > }; > > __fixups__ { > am33xx_pinmux = "/fragment@0:target:0"; > pruss = "/fragment@1:target:0"; > ocp = "/fragment@2:target:0"; > }; > }; > > ----------------------------------- BELOW IS THE FIXED DTC > /dts-v1/; > > / { > compatible = "ti,beaglebone-black"; > part-number = "MY_OVERLAY"; > version = "00A0"; > exclusive-use = "P8.12"; > > fragment@0 { > target = <0xdeadbeef>; > > __overlay__ { > > MY_OVERLAY_gpio { > pinctrl-single,pins = <0x30 0x7>; > linux,phandle = <0x1>; > phandle = <0x1>; > }; > }; > }; > > fragment@1 { > target = <0xdeadbeef>; > > __overlay__ { > > gpio_helper { > compatible = "gpio-of-helper"; > status = "okay"; > pinctrl-names = "default"; > pinctrl-0 = <0x1>; > }; > }; > }; > > __symbols__ { > my_overlay_gpio = "/fragment@0/__overlay__/MY_OVERLAY_gpio"; > }; > > __local_fixups__ { > > fragment@1 { > > __overlay__ { > > gpio_helper { > pinctrl-0 = <0x0>; > }; > }; > }; > }; > > __fixups__ { > am33xx_pinmux = "/fragment@0:target:0"; > ocp = "/fragment@1:target:0"; > }; > }; > > > > -- > For more options, visit http://beagleboard.org/discuss > --- > You received this message because you are subscribed to the Google Groups > "BeagleBoard" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/beagleboard/d99a914a-18de-4223-8a4f-bd332fe6e79e%40googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- Rick Mann [email protected] -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/beagleboard/C48FDAE6-6080-4C71-BB53-D5DC866F4F91%40latencyzero.com. For more options, visit https://groups.google.com/d/optout.
