freebsd-dev/sys/dev
Markus Brueffer a4bfd6388f Import a mostly rewritten and extended version of acpi_ibm:
- Restructured for easier extensibility and maintainability
- To be more uniform with the other ACPI extras drivers and to better reflect
  their actual meaning, some sysctls were moved:
    o brightness -> lcd_brightness
    o keylight   -> thinklight
    o enable     -> events
    o misckey    -> hotkey
    o avail_mask -> availmask
    o key_mask   -> eventmask
- New "initialmask" sysctl, which holds the initial eventmask
- The "wlan" sysctl is now read-only, since writing to it didn't have
  any effect
- The "version" sysctl was removed, since it seems to be the same (0x100)
  on all models I have seen
- Support for more hotkeys by the "hotkey" sysctl
- Improved support of ACPI events. Disabled by default, since it unexpectedly
  changes the behaviour of some keys. (on my T41p there are now 24 different
  keypress events that get reported)
- write support for: volume, mute, lcd_brightness and thinklight
- led(4) interface for the thinklight [1]
- New sysctls "fan" and "fan_speed" to support reading of fan status and speed
- New sysctl "thermal" to support reading of up to 8 thermal sensors

Reviewed by:	philip
Approved by:	philip
Submitted by:	simon [1]
Inspired by:	The Linux ibm_acpi driver by Borislav Deianov
		  http://ibm-acpi.sourceforge.net/
		The ThinkPad Button program (tpb) by Markus Braun
		  http://www.nongnu.org/tpb/
Thanks to:	brueffer, dvl, njl, philip, simon, takawata and the many
		testers from freebsd-acpi@ and freebsd-mobile@
