凌云实验室推出的ARM Linux物联网网关开发板IGKBoard(IoT Gateway Kit Board)项目源码
guowenxue
2022-12-11 9a1c77bbd37d036939f7a3ebe437ff5011fa7063
update linux patch to panel-simple driver
1 files modified
297 ■■■■ changed files
bsp/kernel/patch/linux-imx-lf-5.15.32-2.0.0.patch 297 ●●●● patch | view | raw | blame | history
bsp/kernel/patch/linux-imx-lf-5.15.32-2.0.0.patch
@@ -1,7 +1,7 @@
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/igkboard.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/igkboard.dts    2022-10-19 20:15:25.788083251 +0800
@@ -0,0 +1,603 @@
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/igkboard.dts    2022-11-28 06:04:24.463613926 -0800
@@ -0,0 +1,609 @@
+/*
+ * Device Tree Source for LingYun IGKBoard(IoT Gateway Kit Board)
+ * Based on imx6ul-14x14-evk.dts/imx6ul-14x14-evk.dtsi
@@ -141,7 +141,7 @@
+        brightness-levels = <0 4 8 16 32 64 128 255>;
+        default-brightness-level = <7>;
+        power-supply = <&reg_3p3v>;
+        status = "disabled"; /* Enable in LCD overlay */
+        status = "disabled";
+    };
+
+    /* 1-Wire sentinel for overlay */
@@ -168,6 +168,11 @@
+        audio-asrc = <&asrc>;
+        audio-codec = <&mqs>;
+        status = "okay";
+    };
+
+    /* LCD panel sentinel for overlay */
+    panel: panel {
+        status = "disabled";
+    };
+
+};
@@ -204,9 +209,9 @@
+    status = "okay";
+};
+
+// /*+---------------+
+//   | Camera Module |
+//   +---------------+*/
+/*+---------------+
+  | Camera Module |
+  +---------------+*/
+
+&i2c2 {
+    clock-frequency = <100000>;
@@ -605,9 +610,10 @@
+    };    
+
+};
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/Makefile linux-imx-lf-5.15.32-2.0.0/arch/arm/boot/dts/Makefile
--- linux-imx/arch/arm/boot/dts/Makefile    2022-07-22 03:24:17.000000000 +0800
+++ linux-imx-lf-5.15.32-2.0.0/arch/arm/boot/dts/Makefile    2022-10-10 21:24:04.761882834 +0800
+
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    2022-11-28 06:08:27.847623408 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/Makefile    2022-11-28 06:04:23.919613905 -0800
@@ -1586,3 +1586,6 @@
     aspeed-bmc-portwell-neptune.dtb \
     aspeed-bmc-quanta-q71l.dtb \
