diff options
author | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2019-12-14 02:40:33 +0100 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2019-12-14 02:43:47 +0100 |
commit | d412114c0cf132a77f3b3482c5440b1a1c961b77 (patch) | |
tree | c1bf535331d0332dea4171d38f2b026efab99000 /recipes-core/udev/demo-i2c-udev-conf/99-agl-led-rtc.rules | |
parent | 2bedc9120bc9cd4a9b06fddffa33216870d9a8f9 (diff) |
Add udev rules and scripts for demo platform configurationicefish_8.99.3icefish/8.99.38.99.3
Add recipes for udev rules and associated scripts
1) Support USB attached I2C devices for RTC and HVAC LED support.
The RTC support loads and configures the required rtc-ds1307
driver, and sets the time from the RTC clock. The HVAC LED
support configures the LED device names for use by the HVAC
binding.
The new demo-i2c-udev-conf recipe is
added to DEMO_PLATFORM_CONF variable in packagegroup-agl-demo-platform
to have them added to the agl-demo-platform image. Since they use
udev rules to detect the corresponding hardware, this should be safe
for all platforms.
Change-Id: Id08571b43c7ae9275496980e0a5568e145a1f653
Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Diffstat (limited to 'recipes-core/udev/demo-i2c-udev-conf/99-agl-led-rtc.rules')
-rw-r--r-- | recipes-core/udev/demo-i2c-udev-conf/99-agl-led-rtc.rules | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/recipes-core/udev/demo-i2c-udev-conf/99-agl-led-rtc.rules b/recipes-core/udev/demo-i2c-udev-conf/99-agl-led-rtc.rules new file mode 100644 index 000000000..34fa06784 --- /dev/null +++ b/recipes-core/udev/demo-i2c-udev-conf/99-agl-led-rtc.rules @@ -0,0 +1,20 @@ +# skip instantiation of rtc in this processing +ACTION=="add", SUBSYSTEM=="i2c", DRIVER=="rtc-ds1307", GOTO="hwclock_end" + +# load the required drivers (if not already present) - your job to make sure they are there ! +ACTION=="add", ENV{DEVTYPE}=="usb_interface", ENV{DRIVER}=="i2c-tiny-usb", RUN+="/usr/bin/logger 'Loading leds-blinkm'", RUN+="/sbin/modprobe leds-blinkm" +ACTION=="add", ENV{DEVTYPE}=="usb_interface", ENV{DRIVER}=="i2c-tiny-usb", RUN+="/usr/bin/logger 'Loading rtc driver'", RUN+="/sbin/modprobe rtc-ds1307" + +# %k is the blinkm i2c device e.g. 6-0009 +ACTION=="add", ENV{DRIVER}=="blinkm", SUBSYSTEM=="i2c", RUN+="/usr/bin/logger 'the blinkm device is %k'", TAG+="systemd", ENV{SYSTEMD_WANTS}="hvac-json-in-rewrite@%k.service", GOTO="very_end" +# FIXME: We do not exclude the blinkm on the next lines, yet. The rule is too broad, but that is all we know already. Above is actually later in time. +# For now this is not critical as the rtc init will just fail and we're done. + +# %k is the i2c bus e.g. i2c-6 +ACTION=="add", SUBSYSTEM=="i2c", ATTRS{idProduct}=="c631", TAG+="systemd", ENV{SYSTEMD_WANTS}="rtc-i2c-attach@%k.service" + +# GOTO EXIT +LABEL="hwclock_end" +ACTION=="add", SUBSYSTEM=="rtc", RUN+="/bin/sleep 1", RUN+="/sbin/hwclock -f /dev/%k --hctosys --utc", TAG+="systemd" + +LABEL="very_end" |