On 21/10/2016 10:31, Petr Štetiar wrote: > Daniel Dickinson <l...@cshore.thecshore.com> [2016-10-20 16:47:09]: > >> On Wed, 19 Oct 2016 22:05:43 +0200 >> Petr Štetiar <yn...@true.cz> wrote: >> >>> Felix Fietkau <n...@nbd.name> [2016-10-19 21:44:06]: >>> >>>> I'd like to know why you need to use local time for the RTC, I think >>>> that's rather uncommon. >>> >>> You mean system time in local time, right? RTC should be in UTC and >>> in current sysftime isn't. Basically sysfixtime should be using >>> hwclock with -u parameter from the same beginning as the kernel >>> doesn't expect time in RTC to be in other timezone. >>> >>> Believe it or not, I've some users which are used to have system time >>> on their desktop Linux machines in local timezone and they expect the >>> same from the Linux on embedded devices. It's hard, I know :-) >> >> Have you ever looked at UCI config for /etc/config/system? There is >> the option to set the system timezone there. No need to hack hwclock. > > I know, that I can't write meaningful commit messages, sorry for that. I'll > try to explain it again. > > Please take a look at hwclock, you've to tell it via -u command line option, > that your RTC is keeping time in UTC, otherwise it will happily use whatever > time your system uses and your time is screwed (no time conversion happens). > > I've following in the setup script: > > uci set system.@system[0].timezone='CET-1CEST,M3.5.0,M10.5.0/3' > uci set system.@system[0].zonename='Europe/Prague' > > I've this RTC setup: > > rtc-ds1307 3-006f: rtc core: registered mcp7941x as rtc0 > snvs_rtc 20cc000.snvs:snvs-rtc-lp: rtc core: registered 20cc000.snvs:snvs-r > as rtc1 > > Then you can experience following (current time is 10:15am): > > $ date > Fri Oct 21 10:15:07 CEST 2016 > > $ hwclock -r -f /dev/rtc0 > Fri Oct 21 08:14:46 2016 0.000000 seconds > > $ hwclock -u -r -f /dev/rtc0 > Fri Oct 21 10:14:46 2016 0.000000 seconds > > And after current borken sysfixtime: > > $ /etc/init.d/sysfixtime stop > > $ date > Fri Oct 21 10:15:25 CEST 2016 > > $ hwclock -r -f /dev/rtc0 > Fri Oct 21 10:15:31 2016 0.000000 seconds > > Now you've time in your battery backed RTC in CEST timezone instead of UTC. Is > the problem more clear now? > > Again, wbut ith my patched sysfixtime, using hwclock -u parameter: > > $ /etc/init.d/sysfixtime stop > > $ date > Fri Oct 21 10:15:53 CEST 2016 > > $ hwclock -r -f /dev/rtc0 > Fri Oct 21 08:15:55 2016 0.000000 seconds > > -- ynezz >
patch looks good to me. please however make a change + 'rtc_utc:bool:0' replace with + 'rtc_utc:bool:1' this will make the clock UTC by default John > _______________________________________________ > Lede-dev mailing list > Lede-dev@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/lede-dev > _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev