Re: [PATCH] [media] ir-spi: Fix issues with lirc API

From: Andi Shyti
Date: Mon Jun 12 2017 - 23:58:03 EST


Hi Anton,

On Sun, May 07, 2017 at 11:00:11AM +1000, Anton Blanchard wrote:
> From: Anton Blanchard <anton@xxxxxxxxx>
>
> The ir-spi driver has 2 issues which prevents it from working with
> lirc:
>
> 1. The ir-spi driver uses 16 bits of SPI data to create one cycle of
> the waveform. As such our SPI clock needs to be 16x faster than the
> carrier frequency.
>
> The driver is inconsistent in how it currently handles this. It
> initializes it to the carrier frequency:
>
> But the commit message has some example code which initialises it
> to 16x the carrier frequency:
>
> val = 608000;
> ret = ioctl(fd, LIRC_SET_SEND_CARRIER, &val);
>
> To maintain compatibility with lirc, always do the frequency adjustment
> in the driver.
>
> 2. lirc presents pulses in microseconds, but the ir-spi driver treats
> them as cycles of the carrier. Similar to other lirc drivers, do the
> conversion with DIV_ROUND_CLOSEST().
>
> Fixes: fe052da49201 ("[media] rc: add support for IR LEDs driven through SPI")
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Anton Blanchard <anton@xxxxxxxxx>

Thanks for fixing it.

Reviewed-by: Andi Shyti <andi.shyti@xxxxxxxxxxx>

Andi