History log of /freebsd-11-stable/sys/dev/ichwd/ichwd.c
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 359361 27-Mar-2020 jhibbits

MFC r359285:

ichwd: Add Atom C3000 watchdog ID.

Sponsored by: Juniper Networks, Inc


# 342569 28-Dec-2018 avg

MFC r342193: ichwd: add a few assertions about tco_version


# 342567 28-Dec-2018 avg

MFC r342073: ichwd: add Sunrise Point-LP ID


# 342565 28-Dec-2018 avg

MFC r342072: ichwd: add support for clearing No Reboot bit in TCOv4


# 340182 06-Nov-2018 avg

MFC r339591: ichwd: add support for TCO watchdog timer in Lewisburg PCH (C620)

PR: 222079
Relnotes: maybe
Sponsored by: Panzura


# 331722 29-Mar-2018 eadler

Revert r330897:

This was intended to be a non-functional change. It wasn't. The commit
message was thus wrong. In addition it broke arm, and merged crypto
related code.

Revert with prejudice.

This revert skips files touched in r316370 since that commit was since
MFCed. This revert also skips files that require $FreeBSD$ property
changes.

Thank you to those who helped me get out of this mess including but not
limited to gonzo, kevans, rgrimes.

Requested by: gjb (re)


# 330897 14-Mar-2018 eadler

Partial merge of the SPDX changes

These changes are incomplete but are making it difficult
to determine what other changes can/should be merged.

No objections from: pfg


# 323672 17-Sep-2017 kib

MFC r314477 (by imp):
Fix TCO v3 tick convert.


# 322115 06-Aug-2017 mav

MFC r321720, r321856: Attach ichwd(4) only to ISA bus of the LPC bridge.

Resource allocation for parent device does not look good by itself, but
attempt to allocate them for unrelated device just does not end up good.
On Asus X99-E WS/USB3.1 system reporting ISA bridge via both PCI and ACPI
this reported to cause kernel panic on shutdown due to messed resources:
https://bugs.freenas.org/issues/25237.


# 302408 07-Jul-2016 gjb

Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle.
Prune svn:mergeinfo from the new branch, as nothing has been merged
here.

Additional commits post-branch will follow.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


