* [PATCH] staging: fbtft: fix coding style issue in fbtft-bus.c
@ 2026-04-12 17:33 Baker
2026-04-12 17:33 ` [PATCH v3] staging: fbtft: replace empty macro args with identity converter Baker
2026-04-14 11:43 ` [PATCH] staging: fbtft: fix coding style issue in fbtft-bus.c kernel test robot
0 siblings, 2 replies; 6+ messages in thread
From: Baker @ 2026-04-12 17:33 UTC (permalink / raw)
To: andy, gregkh; +Cc: dri-devel, linux-fbdev, linux-staging, linux-kernel, Baker
Remove trailing space and comma before closing parenthesis ')' in
define_fbtft_write_reg macro as reported by checkpatch.pl.
Signed-off-by: Baker <mzndmzn@gmail.com>
---
drivers/staging/fbtft/fbtft-bus.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/fbtft/fbtft-bus.c b/drivers/staging/fbtft/fbtft-bus.c
index 30e436ff19e4..409770891c54 100644
--- a/drivers/staging/fbtft/fbtft-bus.c
+++ b/drivers/staging/fbtft/fbtft-bus.c
@@ -62,9 +62,9 @@ out: \
} \
EXPORT_SYMBOL(func);
-define_fbtft_write_reg(fbtft_write_reg8_bus8, u8, u8, )
+define_fbtft_write_reg(fbtft_write_reg8_bus8, u8, u8)
define_fbtft_write_reg(fbtft_write_reg16_bus8, __be16, u16, cpu_to_be16)
-define_fbtft_write_reg(fbtft_write_reg16_bus16, u16, u16, )
+define_fbtft_write_reg(fbtft_write_reg16_bus16, u16, u16)
void fbtft_write_reg8_bus9(struct fbtft_par *par, int len, ...)
{
--
2.47.3
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH v3] staging: fbtft: replace empty macro args with identity converter
2026-04-12 17:33 [PATCH] staging: fbtft: fix coding style issue in fbtft-bus.c Baker
@ 2026-04-12 17:33 ` Baker
2026-04-13 5:58 ` Andy Shevchenko
2026-04-14 11:43 ` [PATCH] staging: fbtft: fix coding style issue in fbtft-bus.c kernel test robot
1 sibling, 1 reply; 6+ messages in thread
From: Baker @ 2026-04-12 17:33 UTC (permalink / raw)
To: andy, gregkh; +Cc: dri-devel, linux-fbdev, linux-staging, linux-kernel, Baker
The define_fbtft_write_reg macro calls 'modifier' as a function.
Passing an empty token as modifier is undefined behavior in C for
fixed-arity macros. Introduce fbtft_no_conv() as an identity
function to replace the empty args in the no-conversion cases.
Signed-off-by: Baker <mzndmzn@gmail.com>
---
drivers/staging/fbtft/fbtft-bus.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/fbtft/fbtft-bus.c b/drivers/staging/fbtft/fbtft-bus.c
index 30e436ff19e4..7f3fd30576ab 100644
--- a/drivers/staging/fbtft/fbtft-bus.c
+++ b/drivers/staging/fbtft/fbtft-bus.c
@@ -11,6 +11,8 @@
*
*****************************************************************************/
+#define fbtft_no_conv(x) (x)
+
#define define_fbtft_write_reg(func, buffer_type, data_type, modifier) \
void func(struct fbtft_par *par, int len, ...) \
{ \
@@ -62,9 +64,9 @@ out: \
} \
EXPORT_SYMBOL(func);
-define_fbtft_write_reg(fbtft_write_reg8_bus8, u8, u8, )
+define_fbtft_write_reg(fbtft_write_reg8_bus8, u8, u8, fbtft_no_conv)
define_fbtft_write_reg(fbtft_write_reg16_bus8, __be16, u16, cpu_to_be16)
-define_fbtft_write_reg(fbtft_write_reg16_bus16, u16, u16, )
+define_fbtft_write_reg(fbtft_write_reg16_bus16, u16, u16, fbtft_no_conv)
void fbtft_write_reg8_bus9(struct fbtft_par *par, int len, ...)
{
--
2.47.3
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH v3] staging: fbtft: replace empty macro args with identity converter
2026-04-12 17:33 ` [PATCH v3] staging: fbtft: replace empty macro args with identity converter Baker
@ 2026-04-13 5:58 ` Andy Shevchenko
2026-04-13 6:03 ` Greg KH
0 siblings, 1 reply; 6+ messages in thread
From: Andy Shevchenko @ 2026-04-13 5:58 UTC (permalink / raw)
To: Baker; +Cc: andy, gregkh, dri-devel, linux-fbdev, linux-staging, linux-kernel
On Sun, Apr 12, 2026 at 8:33 PM Baker <mzndmzn@gmail.com> wrote:
>
> The define_fbtft_write_reg macro calls 'modifier' as a function.
> Passing an empty token as modifier is undefined behavior in C for
> fixed-arity macros. Introduce fbtft_no_conv() as an identity
> function to replace the empty args in the no-conversion cases.
This trick is used in the kernel (usually for u8). If you really want
to improve, use _Generic() instead.
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3] staging: fbtft: replace empty macro args with identity converter
2026-04-13 5:58 ` Andy Shevchenko
@ 2026-04-13 6:03 ` Greg KH
2026-04-13 6:08 ` Andy Shevchenko
0 siblings, 1 reply; 6+ messages in thread
From: Greg KH @ 2026-04-13 6:03 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Baker, andy, dri-devel, linux-fbdev, linux-staging, linux-kernel
On Mon, Apr 13, 2026 at 08:58:50AM +0300, Andy Shevchenko wrote:
> On Sun, Apr 12, 2026 at 8:33 PM Baker <mzndmzn@gmail.com> wrote:
> >
> > The define_fbtft_write_reg macro calls 'modifier' as a function.
> > Passing an empty token as modifier is undefined behavior in C for
> > fixed-arity macros. Introduce fbtft_no_conv() as an identity
> > function to replace the empty args in the no-conversion cases.
>
> This trick is used in the kernel (usually for u8). If you really want
> to improve, use _Generic() instead.
No, sorry, this code is fine as-is.
greg k-h
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v3] staging: fbtft: replace empty macro args with identity converter
2026-04-13 6:03 ` Greg KH
@ 2026-04-13 6:08 ` Andy Shevchenko
0 siblings, 0 replies; 6+ messages in thread
From: Andy Shevchenko @ 2026-04-13 6:08 UTC (permalink / raw)
To: Greg KH; +Cc: Baker, andy, dri-devel, linux-fbdev, linux-staging, linux-kernel
On Mon, Apr 13, 2026 at 9:03 AM Greg KH <gregkh@linuxfoundation.org> wrote:
> On Mon, Apr 13, 2026 at 08:58:50AM +0300, Andy Shevchenko wrote:
> > On Sun, Apr 12, 2026 at 8:33 PM Baker <mzndmzn@gmail.com> wrote:
> > >
> > > The define_fbtft_write_reg macro calls 'modifier' as a function.
> > > Passing an empty token as modifier is undefined behavior in C for
> > > fixed-arity macros. Introduce fbtft_no_conv() as an identity
> > > function to replace the empty args in the no-conversion cases.
> >
> > This trick is used in the kernel (usually for u8). If you really want
> > to improve, use _Generic() instead.
>
> No, sorry, this code is fine as-is.
Works for me. I suggested they explore the possibilities, it might be
helpful somewhere else in case of the similar requirements (like in a
new code).
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] staging: fbtft: fix coding style issue in fbtft-bus.c
2026-04-12 17:33 [PATCH] staging: fbtft: fix coding style issue in fbtft-bus.c Baker
2026-04-12 17:33 ` [PATCH v3] staging: fbtft: replace empty macro args with identity converter Baker
@ 2026-04-14 11:43 ` kernel test robot
1 sibling, 0 replies; 6+ messages in thread
From: kernel test robot @ 2026-04-14 11:43 UTC (permalink / raw)
To: Baker, andy, gregkh
Cc: oe-kbuild-all, dri-devel, linux-fbdev, linux-staging,
linux-kernel, Baker
Hi Baker,
kernel test robot noticed the following build errors:
[auto build test ERROR on staging/staging-testing]
url: https://github.com/intel-lab-lkp/linux/commits/Baker/staging-fbtft-fix-coding-style-issue-in-fbtft-bus-c/20260414-101811
base: staging/staging-testing
patch link: https://lore.kernel.org/r/20260412173317.3329-1-mzndmzn%40gmail.com
patch subject: [PATCH] staging: fbtft: fix coding style issue in fbtft-bus.c
config: arm-randconfig-r072-20260414 (https://download.01.org/0day-ci/archive/20260414/202604141939.LhzKrfey-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 13.4.0
smatch: v0.5.0-9007-gcf3ea02b
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260414/202604141939.LhzKrfey-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202604141939.LhzKrfey-lkp@intel.com/
All errors (new ones prefixed by >>):
>> drivers/staging/fbtft/fbtft-bus.c:65:53: error: macro "define_fbtft_write_reg" requires 4 arguments, but only 3 given
65 | define_fbtft_write_reg(fbtft_write_reg8_bus8, u8, u8)
| ^
drivers/staging/fbtft/fbtft-bus.c:14: note: macro "define_fbtft_write_reg" defined here
14 | #define define_fbtft_write_reg(func, buffer_type, data_type, modifier) \
|
>> drivers/staging/fbtft/fbtft-bus.c:65:23: error: expected ';' before 'void'
65 | define_fbtft_write_reg(fbtft_write_reg8_bus8, u8, u8)
| ^
| ;
drivers/staging/fbtft/fbtft-bus.c:67:57: error: macro "define_fbtft_write_reg" requires 4 arguments, but only 3 given
67 | define_fbtft_write_reg(fbtft_write_reg16_bus16, u16, u16)
| ^
drivers/staging/fbtft/fbtft-bus.c:14: note: macro "define_fbtft_write_reg" defined here
14 | #define define_fbtft_write_reg(func, buffer_type, data_type, modifier) \
|
drivers/staging/fbtft/fbtft-bus.c:67:23: error: expected ';' before 'void'
67 | define_fbtft_write_reg(fbtft_write_reg16_bus16, u16, u16)
| ^
| ;
68 |
69 | void fbtft_write_reg8_bus9(struct fbtft_par *par, int len, ...)
| ~~~~
vim +/define_fbtft_write_reg +65 drivers/staging/fbtft/fbtft-bus.c
64
> 65 define_fbtft_write_reg(fbtft_write_reg8_bus8, u8, u8)
66 define_fbtft_write_reg(fbtft_write_reg16_bus8, __be16, u16, cpu_to_be16)
67 define_fbtft_write_reg(fbtft_write_reg16_bus16, u16, u16)
68
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2026-04-14 11:44 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-12 17:33 [PATCH] staging: fbtft: fix coding style issue in fbtft-bus.c Baker
2026-04-12 17:33 ` [PATCH v3] staging: fbtft: replace empty macro args with identity converter Baker
2026-04-13 5:58 ` Andy Shevchenko
2026-04-13 6:03 ` Greg KH
2026-04-13 6:08 ` Andy Shevchenko
2026-04-14 11:43 ` [PATCH] staging: fbtft: fix coding style issue in fbtft-bus.c kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox