static int sony_tft_panel_blank(struct msm_lcdc_panel_ops *ops) { uint8_t data[4] = {0, 0, 0, 0}; pr_info("%s: +()\n", __func__); mutex_lock(&panel_lock); clk_enable(spi_clk); qspi_send_9bit(0x0, 0x28); qspi_send_9bit(0x0, 0x10); clk_disable(spi_clk); msleep(40); sony_tft_panel_power(0); tft_panel_on = 0; mutex_unlock(&panel_lock); if (!is_sony_spi()) { data[0] = 5; data[1] = 0; data[3] = 1; microp_i2c_write(0x25, data, 4); } pr_info("%s: -()\n", __func__); return 0; }
static int sony_tft_panel_unblank(struct msm_lcdc_panel_ops *ops) { pr_info("%s: +()\n", __func__); mutex_lock(&panel_lock); if (tft_panel_on) { pr_info("%s: -() already unblanked\n", __func__); goto done; } sony_tft_panel_power(1); msleep(45); clk_enable(spi_clk); qspi_send_9bit(0x0, 0x11); msleep(5); qspi_send_9bit(0x0, 0x3a); if (is_sony_RGB666()) qspi_send_9bit(0x1, 0x06); else qspi_send_9bit(0x1, 0x05); msleep(100); qspi_send_9bit(0x0, 0x29); msleep(20); //init gamma setting if(!is_sony_with_gamma()) sony_tft_panel_without_gamma_init(); /* unlock register page for pwm setting */ if (is_sony_spi()) { qspi_send_9bit(0x0, 0xf0); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x0, 0xf1); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x0, 0xd0); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x0, 0xc2); qspi_send_9bit(0x1, 0x53); qspi_send_9bit(0x1, 0x12); } clk_disable(spi_clk); msleep(100); tft_panel_on = 1; sony_tft_set_pwm_val(last_val); pr_info("%s: -()\n", __func__); done: mutex_unlock(&panel_lock); return 0; }
static int sony_tft_panel_unblank(struct msm_lcdc_panel_ops *ops) { pr_info("%s: +()\n", __func__); mutex_lock(&panel_lock); if (tft_panel_on) { pr_info("%s: -() already unblanked\n", __func__); goto done; } sony_tft_panel_power(1); msleep(45); clk_enable(spi_clk); qspi_send_9bit(0x0, 0x11); msleep(5); qspi_send_9bit(0x0, 0x3a); qspi_send_9bit(0x1, 0x05); msleep(100); qspi_send_9bit(0x0, 0x29); /* unlock register page for pwm setting */ qspi_send_9bit(0x0, 0xf0); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x0, 0xf1); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x0, 0xd0); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x1, 0x5a); qspi_send_9bit(0x0, 0xc2); qspi_send_9bit(0x1, 0x53); qspi_send_9bit(0x1, 0x12); clk_disable(spi_clk); msleep(100); tft_panel_on = 1; sony_tft_set_pwm_val(last_val); pr_info("%s: -()\n", __func__); done: mutex_unlock(&panel_lock); return 0; }
static int sony_tft_panel_blank(struct msm_lcdc_panel_ops *ops) { pr_info("%s: +()\n", __func__); mutex_lock(&panel_lock); clk_enable(spi_clk); qspi_send_9bit(0x0, 0x28); qspi_send_9bit(0x0, 0x10); clk_disable(spi_clk); msleep(40); sony_tft_panel_power(0); tft_panel_on = 0; mutex_unlock(&panel_lock); pr_info("%s: -()\n", __func__); return 0; }