openwrt/target/linux/ipq806x/patches-5.10/851-add-gsbi1-dts.patch

45 lines
1.2 KiB
Diff
Raw Normal View History

--- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
ipq806x: fix min<>target opp-microvolt DTS mixup Rearrange all voltage triplets for "opp_table0" to match the specifications. "opp-microvolt" and "opp-microvolt-<name>" triplets are in order of <target min max>, and NOT <min target max>. Previously, the CPU would *always* spend its time at the "minimum" voltage, ignoring the actual intended target. This is a regression from previous behavior. On an NBG6817 with a Qualcomm CPU of PVS bin #2... (see &opp_table0 -> opp-1725000000 -> opp-microvolt-speed0-pvs2-v0) * Before: /usr/bin/tail -n +1 /sys/kernel/debug/opp/cpu0/opp\:1725000000/supply-0/u_volt_* ==> /sys/kernel/debug/opp/cpu0/opp:1725000000/supply-0/u_volt_max <== 1260000 ==> /sys/kernel/debug/opp/cpu0/opp:1725000000/supply-0/u_volt_min <== 1200000 ==> /sys/kernel/debug/opp/cpu0/opp:1725000000/supply-0/u_volt_target <== 1140000 * After: /usr/bin/tail -n +1 /sys/kernel/debug/opp/cpu0/opp\:1725000000/supply-0/u_volt_* ==> /sys/kernel/debug/opp/cpu0/opp:1725000000/supply-0/u_volt_max <== 1260000 ==> /sys/kernel/debug/opp/cpu0/opp:1725000000/supply-0/u_volt_min <== 1140000 ==> /sys/kernel/debug/opp/cpu0/opp:1725000000/supply-0/u_volt_target <== 1200000 To check voltages and frequencies at run time, use... /bin/cat /sys/kernel/debug/regulator/regulator_summary && /bin/cat /sys/kernel/debug/clk/clk_summary | grep "hfpll" See https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/Documentation/devicetree/bindings/opp/opp.txt?h=v5.4.142#n91 Fixes: 1e25423be8ac ("ipq806x: refresh dtsi patches") Signed-off-by: Shane Synan <digitalcircuit36939@gmail.com> Reviewed-by: Ansuel Smith <ansuelsmth@gmail.com> [commit message style cleanup, another kernel refresh] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-08-19 18:22:48 +00:00
@@ -750,6 +750,41 @@
reg = <0x12100000 0x10000>;
};
+ gsbi1: gsbi@12440000 {
+ compatible = "qcom,gsbi-v1.0.0";
+ cell-index = <1>;
+ reg = <0x12440000 0x100>;
+ clocks = <&gcc GSBI1_H_CLK>;
+ clock-names = "iface";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+ status = "disabled";
+
+ syscon-tcsr = <&tcsr>;
+
+ gsbi1_serial: serial@12450000 {
+ compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
+ reg = <0x12450000 0x100>,
+ <0x12400000 0x03>;
+ interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&gcc GSBI1_UART_CLK>, <&gcc GSBI1_H_CLK>;
+ clock-names = "core", "iface";
+ status = "disabled";
+ };
+
+ gsbi1_i2c: i2c@12460000 {
+ compatible = "qcom,i2c-qup-v1.1.1";
+ reg = <0x12460000 0x1000>;
+ interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&gcc GSBI1_QUP_CLK>, <&gcc GSBI1_H_CLK>;
+ clock-names = "core", "iface";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "disabled";
+ };
+ };
+
gsbi2: gsbi@12480000 {
compatible = "qcom,gsbi-v1.0.0";
cell-index = <2>;