From 0ff3723eda9778e82c421d79365e0a5d16a0fa8a Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Thu, 30 Jun 2011 15:08:04 +0200 Subject: [PATCH] --- yaml --- r: 254271 b: refs/heads/master c: 4f3c7a18d9e8a287d31f828a259d713fe4859471 h: refs/heads/master i: 254269: 65bda157433b26fc7b76d9b0977ddc59a2ca6764 254267: 2f342e8ce6159749ca3cfe3d79f41a30c0e76b9c 254263: 5352dd5a2848d69c33ef53b2b86dd9aeef053b8b 254255: 4ee1a6f859e243917302328c0179dd25dc6b0b73 254239: 2175f307fd4357b6ae2560014e3b811082dae629 254207: ef7cc8f41f4d34c73cf9a83b0d7ba76ab14af65a v: v3 --- [refs] | 2 +- trunk/include/sound/sb16_csp.h | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 47104d8ed141..f2e0d914c2b8 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 286bed0f0c447b6660e72093d7e778784fdd9ee6 +refs/heads/master: 4f3c7a18d9e8a287d31f828a259d713fe4859471 diff --git a/trunk/include/sound/sb16_csp.h b/trunk/include/sound/sb16_csp.h index 736eac71d053..af1b49e982df 100644 --- a/trunk/include/sound/sb16_csp.h +++ b/trunk/include/sound/sb16_csp.h @@ -99,7 +99,14 @@ struct snd_sb_csp_info { /* get CSP information */ #define SNDRV_SB_CSP_IOCTL_INFO _IOR('H', 0x10, struct snd_sb_csp_info) /* load microcode to CSP */ -#define SNDRV_SB_CSP_IOCTL_LOAD_CODE _IOW('H', 0x11, struct snd_sb_csp_microcode) +/* NOTE: struct snd_sb_csp_microcode overflows the max size (13 bits) + * defined for some architectures like MIPS, and it leads to build errors. + * (x86 and co have 14-bit size, thus it's valid, though.) + * As a workaround for skipping the size-limit check, here we don't use the + * normal _IOW() macro but _IOC() with the manual argument. + */ +#define SNDRV_SB_CSP_IOCTL_LOAD_CODE \ + _IOC(_IOC_WRITE, 'H', 0x11, sizeof(struct snd_sb_csp_microcode)) /* unload microcode from CSP */ #define SNDRV_SB_CSP_IOCTL_UNLOAD_CODE _IO('H', 0x12) /* start CSP */