Messages in this thread Patch in this message | | | Subject | Re: [PATCH v2 7/7] arm64: dts: qcom: sm8250: add interconnect nodes | From | Jonathan Marek <> | Date | Mon, 27 Jul 2020 22:43:27 -0400 |
| |
On 7/24/20 12:55 PM, Sibi Sankar wrote: > On 2020-07-24 20:06, Jonathan Marek wrote: >> On 7/24/20 10:13 AM, Sibi Sankar wrote: >>> Hey Jonathan, >>> >>> Thanks for the patch! Please use the >>> suggested register space definitions >>> instead. >>> >> >> Thanks for the suggestions, I was unsure what to use for the sizes. >> The reg field is unused by the upstream driver so it is hard to figure >> out. >> >> However, I'm not sure about some of your suggestions for the base >> address. For example, for "mc_virt" you suggest 0x0163d000, and I have >> 0x09100000. In the downstream dts, "mc_virt-base" is 0x9100000 and >> qcom,base-offset for fab_mc_virt is 0. Do you have an explanation for >> why your suggestion is so different? > > AFAIK for providers with virt suffix the > register space definition is just an > arbitrary choice and doesn't matter. > Since mc_virt was just re-using gem_noc > address space I suggested we stick to > how it was done on sc7180 i.e place it > between system_noc and aggre1_noc. >
I sent a v3 with most of your suggestions applied as-is, except for: - sm8150: aggre2_noc, reduced size to 0x20000 to avoid overlap with compute_noc region - sm8250: compute_noc, reduced size to 0xa180 to avoid overlap with mmss_noc region (could have been 0xd000, but 0xa180 makes it match the region in the downstream dts, so seemed more likely to be correct)
I did notice other inconsistencies, but since this is unused by the upstream driver I don't want to think about it too much..
>> >>> On 2020-07-13 21:11, Jonathan Marek wrote: >>>> Add the interconnect dts nodes for sm8250. >>>> >>>> Signed-off-by: Jonathan Marek <jonathan@marek.ca> >>>> --- >>>> arch/arm64/boot/dts/qcom/sm8250.dtsi | 82 ++++++++++++++++++++++++++++ >>>> 1 file changed, 82 insertions(+) >>>> >>>> diff --git a/arch/arm64/boot/dts/qcom/sm8250.dtsi >>>> b/arch/arm64/boot/dts/qcom/sm8250.dtsi >>>> index 636e2196138c..dfc1b7fa7d85 100644 >>>> --- a/arch/arm64/boot/dts/qcom/sm8250.dtsi >>>> +++ b/arch/arm64/boot/dts/qcom/sm8250.dtsi >>>> @@ -11,6 +11,7 @@ >>>> #include <dt-bindings/power/qcom-aoss-qmp.h> >>>> #include <dt-bindings/power/qcom-rpmpd.h> >>>> #include <dt-bindings/soc/qcom,rpmh-rsc.h> >>>> +#include <dt-bindings/interconnect/qcom,sm8250.h> >>> >>> please fix ^^ sort order >>> >>>> >>>> / { >>>> interrupt-parent = <&intc>; >>>> @@ -978,6 +979,55 @@ spi13: spi@a94000 { >>>> }; >>>> }; >>>> >>>> + config_noc: interconnect@1500000 { >>>> + compatible = "qcom,sm8250-config-noc"; >>>> + reg = <0 0x01500000 0 0x1000>; >>> >>> 0x01500000 0xa580 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> + ipa_virt: interconnect@1620000 { >>>> + compatible = "qcom,sm8250-ipa-virt"; >>>> + reg = <0 0x01620000 0 0x1000>; >>> >>> 0x01e00000 0x1000 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> + system_noc: interconnect@1632000 { >>>> + compatible = "qcom,sm8250-system-noc"; >>>> + reg = <0 0x01632000 0 0x1000>; >>> >>> 0x01620000 0x1C200 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> + aggre1_noc: interconnect@16e2000 { >>>> + compatible = "qcom,sm8250-aggre1-noc"; >>>> + reg = <0 0x016e2000 0 0x1000>; >>> >>> 0x016e0000 0x1f180 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> + aggre2_noc: interconnect@1703000 { >>>> + compatible = "qcom,sm8250-aggre2-noc"; >>>> + reg = <0 0x01703000 0 0x1000>; >>> >>> 0x01700000 0x33000 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> + compute_noc: interconnect@1733000 { >>>> + compatible = "qcom,sm8250-compute-noc"; >>>> + reg = <0 0x01733000 0 0x1000>; >>> >>> 0x01733000 0xd180 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> + mmss_noc: interconnect@174a000 { >>>> + compatible = "qcom,sm8250-mmss-noc"; >>>> + reg = <0 0x0174a000 0 0x1000>; >>> >>> 0x01740000 0x1f080 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> ufs_mem_hc: ufshc@1d84000 { >>>> compatible = "qcom,sm8250-ufshc", "qcom,ufshc", >>>> "jedec,ufs-2.0"; >>>> @@ -1364,6 +1414,34 @@ usb_2_ssphy: lane@88eb200 { >>>> }; >>>> }; >>>> >>>> + dc_noc: interconnect@90c0000 { >>>> + compatible = "qcom,sm8250-dc-noc"; >>>> + reg = <0 0x090c0000 0 0x1000>; >>> >>> 0x090c0000 0x4200 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> + mc_virt: interconnect@9100000 { >>>> + compatible = "qcom,sm8250-mc-virt"; >>>> + reg = <0 0x09100000 0 0x1000>; >>> >>> 0x0163d000 0x1000 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> + gem_noc: interconnect@9121000 { >>>> + compatible = "qcom,sm8250-gem-noc"; >>>> + reg = <0 0x09121000 0 0x1000>; >>> >>> 0x09100000 0xb4000 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> + npu_noc: interconnect@9990000 { >>>> + compatible = "qcom,sm8250-npu-noc"; >>>> + reg = <0 0x09990000 0 0x1000>; >>> >>> 0x09990000 0x1600 >>> >>>> + #interconnect-cells = <1>; >>>> + qcom,bcm-voters = <&apps_bcm_voter>; >>>> + }; >>>> + >>>> usb_1: usb@a6f8800 { >>>> compatible = "qcom,sm8250-dwc3", "qcom,dwc3"; >>>> reg = <0 0x0a6f8800 0 0x400>; >>>> @@ -2359,6 +2437,10 @@ rpmhpd_opp_turbo_l1: opp10 { >>>> }; >>>> }; >>>> }; >>>> + >>>> + apps_bcm_voter: bcm_voter { >>>> + compatible = "qcom,bcm-voter"; >>>> + }; >>>> }; >>>> }; >>> >
| |