SDK构建的buildroot无法成功加载ilitft的ili9341
Posted: 2025-09-18 14:52
我使用luckfox pico pro max尝试构建一个支持ili9341屏幕的linux,使用的guthub最新的SDK源码。
设备树修改的内容:
/ {
model = "Luckfox Pico Pro Max";
compatible = "rockchip,rv1103g-38x38-ipc-v10", "rockchip,rv1106g3";
backlight:backlight{
compatible = "gpio-backlight";
pinctrl-names = "default";
pinctrl-0 = <&gpio1_pc7>;
gpios = <&gpio1 RK_PC7 GPIO_ACTIVE_HIGH>;
default-on;
};
/*LCD_DC*/
gpio2pb1:gpio2pb1 {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&gpio2_pb1>;
regulator-name = "gpio2_pb1";
regulator-always-on;
};
/*LCD_RES*/
gpio1pc6:gpio1pc6 {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&gpio1_pc6>;
regulator-name = "gpio1_pc6";
regulator-always-on;
};
};
/**********GPIO**********/
&pinctrl {
/*LCD_BL*/
gpio1-pc7 {
gpio1_pc7:gpio1-pc7 {
rockchip,pins = <1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
/*LCD_DC*/
gpio2-pb1 {
gpio2_pb1:gpio2-pb1 {
rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
/*LCD_RES*/
gpio1-pc6 {
gpio1_pc6:gpio1-pc6 {
rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};
/**********SPI**********/
&spi0 {
status = "okay";
pinctrl-names = "default";
// pinctrl-0 = <&spi0m0_pins>;
// cs-gpios = <&gpio1 RK_PC0 1>;
pinctrl-0 = <&spi0m0_clk &spi0m0_mosi &spi0m0_cs0>;
spidev@0 {
status = "disabled";
// spi-max-frequency = <50000000>;
};
fbtft@0 {
status = "okay";
compatible = "ilitek,ili9341";
reg = <0>;
pinctrl-names = "default";
spi-max-frequency = <20000000>;
fps = <30>;
width = <240>;
height = <320>;
buswidth = <8>;
debug = <0x7>;
//led-gpios = <&gpio2 RK_PB0 GPIO_ACTIVE_LOW>; //BL
dc = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; //DC
reset = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>; //RES
backlight = &backlight;
};
};
进入系统后查不到fbtft相关的日志:
[root@luckfox ]# ls dev/fb*
dev/fb0
[root@luckfox ]# dmesg | grep -E "(fb|display|lcd|spi|ili9341)" | head -10
[ 1443.245272] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1443.245282] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1443.245290] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1443.245297] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1443.245307] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1443.245314] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1443.245320] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1443.245332] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1443.245339] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1443.245346] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[root@luckfox ]# dmesg | grep -i fbtft
[root@luckfox ]# dmesg | grep -i ili9341
[root@luckfox ]# dmesg | grep -i spi
[ 1461.245357] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1461.245367] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1461.245375] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1461.245381] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1461.245391] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1461.245399] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1461.245405] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1461.245415] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1461.245424] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1461.245430] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
设备树修改的内容:
/ {
model = "Luckfox Pico Pro Max";
compatible = "rockchip,rv1103g-38x38-ipc-v10", "rockchip,rv1106g3";
backlight:backlight{
compatible = "gpio-backlight";
pinctrl-names = "default";
pinctrl-0 = <&gpio1_pc7>;
gpios = <&gpio1 RK_PC7 GPIO_ACTIVE_HIGH>;
default-on;
};
/*LCD_DC*/
gpio2pb1:gpio2pb1 {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&gpio2_pb1>;
regulator-name = "gpio2_pb1";
regulator-always-on;
};
/*LCD_RES*/
gpio1pc6:gpio1pc6 {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&gpio1_pc6>;
regulator-name = "gpio1_pc6";
regulator-always-on;
};
};
/**********GPIO**********/
&pinctrl {
/*LCD_BL*/
gpio1-pc7 {
gpio1_pc7:gpio1-pc7 {
rockchip,pins = <1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
/*LCD_DC*/
gpio2-pb1 {
gpio2_pb1:gpio2-pb1 {
rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
/*LCD_RES*/
gpio1-pc6 {
gpio1_pc6:gpio1-pc6 {
rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};
/**********SPI**********/
&spi0 {
status = "okay";
pinctrl-names = "default";
// pinctrl-0 = <&spi0m0_pins>;
// cs-gpios = <&gpio1 RK_PC0 1>;
pinctrl-0 = <&spi0m0_clk &spi0m0_mosi &spi0m0_cs0>;
spidev@0 {
status = "disabled";
// spi-max-frequency = <50000000>;
};
fbtft@0 {
status = "okay";
compatible = "ilitek,ili9341";
reg = <0>;
pinctrl-names = "default";
spi-max-frequency = <20000000>;
fps = <30>;
width = <240>;
height = <320>;
buswidth = <8>;
debug = <0x7>;
//led-gpios = <&gpio2 RK_PB0 GPIO_ACTIVE_LOW>; //BL
dc = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>; //DC
reset = <&gpio1 RK_PC6 GPIO_ACTIVE_LOW>; //RES
backlight = &backlight;
};
};
进入系统后查不到fbtft相关的日志:
[root@luckfox ]# ls dev/fb*
dev/fb0
[root@luckfox ]# dmesg | grep -E "(fb|display|lcd|spi|ili9341)" | head -10
[ 1443.245272] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1443.245282] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1443.245290] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1443.245297] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1443.245307] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1443.245314] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1443.245320] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1443.245332] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1443.245339] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1443.245346] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[root@luckfox ]# dmesg | grep -i fbtft
[root@luckfox ]# dmesg | grep -i ili9341
[root@luckfox ]# dmesg | grep -i spi
[ 1461.245357] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1461.245367] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1461.245375] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1461.245381] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1461.245391] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1461.245399] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1461.245405] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1
[ 1461.245415] rockchip-sfc ffac0000.spi: sfc addr.nbytes=1(x1) dummy.nbytes=0(x0)
[ 1461.245424] rockchip-sfc ffac0000.spi: sfc ctrl=2 cmd=c00f addr=c0 len=1 cs=0
[ 1461.245430] rockchip-sfc ffac0000.spi: sfc xfer_poll len=1