On Thu, 2010-12-16 at 14:00 -0500, Jarod Wilson wrote:
> Fix a thinko, and move macro definition to a common header so it can be
> shared amongst all drivers, as ms to us conversion is something that
> multiple drivers need to do. We probably ought to have its inverse
> available as well.
Nope, at least ENE gets 'us' samples, that is 10^-6 seconds, and I
multiply that by 1000, and that gives nanoseconds (10^-9).
I have nothing against moving MS_TO_NS to common code of course.
Best regards,
Maxim Levitsky
>
> Reported-by: David Härdeman <[email protected]>
> CC: Maxim Levitsky <[email protected]>
> Signed-off-by: Jarod Wilson <[email protected]>
> ---
> drivers/media/rc/ene_ir.c | 16 ++++++++--------
> drivers/media/rc/ene_ir.h | 2 --
> drivers/media/rc/mceusb.c | 7 +++----
> include/media/rc-core.h | 1 +
> 4 files changed, 12 insertions(+), 14 deletions(-)
>
> diff --git a/drivers/media/rc/ene_ir.c b/drivers/media/rc/ene_ir.c
> index 80b3c31..1203d4f 100644
> --- a/drivers/media/rc/ene_ir.c
> +++ b/drivers/media/rc/ene_ir.c
> @@ -446,27 +446,27 @@ static void ene_rx_setup(struct ene_device *dev)
>
> select_timeout:
> if (dev->rx_fan_input_inuse) {
> - dev->rdev->rx_resolution = MS_TO_NS(ENE_FW_SAMPLE_PERIOD_FAN);
> + dev->rdev->rx_resolution = MS_TO_US(ENE_FW_SAMPLE_PERIOD_FAN);
>
> /* Fan input doesn't support timeouts, it just ends the
> input with a maximum sample */
> dev->rdev->min_timeout = dev->rdev->max_timeout =
> - MS_TO_NS(ENE_FW_SMPL_BUF_FAN_MSK *
> + MS_TO_US(ENE_FW_SMPL_BUF_FAN_MSK *
> ENE_FW_SAMPLE_PERIOD_FAN);
> } else {
> - dev->rdev->rx_resolution = MS_TO_NS(sample_period);
> + dev->rdev->rx_resolution = MS_TO_US(sample_period);
>
> /* Theoreticly timeout is unlimited, but we cap it
> * because it was seen that on one device, it
> * would stop sending spaces after around 250 msec.
> * Besides, this is close to 2^32 anyway and timeout is u32.
> */
> - dev->rdev->min_timeout = MS_TO_NS(127 * sample_period);
> - dev->rdev->max_timeout = MS_TO_NS(200000);
> + dev->rdev->min_timeout = MS_TO_US(127 * sample_period);
> + dev->rdev->max_timeout = MS_TO_US(200000);
> }
>
> if (dev->hw_learning_and_tx_capable)
> - dev->rdev->tx_resolution = MS_TO_NS(sample_period);
> + dev->rdev->tx_resolution = MS_TO_US(sample_period);
>
> if (dev->rdev->timeout > dev->rdev->max_timeout)
> dev->rdev->timeout = dev->rdev->max_timeout;
> @@ -801,7 +801,7 @@ static irqreturn_t ene_isr(int irq, void *data)
>
> dbg("RX: %d (%s)", hw_sample, pulse ? "pulse" : "space");
>
> - ev.duration = MS_TO_NS(hw_sample);
> + ev.duration = MS_TO_US(hw_sample);
> ev.pulse = pulse;
> ir_raw_event_store_with_filter(dev->rdev, &ev);
> }
> @@ -821,7 +821,7 @@ static void ene_setup_default_settings(struct ene_device
> *dev)
> dev->learning_mode_enabled = learning_mode_force;
>
> /* Set reasonable default timeout */
> - dev->rdev->timeout = MS_TO_NS(150000);
> + dev->rdev->timeout = MS_TO_US(150000);
> }
>
> /* Upload all hardware settings at once. Used at load and resume time */
> diff --git a/drivers/media/rc/ene_ir.h b/drivers/media/rc/ene_ir.h
> index c179baf..337a41d 100644
> --- a/drivers/media/rc/ene_ir.h
> +++ b/drivers/media/rc/ene_ir.h
> @@ -201,8 +201,6 @@
> #define dbg_verbose(format, ...) __dbg(2, format, ## __VA_ARGS__)
> #define dbg_regs(format, ...) __dbg(3, format, ## __VA_ARGS__)
>
> -#define MS_TO_NS(msec) ((msec) * 1000)
> -
> struct ene_device {
> struct pnp_dev *pnp_dev;
> struct rc_dev *rdev;
> diff --git a/drivers/media/rc/mceusb.c b/drivers/media/rc/mceusb.c
> index 94b95d4..9c55e32 100644
> --- a/drivers/media/rc/mceusb.c
> +++ b/drivers/media/rc/mceusb.c
> @@ -48,7 +48,6 @@
> #define USB_BUFLEN 32 /* USB reception buffer length */
> #define USB_CTRL_MSG_SZ 2 /* Size of usb ctrl msg on gen1 hw */
> #define MCE_G1_INIT_MSGS 40 /* Init messages on gen1 hw to throw out */
> -#define MS_TO_NS(msec) ((msec) * 1000)
>
> /* MCE constants */
> #define MCE_CMDBUF_SIZE 384 /* MCE Command buffer length */
> @@ -815,7 +814,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 = MS_TO_US((hi << 8 | lo) / 2);
> break;
>
> /* 1-byte return value commands */
> @@ -856,7 +855,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_NS(MCE_TIME_UNIT);
> + * MS_TO_US(MCE_TIME_UNIT);
>
> dev_dbg(ir->dev, "Storing %s with duration %d\n",
> rawir.pulse ? "pulse" : "space",
> @@ -1059,7 +1058,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 = MS_TO_US(1000);
> if (!ir->flags.no_tx) {
> rc->s_tx_mask = mceusb_set_tx_mask;
> rc->s_tx_carrier = mceusb_set_tx_carrier;
> diff --git a/include/media/rc-core.h b/include/media/rc-core.h
> index ffc93dd..830666d 100644
> --- a/include/media/rc-core.h
> +++ b/include/media/rc-core.h
> @@ -185,6 +185,7 @@ static inline void init_ir_raw_event(struct ir_raw_event
> *ev)
> }
>
> #define IR_MAX_DURATION 0xFFFFFFFF /* a bit more than 4 seconds
> */
> +#define MS_TO_US(msec) ((msec) * 1000)
>
> void ir_raw_event_handle(struct rc_dev *dev);
> int ir_raw_event_store(struct rc_dev *dev, struct ir_raw_event *ev);
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html