Home | History | Annotate | Download | only in acpi
History log of /src/sys/dev/acpi/pckbc_acpi.c
RevisionDateAuthorComments
 1.40  10-Nov-2024  martin Add ELAN0501 trackpads in ps2-compat mode to the quirks table of devices
not requiring an interrupt for the aux slot.
 1.39  29-Jan-2021  thorpej branches: 1.39.24;
Use acpi_compatible_match() / acpi_compatible_lookup().
 1.38  06-Dec-2020  jmcneill acpi: Use acpi_intr_establish to install interrupt handlers

Get rid of bus-specific (isa_intr_establish) and MD (intr_establish) calls
from MI ACPI code, and use acpi_intr_establish everywhere.
 1.37  11-Aug-2019  rin branches: 1.37.8;
Appease GCC maybe-uninitialized for optimization level -Os on amd64.
 1.36  28-Oct-2017  riastradh branches: 1.36.4;
Kill some more extern struct cfdriver declarations.

Down with externs in .c!
 1.35  18-Oct-2016  jdolecek branches: 1.35.6;
provide intr xname
 1.34  17-Oct-2013  christos branches: 1.34.6; 1.34.10;
remove unused variable
 1.33  05-Mar-2010  jruoho branches: 1.33.10; 1.33.20; 1.33.24;
Remove <dev/acpi/acpica.h> from all files. It is included from
<dev/acpi/acpivar.h>. Ditto for <dev/sysmon/sysmonvar.h>, <sys/bus.h>,
<dev/pci/pcivar.h>, and <dev/isa/isavar.h>.

Also nuke a lot of unused and invalid headers. Some of these are audibly
provided by standard headers (namely <sys/param.h> and <sys/device.h>), some
have nothing to do with ACPI devices (e.g. <sys/syslog.h>), and some are
nonexistent local includes (e.g. "mpu_ym.h"). Moreoever, try to group the
includes into their respective blocks.

Tested with GENERIC and ALL (i386). No functional change.
 1.32  29-Aug-2009  jmcneill branches: 1.32.2;
PR# port-i386/39671: panic while booting with an acpi kernel on a 790GX board

If the firmware describes duplicate keyboard controller nodes, don't panic
when the driver fails to map registers.
 1.31  17-Feb-2009  jmcneill Cut the amount of spam from acpi devices in roughly half by printing
resources on the same line as autoconf messages. Things like:
pcppi1 at acpi0 (SPKR, PNP0800)
pcppi1: io 0x61
become:
pcppi1 at acpi0 (SPKR, PNP0800): io 0x61
 1.30  16-Sep-2008  pgoyette branches: 1.30.2; 1.30.4; 1.30.8; 1.30.10; 1.30.12;
Add another touchpad device - this one found in my Acer2413WLCi laptop.

Tested by me.
OK garbled@
 1.29  12-Jun-2008  cegger branches: 1.29.2;
use device_lookup_private to get softc
 1.28  03-May-2008  jmcneill branches: 1.28.2; 1.28.4;
Use M_ZERO instead of malloc+memset
 1.27  28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.26  16-Mar-2008  cube branches: 1.26.2; 1.26.4;
Don't assume a struct device is embedded in the softc.
 1.25  15-Mar-2008  cube Split device_t and softc for pckbc(4) and its attachments.
 1.24  04-Jan-2008  ad branches: 1.24.2; 1.24.6;
Start detangling lock.h from intr.h. This is likely to cause short term
breakage, but the mess of dependencies has been regularly breaking the
build recently anyhow.
 1.23  09-Dec-2007  jmcneill branches: 1.23.2;
Merge jmcneill-pm branch.
 1.22  19-Oct-2007  ad branches: 1.22.2; 1.22.4; 1.22.6;
machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
 1.21  05-Oct-2007  jmcneill branches: 1.21.2;
Sort IO resources before attempting to attach; resolves issues on ACPI
firmware that reports 0x64,0x60 instead of 0x60,0x64. Patch tested by
Greg A. Woods.
 1.20  09-Jul-2007  ad branches: 1.20.6; 1.20.8; 1.20.10;
Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements
 1.19  16-Nov-2006  christos branches: 1.19.2; 1.19.8; 1.19.10; 1.19.16;
