summaryrefslogtreecommitdiffstats
path: root/drivers/firewire
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2012-03-18 19:03:26 +0100
committerStefan Richter <stefanr@s5r6.in-berlin.de>2012-03-18 22:15:38 +0100
commit90fcc8987390bffd79c6fd16aa59cc6ef549efcb (patch)
tree06a8ea8088e6fe0128f00637e03abe275261e59e /drivers/firewire
parentb9b5bbfda61c1d202dd943dddca8cdf617863fb9 (diff)
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 <clemens@ladisch.de> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'drivers/firewire')
-rw-r--r--drivers/firewire/ohci.c6
1 files changed, 3 insertions, 3 deletions
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);