Hi Nikolaos, On Wed, Mar 17, 2021 at 04:41:15PM +0200, Nikolaos Beredimas wrote: > Hi, > There was a thread on this list last September > https://www.spinics.net/lists/linux-media/msg177724.html > about the IR module on the ASUS PN50. > > Even though that discussion never fully resolved, > it did contain the solution to get the IR working on the PN50. > I have documented this at > https://forum.libreelec.tv/thread/23145-asus-pn50-challenge/?postID=152207#post152207 > > So, what I had to do is edit a single line of drivers/media/rc/ite-cir.h > and change IT8708_IOREG_LENGTH 0x08 to IT8708_IOREG_LENGTH 0x10 > and the IR module is now recognized and working > > How do I go about submitting this as a patch? > I am a little overwhelmed honestly. > Do I follow https://www.linuxtv.org/wiki/index.php/Development:_How_to_submit_patches > ? > And which git tree? Thanks for fixing this. The patch should be a diff against https://git.linuxtv.org/media_tree.git/ This is the guide for submitting patches: https://www.kernel.org/doc/html/latest/process/submitting-patches.html > > --- a/drivers/media/rc/ite-cir.h > +++ b/drivers/media/rc/ite-cir.h > @@ -406,7 +406,7 @@ > #define IT8708_C0WCR 0x06 /* wakeup code read/write register */ > #define IT8708_C0WPS 0x07 /* wakeup power control/status register */ > > -#define IT8708_IOREG_LENGTH 0x08 /* length of register file */ > +#define IT8708_IOREG_LENGTH 0x10 /* length of register file */ I don't think this is correct though. There are other devices that have length of 8; I think the correct solution. I think: if (!pnp_port_valid(pdev, io_rsrc_no) || pnp_port_len(pdev, io_rsrc_no) != dev_desc->io_region_size) { dev_err(&pdev->dev, "IR PNP Port not valid!\n"); goto exit_free_dev_rdev; } should be changed to: if (!pnp_port_valid(pdev, io_rsrc_no) || pnp_port_len(pdev, io_rsrc_no) < dev_desc->io_region_size) { dev_err(&pdev->dev, "IR PNP Port not valid!\n"); goto exit_free_dev_rdev; } Thanks > > /* two more registers that are defined in the hacked driver, but can't be > * found in the data sheets; no idea what they are or how they are accessed,