ChangeLog file for tpctl
========================
TODO
----
- Enable --dull option when output is a pipe
HELP WELCOME
4.14 changes from 4.10
----------------------
29Apr2004 LEM/JDTH : apmiser: Fix parsing of 2.6's /proc/stat
Thanks to Lionel Elie Mamane for the fix
4.10 changes from 4.9
---------------------
26Jan2004 JDTH : Update README section re: controlling pointing devices
8Feb2004 JDTH : Recognize --info-CMOS-RAM as per help
4.9 changes from 4.7
--------------------
06Dec2003 ZN/JDTH : Add notes about X22 to SUPPORTED-MODELS
Thanks to Zdravko Nikolov
12Dec2003 JDTH : Add a 600E model --ib listing to SUPPORTED-MODELS
Thanks to The Rev. Shamim
4.7 changes from 4.6
--------------------
18Aug2003 JDTH : Use "chown nm:grp" instead of "chown nm.grp" as per POSIX
15Aug2003 JDTH : Wayne schlitt has noticed that tpctl --pm* causes the system
clock to lose time; therefore if the apmiser program is
running and frequently switching the power expenditure mode
then it causes the system clock to run slowly. This effect
may be unacceptable to some people. (In Debian the apmiser
program is not started in any runlevel by default; the admin
has either to run update-rc.d to add runlevel S links or
to do "/etc/init.d/apmiser start".) I added this information
to the README.
11Aug2003 JDTH : Update Debian scripts -- see Debian changelog
11Aug2003 JDTH : Update apmiser(8)
11Aug2003 JDTH : Further enhance /usr/sbin/apmiser
* Add option: --version
* Create and delete a pidfile if --daemon
* Save power all the time. My reasoning is as follows.
+ First, it is reasonable to want to save line power as well as
battery power. For some people, "AC power" is a misnomer because
the machine is running off an external battery pack. Saving line
power may also abate fan noise and global warming.
+ Second, it isn't necessary for apmiser to turn itself on and off.
Instead, the admin can hang a script on apmd's proxy hook that
starts and stops apmiser according to her local policy. Currently
apmiser still needs to look at /proc/apm in order to find out which
power expenditure mode to control, but in the future this
information should be provided to apmiser on the command line; then
apmiser will run equally well under ACPI with appropriate support
from acpid.
+ Fourth, removing the test from apmiser simplifies the program.
10Aug2003 w/JDTH : Make apmiser more intelligent
* Eliminate option: --interval
* Add options: --high_threshold, --low_threshold, --term, --trendiness
Thanks to wayne schlitt for this work.
4.6 changes from 4.5
--------------------
24Jun2003 JDTH : Move modutils material from tpctl README to
thinkpad README. Try to make the README more
clear.
4.5 changes from 4.4b
---------------------
10May2003 JL/JDTH : Add .spec file -- thanks to James R. Leu
JDTH : Remove uninstall_legacy target from Makefile
: Change use of variables in Makefile
4.4b changes from 4.3
---------------------
13Apr2003 JDTH : (revs a,b) Debian changes
7Apr2003 HH : apmiser: Don't save power if no battery installed
Thanks to Heikki Holstila for the patch.
24Mar2003 CK/JDTH : Documentation fixes thanks to Charles Kaufman
4.3 changes from 4.2
--------------------
10Mar2003 JDTH : tpctl.c, ntpctl.c #include errno.h, not linux/errno.h
: Update README
4.2 changes from 4.1
--------------------
30Nov2002 JDTH : Fix Makefiles so that they work nicely with
user CFLAGS
6Dec2002 DH : Update apmiser:
* Clean up
* Add --daemon option
* Add --syslog option
* Add --verbose option
* Add --jiffies=x option
Thanks to Dirk Husemann for this work
4.1 changes from 4.0
--------------------
22Nov2002 JDTH : Update SUPPORTED-MODELS
: Update Debian maintainer scripts
4.0 changes from 3.7
--------------------
5Nov2002 JDTH : Tweak rules file -- see Debian changelog
: Eliminate uninitialized variable warnings in ntpctl
compilation
Thanks to Silvio Boehler and Michael Hagemann
for beta testing and making helpful suggestions
: 'centurially' -> 'centennially'
27Oct2002 JDTH : Bump tpctl major version because we are bumping
thinkpad major version
: Remove unused ETHINKPAD_EXECUTION macro
: Change ETHINKPAD_* error codes to eliminate ambiguity
: Default device node is now /dev/thinkpad/thinkpad
whether devfs is mounted at /dev or not. tpctl and
ntpctl also try /dev/thinkpad if /dev/thinkpad/thinkpad
is unusable.
: Clean up device node handling code
: Update README and TROUBLESHOOTING
: Update man page
: Rename libsmapidev.so.1.0 as libsmapidev.so.2.0 to
sync with the internal version number for libsmapidev.
24Oct2002 JDTH : Add bits to SUPPORTED-MODELS
3.7 changes from 3.3
--------------------
9Aug2002 JDTH : apmiser initscript now stops apmiser with QUIT so that
apmiser's signal handler can restore power exp. level
In Debian, by default do not start apmiser in any runlevels
5Apr2002 JDTH : Add apmiser initscript
11Apr2002 JDTH : Update apmiser man page and README
Update SUPPORTED-MODELS
3.3 changes from 3.2
--------------------
31Mar2002 JDTH : Update SUPPORTED-MODELS
3.2 changes from 3.1
--------------------
9Mar2002 JDTH : Update man pages
3.1 changes from 3.0
--------------------
28Feb2002 JDTH : Add debian directory
Don't build tpctlir by default. It's broken.
-------------------------------------------------------------
Note that post 3.0 this is the ChangeLog for tpctl only.
In 3.0 and earlier, tpctl and thinkpad had a common ChangeLog
-------------------------------------------------------------
3.0 changes from 2.5
--------------------
10Feb2002 JDTH : Releases renamed '3.0'
3Feb2002 JDTH : Release thinkpad 3.0pre7
3Feb2002 JDTH : Simplified proc read functions
23Dec2001 JDTH : Release thinkpad 3.0pre6
23Dec2001 JDTH : Put #ifdefs around MODULE_LICENSE so that the
modules can be used with kernels < 2.4.10
7Dec2001 JDTH : Release thinkpad 3.0pre5
7Dec2001 JDTH : Change instructions on configuring devfsd in the
README file, to reflect recent changes in devfs
14Nov2001 JDTH : Release tpctl 3.0pre4
14Nov2001 JDTH : Janitorial work:
Make type of all flags in tpctl flag_t
I hope the janitor didn't break anything
Tweak --pra handling to reflect the fact that
appointments are made either for every day or
for every century. Tweak printf, scanf formats
26Oct2001 JDTH : Release 3.0pre3
24Oct2001 JDTH : Update thinkpad README file
24Oct2001 JDTH : Change module parameter names to omit "thinkpad"
prefix which isn't necessary if we simply make
the parameter variables static. This reverts a
change made for 2.5. Sorry!!
24Oct2001 JDTH : Sync thinkpadpm code with the apm driver code from
which it was copied
22Oct2001 JDTH : Update TROUBLESHOOTING file again
18Oct2001 JDTH : Release 3.0pre2
18Oct2001 JDTH : Improve device file handling code; provide more
useful error messages when file not found, etc.
17Oct2001 JDTH : Append TODO to README
6Oct2001 JDTH : Note in thinkpad README that drivers are compatible
with certain Linux kernels
5Oct2001 JDTH : Revise TROUBLESHOOTING file
4Oct2001 JDTH : Release 3.0pre1
18Sep2001 JDTH : Move proc files under /proc/driver subdirectory
: Add devfs support to superio, thinkpadpm, rtcmosram
28Aug2001 JDTH : Add devfs support to ntpctl as I did to tpctl
: Update TODO
27Jul2001 JDTH : Added devfs support to thinkpad and smapi modules
: Cleaned up driver init and exit functions
: Modified tpctl so it checks /dev/thinkpad/thinkpad
: Split into two packages:
thinkpad -- device drivers
tpctl -- tpctl and kindred binaries and lib
: Eliminate Makefile-common
2.5 changes from 2.4
--------------------
25Jul2001 JDTH : Added reference to new ed. of Linux Device Drivers
: Change module options enable_* -> thinkpad_enable_*
: Introduce a global variable "thinkpad_ppde" so that
other modules will require thinkpad module in
order to load, thus preventing corruption of
proc fs. This eliminates the needs for "below"
statements in /etc/modules.conf. Updated README
accordingly.
: Eliminate *_MOD_USE_COUNT etc. in favour of
kernel's automatic ref counting
17Jul2001 JDTH : Change rtcmosram to use rtc_lock spinlock
instead of disabling interrupts.
: Eliminate proc fs optionalness
: Update README for devfs users
27Apr2001 JDTH : Fixed comments in several header files
16Apr2001 JDTH : Add INFO-BIOS file to tarball
2.4 changes from 2.3
--------------------
27Feb2001 JDTH : No changes, except version increased to deal with
FUBAR upload of 2.3 to SourceForge
2.3 changes from 2.2
--------------------
23Feb2001 JDTH : Update TODO, README
23Feb2001 JDTH : Fixed bug in superio PnP mode detection fn
18Feb2001 JDTH : Make tpctl 2.x work nicely with 1.0 modules.
11Feb2001 JDTH : tpctl now does a sync() before sedating
10Feb2001 JDTH : Update man pages for tpctl and ntpctl
2.2 changes from 2.1
--------------------
6Feb2001 JDTH : Make names and version strings "const" variables.
6Feb2001 JDTH : Clean up printouts at init time and in /proc/thinkpad
6Feb2001 JDTH : Copy APM BIOS interface from APM driver to
thinkpadpm.c so that no kernel patch is required.
5Feb2001 JDTH : Correct README, TODO, ChangeLog files.
2.1 changes from 2.0
--------------------
4Feb2001 JDTH : Eliminate unnecessary explicit dereference of function
variable names in thinkpad.c
2Feb2001 JDTH : Update TECHNOTES, TODO, README, ChangeLog, etc.
31Jan2001 JDTH : Change tpctl --rx print outs, including order of
items ... I hope this doesn't annoy anyone.
27Jan2001 JDTH : Clean up --- use recommended Linux 2.4.x API
27Jan2001 JDTH : Add thinkpadpm module to control subsystem power.
27Jan2001 JDTH : Remove use of unneeded global fReady flags
23Jan2001 JDTH : Install man in /usr/share/man not /usr/man
23Jan2001 JDTH : Remove cOpen from thinkpad.c; use MOD_IN_USE
22Jan2001 JDTH : Change all versions to 2.1
22Jan2001 JDTH : Rename thinkpad_mod_defines.h to thinkpad_module.h
22Jan2001 JDTH : Remove VIAGRA #ifdef ... #endif since hw access
seems safe enough
22Jan2001 JDTH : Remove old proc filesystem code: NEW_PROC is king
22Jan2001 JDTH : Remove POWER_SERIAL code: module will do the work
2.0 changes from 1.0
--------------------
20Jan2001 JDTH : Move tpctlir up out of contrib/ directory
20Jan2001 DS/JDTH : Added apmiser to the package
22Dec2000 JDTH : Use /lib/modules/xyz/build as path to kernel src
22Dec2000 JDTH : Clean up Makefiles
12Dec2000 JDTH : Install under /usr, not under /usr/local
12Dec2000 JDTH : Port drivers to Linux 2.4 API
1.0 changes from 0.8.9
----------------------
26Oct2000 JDTH : Remove '*' from lcall in smapi_call.s
16Oct2000 JDTH : Create BUGS file
14Oct2000 JDTH : Change --pra code so that selecting a daily app't
does not overwrite the date of the non-daily app't
14Oct2000 JDTH : Standardize date and time display and input formats
(thanks to Marc Joosen for the suggestion)
14Oct2000 JDTH : Add "-Wno-uninitialized" to CFLAGS for compiling tpctl
11Oct2000 JDTH : Update docs
7Oct2000 JDTH : Change tpctl and ntpctl Makefiles to link to smapidev
in the same way
7Oct2000 JDTH : Add SUPPORTED-MODELS file
7Oct2000 JDTH : Update README
7Oct2000 JDTH : Remove tpctlify; config now to be done by hand
because there were too many problems with
automated installation.
7Oct2000 JDTH : Rename VGA_MODES file to "VGA-MODES"
7Oct2000 JDTH : Remove plug-n-play check from superio init
0.8.9 changes from 0.8.8
------------------------
1July2000 JDTH : Add kdist_clean target to Makefile to make
make-kpkg happy
6July2000 AB/JDTH : Rename libsmapidev.so to libsmapidev.so.1 and
add symlinks
6July2000 JDTH : Update AUTHORS file
17July2000 JDTH : Remove ioctl_thinkpad(), ioctl_superio() and
ioctl_rtcmosram() from smapidev since these have
nothing to do with SMAPI; move them into tpctl.c.
17July2000 JDTH : Change display of parallel port mode so that it
is the same as what you have to input to change
the mode.
17July2000 JDTH : Remove sound-related cruft from thinkpad driver
17July2000 JDTH : Add support for switching serial port on and off
at the same time as the port is enabled or
disabled. At present this requires a patch to
the kernel: see tpctl/README.
18July2000 JDTH : Display interpretative strings for numerical
values consistently.
18July2000 JDTH : Update TROUBLESHOOTING, README and TODO files
0.8.8 changes from 0.8.7
------------------------
25May2000 JDTH : Add COPYING file
25May2000 JDTH : Streamline some of the tpctl code
0.8.7 changes from 0.8.6
------------------------
28Apr2000 JDTH : Remove other_tools/ubswap
0.8.6 changes from 0.8.5
------------------------
26Apr2000 JDTH : Remove hdparm patch from other_tools/ubswap
since the patch has been incorporated into
the standard hdparm source
13Mar2000 JDTH : Update TODO file
0.8.5 changes from 0.8.4
------------------------
3Mar2000 JDTH : Removed superfluous legacy-mode (i.e., superio
non-pnp mode) config information from tpctl -rx
outputs
17Feb2000 FB/JDTH : create_proc_read_entry() appeared in the
linux-2.3.25 kernel and not in 2.3.0;
changed #if in thinkpad_mod_defines.h
19Jan2000 MF : ntpctl -- open device RDONLY if can't open RDWR
15Jan2000 JDR/JDTH : Call depmod and modprobe by full path name
0.8.4 changes from 0.8.3
------------------------
11Jan2000 AB : Added man pages for ntpctl, ubswap, tpctlir
Thanks to Adrian Bridgett!
0.8.3 changes from 0.8.2
------------------------
9Jan2000 JDTH : (Experimental) Added ability to select SPP/EPP/ECP
0.8.2 changes from 0.8.1
------------------------
6Jan2000 JDTH : Send '/lib/modules/`uname -r`' to tpctlify as module
path argument instead of /lib/modules/`uname -r`
0.8.1 changes from 0.8.0
------------------------
5Jan2000 JDTH : Tested with 2.2.14 kernel. A-OK.
5Jan2000 RB/JDTH : Implemented TP570_KLUDGE
5Jan2000 MS/JDTH : Send path arguments to tpctlify
4Jan2000 HV/JDTH : Kernel path now selectable via a Makefile variable
3Jan2000 JDTH : Improved byte_of_bcd8() error message
3Jan2000 MS/JDTH : Added "install_modules" target to Makefile so that
modules can be installed separately from the
other stuff
3Jan2000 AB/JDTH : tpctlir now fails gracefully if not run by root
3Jan2000 JDTH : Fixed typo in heading for 'tpctl --pdZ' output
3Jan2000 AB/JDTH : Fixed typo in heading for 'tpctl --ip' output
0.8.0 changes from 0.7.6
------------------------
31Dec99 JDTH : Man path now selectable via a Makefile variable
29Dec99 JDTH : Documentation corrections
0.7.6 changes from 0.7.5
------------------------
27Dec99 DD/JDTH : Added tpctl man page. Thanks to Dave Davey!
25Dec99 AG/JDTH : Modified drivers to work with 2.3.x kernels' /proc
filesystem interface. Thanks to Anders Gustafsson!
0.7.5 changes from 0.7.4
------------------------
13Dec99 JDTH : No longer install tpctlify
0.7.4 changes from 0.7.3
------------------------
11Dec99 JDTH : Fixed nasty bug in Makefile that caused /lib/modules
to be wiped out on install. DO NOT INSTALL 0.7.3 !
11Dec99 JDTH : Eliminated RPM-related stuff. Will release only
tarballs from now on.
11Dec99 JDTH : Changed modules installation directory to:
/lib/modules//thinkpad
0.7.3 changes from 0.7.2
------------------------
8Dec99 JDTH : Added "other_tools" directory with two nifty tools:
tpctlir -- enables/disables infrared subsystem on
ThinkPads with Programmable Option Select
ubswap -- allows hot swapping of UltraBay devices
7Dec99 JDTH : Added IOCTL_SND_REINIT to the thinkpad module
Created the tpreinitsnd program to call the new ioctl
1Dec99 JDTH : Tweaked ntpctl menus for greater consistency with tpctl
0.7.2 changes from 0.7.1
------------------------
30Nov99 JDTH : Integrated ntpctl into the package
Moved files into subdirectories
0.7.1 changes from 0.7.0
------------------------
13Nov99 JDTH : Added GetPowerExpenditureMode, SetPowerExpenditureMode
to libsmapidev
17Oct99 JDTH : Updated my email address
0.7.0 changes from 0.6.1
------------------------
31Jul99 JDTH : Update TROUBLESHOOTING re: kernel compatibility
31Jul99 JDTH : Move /proc entries under /proc/thinkpad
31Jul99 JDTH : Fiddled with tpctlify
0.6.1 changes from 0.6.0
------------------------
30Jul99 JDTH : (Build 3) Eliminate some warnings from byte_of_bcd8()
29Jul99 JDTH : Change handling of error codes so that it does not
rely upon ioctl() returning positive error codes
to the user. Such reliance is not portable.
0.6.0 changes from 0.5.10
-------------------------
29Jul99 JDTH : Change highlighting to "bold" and use the curses
library to get the appropriate terminal control
strings.
0.5.10 changes from 0.5.9
-------------------------
28Jul99 JDTH : (Build 2+) Allow rtcmosram module to load even if ioports are
occupied.
28Jul99 JDTH : Complete modularization: modules are now automatically and
independently loadable and unloadable. When tpctl is run,
thinkpad.o is loaded by the module loader as per instructions
in /etc/modules.conf. The thinkpad module, in turn, requests
the loading of the other modules as they are needed to perform
ioctl requests. Loading of a module is inhibited by setting
"enable_" to zero, which can be done at load time or
via ioctl(). See README.
27Jul99 JDTH : Simplify "SIZE_..._MAX" macros
28Jul99 JDTH : Change '--silent' to '--quiet' since the switch doesn't
make tpctl completely silent.
0.5.9 changes from 0.5.8
------------------------
27Jul99 JDTH : Use more standard error messaging
27Jul99 JDTH : Hive off smapi, superio and rtcmosram as distinctly
loadable modules.
27Jul99 JDTH : Fix bug in smapi:locate_smb_header()
27Jul99 JDTH : Fix bug in --pra output
27Jul99 JDTH : Abandon "variants" idea of 0.5.8 since it doesn't solve
the problem that it was meant to solve
27Jul99 JDTH : Add /proc/* entries for each enabled submodule
27Jul99 JDTH : Add module parameters to thinkpad.o to govern enabling of
the subordinate modules
27Jul99 JDTH : Make superio mod more careful about interrupt cli/restore
27Jul99 JDTH : Clean up module code a lot: make it much more kernelifically
correct and fault tolerant
0.5.8 changes from 0.5.7
-------------------------
25Jul99 JDTH : Package rpm with both modversions and non-modversions variants
25Jul99 JDTH : (release 5:) and install these in /lib/modules/thinkpad/thinkpad
and symlink /lib/modules/thinkpad/thinkpad.o to the right one
25Jul99 JDTH : Fix bug in Usage output
25Jul99 JDTH : Require write access for writing to CMOS RAM
0.5.7 changes from 0.5.6
-------------------------
24Jul99 JDTH : Added rtcmosram module
24Jul99 JDTH : Added --sst option
24Jul99 JDTH : Added --ic option
24Jul99 JDTH : Renamed --ic option as '--ip'
0.5.6 changes from 0.5.5
-------------------------
22Jul99 JDTH : Added "--silent" option
22Jul99 JDTH : Changed highlighting code to make it disablable using
the "--dull" option
0.5.5 changes from 0.5.4
-------------------------
22Jul99 JDTH : Added info about confuring serial ports to README
22Jul99 JDTH : Tried to make superio more kosher with its ioport usage
22Jul99 JDTH : Made checking for Super I/O chip a little more careful.
0.5.4 changes from 0.5.3
-------------------------
22Jul99 JDTH : Display appointment info all on one line
22Jul99 JDTH : Changed tpctlify to check for perl before invoking it
Also, make it more verbose
22Jul99 JDTH : Changed so that print formatting is nicer when many arguments
are given. Highlighting option improved and enabled for
binary distribution.
Options added:
--pdZh --pdZu
--x --sx --px etc.
Option names changed:
--iu --> --iU
--state-* --> --setup-*
I hope this didn't break anything.
22Jul99 JDTH : Allow thinkpad to initialize even if superio doesn't
22Jul99 JDTH : Update TROUBLESHOOTING file (outdate ref to 10:168 <- wrong)
21Jul99 JDTH : Add PS2.EXE/tpctl comparison to TODO
0.5.3 changes from 0.5.2
-------------------------
21Jul99 JDTH : (build 2) Change Makefile: remove -D switch which
is new to version 4.0 of install and do mkdirs instead
21Jul99 JDTH : (build 2) Change tpctlify to add /usr/local/lib
to the ld path if it's not already there
21Jul99 JDTH : Cleaned up superio.c code
21Jul99 JDTH : Fixed bug in tpctlify script -- didn't abort
21Jul99 JDTH : Removed '--verbose' options from Makefile commands
0.5.2 changes from 0.5.1
-------------------------
21Jul99 JDTH : Added 'rpm' target
21Jul99 JDTH : Compiler warning messages ("implicit declaration") eliminated
*This should solve some kernel compatibility problems!*
21Jul99 JDTH : Rest of par and ser configuration options implemented
21Jul99 JDTH : Make module init function a bit safer
20Jul99 JDTH : Changed device number to 10:170 by order of the
device number czar
0.5.1 changes from 0.5.0
-------------------------
20Jul99 JDTH : Fixed version printout formatting
20Jul99 JDTH : Print actual IRQs used
0.5.0 changes from 0.3.7
-------------------------
20Jul99 JDTH : --rs* functionality augmented
19Jul99 JDTH : --im folded into --ib
19Jul99 JDTH : Install script is now '/usr/local/sbin/tpctlify'
19Jul99 JDTH : Kernel module is now called 'thinkpad'
19Jul99 JDTH : Device file is now called /dev/thinkpad (dev. number 10:168)
19Jul99 JDTH : Widespread changes in the code structure