Hi,
I need to patch the ati_remote module in order to use my ATI remote wonder plus ( or III as you wish ). 
I made a patch : 
 
Diff
		
					
				diff U3 /tmp/test/ati_remote.c /tmp/test/ati_remote_plus.c
--- /tmp/test/ati_remote.c Fri Dec 16 09:48:13 2016
+++ /tmp/test/ati_remote_plus.c Fri Dec 16 09:48:02 2016
@@ -240,8 +240,10 @@
 #define SEND_FLAG_COMPLETE 2
 
 /* Device initialization strings */
-static char init1[] = { 0x01, 0x00, 0x20, 0x14 };
-static char init2[] = { 0x01, 0x00, 0x20, 0x14, 0x20, 0x20, 0x20 };
+static char init1[] = { 0x80, 0x05, 0x1b, 0x15, 0x14, 0x20, 0x24, 0x15 };
+static char init2[] = { 0x83, 0x03 };
+static char init3[] = { 0x84, 0xd7, 0x020 };
+
 
 struct ati_remote {
  struct input_dev *idev;
@@ -507,7 +509,7 @@
  */
 
  /* Deal with strange looking inputs */
- if ( (urb->actual_length != 4) || (data[0] != 0x14) ||
+ if ( (urb->actual_length != 4) || (data[0] != 0x14 && data[0] != 0x15) ||
  ((data[3] & 0x0f) != 0x00) ) {
  ati_remote_dump(&urb->dev->dev, data, urb->actual_length);
  return;
@@ -827,8 +829,9 @@
  ati_remote->out_urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;
 
  /* send initialization strings */
- if ((ati_remote_sendpacket(ati_remote, 0x8004, init1)) ||
-    (ati_remote_sendpacket(ati_remote, 0x8007, init2))) {
+ if ((ati_remote_sendpacket(ati_remote, 0x8008, init1)) ||
+    (ati_remote_sendpacket(ati_remote, 0x8002, init2)) ||
+    (ati_remote_sendpacket(ati_remote, 0x8003, init3))) {
  dev_err(&ati_remote->interface->dev,
  "Initializing ati_remote hardware failed.\n");
  return -EIO;I don't know how to use it with you cross-build system. 
The ati_remote.c file is present in many place :
build.LibreELEC-S905.aarch64-7.0.3.010/linux-fb23764/drivers/media/rc/ati_remote.c
build.LibreELEC-S905.aarch64-7.0.3.010/media_build-526f51c/linux/drivers/media/rc/ati_remote.c
build.LibreELEC-S905.aarch64-7.0.3.010/qca9377-aml-8b729b7/AIO/drivers/backports/drivers/media/rc/ati_remote.c
Someone can help me to patch this module ?
 
		