mirror of https://gitee.com/openkylin/linux.git
[media] rc: use time unit conversion macros correctly
Due to my own stupidity, some of the wrong time unit conversion macros were being used inside some of the IR drivers I've been working on. Fix that, and convert over some additional places to also use the macros. Signed-off-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
457e2ffcef
commit
b4608faee0
|
@ -816,7 +816,7 @@ static void mceusb_handle_command(struct mceusb_dev *ir, int index)
|
|||
switch (ir->buf_in[index]) {
|
||||
/* 2-byte return value commands */
|
||||
case MCE_CMD_S_TIMEOUT:
|
||||
ir->rc->timeout = MS_TO_NS((hi << 8 | lo) / 2);
|
||||
ir->rc->timeout = US_TO_NS((hi << 8 | lo) / 2);
|
||||
break;
|
||||
|
||||
/* 1-byte return value commands */
|
||||
|
@ -857,7 +857,7 @@ static void mceusb_process_ir_data(struct mceusb_dev *ir, int buf_len)
|
|||
ir->rem--;
|
||||
rawir.pulse = ((ir->buf_in[i] & MCE_PULSE_BIT) != 0);
|
||||
rawir.duration = (ir->buf_in[i] & MCE_PULSE_MASK)
|
||||
* MS_TO_US(MCE_TIME_UNIT);
|
||||
* US_TO_NS(MCE_TIME_UNIT);
|
||||
|
||||
dev_dbg(ir->dev, "Storing %s with duration %d\n",
|
||||
rawir.pulse ? "pulse" : "space",
|
||||
|
@ -1060,7 +1060,7 @@ static struct rc_dev *mceusb_init_rc_dev(struct mceusb_dev *ir)
|
|||
rc->priv = ir;
|
||||
rc->driver_type = RC_DRIVER_IR_RAW;
|
||||
rc->allowed_protos = RC_TYPE_ALL;
|
||||
rc->timeout = MS_TO_NS(1000);
|
||||
rc->timeout = US_TO_NS(1000);
|
||||
if (!ir->flags.no_tx) {
|
||||
rc->s_tx_mask = mceusb_set_tx_mask;
|
||||
rc->s_tx_carrier = mceusb_set_tx_carrier;
|
||||
|
|
|
@ -460,7 +460,7 @@ static u32 nvt_rx_carrier_detect(struct nvt_dev *nvt)
|
|||
return 0;
|
||||
}
|
||||
|
||||
carrier = (count * 1000000) / duration;
|
||||
carrier = MS_TO_NS(count) / duration;
|
||||
|
||||
if ((carrier > MAX_CARRIER) || (carrier < MIN_CARRIER))
|
||||
nvt_dbg("WTF? Carrier frequency out of range!");
|
||||
|
@ -612,8 +612,8 @@ static void nvt_process_rx_ir_data(struct nvt_dev *nvt)
|
|||
sample = nvt->buf[i];
|
||||
|
||||
rawir.pulse = ((sample & BUF_PULSE_BIT) != 0);
|
||||
rawir.duration = (sample & BUF_LEN_MASK)
|
||||
* SAMPLE_PERIOD * 1000;
|
||||
rawir.duration = US_TO_NS((sample & BUF_LEN_MASK)
|
||||
* SAMPLE_PERIOD);
|
||||
|
||||
if ((sample & BUF_LEN_MASK) == BUF_LEN_MASK) {
|
||||
if (nvt->rawir.pulse == rawir.pulse)
|
||||
|
|
|
@ -164,7 +164,7 @@ static void sz_push_full_pulse(struct streamzap_ir *sz,
|
|||
sz->signal_start.tv_usec -
|
||||
sz->signal_last.tv_usec);
|
||||
rawir.duration -= sz->sum;
|
||||
rawir.duration *= 1000;
|
||||
rawir.duration = US_TO_NS(rawir.duration);
|
||||
rawir.duration &= IR_MAX_DURATION;
|
||||
}
|
||||
sz_push(sz, rawir);
|
||||
|
@ -177,7 +177,7 @@ static void sz_push_full_pulse(struct streamzap_ir *sz,
|
|||
rawir.duration = ((int) value) * SZ_RESOLUTION;
|
||||
rawir.duration += SZ_RESOLUTION / 2;
|
||||
sz->sum += rawir.duration;
|
||||
rawir.duration *= 1000;
|
||||
rawir.duration = US_TO_NS(rawir.duration);
|
||||
rawir.duration &= IR_MAX_DURATION;
|
||||
sz_push(sz, rawir);
|
||||
}
|
||||
|
@ -197,7 +197,7 @@ static void sz_push_full_space(struct streamzap_ir *sz,
|
|||
rawir.duration = ((int) value) * SZ_RESOLUTION;
|
||||
rawir.duration += SZ_RESOLUTION / 2;
|
||||
sz->sum += rawir.duration;
|
||||
rawir.duration *= 1000;
|
||||
rawir.duration = US_TO_NS(rawir.duration);
|
||||
sz_push(sz, rawir);
|
||||
}
|
||||
|
||||
|
@ -430,13 +430,13 @@ static int __devinit streamzap_probe(struct usb_interface *intf,
|
|||
sz->decoder_state = PulseSpace;
|
||||
/* FIXME: don't yet have a way to set this */
|
||||
sz->timeout_enabled = true;
|
||||
sz->rdev->timeout = (((SZ_TIMEOUT * SZ_RESOLUTION * 1000) &
|
||||
sz->rdev->timeout = ((US_TO_NS(SZ_TIMEOUT * SZ_RESOLUTION) &
|
||||
IR_MAX_DURATION) | 0x03000000);
|
||||
#if 0
|
||||
/* not yet supported, depends on patches from maxim */
|
||||
/* see also: LIRC_GET_REC_RESOLUTION and LIRC_SET_REC_TIMEOUT */
|
||||
sz->min_timeout = SZ_TIMEOUT * SZ_RESOLUTION * 1000;
|
||||
sz->max_timeout = SZ_TIMEOUT * SZ_RESOLUTION * 1000;
|
||||
sz->min_timeout = US_TO_NS(SZ_TIMEOUT * SZ_RESOLUTION);
|
||||
sz->max_timeout = US_TO_NS(SZ_TIMEOUT * SZ_RESOLUTION);
|
||||
#endif
|
||||
|
||||
do_gettimeofday(&sz->signal_start);
|
||||
|
|
Loading…
Reference in New Issue