/freebsd-11-stable/MAINTAINERS
/freebsd-11-stable/cddl
/freebsd-11-stable/cddl/contrib/opensolaris
/freebsd-11-stable/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print
/freebsd-11-stable/cddl/contrib/opensolaris/cmd/zfs
/freebsd-11-stable/cddl/contrib/opensolaris/lib/libzfs
/freebsd-11-stable/contrib/amd
/freebsd-11-stable/contrib/apr
/freebsd-11-stable/contrib/apr-util
/freebsd-11-stable/contrib/atf
/freebsd-11-stable/contrib/binutils
/freebsd-11-stable/contrib/bmake
/freebsd-11-stable/contrib/byacc
/freebsd-11-stable/contrib/bzip2
/freebsd-11-stable/contrib/com_err
/freebsd-11-stable/contrib/compiler-rt
/freebsd-11-stable/contrib/dialog
/freebsd-11-stable/contrib/dma
/freebsd-11-stable/contrib/dtc
/freebsd-11-stable/contrib/ee
/freebsd-11-stable/contrib/elftoolchain
/freebsd-11-stable/contrib/elftoolchain/ar
/freebsd-11-stable/contrib/elftoolchain/brandelf
/freebsd-11-stable/contrib/elftoolchain/elfdump
/freebsd-11-stable/contrib/expat
/freebsd-11-stable/contrib/file
/freebsd-11-stable/contrib/gcc
/freebsd-11-stable/contrib/gcclibs/libgomp
/freebsd-11-stable/contrib/gdb
/freebsd-11-stable/contrib/gdtoa
/freebsd-11-stable/contrib/groff
/freebsd-11-stable/contrib/ipfilter
/freebsd-11-stable/contrib/ldns
/freebsd-11-stable/contrib/ldns-host
/freebsd-11-stable/contrib/less
/freebsd-11-stable/contrib/libarchive
/freebsd-11-stable/contrib/libarchive/cpio
/freebsd-11-stable/contrib/libarchive/libarchive
/freebsd-11-stable/contrib/libarchive/libarchive_fe
/freebsd-11-stable/contrib/libarchive/tar
/freebsd-11-stable/contrib/libc++
/freebsd-11-stable/contrib/libc-vis
/freebsd-11-stable/contrib/libcxxrt
/freebsd-11-stable/contrib/libexecinfo
/freebsd-11-stable/contrib/libpcap
/freebsd-11-stable/contrib/libstdc++
/freebsd-11-stable/contrib/libucl
/freebsd-11-stable/contrib/libxo
/freebsd-11-stable/contrib/llvm
/freebsd-11-stable/contrib/llvm/projects/libunwind
/freebsd-11-stable/contrib/llvm/tools/clang
/freebsd-11-stable/contrib/llvm/tools/lldb
/freebsd-11-stable/contrib/llvm/tools/llvm-dwarfdump
/freebsd-11-stable/contrib/llvm/tools/llvm-lto
/freebsd-11-stable/contrib/mdocml
/freebsd-11-stable/contrib/mtree
/freebsd-11-stable/contrib/ncurses
/freebsd-11-stable/contrib/netcat
/freebsd-11-stable/contrib/ntp
/freebsd-11-stable/contrib/nvi
/freebsd-11-stable/contrib/one-true-awk
/freebsd-11-stable/contrib/openbsm
/freebsd-11-stable/contrib/openpam
/freebsd-11-stable/contrib/openresolv
/freebsd-11-stable/contrib/pf
/freebsd-11-stable/contrib/sendmail
/freebsd-11-stable/contrib/serf
/freebsd-11-stable/contrib/sqlite3
/freebsd-11-stable/contrib/subversion
/freebsd-11-stable/contrib/tcpdump
/freebsd-11-stable/contrib/tcsh
/freebsd-11-stable/contrib/tnftp
/freebsd-11-stable/contrib/top
/freebsd-11-stable/contrib/top/install-sh
/freebsd-11-stable/contrib/tzcode/stdtime
/freebsd-11-stable/contrib/tzcode/zic
/freebsd-11-stable/contrib/tzdata
/freebsd-11-stable/contrib/unbound
/freebsd-11-stable/contrib/vis
/freebsd-11-stable/contrib/wpa
/freebsd-11-stable/contrib/xz
/freebsd-11-stable/crypto/heimdal
/freebsd-11-stable/crypto/openssh
/freebsd-11-stable/crypto/openssl
/freebsd-11-stable/gnu/lib
/freebsd-11-stable/gnu/usr.bin/binutils
/freebsd-11-stable/gnu/usr.bin/cc/cc_tools
/freebsd-11-stable/gnu/usr.bin/gdb
/freebsd-11-stable/lib/libc/locale/ascii.c
/freebsd-11-stable/sys/cddl/contrib/opensolaris
/freebsd-11-stable/sys/contrib/dev/acpica
/freebsd-11-stable/sys/contrib/ipfilter
/freebsd-11-stable/sys/contrib/libfdt
/freebsd-11-stable/sys/contrib/octeon-sdk
/freebsd-11-stable/sys/contrib/x86emu
/freebsd-11-stable/sys/contrib/xz-embedded
/freebsd-11-stable/usr.sbin/bhyve/atkbdc.h
/freebsd-11-stable/usr.sbin/bhyve/bhyvegc.c
/freebsd-11-stable/usr.sbin/bhyve/bhyvegc.h
/freebsd-11-stable/usr.sbin/bhyve/console.c
/freebsd-11-stable/usr.sbin/bhyve/console.h
/freebsd-11-stable/usr.sbin/bhyve/pci_fbuf.c
/freebsd-11-stable/usr.sbin/bhyve/pci_xhci.c
/freebsd-11-stable/usr.sbin/bhyve/pci_xhci.h
/freebsd-11-stable/usr.sbin/bhyve/ps2kbd.c
/freebsd-11-stable/usr.sbin/bhyve/ps2kbd.h
/freebsd-11-stable/usr.sbin/bhyve/ps2mouse.c
/freebsd-11-stable/usr.sbin/bhyve/ps2mouse.h
/freebsd-11-stable/usr.sbin/bhyve/rfb.c
/freebsd-11-stable/usr.sbin/bhyve/rfb.h
/freebsd-11-stable/usr.sbin/bhyve/sockstream.c
/freebsd-11-stable/usr.sbin/bhyve/sockstream.h
/freebsd-11-stable/usr.sbin/bhyve/usb_emul.c
/freebsd-11-stable/usr.sbin/bhyve/usb_emul.h
/freebsd-11-stable/usr.sbin/bhyve/usb_mouse.c
/freebsd-11-stable/usr.sbin/bhyve/vga.c
/freebsd-11-stable/usr.sbin/bhyve/vga.h
# 297255 24-Mar-2016 mav

Unify ichwd(4) attachment messages in dmesg.

