drm/msm/mdss: inline msm_mdss_icc_request_bw()
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Sat, 2 Dec 2023 22:42:46 +0000 (01:42 +0300)
committerDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tue, 5 Dec 2023 01:09:43 +0000 (04:09 +0300)
There are just two places where we set the bandwidth: in the resume and
in the suspend paths. Drop the wrapping function
msm_mdss_icc_request_bw() and call icc_set_bw() directly.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Patchwork: https://patchwork.freedesktop.org/patch/570168/
Link: https://lore.kernel.org/r/20231202224247.1282567-4-dmitry.baryshkov@linaro.org
drivers/gpu/drm/msm/msm_mdss.c

index a1a077e2bac8ec8f6989b2fb5d8ddf00e402b637..776579ac69d82ee55ed50b5b11304c4a451c971d 100644 (file)
@@ -66,14 +66,6 @@ static int msm_mdss_parse_data_bus_icc_path(struct device *dev,
        return 0;
 }
 
-static void msm_mdss_icc_request_bw(struct msm_mdss *msm_mdss, unsigned long bw)
-{
-       int i;
-
-       for (i = 0; i < msm_mdss->num_mdp_paths; i++)
-               icc_set_bw(msm_mdss->mdp_path[i], 0, Bps_to_icc(bw));
-}
-
 static void msm_mdss_irq(struct irq_desc *desc)
 {
        struct msm_mdss *msm_mdss = irq_desc_get_handler_data(desc);
@@ -227,14 +219,15 @@ const struct msm_mdss_data *msm_mdss_get_mdss_data(struct device *dev)
 
 static int msm_mdss_enable(struct msm_mdss *msm_mdss)
 {
-       int ret;
+       int ret, i;
 
        /*
         * Several components have AXI clocks that can only be turned on if
         * the interconnect is enabled (non-zero bandwidth). Let's make sure
         * that the interconnects are at least at a minimum amount.
         */
-       msm_mdss_icc_request_bw(msm_mdss, MIN_IB_BW);
+       for (i = 0; i < msm_mdss->num_mdp_paths; i++)
+               icc_set_bw(msm_mdss->mdp_path[i], 0, Bps_to_icc(MIN_IB_BW));
 
        ret = clk_bulk_prepare_enable(msm_mdss->num_clocks, msm_mdss->clocks);
        if (ret) {
@@ -286,8 +279,12 @@ static int msm_mdss_enable(struct msm_mdss *msm_mdss)
 
 static int msm_mdss_disable(struct msm_mdss *msm_mdss)
 {
+       int i;
+
        clk_bulk_disable_unprepare(msm_mdss->num_clocks, msm_mdss->clocks);
-       msm_mdss_icc_request_bw(msm_mdss, 0);
+
+       for (i = 0; i < msm_mdss->num_mdp_paths; i++)
+               icc_set_bw(msm_mdss->mdp_path[i], 0, 0);
 
        return 0;
 }