Index: alsa-kernel/include/hdsp.h =================================================================== RCS file: /suse/tiwai/cvs/alsa/alsa-kernel/include/hdsp.h,v retrieving revision 1.8 diff -u -r1.8 hdsp.h --- alsa-kernel/include/hdsp.h 23 Jun 2004 13:34:03 -0000 1.8 +++ alsa-kernel/include/hdsp.h 21 Sep 2004 10:16:24 -0000 @@ -76,7 +76,7 @@ typedef struct _snd_hdsp_firmware hdsp_firmware_t; struct _snd_hdsp_firmware { - unsigned long __user *firmware_data; /* 24413 long words */ + void __user *firmware_data; /* 24413 x 4 bytes */ }; #define SNDRV_HDSP_IOCTL_UPLOAD_FIRMWARE _IOW('H', 0x42, hdsp_firmware_t) Index: alsa-kernel/pci/rme9652/hdsp.c =================================================================== RCS file: /suse/tiwai/cvs/alsa/alsa-kernel/pci/rme9652/hdsp.c,v retrieving revision 1.69 diff -u -r1.69 hdsp.c --- alsa-kernel/pci/rme9652/hdsp.c 16 Sep 2004 18:36:59 -0000 1.69 +++ alsa-kernel/pci/rme9652/hdsp.c 21 Sep 2004 10:20:25 -0000 @@ -4445,7 +4445,7 @@ int i; if (hdsp->io_type == H9652) { - unsigned long rms_low, rms_high; + u32 rms_low, rms_high; int doublespeed = 0; if (hdsp_read (hdsp, HDSP_statusRegister) & HDSP_DoubleSpeedStatus) doublespeed = 1; @@ -4620,7 +4620,7 @@ } case SNDRV_HDSP_IOCTL_UPLOAD_FIRMWARE: { hdsp_firmware_t __user *firmware; - unsigned long __user *firmware_data; + u32 __user *firmware_data; int err; if (hdsp->io_type == H9652 || hdsp->io_type == H9632) return -EINVAL; @@ -4638,7 +4638,7 @@ return -EIO; } - if (copy_from_user(hdsp->firmware_cache, firmware_data, sizeof(unsigned long)*24413) != 0) { + if (copy_from_user(hdsp->firmware_cache, firmware_data, sizeof(hdsp->firmware_cache)) != 0) { return -EFAULT; }