The sh_mobile_lcdc driver exposes overlay configuration via sysfs, but the core driver does not require CONFIG_FB_DEVICE.
Make sysfs support optional by defining overlay_sysfs_groups conditionally using PTR_IF(). The driver always sets .dev_groups, and the kernel naturally skips NULL attribute groups while the code remains buildable and type-checked. Suggested-by: Helge Deller <[email protected]> Signed-off-by: Chintan Patel <[email protected]> --- drivers/video/fbdev/sh_mobile_lcdcfb.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/drivers/video/fbdev/sh_mobile_lcdcfb.c b/drivers/video/fbdev/sh_mobile_lcdcfb.c index dd950e4ab5ce..cb7ed1ff9165 100644 --- a/drivers/video/fbdev/sh_mobile_lcdcfb.c +++ b/drivers/video/fbdev/sh_mobile_lcdcfb.c @@ -1350,7 +1350,17 @@ static struct attribute *overlay_sysfs_attrs[] = { &dev_attr_overlay_rop3.attr, NULL, }; -ATTRIBUTE_GROUPS(overlay_sysfs); + +#ifdef CONFIG_FB_DEVICE +static const struct attribute_group overlay_sysfs_group = { + .attrs = overlay_sysfs_attrs, +}; +#endif + +static const struct attribute_group *overlay_sysfs_groups[] = { + PTR_IF(IS_ENABLED(CONFIG_FB_DEVICE), &overlay_sysfs_group), + NULL, +}; static const struct fb_fix_screeninfo sh_mobile_lcdc_overlay_fix = { .id = "SH Mobile LCDC", -- 2.43.0
