Change-Id: I738ddf122776081cf41adef2921644ddfc6e07dd
Signed-off-by: WeiYong Bi <bivvy.bi@rock-chips.com>
================================
Required properties:
================================
Required properties:
-- compatible: "rockchip,rk3288-dp" or "rockchip,rk3399-edp"
+- compatible: "rockchip,rk3288-dp",
+ "rockchip,rk3368-edp",
+ "rockchip,rk3399-edp";
- reg: physical base address of the controller and length
- reg: physical base address of the controller and length
if (dp->plat_data && (dp->plat_data->dev_type == ROCKCHIP_DP)) {
reg = REF_CLK_24M;
if (dp->plat_data && (dp->plat_data->dev_type == ROCKCHIP_DP)) {
reg = REF_CLK_24M;
- if (dp->plat_data->subdev_type == RK3288_DP)
+ if (dp->plat_data->subdev_type == RK3288_DP ||
+ dp->plat_data->subdev_type == RK3368_EDP)
reg ^= REF_CLK_MASK;
writel(reg, dp->reg_base + ANALOGIX_DP_PLL_REG_1);
reg ^= REF_CLK_MASK;
writel(reg, dp->reg_base + ANALOGIX_DP_PLL_REG_1);
u32 lcdsel_big;
u32 lcdsel_lit;
u32 chip_type;
u32 lcdsel_big;
u32 lcdsel_lit;
u32 chip_type;
};
struct rockchip_dp_device {
};
struct rockchip_dp_device {
+ if (!dp->data->has_vop_sel)
+ return;
+
ret = drm_of_encoder_active_endpoint_id(dp->dev->of_node, encoder);
if (ret < 0)
return;
ret = drm_of_encoder_active_endpoint_id(dp->dev->of_node, encoder);
if (ret < 0)
return;
.lcdsel_big = 0 | BIT(21),
.lcdsel_lit = BIT(5) | BIT(21),
.chip_type = RK3399_EDP,
.lcdsel_big = 0 | BIT(21),
.lcdsel_lit = BIT(5) | BIT(21),
.chip_type = RK3399_EDP,
+ .has_vop_sel = true,
+};
+
+static const struct rockchip_dp_chip_data rk3368_edp = {
+ .chip_type = RK3368_EDP,
};
static const struct rockchip_dp_chip_data rk3288_dp = {
};
static const struct rockchip_dp_chip_data rk3288_dp = {
.lcdsel_big = 0 | BIT(21),
.lcdsel_lit = BIT(5) | BIT(21),
.chip_type = RK3288_DP,
.lcdsel_big = 0 | BIT(21),
.lcdsel_lit = BIT(5) | BIT(21),
.chip_type = RK3288_DP,
};
static const struct of_device_id rockchip_dp_dt_ids[] = {
{.compatible = "rockchip,rk3288-dp", .data = &rk3288_dp },
};
static const struct of_device_id rockchip_dp_dt_ids[] = {
{.compatible = "rockchip,rk3288-dp", .data = &rk3288_dp },
+ {.compatible = "rockchip,rk3368-edp", .data = &rk3368_edp },
{.compatible = "rockchip,rk3399-edp", .data = &rk3399_edp },
{}
};
{.compatible = "rockchip,rk3399-edp", .data = &rk3399_edp },
{}
};
enum analogix_dp_sub_devtype {
RK3288_DP,
enum analogix_dp_sub_devtype {
RK3288_DP,