On 1/25/26 12:30 PM, Dmitry Baryshkov wrote: > Currently the database stores macrotile_mode in the data. However it > can be derived from the rest of the data: it should be used for UBWC > encoding >= 3.0 except for several corner cases (SM8150 and SC8180X). > > The ubwc_bank_spread field seems to be based on the impreside data we > had for the MDSS and DPU programming. In some cases UBWC engine inside > the display controller doesn't need to program it, although bank spread > is to be enabled. > > Bank swizzle is also currently stored as is, but it is almost standard > (banks 1-3 for UBWC 1.0 and 2-3 for other versions), the only exception > being Lemans (it uses only bank 3). > > Add helpers returning values from the config for now. They will be > rewritten later, in a separate series, but having the helper now > simplifies refacroring the code later. > > Tested-by: Wangao Wang <[email protected]> > Signed-off-by: Dmitry Baryshkov <[email protected]> > --- > include/linux/soc/qcom/ubwc.h | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/include/linux/soc/qcom/ubwc.h b/include/linux/soc/qcom/ubwc.h > index 5bdeca18d54d..f5d0e2341261 100644 > --- a/include/linux/soc/qcom/ubwc.h > +++ b/include/linux/soc/qcom/ubwc.h > @@ -84,4 +84,19 @@ static inline bool qcom_ubwc_min_acc_length_64b(const > struct qcom_ubwc_cfg_data > cfg->ubwc_dec_version == UBWC_3_0); > } > > +static inline bool qcom_ubwc_macrotile_mode(const struct qcom_ubwc_cfg_data > *cfg)
Should we rename this to something like "qcom_ubwc_macrotile_mode_8ch()"? Konrad
