On Fri, Oct 26, 2018 at 10:09 AM Rob Clark <robdclark@xxxxxxxxx> wrote: > > BACKLIGHT_CLASS_DEVICE is already tristate, but a dependency > FB_BACKLIGHT prevents it from being built as a module. There > doesn't seem to be any particularly good reason for this, so > switch FB_BACKLIGHT over to tristate. > > Signed-off-by: Rob Clark <robdclark@xxxxxxxxx> > Tested-by: Arnd Bergmann <arnd@xxxxxxxx> bump maybe we can merge this via drm-misc? BR, -R > --- > v2: remove IS_ENABLED() from UABI headers. Userspace doesn't > know the kernel config, so just remove the ifdef guard > > drivers/video/fbdev/Kconfig | 2 +- > drivers/video/fbdev/core/fbsysfs.c | 8 ++++---- > include/linux/fb.h | 2 +- > include/uapi/linux/fb.h | 2 -- > 4 files changed, 6 insertions(+), 8 deletions(-) > > diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig > index 591a13a59787..146ab2c347f8 100644 > --- a/drivers/video/fbdev/Kconfig > +++ b/drivers/video/fbdev/Kconfig > @@ -198,7 +198,7 @@ config FB_MACMODES > default n > > config FB_BACKLIGHT > - bool > + tristate > depends on FB > select BACKLIGHT_LCD_SUPPORT > select BACKLIGHT_CLASS_DEVICE > diff --git a/drivers/video/fbdev/core/fbsysfs.c b/drivers/video/fbdev/core/fbsysfs.c > index e31a182b42bf..44cca39f2b51 100644 > --- a/drivers/video/fbdev/core/fbsysfs.c > +++ b/drivers/video/fbdev/core/fbsysfs.c > @@ -60,7 +60,7 @@ struct fb_info *framebuffer_alloc(size_t size, struct device *dev) > info->device = dev; > info->fbcon_rotate_hint = -1; > > -#ifdef CONFIG_FB_BACKLIGHT > +#if IS_ENABLED(CONFIG_FB_BACKLIGHT) > mutex_init(&info->bl_curve_mutex); > #endif > > @@ -429,7 +429,7 @@ static ssize_t show_fbstate(struct device *device, > return snprintf(buf, PAGE_SIZE, "%d\n", fb_info->state); > } > > -#ifdef CONFIG_FB_BACKLIGHT > +#if IS_ENABLED(CONFIG_FB_BACKLIGHT) > static ssize_t store_bl_curve(struct device *device, > struct device_attribute *attr, > const char *buf, size_t count) > @@ -510,7 +510,7 @@ static struct device_attribute device_attrs[] = { > __ATTR(stride, S_IRUGO, show_stride, NULL), > __ATTR(rotate, S_IRUGO|S_IWUSR, show_rotate, store_rotate), > __ATTR(state, S_IRUGO|S_IWUSR, show_fbstate, store_fbstate), > -#ifdef CONFIG_FB_BACKLIGHT > +#if IS_ENABLED(CONFIG_FB_BACKLIGHT) > __ATTR(bl_curve, S_IRUGO|S_IWUSR, show_bl_curve, store_bl_curve), > #endif > }; > @@ -551,7 +551,7 @@ void fb_cleanup_device(struct fb_info *fb_info) > } > } > > -#ifdef CONFIG_FB_BACKLIGHT > +#if IS_ENABLED(CONFIG_FB_BACKLIGHT) > /* This function generates a linear backlight curve > * > * 0: off > diff --git a/include/linux/fb.h b/include/linux/fb.h > index a3cab6dc9b44..7cdd31a69719 100644 > --- a/include/linux/fb.h > +++ b/include/linux/fb.h > @@ -485,7 +485,7 @@ struct fb_info { > struct list_head modelist; /* mode list */ > struct fb_videomode *mode; /* current mode */ > > -#ifdef CONFIG_FB_BACKLIGHT > +#if IS_ENABLED(CONFIG_FB_BACKLIGHT) > /* assigned backlight device */ > /* set before framebuffer registration, > remove after unregister */ > diff --git a/include/uapi/linux/fb.h b/include/uapi/linux/fb.h > index 6cd9b198b7c6..b6aac7ee1f67 100644 > --- a/include/uapi/linux/fb.h > +++ b/include/uapi/linux/fb.h > @@ -393,11 +393,9 @@ struct fb_cursor { > struct fb_image image; /* Cursor image */ > }; > > -#ifdef CONFIG_FB_BACKLIGHT > /* Settings for the generic backlight code */ > #define FB_BACKLIGHT_LEVELS 128 > #define FB_BACKLIGHT_MAX 0xFF > -#endif > > > #endif /* _UAPI_LINUX_FB_H */ > -- > 2.17.2 > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel