diff options
author | Neil Armstrong <neil.armstrong@linaro.org> | 2024-12-17 15:51:15 +0100 |
---|---|---|
committer | Rob Clark <robdclark@chromium.org> | 2025-01-03 07:20:27 -0800 |
commit | ff4a7f6bff527491b8a937ae4633b7066ce301f2 (patch) | |
tree | d4284f4325b5787f699b64f2e1f67da7d97e4935 /scripts/generate_rust_analyzer.py | |
parent | 5b0619539c109325cdc516a2c1aded57262ec51b (diff) |
drm/msm: adreno: add plumbing to generate bandwidth vote table for GMU
The Adreno GPU Management Unit (GMU) can also scale DDR Bandwidth along
the Frequency and Power Domain level, but by default we leave the
OPP core scale the interconnect ddr path.
While scaling via the interconnect path was sufficient, newer GPUs
like the A750 requires specific vote paremeters and bandwidth to
achieve full functionality.
In order to calculate vote values used by the GPU Management
Unit (GMU), we need to parse all the possible OPP Bandwidths and
create a vote value to be sent to the appropriate Bus Control
Modules (BCMs) declared in the GPU info struct.
This vote value is called IB, while on the other side the GMU also
takes another vote called AB which is a 16bit quantized value
of the floor bandwidth against the maximum supported bandwidth.
The AB vote will be calculated later when setting the frequency.
The vote array will then be used to dynamically generate the GMU
bw_table sent during the GMU power-up.
Reviewed-by: Akhil P Oommen <quic_akhilpo@quicinc.com>
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Patchwork: https://patchwork.freedesktop.org/patch/629395/
Signed-off-by: Rob Clark <robdclark@chromium.org>
Diffstat (limited to 'scripts/generate_rust_analyzer.py')
0 files changed, 0 insertions, 0 deletions