Message ID | 20220305173405.914989-1-robdclark@gmail.com |
---|---|
State | New |
Headers | show |
Series | drm/msm/a6xx: Fix missing ARRAY_SIZE() check | expand |
On 3/5/2022 11:04 PM, Rob Clark wrote: > From: Rob Clark <robdclark@chromium.org> > > Fixes: f6d62d091cfd ("drm/msm/a6xx: add support for Adreno 660 GPU") > Signed-off-by: Rob Clark <robdclark@chromium.org> > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c > index 02b47977b5c3..83c31b2ad865 100644 > --- a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c > +++ b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c > @@ -683,19 +683,23 @@ static void a6xx_set_cp_protect(struct msm_gpu *gpu) > { > struct adreno_gpu *adreno_gpu = to_adreno_gpu(gpu); > const u32 *regs = a6xx_protect; > - unsigned i, count = ARRAY_SIZE(a6xx_protect), count_max = 32; > - > - BUILD_BUG_ON(ARRAY_SIZE(a6xx_protect) > 32); > - BUILD_BUG_ON(ARRAY_SIZE(a650_protect) > 48); > + unsigned i, count, count_max; > > if (adreno_is_a650(adreno_gpu)) { > regs = a650_protect; > count = ARRAY_SIZE(a650_protect); > count_max = 48; > + BUILD_BUG_ON(ARRAY_SIZE(a650_protect) > 48); > } else if (adreno_is_a660_family(adreno_gpu)) { > regs = a660_protect; > count = ARRAY_SIZE(a660_protect); > count_max = 48; > + BUILD_BUG_ON(ARRAY_SIZE(a660_protect) > 48); > + } else { > + regs = a6xx_protect; > + count = ARRAY_SIZE(a6xx_protect); > + count_max = 32; > + BUILD_BUG_ON(ARRAY_SIZE(a6xx_protect) > 32); > } > > /* Reviewed-by: Akhil P Oommen <quic_akhilpo@quicinc.com> -Akhil.
diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c index 02b47977b5c3..83c31b2ad865 100644 --- a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c +++ b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c @@ -683,19 +683,23 @@ static void a6xx_set_cp_protect(struct msm_gpu *gpu) { struct adreno_gpu *adreno_gpu = to_adreno_gpu(gpu); const u32 *regs = a6xx_protect; - unsigned i, count = ARRAY_SIZE(a6xx_protect), count_max = 32; - - BUILD_BUG_ON(ARRAY_SIZE(a6xx_protect) > 32); - BUILD_BUG_ON(ARRAY_SIZE(a650_protect) > 48); + unsigned i, count, count_max; if (adreno_is_a650(adreno_gpu)) { regs = a650_protect; count = ARRAY_SIZE(a650_protect); count_max = 48; + BUILD_BUG_ON(ARRAY_SIZE(a650_protect) > 48); } else if (adreno_is_a660_family(adreno_gpu)) { regs = a660_protect; count = ARRAY_SIZE(a660_protect); count_max = 48; + BUILD_BUG_ON(ARRAY_SIZE(a660_protect) > 48); + } else { + regs = a6xx_protect; + count = ARRAY_SIZE(a6xx_protect); + count_max = 32; + BUILD_BUG_ON(ARRAY_SIZE(a6xx_protect) > 32); } /*