Home | History | Annotate | Download | only in isa
History log of /src/sys/dev/isa/aps.c
RevisionDateAuthorComments
 1.20  17-Feb-2025  andvar s/bye/byte/ in comments.
 1.19  09-Feb-2024  andvar fix spelling mistakes, mainly in comments and log messages.
 1.18  29-Jun-2022  mlelstv unregister sensors only when registered.
 1.17  23-Apr-2015  pgoyette Update module dependencies for all the existing modules that depend on sysmon components.
 1.16  16-Nov-2014  ozaki-r branches: 1.16.2;
Replace callout_stop with callout_halt

In order to call callout_destroy for a callout safely, we have to ensure
the function of the callout is not running and pending. To do so, we should
use callout_halt, not callout_stop.

Discussed with martin@ and riastradh@.
 1.15  14-Aug-2012  jruoho branches: 1.15.2; 1.15.14;
Collect rnd(9) entropy from coretemp(4), acpibat(4), aibs(4), hpacel(4),
thinkpad(4), and aps(4).
 1.14  16-Feb-2011  jruoho branches: 1.14.4; 1.14.10;
As suggested by Sverre Froyen in a follow-up to PR # 41698, change the
sensor names to real words (e.g. "temperature 1" instead of "TEMP_1").
No functional change; only consistent envstat(8) output with other sensors.
 1.13  18-Jan-2011  jmcneill branches: 1.13.2;
treat temperature readings of 0xff as invalid, as I'm somewhat confident
that my Thinkpad isn't idling at 255 degC.
 1.12  16-Jan-2011  jmcneill branches: 1.12.2;
save a line of dmesg
 1.11  16-Jan-2011  jmcneill - catch up with OpenBSD driver, adding support for newer Thinkpad models
- add module hooks
 1.10  24-Feb-2010  dyoung branches: 1.10.2;
A pointer typedef entails trading too much flexibility to declare const
and non-const types, and the kernel uses both const and non-const
PMF qualifiers and device suspensors, so change the pmf_qual_t and
device_suspensor_t typedefs from "pointers to const" to non-pointer,
non-const types.
 1.9  08-Jan-2010  dyoung branches: 1.9.2;
Expand PMF_FN_* macros.
 1.8  04-Apr-2008  xtraeme branches: 1.8.4;
Don't forget to unmap I/O space in the error paths.
Split device_t/softc and other related cosmetic changes.
 1.7  29-Feb-2008  dyoung Use PMF_FN_ARGS, PMF_FN_PROTO.
 1.6  21-Dec-2007  xtraeme branches: 1.6.2; 1.6.6;
Do not append the device name into the sensor's description, that's
useless and redundant.
 1.5  09-Dec-2007  jmcneill branches: 1.5.2;
Merge jmcneill-pm branch.
 1.4  17-Nov-2007  kefren branches: 1.4.2; 1.4.4;
Initialize sensor's state
on behalf of xtraeme
 1.3  16-Nov-2007  xtraeme Extend the envsys2 API (one more time, sorry) as defined in:

http://mail-index.netbsd.org/tech-kern/2007/11/09/0001.html

sysmon_envsys_create() and sysmon_envsys_destroy() were added to
create/destroy sysmon_envsys objects (and its TAILQ/LIST for sensors/events).

sysmon_envsys_sensor_attach() and sysmon_envsys_sensor_detach() were
added to attach/detach sensors to a specified sysmon_envsys device.

The events framework is now per device and configurable via the
ENVSYS_SETDICTIONARY ioctl or /etc/envsys.conf and envstat(8).

Update all users and documentation to reflect these changes.
 1.2  19-Oct-2007  ad branches: 1.2.2; 1.2.4; 1.2.6;
machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
 1.1  11-Sep-2007  xtraeme branches: 1.1.4; 1.1.6; 1.1.8;
New aps(4) driver for IBM Thinkpad Active Protection System.
Exports some sensors through the envsys(4) framework available
in some Thinkpad laptops.

Ported by Pierre Pronchery from OpenBSD, via PR port-i386/36852.

