@@ -336,6 +336,11 @@ pm8921_ncp: ncp {
};
};
+&L2 {
+ vdd-mem-supply = <&pm8921_l24>;
+ vdd-dig-supply = <&pm8921_s3>;
+};
+
/* eMMC */
&sdcc1 {
status = "okay";
@@ -321,6 +321,11 @@ pm8921_ncp: ncp {
};
};
+&L2 {
+ vdd-mem-supply = <&pm8921_l24>;
+ vdd-dig-supply = <&pm8921_s3>;
+};
+
&usb_hs1_phy {
v3p3-supply = <&pm8921_l3>;
v1p8-supply = <&pm8921_l4>;
@@ -2,6 +2,7 @@
/dts-v1/;
#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/clock/qcom,krait-cc.h>
#include <dt-bindings/clock/qcom,gcc-msm8960.h>
#include <dt-bindings/reset/qcom,gcc-msm8960.h>
#include <dt-bindings/clock/qcom,lcc-msm8960.h>
@@ -41,9 +42,130 @@ cpu@1 {
};
L2: l2-cache {
- compatible = "cache";
+ compatible = "qcom,krait-l2-cache", "cache";
cache-level = <2>;
cache-unified;
+ clocks = <&kraitcc KRAIT_L2>;
+ #interconnect-cells = <1>;
+ operating-points-v2 = <&l2_opp_table>;
+
+ l2_opp_table: opp-table-l2 {
+ compatible = "operating-points-v2";
+
+ opp-384000000 {
+ opp-hz = /bits/ 64 <384000000>;
+ opp-microvolt = <1050000 1050000 1150000>,
+ <1050000 1050000 1150000>;
+ };
+
+ opp-432000000 {
+ opp-hz = /bits/ 64 <432000000>;
+ opp-microvolt = <1050000 1050000 1150000>,
+ <1050000 1050000 1150000>;
+ };
+
+ opp-486000000 {
+ opp-hz = /bits/ 64 <486000000>;
+ opp-microvolt = <1050000 1050000 1150000>,
+ <1050000 1050000 1150000>;
+ };
+
+ opp-540000000 {
+ opp-hz = /bits/ 64 <540000000>;
+ opp-microvolt = <1050000 1050000 1150000>,
+ <1050000 1050000 1150000>;
+ };
+
+ opp-594000000 {
+ opp-hz = /bits/ 64 <594000000>;
+ opp-microvolt = <1050000 1050000 1150000>,
+ <1050000 1050000 1150000>;
+ };
+
+ opp-648000000 {
+ opp-hz = /bits/ 64 <648000000>;
+ opp-microvolt = <1050000 1050000 1150000>,
+ <1050000 1050000 1150000>;
+ };
+
+ opp-702000000 {
+ opp-hz = /bits/ 64 <702000000>;
+ opp-microvolt = <1050000 1050000 1050000>,
+ <1050000 1050000 1050000>;
+ };
+
+ opp-756000000 {
+ opp-hz = /bits/ 64 <756000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-810000000 {
+ opp-hz = /bits/ 64 <810000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-864000000 {
+ opp-hz = /bits/ 64 <864000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-918000000 {
+ opp-hz = /bits/ 64 <918000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-972000000 {
+ opp-hz = /bits/ 64 <972000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-1026000000 {
+ opp-hz = /bits/ 64 <1026000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-1080000000 {
+ opp-hz = /bits/ 64 <1080000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-1134000000 {
+ opp-hz = /bits/ 64 <1134000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-1188000000 {
+ opp-hz = /bits/ 64 <1188000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-1242000000 {
+ opp-hz = /bits/ 64 <1242000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-1296000000 {
+ opp-hz = /bits/ 64 <1296000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+
+ opp-1350000000 {
+ opp-hz = /bits/ 64 <1350000000>;
+ opp-microvolt = <1150000 1150000 1150000>,
+ <1150000 1150000 1150000>;
+ };
+ };
};
};
Populate L2 cache node with clock, supplies and OPP information to facilitate scaling L2 frequency. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- arch/arm/boot/dts/qcom/qcom-msm8960-cdp.dts | 5 + .../qcom/qcom-msm8960-samsung-expressatt.dts | 5 + arch/arm/boot/dts/qcom/qcom-msm8960.dtsi | 124 +++++++++++++++++- 3 files changed, 133 insertions(+), 1 deletion(-)