summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/msm/dp/dp_parser.c
diff options
context:
space:
mode:
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>2024-01-26 20:26:22 +0200
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>2024-02-11 22:38:07 +0200
commit31a01db14b90fda9ca55ba9178d75e45911efea2 (patch)
treef02ddb2a8fcb642fa0b76dfc6fb944e778b78d18 /drivers/gpu/drm/msm/dp/dp_parser.c
parent9aeb50ea0ea96ad9577666f4aafa9ed241947c21 (diff)
drm/msm/dp: parse DT from dp_parser_get
It makes little sense to split the submodule get and actual DT parsing. Call dp_parser_parse() directly from dp_parser_get(), so that the parser data is fully initialised once it is returned to the caller. Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Tested-by: Kuogee Hsieh <quic_khsieh@quicinc.com> Reviewed-by: Kuogee Hsieh <quic_khsieh@quicinc.com> Patchwork: https://patchwork.freedesktop.org/patch/576101/ Link: https://lore.kernel.org/r/20240126-dp-power-parser-cleanup-v3-3-098d5f581dd3@linaro.org
Diffstat (limited to 'drivers/gpu/drm/msm/dp/dp_parser.c')
-rw-r--r--drivers/gpu/drm/msm/dp/dp_parser.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/dp/dp_parser.c b/drivers/gpu/drm/msm/dp/dp_parser.c
index 7032dcc8842b..2d9d126c119b 100644
--- a/drivers/gpu/drm/msm/dp/dp_parser.c
+++ b/drivers/gpu/drm/msm/dp/dp_parser.c
@@ -315,13 +315,19 @@ static int dp_parser_parse(struct dp_parser *parser)
struct dp_parser *dp_parser_get(struct platform_device *pdev)
{
struct dp_parser *parser;
+ int ret;
parser = devm_kzalloc(&pdev->dev, sizeof(*parser), GFP_KERNEL);
if (!parser)
return ERR_PTR(-ENOMEM);
- parser->parse = dp_parser_parse;
parser->pdev = pdev;
+ ret = dp_parser_parse(parser);
+ if (ret) {
+ dev_err(&pdev->dev, "device tree parsing failed\n");
+ return ERR_PTR(ret);
+ }
+
return parser;
}