disp: msm: dsi: batching multiple DSI commands using debugfs node
The change batches DSI commands sent using the debugfs node, in a separate buffer from the TX command buffer to ensure that they are not triggered before the last command bit is set. Once the last command bit is set the buffer is then copied to the DSI TX buffer and triggered. Change-Id: I9ba624e4e19341696a974994817603315c6c8a45 Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
此提交包含在:
@@ -1730,7 +1730,7 @@ const char *cmd_set_state_map[DSI_CMD_SET_MAX] = {
|
||||
"qcom,mdss-dsi-qsync-off-commands-state",
|
||||
};
|
||||
|
||||
static int dsi_panel_get_cmd_pkt_count(const char *data, u32 length, u32 *cnt)
|
||||
int dsi_panel_get_cmd_pkt_count(const char *data, u32 length, u32 *cnt)
|
||||
{
|
||||
const u32 cmd_set_min_size = 7;
|
||||
u32 count = 0;
|
||||
@@ -1754,7 +1754,7 @@ static int dsi_panel_get_cmd_pkt_count(const char *data, u32 length, u32 *cnt)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int dsi_panel_create_cmd_packets(const char *data,
|
||||
int dsi_panel_create_cmd_packets(const char *data,
|
||||
u32 length,
|
||||
u32 count,
|
||||
struct dsi_cmd_desc *cmd)
|
||||
@@ -1799,7 +1799,7 @@ error_free_payloads:
|
||||
return rc;
|
||||
}
|
||||
|
||||
static void dsi_panel_destroy_cmd_packets(struct dsi_panel_cmd_set *set)
|
||||
void dsi_panel_destroy_cmd_packets(struct dsi_panel_cmd_set *set)
|
||||
{
|
||||
u32 i = 0;
|
||||
struct dsi_cmd_desc *cmd;
|
||||
@@ -1810,12 +1810,12 @@ static void dsi_panel_destroy_cmd_packets(struct dsi_panel_cmd_set *set)
|
||||
}
|
||||
}
|
||||
|
||||
static void dsi_panel_dealloc_cmd_packets(struct dsi_panel_cmd_set *set)
|
||||
void dsi_panel_dealloc_cmd_packets(struct dsi_panel_cmd_set *set)
|
||||
{
|
||||
kfree(set->cmds);
|
||||
}
|
||||
|
||||
static int dsi_panel_alloc_cmd_packets(struct dsi_panel_cmd_set *cmd,
|
||||
int dsi_panel_alloc_cmd_packets(struct dsi_panel_cmd_set *cmd,
|
||||
u32 packet_count)
|
||||
{
|
||||
u32 size;
|
||||
|
新增問題並參考
封鎖使用者