On Fri, Dec 19, 2025 at 7:43 AM Chintan Patel <[email protected]> wrote: > > fbtft provides sysfs interfaces for debugging and gamma configuration, > but these are not required for the core driver. > > Drop the hard dependency on CONFIG_FB_DEVICE and make sysfs support > optional by using dev_of_fbinfo() at runtime. When FB_DEVICE is disabled, > sysfs operations are skipped while the code remains buildable and > type-checked.
> v2: > - Replace CONFIG_FB_DEVICE ifdefs with runtime checks > - Use dev_of_fbinfo() to guard sysfs creation and removal The place for the change log is either a cover letter, or... > Suggested-by: Thomas Zimmermann <[email protected]> > Suggested-by: Helge Deller <[email protected]> > Signed-off-by: Chintan Patel <[email protected]> > --- ...a comment block here. It's not so important to be in the Git history since we have a lore.kernel.org archive. > drivers/staging/fbtft/Kconfig | 5 ++++- > drivers/staging/fbtft/fbtft-sysfs.c | 18 ++++++++++++++---- ... > void fbtft_sysfs_init(struct fbtft_par *par) > { > - device_create_file(par->info->dev, &debug_device_attr); > + struct device *dev = dev_of_fbinfo(par->info); > + > + if (!dev) > + return; The better way is to decouple the definition and the assignment in the cases when it's followed by a conditional (validation check). In this case any new code added in between doesn't affect readability and maintenance efforts. struct device *dev; dev = dev_of_fbinfo(par->info); if (!dev) return; > + device_create_file(dev, &debug_device_attr); > if (par->gamma.curves && par->fbtftops.set_gamma) > - device_create_file(par->info->dev, &gamma_device_attrs[0]); > + device_create_file(dev, &gamma_device_attrs[0]); > } Ditto for the rest. -- With Best Regards, Andy Shevchenko
