Loading arch/arm/boot/dts/qcom/msm8996-bus.dtsi +10 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,6 @@ label = "fab-a0noc"; qcom,fab-dev; qcom,base-name = "a0noc-base"; qcom,bypass-qos-prg; qcom,bus-type = <1>; qcom,qos-off = <4096>; qcom,base-offset = <12288>; Loading @@ -52,6 +51,16 @@ coresight-outports = <0>; coresight-child-list = <&funnel_in1>; coresight-child-ports = <7>; aggre0-snoc-axi-no-rate-supply =<&gdsc_aggre0_noc>; qcom,node-qos-clks { clock-names = "aggre0-snoc-axi-no-rate", "aggre0-cnoc-ahb-no-rate", "aggre0-noc-mpu-cfg-no-rate"; clocks = <&clock_gcc clk_gcc_aggre0_snoc_axi_clk>, <&clock_gcc clk_gcc_aggre0_cnoc_ahb_clk>, <&clock_gcc clk_gcc_aggre0_noc_mpu_cfg_ahb_clk>; }; }; fab_a1noc: fab-a1noc { Loading drivers/platform/msm/msm_bus/msm_bus_fabric_adhoc.c +5 −5 Original line number Diff line number Diff line Loading @@ -1175,12 +1175,12 @@ static int msm_bus_device_probe(struct platform_device *pdev) goto exit_device_probe; } /* * Setup the QoS for the nodes, don't check the error codes as we * defer QoS programming to the first transaction in cases of failure * and we want to continue the probe. */ ret = bus_for_each_dev(&msm_bus_type, NULL, NULL, msm_bus_dev_init_qos); if (ret) { MSM_BUS_ERR("%s: Error during qos init", __func__); goto exit_device_probe; } /* Register the arb layer ops */ msm_bus_arb_setops_adhoc(&arb_ops); Loading drivers/platform/msm/msm_bus/msm_bus_of_adhoc.c +14 −8 Original line number Diff line number Diff line Loading @@ -227,7 +227,7 @@ static int msm_bus_of_parse_clk_array(struct device_node *dev_node, clks = of_property_count_strings(dev_node, "clock-names"); if (clks < 0) { pr_info("%s: No qos clks node %d\n", __func__, id); dev_err(&pdev->dev, "No qos clks node %d\n", id); ret = clks; goto exit_of_parse_clk_array; } Loading @@ -237,7 +237,7 @@ static int msm_bus_of_parse_clk_array(struct device_node *dev_node, (clks * sizeof(struct nodeclk)), GFP_KERNEL); if (!(*clk_arr)) { pr_err("%s: Error allocating clk nodes for %d\n", __func__, id); dev_err(&pdev->dev, "Error allocating clk nodes for %d\n", id); ret = -ENOMEM; *num_clks = 0; goto exit_of_parse_clk_array; Loading Loading @@ -596,14 +596,20 @@ static int get_bus_node_device_data( MAX_REG_NAME, "%c", '\0'); } qos_clk_node = of_find_node_by_name(dev_node, qos_clk_node = of_get_child_by_name(dev_node, "qcom,node-qos-clks"); if (qos_clk_node) msm_bus_of_parse_clk_array(qos_clk_node, dev_node, pdev, if (qos_clk_node) { if (msm_bus_of_parse_clk_array(qos_clk_node, dev_node, pdev, &node_device->node_qos_clks, &node_device->num_node_qos_clks, node_device->node_info->id); node_device->node_info->id)) { dev_info(&pdev->dev, "Bypass QoS programming"); node_device->fabdev->bypass_qos_prg = true; } of_node_put(qos_clk_node); } if (msmbus_coresight_init_adhoc(pdev, dev_node)) dev_warn(&pdev->dev, Loading Loading
arch/arm/boot/dts/qcom/msm8996-bus.dtsi +10 −1 Original line number Diff line number Diff line Loading @@ -35,7 +35,6 @@ label = "fab-a0noc"; qcom,fab-dev; qcom,base-name = "a0noc-base"; qcom,bypass-qos-prg; qcom,bus-type = <1>; qcom,qos-off = <4096>; qcom,base-offset = <12288>; Loading @@ -52,6 +51,16 @@ coresight-outports = <0>; coresight-child-list = <&funnel_in1>; coresight-child-ports = <7>; aggre0-snoc-axi-no-rate-supply =<&gdsc_aggre0_noc>; qcom,node-qos-clks { clock-names = "aggre0-snoc-axi-no-rate", "aggre0-cnoc-ahb-no-rate", "aggre0-noc-mpu-cfg-no-rate"; clocks = <&clock_gcc clk_gcc_aggre0_snoc_axi_clk>, <&clock_gcc clk_gcc_aggre0_cnoc_ahb_clk>, <&clock_gcc clk_gcc_aggre0_noc_mpu_cfg_ahb_clk>; }; }; fab_a1noc: fab-a1noc { Loading
drivers/platform/msm/msm_bus/msm_bus_fabric_adhoc.c +5 −5 Original line number Diff line number Diff line Loading @@ -1175,12 +1175,12 @@ static int msm_bus_device_probe(struct platform_device *pdev) goto exit_device_probe; } /* * Setup the QoS for the nodes, don't check the error codes as we * defer QoS programming to the first transaction in cases of failure * and we want to continue the probe. */ ret = bus_for_each_dev(&msm_bus_type, NULL, NULL, msm_bus_dev_init_qos); if (ret) { MSM_BUS_ERR("%s: Error during qos init", __func__); goto exit_device_probe; } /* Register the arb layer ops */ msm_bus_arb_setops_adhoc(&arb_ops); Loading
drivers/platform/msm/msm_bus/msm_bus_of_adhoc.c +14 −8 Original line number Diff line number Diff line Loading @@ -227,7 +227,7 @@ static int msm_bus_of_parse_clk_array(struct device_node *dev_node, clks = of_property_count_strings(dev_node, "clock-names"); if (clks < 0) { pr_info("%s: No qos clks node %d\n", __func__, id); dev_err(&pdev->dev, "No qos clks node %d\n", id); ret = clks; goto exit_of_parse_clk_array; } Loading @@ -237,7 +237,7 @@ static int msm_bus_of_parse_clk_array(struct device_node *dev_node, (clks * sizeof(struct nodeclk)), GFP_KERNEL); if (!(*clk_arr)) { pr_err("%s: Error allocating clk nodes for %d\n", __func__, id); dev_err(&pdev->dev, "Error allocating clk nodes for %d\n", id); ret = -ENOMEM; *num_clks = 0; goto exit_of_parse_clk_array; Loading Loading @@ -596,14 +596,20 @@ static int get_bus_node_device_data( MAX_REG_NAME, "%c", '\0'); } qos_clk_node = of_find_node_by_name(dev_node, qos_clk_node = of_get_child_by_name(dev_node, "qcom,node-qos-clks"); if (qos_clk_node) msm_bus_of_parse_clk_array(qos_clk_node, dev_node, pdev, if (qos_clk_node) { if (msm_bus_of_parse_clk_array(qos_clk_node, dev_node, pdev, &node_device->node_qos_clks, &node_device->num_node_qos_clks, node_device->node_info->id); node_device->node_info->id)) { dev_info(&pdev->dev, "Bypass QoS programming"); node_device->fabdev->bypass_qos_prg = true; } of_node_put(qos_clk_node); } if (msmbus_coresight_init_adhoc(pdev, dev_node)) dev_warn(&pdev->dev, Loading