firewire: endianess fix
authorStefan Richter <stefanr@s5r6.in-berlin.de>
Sat, 23 Feb 2008 11:24:17 +0000 (12:24 +0100)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Thu, 13 Mar 2008 23:56:58 +0000 (00:56 +0100)
The generation of incoming requests was filled in in wrong byte order on
machines with big endian CPU.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Signed-off-by: Jarod Wilson <jwilson@redhat.com>
drivers/firewire/fw-ohci.c

index 7ebad3c..ed4e357 100644 (file)
@@ -375,7 +375,7 @@ static __le32 *handle_ar_packet(struct ar_context *ctx, __le32 *buffer)
         */
 
        if (p.ack + 16 == 0x09)
-               ohci->request_generation = (buffer[2] >> 16) & 0xff;
+               ohci->request_generation = (p.header[2] >> 16) & 0xff;
        else if (ctx == &ohci->ar_request_ctx)
                fw_core_handle_request(&ohci->card, &p);
        else