Attach to ICH8M LPC.
Tested watchdog and it works.
ok xtraeme@
Properly use the return value of a bswap16 call.  Caught when building
a kernel with -O0.
avoid uninitialized warning from impossible enum
For SMBus, add the ability to enumerate devices on the bus.
This does NOT identify the devices, merely indicates the
presence of devices at certain addresses.  Tested on ichsmb
and nfsmb - other SMBus devices will need to ensure the
proper bus type is set. (I2C_TYPE_SMBUS)

From Nicolas Joly, via Paul Goyette, in PR#36744.
Make bioops a pointer and point it to the softdeps struct in softdep
init.  Decouples "options SOFTDEP" from the main kernel and ffs code.
Protect userland from ifreq_getaddr() w/ #ifdef _KERNEL.
Remove unused (and inexistent) flag.
typo: ENVSYS_FVALID -> ENVSYS_SVALID.
Convert the sysmon watchdog framework to use mutex(9) rather than
simple_locks and initialize them on init_main via sysmon_wdog_init().

All the sysmon code now is cleaned up and doesn't use old style locking.
Add <sys/mutex.h> rather than <sys/lock.h>.
Attach to the ICH6 AC-97 Modem function.
Do not enable monitoring for the sensors... if somebody wants this,
it may be enabled via userland.
Convert onewire(4) to use rwlock(9) rather than lockmgr(9).
defflag DEBUG_SGSMIX
don't include machine/autoconf.h - we don't need it (anymore?)
Be consistent: use the prefix sc_ for all members of the gre_softc.
Get rid of struct oifreq/ifreq compat code, because ifioctl() has
taken care of this for us.
m_copy() was deprecated, apparently, long ago.  m_copy(...) ->
m_copym(..., M_DONTWAIT).
Simplify code, add debug statements, and fix a bug that could
soclose() a UDP socket that a struct file still pointed at.
Delete unused variable.