hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/drivers/media/common/siano/smsir.c
....@@ -26,10 +26,10 @@
2626 const s32 *samples = (const void *)buf;
2727
2828 for (i = 0; i < len >> 2; i++) {
29
- DEFINE_IR_RAW_EVENT(ev);
30
-
31
- ev.duration = abs(samples[i]) * 1000; /* Convert to ns */
32
- ev.pulse = (samples[i] > 0) ? false : true;
29
+ struct ir_raw_event ev = {
30
+ .duration = abs(samples[i]),
31
+ .pulse = (samples[i] > 0) ? false : true
32
+ };
3333
3434 ir_raw_event_store(coredev->ir.dev, &ev);
3535 }
....@@ -48,14 +48,14 @@
4848 return -ENOMEM;
4949
5050 coredev->ir.controller = 0; /* Todo: vega/nova SPI number */
51
- coredev->ir.timeout = IR_DEFAULT_TIMEOUT;
51
+ coredev->ir.timeout = US_TO_NS(IR_DEFAULT_TIMEOUT);
5252 pr_debug("IR port %d, timeout %d ms\n",
5353 coredev->ir.controller, coredev->ir.timeout);
5454
5555 snprintf(coredev->ir.name, sizeof(coredev->ir.name),
5656 "SMS IR (%s)", sms_get_board(board_id)->name);
5757
58
- strlcpy(coredev->ir.phys, coredev->devpath, sizeof(coredev->ir.phys));
58
+ strscpy(coredev->ir.phys, coredev->devpath, sizeof(coredev->ir.phys));
5959 strlcat(coredev->ir.phys, "/ir0", sizeof(coredev->ir.phys));
6060
6161 dev->device_name = coredev->ir.name;