Re: [PATCH] drm/pl111: Actually fix CONFIG_VEXPRESS_CONFIG depends

From: Kees Cook
Date: Thu Jun 03 2021 - 21:33:07 EST


On Fri, Jun 04, 2021 at 12:30:00AM +0200, Daniel Vetter wrote:
> [gmail is funny]
>
> On Thu, Jun 3, 2021 at 11:58 PM Kees Cook <keescook@xxxxxxxxxxxx> wrote:
> >
> > VEXPRESS_CONFIG needs to either be missing, built-in, or modular when
> > pl111 is modular. Update the Kconfig to reflect the need.
> >
> > Cc: Emma Anholt <emma@xxxxxxxxxx>
> > Cc: David Airlie <airlied@xxxxxxxx>
> > Cc: Daniel Vetter <daniel@xxxxxxxx>
> > Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx
> > Fixes: 4dc7c97d04dc ("drm/pl111: depend on CONFIG_VEXPRESS_CONFIG")
> > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
> > ---
> > drivers/gpu/drm/pl111/Kconfig | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/pl111/Kconfig b/drivers/gpu/drm/pl111/Kconfig
> > index c5210a5bef1b..b84879ca430d 100644
> > --- a/drivers/gpu/drm/pl111/Kconfig
> > +++ b/drivers/gpu/drm/pl111/Kconfig
> > @@ -2,7 +2,8 @@
> > config DRM_PL111
> > tristate "DRM Support for PL111 CLCD Controller"
> > depends on DRM
> > - depends on VEXPRESS_CONFIG
> > + depends on ARM || ARM64 || COMPILE_TEST
> > + depends on !VEXPRESS_CONFIG || VEXPRESS_CONFIG=DRM
>
> I thought the canonical way to represent optional dependencies was
> depends on FOO || FOO=n

Ah-ha! So it is:

drm/Kconfig: depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && HAS_DMA
drm/Kconfig: depends on FB_SIS || FB_SIS=n
drm/msm/Kconfig: depends on QCOM_OCMEM || QCOM_OCMEM=n
drm/msm/Kconfig: depends on QCOM_LLCC || QCOM_LLCC=n
drm/msm/Kconfig: depends on QCOM_COMMAND_DB || QCOM_COMMAND_DB=n

I'll resping and retest. Thanks for the pointer!

-Kees

--
Kees Cook