凌云实验室推出的ARM Linux物联网网关开发板IGKBoard(IoT Gateway Kit Board)项目源码
guowenxue
2022-06-13 f317d59900aa566e289fc9fe5d40122e1fbbd076
bsp/kernel/patch/linux-imx-lf-5.10.52-2.1.0.patch
@@ -1,13 +1,13 @@
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/igkboard.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/igkboard.dts
--- linux-imx/arch/arm/boot/dts/igkboard.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/igkboard.dts   2022-06-12 13:15:34.158636100 +0800
@@ -0,0 +1,693 @@
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/igkboard.dts   2022-06-13 22:06:43.280918362 +0800
@@ -0,0 +1,694 @@
+/*
+ * Device Tree Source for LingYun IGKBoard(IoT Gateway Kit Board)
+ * Based on imx6ul-14x14-evk.dts/imx6ul-14x14-evk.dtsi
+ *
+ * Copyright (C) 2022 LingYun IoT System Studio.
+ * Author:  Guo Wenxue<guowenxue@gmail.com>
+ * Author: Guo Wenxue<guowenxue@gmail.com>
+ */
+
+/dts-v1/;
@@ -156,9 +156,9 @@
+*/
+};
+
+/*+-------------------+
+  |   Misc Modules     |
+  +-------------------+*/
+/*+--------------+
+  | Misc Modules |
+  +--------------+*/
+
+&snvs_poweroff {
+   status = "okay";
@@ -188,9 +188,9 @@
+   status = "okay";
+};
+
+/*+-------------------+
+  |   Camera Module   |
+  +-------------------+*/
+/*+---------------+
+  | Camera Module |
+  +---------------+*/
+
+&i2c2 {
+   clock-frequency = <100000>;
@@ -237,7 +237,7 @@
+      mclk = <24000000>;
+      mclk_source = <0>;
+      /* rotation = <180>; */
+      status = "disabled"; /* Enable in camera overlay */
+      status = "disabled"; /* Enable in CAM overlay */
+      port {
+         ov5640_ep: endpoint {
+            remote-endpoint = <&csi1_ep>;
@@ -246,8 +246,8 @@
+   };
+};
+
+&csi { /* camera ov5640 */
+   status = "okay";
+&csi {
+   status = "disabled"; /* Enable in CAM overlay */
+   port {
+      csi1_ep: endpoint {
+         remote-endpoint = <&ov5640_ep>;
@@ -255,10 +255,9 @@
+   };
+};
+
+
+/*+-------------------+
+  |    Audio Module   |
+  +-------------------+*/
+/*+--------------+
+  | Audio Module |
+  +--------------+*/
+
+&clks {
+   assigned-clocks = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>;
@@ -286,9 +285,9 @@
+
+
+
+/*+-------------------+
+  | Ethernet Modules  |
+  +-------------------+*/
+/*+------------------+
+  | Ethernet Modules |
+  +------------------+*/
+
+&fec1 { /* eth0 */
+   pinctrl-names = "default";
@@ -335,9 +334,9 @@
+
+
+
+/*+-------------------+
+  |  USB interface    |
+  +-------------------+*/
+/*+---------------+
+  | USB interface |
+  +---------------+*/
+
+&usbotg1 {
+   dr_mode = "otg";
@@ -361,9 +360,9 @@
+};
+
+
+/*+-------------------+
+  | USDCHC interface  |
+  +-------------------+*/
+/*+------------------+
+  | USDCHC interface |
+  +------------------+*/
+
+&usdhc1 { /* tf card slot */
+   pinctrl-names = "default", "state_100mhz", "state_200mhz";
@@ -389,9 +388,9 @@
+};
+
+
+/*+------------------------------+
+  |   40 Pin Header GPIO iomuxc  |
+  +------------------------------+*/
+/*+---------------------------+
+  | 40 Pin Header GPIO iomuxc |
+  +---------------------------+*/
+
+&iomuxc {
+   pinctrl-names = "default";
@@ -418,7 +417,7 @@
+         MX6UL_PAD_GPIO1_IO03__GPIO1_IO03   0x17059 /*   3# I2C1_SDA */
+         MX6UL_PAD_GPIO1_IO02__I2C1_SCL      0x17059 /*   5# I2C1_SCL */
+      >;
+   };
+   };
+
+   pinctrl_ecspi1_master: ecspi1grp1 {
+      fsl,pins = <
@@ -492,9 +491,9 @@
+};
+
+
+/*+--------------------------+
+  |   Basic pinctrl iomuxc   |
+  +--------------------------+*/
+/*+----------------------+
+  | Basic pinctrl iomuxc |
+  +----------------------+*/
+&iomuxc {
+   pinctrl-names = "default";
+
@@ -526,6 +525,8 @@
+
+   pinctrl_csi1: csi1grp {
+      fsl,pins = <
+         MX6UL_PAD_SNVS_TAMPER5__GPIO5_IO05      0x17059 /* CSI_RST */
+         MX6UL_PAD_SNVS_TAMPER6__GPIO5_IO06      0x17059 /* CSI_PWDN */
+         MX6UL_PAD_CSI_MCLK__CSI_MCLK         0x1b088
+         MX6UL_PAD_CSI_PIXCLK__CSI_PIXCLK      0x1b088
+         MX6UL_PAD_CSI_VSYNC__CSI_VSYNC         0x1b088
@@ -697,7 +698,7 @@
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/Makefile linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/Makefile
--- linux-imx/arch/arm/boot/dts/Makefile   2021-09-08 18:41:11.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/Makefile   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/Makefile   2022-06-12 17:10:26.378726607 +0800
@@ -1490,3 +1490,6 @@
    aspeed-bmc-opp-zaius.dtb \
    aspeed-bmc-portwell-neptune.dtb \
@@ -707,8 +708,8 @@
+subdir-$(CONFIG_SOC_IMX6UL) += overlays
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/cam.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/cam.dts
--- linux-imx/arch/arm/boot/dts/overlays/cam.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/cam.dts   2022-06-12 13:00:23.176939473 +0800
@@ -0,0 +1,16 @@
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/cam.dts   2022-06-13 21:41:49.095745360 +0800
@@ -0,0 +1,24 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
+ * Author:  Guo Wenxue<guowenxue@gmail.com>
@@ -719,6 +720,14 @@
+
+/* MIPI-DSI2 camera overlay */
+
+&pxp { /* Pixel Pipeline (PXP) is a memory-to-memory graphics processing */
+   status = "okay";
+};
+
+&csi {
+   status = "okay";
+};
+
+&i2c2 {
+   ov5640@3c {
+      status = "okay";
@@ -727,7 +736,7 @@
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/can1.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/can1.dts
--- linux-imx/arch/arm/boot/dts/overlays/can1.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/can1.dts   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/can1.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -760,7 +769,7 @@
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/can2.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/can2.dts
--- linux-imx/arch/arm/boot/dts/overlays/can2.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/can2.dts   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/can2.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -793,7 +802,7 @@
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/i2c1.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/i2c1.dts
--- linux-imx/arch/arm/boot/dts/overlays/i2c1.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/i2c1.dts   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/i2c1.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -826,7 +835,7 @@
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/lcd.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/lcd.dts
--- linux-imx/arch/arm/boot/dts/overlays/lcd.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/lcd.dts   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/lcd.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,99 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -929,7 +938,7 @@
+};
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/Makefile linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/Makefile
--- linux-imx/arch/arm/boot/dts/overlays/Makefile   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/Makefile   2022-06-12 13:21:24.413715140 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/Makefile   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,18 @@
+# SPDX-License-Identifier: GPL-2.0
+
@@ -951,7 +960,7 @@
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/pwm7.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/pwm7.dts
--- linux-imx/arch/arm/boot/dts/overlays/pwm7.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/pwm7.dts   2022-06-12 13:31:33.213974113 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/pwm7.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -977,14 +986,14 @@
+   pinctrl-3 = <&pinctrl_pwm7>;
+   pinctrl_pwm7: pwm7grp {
+      fsl,pins = <
+         MX6UL_PAD_ENET1_TX_CLK__PWM7_OUT   0x110b0
+         MX6UL_PAD_JTAG_TCK__PWM7_OUT   0x110b0
+      >;
+   };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/pwm8.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/pwm8.dts
--- linux-imx/arch/arm/boot/dts/overlays/pwm8.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/pwm8.dts   2022-06-12 13:31:40.057890125 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/pwm8.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1010,14 +1019,14 @@
+   pinctrl-3 = <&pinctrl_pwm8>;
+   pinctrl_pwm8: pwm8grp {
+      fsl,pins = <
+         MX6UL_PAD_ENET1_RX_ER__PWM8_OUT   0x110b0
+         MX6UL_PAD_JTAG_TRST_B__PWM8_OUT   0x110b0
+      >;
+   };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/spi1.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/spi1.dts
--- linux-imx/arch/arm/boot/dts/overlays/spi1.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/spi1.dts   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/spi1.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1061,7 +1070,7 @@
+};
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/uart2.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart2.dts
--- linux-imx/arch/arm/boot/dts/overlays/uart2.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart2.dts   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart2.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1092,7 +1101,7 @@
+};
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/uart3.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart3.dts
--- linux-imx/arch/arm/boot/dts/overlays/uart3.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart3.dts   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart3.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1124,7 +1133,7 @@
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/uart4.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart4.dts
--- linux-imx/arch/arm/boot/dts/overlays/uart4.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart4.dts   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart4.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1156,7 +1165,7 @@
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/uart7.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart7.dts
--- linux-imx/arch/arm/boot/dts/overlays/uart7.dts   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart7.dts   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart7.dts   2022-06-12 17:10:26.378726607 +0800
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1188,7 +1197,7 @@
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/configs/igkboard_defconfig linux-imx-lf-5.10.52-2.1.0/arch/arm/configs/igkboard_defconfig
--- linux-imx/arch/arm/configs/igkboard_defconfig   1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/configs/igkboard_defconfig   2022-06-12 13:26:11.937977945 +0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/configs/igkboard_defconfig   2022-06-13 21:56:27.500562135 +0800
@@ -0,0 +1,722 @@
+CONFIG_KERNEL_LZO=y
+CONFIG_SYSVIPC=y
@@ -1914,7 +1923,7 @@
+# CONFIG_FTRACE is not set
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/drivers/video/backlight/pwm_bl.c linux-imx-lf-5.10.52-2.1.0/drivers/video/backlight/pwm_bl.c
--- linux-imx/drivers/video/backlight/pwm_bl.c   2021-09-08 18:41:11.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/drivers/video/backlight/pwm_bl.c   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/drivers/video/backlight/pwm_bl.c   2022-06-12 17:10:26.378726607 +0800
@@ -558,6 +558,7 @@
    if (!state.period && (data->pwm_period_ns > 0))
       state.period = data->pwm_period_ns;
@@ -1925,7 +1934,7 @@
       dev_err(&pdev->dev, "failed to apply initial PWM state: %d\n",
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/Makefile linux-imx-lf-5.10.52-2.1.0/Makefile
--- linux-imx/Makefile   2021-09-08 18:41:11.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/Makefile   2022-06-12 13:00:23.180939431 +0800
+++ linux-imx-lf-5.10.52-2.1.0/Makefile   2022-06-12 18:02:43.392114072 +0800
@@ -367,7 +367,8 @@
 # Alternatively CROSS_COMPILE can be set in the environment.
 # Default value for CROSS_COMPILE is not to prefix executables
@@ -1946,7 +1955,7 @@
       -o -name '.*.d' -o -name '.*.tmp' -o -name '*.mod.c' \
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/scripts/Makefile.lib linux-imx-lf-5.10.52-2.1.0/scripts/Makefile.lib
--- linux-imx/scripts/Makefile.lib   2021-09-08 18:41:11.000000000 +0800
+++ linux-imx-lf-5.10.52-2.1.0/scripts/Makefile.lib   2022-06-12 13:00:23.176939473 +0800
+++ linux-imx-lf-5.10.52-2.1.0/scripts/Makefile.lib   2022-06-12 17:10:26.378726607 +0800
@@ -325,6 +325,16 @@
 $(obj)/%.dtb: $(src)/%.dts $(DTC) FORCE
    $(call if_changed_dep,dtc)