1. 02 Feb, 2021 11 commits
  2. 26 Jan, 2021 4 commits
  3. 25 Jan, 2021 12 commits
  4. 22 Jan, 2021 1 commit
  5. 21 Jan, 2021 5 commits
  6. 19 Jan, 2021 1 commit
  7. 16 Jan, 2021 1 commit
  8. 15 Jan, 2021 5 commits
    • Dmitry Baryshkov's avatar
      arm64: dts: qcom: qrb5165-rb5: fix uSD pins drive strength · abf2c58a
      Dmitry Baryshkov authored
      Lower drive strength for microSD data and CMD pins from 16 to 10. This
      fixes spurious card removal issues observed on some boards. Also this
      change allows us to re-enable 1.8V support, which seems to work with
      lowered drive strength.
      Signed-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
      Cc: Veerabhadrarao Badiganti <vbadigan@codeaurora.org>
      Fixes: 53a8ccf1 ("arm64: dts: qcom: rb5: Add support for uSD card")
      Link: https://lore.kernel.org/r/20201217183341.3186402-1-dmitry.baryshkov@linaro.orgSigned-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
      abf2c58a
    • Matthias Kaehlcke's avatar
      arm64: dts: qcom: sc7180: Add labels for cpuN-thermal nodes · bc19af98
      Matthias Kaehlcke authored
      Add labels to the cpuN-thermal nodes to allow board files to use
      a phandle instead replicating the node hierarchy when adjusting
      certain properties.
      
      Due to the 'sustainable-power' property CPU thermal zones are
      more likely to need property updates than other SC7180 zones,
      hence only labels for CPU zones are added for now.
      Reviewed-by: default avatarDouglas Anderson <dianders@chromium.org>
      Signed-off-by: default avatarMatthias Kaehlcke <mka@chromium.org>
      Link: https://lore.kernel.org/r/20210108141648.1.Ia8019b8b303ca31a06752ed6ceb5c3ac50bd1d48@changeidSigned-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
      bc19af98
    • Danny Lin's avatar
      arm64: dts: qcom: sm8250: Add CPU capacities and energy model · 6aabed55
      Danny Lin authored
      Power and performance measurements were made using my freqbench [1]
      benchmark coordinator, which isolates, offlines, and disables the timer
      tick on test CPUs to maximize accuracy. It uses EEMBC CoreMark [2] as
      the workload and measures power usage using the PM8150B PMIC's fuel
      gauge.
      
      The energy model dynamic-power-coefficient values were calculated with
          DPC = µW / MHz / V^2
      for each OPP, and averaged across all OPPs within each cluster for the
      final coefficient. Voltages were obtained from the qcom-cpufreq-hw
      driver that reads voltages from the OSM LUT programmed into the SoC.
      
      Normalized DMIPS/MHz capacity scale values for each CPU were calculated
      from CoreMarks/MHz (CoreMark iterations per second per MHz), which
      serves the same purpose. For each CPU, the final capacity-dmips-mhz
      value is the C/MHz value of its maximum frequency normalized to
      SCHED_CAPACITY_SCALE (1024) for the fastest CPU in the system.
      
      A Xiaomi Redmi K30S Ultra device running a downstream Qualcomm 4.19
      kernel was used for benchmarking to ensure proper frequency scaling and
      other low-level controls.
      
      Raw benchmark results can be found in the freqbench repository [3].
      Below is a human-readable summary:
      
      Frequency domains: cpu1 cpu4 cpu7
      Offline CPUs: cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7
      Baseline power usage: 1223 mW
      
      ===== CPU 1 =====
      Frequencies: 300 403 518 614 691 787 883 979 1075 1171 1248 1344 1420 1516 1612 1708 1804
      
       300:  1114     3.7 C/MHz     29 mW    6.4 J   39.0 I/mJ   224.5 s
       403:  1497     3.7 C/MHz     33 mW    5.5 J   45.2 I/mJ   167.0 s
       518:  1925     3.7 C/MHz     48 mW    6.3 J   39.7 I/mJ   129.9 s
       614:  2281     3.7 C/MHz     73 mW    8.0 J   31.1 I/mJ   109.6 s
       691:  2566     3.7 C/MHz     46 mW    4.5 J   55.2 I/mJ    97.4 s
       787:  2923     3.7 C/MHz     86 mW    7.4 J   33.8 I/mJ    85.5 s
       883:  3279     3.7 C/MHz     77 mW    5.9 J   42.5 I/mJ    76.2 s
       979:  3635     3.7 C/MHz     65 mW    4.4 J   56.2 I/mJ    68.8 s
      1075:  3992     3.7 C/MHz     71 mW    4.4 J   56.2 I/mJ    62.6 s
      1171:  4348     3.7 C/MHz    121 mW    6.9 J   36.0 I/mJ    57.5 s
      1248:  4633     3.7 C/MHz     79 mW    4.2 J   58.9 I/mJ    54.0 s
      1344:  4990     3.7 C/MHz     81 mW    4.0 J   61.7 I/mJ    50.1 s
      1420:  5275     3.7 C/MHz     85 mW    4.0 J   61.8 I/mJ    47.4 s
      1516:  5632     3.7 C/MHz     88 mW    3.9 J   64.3 I/mJ    44.4 s
      1612:  5988     3.7 C/MHz     92 mW    3.8 J   65.4 I/mJ    41.7 s
      1708:  6346     3.7 C/MHz     96 mW    3.8 J   66.3 I/mJ    39.4 s
      1804:  6701     3.7 C/MHz    105 mW    3.9 J   63.5 I/mJ    37.3 s
      
      ===== CPU 4 =====
      Frequencies: 710 825 940 1056 1171 1286 1382 1478 1574 1670 1766 1862 1958 2054 2150 2246 2342 2419
      
       710:  6022     8.5 C/MHz    123 mW    5.1 J   49.1 I/mJ    41.5 s
       825:  7001     8.5 C/MHz    142 mW    5.1 J   49.4 I/mJ    35.7 s
       940:  7987     8.5 C/MHz    164 mW    5.1 J   48.7 I/mJ    31.3 s
      1056:  8954     8.5 C/MHz    185 mW    5.2 J   48.3 I/mJ    27.9 s
      1171:  9944     8.5 C/MHz    212 mW    5.3 J   46.9 I/mJ    25.2 s
      1286: 10926     8.5 C/MHz    235 mW    5.4 J   46.4 I/mJ    22.9 s
      1382: 11735     8.5 C/MHz    253 mW    5.4 J   46.4 I/mJ    21.3 s
      1478: 12531     8.5 C/MHz    277 mW    5.5 J   45.2 I/mJ    20.0 s
      1574: 13335     8.5 C/MHz    306 mW    5.7 J   43.6 I/mJ    18.8 s
      1670: 14169     8.5 C/MHz    335 mW    5.9 J   42.2 I/mJ    17.7 s
      1766: 14969     8.5 C/MHz    353 mW    5.9 J   42.3 I/mJ    16.7 s
      1862: 15800     8.5 C/MHz    444 mW    7.0 J   35.6 I/mJ    15.8 s
      1958: 16630     8.5 C/MHz    463 mW    7.0 J   35.9 I/mJ    15.0 s
      2054: 17428     8.5 C/MHz    480 mW    6.9 J   36.3 I/mJ    14.4 s
      2150: 18238     8.5 C/MHz    496 mW    6.8 J   36.8 I/mJ    13.7 s
      2246: 19053     8.5 C/MHz    578 mW    7.6 J   32.9 I/mJ    13.1 s
      2342: 19873     8.5 C/MHz    625 mW    7.9 J   31.8 I/mJ    12.6 s
      2419: 20522     8.5 C/MHz    675 mW    8.2 J   30.4 I/mJ    12.2 s
      
      ===== CPU 7 =====
      Frequencies: 844 960 1075 1190 1305 1401 1516 1632 1747 1862 1977 2073 2169 2265 2361 2457 2553 2649 2745 2841
      
       844:  7172     8.5 C/MHz    155 mW    5.4 J   46.4 I/mJ    34.9 s
       960:  8148     8.5 C/MHz    172 mW    5.3 J   47.4 I/mJ    30.7 s
      1075:  9116     8.5 C/MHz    197 mW    5.4 J   46.2 I/mJ    27.4 s
      1190: 10105     8.5 C/MHz    220 mW    5.4 J   46.0 I/mJ    24.8 s
      1305: 11084     8.5 C/MHz    242 mW    5.5 J   45.8 I/mJ    22.6 s
      1401: 11888     8.5 C/MHz    262 mW    5.5 J   45.4 I/mJ    21.0 s
      1516: 12859     8.5 C/MHz    297 mW    5.8 J   43.2 I/mJ    19.5 s
      1632: 13840     8.5 C/MHz    335 mW    6.1 J   41.3 I/mJ    18.1 s
      1747: 14827     8.5 C/MHz    369 mW    6.2 J   40.1 I/mJ    16.9 s
      1862: 15800     8.5 C/MHz    395 mW    6.3 J   40.0 I/mJ    15.8 s
      1977: 16786     8.5 C/MHz    443 mW    6.6 J   37.9 I/mJ    14.9 s
      2073: 17566     8.5 C/MHz    488 mW    6.9 J   36.0 I/mJ    14.2 s
      2169: 18395     8.5 C/MHz    620 mW    8.4 J   29.7 I/mJ    13.6 s
      2265: 19223     8.5 C/MHz    621 mW    8.1 J   30.9 I/mJ    13.0 s
      2361: 20040     8.5 C/MHz    672 mW    8.4 J   29.8 I/mJ    12.5 s
      2457: 20852     8.5 C/MHz    696 mW    8.3 J   29.9 I/mJ    12.0 s
      2553: 21684     8.5 C/MHz    738 mW    8.5 J   29.3 I/mJ    11.5 s
      2649: 22458     8.5 C/MHz    793 mW    8.8 J   28.3 I/mJ    11.1 s
      2745: 23314     8.5 C/MHz    875 mW    9.4 J   26.6 I/mJ    10.7 s
      2841: 24103     8.5 C/MHz    928 mW    9.6 J   26.0 I/mJ    10.4 s
      
      [1] https://github.com/kdrag0n/freqbench
      [2] https://www.eembc.org/coremark/
      [3] https://github.com/kdrag0n/freqbench/tree/master/results/sm8250/k30sSigned-off-by: default avatarDanny Lin <danny@kdrag0n.dev>
      Link: https://lore.kernel.org/r/20210112013255.415253-2-danny@kdrag0n.devSigned-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
      6aabed55
    • Danny Lin's avatar
      arm64: dts: qcom: sm8250: Define CPU topology · b4791e69
      Danny Lin authored
      sm8250 has a big.LITTLE CPU setup with DynamIQ, so all cores are within
      the same CPU cluster and LLC (Last-Level Cache) domain. Define this
      topology to help the scheduler make decisions.
      Signed-off-by: default avatarDanny Lin <danny@kdrag0n.dev>
      Link: https://lore.kernel.org/r/20210112013255.415253-1-danny@kdrag0n.devSigned-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
      b4791e69
    • Stephan Gerhold's avatar
      arm64: dts: qcom: msm8916-samsung-a2015: Fix sensors · 3716a583
      Stephan Gerhold authored
      When the BMC150 accelerometer/magnetometer was added to the device tree,
      the sensors were working without specifying any regulator supplies,
      likely because the regulators were on by default and then never turned off.
      
      For some reason, this is no longer the case for pm8916_l17, which prevents
      the sensors from working in some cases.
      
      Now that the bmc150_accel/bmc150_magn drivers can enable necessary
      regulators, declare the necessary regulator supplies to make the sensors
      work again.
      
      Fixes: 079f81ac ("arm64: dts: qcom: msm8916-samsung-a2015: Add accelerometer/magnetometer")
      Signed-off-by: default avatarStephan Gerhold <stephan@gerhold.net>
      Link: https://lore.kernel.org/r/20210111175358.97171-1-stephan@gerhold.netSigned-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
      3716a583