From: Clemens Ladisch Date: Sun, 18 Mar 2012 18:03:26 +0000 (+0100) Subject: firewire: ohci: optimize control bit checks X-Git-Tag: master-2012-04-09~96^2~4 X-Git-Url: http://pileus.org/git/?a=commitdiff_plain;h=90fcc8987390bffd79c6fd16aa59cc6ef549efcb;p=~andy%2Flinux firewire: ohci: optimize control bit checks Doing the endian conversion on the constant instead of the memory field allows the compiler to do the conversion at compile time. Signed-off-by: Clemens Ladisch Signed-off-by: Stefan Richter --- diff --git a/drivers/firewire/ohci.c b/drivers/firewire/ohci.c index 588a72892ff..a2fc64cd8b8 100644 --- a/drivers/firewire/ohci.c +++ b/drivers/firewire/ohci.c @@ -2728,7 +2728,7 @@ static int handle_ir_packet_per_buffer(struct context *context, p = last + 1; copy_iso_headers(ctx, p); - if (le16_to_cpu(last->control) & DESCRIPTOR_IRQ_ALWAYS) { + if (last->control & cpu_to_le16(DESCRIPTOR_IRQ_ALWAYS)) { ir_header = (__le32 *) p; ctx->base.callback.sc(&ctx->base, le32_to_cpu(ir_header[0]) & 0xffff, @@ -2760,7 +2760,7 @@ static int handle_ir_buffer_fill(struct context *context, le16_to_cpu(last->req_count), DMA_FROM_DEVICE); - if (le16_to_cpu(last->control) & DESCRIPTOR_IRQ_ALWAYS) + if (last->control & cpu_to_le16(DESCRIPTOR_IRQ_ALWAYS)) ctx->base.callback.mc(&ctx->base, le32_to_cpu(last->data_address) + le16_to_cpu(last->req_count), @@ -2832,7 +2832,7 @@ static int handle_it_packet(struct context *context, le16_to_cpu(pd->res_count)); ctx->header_length += 4; } - if (le16_to_cpu(last->control) & DESCRIPTOR_IRQ_ALWAYS) { + if (last->control & cpu_to_le16(DESCRIPTOR_IRQ_ALWAYS)) { ctx->base.callback.sc(&ctx->base, le16_to_cpu(last->res_count), ctx->header_length, ctx->header, ctx->base.callback_data);