I am trying to bring up a waveshare 3.5” display with duo module s evaluation board
Tried modifying the dts file
`/root/milkv/duo-buildroot-sdk-v2/build/boards/cv181x/sg2000_milkv_duos_glibc_arm64_emmc/dts_arm64/sg2000_milkv_duos_glibc_arm64_emmc.dts`
/dts-v1/;
#include "cv181x_base_arm.dtsi"
#include "cv181x_asic_bga.dtsi"
#include "cv181x_asic_emmc.dtsi"
#include "cv181x_default_memmap.dtsi"
/ {
model = "Milk-V DuoS";
};
&mipi_rx {
snsr-reset = <&porta 2 GPIO_ACTIVE_LOW>, <&porta 2 GPIO_ACTIVE_LOW>, <&porta 2 GPIO_ACTIVE_LOW>;
};
&i2c0 {
status = "disabled";
};
&i2c1 {
status = "okay";
};
&i2c2 {
status = "okay";
};
&i2c3 {
status = "okay";
};
&i2c4 {
status = "okay";
gt9xx: gt9xx@14 {
status = "disabled";
};
};
&spi3 {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
/delete-node/ spidev@0;
ili9486: ili9486@0 {
compatible = "ilitek,ili9486", "fb_tft_ili9486";
reg = <0>;
status = "okay";
spi-max-frequency = <32000000>;
spi-cpol;
spi-cpha;
dc-gpios = <&porta 19 GPIO_ACTIVE_HIGH>; /* LCD_RS */
reset-gpios = <&porta 18 GPIO_ACTIVE_LOW>; /* LCD_RST */
rotate = <270>;
fps = <25>;
buswidth = <8>;
bgr = <0>;
txbuflen = <32768>;
debug = <0>;
/* FULL Waveshare 3.5" ILI9486 Initialization Table
* NOTE: fb_tft_ili9486 DOES NOT use this,
* but you requested it to be added.
*/
init = <
0x10000b0 0x00
0x1000011
0x20000ff
0x100003a 0x55
0x1000036 0x28
0x10000c2 0x44
0x10000c5 0x00 0x00 0x00 0x00
0x10000e0 0x0f 0x1f 0x1c 0x0c 0x0f 0x08 0x48 0x98 0x37 0x0a 0x13 0x04 0x11 0x0d 0x00
0x10000e1 0x0f 0x32 0x2e 0x0b 0x0d 0x05 0x47 0x75 0x37 0x06 0x10 0x03 0x24 0x20 0x00
0x10000e2 0x0f 0x32 0x2e 0x0b 0x0d 0x05 0x47 0x75 0x37 0x06 0x10 0x03 0x24 0x20 0x00
0x1000036 0x28
0x1000011
0x1000029
>;
};
};
&dac {
/delete-property/ mute-gpio-l;
/delete-property/ mute-gpio-r;
};
/* mipi dsi for u-boot */
&vo {
compatible = "cvitek,vo";
reset-gpio = <&porte 2 GPIO_ACTIVE_LOW>;
pwm-gpio = <&porte 0 GPIO_ACTIVE_HIGH>;
power-ct-gpio = <&porte 1 GPIO_ACTIVE_HIGH>;
status = "okay";
};
/* mipi dsi for kernel */
&mipi_tx {
compatible = "cvitek,mipi_tx";
reset-gpio = <&porte 2 GPIO_ACTIVE_LOW>;
pwm-gpio = <&porte 0 GPIO_ACTIVE_HIGH>;
power-ct-gpio = <&porte 1 GPIO_ACTIVE_HIGH>;
status = "okay";
};
&wifisd {
status = "okay";
cap-sd-highspeed;
sd-uhs-sdr25;
sd-uhs-ddr50;
sd-uhs-sdr104;
min-frequency = <400000>;
max-frequency = <187500000>;
};
&wifi_pin {
status = "okay";
compatible = "cvitek,wifi-pin";
poweron-gpio = <&porta 15 GPIO_ACTIVE_HIGH>;
wakeup-gpio = <&porte 7 GPIO_ACTIVE_HIGH>;
};
&usb {
vbus-gpio = <&portb 6 0>;
};
&uart1 {
status = "okay";
};
&uart2 {
status = "okay";
};
&uart3 {
status = "okay";
};
&uart4 {
status = "okay";
};
Added these two lines to the defconfig file
/root/milkv/duo-buildroot-sdk-v2/build/boards/cv181x/sg2000_milkv_duos_glibc_arm64_emmc/linux/cvitek_sg2000_milkv_duos_glibc_arm64_emmc_defconfig
CONFIG_FB_TFT_ILI9486=y
CONFIG_SPI_MASTER=y
When i boot linux and grep ili9486, i see this output
[root@milkv-duo]~# dmesg | grep ili
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 126520
[ 1.005419] bm-dwmac 4070000.ethernet: DMA HW capability register supported
[ 1.520574] fb_ili9486 spi0.0: fbtft_property_value: buswidth = 8
[ 1.527014] fb_ili9486 spi0.0: fbtft_property_value: debug = 0
[ 1.533126] fb_ili9486 spi0.0: fbtft_property_value: rotate = 270
[ 1.539510] fb_ili9486 spi0.0: fbtft_property_value: fps = 25
[ 1.545498] fb_ili9486 spi0.0: fbtft_property_value: txbuflen = 32768
[ 2.293733] graphics fb0: fb_ili9486 frame buffer, 480x320, 300 KiB video memory, 32 KiB buffer memory, fps=25, spi0.0 at 32 MHz
[root@milkv-duo]~#
Its initializing spi0 whereas dts refers to spi3 and only spi3 is available on the module evaluation board.
Can somebody please help bring this screen up?