Ejemplo n.º 1
0
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);
}
Ejemplo n.º 2
0
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);
}