lkml.org 
[lkml]   [2021]   [May]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4/4] drm/msm/dp: Add support for SC8180x eDP
    Date
    The eDP controller found in SC8180x is at large compatible with the
    current implementation, but has its register blocks at slightly
    different offsets.

    Add the compatible and the new register layout.

    Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
    ---
    drivers/gpu/drm/msm/dp/dp_display.c | 1 +
    drivers/gpu/drm/msm/dp/dp_parser.c | 28 ++++++++++++++++++++--------
    2 files changed, 21 insertions(+), 8 deletions(-)

    diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c
    index d1319b58e901..0be03bdc882c 100644
    --- a/drivers/gpu/drm/msm/dp/dp_display.c
    +++ b/drivers/gpu/drm/msm/dp/dp_display.c
    @@ -121,6 +121,7 @@ struct dp_display_private {

    static const struct of_device_id dp_dt_match[] = {
    {.compatible = "qcom,sc7180-dp"},
    + { .compatible = "qcom,sc8180x-edp" },
    {}
    };

    diff --git a/drivers/gpu/drm/msm/dp/dp_parser.c b/drivers/gpu/drm/msm/dp/dp_parser.c
    index 51ec85b4803b..47cf18bba4b2 100644
    --- a/drivers/gpu/drm/msm/dp/dp_parser.c
    +++ b/drivers/gpu/drm/msm/dp/dp_parser.c
    @@ -251,6 +251,7 @@ static int dp_parser_clock(struct dp_parser *parser)
    static int dp_parser_parse(struct dp_parser *parser)
    {
    struct dss_io_data *io = &parser->io.dp_controller;
    + struct device *dev = &parser->pdev->dev;
    int rc = 0;

    if (!parser) {
    @@ -276,14 +277,25 @@ static int dp_parser_parse(struct dp_parser *parser)
    */
    parser->regulator_cfg = &sdm845_dp_reg_cfg;

    - io->ahb = io->base + 0x0;
    - io->ahb_len = 0x200;
    - io->aux = io->base + 0x200;
    - io->aux_len = 0x200;
    - io->link = io->base + 0x400;
    - io->link_len = 0x600;
    - io->p0 = io->base + 0x1000;
    - io->p0_len = 0x400;
    + if (of_device_is_compatible(dev->of_node, "qcom,sc8180x-edp")) {
    + io->ahb = io->base + 0x0;
    + io->ahb_len = 0x200;
    + io->aux = io->base + 0x200;
    + io->aux_len = 0x200;
    + io->link = io->base + 0x400;
    + io->link_len = 0x600;
    + io->p0 = io->base + 0xa00;
    + io->p0_len = 0x400;
    + } else {
    + io->ahb = io->base + 0x0;
    + io->ahb_len = 0x200;
    + io->aux = io->base + 0x200;
    + io->aux_len = 0x200;
    + io->link = io->base + 0x400;
    + io->link_len = 0x600;
    + io->p0 = io->base + 0x1000;
    + io->p0_len = 0x400;
    + }

    return 0;
    }
    --
    2.29.2
    \
     
     \ /
      Last update: 2021-05-11 06:22    [W:4.169 / U:2.540 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site