On Thu, Apr 10, 2025 at 07:43:43PM +0200, Konrad Dybcio wrote: > SMEM allows the OS to retrieve information about the DDR memory. > Among that information, is a semi-magic value called 'HBB', or Highest > Bank address Bit, which multimedia drivers (for hardware like Adreno > and MDSS) must retrieve in order to program the IP blocks correctly. > > This series introduces an API to retrieve that value, uses it in the > aforementioned programming sequences and exposes available DDR > frequencies in debugfs (to e.g. pass to aoss_qmp debugfs). More > information can be exposed in the future, as needed. > > Signed-off-by: Konrad Dybcio <konrad.dyb...@oss.qualcomm.com> > --- > Changes in v2: > - Avoid checking for < 0 on unsigned types > - Overwrite Adreno UBWC data to keep the data shared with userspace > coherent with what's programmed into the hardware > - Call get_hbb() in msm_mdss_enable() instead of all UBWC setup > branches separately > - Pick up Bjorn's rb on patch 1 > - Link to v1: > https://lore.kernel.org/r/20250409-topic-smem_dramc-v1-0-94d505cd5...@oss.qualcomm.com > > --- > Konrad Dybcio (4): > soc: qcom: Expose DDR data from SMEM > drm/msm/a5xx: Get HBB dynamically, if available > drm/msm/a6xx: Get HBB dynamically, if available > drm/msm/mdss: Get HBB dynamically, if available > > drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 12 +- > drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 15 +- > drivers/gpu/drm/msm/msm_mdss.c | 30 ++--
This misses the dpu_hw_sspp.c, which uses ubwc_config from msm_mdss.c (but the config isn't being updated with the acquired HBB value). I'd suggest behaving it slightly differntly: can we please have a helper module (in drivers/soc/qcom) which would return UBWC configuration data. We can start with HBB values, migrating the rest of UBWC-related flags one by one. Also, were you able to solve the issue of the platforms where GPU and MDSS disagreed upon HBB data? > drivers/soc/qcom/Makefile | 3 +- > drivers/soc/qcom/smem.c | 14 +- > drivers/soc/qcom/smem.h | 9 ++ > drivers/soc/qcom/smem_dramc.c | 287 > ++++++++++++++++++++++++++++++++++ > include/linux/soc/qcom/smem.h | 4 + > 8 files changed, 360 insertions(+), 14 deletions(-) > --- > base-commit: 46086739de22d72319e37c37a134d32db52e1c5c > change-id: 20250409-topic-smem_dramc-6467187ac865 > > Best regards, > -- > Konrad Dybcio <konrad.dyb...@oss.qualcomm.com> > -- With best wishes Dmitry