RT内核没研究过,不过可以先试试普通内核能不能启动手动打入rt补丁看看
awwwwa 发布的帖子
-
回复: 请教如何排查 linux kernel 启动卡主的问题
@xsyr1024 在 请教如何排查 linux kernel 启动卡主的问题 中说:
[ 0.969253] 000: printk: console [ttyS0] enabled
[ 0.973945] 000: printk: bootconsole [earlycon0] disabled看着是earlycon0作为串口输出驱动正常,但是切换到ttyS0作为串口输出的时候ttyS0没有输出,先检查uart部分
另外这个是LinuxRT内核吗
-
回复: A133怎么把触摸配置数组写入到芯片中啊(GT9271)
适配于 A133 Android 13 方案,Linux 5.15
ctp { gt9xx { compatible = "goodix,gt9xx"; reg = <0x5d>; status = "okay"; irq-gpios = <&pio PD 20 GPIO_ACTIVE_LOW>; irq-flags = <2>; reset-gpios = <&pio PD 21 GPIO_ACTIVE_LOW>; vdd_ana-supply = <®_cldo2>; touchscreen-max-id = <11>; touchscreen-size-x = <1280>; touchscreen-size-y = <800>; touchscreen-max-w = <512>; touchscreen-max-p = <512>; //touchscreen-key-map = <172>, <158>; /*KEY_HOMEPAGE=172, KEY_BACK=158,KEY_MENU=139*/ goodix,slide-wakeup = <0>; goodix,type-a-report = <1>; goodix,driver-send-cfg = <0>; goodix,send-cfg-id = <0>; goodix,resume-in-workqueue = <0>; goodix,int-sync = <1>; goodix,revert_x = <0>; goodix,revert_y = <0>; goodix,swap-x2y = <0>; goodix,tp_idle_support = <1>; goodix,esd-protect = <1>; goodix,auto-update-cfg = <0>; goodix,power-off-sleep = <1>; goodix,pen-suppress-finger = <0>; /* GT9271_Config_20221222_v67.cfg*/ goodix,cfg-group0 = [ B4 00 05 20 03 0A 3D 00 01 0A 28 0F 50 32 03 05 00 00 00 00 00 00 06 17 19 1F 14 8E 2E 99 2D 2F 35 11 00 00 00 1A 03 10 00 00 00 00 00 00 00 00 00 00 00 32 50 94 D5 02 07 00 00 04 8E 48 00 8A 4D 00 86 53 00 83 59 00 80 60 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 04 05 06 07 08 09 0C 0D 0E 0F 10 11 14 15 16 17 FF FF FF FF FF FF FF FF FF FF FF FF 28 27 26 25 24 23 22 21 20 1F 1E 1C 1B 19 13 12 11 10 0F 0D 0C 0A 08 07 06 04 02 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF AB 01 ]; };
-
回复: V853我们来了!!!
Tina 4.0:
tina_v851se-tinyvision_uart0.zipTina 4.0 摄像头测试:
e8ce3a5d-7cbf-40a3-b16a-1989ce206407-tina_v851se-tinyvision_uart0.zipTina 5.0:
v851se_linux_tinyvision_uart0_SDNand.zipPatch:
e4350d20-eda5-4ff5-b708-5901f5469aa9-tinyvision_patch.tar.gz71d8a58c-6fe2-4a93-96ee-b12bb883b2e1-摄像头测试固件.img
d0ef81d9-3893-4c2c-8903-711cf397a3bb-tinyvision.tgz
CONFIG_ARM=y CONFIG_ARCH_SUNXI=y CONFIG_MACH_SUN8IW21=y CONFIG_SUNXI_GPIO_V2=y #CONFIG_AXP_GPIO=y CONFIG_SYS_CONFIG_NAME="sun8iw21p1" CONFIG_DEFAULT_DEVICE_TREE="sun8iw21p1-soc-system" # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set CONFIG_CONSOLE_MUX=y CONFIG_SUNXI_NECESSARY_REPLACE_FDT=y CONFIG_RESERVE_FDT_SIZE=0x20000 CONFIG_PRE_CONSOLE_BUFFER=n # CONFIG_OF_BOARD=y CONFIG_OF_SEPARATE=y CONFIG_SYS_TEXT_BASE=0x42000000 CONFIG_SUNXI_FDT_ADDR=0x41800000 CONFIG_SUNXI_MALLOC_LEN=0x1400000 # Environment # CONFIG_ENV_IS_IN_SUNXI_FLASH=y # CONFIG_SYS_MAXARGS=64 # CONFIG_SUNXI_REDUNDAND_ENVIRONMENT=y # CONFIG_SYS_REDUNDAND_ENVIRONMENT=y # CONFIG_SUNXI_ENV_PARTITION="env" CONFIG_SUNXI_ENV_BACKUP=y # CONFIG_SUNXI_ENV_REDUNDAND_PARTITION="env-redund" # CONFIG_ENV_SIZE=0x20000 #system CONFIG_ARM_SMCCC=y CONFIG_SUNXI_DMA=y CONFIG_CLK_SUNXI=y #SPI CONFIG_SPI=y CONFIG_SUNXI_SPI=y CONFIG_SPI_USE_DMA=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_WINBOND=y CONFIG_SPI_FLASH_EON=y CONFIG_SPI_FLASH_GIGADEVICE=y CONFIG_SPI_FLASH_ISSI=y CONFIG_SPI_FLASH_MACRONIX=y CONFIG_SPI_FLASH_SPANSION=y CONFIG_SPI_FLASH_ATMEL=y CONFIG_SPI_FLASH_STMICRO=y CONFIG_SPI_FLASH_SST=y CONFIG_SPI_FLASH_PUYA=y CONFIG_SPI_FLASH_FM=y CONFIG_SPI_FLASH_XT=y CONFIG_SPI_FLASH_ADESTO=y CONFIG_SPI_FLASH_XMC=y CONFIG_SPI_SAMP_DL_EN=y CONFIG_SF_DEFAULT_SPEED=50000000 # BIT(12) BIT(13) (SPI_RX_DUAL|SPI_RX_QUAD) CONFIG_SF_DEFAULT_MODE=0x3000 CONFIG_SPINOR_UBOOT_OFFSET=128 CONFIG_SPINOR_LOGICAL_OFFSET=2016 CONFIG_SPINOR_UBOOT_SECURE_OFFSET=128 CONFIG_SPINOR_LOGICAL_SECURE_OFFSET=2200 #axp CONFIG_SYS_I2C_SUNXI=y CONFIG_I2C4_ENABLE=y CONFIG_SYS_SUNXI_I2C4_SLAVE=0x34 CONFIG_SYS_SUNXI_I2C4_SPEED=400000 CONFIG_SUNXI_POWER=y CONFIG_SUNXI_PMU=y CONFIG_SUNXI_BMU=y CONFIG_AXP2101_POWER=y CONFIG_AXP2101_SUNXI_I2C_SLAVE=0x34 #key #CONFIG_SUNXI_PHY_KEY=y #CONFIG_SUNXI_LRADC_KEY=y #crypto driver CONFIG_SUNXI_CE_DRIVER=y CONFIG_SUNXI_CE_23=y #CONFIG_SF_DEFAULT_SPEED=50000000 # BIT(12) BIT(13) (SPI_RX_DUAL|SPI_RX_QUAD) #CONFIG_SF_DEFAULT_MODE=0x3000 # # PWM_SUNXI # CONFIG_PWM_SUNXI=y # CONFIG_PWM_SUNXI_NEW is not set #CONFIG_SPINOR_UBOOT_OFFSET=128 #CONFIG_SPINOR_LOGICAL_OFFSET=2016 # flash CONFIG_SUNXI_SDMMC=y CONFIG_MMC=y CONFIG_SUNXI_FLASH=y CONFIG_SUNXI_NAND=y CONFIG_SUNXI_UBIFS=y CONFIG_SUNXI_COMM_NAND_V1=y CONFIG_SUNXI_SPINOR=y #usb otg config CONFIG_SUNXI_USB=y CONFIG_SUNXI_EFEX=y CONFIG_SUNXI_BURN=y CONFIG_SUNXI_FASTBOOT=y #partition CONFIG_EFI_PARTITION=y #image CONFIG_ANDROID_BOOT_IMAGE=y #sprite CONFIG_SUNXI_SPRITE=y CONFIG_SUNXI_SECURE_STORAGE=y CONFIG_SUNXI_SPRITE_CARTOON=y #secure feature CONFIG_SUNXI_SECURE_BOOT=y CONFIG_SUNXI_IMAGE_VERIFIER=y CONFIG_SUNXI_KEYBOX=y CONFIG_SUNXI_DRM_SUPPORT=y CONFIG_SUNXI_EXTERN_SECURE_MM_LAYOUT=y CONFIG_SUNXI_HOMLET=y CONFIG_SUNXI_HDCP_HASH=y CONFIG_SUNXI_HDCP_IN_SECURESTORAGE=y #cmd CONFIG_CMD_SUNXI_TIMER=y CONFIG_CMD_SUNXI_SPRITE=y CONFIG_CMD_SUNXI_EFEX=y CONFIG_CMD_SUNXI_BURN=y CONFIG_CMD_GPT=y CONFIG_CMD_FAT=y CONFIG_CMD_FASTBOOT=y CONFIG_CMD_SUNXI_DMA=y CONFIG_CMD_SUNXI_CLK=y CONFIG_CMD_SUNXI_MEMTEST=y CONFIG_CMD_PART=y CONFIG_CMD_SUNXI_AUTO_FEL=n CONFIG_CMD_SUNXI_BOOTR=y #arisc #CONFIG_SUNXI_ARISC_EXIST=y # CONFIG_SUNXI_INITRD_ROUTINE is not set #dsp #CONFIG_XTENSA_DSP=y #riscv #CONFIG_RISCV_E907=y CONFIG_SUNXI_ARM_SOFT_FP=y CONFIG_USE_PRIVATE_LIBGCC=y # # BOOT GUI # CONFIG_BOOT_GUI=y # CONFIG_UPDATE_DISPLAY_MODE is not set # CONFIG_CONFIG_LCD_CHECK_SKIP_OPEN is not set # CONFIG_BOOT_GUI_DOUBLE_BUF is not set # CONFIG_BOOT_GUI_TEST is not set # # SUNXI LOGO DISPLAY # CONFIG_CMD_SUNXI_BMP=y # CONFIG_SUNXI_SPINOR_BMP is not set # CONFIG_ENABLE_ADVERT_PICTURE is not set # CONFIG_SUNXI_SPINOR_JPEG is not set # CONFIG_CMD_SUNXI_JPEG is not set CONFIG_DISP2_SUNXI=y # CONFIG_HDMI_DISP2_SUNXI is not set # CONFIG_HDMI2_DISP2_SUNXI is not set # CONFIG_VDPO_DISP2_SUNXI is not set # CONFIG_TV_DISP2_SUNXI is not set # CONFIG_EDP_DISP2_SUNXI is not set # CONFIG_EINK200_SUNXI is not set # # LCD panels select # # CONFIG_LCD_SUPPORT_GG1P4062UTSW is not set # CONFIG_LCD_SUPPORT_DX0960BE40A1 is not set # CONFIG_LCD_SUPPORT_TFT720X1280 is not set # CONFIG_LCD_SUPPORT_FD055HD003S is not set # CONFIG_LCD_SUPPORT_HE0801A068 is not set # CONFIG_LCD_SUPPORT_ILI9341 is not set # CONFIG_LCD_SUPPORT_LH219WQ1 is not set # CONFIG_LCD_SUPPORT_LS029B3SX02 is not set # CONFIG_LCD_SUPPORT_LT070ME05000 is not set # CONFIG_LCD_SUPPORT_S6D7AA0X01 is not set # CONFIG_LCD_SUPPORT_T27P06 is not set # CONFIG_LCD_SUPPORT_TFT720x1280 is not set # CONFIG_LCD_SUPPORT_WTQ05027D01 is not set # CONFIG_LCD_SUPPORT_H245QBN02 is not set # CONFIG_LCD_SUPPORT_ST7789V is not set # CONFIG_LCD_SUPPORT_ST7796S is not set # CONFIG_LCD_SUPPORT_ST7701S is not set # CONFIG_LCD_SUPPORT_T30P106 is not set # CONFIG_LCD_SUPPORT_TO20T20000 is not set # CONFIG_LCD_SUPPORT_FRD450H40014 is not set # CONFIG_LCD_SUPPORT_S2003T46G is not set # CONFIG_LCD_SUPPORT_WILLIAMLCD is not set # CONFIG_LCD_SUPPORT_LQ101R1SX03 is not set # CONFIG_LCD_SUPPORT_INET_DSI_PANEL is not set # CONFIG_LCD_SUPPORT_WTL096601G03 is not set # CONFIG_LCD_SUPPORT_BP101WX1 is not set # CONFIG_LCD_SUPPORT_M133X56 is not set # CONFIG_LCD_SUPPORT_K101IM2QA04 is not set # CONFIG_LCD_SUPPORT_K101IM2BYL02L is not set # CONFIG_LCD_SUPPORT_FX070 is not set # CONFIG_LCD_SUPPORT_M101B31 is not set # CONFIG_LCD_SUPPORT_CC08021801_310_800X1280 is not set # CONFIG_LCD_SUPPORT_KD101NA5 is not set # CONFIG_LCD_SUPPORT_KD070D57 is not set # CONFIG_LCD_SUPPORT_ZS080NI4003E7H3H_A is not set # CONFIG_LCD_SUPPORT_K080_IM2HYL802R_800X1280 is not set # CONFIG_LCD_SUPPORT_K101_IM2BYL02_L_800X1280 is not set # CONFIG_LCD_SUPPORT_JD9366AB_3 is not set # CONFIG_LCD_SUPPORT_TFT08006 is not set CONFIG_LCD_SUPPORT_ST7701S_G5=y CONFIG_LCD_SUPPORT_T050K589=y CONFIG_LCD_SUPPORT_JD9161Z_MIPI=y CONFIG_LCD_SUPPORT_ICN6202=y # # Display engine feature select # # CONFIG_DISP2_SUNXI_SUPPORT_SMBL is not set # CONFIG_DISP2_SUNXI_SUPPORT_ENAHNCE is not set # CONFIG_SUNXI_TV_FASTLOGO is not set # CONFIG_SUNXI_FASTLOGO_JPEG is not set
-
T527 使用 DRM 驱动 edp 屏幕
进入 menuconfig 勾选 drm 驱动
./build.sh menuconfig
先勾选 DRM
再勾选 DRM 驱动
选择驱动的phy
选择屏幕
选择 general 屏幕面板驱动
关闭原来的 disp2 fbdev 驱动
配置设备树
edp_panel_backlight: edp_backlight { compatible = "pwm-backlight"; status = "okay"; brightness-levels = < 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255>; default-brightness-level = <200>; enable-gpios = <&pio PI 5 GPIO_ACTIVE_HIGH>; /* power-supply = <®_backlight_12v>; */ pwms = <&a_pwm 5 5000000 0>; }; edp_panel: edp_panel { compatible = "edp-general-panel"; status = "okay"; power0-supply = <®_dcdc4>; backlight = <&edp_panel_backlight>; panel-timing { clock-frequency = <348577920>; /* pixel clock */ hactive = <2560>; hback-porch = <120>; hfront-porch = <88>; hsync-len = <32>; vactive = <1600>; vback-porch = <71>; vfront-porch = <28>; vsync-len = <5>; /* hor_sync_polarity */ hsync-active = <1>; /* ver_sync_polarity */ vsync-active = <1>; // unused now /* de-active = <1>; pixelclk-active = <1>; syncclk-active = <0>; interlaced; doublescan; doubleclk; */ }; ports { #address-cells = <1>; #size-cells = <0>; panel_in: port@0 { #address-cells = <1>; #size-cells = <0>; reg = <0>; edp_panel_in: endpoint@0 { reg = <0>; remote-endpoint = <&edp_panel_out>; }; }; }; };
和 drm_edp 的配置
&drm_edp { status = "okay"; edp_ssc_en = <0>; edp_ssc_mode = <0>; edp_psr_support = <0>; edp_colordepth = <8>; /* 6/8/10/12/16 */ edp_color_fmt = <0>; /* 0:RGB 1: YUV444 2: YUV422 */ lane1_sw = <0>; lane1_pre = <0>; lane2_sw = <0>; lane2_pre = <0>; lane3_sw = <0>; lane3_pre = <0>; efficient_training = <0>; sink_capacity_prefer = <1>; edid_timings_prefer = <1>; timings_fixed = <1>; vcc-edp-supply = <®_bldo3>; vdd-edp-supply = <®_dcdc2>; panel = <&edp_panel>; ports { edp_out: port@1 { edp_panel_out: endpoint@0 { reg = <0>; remote-endpoint = <&edp_panel_in>; }; }; }; };
-
回复: V853使用MIPI CSI接口是否只支持RAW格式像素?
@xjy_5 一般来说配置sensor0_isp_used = <0>; 就不会调用ISP,虽然会配置但是不会处理。需要再跟踪一下调用
-
回复: V853使用MIPI CSI接口是否只支持RAW格式像素?
sensor0:sensor@0 { device_type = "sensor0"; sensor0_mname = "gc2053_mipi"; /* 必须要和驱动的 SENSOR_NAME 一致 */ sensor0_twi_cci_id = <1>; /* 所使用的twi id号,本例中使用的是twi1,故填写为1 */ sensor0_twi_addr = <0x6e>; /* sensor 设备ID地址,必须与驱动中的I2C_ADDR一致 */ sensor0_mclk_id = <0>; /* 所使用的mclk id号,本例中使用的是MCLK0,故填写为0 */ sensor0_pos = "rear"; sensor0_isp_used = <1>; /* 所使用的sensor为raw sensor,需要过ISP处理,故填写为1 */ sensor0_fmt = <1>; /* sensor输出的图像格式,YUV:0,RAW:1 */ sensor0_stby_mode = <0>; sensor0_vflip = <0>; /* VIPP 图像垂直翻转 */ sensor0_hflip = <0>; /* VIPP 图像水平翻转 */ sensor0_iovdd-supply = <®_aldo2>;/* sensor iovdd 连接的 ldo,根据硬件原理图的连接来决定(在硬件原理图中搜索aldo,然后找到CSI-iovdd对应的 是哪一个aldo即可) */ sensor0_iovdd_vol = <1800000>; /* iovdd的电压 */ sensor0_avdd-supply = <®_bldo2>; /* sensor avdd连接的 ldo,根据硬件原理图的连接来决定 */ sensor0_avdd_vol = <2800000>; /* 同上 */ sensor0_dvdd-supply = <®_dldo2>; /* 同上 */ sensor0_dvdd_vol = <1200000>; /* 同上 */ sensor0_power_en = <>; sensor0_reset = <&pio PA 11 1 0 1 0>; /* GPIO 信息配置:pio 端口 组内序号 功能分配 内部电阻状态 驱动能力 输出电平状态,本例中使用的是PA11*/ sensor0_pwdn = <&pio PA 9 1 0 1 0>; /* GPIO 信息配置:pio 端口 组内序号 功能分配 内部电阻状态 驱动能力 输出电平状态,本例中使用的是PA9*/ flash_handle = <&flash0>; act_handle = <&actuator0>; status = "okay"; };
填写
Sensor
输出图像格式
sensor
输出图像格式定义在sensor_format_struct
结构体中,vin v4l2
驱动框架通过获取sensor_format_struct
结构体成员信息来获取当前sensor
输出图像格式,sensor_formats
结构体中需要填写的成员是.desc
和.mbus_code
。
.desc
是描述sensor
输出的图像格式,本例中gc2053
是RGB Raw sensor
,故.desc
成员填写为"Raw RGB Bayer"
。.mbus_code
为sensor
图像数据输出顺序,sensor RAW
图像是以Bayer
格式传输的(每个像素只表示RGB
其中一个分量),常见的Bayer
格式为:RGGB
、BGGR
、GRBG
、GBRG
,这个可以询问一下sensor
原厂或者翻阅sensor datasheet
进行查找。.mbus_code
若填错, 会导致色彩偏紫红和出现网格状纹理。 本例中
gc2053
图像输出格式为RGGB
,且当前的配置是10bit mipi
接口,故.mbus_code
填写为
MEDIA_BUS_FMT_SRGGB10_1X10
,若当前调试的sensor
配置是8bit
输出,
则.mbus_code
填写为MEDIA_BUS_FMT_SRGGB8_1X8
,按照这种规则进行填写。static struct sensor_format_struct sensor_formats[] = { { .desc = "Raw RGB Bayer", /* 填写 Sensor 初始化时默认的 Bayer 格式,目的是告知主控端ISP当前图像的 Bayer 格式,ISP需要以同样的格式来接收和处理图像数据 */ .mbus_code = MEDIA_BUS_FMT_SRGGB10_1X10, .regs = sensor_fmt_raw, .regs_size = ARRAY_SIZE(sensor_fmt_raw), .bpp = 1 }, };
如果
sensor
输出图像格式是YUV
的话,则需要根据sensor
图像数据输出顺序选择YUYV/VYUY/UYVY/YVYU
其中一种,如下:static struct sensor_format_struct sensor_formats[] = { { .desc = "YUYV 4:2:2", .mbus_code = MEDIA_BUS_FMT_YUYV8_2X8, .regs = sensor_fmt_raw, .regs_size = ARRAY_SIZE(sensor_fmt_raw), .bpp = 2, }, };
同时,
sensor_get_fmt_mbus_core
函数也要将当前sensor
的图像输出格式赋值给函数参数*code
,有些sensor
在翻转后RGB
顺序不会自动进行调整,需要主控端ISP
需要按照当前sensor
翻转后的图像格式更新RGB
顺序,避免翻转后出现图像色彩异常的问题,如下,gc2053
支持翻转后sensor
内部自动调整RGB
顺序,所以函数参数*code仍赋值为MEDIA_BUS_FMT_SRGGB10_1X10
。static int sensor_get_fmt_mbus_core(struct v4l2_subdev *sd, int *code) { *code = MEDIA_BUS_FMT_SRGGB10_1X10; // gc2053 support change the rgb format by itself } static long sensor_ioctl(struct v4l2_subdev *sd, unsigned int cmd, void *arg) { int ret = 0; struct sensor_info *info = to_state(sd); switch (cmd) { case VIDIOC_VIN_GET_SENSOR_CODE: /* vin v4l2框架层在sensor翻转接口被调用后, 通过VIDIOC_VIN_GET_SENSOR_CODE获取当前sensor的RGB顺序 */ sensor_get_fmt_mbus_core(sd, (int *)arg); break; default: return -EINVAL; } return ret; }
-
回复: V851S SPI2 死机
对照手册:
-
SPI2 地址 0x04027000, 没问题
-
SPI2 中断号 49,配置时需要减掉SIG和PPI的数量32,也就是17
中断号配置错误,应该为17不是18
spi2: spi@04027000 { #address-cells = <1>; #size-cells = <0>; compatible = "allwinner,sun8i-spi"; device_type = "spi2"; reg = <0x0 0x04027000 0x0 0x1000>; interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; clocks = <&clk_pll_periph0300m>, <&clk_spi2>; status = "disabled"; };
-
-
回复: V853使用MIPI CSI接口是否只支持RAW格式像素?
重新确认了一下,MIPI 接受的数据格式与MIPI无关,也就是MIPI也可以接收YUV这类数据。
是否是因为后端配置的问题。参考T507的TC358743驱动配置的是
MEDIA_BUS_FMT_UYVY8_2X8
-
回复: V853使用MIPI CSI接口是否只支持RAW格式像素?
@xjy_5 RGB888_1X24 我感觉是直出RGB信号的吧
这个DTSI是在T507上配置的,可以参考一下
vind0:vind@0 { compatible = "allwinner,sunxi-vin-media", "simple-bus"; #address-cells = <2>; #size-cells = <2>; ranges; device_id = <0>; vind0_clk = <384000000>; reg = <0x0 0x06600800 0x0 0x200>, <0x0 0x06600000 0x0 0x800>; clocks = <&clk_csi_top>, <&clk_pll_csi>, <&clk_csi_master0>, <&clk_hosc>, <&clk_pll_csi>, <&clk_csi_master1>, <&clk_hosc>, <&clk_pll_csi>; pinctrl-names = "mclk0-default","mclk0-sleep","mclk1-default","mclk1-sleep"; pinctrl-0 = <&csi_mclk0_pins_a>; pinctrl-1 = <&csi_mclk0_pins_b>; pinctrl-2 = <&csi_mclk1_pins_a>; pinctrl-3 = <&csi_mclk1_pins_b>; status = "okay"; csi_cci0:cci@0 { compatible = "allwinner,sunxi-csi_cci"; reg = <0x0 0x06614000 0x0 0x400>; interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; pinctrl-names = "default","sleep"; pinctrl-0 = <&csi_cci0_pins_a>; pinctrl-1 = <&csi_cci0_pins_b>; device_id = <0>; status = "okay"; }; csi_cci1:cci@1 { compatible = "allwinner,sunxi-csi_cci"; reg = <0x0 0x06614400 0x0 0x400>; interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; pinctrl-names = "default","sleep"; pinctrl-0 = <&csi_cci1_pins_a>; pinctrl-1 = <&csi_cci1_pins_b>; device_id = <1>; status = "okay"; }; csi0:csi@0 { device_type = "csi0"; compatible = "allwinner,sunxi-csi"; reg = <0x0 0x06601000 0x0 0x1000>; interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; device_id = <0>; iommus = <&mmu_aw 4 1>; status = "okay"; }; csi1:csi@1 { device_type = "csi1"; compatible = "allwinner,sunxi-csi"; reg = <0x0 0x06602000 0x0 0x1000>; interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; pinctrl-names = "default","sleep"; pinctrl-0 = <&csi1_pins_a>; pinctrl-1 = <&csi1_pins_b>; device_id = <1>; iommus = <&mmu_aw 4 1>; status = "okay"; }; mipi0:mipi@0 { compatible = "allwinner,sunxi-mipi"; reg = <0x0 0x0660C000 0x0 0x1000>; interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; device_id = <0>; status = "okay"; }; isp0:isp@0 { compatible = "allwinner,sunxi-isp"; device_id = <0>; status = "okay"; }; isp1:isp@1 { compatible = "allwinner,sunxi-isp"; device_id = <1>; status = "okay"; }; scaler0:scaler@0 { compatible = "allwinner,sunxi-scaler"; device_id = <0>; iommus = <&mmu_aw 4 1>; status = "okay"; }; scaler1:scaler@1 { compatible = "allwinner,sunxi-scaler"; device_id = <1>; iommus = <&mmu_aw 4 1>; status = "okay"; }; scaler2:scaler@2 { compatible = "allwinner,sunxi-scaler"; device_id = <2>; iommus = <&mmu_aw 4 1>; status = "okay"; }; scaler3:scaler@3 { compatible = "allwinner,sunxi-scaler"; device_id = <3>; iommus = <&mmu_aw 4 1>; status = "okay"; }; scaler4:scaler@4 { compatible = "allwinner,sunxi-scaler"; device_id = <4>; iommus = <&mmu_aw 4 1>; status = "okay"; }; scaler5:scaler@5 { compatible = "allwinner,sunxi-scaler"; device_id = <5>; iommus = <&mmu_aw 4 1>; status = "okay"; }; actuator0:actuator@0 { device_type = "actuator0"; compatible = "allwinner,sunxi-actuator"; actuator0_name = "ad5820_act"; actuator0_slave = <0x18>; actuator0_af_pwdn = <>; actuator0_afvdd = "afvcc-csi"; actuator0_afvdd_vol = <2800000>; status = "disabled"; }; flash0:flash@0 { device_type = "flash0"; compatible = "allwinner,sunxi-flash"; flash0_type = <2>; flash0_en = <>; flash0_mode = <>; flash0_flvdd = ""; flash0_flvdd_vol = <>; device_id = <0>; status = "disabled"; }; sensor0:sensor@0 { device_type = "sensor0"; compatible = "allwinner,sunxi-sensor"; sensor0_mname = "tc358743_mipi"; sensor0_twi_cci_id = <2>; sensor0_twi_addr = <0x1f>; sensor0_mclk_id = <0>; sensor0_pos = "rear"; sensor0_isp_used = <0>; sensor0_fmt = <0>; sensor0_stby_mode = <0>; sensor0_vflip = <0>; sensor0_hflip = <0>; sensor0_cameravdd-supply = <>; sensor0_cameravdd_vol = <2800000>; sensor0_iovdd-supply = <®_cldo4>; sensor0_iovdd_vol = <1800000>; sensor0_avdd-supply = <>; sensor0_avdd_vol = <>; sensor0_dvdd-supply = <>; sensor0_dvdd_vol = <>; sensor0_power_en = <>; sensor0_reset = <&pio PI 8 1 0 1 0>; sensor0_pwdn = <>; sensor0_sm_vs = <>; flash_handle = <&flash0>; act_handle = <&actuator0>; device_id = <0>; status = "okay"; }; sensor1:sensor@1 { device_type = "sensor1"; compatible = "allwinner,sunxi-sensor"; sensor1_mname = "ov5647"; sensor1_twi_cci_id = <1>; sensor1_twi_addr = <0x6c>; sensor1_mclk_id = <1>; sensor1_pos = "front"; sensor1_isp_used = <0>; sensor1_fmt = <0>; sensor1_stby_mode = <0>; sensor1_vflip = <0>; sensor1_hflip = <0>; sensor1_cameravdd-supply = <>; sensor1_cameravdd_vol = <2800000>; sensor1_iovdd-supply = <>; sensor1_iovdd_vol = <2800000>; sensor1_avdd-supply = <>; sensor1_avdd_vol = <2800000>; sensor1_dvdd-supply = <>; sensor1_dvdd_vol = <1500000>; sensor1_power_en = <>; sensor1_reset = <&pio PE 14 1 0 1 0>; sensor1_pwdn = <&pio PE 15 1 0 1 0>; sensor1_sm_vs = <>; flash_handle = <>; act_handle = <>; device_id = <1>; status = "disable"; }; vinc0:vinc@0 { device_type = "vinc0"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x06609000 0x0 0x200>; interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>; vinc0_csi_sel = <0>; vinc0_mipi_sel = <0>; vinc0_isp_sel = <0>; vinc0_isp_tx_ch = <0>; vinc0_rear_sensor_sel = <0>; vinc0_front_sensor_sel = <0>; vinc0_sensor_list = <0>; device_id = <0>; iommus = <&mmu_aw 4 1>; status = "okay"; }; vinc1:vinc@1 { device_type = "vinc1"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x06609200 0x0 0x200>; interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; vinc1_csi_sel = <0>; vinc1_mipi_sel = <0>; vinc1_isp_sel = <0>; vinc1_isp_tx_ch = <0>; vinc1_rear_sensor_sel = <0>; vinc1_front_sensor_sel = <0>; vinc1_sensor_list = <0>; device_id = <1>; iommus = <&mmu_aw 4 1>; status = "okay"; }; vinc2:vinc@2 { device_type = "vinc2"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x06609400 0x0 0x200>; interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; vinc2_csi_sel = <0>; vinc2_mipi_sel = <0>; vinc2_isp_sel = <0>; vinc2_isp_tx_ch = <0>; vinc2_rear_sensor_sel = <0>; vinc2_front_sensor_sel = <0>; vinc2_sensor_list = <0>; device_id = <2>; iommus = <&mmu_aw 4 1>; status = "disabled"; }; vinc3:vinc@3 { device_type = "vinc3"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x06609600 0x0 0x200>; interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; vinc3_csi_sel = <0>; vinc3_mipi_sel = <0>; vinc3_isp_sel = <0>; vinc3_isp_tx_ch = <0>; vinc3_rear_sensor_sel = <0>; vinc3_front_sensor_sel = <0>; vinc3_sensor_list = <0>; device_id = <3>; iommus = <&mmu_aw 4 1>; status = "disabled"; }; vinc4:vinc@4 { device_type = "vinc4"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x06609800 0x0 0x200>; interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; vinc4_csi_sel = <1>; vinc4_mipi_sel = <0xff>; vinc4_isp_sel = <1>; vinc4_isp_tx_ch = <0>; vinc4_rear_sensor_sel = <1>; vinc4_front_sensor_sel = <1>; vinc4_sensor_list = <0>; device_id = <4>; iommus = <&mmu_aw 5 1>; status = "disabled"; }; vinc5:vinc@5 { device_type = "vinc5"; compatible = "allwinner,sunxi-vin-core"; reg = <0x0 0x06609A00 0x0 0x200>; interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>; vinc5_csi_sel = <1>; vinc5_mipi_sel = <0xff>; vinc5_isp_sel = <1>; vinc5_isp_tx_ch = <0>; vinc5_rear_sensor_sel = <1>; vinc5_front_sensor_sel = <1>; vinc5_sensor_list = <0>; device_id = <5>; iommus = <&mmu_aw 5 1>; status = "disabled"; }; };
-
回复: SDK文件夹移动位置后编译出来的img 烧录到板子上,报硬件检查错误,怎么回事?
@hy123456 移动位置后需要删除out文件夹,因为SDK生成的设备的认证信息变化了但是由于SDK移动没有重新生成新的认证
-
回复: V853 DDR原理图问题
AW平台的DRAM控制器支持地址线REMAP,可以通过REMAP简化外部不同种类的DRAM的连接。
这个REAMP是固定在芯片里的不能自己修改,在电路原理图可以看到REMAP的引脚。
如图,如果需要挂DDR3内存,需要接DDR3的REAMP,如果需要接DDR2,可以接默认的REMAP
举个其他平台的例子:
这里接的是 LPDDR4,使用LPDDR4的REMAP
这里接的是DDR4,使用DDR4的REMAP
-
回复: 請問大大誰有usb驅動程式能下載?
@abc16883
下载工具:
AllwinnertechPhoeniSuitRelease20230905.zip下载驱动:
全志USB烧录驱动20201229 -
回复: 摄像头无法获取图像
Out of memory 没有内存了,camerademo走的拍摄路径是v4l2不是mpp的vipp路径,需要的内存较大,可以尝试拍摄小分辨率的图片测试
[CAMERA] Resolution size : 1920 * 1088
-
回复: 想给R128移植上LVGL按照教程结果失败
- 出现重复定义,请问是不是同时勾选了 lv_examples 和 lv_g2d_test
- 分区表配置的空间过小,FAQ有解决方法:https://r128.docs.aw-ol.com/others/faq/
-
回复: T113输出日志,是不是片子坏了啊
@huerli 在 T113输出日志,是不是片子坏了啊 中说:
BUG: Bad page map in process S10mdev pte:40cdf59f pmd:41bb1835
主线驱动缺陷导致mdev申请出现NULL pointer。可以尝试使用新内核
-
回复: R128驱动SD卡失败
- SanDisk HIGH ENDURABCE 32G SDHC Pass
- SanDisk Ultra 128G SDXC Pass
- NOKIA 2.0G Fail
- Unknow SD 120M SDHC Pass
- Kingston 4G SDHC Pass
- Micro SD 512M SDHC Pass
- ADATA Micro SD 2G SDHC Pass
- Kioxia exceria 32G SDHC Pass
- SanDisk Ultra 16GB SDHC Pass
- SanDisk HIGH ENDURABCE 32G SDHC Pass
-
回复: R128驱动SD卡失败
[sdc0] card_ctrl = 0 card_high_speed = 0 card_line = 4 sdc_d1 = port:PA27<2><1><3><default> sdc_d0 = port:PA26<2><1><3><default> sdc_clk = port:PA29<2><1><3><default> sdc_cmd = port:PA25<2><1><3><default> sdc_d3 = port:PA24<2><1><3><default> sdc_d2 = port:PA28<2><1><3><default> [sdc0det_para] sdc0_det = port:PA23<0><1><3><1>
适配 EVT 的测试镜像:
be810818-4bc0-447f-8705-d5d70abd8813-rtos_freertos_r128s2_evt_uart0_16Mnor.img -
回复: R128的屏幕颜色显示异常时怎么回事?
jlt35031c是比较少见的小端屏,但是大部分的SPI屏都是大端屏,所以用jlt35031c时,需要修改sys_config.fex里面的配置项lcd_rgb_order为9.
unsigned char color[4] = {0xff,0x0,0xff,0x0};
这个数组决定颜色,颜色顺序是R(红) G(绿) B(蓝) A(亮度)。
所以红色 + 蓝色,应该是紫色
但是这里由于使用的是SPI接口驱动这个屏幕,并不支持lcd_rgb_order的参数配置。所以在屏幕初始化的时候通过写寄存器配置为对应的接口以支持LVGL的正确显示输出。但是测试命令可能会出现反色的情况。
-
回复: R128-S2 驱动 1024x600 RGB 显示屏 并运行 LVGL
屏参改一下
lcd_driver_name = "default_lcd" lcd_backlight = 150 lcd_if = 0 lcd_x = 1024 lcd_y = 600 lcd_width = 150 lcd_height = 94 lcd_rb_swap = 0 lcd_dclk_freq = 48 lcd_pwm_used = 1 lcd_pwm_ch = 7 lcd_pwm_freq = 500000 lcd_pwm_pol = 1 lcd_hbp = 160 lcd_ht = 1344 lcd_hspw = 20 lcd_vbp = 20 lcd_vt = 635 lcd_vspw = 3 lcd_lvds_if = 0 lcd_lvds_colordepth = 1 lcd_lvds_mode = 0 lcd_frm = 0 lcd_io_phase = 0x0000 lcd_gamma_en = 0 lcd_bright_curve_en = 0 lcd_cmap_en = 0
-
回复: Android13编译不过
感觉是环境配置有问题
试试:- 重开一个终端
- 重新 source build/envsetup.sh
- 重新 ./longan/build.sh config
- ./longan/build.sh distclean
- make installclean
- lunch
-
R128-S2 驱动 1024x600 RGB 显示屏 并运行 LVGL
由于屏幕较大首先精简系统内存,关闭DSP核心,并将 RV 核心移到 HSPSRAM 上提高带宽。配置 LV_COLOR_DEPTH 16 提高帧率降低内存占用
patch 如下,增加了新方案r128-devkit-rgb:161ca91b-f759-4108-8bfc-85114394da0c-r128-devkit-rgb.tar.gz
编译打包即可
700ms启动 LVGL:
-
回复: 全志 DDR初始化 v3s
@casdfxx 这个代码是u-boot提供的,具体问题可以访问 https://lists.denx.de/listinfo/u-boot 寻求帮助。
裸机工程:https://github.com/xboot/xboot/tree/master/src/arch/arm32/mach-v3s
-
回复: 寻求tina的display 官方文档说明,感谢
disp init configuration disp_mode (0:screen0<screen0,fb0>) screenx_output_type (0:none; 1:lcd; 2:tv; 3:hdmi;5:vdpo) screenx_output_mode (used for hdmi output, 0:480i 1:576i 2:480p 3:576p 4:720p50) (5:720p60 6:1080i50 7:1080i60 8:1080p24 9:1080p50 10:1080p60) screenx_output_format (for hdmi, 0:RGB 1:yuv444 2:yuv422 3:yuv420) screenx_output_bits (for hdmi, 0:8bit 1:10bit 2:12bit 2:16bit) screenx_output_eotf (for hdmi, 0:reserve 4:SDR 16:HDR10 18:HLG) screenx_output_cs (for hdmi, 0:undefined 257:BT709 260:BT601 263:BT2020) screenx_output_dvi_hdmi (for hdmi, 0:undefined 1:dvi mode 2:hdmi mode) screen0_output_range (for hdmi, 0:default 1:full 2:limited) screen0_output_scan (for hdmi, 0:no data 1:overscan 2:underscan) screen0_output_aspect_ratio (for hdmi, 8-same as original picture 9-4:3 10-16:9 11-14:9) fbx format (4:RGB655 5:RGB565 6:RGB556 7:ARGB1555 8:RGBA5551 9:RGB888 10:ARGB8888 12:ARGB4444) fbx pixel sequence (0:ARGB 1:BGRA 2:ABGR 3:RGBA) fb0_scaler_mode_enable(scaler mode enable, used FE) fbx_width,fbx_height (framebuffer horizontal/vertical pixels, fix to output resolution while equal 0) lcdx_backlight (lcd init backlight,the range:[0,256],default:197 lcdx_yy (lcd init screen bright/contrast/saturation/hue, value:0~100, default:50/50/57/50) lcd0_contrast (LCD contrast, 0~100) lcd0_saturation (LCD saturation, 0~100) lcd0_hue (LCD hue, 0~100) framebuffer software rotation setting: disp_rotation_used: (0:disable; 1:enable,you must set fbX_width to lcd_y, set fbX_height to lcd_x) degreeX: (X:screen index; 0:0 degree; 1:90 degree; 3:270 degree) degreeX_Y: (X:screen index; Y:layer index 0~15; 0:0 degree; 1:90 degree; 3:270 degree) devX_output_type : config output type in bootGUI framework in UBOOT-2018. (0:none; 1:lcd; 2:tv; 4:hdmi;) devX_output_mode : config output resolution(see include/video/sunxi_display2.h) of bootGUI framework in UBOOT-2018 devX_screen_id : config display index of bootGUI framework in UBOOT-2018 devX_do_hpd : whether do hpd detectation or not in UBOOT-2018 chn_cfg_mode : Hardware DE channel allocation config. 0:single display with 6 channel, 1:dual display with 4 channel in main display and 2 channel in second display, 2:dual display with 3 channel in main display and 3 channel in second in display.
-
回复: 求高人指点! ISP通路测试 sample_vin_isp_test 报错
@xjy_5 tc358743有现成的驱动,可以试一下
sensor0:sensor@0 { device_type = "sensor0"; compatible = "allwinner,sunxi-sensor"; sensor0_mname = "tc358743_mipi"; sensor0_twi_cci_id = <2>; sensor0_twi_addr = <0x1f>; sensor0_mclk_id = <0>; sensor0_pos = "rear"; sensor0_isp_used = <0>; sensor0_fmt = <0>; sensor0_stby_mode = <0>; sensor0_vflip = <0>; sensor0_hflip = <0>; sensor0_cameravdd-supply = <>; sensor0_cameravdd_vol = <2800000>; sensor0_iovdd-supply = <®_cldo4>; sensor0_iovdd_vol = <1800000>; sensor0_avdd-supply = <>; sensor0_avdd_vol = <>; sensor0_dvdd-supply = <>; sensor0_dvdd_vol = <>; sensor0_power_en = <>; sensor0_reset = <&pio PI 8 1 0 1 0>; sensor0_pwdn = <>; sensor0_sm_vs = <>; flash_handle = <&flash0>; act_handle = <&actuator0>; device_id = <0>; status = "okay"; };
sensor0_isp_used 配置了不使用 ISP
sensor0_isp_used = <0>;
-
回复: 求助全志大佬,有没有XR806的windows环境下的开发指导手册
@rookie 但是没有unix编译环境,另外cygwin如果之前没有用过坑比linux下还大
-
回复: V851s VIP lite有无多模型的示例?
创建模型 vip_create_network(&network1); vip_prepare_network(network1); vip_create_network(&network2); vip_prepare_network(network2); 设置模型输入输出 // set network input/output buffer 创建执行组 vip_create_group(max, &group); // max = 2 vip_add_network(group, network1); vip_add_network(group, network2); 执行 vip_run_group(group, max); 获取输出结果 销毁 vip_finish_network(network1); vip_finish_network(network2); vip_destroy_buffer // 销毁input/output vip_destroy_group(group);
-
Tina Linux 使用 adb dump、修改设备的 rootfs
adb 可用时可以直接读取 /dev/by-name/rootfs 将rootfs导出来
adb pull /dev/by-name/rootfs rootfs.img
也可以push到tmp文件夹然后dd写入
adb push rootfs.img /tmp dd if=/tmp/rootfs.img of=/dev/by-name/rootfs
-
回复: 为什么添加Gstreamer后会报这个错误
@uccccc 在 为什么添加Gstreamer后会报这个错误 中说:
@awwwwa 麻烦问一下这个应该怎麼添加,有没有相关的资料亚
-
回复: t113-i开启CONFIG_CAN_SUN8I=y配置后编译报错
内核配置去掉宏:CONFIG_STACKPROTECTOR和CONFIG_STACKPROTECTOR_STRONG。
-
R128 打包出现 ERROR: update_mbr failed
24993+0 records in 24993+0 records out 6398208 bytes (6.4 MB) copied, 0.0271082 s, 236 MB/s ERROR: dl file rtos_riscv.fex size too large ERROR: filename = rtos_riscv.fex ERROR: dl_file_size = 1579 sector ERROR: part_size = 1000 sector ERROR: update mbr file fail ERROR: update_mbr failed
这是因为
rootfs.fex
太大了,分区容量设置过小。解决方法
- 确定打包使用的分区表
运行打包命令,找到打包使用发分区表。例如这里使用的是
sys_partition_xip.fex
- 编辑分区表
使用
cconfigs
命令进入目录,找到打包使用的分区表,编辑修改-
找到上面报错的行,修改
size
选项,单位是扇区。对于 NOR 方案请对齐。这里我们修改到7000
-
重新打包,正常通过
-
回复: 使用ffmpeg网络推流,用usb摄像头能正常使用,用mipi摄像头同样的操作下返回找不到设备的错误,实际上我/dev/下是有videox生成的
@vincent1 需要修改ffmpeg从vipp获取数据,或者使用mpp推流不使用ffmpeg
-
回复: 使用ffmpeg网络推流,用usb摄像头能正常使用,用mipi摄像头同样的操作下返回找不到设备的错误,实际上我/dev/下是有videox生成的
mipi摄像头需要走vipp通路,video0只有一个很基础的v4l2设备,上层需要更多的处理,例如isp,3a等,usb走uvc直接对接v4l2提供全部功能
-
回复: R329 tina 启动卡死问题
@kkkcxf 在 R329 tina 启动卡死问题 中说:
Waiting for root device /dev/mmcblk0p4...
rootfs配置问题,不是卡死了而是等待挂载ROOTFS
-
回复: Gaviar Handheld (小志掌機)
@yofa2008 img不是磁盘镜像文件,是专有的压缩格式,不带分区表。可以用OpenixCard转换为dd可以写入的带分区表的镜像
-
回复: camerademo.c修改后编译打包的camerademo不变
@mysteryli 可以到 out/v853/xxxx/openwrt/build_dir/target/camerademo/ipkg-install/usr
-
回复: 抓图报错[VIN_ERR]isp0 width error,求给个排查思路
@xjy_5 在 抓图报错[VIN_ERR]isp0 width error,求给个排查思路 中说:
首先,isp配置错误
[VIN_ERR]isp0 configuration error
isp fifo为空
[VIN_ERR]isp0 internal fifo full
isp 帧错误
[VIN_ERR]isp0 frame lost!
如果不需要使用isp,可以修改sample的源码删除isp处理部分,并且修改设备树禁用isp