msm: mdss: fix rt bus path configuration

Num of bus path configuraiton represents the RT and
NRT paths. Fix the realtime paths calculation.

Change-Id: I5b3657d51e60bcfeb51cbbc220e121a2a4dc4d84
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
This commit is contained in:
Dhaval Patel 2015-02-03 11:57:51 -08:00 committed by David Keitel
parent f79792db8e
commit 5a64010c84
2 changed files with 13 additions and 4 deletions

View file

@ -160,7 +160,8 @@ Bus Scaling Data:
- qcom,msm-bus,num-paths: This represents the number of paths in each
Bus Scaling Usecase. This value depends on
how many number of AXI master ports are
dedicated to MDSS for particular chipset.
dedicated to MDSS for particular chipset. This
value represents the RT + NRT AXI master ports.
- qcom,msm-bus,vectors-KBps: * A series of 4 cell properties, with a format
of (src, dst, ab, ib) which is defined at
Documentation/devicetree/bindings/arm/msm/msm_bus.txt

View file

@ -2805,11 +2805,11 @@ static int mdss_mdp_parse_dt_ppb_off(struct platform_device *pdev)
static int mdss_mdp_parse_dt_bus_scale(struct platform_device *pdev)
{
int rc;
int rc, paths;
struct mdss_data_type *mdata = platform_get_drvdata(pdev);
rc = of_property_read_u32(pdev->dev.of_node, "qcom,msm-bus,num-paths",
&mdata->axi_port_cnt);
rc = of_property_read_u32(pdev->dev.of_node,
"qcom,msm-bus,num-paths", &paths);
if (rc) {
pr_err("Error. qcom,msm-bus,num-paths prop not found.rc=%d\n",
rc);
@ -2826,6 +2826,14 @@ static int mdss_mdp_parse_dt_bus_scale(struct platform_device *pdev)
rc = 0;
}
if (paths > mdata->nrt_axi_port_cnt) {
mdata->axi_port_cnt = paths - mdata->nrt_axi_port_cnt;
} else {
pr_err("invalid real time path config, total ports:%d, nrt ports:%d\n",
paths, mdata->nrt_axi_port_cnt);
return -EINVAL;
}
mdata->bus_scale_table = msm_bus_cl_get_pdata(pdev);
if (IS_ERR_OR_NULL(mdata->bus_scale_table)) {
rc = PTR_ERR(mdata->bus_scale_table);