__unused removal on arguments; approved by core.
 1.18  12-Oct-2006  christos - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
 1.17  20-Feb-2006  kochi branches: 1.17.14; 1.17.16;
use aprint_*
 1.16  11-Dec-2005  christos branches: 1.16.2; 1.16.4; 1.16.6;
merge ktrace-lwp.
 1.15  01-May-2004  kochi branches: 1.15.12;
specify static where appropriate.
 1.14  11-Apr-2004  kochi Clean up memory allocated during autoconfiguration
 1.13  11-Apr-2004  kochi change acpi_resource_parse API to support _PRS parsing as well as _CRS
 1.12  11-Apr-2004  kochi return (x) -> return x
use consitent variable name for ACPI_STATUS
 1.11  03-Nov-2003  mycroft Rework slightly so we use acpi_match_hid() in pckbc_acpi_attach() too.
 1.10  03-Nov-2003  mycroft Match all PNP03?? IDs.
Also match more PNP0F?? IDs (e.g. the one the HP OmniBook reports). There's
also no need to check IBM3780 any more, as the IBM and Acer machines which
returned it also return a CID of PNP0F13.
 1.9  03-Nov-2003  mycroft More cleanup:
* Use ACPI_FAILURE() and ACPI_SUCCESS().
* Output exception strings in a few more places.
 1.8  03-Nov-2003  mycroft Clean up some messages:
* Use AcpiFormatException() in a bunch of places.
* acpi_resource_parse() already prints an error, so don't do it in the callers.
 1.7  03-Nov-2003  kochi * now the size of ACPI_DEVICE_INFO is variable:
it can now accomodate multiple _CIDs
sizeof(ACPI_DEVICE_INFO) should not be used
* make ad_devinfo member in acpi_devnode a pointer
* implement acpi_match_hid() to simplify matching devices;
_CIDs are also taken into account now as well as _HID
 1.6  31-Oct-2003  mycroft Catch up with ABI changes in ACPI-CA. Some additional changes to acpi_bat to
set the VALID bits correctly, so we don't report garbage for missing batteries.
 1.5  27-Oct-2003  christos Fix uninitialized variable warnings.
 1.4  27-Jan-2003  jmcneill branches: 1.4.2;
Attach to PNP0F03 -- makes the PS/2 mouse on this Dell work.
 1.3  28-Dec-2002  matt branches: 1.3.2;
