int mdss_dsi_panel_initialize(struct mipi_panel_info *mipi, uint32_t broadcast) { int status = 0; uint32_t ctrl_mode = 0; #if (DISPLAY_TYPE_MDSS == 1) if (!mipi->panel_on_cmds) goto end; ctrl_mode = readl(mipi->ctl_base + CTRL); /* Enable command mode before sending the commands. */ writel(ctrl_mode | 0x04, mipi->ctl_base + CTRL); if (broadcast) writel(ctrl_mode | 0x04, mipi->sctl_base + CTRL); status = mdss_dsi_cmds_tx(mipi, mipi->panel_on_cmds, mipi->num_of_panel_on_cmds, broadcast); writel(ctrl_mode, mipi->ctl_base + CTRL); if (broadcast) writel(ctrl_mode, mipi->sctl_base + CTRL); if (!broadcast && !status && target_panel_auto_detect_enabled()) status = mdss_dsi_read_panel_signature(mipi); end: #endif return status; }
uint32_t oem_panel_max_auto_detect_panels() { return target_panel_auto_detect_enabled() ? DISPLAY_MAX_PANEL_DETECTION : 0; }