Commit e17afdce authored by Archit Taneja's avatar Archit Taneja Committed by Rob Clark

drm/msm/hdmi: HDMI 8996 PHY/PLL support

Add support for the HDMI PHY/PLL found in MSM8996/APQ8096.

Unlike the previous PHYs supported in the driver, this doesn't need
the powerup/powerdown ops. The PLL prepare/unprepare clock ops
enable/disable the phy itself.
Signed-off-by: default avatarArchit Taneja <architt@codeaurora.org>
Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
parent e9a2ce13
......@@ -54,6 +54,7 @@ msm-y := \
msm-$(CONFIG_DRM_FBDEV_EMULATION) += msm_fbdev.o
msm-$(CONFIG_COMMON_CLK) += mdp/mdp4/mdp4_lvds_pll.o
msm-$(CONFIG_COMMON_CLK) += hdmi/hdmi_pll_8960.o
msm-$(CONFIG_COMMON_CLK) += hdmi/hdmi_phy_8996.o
msm-$(CONFIG_DRM_MSM_DSI) += dsi/dsi.o \
mdp/mdp4/mdp4_dsi_encoder.o \
......
......@@ -147,6 +147,7 @@ enum hdmi_phy_type {
MSM_HDMI_PHY_8x60,
MSM_HDMI_PHY_8960,
MSM_HDMI_PHY_8x74,
MSM_HDMI_PHY_8996,
MSM_HDMI_PHY_MAX,
};
......@@ -163,6 +164,7 @@ struct hdmi_phy_cfg {
extern const struct hdmi_phy_cfg hdmi_phy_8x60_cfg;
extern const struct hdmi_phy_cfg hdmi_phy_8960_cfg;
extern const struct hdmi_phy_cfg hdmi_phy_8x74_cfg;
extern const struct hdmi_phy_cfg hdmi_phy_8996_cfg;
struct hdmi_phy {
struct platform_device *pdev;
......@@ -192,11 +194,17 @@ void __exit hdmi_phy_driver_unregister(void);
#ifdef CONFIG_COMMON_CLK
int hdmi_pll_8960_init(struct platform_device *pdev);
int hdmi_pll_8996_init(struct platform_device *pdev);
#else
int hdmi_pll_8960_init(struct platform_device *pdev);
{
return -ENODEV;
}
int hdmi_pll_8996_init(struct platform_device *pdev)
{
return -ENODEV;
}
#endif
/*
......
......@@ -127,6 +127,9 @@ static int hdmi_phy_pll_init(struct platform_device *pdev,
case MSM_HDMI_PHY_8960:
ret = hdmi_pll_8960_init(pdev);
break;
case MSM_HDMI_PHY_8996:
ret = hdmi_pll_8996_init(pdev);
break;
/*
* we don't have PLL support for these, don't report an error for now
*/
......@@ -202,6 +205,8 @@ static const struct of_device_id hdmi_phy_dt_match[] = {
.data = &hdmi_phy_8x74_cfg },
{ .compatible = "qcom,hdmi-phy-8084",
.data = &hdmi_phy_8x74_cfg },
{ .compatible = "qcom,hdmi-phy-8996",
.data = &hdmi_phy_8996_cfg },
{}
};
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment