Skip to content

Commit

Permalink
media: rc-core: rename ir_raw_event_reset to ir_raw_event_overflow
Browse files Browse the repository at this point in the history
The driver report a reset event when the hardware reports and overflow.
There is no reason to have a generic "reset" event.

Signed-off-by: Sean Young <sean@mess.org>
  • Loading branch information
seanyoung authored and intel-lab-lkp committed Jan 20, 2022
1 parent 68b9bcc commit 5b0115b
Show file tree
Hide file tree
Showing 25 changed files with 30 additions and 32 deletions.
2 changes: 1 addition & 1 deletion drivers/media/pci/cx23885/cx23885-input.c
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ static void cx23885_input_process_measurements(struct cx23885_dev *dev,
} while (num != 0);

if (overrun)
ir_raw_event_reset(kernel_ir->rc);
ir_raw_event_overflow(kernel_ir->rc);
else if (handle)
ir_raw_event_handle(kernel_ir->rc);
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/fintek-cir.c
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,7 @@ static void fintek_process_rx_ir_data(struct fintek_dev *fintek)
if (fintek->rem)
fintek->parser_state = PARSE_IRDATA;
else
ir_raw_event_reset(fintek->rdev);
ir_raw_event_overflow(fintek->rdev);
break;
case SUBCMD:
fintek->rem = fintek_cmdsize(fintek->cmd, sample);
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/igorplugusb.c
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ static void igorplugusb_irdata(struct igorplugusb *ir, unsigned len)
if (overflow > 0) {
dev_warn(ir->dev, "receive overflow, at least %u lost",
overflow);
ir_raw_event_reset(ir->rc);
ir_raw_event_overflow(ir->rc);
}

