ODROID-C5: ir: Add hardkernel remote control support

Signed-off-by: YoungSoo Shin <shinys000114@gmail.com>
Change-Id: Ieae7b81487a8c2bea5e1351913a3ee2358e91943
diff --git a/arch/arm64/boot/dts/amlogic/hardkernel_ir_map.dtsi b/arch/arm64/boot/dts/amlogic/hardkernel_ir_map.dtsi
new file mode 100644
index 0000000..ef895b5
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/hardkernel_ir_map.dtsi
@@ -0,0 +1,32 @@
+/ {
+	hk_ir_maps: hk_ir_maps {
+		map_num = <1>;
+		map0 = <&map_hk_rc>;
+
+		map_hk_rc: map_hk_rc{
+			mapname = "map_hk_rc";
+			customcode = <0x4DB2>;
+			release_delay = <80>;
+			size  = <12>;   /*keymap size*/
+			keymap = <REMOTE_KEY(0xDC, KEY_POWER)
+					REMOTE_KEY(0x88, KEY_MUTE)
+					REMOTE_KEY(0x82, KEY_HOME)
+					REMOTE_KEY(0xCE, KEY_ENTER)
+					REMOTE_KEY(0xCA, KEY_UP)
+					REMOTE_KEY(0x99, KEY_LEFT)
+					REMOTE_KEY(0xC1, KEY_RIGHT)
+					REMOTE_KEY(0xD2, KEY_DOWN)
+					REMOTE_KEY(0xC5, KEY_MENU)
+					REMOTE_KEY(0x9A, KEY_BACK)
+					REMOTE_KEY(0x81, KEY_VOLUMEDOWN)
+					REMOTE_KEY(0x80, KEY_VOLUMEUP)>;
+		};
+	};
+
+	hk_ir_wakeup_key: hk_ir_wakeup_key {
+		key_num = <1>;
+		/*framecode  wakeup_reason  report_event*/
+		wakeup_key = <0x23dc4db2 IR_NORMAL KEY_POWER
+					  >;
+	};
+};
\ No newline at end of file
diff --git a/arch/arm64/boot/dts/amlogic/overlays/odroidc5/Makefile b/arch/arm64/boot/dts/amlogic/overlays/odroidc5/Makefile
index 3c867e1..c368cb9 100644
--- a/arch/arm64/boot/dts/amlogic/overlays/odroidc5/Makefile
+++ b/arch/arm64/boot/dts/amlogic/overlays/odroidc5/Makefile
@@ -3,6 +3,7 @@
 dtb-y += dht11.dtbo \
          i2c0.dtbo \
          i2c1.dtbo \
+         ir.dtbo \
          mcp2515.dtbo \
          mcp2515_12mhz.dtbo \
          mcp2515_16mhz.dtbo \
diff --git a/arch/arm64/boot/dts/amlogic/overlays/odroidc5/ir.dts b/arch/arm64/boot/dts/amlogic/overlays/odroidc5/ir.dts
new file mode 100644
index 0000000..ad9c007
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/overlays/odroidc5/ir.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+	fragment@0 {
+		target = <&ir>;
+
+		__overlay__ {
+			status = "okay";
+		};
+	};
+};
\ No newline at end of file
diff --git a/arch/arm64/boot/dts/amlogic/s7d_s905x5m_odroidc5.dts b/arch/arm64/boot/dts/amlogic/s7d_s905x5m_odroidc5.dts
index ca86794..e721f2a 100644
--- a/arch/arm64/boot/dts/amlogic/s7d_s905x5m_odroidc5.dts
+++ b/arch/arm64/boot/dts/amlogic/s7d_s905x5m_odroidc5.dts
@@ -8,6 +8,7 @@
 #include "meson-s7d.dtsi"
 #include "mesons7d_drm.dtsi"
 #include "mesons7d_audio.dtsi"
+#include "hardkernel_ir_map.dtsi"
 
 /delete-node/ &internal_ephy;
 /delete-node/ &pcie;
@@ -980,9 +981,11 @@
 };
 
 &ir {
-	status = "okay";
+	status = "disabled";
 	pinctrl-0 = <&remote_pins>;
 	pinctrl-names = "default";
+	map = <&hk_ir_maps>;
+	wakeup_map = <&hk_ir_wakeup_key>;
 };
 
 &spicc0 {