[June 19] Armbian (5.42) ROCK64 | [June 19] Armbian (5.38) PINE A64(+) / PINE A64-LTS / SOPINE | [June 19] motionEyeOS (20180224) PINE A64(+) | [June 19] Armbian (5.46) Pinebook | [June 06] Bionic LXDE (0.6.44-239) ROCK64 | Bionic Minimal (0.6.44-239) ROCK64 | [June 06] Debian Stretch Minimal (0.6.44-239) ROCK64 | [June 06] Jessie OpenMediaVault (0.6.44-239) ROCK64 | [May 21] Slackware (20180508) ROCK64

Project Inspiration | Get Started | IRC Logs | Forum Rules/Policy


Onboard IR receiver
#1
Hi!

I'm unable to find any info about how to start using the onboard IR receiver on the Rock64 on linux.

Can you point me to some info on this subject?
Reply
#2
Bump!

I don't need a detailed tutorial, but giving me a GPIO pin to which the IR receiver is connected or where do I put a dt_overlay setting, or something of this sort which gives me a direction would be welcome.
Reply
#3
The device tree node below should enable the IR receiver.

Code:
ir-receiver {
    compatible = "gpio-ir-receiver";
    gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
    linux,rc-map-name = "rc-pine64";
    pinctrl-0 = <&ir_int>;
    pinctrl-names = "default";
    status = "okay";
};
See https://github.com/Kwiboo/linux-rockchip...#L108-L115
Reply
#4
Thanks a lot!

I failed multiple times using only the info you gave me and what I gathered from around the internet about device trees. Still, I learned that by using dtc to output the default dtb in dts format and using the latest debian stretch from ayufan (stretch-minimal-rock64-0.6.23-189-arm64.img), there actually is an ir-receiver:

Code:
       ir-receiver {
               compatible = "gpio-ir-receiver";
               pinctrl-0 = <0x8b>;
               pinctrl-names = "default";
               status = "okay";
       };

So my question is - how do I add the missing node properties without using variables? I know hardcoding values is bad style, but I think this would be the easiest approach for me. In other words, how do I manually convert for example:

Code:
<&gpio2 RK_PA2 GPIO_ACTIVE_LOW>

Into a value like:

Code:
<0x8b>

My idea is to do that for all the missing/differing properties:

Code:
   gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_LOW>;
   linux,rc-map-name = "rc-pine64";
   pinctrl-0 = <&ir_int>;

And then to compile the patched dts into dtb and overwrite the current dtb.

I'm lost in the sources in your github, I obviously don't understand enough (or, well, anything) about device trees, etc. so I will once again be very thankful for any help and direction.
Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
  Onboard LEDs connected to the RK805-1 out1 and out2 GPIO pins prof7bit 8 209 03-03-2018, 02:58 PM
Last Post: prof7bit

Forum Jump:


Users browsing this thread: 1 Guest(s)