#include "sys_config.h" #include "typesdef.h" #include "lib/video/dvp/cmos_sensor/csi.h" #include "dev.h" #include "devid.h" #include "hal/gpio.h" #include "hal/lcdc.h" #include "hal/spi.h" #include "hal/dsi.h" #include "osal/irq.h" #include "osal/string.h" #include "dev/vpp/hgvpp.h" #include "dev/scale/hgscale.h" #include "dev/jpg/hgjpg.h" #include "dev/lcdc/hglcdc.h" #include "osal/semaphore.h" #include "lib/lcd/lcd.h" #include "osal/mutex.h" #include "osal/sleep.h" #ifdef PIN_FROM_PARAM #include "pin_param.h" #endif uint8_t *dpipixel_fifo_mipi = NULL; uint8_t *generic_fifo_mipi = NULL; void mipi_set_maxrpack(struct dsi_device *dsi_dev,uint8_t size){ mipi_dsi_cmd_cfg(dsi_dev,DSI_SP_MAXRPACK,size,0,0); mipi_dsi_wait_pkt_fifo_full(dsi_dev); } void mipi_read_id(struct dsi_device *dsi_dev,uint8_t vcid,uint8_t cmd,uint32_t *buf,uint8_t len){ uint8_t i = 0; mipi_dsi_cmd_cfg(dsi_dev,DSI_SP_DCSR0P,cmd,vcid,0); for(i =0;i < len;i = i+4){ mipi_dsi_gen_pld_read_empty(dsi_dev); buf[i/4] = mipi_dsi_get_gen_pld_data(dsi_dev); } } void mipi_set_genw0p(struct dsi_device * dsi_dev,uint8_t vc_id){ mipi_dsi_cmd_cfg(dsi_dev,DSI_SP_GENW0P,0,vc_id,0); } void mipi_set_genw1p(struct dsi_device * dsi_dev,uint8_t vc_id,uint8_t cmd){ mipi_dsi_cmd_cfg(dsi_dev,DSI_SP_GENW1P,cmd,vc_id,0); } void mipi_set_dcsw1p(struct dsi_device * dsi_dev,uint8_t vc_id,uint8_t cmd){ mipi_dsi_cmd_cfg(dsi_dev,DSI_SP_DCSW0P,cmd,vc_id,0); } void mipi_set_lp_genw(struct dsi_device * dsi_dev,uint8_t vc_id,uint8_t *buf,uint32_t len){ uint32_t i; for(i=0;i