From: Sean Young Date: Mon, 20 Jan 2014 22:10:39 +0000 (-0300) Subject: [media] iguanair: simplify tx loop X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=776eced0e336f88fdbe4374306de1f8acaeffcc4;p=openwrt%2Fstaging%2Fblogic.git [media] iguanair: simplify tx loop Make the code simpler. Signed-off-by: Sean Young Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/rc/iguanair.c b/drivers/media/rc/iguanair.c index 99a3a5a509e6..a83519a6a158 100644 --- a/drivers/media/rc/iguanair.c +++ b/drivers/media/rc/iguanair.c @@ -364,20 +364,14 @@ static int iguanair_tx(struct rc_dev *dev, unsigned *txbuf, unsigned count) rc = -EINVAL; goto out; } - while (periods > 127) { - ir->packet->payload[size++] = 127 | space; - periods -= 127; + while (periods) { + unsigned p = min(periods, 127u); + ir->packet->payload[size++] = p | space; + periods -= p; } - - ir->packet->payload[size++] = periods | space; space ^= 0x80; } - if (count == 0) { - rc = -EINVAL; - goto out; - } - ir->packet->header.start = 0; ir->packet->header.direction = DIR_OUT; ir->packet->header.cmd = CMD_SEND;