NVRAM-WakeUp Revision History
$Id: HISTORY 926 2010-01-24 11:53:49Z tiber $
+ denotes a new feature
* denotes a bugfix/some change
- denotes a removed feature
2010-01-24: Version 1.1
* Some minor documentation tweaks
(Closes http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=484929)
* Check if ~/guess-nvram-module exists, before running guess in
guess-helper
(Closes http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=484929)
+ Added new boards
- Gigabyte G31M-S2L
(http://sourceforge.net/tracker/index.php?func=detail&aid=2810386&group_id=35022&atid=412959)
- ASRock G31DE - ID: 2799023
(http://sourceforge.net/tracker/?func=detail&aid=2799023&group_id=35022&atid=412959)
- GA-E7AUM-DS2H
(http://sourceforge.net/tracker/?func=detail&aid=2794688&group_id=35022&atid=412959)
- Gigabyte EX58-UD5
(http://sourceforge.net/tracker/?func=detail&aid=2834010&group_id=35022&atid=412959)
- ASRock P45TS
(http://sourceforge.net/tracker/?func=detail&aid=2826826&group_id=35022&atid=412959)
- Leadtek WinFast nVidia CR18D/G
(http://sourceforge.net/tracker/?func=detail&aid=2824513&group_id=35022&atid=412959)
- ASUS P4P800-E Deluxe rv. 1009
(http://sourceforge.net/tracker/?func=detail&aid=2816578&group_id=35022&atid=412959)
- Commell LV-676
(http://sourceforge.net/tracker/?func=detail&aid=2881988&group_id=35022&atid=412959)
- MSI G31 M3-F
(http://sourceforge.net/tracker/?func=detail&aid=2847240&group_id=35022&atid=412959)
- ASRock N68-S
(http://sourceforge.net/tracker/?func=detail&aid=2846328&group_id=35022&atid=412959)
- ASRock K7VT4APro
(http://sourceforge.net/tracker/?func=detail&aid=2834322&group_id=35022&atid=412959)
- ASRock N68-S, Bios Version P2.00
(http://sourceforge.net/tracker/?func=detail&aid=2921130&group_id=35022&atid=412959)
- ASUSTeK Computer INC. P5QC
(http://sourceforge.net/tracker/?func=detail&aid=2920376&group_id=35022&atid=412959)
- Shuttle Inc FN78S V10
(http://sourceforge.net/tracker/?func=detail&aid=2910300&group_id=35022&atid=412959)
- ASRock G41M-GS
(http://sourceforge.net/tracker/?func=detail&aid=2907630&group_id=35022&atid=412959)
- VIA KM400-8237
(http://sourceforge.net/tracker/?func=detail&aid=2921850&group_id=35022&atid=412959)
- ASUS P5LD2 Deluxe
(http://sourceforge.net/tracker/?func=detail&aid=2923487&group_id=35022&atid=412959)
- Biostar M7VIG-PRO (ok, no reboot needed)
(http://sourceforge.net/tracker/?func=detail&aid=2924202&group_id=35022&atid=412959)
2008-11-23: Version 1.0
* Fixed a 1-byte buffer overflow in xxd()
Patch provided by Kees Cook <kees@ubuntu.com>
(Closes: http://sourceforge.net/tracker/?func=detail&aid=2782757&group_id=35022&atid=412755)
(Closes: http://bugs.edge.launchpad.net/bugs/370261)
(Closes: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=529074)
+ Added new boards
- Shuttle FN45 (Shuttle XPC SN45G Barebone)
(http://sourceforge.net/tracker/?func=detail&aid=2725339&group_id=35022&atid=412959)
- Asus M3A78-EM
(http://sourceforge.net/tracker/?func=detail&aid=2689458&group_id=35022&atid=412959)
- ASUS M2N-SLI DELUXE
(https://sourceforge.net/tracker/?func=detail&aid=2686287&group_id=35022&atid=412959)
- Gigabyte GA-M68SM-S2L
(http://sourceforge.net/tracker/?func=detail&aid=2635404&group_id=35022&atid=412959)
(http://sourceforge.net/tracker/?func=detail&aid=2635295&group_id=35022&atid=412959)
- MSI K8MM3-V (MS-7181)
(http://sourceforge.net/tracker/index.php?func=detail&aid=2635366&group_id=35022&atid=412959)
- AOpen i855GMEm-LFS
(http://sourceforge.net/tracker/?func=detail&aid=2568568&group_id=35022&atid=412959)
- Gigabyte EG45M-DS2H
(http://sourceforge.net/tracker/?func=detail&aid=2564249&group_id=35022&atid=412959)
- ASRock P43R1600Twins-WiFi P1.90
(http://sourceforge.net/tracker/?func=detail&aid=2482357&group_id=35022&atid=412959)
- HP Vectra VL420 A06, A08
(https://sourceforge.net/tracker/?func=detail&aid=1728527&group_id=35022&atid=412959)
2008-11-23: Version 0.99 (beta)
* Dropped -march=i686 CFLAG, so that nvram-wakeup compiles on AMD64 out of
the box
* Use boards.yaml to manage all board configurations and just generate the
C code formerly used in nvram-wakeup-mb.c from this file
+ Added new boards:
- Dell OptiPlex GX260 as provided by Petter Reinholdtsen
(http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=484680)
- MSI MS-6734 09/03/2004
(http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=433929)
- Micro Star MS-7125
(http://sourceforge.net/tracker/index.php?func=detail&aid=1564608&group_id=35022&atid=412959)
- Gigabyte GA-M55PLUS-S3G
(http://sourceforge.net/tracker/index.php?func=detail&aid=1591669&group_id=35022&atid=412959)
- AOpen EA65-II
(http://sourceforge.net/tracker/index.php?func=detail&aid=1604006&group_id=35022&atid=412959)
- ASUS A8N-VM CSM (config file only - no autodetect due to duplicate DMI entries!)
(http://sourceforge.net/tracker/index.php?func=detail&aid=1539163&group_id=35022&atid=412959)
- ASUS A8N-E 2.XX
(http://sourceforge.net/tracker/index.php?func=detail&aid=1604940&group_id=35022&atid=412959)
- Micro Star MS-7204
(http://sourceforge.net/tracker/index.php?func=detail&aid=1628899&group_id=35022&atid=412959)
- ASRock ALiveNF7G-FullHD
(http://sourceforge.net/tracker/index.php?func=detail&aid=2043063&group_id=35022&atid=412959)
- Gigabyte GA-K8NF9
(http://sourceforge.net/tracker/index.php?func=detail&aid=1982502&group_id=35022&atid=412959)
- PCChips m748lmrt
(http://sourceforge.net/tracker/index.php?func=detail&aid=1913268&group_id=35022&atid=412959)
- Gigabyte P35-DS3
(http://sourceforge.net/tracker/index.php?func=detail&aid=1911833&group_id=35022&atid=412959)
- Asrock 4Core1333-eSATA2 BIOS P1.30
(http://sourceforge.net/tracker/index.php?func=detail&aid=1900791&group_id=35022&atid=412959)
- AOpen i945GMt-FSA
(http://sourceforge.net/tracker/index.php?func=detail&aid=1875412&group_id=35022&atid=412959)
- Asrock AM2NF3-VSTA P2.30
(http://sourceforge.net/tracker/index.php?func=detail&aid=1848862&group_id=35022&atid=412959)
- MICRO-STAR MS-6728
(http://sourceforge.net/tracker/index.php?func=detail&aid=1821547&group_id=35022&atid=412959)
- AsRock ConRoeXFire-eSATA2
(http://sourceforge.net/tracker/index.php?func=detail&aid=1805113&group_id=35022&atid=412959)
- AsRock AM2NF3-VSTA P2.00
(http://sourceforge.net/tracker/index.php?func=detail&aid=1804477&group_id=35022&atid=412959)
- MSI K8N Neo4-F MS7125
(http://sourceforge.net/tracker/index.php?func=detail&aid=1782399&group_id=35022&atid=412959)
- DFI NF4 Lanparty Ultra-D
(http://sourceforge.net/tracker/index.php?func=detail&aid=1782397&group_id=35022&atid=412959)
- Asrock 775Dual-VSTA with BIOS versions 2.10 and 2.90
(http://sourceforge.net/tracker/index.php?func=detail&aid=1765755&group_id=35022&atid=412959)
- DFI Infinity Ultra-U
(http://sourceforge.net/tracker/index.php?func=detail&aid=1682947&group_id=35022&atid=412959)
- ECS M830LR
(http://sourceforge.net/tracker/index.php?func=detail&aid=1766813&group_id=35022&atid=412959)
- HP Vectra VL420
(http://sourceforge.net/tracker/index.php?func=detail&aid=1728527&group_id=35022&atid=412959)
- Asrock 4CoreDual-VSTA
(http://sourceforge.net/tracker/index.php?func=detail&aid=1721485&group_id=35022&atid=412959)
- Gigabyte 8I945GZME-RH
(http://sourceforge.net/tracker/index.php?func=detail&aid=1666781&group_id=35022&atid=412959)
- FX43G with 03/17/2005 BIOS update
(http://sourceforge.net/tracker/index.php?func=detail&aid=1664911&group_id=35022&atid=412959)
- ASUS P5LD2
(http://sourceforge.net/tracker/index.php?func=detail&aid=1640421&group_id=35022&atid=412959)
- K7NF2-RAID (L1.12 and P1.30)
(http://sourceforge.net/tracker/index.php?func=detail&aid=1634632&group_id=35022&atid=412959)
(http://www.vdr-portal.de/board/thread.php?postid=466399#post466399)
- ASUS P5PE-VM
(http://sourceforge.net/tracker/index.php?func=detail&aid=1634627&group_id=35022&atid=412959)
- Shuttle XPC SB83G5M
(http://sourceforge.net/tracker/index.php?func=detail&aid=1534740&group_id=35022&atid=412756)
- ASRock AM2NF3-VSTA Bios P2.40
(http://sourceforge.net/tracker/index.php?func=detail&aid=1886735&group_id=35022&atid=412959)
- Gigabyte M61P-S3
(http://sourceforge.net/tracker/index.php?func=detail&aid=2253979&group_id=35022&atid=412959)
- ASROCK K8NF4G-SATA2 v1.00 / BIOS v P1.70
(http://sourceforge.net/tracker/index.php?func=detail&aid=2124432&group_id=35022&atid=412755)
+ Added option -n / --nocheck to disable checking if the time is at least 10
minutes in the future. This option maybe especially useful, when testing
nvram-wakeup. Suggested by Holger Kubiak - closes (http://sourceforge.net/tracker/index.php?func=detail&aid=1502552&group_id=35022&atid=412757)
+ Added option -w to allow to configure the wake up ahead time span via the
command line
* Dropped debian/ dir (Please use the Debian sources instead!)
2005-??-??: Version 0.98 (beta)
+ Added several new mainboards. See CVS logs for details and credits.
Thanks to everyone who sent me his/her board configuration.
+ Small change in guess-helper: Step4-file (01.00.00.00-) will not be
overwritten, when guess-helper is called again after the last step.
2004-07-21: Version 0.97 (beta)
+ Added support for upper nvram on boards with VIA's VT8233 south bridges.
+ Added two new configuration file options: chk_method and day_no_bcd
(see 'man nvram-wakeup.conf' for more information)
+ Added man pages for all helper programs and scripts.
* Renamed guess-helper.sh to guess-helper.
* Fixed a minor bug in the time helper command.
+ Added several new mainboards. See CVS logs for details and credits.
Thanks to everyone who sent me his/her board configuration.
2004-05-22: Version 0.96 (beta)
+ Added support for upper nvram on boards with VIA's VT8235/37 south bridges.
+ Added support for upper nvram on boards with nVidia nForce2 chipset.
+ Added support for upper nvram on boards with ATI RADEON 9100 IGP (=RS300) chipset.
+ Added several new mainboards. See CVS logs for details and credits.
Thanks to everyone who sent me his/her board configuration.
+ Added a few more examples to be used by hand in the man page.
2004-04-06: Version 0.95a (beta)
* two small bugs in guess and guess-helper were fixed.
+ Added several new mainboards. See CVS logs for details and credits.
Thanks to everyone who sent me his/her board configuration.
2004-02-29: Version 0.95 (beta) "Feb 29th - release"
* IMPORTANT: the various _date fields changed to _day. _date configuration
options are accepted but will be removed in one of the next versions.
* IMPORTANT: need_reboot=ALWAYS was changed to need_reboot=ON_ANY_CHANGE since
it produced some confusion on the meaning. The value ALWAYS is still accepted
but will be removed in one of the next versions.
+ Added a new option --directisa. This is an alternative for using /dev/nvram
See man page for more information.
+ Added support for upper nvram on boards with Intel's ICH* south bridges,
VIA's VT82C686A, VT82C686B, VT82C596 and south bridges with Dallas
Semiconductor's DS1685/1687.
+ Added a LOT of new mainboards and updated/added a LOT of new autodetection strings.
See CVS logs for details and credits.
Thanks to everyone who sent me his/her board configuration.
+ Added guess-helper script (by Tobias Grimm), see README.mb for more details.
2003-08-07: Version 0.91 (beta)
* IMPORTANT: the option --iwstring is now called --iwname.
* Changed `guess' to produce output in configuration file format.
+ Added a LOT of new mainboards and updated/added a LOT of new autodetection strings.
See CVS logs for details and credits.
Thanks to everyone who sent me his/her board configuration.
* Updated man pages, preventing triggering a bug in troff 1.17.2
+ Added some debug output here and there
* The vdrshutdown script now supports checks for non-shotdown-conditions like
- users are logged in
- some process (like movie conversion) is running
- whatever else.
This conditions are freely configurable. look into the script vdrshutdown for more info.
* the reboot images and patches are moved to a separate "package" -- just a tar file
2003-03-04: Version 0.90 (beta) "Birthday release"
+ Added support for configuration files. (option -C|--configfile)
+ Added a manual page for the configuration file.
+ Added support for mainboard autodetection
(contributed by Bernhard "Bero" Rosenkraenzer <bero@arklinux.org>)
this feature uses code from the dmidecode program (https://savannah.nongnu.org/projects/dmidecode/)
- got rid of ACTUALLY_WRITE
+ now write by default. A new option (-N/--nowrite) emulates the old ACTUALLY_WRITE=OFF
behaviour.
2003-03-04: Version 0.05 (stable) "Birthday release"
+ Added several new mainboards. See nvram-wakeup-mb.h for details and credits.
Thanks to everyone who sent me his/her board configuration.
2002-04-14: Version 0.04b (beta)
+ Added several new mainboards. See nvram-wakeup-mb.h for details and credits.
Thanks to everyone who sent me his/her board configuration.
+ Added a new configuration option ADDR_WDAYS to nvram-wakeup-mb.h.
It seems that there are boards storing the weekday instead of a date.
* Now really fixed the problem with the daylight savings.
(I should have read ftp://ftp.gnu.org/pub/gnu/Manuals/glibc/pdf/libc.pdf
earlier)
2002-04-03: Version 0.04a (beta)
* Fixed the problem with the daylight savings.
* Some mainboard updates. See nvram-wakeup-mb.h for details and credits.
Thanks to everyone who sent me his/her board configuration.
2002-03-24: Version 0.04 (beta)
* IMPORTANT: It turned out that not only the MSI boards need to be rebooted
after making a change, but also some other boards in special cases. Therefore
the exit states are changed. Now we have:
0 - successful, everything is set properly. don't need to reboot.
1 - successful, everything is set properly. must reboot the changes to take effect.
2 - error occurred. something went wrong.
the script vdrshutdown is changed accordingly, but if you're using your own script,
you have to look at it.
* Completely rewritten many parts of the main program.
+ We can handle the case now where more than one information (e.g. date
and status) is stored in the same byte at different bits.
+ Started using debug mode for printing debug messages.
* Added/Removed/Changed several options in nvram-wakeup-mb.h and added a more
detailed documentation of them at the beginning of the file.
(See into nvram-wakeup-mb.h for more information.)
+ Added some more intelligence to `guess'.
(still consider `guess' alpha quality)
+ Added a new rule `devices' to Makefile.
It creates /dev/nvram and /dev/rtc if they are missing.
+ Print rtc time before setting it. (was just forgotten in ver. 0.03)
+ Added several new mainboards. See nvram-wakeup-mb.h for details and credits.
Thanks to everyone who sent me his/her board configuration.
+ Added support for storing month.
(only for the boards with a BIOS which supports it)
* Replaced RUN_BEFORE by NEED_TO_SHTDWN, which has a slightly different
meaning (see README or nvram-wakeup.h for more details).
+ Added a new rule to Makefile: install.
(The user has to adjust paths in Makefile before installing)
* /dev/nvram and /dev/rtc are never opened at the same time now,
(this prevented some machines from halting by `halt -p')
Thanks to Dr. Werner Fink <werner@suse.de> for the hint.
* Don't need write permissions for /dev/nvram if no -s/-d parameter was specified
or ACTUALLY_WRITE==OFF
2002-02-04: BUGFIX
* Fixed the BCD bug introduced in Version 0.03
2002-02-01: Version 0.03 (beta)
* Moved the ACTUALLY_WRITE from nvram-wakeup.h to Makefile
+ Added a bunch of new boards. See nvram-wakeup-mb.h for details and credits.
Thanks to everyone who sent me his/her board configuration.
+ Added new mb parameters NEED_RTC, RESET_DATE, BCD
+ Adapted nvram-wakeup to use the BCD notation used on some boards.
+ README.mb is a new document containing information about how to figure
out the addresses of the stored values.
+ Autodetecting if CMOS clock runs at GMT or local time.
Thanks to Dr. Werner Fink <werner@suse.de>
* Now we require both nvram and rtc drivers (we need the latter one for
detecting if the rtc clock is running in localtime or UTC/GMT)
+ Added a new command line option: -D (--debug).
It enables printing of debug messages. (not many of them now)
+ New command line option -l (--syslog) to pass all output to syslog.
+ The vdrshutdown script now makes use of the new -l (--syslog) command line
option.
+ Introduced the variable RUN_BEFORE to use instead of 2*WAKEUP_BEFORE
in several places. Now the two things are independant.
+ Now I tested boot.diff on a SuSE 7.2 system.
+ If there wouldn't be changed anything in nvram, don't write into it.
* Now the exit status is always one of the following:
0 - Successfully finished
1 - We had to set (disable/enable) the wakeup date and time, but they were
already set to proper values. We didn't write them again.
2 - Some error occurred.
+ Modified the script vdrshutdown to take advantage of the new exit status of
nvram-wakeup. Especially useful on MSI MS-6351, where you have to reboot
after changing nvram.
+ Added a new program `guess', which should help to retrieve the addresses in
nvram guessing them from four given states. Consider this program to be
alpha quality.
+ Added a new program `rtc', the only thing it does: It prints the currently
set RTC alarm time.
+ Added a man page and a new `man' rule in the Makefile
+ Added a HISTORY file (actually, you are reading it at the moment).
2001-10-17: Version 0.02 (never released).
+ Added support for clocks running in UTC/GMT time.
+ Added some new motherboards.
* rewritten calculate_read and calculate_write to be more human readable
Thanks to Leiser <gregorski@leisergmbh.de> for the idea.
2001-10-10: Version 0.01 (Initial revision).
+ Could read/write wakeup time via /dev/nvram.
+ Predefined configurations for two motherboards: MSI MS-6351 and Biostar M6VCG
+ Accepts command line options -s (--settime), -d (--disable), -h (--help),
-v (--version).
2001-08-17: The idea was born
+ There was a discussion on the linux-dvb mailinglist about ways to poweron
a PC automatically.
+ The message by Frank Klingenhoefer <frank.private@t-online.de>:
http://linuxtv.org/mailinglists/linux-dvb/2001/08-2001/msg00457.html
(and a following off-list discussion with him and Hans-Hermann Redenius
<redenius@uni-oldenburg.de>) gave me the idea to write some small program
for setting the Wakeup feature.