• Arnd Bergmann's avatar
    [media] Input: synaptics-rmi4: disallow impossible configuration · 47d8e00c
    Arnd Bergmann authored
    The newly added debug mode for the synaptics-rmi4 driver relies on
    the v4l2 interface and vb2_vmalloc, but those might be configured
    as loadable modules when the driver itself is built-in, resulting
    in a link failure:
    
    drivers/input/rmi4/rmi_core.o: In function `rmi_f54_remove':
    rmi_f54.c:(.text.rmi_f54_remove+0x14): undefined reference to `video_unregister_device'
    rmi_f54.c:(.text.rmi_f54_remove+0x20): undefined reference to `v4l2_device_unregister'
    drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_s_input':
    rmi_f54.c:(.text.rmi_f54_vidioc_s_input+0x10): undefined reference to `video_devdata'
    drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_g_input':
    rmi_f54.c:(.text.rmi_f54_vidioc_g_input+0x10): undefined reference to `video_devdata'
    drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_fmt':
    rmi_f54.c:(.text.rmi_f54_vidioc_fmt+0x10): undefined reference to `video_devdata'
    drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_enum_input':
    rmi_f54.c:(.text.rmi_f54_vidioc_enum_input+0x10): undefined reference to `video_devdata'
    drivers/input/rmi4/rmi_core.o: In function `rmi_f54_vidioc_querycap':
    ...
    
    The best workaround I could come up with is to disallow the debug
    mode unless it's actually possible to call it.
    
    Fixes: 3a762dbd ("[media] Input: synaptics-rmi4 - add support for F54 diagnostics")
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Acked-by: default avatarNick Dyer <nick@shmanahar.org>
    Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
    47d8e00c
Kconfig 1.86 KB