do {
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/iguanair.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ static void process_ir_data(struct iguanair *ir, unsigned len)
break;
case CMD_RX_OVERFLOW:
dev_warn(ir->dev, "receive overflow\n");
ir_raw_event_reset(ir->rc);
ir_raw_event_overflow(ir->rc);
break;
default:
dev_warn(ir->dev, "control code %02x received\n",
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-hix5hd2.c
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ static irqreturn_t hix5hd2_ir_rx_interrupt(int irq, void *data)
* IR_INTS availably since logic would not clear
* fifo when overflow, drv do the job
*/
ir_raw_event_reset(priv->rdev);
ir_raw_event_overflow(priv->rdev);
symb_num = readl_relaxed(priv->base + IR_DATAH);
for (i = 0; i < symb_num; i++)
readl_relaxed(priv->base + IR_DATAL);
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-imon-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ static int ir_imon_decode(struct rc_dev *dev, struct ir_raw_event ev)
struct imon_dec *data = &dev->raw->imon;

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-jvc-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ static int ir_jvc_decode(struct rc_dev *dev, struct ir_raw_event ev)
struct jvc_dec *data = &dev->raw->jvc;

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-mce_kbd-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,7 @@ static int ir_mce_kbd_decode(struct rc_dev *dev, struct ir_raw_event ev)
struct lirc_scancode lsc = {};

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-nec-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ static int ir_nec_decode(struct rc_dev *dev, struct ir_raw_event ev)
u8 address, not_address, command, not_command;

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-rc5-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ static int ir_rc5_decode(struct rc_dev *dev, struct ir_raw_event ev)
enum rc_proto protocol;

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-rc6-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ static int ir_rc6_decode(struct rc_dev *dev, struct ir_raw_event ev)
enum rc_proto protocol;

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-rcmm-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ static int ir_rcmm_decode(struct rc_dev *dev, struct ir_raw_event ev)
return 0;

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
4 changes: 2 additions & 2 deletions drivers/media/rc/ir-sanyo-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ static int ir_sanyo_decode(struct rc_dev *dev, struct ir_raw_event ev)
u8 command, not_command;

if (!is_timing_event(ev)) {
if (ev.reset) {
dev_dbg(&dev->dev, "SANYO event reset received. reset to state 0\n");
if (ev.overflow) {
dev_dbg(&dev->dev, "SANYO event overflow received. reset to state 0\n");
data->state = STATE_INACTIVE;
}
return 0;
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-sharp-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ static int ir_sharp_decode(struct rc_dev *dev, struct ir_raw_event ev)
u32 msg, echo, address, command, scancode;

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-sony-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ static int ir_sony_decode(struct rc_dev *dev, struct ir_raw_event ev)
u8 device, subdevice, function;

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ir-xmp-decoder.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ static int ir_xmp_decode(struct rc_dev *dev, struct ir_raw_event ev)
struct xmp_dec *data = &dev->raw->xmp;

if (!is_timing_event(ev)) {
if (ev.reset)
if (ev.overflow)
data->state = STATE_INACTIVE;
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/ite-cir.c
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ static irqreturn_t ite_cir_isr(int irq, void *data)
/* Check for RX overflow */
if (iflags & ITE_IRQ_RX_FIFO_OVERRUN) {
dev_warn(&dev->rdev->dev, "receive overflow\n");
ir_raw_event_reset(dev->rdev);
ir_raw_event_overflow(dev->rdev);
}

/* check for the receive interrupt */
Expand Down
8 changes: 4 additions & 4 deletions drivers/media/rc/lirc_dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,17 +41,17 @@ void lirc_raw_event(struct rc_dev *dev, struct ir_raw_event ev)
struct lirc_fh *fh;
int sample;

/* Packet start */
if (ev.reset) {
/* Receiver overflow, data missing */
if (ev.overflow) {
/*
* Userspace expects a long space event before the start of
* the signal to use as a sync. This may be done with repeat
* packets and normal samples. But if a reset has been sent
* packets and normal samples. But if an overflow has been sent
* then we assume that a long time has passed, so we send a
* space with the maximum time value.
*/
sample = LIRC_SPACE(LIRC_VALUE_MASK);
dev_dbg(&dev->dev, "delivering reset sync space to lirc_dev\n");
dev_dbg(&dev->dev, "delivering overflow space to lirc_dev\n");

/* Carrier reports */
} else if (ev.carrier_report) {
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/nuvoton-cir.c
Original file line number Diff line number Diff line change
Expand Up @@ -742,7 +742,7 @@ static void nvt_handle_rx_fifo_overrun(struct nvt_dev *nvt)

nvt->pkts = 0;
nvt_clear_cir_fifo(nvt);
ir_raw_event_reset(nvt->rdev);
ir_raw_event_overflow(nvt->rdev);
}

/* copy data from hardware rx fifo into driver buffer */
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/rc-core-priv.h
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ static inline void decrease_duration(struct ir_raw_event *ev, unsigned duration)
/* Returns true if event is normal pulse/space event */
static inline bool is_timing_event(struct ir_raw_event ev)
{
return !ev.carrier_report && !ev.reset;
return !ev.carrier_report && !ev.overflow;
}

#define TO_STR(is_pulse) ((is_pulse) ? "pulse" : "space")
Expand Down
2 changes: 0 additions & 2 deletions drivers/media/rc/rc-ir-raw.c
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,6 @@ static int ir_raw_event_thread(void *data)
!is_transition(&ev, &raw->prev_ev))
dev_warn_once(&dev->dev, "two consecutive events of type %s",
TO_STR(ev.pulse));
if (raw->prev_ev.reset && ev.pulse == 0)
dev_warn_once(&dev->dev, "timing event after reset should be pulse");
}
list_for_each_entry(handler, &ir_raw_handler_list, list)
if (dev->enabled_protocols &
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/st_rc.c
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ static irqreturn_t st_rc_rx_interrupt(int irq, void *data)
int_status = readl(dev->rx_base + IRB_RX_INT_STATUS);
if (unlikely(int_status & IRB_RX_OVERRUN_INT)) {
/* discard the entire collection in case of errors! */
ir_raw_event_reset(dev->rdev);
ir_raw_event_overflow(dev->rdev);
dev_info(dev->dev, "IR RX overrun\n");
writel(IRB_RX_OVERRUN_INT,
dev->rx_base + IRB_RX_INT_CLEAR);
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/sunxi-cir.c
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ static irqreturn_t sunxi_ir_irq(int irqno, void *dev_id)
}

if (status & REG_RXSTA_ROI) {
ir_raw_event_reset(ir->rc);
ir_raw_event_overflow(ir->rc);
} else if (status & REG_RXSTA_RPE) {
ir_raw_event_set_idle(ir->rc, true);
ir_raw_event_handle(ir->rc);
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/rc/winbond-cir.c
Original file line number Diff line number Diff line change
Expand Up @@ -470,7 +470,7 @@ wbcir_irq_handler(int irqno, void *cookie)
/* RX overflow? (read clears bit) */
if (inb(data->sbase + WBCIR_REG_SP3_LSR) & WBCIR_RX_OVERRUN) {
data->rxstate = WBCIR_RXSTATE_ERROR;
ir_raw_event_reset(data->dev);
ir_raw_event_overflow(data->dev);
}

/* TX underflow? */
Expand Down
6 changes: 3 additions & 3 deletions include/media/rc-core.h
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,7 @@ struct ir_raw_event {
u8 duty_cycle;

unsigned pulse:1;
unsigned reset:1;
unsigned overflow:1;
unsigned timeout:1;
unsigned carrier_report:1;
};
Expand All @@ -325,9 +325,9 @@ int ir_raw_encode_scancode(enum rc_proto protocol, u32 scancode,
struct ir_raw_event *events, unsigned int max);
int ir_raw_encode_carrier(enum rc_proto protocol);

static inline void ir_raw_event_reset(struct rc_dev *dev)
static inline void ir_raw_event_overflow(struct rc_dev *dev)
{
ir_raw_event_store(dev, &((struct ir_raw_event) { .reset = true }));
ir_raw_event_store(dev, &((struct ir_raw_event) { .overflow = true }));
dev->idle = true;
ir_raw_event_handle(dev);
}
Expand Down

0 comments on commit 5b0115b

Please sign in to comment.