This patch fixes this error with gcc 4 :
wavfront.c:2490: error: static declaration of 'errno' follows non-static declaration
/usr/src/git/linux-2.4/include/linux/unistd.h:4: error: previous declaration of 'errno' was here
The solution is to workaround errno the same way as in sound_firmware :
#include <linux/fs.h>
#include <linux/mm.h>
#include <linux/slab.h>
-#include <linux/unistd.h>
+static int my_errno;
+#define errno my_errno
+#include <asm/unistd.h>
#include <asm/uaccess.h>
-static int errno;
-
static int
wavefront_download_firmware (char *path)