Loading drivers/gpu/drm/msm/dp/dp_ctrl.c +1 −0 Original line number Diff line number Diff line Loading @@ -1442,6 +1442,7 @@ struct dp_ctrl *dp_ctrl_get(struct dp_ctrl_in *in) ctrl->aux = in->aux; ctrl->link = in->link; ctrl->catalog = in->catalog; ctrl->dev = in->dev; dp_ctrl = &ctrl->dp_ctrl; Loading drivers/gpu/drm/msm/dp/dp_parser.c +19 −5 Original line number Diff line number Diff line Loading @@ -441,6 +441,22 @@ static void dp_parser_put_clk_data(struct device *dev, mp->num_clk = 0; } static void dp_parser_put_gpio_data(struct device *dev, struct dss_module_power *mp) { if (!mp) { DEV_ERR("%s: invalid input\n", __func__); return; } if (mp->gpio_config) { devm_kfree(dev, mp->gpio_config); mp->gpio_config = NULL; } mp->num_gpio = 0; } static int dp_parser_init_clk_data(struct dp_parser *parser) { int num_clk = 0, i = 0, rc = 0; Loading Loading @@ -637,11 +653,9 @@ void dp_parser_put(struct dp_parser *parser) power = parser->mp; for (i = 0; i < DP_MAX_PM; i++) { struct dss_module_power *mp = &power[i]; devm_kfree(&parser->pdev->dev, mp->clk_config); devm_kfree(&parser->pdev->dev, mp->vreg_config); devm_kfree(&parser->pdev->dev, mp->gpio_config); dp_parser_put_clk_data(&parser->pdev->dev, &power[i]); dp_parser_put_vreg_data(&parser->pdev->dev, &power[i]); dp_parser_put_gpio_data(&parser->pdev->dev, &power[i]); } devm_kfree(&parser->pdev->dev, parser); Loading Loading
drivers/gpu/drm/msm/dp/dp_ctrl.c +1 −0 Original line number Diff line number Diff line Loading @@ -1442,6 +1442,7 @@ struct dp_ctrl *dp_ctrl_get(struct dp_ctrl_in *in) ctrl->aux = in->aux; ctrl->link = in->link; ctrl->catalog = in->catalog; ctrl->dev = in->dev; dp_ctrl = &ctrl->dp_ctrl; Loading
drivers/gpu/drm/msm/dp/dp_parser.c +19 −5 Original line number Diff line number Diff line Loading @@ -441,6 +441,22 @@ static void dp_parser_put_clk_data(struct device *dev, mp->num_clk = 0; } static void dp_parser_put_gpio_data(struct device *dev, struct dss_module_power *mp) { if (!mp) { DEV_ERR("%s: invalid input\n", __func__); return; } if (mp->gpio_config) { devm_kfree(dev, mp->gpio_config); mp->gpio_config = NULL; } mp->num_gpio = 0; } static int dp_parser_init_clk_data(struct dp_parser *parser) { int num_clk = 0, i = 0, rc = 0; Loading Loading @@ -637,11 +653,9 @@ void dp_parser_put(struct dp_parser *parser) power = parser->mp; for (i = 0; i < DP_MAX_PM; i++) { struct dss_module_power *mp = &power[i]; devm_kfree(&parser->pdev->dev, mp->clk_config); devm_kfree(&parser->pdev->dev, mp->vreg_config); devm_kfree(&parser->pdev->dev, mp->gpio_config); dp_parser_put_clk_data(&parser->pdev->dev, &power[i]); dp_parser_put_vreg_data(&parser->pdev->dev, &power[i]); dp_parser_put_gpio_data(&parser->pdev->dev, &power[i]); } devm_kfree(&parser->pdev->dev, parser); Loading