@@ -615,9 +621,9 @@
+DTC_FLAGS_igkboard := -@
+dtb-$(CONFIG_SOC_IMX6UL) += igkboard.dtb
+subdir-$(CONFIG_SOC_IMX6UL) += overlays
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/adc.dts linux-imx-lf-5.15.32-2.0.0/arch/arm/boot/dts/overlays/adc.dts
--- linux-imx/arch/arm/boot/dts/overlays/adc.dts    1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.15.32-2.0.0/arch/arm/boot/dts/overlays/adc.dts    2022-10-19 20:15:03.940542000 +0800
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/adc.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/adc.dts
--- linux-imx/arch/arm/boot/dts/overlays/adc.dts    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/adc.dts    2022-11-28 06:04:26.879614021 -0800
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -646,9 +652,9 @@
+        >;
+    };
+};
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/cam.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/cam.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/cam.dts    2022-11-28 06:04:26.883614021 -0800
@@ -0,0 +1,24 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -674,9 +680,9 @@
+    };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/can1.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/can1.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/can1.dts    2022-11-28 06:04:26.883614021 -0800
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -706,9 +712,9 @@
+    };    
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/can2.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/can2.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/can2.dts    2022-11-28 06:04:26.883614021 -0800
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -738,9 +744,9 @@
+    };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/i2c1.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/i2c1.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/i2c1.dts    2022-11-28 06:04:26.887614021 -0800
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -770,9 +776,96 @@
+    };    
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/lcd.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/lcd.dts    2022-10-10 21:24:04.761882834 +0800
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/lcd_drm.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/lcd_drm.dts
--- linux-imx/arch/arm/boot/dts/overlays/lcd_drm.dts    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/lcd_drm.dts    2022-11-28 06:04:26.887614021 -0800
@@ -0,0 +1,82 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
+ * Author:  Guo Wenxue<guowenxue@gmail.com>
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/clock/imx6ul-clock.h>
+#include "../imx6ul-pinfunc.h"
+
+/* LCD DRM display overlay */
+
+&backlight_lcd {
+    status = "okay";
+};
+
+&i2c2 {
+    gt9xx@5d {
+        status = "okay";
+    };
+};
+
+&lcdif {
+    assigned-clocks = <&clks IMX6UL_CLK_LCDIF_PRE_SEL>;
+    assigned-clock-parents = <&clks IMX6UL_CLK_PLL5_VIDEO_DIV>;
+    pinctrl-names = "default";
+    pinctrl-0 = <&pinctrl_lcdif_dat &pinctrl_lcdif_ctrl>;
+    status = "okay";
+
+    port {
+        display_output: endpoint {
+            remote-endpoint = <&panel_input>;
+        };
+    };
+};
+
+&panel {
+    compatible = "fsl,imx6ull-panel", "panel-simple";
+    backlight = <&backlight_lcd>;
+    power-supply = <&reg_3p3v>;
+    status = "okay";
+
+    port {
+        panel_input: endpoint {
+            remote-endpoint = <&display_output>;
+        };
+    };
+};
+
+&iomuxc {
+    pinctrl_lcdif_dat: lcdifdatgrp {
+        fsl,pins = <
+            MX6UL_PAD_LCD_DATA00__LCDIF_DATA00    0x79
+            MX6UL_PAD_LCD_DATA01__LCDIF_DATA01    0x79
+            MX6UL_PAD_LCD_DATA02__LCDIF_DATA02    0x79
+            MX6UL_PAD_LCD_DATA03__LCDIF_DATA03    0x79
+            MX6UL_PAD_LCD_DATA04__LCDIF_DATA04    0x79
+            MX6UL_PAD_LCD_DATA05__LCDIF_DATA05    0x79
+            MX6UL_PAD_LCD_DATA06__LCDIF_DATA06    0x79
+            MX6UL_PAD_LCD_DATA07__LCDIF_DATA07    0x79
+            MX6UL_PAD_LCD_DATA08__LCDIF_DATA08    0x79
+            MX6UL_PAD_LCD_DATA09__LCDIF_DATA09    0x79
+            MX6UL_PAD_LCD_DATA10__LCDIF_DATA10    0x79
+            MX6UL_PAD_LCD_DATA11__LCDIF_DATA11    0x79
+            MX6UL_PAD_LCD_DATA12__LCDIF_DATA12    0x79
+            MX6UL_PAD_LCD_DATA13__LCDIF_DATA13    0x79
+            MX6UL_PAD_LCD_DATA14__LCDIF_DATA14    0x79
+            MX6UL_PAD_LCD_DATA15__LCDIF_DATA15    0x79
+        >;
+    };
+
+    pinctrl_lcdif_ctrl: lcdifctrlgrp {
+        fsl,pins = <
+            MX6UL_PAD_LCD_CLK__LCDIF_CLK        0x79
+            MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE    0x79
+            MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC    0x79
+            MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC    0x79
+            MX6UL_PAD_LCD_RESET__LCDIF_RESET    0x79
+        >;
+    };
+};
+
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/lcd.dts    2022-11-28 06:04:26.887614021 -0800
@@ -0,0 +1,89 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -863,10 +956,10 @@
+        >;
+    };
+};
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/Makefile linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/Makefile    2022-10-19 20:14:57.464677901 +0800
@@ -0,0 +1,19 @@
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/Makefile    2022-11-28 06:04:26.879614021 -0800
@@ -0,0 +1,20 @@
+# SPDX-License-Identifier: GPL-2.0
+# required for overlay support
+
@@ -886,9 +979,10 @@
+dtb-y += cam.dtbo
+dtb-y += nbiot-4g.dtbo
+dtb-y += adc.dtbo
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/nbiot-4g.dts linux-imx-lf-5.15.32-2.0.0/arch/arm/boot/dts/overlays/nbiot-4g.dts
--- linux-imx/arch/arm/boot/dts/overlays/nbiot-4g.dts    1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.15.32-2.0.0/arch/arm/boot/dts/overlays/nbiot-4g.dts    2022-10-10 21:24:04.761882834 +0800
+dtb-y += lcd_drm.dtbo
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/nbiot-4g.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/nbiot-4g.dts
--- linux-imx/arch/arm/boot/dts/overlays/nbiot-4g.dts    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/nbiot-4g.dts    2022-11-28 06:04:26.891614021 -0800
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -924,9 +1018,9 @@
+    };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/pwm7.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/pwm7.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/pwm7.dts    2022-11-28 06:04:26.891614021 -0800
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -956,9 +1050,9 @@
+    };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/pwm8.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/pwm8.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/pwm8.dts    2022-11-28 06:04:26.895614021 -0800
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -988,9 +1082,9 @@
+    };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/spi1.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/spi1.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/spi1.dts    2022-11-28 06:04:26.895614021 -0800
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1031,9 +1125,9 @@
+        >;
+    };    
+};
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/uart2.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/uart2.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart2.dts    2022-11-28 06:04:26.895614021 -0800
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1061,9 +1155,9 @@
+        >;
+    };
+};
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/uart3.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/uart3.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart3.dts    2022-11-28 06:04:26.899614021 -0800
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1092,9 +1186,9 @@
+    };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/uart4.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/uart4.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart4.dts    2022-11-28 06:04:26.899614021 -0800
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1123,9 +1217,9 @@
+    };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/uart7.dts linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/boot/dts/overlays/uart7.dts    2022-10-10 21:24:04.761882834 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/uart7.dts    2022-11-28 06:04:26.899614021 -0800
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1154,9 +1248,9 @@
+    };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/w1.dts linux-imx-lf-5.15.32-2.0.0/arch/arm/boot/dts/overlays/w1.dts
--- linux-imx/arch/arm/boot/dts/overlays/w1.dts    1970-01-01 08:00:00.000000000 +0800
+++ linux-imx-lf-5.15.32-2.0.0/arch/arm/boot/dts/overlays/w1.dts    2022-10-10 21:24:04.761882834 +0800
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/boot/dts/overlays/w1.dts linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/w1.dts
--- linux-imx/arch/arm/boot/dts/overlays/w1.dts    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/boot/dts/overlays/w1.dts    2022-11-28 06:04:26.903614021 -0800
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2022 LingYun IoT System Studio
@@ -1189,9 +1283,9 @@
+    };
+};
+
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/arch/arm/configs/igkboard_defconfig linux-imx-lf-5.15.32-2.0.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.15.32-2.0.0/arch/arm/configs/igkboard_defconfig    2022-10-19 20:12:14.180091154 +0800
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    1969-12-31 16:00:00.000000000 -0800
+++ linux-imx-lf-5.10.52-2.1.0/arch/arm/configs/igkboard_defconfig    2022-11-28 06:04:27.851614058 -0800
@@ -0,0 +1,587 @@
+CONFIG_KERNEL_LZO=y
+CONFIG_SYSVIPC=y
@@ -1780,9 +1874,62 @@
+# CONFIG_SCHED_DEBUG is not set
+# CONFIG_DEBUG_PREEMPT is not set
+# 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.15.32-2.0.0/drivers/video/backlight/pwm_bl.c
--- linux-imx/drivers/video/backlight/pwm_bl.c    2022-07-22 03:24:23.000000000 +0800
+++ linux-imx-lf-5.15.32-2.0.0/drivers/video/backlight/pwm_bl.c    2022-10-10 21:24:04.761882834 +0800
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/drivers/gpu/drm/mxsfb/mxsfb_drv.c linux-imx-lf-5.10.52-2.1.0/drivers/gpu/drm/mxsfb/mxsfb_drv.c
--- linux-imx/drivers/gpu/drm/mxsfb/mxsfb_drv.c    2022-11-28 06:08:47.387624169 -0800
+++ linux-imx-lf-5.10.52-2.1.0/drivers/gpu/drm/mxsfb/mxsfb_drv.c    2022-11-28 06:04:49.967614920 -0800
@@ -407,7 +407,7 @@
     .probe        = mxsfb_probe,
     .remove        = mxsfb_remove,
     .driver    = {
-        .name        = "mxsfb",
+        .name        = "mxsfb-drm",
         .of_match_table    = mxsfb_dt_ids,
         .pm        = &mxsfb_pm_ops,
     },
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/drivers/gpu/drm/panel/panel-simple.c linux-imx-lf-5.10.52-2.1.0/drivers/gpu/drm/panel/panel-simple.c
--- linux-imx/drivers/gpu/drm/panel/panel-simple.c    2022-11-28 06:08:48.747624222 -0800
+++ linux-imx-lf-5.10.52-2.1.0/drivers/gpu/drm/panel/panel-simple.c    2022-11-28 06:04:51.015614961 -0800
@@ -4502,8 +4502,37 @@
     .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
 };
