微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

beagleboard – BBB – 在引导时自动加载设备树覆盖

我有一个设备树覆盖:

/dts-v1/;
/plugin/;

/ {
    compatible = "ti,beaglebone","ti,beaglebone-black";
    part-number = "mousetraps";
    version = "00A1";

    /* https://github.com/derekmolloy/boneDeviceTree/blob/master/docs/BeagleboneBlackP9HeaderTable.pdf */
    fragment@0 {
            target = <&am33xx_pinmux>;
            __overlay__ {
                    mousetrap_pins: pinmux_mousetrap_pins {
                            pinctrl-single,pins = <
                                    0x070 0x2f /* P9_11 30 INPUT MODE7 none */
                                    0x074 0x2f /* P9_13 31 INPUT MODE7 none */
                                    0x040 0x2f /* P9_15 48 INPUT MODE7 none */
                                    0x15c 0x2f /* P9_17 05 INPUT MODE7 none */
                            >;
                    };
            };
    };

    fragment@1 {
            target = <&ocp>;
            __overlay__ {
                    test_helper: helper {
                            compatible = "bone-pinmux-helper";
                            pinctrl-names = "default";
                            pinctrl-0 = <&mousetrap_pins>;
                            status = "okay";
                    };
            };
    };
};

我可以成功加载:

echo mousetraps:00A1 >/sys/devices/bone_capemgr.8/driver/bone_capemgr.8/slots ; dmesg | grep bone

如何配置BBB / Angstrom以在启动时自动加载?

更具体地说,如何将dtbo文件挂钩到正常的设备树加载机制?我知道我可以将echo添加到linux init脚本中,但似乎必须有一些东西会触发加载dtbo文件.

解决方法

一种方法是将dtbo复制到/ lib / firmware并修改内核bootargs中的capemgr.extra_override参数(在uEnv.txt中)以指向dtbo文件.此技术还需要修改/arch/arm/boot/dts/am335-bone-common.dtsi文件.这个 discussion的详细信息.

请注意,从文件系统加载设备树覆盖图似乎是beaglebone black上最近的内核(来自官方存储库)的问题.为了克服这一点,在here中描述了编译叠加的替代方法.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