Only remember the softc if was for the keyboard port. Only try to attach
the console to a keyboard port.
 1.2  28-Dec-2002  matt Add IBM3780 (PNP id for IBM's trackpoint). Also consider anything starting
with PNP0F as a mouse.
 1.1  28-Dec-2002  matt Add a pckbc acpi attachment (it compiles but it untested).
 1.3.2.2  29-Dec-2002  thorpej Sync with HEAD.
 1.3.2.1  28-Dec-2002  thorpej file pckbc_acpi.c was added on branch nathanw_sa on 2002-12-29 20:45:31 +0000
 1.4.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.4.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.4.2.1  03-Aug-2004  skrll Sync with HEAD
 1.15.12.6  17-Mar-2008  yamt sync with head.
 1.15.12.5  21-Jan-2008  yamt sync with head
 1.15.12.4  27-Oct-2007  yamt sync with head.
 1.15.12.3  03-Sep-2007  yamt sync with head.
 1.15.12.2  30-Dec-2006  yamt sync with head.
 1.15.12.1  21-Jun-2006  yamt sync with head.
 1.16.6.1  22-Apr-2006  simonb Sync with head.
 1.16.4.1  09-Sep-2006  rpaulo sync with head
 1.16.2.1  01-Mar-2006  yamt sync with head.
 1.17.16.2  10-Dec-2006  yamt sync with head.
 1.17.16.1  22-Oct-2006  yamt sync with head
 1.17.14.1  18-Nov-2006  ad Sync with head.
 1.19.16.1  29-Oct-2007  wrstuden Catch up with 4.0 RC3
 1.19.10.1  11-Jul-2007  mjf Sync with head.
 1.19.8.3  23-Oct-2007  ad Sync with head.
 1.19.8.2  09-Oct-2007  ad Sync with head.
 1.19.8.1  01-Jul-2007  ad Adapt to callout API change.
 1.19.2.1  07-Oct-2007  xtraeme Pull up following revision(s) (requested by jmcneill in ticket #924):
sys/dev/acpi/pckbc_acpi.c: revision 1.21
Sort IO resources before attempting to attach; resolves issues on ACPI
firmware that reports 0x64,0x60 instead of 0x60,0x64. Patch tested by
Greg A. Woods.
 1.20.10.1  14-Oct-2007  yamt sync with head.
 1.20.8.3  23-Mar-2008  matt sync with HEAD
 1.20.8.2  09-Jan-2008  matt sync with HEAD
 1.20.8.1  06-Nov-2007  matt sync with HEAD
 1.20.6.7  08-Dec-2007  jmcneill Rename pnp(9) -> pmf(9), as requested by many.
 1.20.6.6  06-Nov-2007  joerg Refactor PNP API:
- Make suspend/resume directly a device functionality. It consists of
three layers (class logic, device logic, bus logic), all of them being
optional. This replaces D0/D3 transitions.
- device_is_active returns true if the device was not disabled and was
not suspended (even partially), device_is_enabled returns true if the
device was enabled.
- Change pnp_global_transition into pnp_system_suspend and
pnp_system_resume. Before running any suspend/resume handlers, check
that all currently attached devices support power management and bail
out otherwise. The latter is not done for the shutdown/panic case.
- Make the former bus-specific generic network handlers a class handler.
- Make PNP message like volume up/down/toogle PNP events. Each device
can register what events they are interested in and whether the handler
should be global or not.
- Introduce device_active API for devices to mark themselve in use from
either the system or the device. Use this to implement the idle handling
for audio and input devices. This is intended to replace most ad-hoc
watchdogs as well.
- Fix somes situations in which audio resume would lose mixer settings.
- Make USB host controllers better deal with suspend in the light of
shared interrupts.
- Flush filesystem cache on suspend.
- Flush disk caches on suspend. Put ATA disks into standby on suspend as
well.
- Adopt drivers to use the new PNP API.
- Fix a critical bug in the generic cardbus layer that made D0->D3
break.
- Fix ral(4) to set if_stop.
- Convert cbb(4) to the new PNP API.
- Apply the PCI Express SCI fix on resume again.
 1.20.6.5  26-Oct-2007  joerg Sync with HEAD.

Follow the merge of pmap.c on i386 and amd64 and move
pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup
code to restore CR4 before jumping back into kernel space as the large
page option might cover that.
 1.20.6.4  07-Oct-2007  joerg Sync with HEAD.
 1.20.6.3  05-Oct-2007  jmcneill Sort IO resources; hopefully will help firmware that reports pckbc IO
resources in a different order than we expect.
 1.20.6.2  05-Aug-2007  jmcneill Certain devices either don't require a power handler, or are restored
on resume outside of the pnp power management framework. For such devices,
introduce the null power handler, pnp_generic_power.
 1.20.6.1  03-Aug-2007  jmcneill Pull in power management changes from private branch.
 1.21.2.1  25-Oct-2007  bouyer Sync with HEAD.
 1.22.6.1  11-Dec-2007  yamt sync with head.
 1.22.4.1  26-Dec-2007  ad Sync with head.
 1.22.2.1  18-Feb-2008  mjf Sync with HEAD.
 1.23.2.1  08-Jan-2008  bouyer Sync with HEAD
 1.24.6.4  28-Sep-2008  mjf Sync with HEAD.
 1.24.6.3  29-Jun-2008  mjf Sync with HEAD.
 1.24.6.2  02-Jun-2008  mjf Sync with HEAD.
 1.24.6.1  03-Apr-2008  mjf Sync with HEAD.
 1.24.2.1  24-Mar-2008  keiichi sync with head.
 1.26.4.4  11-Mar-2010  yamt sync with head
 1.26.4.3  16-Sep-2009  yamt sync with head
 1.26.4.2  04-May-2009  yamt sync with head.
 1.26.4.1  16-May-2008  yamt sync with head.
 1.26.2.2  17-Jun-2008  yamt sync with head.
 1.26.2.1  18-May-2008  yamt sync with head.
 1.28.4.1  18-Jun-2008  simonb Sync with head.
 1.28.2.2  24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.28.2.1  23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.29.2.1  19-Oct-2008  haad Sync with HEAD.
 1.30.12.1  21-Apr-2010  matt sync to netbsd-5
 1.30.10.1  05-Sep-2009  bouyer Pull up following revision(s) (requested by jmcneill in ticket #939):
sys/dev/acpi/pckbc_acpi.c: revision 1.32
PR# port-i386/39671: panic while booting with an acpi kernel on a 790GX board
If the firmware describes duplicate keyboard controller nodes, don't panic
when the driver fails to map registers.
 1.30.8.1  13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.30.4.2  05-Sep-2009  bouyer Pull up following revision(s) (requested by jmcneill in ticket #939):
sys/dev/acpi/pckbc_acpi.c: revision 1.32
PR# port-i386/39671: panic while booting with an acpi kernel on a 790GX board
If the firmware describes duplicate keyboard controller nodes, don't panic
when the driver fails to map registers.
 1.30.4.1  01-May-2009  snj Pull up following revision(s) (requested by jmcneill in ticket #498):
sys/dev/acpi/acpi_ec.c: revision 1.53
sys/dev/acpi/acpi_resource.c: revision 1.27
sys/dev/acpi/atppc_acpi.c: revision 1.16
sys/dev/acpi/attimer_acpi.c: revision 1.12
sys/dev/acpi/com_acpi.c: revision 1.28
sys/dev/acpi/fdc_acpi.c: revision 1.35
sys/dev/acpi/hpet_acpi.c: revision 1.4
sys/dev/acpi/joy_acpi.c: revision 1.9
sys/dev/acpi/lpt_acpi.c: revision 1.18
sys/dev/acpi/mpu_acpi.c: revision 1.9
sys/dev/acpi/pckbc_acpi.c: revision 1.31
sys/dev/acpi/pcppi_acpi.c: revision 1.11
sys/dev/acpi/ug_acpi.c: revision 1.5
sys/dev/acpi/wss_acpi.c: revision 1.20
sys/dev/acpi/ym_acpi.c: revision 1.6
Cut the amount of spam from acpi devices in roughly half by printing
resources on the same line as autoconf messages. Things like:
pcppi1 at acpi0 (SPKR, PNP0800)
pcppi1: io 0x61
become:
pcppi1 at acpi0 (SPKR, PNP0800): io 0x61
 1.30.2.1  03-Mar-2009  skrll Sync with HEAD.
 1.32.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.33.24.1  18-May-2014  rmind sync with head
 1.33.20.2  03-Dec-2017  jdolecek update from HEAD
 1.33.20.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.33.10.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.34.10.3  04-Nov-2016  pgoyette Sync with HEAD
 1.34.10.2  26-Jul-2016  pgoyette Fix conversion to device_lookup_acquire()
 1.34.10.1  26-Jul-2016  pgoyette Sync with HEAD
 1.34.6.1  05-Dec-2016  skrll Sync with HEAD
 1.35.6.1  27-Apr-2017  pgoyette Restore all work from the former pgoyette-localcount branch (which is
now abandoned doe to cvs merge botch).

The branch now builds, and installs via anita. There are still some
problems (cgd is non-functional and all atf tests time-out) but they
will get resolved soon.
 1.36.4.1  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.37.8.2  03-Apr-2021  thorpej Sync with HEAD.
 1.37.8.1  14-Dec-2020  thorpej Sync w/ HEAD.
 1.39.24.1  02-Aug-2025  perseant Sync with HEAD

RSS XML Feed