MFC after: 2 weeks


# 286890 18-Aug-2015 fabient

Add ichwd TCO version 3 support (Bay Trail / Rangeley...)

Reviewed by: jhb
Obtained from: Cas-well
Sponsored by: Stormshield


# 285628 16-Jul-2015 brueffer

Actually recognize all Intel Lynx Point devices we have device IDs for.

PR: 195851
Submitted by: ftigeot@wolfpond.org
MFC after: 1 week


# 275101 26-Nov-2014 mav

Add bunch of PCI IDs of Intel Wildcat Point (9 Series) chipsets.

MFC after: 1 week


# 253475 19-Jul-2013 jfv

Add new Coleto Creek device support: SATA, SMBus, and Watchdog devices.

MFC after: 1 week


# 248104 09-Mar-2013 markj

Don't log a message when the watchdog is reloaded. It's not useful to do so
and these messages flood the log when bootverbose is enabled.

Approved by: rstone (co-mentor)


# 244977 02-Jan-2013 jfv

Add support for new Intel Lynx Point PCH - Watchdog Timer Device IDs


# 229598 05-Jan-2012 jhb

Remove use of explicit bus space tags and handles and use methods that
operate on resource objects instead.

MFC after: 1 week


# 225340 02-Sep-2011 delphij

Fix a bug in ichwd(4) which prevents it from beig enabled if the new
timeout is the same timeout.

Submitted by: Dmitrij Tejblum <tejblum yandex-team.ru>
PR: kern/139604
MFC after: 2 weeks
Approved by: re (kib)


# 221789 11-May-2011 jfv

Chipset support for the new Intel Panther Point PCH, thanks
to Seth Heasley for preparing the changes.


# 221016 25-Apr-2011 attilio

Add missing bit in r221015.

Sponsored by: Sandvine Incorporated
Reviewed by: des
MFC after: 1 week
X-MFC: r221015


# 221010 25-Apr-2011 des

Whitespace nit


# 218149 31-Jan-2011 jfv

Support for the new Patsburg PCH chipset:
- SMBus Controller
- SATA Controller
- HD Audio Controller
- Watchdog Controller

Thanks to Seth Heasley (seth.heasley@intel.com) for providing us code.

MFC after 3 days


# 218140 31-Jan-2011 jfv

Support for the new DH89xxCC PCH chipset including:
- SATA controller
- Watchdog timer
- SMBus controller


# 216298 08-Dec-2010 attilio

Use convenience macro for minimum and maximum value capping when
re-arming the watchdog timeout.

Sponsored by: Sandvine Incorporated
Submitted by: Mark Johnston <mjohnston at sandvine dot com>
Reviewed by: des
MFC after: 10 days


# 216266 07-Dec-2010 emaste

Add a comment to clarify that some BIOSes may clear the hw watchdog
indicator bit, preventing us from reporting in that case.

X-MFC-with: r215868


# 215918 26-Nov-2010 emaste

Fix build by correcting function name. Pointed out by dougb.


# 215868 26-Nov-2010 attilio

- Advertise when the reboot came from a watchdog-induced reset.
- Fix a bug where TCO_BOOT_STS was supposed to be cleared after
TCO_SECOND_TO_STS and not before.

Sponsored by: Sandvine Incorporated
Submitted by: Mark Johnston <mjohnston at sandvine dot com>
Reviewed by: des
MFC after: 10 days


# 211908 27-Aug-2010 jfv

Add Intel Cougar Point PCH LPC Controller Device IDs
for watchdog support. Also add additional Intel Ibex
Peak (5 Series/3400 Series) PCH IDs.

MFC after a week


# 210454 24-Jul-2010 avg

ichwd: correct range check for timeout value

This is similar to a fix in r189305 but for earlier ICH versions (<= 5).

Reported by: someone via attilio
Discussed with: des, attilio
MFC after: 1 week


# 202917 24-Jan-2010 remko

Add support for the NM10 chipset.

PR: kern/143118
Submitted by: Koshin sumitani <ksumitani at mui dot biglobe dot ne dot jp>
Approved by: imp (mentor, implicit)
MFC after: 3 days


# 202812 22-Jan-2010 emaste

Add H55 ID from Mike Tancsa, with minor rewording from avg@.

PR: kern/143068
Submitted by: Mike Tancsa (Sentex)
MFC after: 1 week


# 199015 07-Nov-2009 avg

ichwd: don't attach to isa pnp device(s) by accident

Reviewed by: imp, des
MFC after: 1 week


# 197072 10-Sep-2009 n_hibma