Tweaks, LKM and misc improvements by me. Added into i386/GENERIC
commented out.
 1.1.8.2  18-Nov-2007  bouyer Sync with HEAD
 1.1.8.1  25-Oct-2007  bouyer Sync with HEAD.
 1.1.6.3  23-Oct-2007  ad Sync with head.
 1.1.6.2  09-Oct-2007  ad Sync with head.
 1.1.6.1  11-Sep-2007  ad file aps.c was added on branch vmlocking on 2007-10-09 13:41:36 +0000
 1.1.4.7  08-Dec-2007  jmcneill Rename pnp(9) -> pmf(9), as requested by many.
 1.1.4.6  21-Nov-2007  joerg Sync with HEAD.
 1.1.4.5  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.1.4.4  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.1.4.3  05-Oct-2007  joerg Convert aps(4) to PNP power management.
 1.1.4.2  02-Oct-2007  joerg Sync with HEAD.
 1.1.4.1  11-Sep-2007  joerg file aps.c was added on branch jmcneill-pm on 2007-10-02 18:28:28 +0000
 1.2.6.4  23-Mar-2008  matt sync with HEAD
 1.2.6.3  09-Jan-2008  matt sync with HEAD
 1.2.6.2  06-Nov-2007  matt sync with HEAD
 1.2.6.1  19-Oct-2007  matt file aps.c was added on branch matt-armv6 on 2007-11-06 23:27:28 +0000
 1.2.4.2  27-Dec-2007  mjf Sync with HEAD.
 1.2.4.1  19-Nov-2007  mjf Sync with HEAD.
 1.2.2.5  17-Mar-2008  yamt sync with head.
 1.2.2.4  21-Jan-2008  yamt sync with head
 1.2.2.3  07-Dec-2007  yamt sync with head
 1.2.2.2  27-Oct-2007  yamt sync with head.
 1.2.2.1  19-Oct-2007  yamt file aps.c was added on branch yamt-lazymbuf on 2007-10-27 11:31:22 +0000
 1.4.4.1  11-Dec-2007  yamt sync with head.
 1.4.2.1  26-Dec-2007  ad Sync with head.
 1.5.2.1  02-Jan-2008  bouyer Sync with HEAD
 1.6.6.2  02-Jun-2008  mjf Sync with HEAD.
 1.6.6.1  03-Apr-2008  mjf Sync with HEAD.
 1.6.2.1  24-Mar-2008  keiichi sync with head.
 1.8.4.1  11-Mar-2010  yamt sync with head
 1.9.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.10.2.1  05-Mar-2011  rmind sync with head
 1.12.2.1  06-Jun-2011  jruoho Sync with HEAD.
 1.13.2.1  17-Feb-2011  bouyer Sync with HEAD
 1.14.10.1  07-Dec-2014  martin Pull up following revision(s) (requested by ozaki-r in ticket #1201):
sys/kern/kern_ktrace.c: revision 1.166
sys/dev/isa/aps.c: revision 1.16
sys/dev/sysmon/sysmonvar.h: revision 1.45
sys/dev/ir/irframe_tty.c: revision 1.60
sys/dev/sysmon/sysmon_envsys_events.c: revision 1.111-1.112 (patch)
sys/dev/pci/pccbb.c: revision 1.207
sys/dev/wscons/wskbd.c: revision 1.135
sys/dev/usb/ohci.c: revision 1.254
sys/net/if_ecosubr.c: revision 1.41
sys/dev/pcmcia/btbc.c: revision 1.17
sys/arch/x86/x86/via_padlock.c: revision 1.23
sys/dev/sdmmc/sdmmc.c: revision 1.23 (patch)
sys/dev/bluetooth/btkbd.c: revision 1.17
sys/dev/bluetooth/bcsp.c: revision 1.25
sys/arch/x86/pci/fwhrng.c: revision 1.8
sys/dev/ic/nslm7x.c: revision 1.61
share/man/man9/callout.9: revision 1.28 (patch)

Replace callout_stop with callout_halt and ensure the callout
is not running before destroying it.
 1.14.4.1  30-Oct-2012  yamt sync with head
 1.15.14.1  01-Dec-2014  martin Pull up following revision(s) (requested by ozaki-r in ticket #279):
sys/kern/kern_ktrace.c: revision 1.166
sys/dev/isa/aps.c: revision 1.16
sys/dev/sysmon/sysmonvar.h: revision 1.45
sys/dev/ir/irframe_tty.c: revision 1.60
sys/dev/sysmon/sysmon_envsys_events.c: revision 1.111
sys/dev/sysmon/sysmon_envsys_events.c: revision 1.112
sys/dev/pci/pccbb.c: revision 1.207
sys/dev/wscons/wskbd.c: revision 1.135
sys/dev/usb/ohci.c: revision 1.254
sys/net/if_ecosubr.c: revision 1.41
sys/dev/pcmcia/btbc.c: revision 1.17
sys/arch/x86/x86/via_padlock.c: revision 1.23
sys/dev/sdmmc/sdmmc.c: revision 1.23
sys/dev/bluetooth/btkbd.c: revision 1.17
sys/dev/bluetooth/bcsp.c: revision 1.25
sys/arch/x86/pci/fwhrng.c: revision 1.8
sys/dev/ic/nslm7x.c: revision 1.61
share/man/man9/callout.9: revision 1.28
Replace callout_stop with callout_halt
In order to call callout_destroy for a callout safely, we have to ensure
the function of the callout is not running and pending. To do so, we should
use callout_halt, not callout_stop.
Discussed with martin@ and riastradh@.
Make it clear that we should use not callout_stop but callout_halt
before callout_destroy
Replace callout_stop with callout_halt
In order to call callout_destroy for a callout safely, we have to ensure
the function of the callout is not running and pending. To do so, we should
use callout_halt, not callout_stop.
In this case, we need to pass an interlock to callout_halt to wait for
the callout complete.
Reviewed by riastradh@.
Kill sme_callout_mtx and use sme_mtx instead
We can use sme_mtx for the callout as well. Actually we should do so
because sme_events_list and some other data that are touched in the
callout should be protected by sme_mtx, not sme_callout_mtx.
Discussed with riastradh@ in
http://mail-index.netbsd.org/tech-kern/2014/11/11/msg017956.html
Replace callout_stop with callout_halt
In order to call callout_destroy for a callout safely, we have to ensure
the function of the callout is not running and pending. To do so, we should
use callout_halt, not callout_stop.
In this case, we need to pass an interlock to callout_halt to wait for
the callout complete. And also we make sure that SME_CALLOUT_INITIALIZED
is unset before calling callout_halt to prevent the callout from calling
callout_schedule. This is the same as what we did in sys/netinet6/mld6.c@1.61.
Reviewed by riastradh@.
 1.15.2.1  03-Dec-2017  jdolecek update from HEAD
 1.16.2.1  06-Jun-2015  skrll Sync with HEAD

RSS XML Feed