Re: [PATCH v2 2/4] staging: fbtft: Make FB_DEVICE dependency optional
From: Chintan Patel <hidden>
Date: 2025-12-28 03:36:04
Also in:
linux-fbdev, linux-omap, linux-staging, lkml
Hi Andy, On 12/27/25 06:19, Andy Shevchenko wrote:
On Fri, Dec 19, 2025 at 7:43 AM Chintan Patel [off-list ref] wrote:quoted
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.quoted
v2: - Replace CONFIG_FB_DEVICE ifdefs with runtime checks - Use dev_of_fbinfo() to guard sysfs creation and removalThe place for the change log is either a cover letter, or...quoted
Suggested-by: Thomas Zimmermann <tzimmermann@suse.de> Suggested-by: Helge Deller <deller@gmx.de> Signed-off-by: Chintan Patel <redacted> ---...a comment block here. It's not so important to be in the Git history since we have a lore.kernel.org archive.
Thank you for suggestion! Will move to coverletter.
quoted
drivers/staging/fbtft/Kconfig | 5 ++++- drivers/staging/fbtft/fbtft-sysfs.c | 18 ++++++++++++++----...quoted
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;quoted
+ 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.
Will do v3 and re-send. Thanks for reviews!