diff options
author | Thomas Charbonnel <thomas@undata.org> | 2005-04-25 09:35:29 (GMT) |
---|---|---|
committer | Jaroslav Kysela <perex@suse.cz> | 2005-05-29 08:05:23 (GMT) |
commit | 7679a03099992d8e6c878d459e22b639ed8c10fa (patch) | |
tree | c8f19bcd7c9297948936fd8efe3b82c08f63c601 | |
parent | 67e1b51e293cec9bbe8c9ad81680bceec1e3b7f9 (diff) | |
download | linux-7679a03099992d8e6c878d459e22b639ed8c10fa.tar.xz |
[ALSA] hdsp - solved big endian problem
RME HDSP driver
ppc firmware upload fix
Signed-off-by: Thomas Charbonnel <thomas@undata.org>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
-rw-r--r-- | sound/pci/rme9652/hdsp.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/sound/pci/rme9652/hdsp.c b/sound/pci/rme9652/hdsp.c index 44ca7dd..b35ed5f 100644 --- a/sound/pci/rme9652/hdsp.c +++ b/sound/pci/rme9652/hdsp.c @@ -4912,19 +4912,9 @@ static int __devinit hdsp_request_fw_loader(hdsp_t *hdsp) release_firmware(fw); return -EINVAL; } -#ifdef SNDRV_BIG_ENDIAN - { - int i; - u32 *src = (u32*)fw->data; - for (i = 0; i < ARRAY_SIZE(hdsp->firmware_cache); i++, src++) - hdsp->firmware_cache[i] = ((*src & 0x000000ff) << 16) | - ((*src & 0x0000ff00) << 8) | - ((*src & 0x00ff0000) >> 8) | - ((*src & 0xff000000) >> 16); - } -#else + memcpy(hdsp->firmware_cache, fw->data, sizeof(hdsp->firmware_cache)); -#endif + release_firmware(fw); hdsp->state |= HDSP_FirmwareCached; |