On Wednesday, June 06, 2012 3:17 AM, Ian Abbott wrote: > On 2012-06-05 19:20, H Hartley Sweeten wrote: >> Local functions should be marked static to prevent them from >> being exposed globally. >> >> This quiets the following sparse warnings: >> >> warning: symbol 'ni_release_gpct_mite_channel' was not declared. Should it be static? >> warning: symbol 'ni_prime_channelgain_list' was not declared. Should it be static? >> >> Signed-off-by: H Hartley Sweeten<hsweeten@xxxxxxxxxxxxxxxxxxx> >> Cc: Ian Abbott<abbotti@xxxxxxxxx> >> Cc: Mori Hess<fmhess@xxxxxxxxxxxxxxxxxxxxx> >> Cc: Greg Kroah-Hartman<gregkh@xxxxxxxxxxxxxxxxxxx> >> >> --- >> >> diff --git a/drivers/staging/comedi/drivers/ni_mio_common.c b/drivers/staging/comedi/drivers/ni_mio_common.c >> index fd232bc..3b3a0b1 100644 >> --- a/drivers/staging/comedi/drivers/ni_mio_common.c >> +++ b/drivers/staging/comedi/drivers/ni_mio_common.c >> @@ -644,7 +644,7 @@ static void ni_release_ao_mite_channel(struct comedi_device *dev) >> #endif /* PCIDMA */ >> } >> >> -void ni_release_gpct_mite_channel(struct comedi_device *dev, >> +static void ni_release_gpct_mite_channel(struct comedi_device *dev, >> unsigned gpct_index) >> { >> #ifdef PCIDMA >> @@ -1880,7 +1880,7 @@ static int ni_ai_insn_read(struct comedi_device *dev, >> return insn->n; >> } > > This results in a compiler warning about the unused function > ni_release_gpct_mite_channel when compiling ni_atmio.c. It was unused > before of course, but now it is static, the compiler realizes it! Ugh... c code including c code... I didn't notice that until now. > It could be fixed for now by moving the '#ifdef PCIDMA' and matching > '#endif' to surround the whole function, though I guess we want to try > and get rid of the #ifdef's eventually. It's tricky because > ni_mio_common.c isn't a standalone compilation unit, it's #include'd by > some other .c files. We might need to have a go at splitting it up at > some point. The ni_mio_common.c file should just get turned into a library module. Right now it's a bit of a mess. The individual drivers define PCIDMA before including ni_mio_common.c. The only one that sets the define is ni_pcimio but it's also included by ni_atmio and ni_mio_cs. I'll look it over and see what might be done to fix it. Regards, Hartley _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel