Merge branch 'bugfix/i80_lcd_tx_param_check_enhancement_v5.1' into 'release/v5.1'

fix(i80_lcd): enhance the check of a valid data phase (v5.1)

See merge request espressif/esp-idf!27428
This commit is contained in:
morris 2023-11-29 10:37:43 +08:00
commit 5f35f5ddb8

View File

@ -430,8 +430,9 @@ static esp_err_t panel_io_i80_tx_param(esp_lcd_panel_io_t *io, int lcd_cmd, cons
trans_desc->i80_device = next_device;
trans_desc->cmd_cycles = cmd_cycles;
trans_desc->cmd_value = lcd_cmd;
trans_desc->data = param ? bus->format_buffer : NULL;
trans_desc->data_length = param ? param_len : 0;
// either the param is NULL or the param_size is zero, means there isn't a data phase in this transaction
trans_desc->data = (param && param_len) ? bus->format_buffer : NULL;
trans_desc->data_length = trans_desc->data ? param_len : 0;
trans_desc->trans_done_cb = NULL; // no callback for parameter transaction
// mount data to DMA links
lcd_com_mount_dma_data(bus->dma_nodes, trans_desc->data, trans_desc->data_length);