void exynos_mipi_dsi_set_main_disp_resol(struct mipi_dsim_device *dsim, unsigned int width_resol, unsigned int height_resol) { unsigned int reg; struct exynos_mipi_dsim *mipi_dsim = (struct exynos_mipi_dsim *)samsung_get_base_mipi_dsim(); /* standby should be set after configuration so set to not ready*/ reg = (readl(&mipi_dsim->mdresol)) & ~(DSIM_MAIN_STAND_BY); writel(reg, &mipi_dsim->mdresol); /* reset resolution */ reg &= ~(DSIM_MAIN_VRESOL(0x7ff) | DSIM_MAIN_HRESOL(0x7ff)); reg |= DSIM_MAIN_VRESOL(height_resol) | DSIM_MAIN_HRESOL(width_resol); reg |= DSIM_MAIN_STAND_BY; writel(reg, &mipi_dsim->mdresol); }
void s5p_mipi_dsi_set_main_disp_resol(struct mipi_dsim_device *dsim, unsigned int vert_resol, unsigned int hori_resol) { unsigned int reg; /* standby should be set after configuration so set to not ready*/ reg = (readl(dsim->reg_base + S5P_DSIM_MDRESOL)) & ~(DSIM_MAIN_STAND_BY); writel(reg, dsim->reg_base + S5P_DSIM_MDRESOL); reg &= ~(DSIM_MAIN_VRESOL_MASK) & ~(DSIM_MAIN_HRESOL_MASK); reg |= DSIM_MAIN_VRESOL(vert_resol) | DSIM_MAIN_HRESOL(hori_resol); reg |= DSIM_MAIN_STAND_BY; writel(reg, dsim->reg_base + S5P_DSIM_MDRESOL); }
void s5p_dsim_set_main_disp_resol(unsigned int dsim_base, unsigned short vert_resol, unsigned short hori_resol) { unsigned int reg; //printk("%s:vert_resol:%d, hori_resol:%d\n", __func__, vert_resol, hori_resol); /* standby should be set after configuration so set to not ready*/ reg = (readl(dsim_base + S5P_DSIM_MDRESOL)) & ~(DSIM_MAIN_STAND_BY); writel(reg, dsim_base + S5P_DSIM_MDRESOL); reg &= ~(0x7ff << 16) & ~(0x7ff << 0); reg |= DSIM_MAIN_VRESOL(vert_resol) | DSIM_MAIN_HRESOL(hori_resol); reg |= DSIM_MAIN_STAND_BY; writel(reg, dsim_base + S5P_DSIM_MDRESOL); }