]>
Commit | Line | Data |
---|---|---|
73d9a908 | 1 | #!/bin/sh |
66c36198 PM |
2 | ############################################################################### |
3 | # # | |
4 | # IPFire.org - A linux based firewall # | |
5 | # Copyright (C) 2007-2022 IPFire Team <info@ipfire.org> # | |
6 | # # | |
7 | # This program is free software: you can redistribute it and/or modify # | |
8 | # it under the terms of the GNU General Public License as published by # | |
9 | # the Free Software Foundation, either version 3 of the License, or # | |
10 | # (at your option) any later version. # | |
11 | # # | |
12 | # This program is distributed in the hope that it will be useful, # | |
13 | # but WITHOUT ANY WARRANTY; without even the implied warranty of # | |
14 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # | |
15 | # GNU General Public License for more details. # | |
16 | # # | |
17 | # You should have received a copy of the GNU General Public License # | |
18 | # along with this program. If not, see <http://www.gnu.org/licenses/>. # | |
19 | # # | |
20 | ############################################################################### | |
73d9a908 MT |
21 | |
22 | . /etc/sysconfig/rc | |
23 | . ${rc_functions} | |
73d9a908 MT |
24 | |
25 | CLOCKPARAMS= | |
26 | ||
73d9a908 MT |
27 | case ${1} in |
28 | start) | |
1313b031 | 29 | |
73d9a908 | 30 | boot_mesg "Setting system clock..." |
1313b031 | 31 | |
9745a212 MM |
32 | FDT_COMPAT_FILE="/sys/firmware/devicetree/base/compatible" |
33 | # RTC may not be automatically loaded on some | |
34 | # non-x86 machines | |
35 | if [ -f "${FDT_COMPAT_FILE}" ] && \ | |
36 | ( grep -q "traverse,ten64" "${FDT_COMPAT_FILE}" ); then | |
37 | modprobe rtc-rx8025 | |
38 | fi | |
39 | ||
1313b031 AF |
40 | # udev not create the rtc symlink if rtc is in the kernel |
41 | if [ ! -e /dev/rtc ]; then | |
5292c03d AF |
42 | if [ -e /dev/rtc0 ]; then |
43 | ln -s rtc0 /dev/rtc | |
44 | fi | |
1313b031 AF |
45 | fi |
46 | ||
73d9a908 | 47 | hwclock --hctosys ${CLOCKPARAMS} &>/dev/null |
0807ce69 AF |
48 | date |
49 | ||
f824cd28 | 50 | if [ -e /var/log/messages ]; then |
0807ce69 AF |
51 | LOGTIMESTAMP=`stat --format "%y" /var/log/messages` |
52 | LOGTIME=`date +%s -d "$LOGTIMESTAMP"` | |
53 | SYSTIME=`date +%s` | |
54 | if [ $SYSTIME -lt $LOGTIME ]; then | |
55 | boot_mesg "Warning! clock runs later than last log access. Check battery/rtc!" | |
56 | date -s "$LOGTIMESTAMP" | |
57 | echo_warning; | |
58 | else | |
59 | echo_ok; | |
5292c03d AF |
60 | fi |
61 | fi | |
73d9a908 MT |
62 | ;; |
63 | ||
64 | stop) | |
65 | boot_mesg "Setting hardware clock..." | |
66 | hwclock --systohc ${CLOCKPARAMS} &>/dev/null | |
67 | evaluate_retval | |
68 | ;; | |
69 | ||
70 | *) | |
0721f5a6 | 71 | echo "Usage: ${0} {start} {stop}" |
73d9a908 MT |
72 | ;; |
73 | ||
74 | esac |