On Sat, Aug 24, 2024 at 06:33:41AM +0000, Ding, Shenghao wrote: > > From: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > > Sent: Friday, August 23, 2024 9:34 PM > > On Fri, Aug 23, 2024 at 02:24:17AM +0000, Ding, Shenghao wrote: > > > > From: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > > > > Sent: Thursday, August 22, 2024 9:37 PM > > > > To: Ding, Shenghao <shenghao-ding@xxxxxx> On Thu, Aug 22, 2024 at > > > > 02:32:02PM +0800, Shenghao Ding wrote: ... > > > > > /* pow(10, db/20) * pow(2,30) */ > > > > > -static const unsigned char tas2563_dvc_table[][4] = { > > > > > +static const __maybe_unused unsigned char tas2563_dvc_table[][4] > > > > > += { > > > > > { 0X00, 0X00, 0X00, 0X00 }, /* -121.5db */ > > > > > { 0X00, 0X00, 0X03, 0XBC }, /* -121.0db */ > > > > > { 0X00, 0X00, 0X03, 0XF5 }, /* -120.5db */ > > > > > > > > As far as I can see in the latest Linux Next the above mentioned > > > > table is used solely in sound/soc/codecs/tas2781-i2c.c. Why not > > > > moving it to the C file instead? > > > We have a big plan to implement the digital gain for tas2563 in the > > > side codec driver too, so abstracted this table into a separated header file. > > > > So, this __maybe_unused is a temporary stub, correct? Just don't forget to > > remove it when the mentioned functionality will be ready. > > > > Thanks for the explanation. > To add __maybe_unused is not temporary, because this driver support both > tas2563 and tas2781, if the hardware only contains tas2781 chips, > tas2563_dvc_table is obviously useless, so marked it as __maybe_unused. You got me confused. __maybe_unused is a compile-time (okay, link-time) attribute. If what you are telling is true, why do you need it and can't use respective #ifdef? Otherwise, why is it in the _header_ file and not in the C-file? -- With Best Regards, Andy Shevchenko