2005-06-09 20:17:32 +00:00
..
aac Add a text description for the Intel IOP302/303 processors. Be slightly 2005-06-01 07:11:17 +00:00
acpi_support Import a mostly rewritten and extended version of acpi_ibm: 2005-06-09 20:17:32 +00:00
acpica In newbus land, ivars can only be accessed for direct child, or when 2005-06-03 20:12:12 +00:00
adlink Instead of a rather useless generation number, use a sample number to 2005-03-19 12:55:46 +00:00
advansys Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
agp Add nForce3-250. 2005-04-08 18:04:39 +00:00
aha Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ahb Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
aic Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
aic7xxx Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
amd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
amr Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
an check copyin/copyout return values 2005-03-28 17:52:12 +00:00
ar Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
arcmsr Use same RID we allocated the resource with to free it 2005-06-05 23:05:26 +00:00
arl Since if_arl doesn't contain locking or run with INTR_MPSAFE, mark 2004-08-13 22:54:19 +00:00
asr Only create the rdpti alias if the asr device creation succeeds. 2005-04-29 04:47:11 +00:00
ata Fix the register offset for the ATAPI count register thats used to 2005-06-09 19:00:37 +00:00
ath Change station mode beacon timer setup to insure the calculated 2005-06-09 04:10:01 +00:00
atkbdc Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
auxio - Take advantage of ebus(4) having switched to SYS_RES_MEMORY for memory 2005-06-04 20:27:39 +00:00
awi Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
bfe Powerstate stuff now done in PCI bus driver 2005-06-05 22:48:15 +00:00
bge Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
bktr Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
buslogic Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
cardbus Use STAILQ in preference to SLIST for the resources. Insert new resources 2005-03-18 05:19:50 +00:00
ciss Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
cm Since if_cm doesn't contain locking or run with INTR_MPSAFE, mark 2004-08-13 22:57:44 +00:00
cnw Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
cp Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
cpufreq Only activate ICH speedstep if we're going to use it. No bugs were observed 2005-03-20 01:25:21 +00:00
cs Fix the worst offenders of style(9) with a small style sweep. 2005-01-28 06:50:59 +00:00
ct Change a directory layout for pc98. 2005-05-10 12:02:18 +00:00
ctau Use dynamic major number allocation. 2005-02-27 22:16:58 +00:00
cx netchild's mega-patch to isolate compiler dependencies into a central 2005-03-02 21:33:29 +00:00
cy Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
dc Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
dcons Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
de Return BUS_PROBE_DEFAULT instead of 0. 2005-02-24 21:32:56 +00:00
dec Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
digi Staticize some symbols that are each only used in one corresponding .c file. 2005-05-06 20:53:34 +00:00
dpt Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
drm Fix a panic on X startup for drivers that don't init maps themselves by storing 2005-04-24 19:03:32 +00:00
ed Use tabs instead of spaces to indent, per style(9) 2005-06-09 18:46:36 +00:00
eisa Now that the Adaptec 2842 has its own probe routine, no need to have 2005-03-17 17:36:07 +00:00
em Latest README to correspond to latest Intel version 2.1.7 2005-05-26 23:33:24 +00:00
en Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
ep Make it clear that the statement following the conditional is a NOP. 2005-04-13 06:42:43 +00:00
esp - Try to not leak resources in the attach functions of the esp(4) SBus 2005-05-19 14:51:10 +00:00
ex Include necessary declarations 2005-01-20 20:06:44 +00:00
exca Properly calculate the offset in mapping the memory of pccards. This 2005-01-11 00:32:43 +00:00
fatm Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
fb - In machfb_configure() when probed for the high-level console return 2005-06-04 21:18:30 +00:00
fdc If we fail a sanity check for the resources just allocated, make sure 2005-03-15 08:02:47 +00:00
fe Perliminary support for Fujitsu SCSI LAN combo card. At least for the 2005-02-20 19:40:29 +00:00
firewire Recognize the integrated (though not necessarily enabled) FireWire 2005-05-20 12:37:16 +00:00
fxp Correct comment 2005-06-06 03:22:51 +00:00
gem Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:30:12 +00:00
gfb Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
harp Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
hatm Add a missing comma which prevents compilation with debugging enabled. 2005-05-25 13:33:58 +00:00
hfa Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
hifn These registers are saved by pci bus code. Remove from #if 0'd code anyway 2005-06-05 22:57:32 +00:00
hme According to STP2002QFP User's Guide, it seems that driver should 2005-05-23 05:45:36 +00:00
hptmv Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
hwpmc MFP4: 2005-06-09 19:45:09 +00:00
ic cosmetic change. 2005-05-14 10:26:31 +00:00
ichsmb Make ichsmb loadable. 2005-06-05 11:55:29 +00:00
ichwd Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
ida Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
idt Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ie Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ieee488 Don't leak mutex on open failure. 2005-04-04 17:37:35 +00:00
if_ndis Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
iicbus Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
iir Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
io Add module versions. 2004-08-02 20:42:28 +00:00
ips Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ipw Printing a warning once when trying to bring up interface before firmware load. 2005-06-01 01:54:00 +00:00
isp Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ispfw Roll firmware to the latest version. There are a bunch of features 2005-01-29 01:12:37 +00:00
iwi o Clear device-specific PCI register 0x41 (Retry Timeout) during attach 2005-05-22 18:55:32 +00:00
ixgb Convert to the faster bus_dmamap_load_mbuf_sg() interface. 2005-05-18 07:45:08 +00:00
joy Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
kbd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
led Add placeholder mutex argument to new_unrhdr(). 2005-03-07 11:05:47 +00:00
lge Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
lnc Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:17:35 +00:00
mc146818 After some input from bde@ and rereading the datasheet use a MTX_SPIN 2005-06-04 23:24:50 +00:00
mca
mcd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
md Request a CPU private mapping from sf_buf_alloc(). If the swap-backed 2005-02-13 21:51:50 +00:00
mem Fix module builds for i386 and amd64. 2004-08-04 18:30:31 +00:00
mii Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
mk48txx - Add locking. 2005-05-19 21:16:50 +00:00
mlx Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
mly Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
mpt Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
mse Minor style(9) changes 2005-04-08 05:22:58 +00:00
my Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ncv Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
nge Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
nmdm Explicitly hold a reference to the cdev we have just cloned. This 2005-03-31 12:19:44 +00:00
nsp Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
null Use dynamic major number allocation. 2005-02-27 22:01:09 +00:00
nve Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ofw Sync with openfirm(4) and check the return value of malloc() although 2005-05-19 15:23:17 +00:00
owi MF dev/wi: merge the pccard lists. 2005-02-03 00:40:35 +00:00
patm Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:10:49 +00:00
pbio Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
pccard Initial import of ipw, iwi, ral and ural drivers: 2005-04-18 18:47:38 +00:00
pccbb Not yet ready to burn this, so unmark power stuff.... non-type 0 busses still need to do this 2005-06-06 06:05:32 +00:00
pcf Account for ebus(4) defaulting to SYS_RES_MEMORY for memory resources 2005-06-04 20:29:28 +00:00
pci As threatened by BURN_BRIDGES, restire PCIR_MAPS and PCIR_HEADERTYPE 2005-06-05 23:08:59 +00:00
pdq Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ppbus In ppsintr, we needed ppsdev to get to the softc and nothing else. 2005-04-14 15:56:10 +00:00
ppc don't use C keyword register as CPP macro argument name 2005-04-12 23:32:26 +00:00
pst Use BUS_PROBE_DEFAULT for pci probe return value 2005-03-05 18:10:49 +00:00
puc Account for ebus(4) defaulting to SYS_RES_MEMORY for memory resources 2005-06-04 20:29:28 +00:00
ral Fix WPA (802.11i) support. 2005-05-22 18:34:20 +00:00
random malloc.h relies on param.h for a definition of MAXCPU. I guess that there is 2005-05-30 05:01:44 +00:00
ray Make a bunch of malloc types static. 2005-02-10 12:02:37 +00:00
rc Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
re Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
rndtest Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
rp - Use pci_get_device() and pci_get_vendor() when we only want one part 2005-03-25 03:10:51 +00:00
sab Account for ebus(4) defaulting to SYS_RES_MEMORY for memory resources 2005-06-04 20:29:28 +00:00
safe Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
sbni Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
sbsh Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
scd Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
sf Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
si Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
sio Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
sk Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
smbus Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
sn Only attach to network functions. I'm not aware of any multifunction 2005-01-20 19:59:31 +00:00
snc Only send packet to bpf if we are committed to send it. Previously it was 2005-02-21 17:30:10 +00:00
snp Explicitly hold a reference to the cdev we have just cloned. This 2005-03-31 12:19:44 +00:00
sound s/-1000/BUS_PROBE_LOW_PRIORITY/ 2005-05-29 23:22:23 +00:00
speaker - Move timerreg.h to <arch>/include and split i8253 specific defines into 2005-05-14 09:10:02 +00:00
sr Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
stg Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
streams Use kern_open() directly rather than a stackgap detour via open(). 2005-02-07 18:22:20 +00:00
sx Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY in 2005-03-01 08:58:06 +00:00
sym Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
syscons Fix LINT by defining vga_pxlmouse_planar and vga_pxlmouse_direct. 2005-05-30 18:37:25 +00:00
tdfx Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
tga Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
ti Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
trm Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
twa Make call to tw_cl_deferred_interrupt in twa_poll, not dependent on the 2005-04-29 20:03:20 +00:00
twe Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
tx Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
txp Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
uart Replace the band-aid for allowing to call sunkbd_configure() multiple 2005-06-04 21:54:31 +00:00
ubsec Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return 2005-03-01 07:50:12 +00:00
usb Power state management now done in PCI bus code 2005-06-05 22:53:09 +00:00
utopia Split the chip-specific code from the generic Utopia code. This simplifies 2005-02-24 16:56:36 +00:00
vge Remove some variables the last commit stopped using so the code compiles. 2005-06-06 02:12:12 +00:00
vkbd Fix yet another cut-and-paste bug. 2005-05-20 23:29:55 +00:00
vr Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
vx Remove bus_{mem,p}io.h and related code for a micro-optimization on i386 2005-05-29 04:42:30 +00:00
watchdog Do the dreaded s/dev_t/struct cdev */ 2004-06-16 09:47:26 +00:00
wds Start each of the license/copyright comments with /*-, minor shuffle of lines 2005-01-06 01:43:34 +00:00
wi Honouring current authmode setting. With this patch, my wi card can now 2005-06-02 01:51:16 +00:00
wl Move if_wl_i82586.h into sys/dev/wl. 2005-05-09 04:47:58 +00:00
xe u_intXX_t -> uintXX_t 2005-01-20 19:32:37 +00:00
zs The zs(4) driver is superseded by uart(4) and broken in -CURRENT. Remove 2005-02-27 15:23:58 +00:00