Don't print out a message on loading a module. 'kldload -v' and 'kldstat
| grep <modname>' can be used instead.

Put a message behind bootverbose as

ichwd0: <Intel ICH6M watchdog timer> on isa0
ichwd0: Intel ICH6M watchdog timer (ICH6 or equivalent)

does not make a lot of sense.

MFC after: 1 week


# 190030 19-Mar-2009 des

Rename two functions to make their purpose clearer. Add tons of comments.
Generated code is identical after stripping .comment section.

Suggested by: Andriy Gapon <avg@icyb.net.ua>
MFC after: 2 weeks


# 189305 03-Mar-2009 avg

ichwd: correct range check for timeout value

Approved by: jhb (mentor)


# 182161 25-Aug-2008 jhb

Add more PCI IDs including those for ICH10.

PR: kern/126736
Submitted by: Olivier Smedts olivier of gid0 org
MFC after: 1 week


# 175128 07-Jan-2008 des

Add support for ICH8M.

PR: kern/119351
Submitted by: Takeharu KATO <takeharu1219@ybb.ne.jp>
MFC after: 1 week


# 175013 31-Dec-2007 des

Add device IDs for the ICH9 family.

PR: i386/119126
Submitted by: Dan Lukes <dan@obluda.cz>
MFC after: 1 week


# 175012 31-Dec-2007 des

Tabify.


# 173661 15-Nov-2007 jfv

Add PCI device support for Intel S7000FC4UR in usb and ichwd, systems
will not install without the usb changes in the install kernel, so I
would like to MFC this in time for 7.0 RC

MFC: 3 days


# 171820 13-Aug-2007 des

Update to support ICH[678] chipsets (based on a patch by Takeharu KATO)
Fix a resource allocation bug (explained by jhb on -acpi)
Thanks for Mike Tancsa for testing and helping track down the bug.

Approved by: re (kensmith)
MFC after: 3 weeks


# 167950 27-Mar-2007 n_hibma

Revisit the watchdogs: Resetting the error to EINVAL after failing to set the
watchdog might hide the succesful arming of an earlier one. Accept that on
failing to arm any watchdog (because of non-supported timeouts) EOPNOTSUPP is
returned instead of the more appropriate EINVAL.

MFC after: 3 days


# 167503 13-Mar-2007 n_hibma

In one of the previous commits I accidentally removed the enabling of the
watchdog chip.

Noticed by: Mike Tancsa
Tested by: Mike Tancsa
MFC after: 1 week


# 165260 15-Dec-2006 n_hibma

Align the interfaces for the various watchdogs and make the interface
behave as expected.

Also:
- Return an error if WD_PASSIVE is passed in to the ioctl as only
WD_ACTIVE is implemented at the moment. See sys/watchdog.h for an
explanation of the difference between WD_ACTIVE and WD_PASSIVE.
- Remove the I_HAVE_TOTALLY_LOST_MY_SENSE_OF_HUMOR define. If you've
lost your sense of humor, than don't add a define.

Specific changes:

i80321_wdog.c
Don't roll your own passive watchdog tickle as this would defeat the
purpose of an active (userland) watchdog tickle.

ichwd.c / ipmi.c:
WD_ACTIVE means active patting of the watchdog by a userland process,
not whether the watchdog is active. See sys/watchdog.h.

kern_clock.c:
(software watchdog) Remove a check for WD_ACTIVE as this does not make
sense here. This reverts r1.181.


# 155785 17-Feb-2006 ambrisko

Re-work the bus attachment somewhat. Make the rids unique for
the SMI/TCO address space. Switch the bus space I/O to the
one specific for either the SMI or TCO space. Re-calibrate
the tick. Add some more device id's, 82801FBR submitted by des.
This makes it work on the platforms I've tested with.

Go ahead by: des


# 139749 05-Jan-2005 imp

Start each of the license/copyright comments with /*-, minor shuffle of lines


# 130402 13-Jun-2004 jmg

make code less broken, only try to create unit 0 since there can only
be one, this will help prevent multipling devices if this driver is
ever loaded/unloaded multiple times...

Prodded by: julian


# 129879 30-May-2004 phk

Add missing <sys/module.h> includes


# 129256 14-May-2004 des

Remove some debugging printf()s and a pointless device_set_desc() call.


# 129124 11-May-2004 des

Add a driver for the watchdog timer function present on the LPC interface
bridge in Intel ICH-series chipsets.

The original implementation was by W. Daryl Hawkins of Texas A&M, but I
have made substantial modifications.