对 Linux 操作系统进行更改



我为我的嵌入式主板构建Linux内核。

我想自定义主板的功能。

我该怎么做?

谢谢。

在图层元自定义中创建以下树:

recipes-kernel/
└── linux
├── linux-at91
│   ├── 0001-my-custom-dt.patch
└── linux-at91_%.bbappend

linux-at91_%.bbappend中,将

FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
SRC_URI += "file://0001-my-custom-dt.patch"

要生成0001-my-custom-dt.patch,可以使用以下步骤:

git clone https://github.com/linux4sam/linux-at91.git
cd linux-at91/
quilt new 0001-my-custom-dt.patch
quilt add arch/arm/boot/dts/at91-sama5d27_som1_ek.dts 
vim arch/arm/boot/dts/at91-sama5d27_som1_ek.dts
# modify DT
quilt refresh

您应该获得类似以下内容:

Index: linux-at91/arch/arm/boot/dts/at91-sama5d27_som1_ek.dts
===================================================================
--- linux-at91.orig/arch/arm/boot/dts/at91-sama5d27_som1_ek.dts
+++ linux-at91/arch/arm/boot/dts/at91-sama5d27_som1_ek.dts
@@ -538,7 +538,7 @@
compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_led_gpio_default>;
-       status = "okay"; /* Conflict with pwm0. */
+       status = "disabled"; /* Conflict with pwm0. */
red {
label = "red";

最后在recipes-kernel/linux/linux-at91复制补丁并重新启动Yocto构建。


注意: 您还可以使用 Bitbake 变量创建整个自定义设备树KERNEL_DEVICETREE。

最新更新