Enable CONFIG_UAPI_HEADER_TEST turns out the following build issues
HDRTEST usr/include/linux/mxc_asrc.h
In file included from <command-line>:32:0:
./usr/include/linux/mxc_asrc.h:125:2: error: unknown type name ‘snd_pcm_format_t’
snd_pcm_format_t input_format;
^~~~~~~~~~~~~~~~
./usr/include/linux/mxc_asrc.h:126:2: error: unknown type name ‘snd_pcm_format_t’
snd_pcm_format_t output_format;
^~~~~~~~~~~~~~~~
./usr/include/linux/mxc_asrc.h:134:2: error: unknown type name ‘uint64_t’
uint64_t supported_in_format;
^~~~~~~~
./usr/include/linux/mxc_asrc.h:135:2: error: unknown type name ‘uint64_t’
uint64_t supported_out_format;
But even add the missing/necessary header file, it finally failed too in the end:
HDRTEST usr/include/linux/mxc_asrc.h
In file included from ./usr/include/linux/mxc_asrc.h:23:0,
from <command-line>:32:
./usr/include/sound/asound.h:459:18: error: field ‘trigger_tstamp’ has incomplete type
struct timespec trigger_tstamp; /* time when stream was started/stopped/paused */
^~~~~~~~~~~~~~
./usr/include/sound/asound.h:460:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp; /* reference timestamp */
^~~~~~
./usr/include/sound/asound.h:469:18: error: field ‘audio_tstamp’ has incomplete type
struct timespec audio_tstamp; /* sample counter, wall clock, PHC or on-demand sync'ed */
^~~~~~~~~~~~
./usr/include/sound/asound.h:470:18: error: field ‘driver_tstamp’ has incomplete type
struct timespec driver_tstamp; /* useful in case reference system tstamp is reported with delay */
^~~~~~~~~~~~~
./usr/include/sound/asound.h:472:37: error: invalid application of ‘sizeof’ to incomplete type ‘struct timespec’
unsigned char reserved[52-2*sizeof(struct timespec)]; /* must be filled with zero */
^~~~~~
./usr/include/sound/asound.h:479:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp; /* Timestamp */
^~~~~~
./usr/include/sound/asound.h:481:18: error: field ‘audio_tstamp’ has incomplete type
struct timespec audio_tstamp; /* from sample counter or wall clock */
^~~~~~~~~~~~
./usr/include/sound/asound.h:651:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp; /* Timestamp */
^~~~~~
./usr/include/sound/asound.h:763:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp; /* Timestamp - last update */
^~~~~~
./usr/include/sound/asound.h:813:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp;
^~~~~~
./usr/include/sound/asound.h:956:18: error: field ‘tstamp’ has incomplete type
struct timespec tstamp;
^~~~~~
./usr/include/sound/asound.h:957:36: error: invalid application of ‘sizeof’ to incomplete type ‘struct timespec’
unsigned char reserved[128-sizeof(struct timespec)];
This is kernel known issue, just like other fixes as the following, put mxc_asrc.h into the skip-list:
header-test- += sound/asequencer.h
header-test- += sound/asoc.h
header-test- += sound/asound.h
header-test- += sound/compress_offload.h
header-test- += sound/emu10k1.h
header-test- += sound/sfnt_info.h
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
(cherry picked from commit 4018355af34d9b25ff7bd4d27960d72b8d304e30)