do not create /dev/rtc symlink, let systemd search for it if needed

The export of the RTCs hctosys flag is uneccesary, the kernel takes care
of the persistemt clock management itself, without any need for:
  CONFIG_RTC_HCTOSYS=y
  CONFIG_RTC_HCTOSYS_DEVICE="rtc0"

"Chaotic hardware platforms" without native kernel persistent clock
support will find the proper RTC with the logic rtc_open() without
the need for a custom symlink.
This commit is contained in:
Kay Sievers 2013-04-24 19:12:44 +02:00
parent 83cb95b530
commit 2b3c81b02f
2 changed files with 8 additions and 12 deletions

View file

@ -1,6 +1,5 @@
# do not edit this file, it will be overwritten on update
SUBSYSTEM=="rtc", ATTR{hctosys}=="1", SYMLINK+="rtc"
SUBSYSTEM=="virtio-ports", KERNEL=="vport*", ATTR{name}=="?*", SYMLINK+="virtio-ports/$attr{name}"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", IMPORT{builtin}="usb_id", IMPORT{builtin}="hwdb --subsystem=usb"
@ -15,8 +14,6 @@ SUBSYSTEM=="tty", KERNEL=="tty[0-9]*", GROUP="tty", MODE="0620"
SUBSYSTEM=="vc", KERNEL=="vcs*|vcsa*", GROUP="tty"
KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"
SUBSYSTEM=="rtc", ATTR{hctosys}=="1", MODE="0644"
SUBSYSTEM=="mem", KERNEL=="mem|kmem|port", GROUP="kmem", MODE="0640"
SUBSYSTEM=="input", KERNEL=="mouse*|mice|event*", MODE="0640"

View file

@ -47,15 +47,14 @@ static int rtc_open(int flags) {
int fd;
DIR *d;
/* First, we try to make use of the /dev/rtc symlink. If that
* doesn't exist, we open the first RTC which has hctosys=1
* set. If we don't find any we just take the first RTC that
* exists at all. */
fd = open("/dev/rtc", flags);
if (fd >= 0)
return fd;
/*
* Some "chaotic platforms" have multiple RTCs and we need to
* find the "system RTC", which is in some setups /dev/rtc1.
*
* First, we try to find the RTC which has hctosys=1 set. If we
* don't find any we just take the first RTC that exists at all,
* then try to open /dev/rtc0.
*/
d = opendir("/sys/class/rtc");
if (!d)
goto fallback;