+static const struct drm_display_mode fsl_imx6ull_panel_mode[] = {
+    {
+        .clock = 30000,
+        .hdisplay = 800,
+        .hsync_start = 800 + 40,
+        .hsync_end = 800 + 40 + 48,
+        .htotal = 800 + 40 + 48 + 88,
+        .vdisplay = 480,
+        .vsync_start = 480 + 13,
+        .vsync_end = 480 + 13 + 3,
+        .vtotal = 480 + 13 + 3 + 32,
+        .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC,
+    },
+};
+
+static const struct panel_desc fsl_imx6ull_panel = {
+    .modes = fsl_imx6ull_panel_mode,
+    .num_modes = 1,
+    .bpc = 8,
+    .size = {
+        .width = 110,
+        .height = 60,
+    },
+    .bus_format = MEDIA_BUS_FMT_RGB565_1X16,
+};
+
 static const struct of_device_id platform_of_match[] = {
     {
+        .compatible = "fsl,imx6ull-panel",
+        .data = &fsl_imx6ull_panel,
+    }, {
         .compatible = "ampire,am-1280800n3tzqw-t00h",
         .data = &ampire_am_1280800n3tzqw_t00h,
     }, {
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    2022-11-28 06:09:10.931625086 -0800
+++ linux-imx-lf-5.10.52-2.1.0/drivers/video/backlight/pwm_bl.c    2022-11-28 06:05:23.943616244 -0800
@@ -552,6 +552,7 @@
     if (!state.period && (data->pwm_period_ns > 0))
         state.period = data->pwm_period_ns;
@@ -1791,9 +1938,21 @@
     ret = pwm_apply_state(pb->pwm, &state);
     if (ret) {
         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.15.32-2.0.0/Makefile
--- linux-imx/Makefile    2022-07-22 03:24:17.000000000 +0800
+++ linux-imx-lf-5.15.32-2.0.0/Makefile    2022-10-19 20:11:19.873219761 +0800
diff -Nuar --no-dereference -x logo_linux_clut224.ppm linux-imx/drivers/video/fbdev/mxsfb.c linux-imx-lf-5.10.52-2.1.0/drivers/video/fbdev/mxsfb.c
--- linux-imx/drivers/video/fbdev/mxsfb.c    2022-11-28 06:09:11.115625093 -0800
+++ linux-imx-lf-5.10.52-2.1.0/drivers/video/fbdev/mxsfb.c    2022-11-28 06:05:24.299616257 -0800
@@ -1586,7 +1586,7 @@
 static const struct of_device_id mxsfb_dt_ids[] = {
     { .compatible = "fsl,imx23-lcdif", .data = &mxsfb_devtype[0], },
-    { .compatible = "fsl,imx28-lcdif", .data = &mxsfb_devtype[1], },
+    // { .compatible = "fsl,imx28-lcdif", .data = &mxsfb_devtype[1], },
     { .compatible = "fsl,imx7ulp-lcdif", .data = &mxsfb_devtype[2], },
     { /* sentinel */ }
 };
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    2022-11-28 06:08:27.447623392 -0800
+++ linux-imx-lf-5.10.52-2.1.0/Makefile    2022-11-28 06:04:21.247613801 -0800
@@ -382,6 +382,8 @@
 # Default value for CROSS_COMPILE is not to prefix executables
 # Note: Some architectures assign CROSS_COMPILE in their arch/*/Makefile