History log of /freebsd-current/sys/amd64/conf/NOTES
Revision Date Author Comments
# 4f8f9d70 23-Apr-2024 Lexi Winter <lexi@le-Fay.ORG>

sys: add conf/std.debug, generic debugging options

The new sys/conf/std.debug contains the list of debugging options
enabled by default in -CURRENT, so they don't need to be listed
individually in every kernel config.

The enabled options are the set of all debug options which were enabled
for the GENERIC kernel on any platform. This means some architectures
now have debugging options enabled in GENERIC which weren't previously
enabled:

- amd64: [1]
- arm64: [2]
- arm: [2]. [3]
- i386: [1], [2]
- powerpc: [1], [2], [3]
- riscv: [2]

[1] ALT_BREAK_TO_DEBUGGER is now enabled.
[2] BUF_TRACKING, FULL_BUF_TRACKING, and QUEUE_MACRO_DEBUG_TRASH are now
enabled.
[3] DEADLKRES is now enabled.

While here, move the documentation for the (commented out) K*SAN options
for amd64 from GENERIC to NOTES.

Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/1124


# 1f38677b 13-Apr-2024 John Baldwin <jhb@FreeBSD.org>

x86 NOTES: Move shared options from amd/i386 NOTES to x86 NOTES

While here, reorder some of the entries using headers more aligned
with sys/conf/NOTES. Also add a pointer from the amd64/i386 NOTES
files to x86 NOTES.

The "extra" ACPI device drivers were only present in i386 NOTES
previously.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D44787


# 5ea0b892 13-Apr-2024 John Baldwin <jhb@FreeBSD.org>

NOTES: Move ENABLE_ALART option to MI NOTES next to intpm device

This option is for this driver.

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D44786


# b620daf6 13-Apr-2024 John Baldwin <jhb@FreeBSD.org>

x86 NOTES: Move NKPT and PMAP_SHPGPERPROC options to VM OPTIONS section

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D44785


# 717b22e1 13-Apr-2024 John Baldwin <jhb@FreeBSD.org>

x86 NOTES: Remove some obsolete comments

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D44784


# 1f678b6b 13-Apr-2024 John Baldwin <jhb@FreeBSD.org>

NOTES: Move the VirtIO entries to the MI NOTES file

While here, add virtio_gpu

Reviewed by: imp, emaste
Differential Revision: https://reviews.freebsd.org/D44782


# ff3569be 13-Apr-2024 John Baldwin <jhb@FreeBSD.org>

NOTES: Move safe(4) to the MI NOTES file

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D44780


# 9c3fd2c1 13-Apr-2024 John Baldwin <jhb@FreeBSD.org>

NOTES: Move IEEE80211_DEBUG_REFCNT to the MI NOTES file

This option is not specific to amd64

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D44779


# bfd2ce2a 10-Apr-2024 Stephen J. Kiernan <stevek@FreeBSD.org>

efidev: Allow for optionally including efidev and efirtc into the kernel

Require both "efirt" and "efidev" in order to build in efidev
Require both "efirt" and "efirtc" in order to build in efirtc

Update FIRECRACKER, GENERIC, and NOTES for amd64
Update NOTES and std.arm for arm64

Reviewed by: imp
Obtained from: Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D44745


# 8f7105a2 09-Apr-2024 John Baldwin <jhb@FreeBSD.org>

NOTES: Move NVMe entries to MI file

While here, adjust the sample setting for NVME_USE_NVD to use a
non-default setting as is typical in entries in NOTES.

Discussed with: imp
Reviewed by: manu
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D44691


# 973d3a82 09-Apr-2024 John Baldwin <jhb@FreeBSD.org>

NOTES: Move OFED options to MI NOTES

Disable in armv7 NOTES to match sys/modules/Makefile

Reviewed by: imp
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D44686


# 031beb4e 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line sh pattern

Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/


# b0d3d44d 01-Jul-2023 Mark O'Donovan <shiftee@posteo.net>

qlnxe: add driver to amd64 NOTES

Signed-off-by: Mark O'Donovan <shiftee@posteo.net>
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/779


# 4d779448 04-Jun-2023 Xin LI <delphij@FreeBSD.org>

gve: Fix build on i386 and enable LINT builds.

Reviewed-by: imp
Differential Revision: https://reviews.freebsd.org/D40419


# b2c50bb9 18-Feb-2021 Elliott Mitchell <ehem+freebsd@m5p.com>

xen/efi: make Xen PV EFI clock optional

The present implementation is only for x86. Other architectures need
adjustments for querying presence of EFI.

Xen's EFI support is also quite troublesome on non-x86. This is being
slowly remedied, but until in better shape the EFI clock functionality
should be disabled.

Reviewed by: royger
Differential Revision: https://reviews.freebsd.org/D31065


# dd6f6030 23-Feb-2023 Mike Karels <karels@FreeBSD.org>

amd64 kernel config: clean up whitespace

Most options in kernel config files use "options<space><tab>OPTION".
This allows the option to be commented out without shifting columns.
A few options had two tabs, and some had spaces. Make them consistent.


# e4d3f1e4 05-Feb-2023 Yuri <yuri@aetern.org>

hv_hid: Hyper-V HID driver

Hyper-V HID driver using hidbus/hms.

Reviewed by: wulf
MFC after: 1 week
PR: 221074
Differential revision: https://reviews.freebsd.org/D38140


# 4a8e4d15 29-Nov-2022 Bjoern A. Zeeb <bz@FreeBSD.org>

net80211: fix IEEE80211_DEBUG_REFCNT builds

Remove the KPI/KBI changes from ieee80211_node.h and always use the
macros to pass in __func__ and __LINE__ to the functions.
The actual implementations are prefixed by "_" rather than suffixed
by "_debug" as they no longer are "debug"-specific.

Some of the select functions were not actually using the passed in
func, line options; however they are calling other functions which
use them. Directly call the internal implementation in those cases
passing the arguments on.

Use a file-local __debrefcnt_used define to mark the arguments __unused
in cases when we compile without IEEE80211_DEBUG_REFCNT and hope the
toolchain is intelligent enough to not pass them at all in those cases.

Also _ieee80211_free_node() now has a conflict so make the previous
_ieee80211_free_node() the new __ieee80211_free_node().

Add IEEE80211_DEBUG_REFCNT to the NOTES file on amd64 to keep exercising
the option.

Sponsored by: The FreeBSD Foundation
X-MFC: never
Discussed on: freebsd-wireless
Reviewed by: adrian
Differential Revision: https://reviews.freebsd.org/D37529


# 648edd63 09-Aug-2022 Mateusz Guzik <mjg@FreeBSD.org>

x86: remove MP_WATCHDOG

It does not work with ULE, which is the default scheduler for over a
decade.

Reviewed by: emaste, kib
Differential Revision: https://reviews.freebsd.org/D36094


# f4f56ff4 27-Jul-2022 Mark Johnston <markj@FreeBSD.org>

qat: Rename to qat_c2xxx and remove support for modern chipsets

A replacement QAT driver will be imported, but this replacement does not
support Atom C2xxx hardware. So, the existing driver will be kept
around to provide opencrypto offload support for those chipsets.

Reviewed by: pauamma, emaste
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D35817


# cdcd52d4 23-May-2022 Bartosz Sobczak <bartosz.sobczak@intel.com>

irdma: Add RDMA driver for Intel(R) Ethernet Controller E810

This is an initial commit for RDMA FreeBSD driver for Intel(R) Ethernet
Controller E810, called irdma. Supporting both RoCEv2 and iWARP
protocols in per-PF manner, RoCEv2 being the default.

Testing has been done using krping tool, perftest, ucmatose, rping,
ud_pingpong, rc_pingpong and others.

Signed-off-by: Eric Joyner <erj@FreeBSD.org>

Reviewed by: #manpages (pauamma_gundo.com) [documentation]
MFC after: 1 week
Relnotes: yes
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D34690


# f2d166d5 22-Apr-2022 John Baldwin <jhb@FreeBSD.org>

amd64 NOTES: Add entries for qlxgb, glxgbe, and glxge.


# 5bf623bb 22-Apr-2022 John Baldwin <jhb@FreeBSD.org>

amd64 NOTES: Sort the axp entry.


# 0b377a49 21-Apr-2022 John Baldwin <jhb@FreeBSD.org>

FB_INSTALL_CDEV: Remove this option and related code.

This option was never enabled in GENERIC and does not appear to work
(the cdevsw is stored in a global array but never passed to make_dev
to be associated with a character device).

Reviewed by: emaste
Differential Revision: https://reviews.freebsd.org/D35008


# efd0fdfe 09-Apr-2022 Gordon Bergling <gbe@FreeBSD.org>

NOTES: Remove a double word in comments

- s/for for/for/

MFC after: 3 days


# 21e22be9 09-Dec-2021 Warner Losh <imp@FreeBSD.org>

ed: Remove options

ed(4) was removed some time ago, but these options relevant to only it
weren't GC'd at the time. Remove them.

Sponsored by: Netflix


# 8722e05a 25-Nov-2021 Warner Losh <imp@FreeBSD.org>

twa: Remove

Belatedly remove twa(4). It was supposed to go before 13.0, but was
overlooked.

Sponsored by: Netflix
Relnotes: yes
Reviewed by: scottl
Differential Revision: https://reviews.freebsd.org/D33114


# cf0ee873 12-Sep-2021 Konstantin Belousov <kib@FreeBSD.org>

Drop cloudabi

According to https://github.com/NuxiNL/cloudlibc:
CloudABI is no longer being maintained. It was an awesome experiment,
but it never got enough traction to be sustainable.

There is no reason to keep it in FreeBSD.

Approved by: ed (private mail)
Reviewed by: emaste
Sponsored by: The FreeBSD Foundation
Differential revision: https://reviews.freebsd.org/D31923


# 7af4475a 02-Sep-2021 Alexander Motin <mav@FreeBSD.org>

vmd(4): Major driver refactoring

- Re-implement pcib interface to use standard pci bus driver on top of
vmd(4) instead of custom one.
- Re-implement memory/bus resource allocation to properly handle even
complicated configurations.
- Re-implement interrupt handling to evenly distribute children's MSI/
MSI-X interrupts between available vmd(4) MSI-X vectors and setup them
to be handled by standard OS mechanisms with minimal overhead, except
sharing when unavoidable.

Successfully tested on Dell XPS 13 laptop with Core i7-1185G7 CPU (VMD
device ID 0x9a0b) and single NVMe SSD, dual-booting with Windows 10.

Successfully tested on Supermicro X11DPI-NT motherboard with Xeon(R)
Gold 6242R CPUs (VMD device ID 0x201d), simultaneously handling NVMe
SSD on one PCIe port and PLX bridge with 3 NVMe and 1 AHCI SSDs on
another. Handles SSD hot-plug (except Optane 905p for some reason,
which are not detected until manual bus rescan) and enabled IOMMU
(directly connected SSDs work, but ones connected to the PLX fail
without errors from IOMMU).

MFC after: 2 weeks
Sponsored by: iXsystems, Inc.
Differential revision: https://reviews.freebsd.org/D31762


# 6c69c6bb 04-Aug-2021 Adam Fenn <adam@fenn.io>

kvm_clock: KVM paravirtual clock support

Add support for the KVM paravirtual clock device.

Sponsored by: Juniper Networks, Inc.
Sponsored by: Klara, Inc.
Reviewed by: kib
Differential Revision: https://reviews.freebsd.org/D29733


# 82bf6a25 02-Aug-2021 Roger Pau Monné <royger@FreeBSD.org>

xen/timer: fix amd64 LINT kernel build

On amd64 XENHVM depends on the xentimer device for PVH early startup,
so both should be added or removed together (like the current
dependency with xenpci). Fix this by adding xentimer to NOTES and
updating the comments on the config files. Note that on i386 there's
no such dependency between xentimer and XENHVM, since there's no PVH
support.

While there also fix the MINIMAL i386 build to include the xentimer,
so it keeps the same functionality as before xentimer was split from
XENHVM.

Reported by: lwhsu
PR: 257549
Fixes: ae5981274815 ('xen/timer: make xen timer optional')


# 517904de 11-Jul-2021 Peter Grehan <grehan@FreeBSD.org>

igc(4): Introduce new driver for the Intel I225 Ethernet controller.

This controller supports 2.5G/1G/100MB/10MB speeds, and allows
tx/rx checksum offload, TSO, LRO, and multi-queue operation.

The driver was derived from code contributed by Intel, and modified
by Netgate to fit into the iflib framework.

Thanks to Mike Karels for testing and feedback on the driver.

Reviewed by: bcr (manpages), kbowling, scottl, erj
MFC after: 1 month
Relnotes: yes
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D30668


# e013e369 21-Jun-2021 Dmitry Chagin <dchagin@FreeBSD.org>

linux(4): Get rid of Linuxulator kernel build options.

Stop confusing people, retire COMPAT_LINUX and COMPAT_LINUX32 kernel
build options. Since we have 32 and 64 bit Linux emulators, we can't build both
emulators together into the kernel. I don't think it matters, Linux emulation
depends on loadable modules (via rc).

Cut LINPROCFS and LINSYSFS for consistency.

PR: 215061
Reviewed by: bcr (manpages), trasz
Differential Revision: https://reviews.freebsd.org/D30751
MFC after: 2 weeks


# a29bff7a 07-Apr-2021 Greg V <greg@unrelenting.technology>

smbios: support getting address from EFI

On some systems (e.g. Lenovo ThinkPad X240, Apple MacBookPro12,1)
the SMBIOS entry point is not found in the <0xFFFFF space.

Follow the SMBIOS spec and use the EFI Configuration Table for
locating the entry point on EFI systems.

Reviewed by: rpokala, dab
MFC after: 1 week
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D29276


# aa3ea612 31-Mar-2021 Konstantin Belousov <kib@FreeBSD.org>

x86: remove gcov kernel support

Reviewed by: jhb
Sponsored by: The FreeBSD Foundation
Differential revision: https://reviews.freebsd.org/D29529


# aa776623 04-Feb-2021 Muhammad Moinur Rahman <bofh@FreeBSD.org>

Add a comment notifying that "device axp" requires miibus for build.

Although if RJ-45 interface is not being used the miibus is not required
but miibus is a build time dependency.

Reviewed by: imp, manu, rajesh1.kumar@amd.com
Approved by: imp, manu, rajesh1.kumar@amd.com
Differential Revision: https://reviews.freebsd.org/D28465


# b42a2ea5 25-Jan-2021 Mateusz Guzik <mjg@FreeBSD.org>

Remove ndis(4) remnants from kernel configs

Unbreaks LINT kernels.


# 0f0379fa 09-Jan-2021 Vladimir Kondratyev <wulf@FreeBSD.org>

hid: Add recently imported drivers to NOTES

Reviewed by: hselasky
Differential revision: https://reviews.freebsd.org/D28060


# a4a10b37 30-Nov-2020 Toomas Soome <tsoome@FreeBSD.org>

Add VT driver for VBE framebuffer device

Implement vt_vbefb to support Vesa Bios Extensions (VBE) framebuffer with VT.
vt_vbefb is built based on vt_efifb and is assuming similar data for
initialization, use MODINFOMD_VBE_FB to identify the structure vbe_fb
in kernel metadata.

struct vbe_fb, is populated by boot loader, and is passed to kernel via
metadata payload.

Differential Revision: https://reviews.freebsd.org/D27373


# 72143e89 05-Nov-2020 Mark Johnston <markj@FreeBSD.org>

Add qat(4)

This provides an OpenCrypto driver for Intel QuickAssist devices. The
driver was initially ported from NetBSD and comes with a few
improvements:
- support for GMAC/AES-GCM, AES-CTR and AES-XTS, and support for
SHA/HMAC-authenticated encryption
- support for detaching the driver
- various bug fixes
- DH895X support

Discussed with: jhb
MFC after: 3 days
Sponsored by: Rubicon Communications, LLC (Netgate)
Differential Revision: https://reviews.freebsd.org/D26963


# ba610be9 20-Oct-2020 John Baldwin <jhb@FreeBSD.org>

Add a kernel crypto driver using assembly routines from OpenSSL.

Currently, this supports SHA1 and SHA2-{224,256,384,512} both as plain
hashes and in HMAC mode on both amd64 and i386. It uses the SHA
intrinsics when present similar to aesni(4), but uses SSE/AVX
instructions when they are not.

Note that some files from OpenSSL that normally wrap the assembly
routines have been adapted to export methods usable by 'struct
auth_xform' as is used by existing software crypto routines.

Reviewed by: gallatin, jkim, delphij, gnn
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D26821


# 7113afc8 11-Oct-2020 Emmanuel Vadot <manu@FreeBSD.org>

10Gigabit Ethernet driver for AMD SoC

This patch has the driver for 10Gigabit Ethernet controller in AMD
SoC. This driver is written compatible to the Iflib framework. The
existing driver is for the old version of hardware. The submitted
driver here is for the recent versions of the hardware where the Ethernet
controller is PCI-E based.

Submitted by: Rajesh Kumar <rajesh1.kumar@amd.com>
MFC after: 1 month
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D25793


# 90b8c0ea 02-Oct-2020 Emmanuel Vadot <manu@FreeBSD.org>

Fix LINT: Add backlight to NOTES


# f9ba2bbe 23-Sep-2020 Warner Losh <imp@FreeBSD.org>

Use envvar rather than nonstandard hint. lines

The NOTES files have a bunch of hint lines that are removed when
generating LINT. However, we can achieve the same effect by prepending
each of the lines with 'envvar' so the NOTES files become standard
config(8) files. No functional changes as the sed script to generate
the LINT files filters these either way.

Suggested by: kevans


# fb702b44 28-Aug-2020 Matt Macy <mmacy@FreeBSD.org>

ZFS: clarify dependencies for static linking


# 71d10453 26-May-2020 Eric Joyner <erj@FreeBSD.org>

ice(4): Introduce new driver for Intel E800 Ethernet controllers

The ice(4) driver is the driver for the Intel E8xx series Ethernet
controllers; currently with codenames Columbiaville and
Columbia Park.

These new controllers support 100G speeds, as well as introducing
more queues, better virtualization support, and more offload
capabilities. Future work will enable virtual functions (like
in ixl(4)) and the other functionality outlined above.

For full functionality, the kernel should be compiled with
"device ice_ddp" like in the amd64 NOTES file, and/or
ice_ddp_load="YES" should be added to /boot/loader.conf so that
the DDP package file included in this commit can be downloaded
to the adapter. Otherwise, the adapter will fall back to a single
queue mode with limited functionality.

A man page for this driver will be forthcoming.

MFC after: 1 month
Relnotes: yes
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D21959


# d8c51c6f 05-Mar-2020 Leandro Lupori <luporl@FreeBSD.org>

[aacraid] Port driver to big-endian

Port aacraid driver to big-endian (BE) hosts.

The immediate goal of this change is to make it possible to use the
aacraid driver on PowerPC64 machines that have Adaptec Series 8 SAS
controllers.

Adapters supported by this driver expect FIB contents in little-endian
(LE) byte order. All FIBs have a fixed header part as well as a data
part that depends on the command being issued to the controller.

In this way, on BE hosts, the FIB header and all FIB data structures
used in aacraid.c and aacraid_cam.c need to be converted to LE before
being sent to the adapter and converted to BE when coming from it.

The functions to convert each struct are on aacraid_endian.c.
For little-endian (LE) targets, they are macros that expand
to nothing.
In some cases, when only a few fields of a large structure are used,
the fields are converted inline, by the code using them.

PR: 237463
Reviewed by: jhibbits
Sponsored by: Eldorado Research Institute (eldorado.org.br)
Differential Revision: https://reviews.freebsd.org/D23887


# 2ae3f52c 30-Oct-2019 Edward Tomasz Napierala <trasz@FreeBSD.org>

There's nothing architecture specific in "options STATS"; move it from
sys/amd64/conf/NOTES to sys/conf/NOTES.

Suggested by: jhb@
Sponsored by: Klara Inc, Netflix


# edca4938 16-Oct-2019 Andriy Gapon <avg@FreeBSD.org>

itwd(4): driver for watchdog function in ITE Super I/O chips

The chips are commonly named with "IT" prefix.

MFC after: 19 days


# f2521a76 09-Oct-2019 Doug Ambrisko <ambrisko@FreeBSD.org>

This driver attaches to the Intel VMD drive and connects a new PCI domain
starting at the max. domain, and then work down. Then existing FreeBSD
drivers will attach. Interrupt routing from the VMD MSI-X to the NVME
drive is not well known, so any interrupt is sent to all children that
register.

VROC used Intel meta data so graid(8) works with it. However, graid(8)
supports RAID 0,1,10 for read and write. I have some early code to
support writes with RAID 5. Note that RAID 5 can have life issues
with SSDs since it can cause write amplification from updating the parity
data.

Hot plug support needs a change to skip the following check to work:
if (pcib_request_feature(dev, PCI_FEATURE_HP) != 0) {
in sys/dev/pci/pci_pci.c.

Looked at by: imp, rpokala, bcr
Differential Revision: https://reviews.freebsd.org/D21383


# 1a13f2e6 07-Oct-2019 Edward Tomasz Napierala <trasz@FreeBSD.org>

Introduce stats(3), a flexible statistics gathering API.

This provides a framework to define a template describing
a set of "variables of interest" and the intended way for
the framework to maintain them (for example the maximum, sum,
t-digest, or a combination thereof). Afterwards the user
code feeds in the raw data, and the framework maintains
these variables inside a user-provided, opaque stats blobs.
The framework also provides a way to selectively extract the
stats from the blobs. The stats(3) framework can be used in
both userspace and the kernel.

See the stats(3) manual page for details.

This will be used by the upcoming TCP statistics gathering code,
https://reviews.freebsd.org/D20655.

The stats(3) framework is disabled by default for now, except
in the NOTES kernel (for QA); it is expected to be enabled
in amd64 GENERIC after a cool down period.

Reviewed by: sef (earlier version)
Obtained from: Netflix
Relnotes: yes
Sponsored by: Klara Inc, Netflix
Differential Revision: https://reviews.freebsd.org/D20477


# d4565741 29-Jul-2019 Xin LI <delphij@FreeBSD.org>

Remove gzip'ed a.out support.

The current implementation of gzipped a.out support was based
on a very old version of InfoZIP which ships with an ancient
modified version of zlib, and was removed from the GENERIC
kernel in 1999 when we moved to an ELF world.

PR: 205822
Reviewed by: imp, kib, emaste, Yoshihiro Ota <ota at j.email.ne.jp>
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D21099


# 6683132d 01-Jul-2019 Alexander Motin <mav@FreeBSD.org>

Add driver for NTB in AMD SoC.

This patch is the driver for NTB hardware in AMD SoCs (ported from Linux)
and enables the NTB infrastructure like Doorbells, Scratchpads and Memory
window in AMD SoC. This driver has been validated using ntb_transport and
if_ntb driver already available in FreeBSD.

Submitted by: Rajesh Kumar <rajesh1.kumar@amd.com>
MFC after: 1 month
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D18774


# e3722b78 01-Jul-2019 Andriy Gapon <avg@FreeBSD.org>

add superio driver

The goal of this driver is consolidate information about SuperIO chips
and to provide for peaceful coexistence of drivers that need to access
SuperIO configuration registers.

While SuperIO chips can host various functions most of them are
discoverable and accessible without any knowledge of the SuperIO.
Examples are: keyboard and mouse controllers, UARTs, floppy disk
controllers. SuperIO-s also provide non-standard functions such as
GPIO, watchdog timers and hardware monitoring. Such functions do
require drivers with a knowledge of a specific SuperIO.

At this time the driver supports a number of ITE and Nuvoton (fka
Winbond) SuperIO chips.
There is a single driver for all devices. So, I have not done the usual
split between the hardware driver and the bus functionality. Although,
superio does act as a bus for devices that represent known non-standard
functions of a SuperIO chip. The bus provides enumeration of child
devices based on the hardcoded knowledge of such functions. The
knowledge as extracted from datasheets and other drivers.
As there is a single driver, I have not defined a kobj interface for it.
So, its interface is currently made of simple functions.
I think that we can the flexibility (and complications) when we actually
need it.

I am planning to convert nctgpio and wbwd to superio bus very soon.
Also, I am working on itwd driver (watchdog in ITE SuperIO-s).
Additionally, there is ithwm driver based on the reverted sensors
import, but I am not sure how to integrate it given that we still lack
any sensors interface.

Discussed with: imp, jhb
MFC after: 7 weeks
Differential Revision: https://reviews.freebsd.org/D8175


# 05aa6e58 17-May-2019 Brooks Davis <brooks@FreeBSD.org>

FCP-101: Remove ed(4).

Relnotes: yes
FCP: https://github.com/freebsd/fcp/blob/master/fcp-0101.md
Reviewed by: jhb, imp
Differential Revision: https://reviews.freebsd.org/D20230


# f7ab0158 13-Apr-2019 Warner Losh <imp@FreeBSD.org>

Move mpr/mps drivers from per-arch NOTES files into the MI notes
file. They are in more arches they they aren't. Add appropriate
nodevice directives in powerpc and arm.


# d99880cf 04-Apr-2019 Warner Losh <imp@FreeBSD.org>

Add mpr, mps, mpt to NOTES file

Add these to all the architectures that these are in the GENERIC
kernel.


# 030963c0 06-Mar-2019 Matt Macy <mmacy@FreeBSD.org>

add gcov to LINT build

MFC after: 1 week


# b1ece243 19-Feb-2019 Warner Losh <imp@FreeBSD.org>

Remove drm from LINT kernels

drm was accidentally left in the LINT kernels.

Pointy hat to: imp


# e26563b8 06-Feb-2019 Ed Maste <emaste@FreeBSD.org>

Retire SPX_HACK option unused after r342244


# 628888f0 19-Dec-2018 Mateusz Guzik <mjg@FreeBSD.org>

Remove iBCS2, part2: general kernel

Reviewed by: kib (previous version)
Sponsored by: The FreeBSD Foundation


# f1bac7bb 13-Nov-2018 Matt Macy <mmacy@FreeBSD.org>

Add ZFS to amd64 NOTES to catch future breakage of static linking


# 49a93324 21-Oct-2018 Warner Losh <imp@FreeBSD.org>

Remove stg(4) driver

stg(4) is marked as gone in 12. Remove it. There are no sightings of
it in the nycbug dmesg database. It was for an obscure SCSI card that
sold mostly in Japan, and was especially popilar among pc98 hackers in
the 4.x time frame. It was also only enabled on i386.

Relnote: Yes


# 08204c2c 21-Oct-2018 Warner Losh <imp@FreeBSD.org>

Remove nsp(4) driver

nsp(4) is marked as gone in 12. Remove it. There are no sightings of
it in the nycbug dmesg database. It was for an obscure SCSI card that
sold mostly in Japan, and was especially popilar among pc98 hackers in
the 4.x time frame. It was also only enabled on i386.

Relnote: Yes


# 2dfd3588 21-Oct-2018 Warner Losh <imp@FreeBSD.org>

Remove ncv(4) driver

ncv(4) is marked as gone in 12. Remove it. There are no sightings of
it in the nycbug dmesg database. It was for an obscure SCSI card that
sold mostly in Japan, and was especially popilar among pc98 hackers in
the 4.x time frame..

Relnote: Yes


# 77c1fcec 12-Oct-2018 Eric Joyner <erj@FreeBSD.org>

ixl/iavf(4): Change ixlv to iavf and update it to use iflib(9)

Finishes the conversion of the 40Gb Intel Ethernet drivers to iflib(9) for
FreeBSD 12.0, and fixes numerous bugs in both ixl(4) and iavf(4).

This commit also re-adds the VF driver to GENERIC since it now compiles and
functions.

The VF driver name was changed from ixlv(4) to iavf(4) because the VF driver is
now intended to be used with future products, not just with Fortville/Fort Park
VFs.

A man page update that documents these drivers is forthcoming in a separate
commit.

Reviewed by: sbruno@, kbowling@
Tested by: jeffrey.e.pieper@intel.com
Approved by: re (gjb@)
Relnotes: yes
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D16429


# 592ffb21 23-Aug-2018 Warner Losh <imp@FreeBSD.org>

Revert drm2 removal.

Revert r338177, r338176, r338175, r338174, r338172

After long consultations with re@, core members and mmacy, revert
these changes. Followup changes will be made to mark them as
deprecated and prent a message about where to find the up-to-date
driver. Followup commits will be made to make this clear in the
installer. Followup commits to reduce POLA in ways we're still
exploring.

It's anticipated that after the freeze, this will be removed in
13-current (with the residual of the drm2 code copied to
sys/arm/dev/drm2 for the TEGRA port's use w/o the intel or
radeon drivers).

Due to the impending freeze, there was no formal core vote for
this. I've been talking to different core members all day, as well as
Matt Macey and Glen Barber. Nobody is completely happy, all are
grudgingly going along with this. Work is in progress to mitigate
the negative effects as much as possible.

Requested by: re@ (gjb, rgrimes)


# d157fbd5 21-Aug-2018 Matt Macy <mmacy@FreeBSD.org>

Remove legacy drm and drm2 from tree

As discussed on the MLs drm2 conflicts with the ports' version and there
is no upstream for most if not all of drm. Both have been merged in to
a single port.

Users on powerpc, 32-bit hardware, or with GPUs predating Radeon
and i915 will need to install the graphics/drm-legacy-kmod. All
other users should be able to use one of the LinuxKPI-based ports:
graphics/drm-stable-kmod, graphics/drm-next-kmod, graphics/drm-devel-kmod.

MFC: never
Approved by: core@


# 40fd4495 31-Jul-2018 Mark Johnston <markj@FreeBSD.org>

COMPAT_LINUX32 has not depended on COMPAT_43 in some time.

MFC after: 3 days


# 164138e7 30-Jul-2018 Kyle Evans <kevans@FreeBSD.org>

amd64/GENERIC: Enable EFIRT by default

As noted in UDPATING, the new loader tunable efi.rt_disabled may be used to
disable EFIRT at runtime. It should have no effect if you are not booted via
UEFI boot.

MFC after: 6 weeks


# 92689b3f 18-Jun-2018 Matt Macy <mmacy@FreeBSD.org>

remove ixl iwarp and ixlv from the build until they are in a working state


# c507c512 02-Jun-2018 Bruce Evans <bde@FreeBSD.org>

Finish COMPAT_AOUT support for amd64. It wasn't in any amd64 or MI
file in /sys/conf, so was unavailable in configurations that don't use
modules, and was not testable or notable in NOTES. Its normal
configuration (not using a module) is still silently deprecated in
aout(4) by not mentioning it there.

Update i386 NOTES for COMPAT_AOUT. It is not i386-only, or even very MD.
Sort its entry better.

Finish gzip configuration (but not support) for amd64. gzip is really
gzipped aout. It is currently broken even for i386 (a call to vm fails).
amd64 has always attempted to configure and test it, but it depends on
COMPAT_AOUT (as noted). The bug that it depends on unconfigured files
was not detected since it is configured as a device. All other optional
image activators are configured properly using an option.


# 14ec0f3a 26-Apr-2018 Sean Bruno <sbruno@FreeBSD.org>

move smartpqi(4) controller out of NOTES and into sys/amd64/NOTES to
appease LINT

Submitted by: rpokala
Reported by: npn


# 24f93aa0 02-Mar-2018 Ravi Pokala <rpokala@FreeBSD.org>

imcsmb(4): Intel integrated Memory Controller (iMC) SMBus controller driver

imcsmb(4) provides smbus(4) support for the SMBus controller functionality
in the integrated Memory Controllers (iMCs) embedded in Intel Sandybridge-
Xeon, Ivybridge-Xeon, Haswell-Xeon, and Broadwell-Xeon CPUs. Each CPU
implements one or more iMCs, depending on the number of cores; each iMC
implements two SMBus controllers (iMC-SMBs).

*** IMPORTANT NOTE ***
Because motherboard firmware or the BMC might try to use the iMC-SMBs for
monitoring DIMM temperatures and/or managing an NVDIMM, the driver might
need to temporarily disable those functions, or take a hardware interlock,
before using the iMC-SMBs. Details on how to do this may vary from board to
board, and the procedure may be proprietary. It is strongly suggested that
anyone wishing to use this driver contact their motherboard vendor, and
modify the driver as described in the manual page and in the driver itself.
(For what it's worth, the driver as-is has been tested on various SuperMicro
motherboards.)

Reviewed by: avg, jhb
MFC after: 1 week
Relnotes: yes
Sponsored by: Panasas
Differential Revision: https://reviews.freebsd.org/D14447
Discussed with: avg, ian, jhb
Tested by: allanjude (previous version), Panasas


# 33ec1ccb 13-Feb-2018 Hans Petter Selasky <hselasky@FreeBSD.org>

Import the mthca kernel side infiniband driver from Linux 4.9 and fix
compilation under FreeBSD. The mthca driver was temporarily removed as
part of the Linux 4.9 RoCE/infinband upgrade.

Top commit in Linux source tree:
69973b830859bc6529a7a0468ba0d80ee5117826

Sponsored by: Mellanox Technologies


# 8dee9a7a 13-Nov-2017 Hans Petter Selasky <hselasky@FreeBSD.org>

Remove no longer supported mthca driver.

Sponsored by: Mellanox Technologies


# 907f50fe 05-Sep-2017 Conrad Meyer <cem@FreeBSD.org>

Add smn(4) driver for AMD System Management Network

AMD Family 17h CPUs have an internal network used to communicate between
the host CPU and the PSP and SMU coprocessors. It exposes a simple
32-bit register space.

Reviewed by: avg (no +1), mjoras, truckman
Sponsored by: Dell EMC Isilon
Differential Revision: https://reviews.freebsd.org/D12217


# ed9652da 30-Aug-2017 Alexander Motin <mav@FreeBSD.org>

Add NTB driver for PLX/Avago/Broadcom PCIe switches.

This driver supports both NTB-to-NTB and NTB-to-Root Port modes (though
the second with predictable complications on hot-plug and reboot events).
I tested it with PEX 8717 and PEX 8733 chips, but expect it should work
with many other compatible ones too. It supports up to two NT bridges
per chip, each of which can have up to 2 64-bit or 4 32-bit memory windows,
6 or 12 scratchpad registers and 16 doorbells. There are also 4 DMA engines
in those chips, but they are not yet supported.

While there, rename Intel NTB driver from generic ntb_hw(4) to more specific
ntb_hw_intel(4), so now it is on par with this new ntb_hw_plx(4) driver and
alike to Linux naming.

MFC after: 2 weeks
Sponsored by: iXsystems, Inc.


# 6ef95661 03-Jul-2017 Sean Bruno <sbruno@FreeBSD.org>

Garbage collect kernel option TWA_FLASH_FIRMWARE

Submitted by: kevin.bowling0kev009.com
Differential Revision: https://reviews.freebsd.org/D11387


# aa6b3456 11-Mar-2017 Emmanuel Vadot <manu@FreeBSD.org>

Remove i915drm and radeondrm from NOTES and conf.
This unbreak LINT kernel.

Reported by: lwhsu


# efe3b0de 27-Feb-2017 Gleb Smirnoff <glebius@FreeBSD.org>

Remove SVR4 (System V Release 4) binary compatibility support.

UNIX System V Release 4 is operating system released in 1988. It ceased
to exist in early 2000-s.


# cb6b8299 09-Feb-2017 Eric Joyner <erj@FreeBSD.org>

ixl(4): Update to 1.7.12-k

Refresh upstream driver before impending conversion to iflib.

Major new features:

- Support for Fortville-based 25G adapters
- Support for I2C reads/writes

(To prevent getting or sending corrupt data, you should set
dev.ixl.0.debug.disable_fw_link_management=1 when using I2C
[this will disable link!], then set it to 0 when done. The driver implements
the SIOCGI2C ioctl, so ifconfig -v works for reading I2C data,
but there are read_i2c and write_i2c sysctls under the .debug sysctl tree
[the latter being useful for upper page support in QSFP+]).

- Addition of an iWARP client interface (so the future iWARP driver for
X722 devices can communicate with the base driver).
- Compiling this option in is enabled by default, with "options IXL_IW" in
GENERIC.

Differential Revision: https://reviews.freebsd.org/D9227
Reviewed by: sbruno
MFC after: 2 weeks
Sponsored by: Intel Corporation


# 97549c34 30-Sep-2016 Hans Petter Selasky <hselasky@FreeBSD.org>

Move the ConnectX-3 and ConnectX-2 driver from sys/ofed into sys/dev/mlx4
like other PCI network drivers. The sys/ofed directory is now mainly
reserved for generic infiniband code, with exception of the mthca driver.

- Add new manual page, mlx4en(4), describing how to configure and load
mlx4en.

- All relevant driver C-files are now prefixed mlx4, mlx4_en and
mlx4_ib respectivly to avoid object filename collisions when compiling
the kernel. This also fixes an issue with proper dependency file
generation for the C-files in question.

- Device mlxen is now device mlx4en and depends on device mlx4, see
mlx4en(4). Only the network device name remains unchanged.

- The mlx4 and mlx4en modules are now built by default on i386 and
amd64 targets. Only building the mlx4ib module depends on
WITH_OFED=YES .

Sponsored by: Mellanox Technologies


# bc3ad3a1 21-Sep-2016 Konstantin Belousov <kib@FreeBSD.org>

Add kernel interfaces to call EFI Runtime Services.

Runtime services require special execution environment for the call.
Besides that, OS must inform firmware about runtime virtual memory map
which will be active during the calls, with the SetVirtualAddressMap()
runtime call, done while the 1:1 mapping is still used. There are two
complication: the SetVirtualAddressMap() effectively must be done from
loader, which needs to know kernel address map in advance. More,
despite not explicitely mentioned in the specification, both 1:1 and
the map passed to SetVirtualAddressMap() must be active during the
SetVirtualAddressMap() call. Second, there are buggy BIOSes which
require both mappings active during runtime calls as well, most likely
because they fail to identify all relocations to perform.

On amd64, we can get rid of both problems by providing 1:1 mapping for
the duration of runtime calls, by temprorary remapping user addresses.
As result, we avoid the need for loader to know about future kernel
address map, and avoid bugs in BIOSes. Typically BIOS only maps
something in low 4G. If not runtime bugs, we would take advantage of
the DMAP, as previous versions of this patch did.

Similar but more complicated trick can be used even for i386 and 32bit
runtime, if and when the EFI boot on i386 is supported. We would need
a trampoline page, since potentially whole 4G of VA would be switched
on calls, instead of only userspace portion on amd64.

Context switches are disabled for the duration of the call, FPU access
is granted, and interrupts are not disabled. The later is possible
because kernel is mapped during calls.

To test, the sysctl mib debug.efi_time is provided, setting it to 1
makes one call to EFI get_time() runtime service, on success the efitm
structure is printed to the control terminal. Load efirt.ko, or add
EFIRT option to the kernel config, to enable code.

Discussed with: emaste, imp
Tested by: emaste (mac, qemu)
Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks


# db4b3cda 06-Sep-2016 John Baldwin <jhb@FreeBSD.org>

Remove remnants of PERFMON and I586_PMC_GUPROF from amd64.

These options were never fully ported over from i386.


# 22f2f875 24-Aug-2016 Ed Schouten <ed@FreeBSD.org>

Make execution of 32-bit CloudABI executables work on amd64.

A nice thing about requiring a vDSO is that it makes it incredibly easy
to provide full support for running 32-bit processes on 64-bit systems.
Instead of letting the kernel be responsible for composing/decomposing
64-bit arguments across multiple registers/stack slots, all of this can
now be done in the vDSO. This means that there is no need to provide
duplicate copies of certain system calls, like the sys_lseek() and
freebsd32_lseek() we have for COMPAT_FREEBSD32.

This change imports a new vDSO from the CloudABI repository that has
automatically generated code in it that copies system call arguments
into a buffer, padding them to eight bytes and zero-extending any
pointers/size_t arguments. After returning from the kernel, it does the
inverse: extracting return values, in the process truncating
pointers/size_t values to 32 bits.

Obtained from: https://github.com/NuxiNL/cloudabi


# c1c97642 19-Aug-2016 John Baldwin <jhb@FreeBSD.org>

Remove the si(4) driver and sicontrol(8) for Specialix serial cards.

The si(4) driver supported multiport serial adapters for ISA, EISA, and
PCI buses. This driver does not use bus_space, instead it depends on
direct use of the pointer returned by rman_get_virtual(). It is also
still locked by Giant and calls for patch testing to convert it to use
bus_space were unanswered.

Relnotes: yes


# edafb5a3 03-May-2016 Pedro F. Giffuni <pfg@FreeBSD.org>

sys/amd64: Small spelling fixes.

No functional change.


# e131ba36 29-Apr-2016 John Baldwin <jhb@FreeBSD.org>

Move 'device pci' for the PCI bus driver to the MI NOTES file.

The PCI bus was already listed in all of the MD NOTES files and the
driver should at least compile on all platforms.


# 0c29fe6d 14-Apr-2016 Sepherosa Ziehau <sephe@FreeBSD.org>

hyperv: Deprecate HYPERV option by moving Hyper-V IDT vector into vmbus

Submitted by: Jun Su <junsu microsoft com>
Reviewed by: jhb, kib, sephe
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D5910


# e974f91c 24-Aug-2015 Conrad Meyer <cem@FreeBSD.org>

Import ioat(4) driver

I/OAT is also referred to as Crystal Beach DMA and is a Platform Storage
Extension (PSE) on some Intel server platforms.

This driver currently supports DMA descriptors only and is part of a
larger effort to upstream an interconnect between multiple systems using
the Non-Transparent Bridge (NTB) PSE.

For now, this driver is only built on AMD64 platforms. It may be ported
to work on i386 later, if that is desired. The hardware is exclusive to
x86.

Further documentation on ioat(4), including API documentation and usage,
can be found in the new manual page.

Bring in a test tool, ioatcontrol(8), in tools/tools/ioat. The test
tool is not hooked up to the build and is not intended for end users.

Submitted by: jimharris, Carl Delsey <carl.r.delsey@intel.com>
Reviewed by: jimharris (reviewed my changes)
Approved by: markj (mentor)
Relnotes: yes
Sponsored by: Intel
Sponsored by: EMC / Isilon Storage Division
Differential Revision: https://reviews.freebsd.org/D3456


# d0da90b1 20-Jul-2015 Ed Schouten <ed@FreeBSD.org>

Describe COMPAT_CLOUDABI64 in the amd64 configuration NOTES file.


# 32cd0147 19-Jul-2015 Mark Johnston <markj@FreeBSD.org>

Implement the lockstat provider using SDT(9) instead of the custom provider
in lockstat.ko. This means that lockstat probes now have typed arguments and
will utilize SDT probe hot-patching support when it arrives.

Reviewed by: gnn
Differential Revision: https://reviews.freebsd.org/D2993


# 4e1bc9a0 07-Jul-2015 Achim Leubner <achim@FreeBSD.org>

Driver 'pmspcv' added. Supports PMC-Sierra PM8001/8081/8088/8089/8074/8076/8077 SAS/SATA HBA Controllers.


# 4f4d15f0 10-Jun-2015 Ruslan Bukin <br@FreeBSD.org>

Allow DTrace to be compiled-in to the kernel.
This will require for AArch64 as we dont have modules yet.

Sponsored by: HEIF5
Sponsored by: ARM Ltd.
Differential Revision: https://reviews.freebsd.org/D1997


# da2f98a1 29-Apr-2015 Wei Hu <whu@FreeBSD.org>

Microsoft vmbus, storage and other related driver enhancements for HyperV.
- Vmbus multi channel support.
- Vector interrupt support.
- Signal optimization.
- Storvsc driver performance improvement.
- Scatter and gather support for storvsc driver.
- Minor bug fix for KVP driver.
Thanks royger, jhb and delphij from FreeBSD community for the reviews
and comments. Also thanks Hovy Xu from NetApp for the contributions to
the storvsc driver.

PR: 195238
Submitted by: whu
Reviewed by: royger, jhb, delphij
Approved by: royger
MFC after: 2 weeks
Relnotes: yes
Sponsored by: Microsoft OSTC


# ca7fe84a 15-Jan-2015 Navdeep Parhar <np@FreeBSD.org>

Plug cxgbe(4) back into !powerpc && !arm builds, instead of building it
on amd64 only.


# 183dc986 31-Dec-2014 Navdeep Parhar <np@FreeBSD.org>

Temporarily unplug cxgbe(4) from !amd64 builds.


# 91b050b2 25-Dec-2014 Poul-Henning Kamp <phk@FreeBSD.org>

Use compiled in default keymaps which are available both in syscons and vt.


# 217eb125 03-Nov-2014 Bryan Venteicher <bryanv@FreeBSD.org>

Add VirtIO console to the x86 NOTES and files

Requested by: jhb


# 14f2533c 23-Sep-2014 Bjoern A. Zeeb <bz@FreeBSD.org>

As per [1] Intel only supports this driver on 64bit platforms.
For now restrict it to amd64. Other architectures might be
re-added later once tested.

Remove the drivers from the global NOTES and files files and move
them to the amd64 specifics.
Remove the drivers from the i386 modules build and only leave the
amd64 version.

Rather than depending on "inet" depend on "pci" and make sure that
ixl(4) and ixlv(4) can be compiled independently [2]. This also
allows the drivers to build properly on IPv4-only or IPv6-only
kernels.

PR: 193824 [2]
Reviewed by: eric.joyner intel.com
MFC after: 3 days

References:
[1] http://lists.freebsd.org/pipermail/svn-src-all/2014-August/090470.html


# 669eac89 20-Aug-2014 John Baldwin <jhb@FreeBSD.org>

Fix build of si(4) and enable it in LINT on amd64 and i386.


# 67e3b91b 14-Aug-2014 Gavin Atkinson <gavin@FreeBSD.org>

Update i386/NOTES and amd64/NOTES files to contain the complete list of
firmwares for iwn(4) and sort them.

MFC after: 1 week


# ccbb7b5e 30-Jun-2014 Ed Maste <emaste@FreeBSD.org>

Add vt(4) devices and options to NOTES

Reviewed by: marius (earlier version)


# 81e3caaf 21-May-2014 Justin Hibbits <jhibbits@FreeBSD.org>

imagact_binmisc builds for all supported architectures, so enable it for all.

Any bugs in execution will be dealt with as they crop up.

MFC after: 3 weeks
Relnotes: Yes


# 804e0170 02-May-2014 Eitan Adler <eadler@FreeBSD.org>

lindev(4): finish the partial commit in r265212

lindev(4) was only used to provide /dev/full which is now a standard feature of
FreeBSD. /dev/full was never linux-specific and provides a generally useful
feature.

Document this in UPDATING and bump __FreeBSD_version. This will be documented
in the PH shortly.

Reported by: jkim


# 84cb72d1 09-Apr-2014 Sean Bruno <sbruno@FreeBSD.org>

Really, really, really only allow this option for amd64/i386 builds.

Submitted by: imp@ and tinderbox


# d4f95c88 18-Mar-2014 Warner Losh <imp@FreeBSD.org>

In kernel config files, it is supposed to be 'options<space><tab>' not
'options<tab><tab>', per long standing (but recently not so strictly
enforced) convention.


# 7f47cbd3 15-Feb-2014 Christian Brueffer <brueffer@FreeBSD.org>

Retire the nve(4) driver; nfe(4) has been the default driver for NVIDIA
nForce MCP adapters for a long time.

Yays: jhb, remko, yongari
Nays: none on the current and stable lists


# 10c40180 17-Jan-2014 Bryan Venteicher <bryanv@FreeBSD.org>

Add very simple virtio_random(4) driver to harvest entropy from host

Reviewed by: markm (random bits only)


# aa27ed45 06-Jan-2014 Jens Schweikhardt <schweikh@FreeBSD.org>

Correct a grammo in a comment; remove white space at EOL.


# 69eb2b17 28-Oct-2013 Gleb Smirnoff <glebius@FreeBSD.org>

Include XEN and HyperV into amd64 LINT.


# 29904f46 04-Oct-2013 John-Mark Gurney <jmg@FreeBSD.org>

add aesni module to i386 and amd64 NOTES...

Approved by: re (gjb)


# 4e400768 20-Sep-2013 David Christensen <davidch@FreeBSD.org>

Substantial rewrite of bxe(4) to add support for the BCM57712 and
BCM578XX controllers.

Approved by: re
MFC after: 4 weeks


# ddb4ffd0 06-Sep-2013 Bryan Venteicher <bryanv@FreeBSD.org>

Add vmx device to the i386 and amd64 NOTES files


# 46be218d 21-Aug-2013 David E. O'Brien <obrien@FreeBSD.org>

The PADLOCK_RNG and RDRAND_RNG kernel options are now devices.
Thus "device padlock_rng" and "device rdrand_rng" should be
used instead of "options PADLOCK_RNG" & "options RDRAND_RNG".

Requested by: so@ (des)
Submitted by: obrien, arthurmesh@gmail.com
Obtained from: Juniper Networks


# 1fdeb165 06-Jul-2013 Xin LI <delphij@FreeBSD.org>

Import HighPoint DC Series Data Center HBA (DC7280 and R750) driver.
This driver works for FreeBSD/i386 and FreeBSD/amd64 platforms.

Many thanks to HighPoint for providing this driver.

MFC after: 1 day


# dce93cd0 24-May-2013 Achim Leubner <achim@FreeBSD.org>

Driver 'aacraid' added. Supports Adaptec by PMC RAID controller families Series 6, 7, 8 and upcoming products. Older Adaptec RAID controller families are supported by the 'aac' driver.

Approved by: scottl (mentor)


# e47937d1 29-Apr-2013 Carl Delsey <carl@FreeBSD.org>

Add a new driver to support the Intel Non-Transparent Bridge(NTB).

The NTB allows you to connect two systems with this device using a PCI-e
link. The driver is made of two modules:
- ntb_hw which is a basic hardware abstraction layer for the device.
- if_ntb which implements the ntb network device and the communication
protocol.

The driver is limited at the moment to CPU memcpy instead of using DMA, and
only Back-to-Back mode is supported. Also the network device isn't full
featured yet. These changes will be coming soon. The DMA change will also
bring in the ioat driver from the project branch it is on now.

This is an initial port of the GPL/BSD Linux driver contributed by Jon Mason
from Intel. Any bugs are my contributions.

Sponsored by: Intel
Reviewed by: jimharris, joel (man page only)
Approved by: jimharris (mentor)


# 0cfbcf8c 06-Mar-2013 Bryan Venteicher <bryanv@FreeBSD.org>

Remove the virtio dependency entry for the VirtIO device drivers. This
will prevent the kernel from linking if the device driver are included
without the virtio module. Remove pci and scbus for the same reason.

Also explain the relationship and necessity of the virtio and virtio_pci
modules. Currently in FreeBSD, we only support VirtIO PCI, but it could
be replaced with a different interface (like MMIO) and the device
(network, block, etc) will still function.

Requested by: luigi
Approved by: grehan (mentor)
MFC after: 3 days


# ae366ffc 13-Jan-2013 Bryan Venteicher <bryanv@FreeBSD.org>

Add VirtIO to the i386 and amd64 GENERIC kernels

This also removes the kludge from r239009 that covered only
the network driver.

Reviewed by: grehan
Approved by: grehan (mentor)
MFC after: 1 week


# eb85d44f 17-Sep-2012 Jim Harris <jimharris@FreeBSD.org>

Integrate nvme(4) and nvd(4) into the amd64 and i386 builds.

Sponsored by: Intel


# 778eefa4 04-Sep-2012 John Baldwin <jhb@FreeBSD.org>

Fix duplicate entries for mwl(4):
- Move mwlfw from {amd64,i386}/conf/NOTES to sys/conf/NOTES (mwl(4) is
already present in sys/conf/NOTES).
- Remove duplicate mwl(4) entries from {amd64,i386}/conf/NOTES.
- While here, add a description to the sfxge line in amd64/conf/NOTES.


# 4c104449 28-Aug-2012 John Baldwin <jhb@FreeBSD.org>

Fix misspelled "Infiniband".

Submitted by: gcooper
MFC after: 3 days


# ed5a2b61 12-Apr-2012 John Baldwin <jhb@FreeBSD.org>

Add OFED and the associated options and drivers to x86 LINT builds:
- Mark 'sdp' as requiring 'inet'.
- Always include "opt_inet.h" and "opt_inet6.h" and modify the IB
driver Makefiles to honor WITH/WITHOUT_INET/INET6/_SUPPORT options
to determine what should be enabled during a module build.
- Fix the mlxen(4) driver and the core IB code to compile without
if INET is disabled (including when both INET and INET6 are disabled).

Reviewed by: bz
MFC after: 2 weeks


# 20b5d3bf 04-Apr-2012 John Baldwin <jhb@FreeBSD.org>

Add descriptions after the 'device' line for several NICs to match the
existing style.


# 5d4c773b 24-Mar-2012 Alan Cox <alc@FreeBSD.org>

Disable detailed PV entry accounting by default. Add a config option
to enable it.

MFC after: 1 week


# d43d9d10 20-Mar-2012 Alan Cox <alc@FreeBSD.org>

Eliminate vm.pmap.shpgperproc and vm.pmap.pv_entry_max because they no
longer serve any purpose. Prior to r157446, they served a purpose
because there was a fixed amount of kernel virtual address space
reserved for pv entries at boot time. However, since that change pv
entries are accessed through the direct map, and so there is no limit
imposed by a fixed amount of kernel virtual address space.

Fix a couple of nearby style issues.

Reviewed by: jhb, kib
MFC after: 1 week


# 0566170f 06-Mar-2012 Bjoern A. Zeeb <bz@FreeBSD.org>

Provide wbwd(4), a driver for the watchdog timer found on various
Winbond Super I/O chips.

With minor efforts it should be possible the extend the driver to support
further chips/revisions available from Winbond. In the simplest case
only new IDs need to be added, while different chipsets might require
their own function to enter extended function mode, etc.

Sponsored by: Sandvine Incorporated ULC (in 2011)
Reviewed by: emaste, brueffer
MFC after: 2 weeks


# f11c7f63 31-Jan-2012 Jim Harris <jimharris@FreeBSD.org>

Add isci(4) driver for amd64 and i386 targets.

The isci driver is for the integrated SAS controller in the Intel C600
(Patsburg) chipset. Source files in sys/dev/isci directory are
FreeBSD-specific, and sys/dev/isci/scil subdirectory contains
an OS-agnostic library (SCIL) published by Intel to control the SAS
controller. This library is used primarily as-is in this driver, with
some post-processing to better integrate into the kernel build
environment.

isci.4 and a README in the sys/dev/isci directory contain a few
additional details.

This driver is only built for amd64 and i386 targets.

Sponsored by: Intel
Reviewed by: scottl
Approved by: scottl


# 81966bce 28-Dec-2011 Xin LI <delphij@FreeBSD.org>

Import the first release of HighPoint RocketRAID 27xx SAS 6Gb/s HBA card
driver. This driver works for FreeBSD/i386 and FreeBSD/amd64 platforms.

Many thanks to HighPoint for providing this driver.

MFC after: 2 weeks


# 25841e91 19-Dec-2011 Xin LI <delphij@FreeBSD.org>

Add comments in NOTES to say what viawd is.


# 61af1d13 12-Dec-2011 Fabien Thomas <fabient@FreeBSD.org>

Add watchdog support for VIA south bridge chipset.
Tested on VT8251, VX900 but CX700, VX800, VX855 should works.

MFC after: 1 month
Sponsored by: NETASQ


# 7ac6374d 28-Nov-2011 Philip Paeps <philip@FreeBSD.org>

Limit building sfxge(4) in-kernel to amd64 for the time being. We can put it
back after I fix the breakages on some of our more exotic platforms.

While here, add the driver to the amd64 NOTES, so it can be picked up in LINT
builds.


# cee0b197 26-Aug-2011 John Baldwin <jhb@FreeBSD.org>

Make NKPT a kernel option on amd64 so that it can be set to a non-default
value from kernel config files.

Reviewed by: alc
Approved by: re (kib)
MFC after: 1 week


# 136882cf 11-Mar-2011 Andriy Gapon <avg@FreeBSD.org>

amd64/NOTES: use a greater number in KSTACK_PAGES example

This is a minor cosmetic change - the users are more likely to want to
increase (rather than decrease) default kernel stack size,
which is already 4 pages on amd64.

MFC after: 4 days


# a7d5f7eb 19-Oct-2010 Jamie Gritton <jamie@FreeBSD.org>

A new jail(8) with a configuration file, to replace the work currently done
by /etc/rc.d/jail.


# cbf4dac6 19-Sep-2010 Norikatsu Shigemura <nork@FreeBSD.org>

Add support 'device tpm' for amd64.
Add tpm(4)'s default setting to /boot/defaults/loader.conf.
Add 'device tpm' to NOTES for amd64 and i386.

Discussed with: takawata
Approved by: imp (mentor)


# 774f94f1 15-Jul-2010 Bernhard Schmidt <bschmidt@FreeBSD.org>

- Update 6000 firmware to 9.221.4.1
- Add 6050 firmware

MFC after: 2 weeks


# 9e3e64e7 18-Jun-2010 Konstantin Belousov <kib@FreeBSD.org>

Only enable kdtrace hook in the LINT on the architectures that implement it.


# d3646381 17-Jun-2010 Alexander Motin <mav@FreeBSD.org>

Merge COUNT_XINVLTLB_HITS and COUNT_IPIS kernel options from i386 to amd64.
This information can be very valuable for CPU sleep-time (and respectively
idle power consumption) optimization.

Add counters for timer-related IPIs.

Reviewed by: jhb@ (previous version)


# 4ccf64eb 06-Apr-2010 Nathan Whitehorn <nwhitehorn@FreeBSD.org>

MFC r205014,205015:

Provide groundwork for 32-bit binary compatibility on non-x86 platforms,
for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32
option to COMPAT_FREEBSD32, removes some IA32-specific code from MI parts
of the kernel and enhances the freebsd32 compatibility code to support
big-endian platforms.

This MFC is required for MFCs of later changes to the freebsd32
compatibility from HEAD.

Requested by: kib


# 841c0c7e 11-Mar-2010 Nathan Whitehorn <nwhitehorn@FreeBSD.org>

Provide groundwork for 32-bit binary compatibility on non-x86 platforms,
for upcoming 64-bit PowerPC and MIPS support. This renames the COMPAT_IA32
option to COMPAT_FREEBSD32, removes some IA32-specific code from MI parts
of the kernel and enhances the freebsd32 compatibility code to support
big-endian platforms.

Reviewed by: kib, jhb


# aa3d547d 01-Mar-2010 Xin LI <delphij@FreeBSD.org>

MFC x86emu/x86bios emulator and make previously i386 only dpms and vesa
framebuffer driver, etc. work on FreeBSD/amd64.

A significant amount of improvements were done by jkim@ during the recent
months to make vesa(4) work better, over the initial code import. This
work is based on OpenBSD's x86emu implementation and contributed by
paradox <ddkprog yahoo com> and swell.k at gmail com.

Hopefully I have stolen all their work to 8-STABLE :)

All bugs in this commit are mine, as usual.


# c7ea7c46 08-Feb-2010 Rebecca Cran <brucec@FreeBSD.org>

Update documentation for the iwn and iwnfw drivers: they support the 1000, 5150, 6000 and 6050 devices too, with firmware modules for the 4965, 1000, 5000, 5150 and 6000.

Add documentation for mwl and all the wireless firmware drivers.

Approved by: rrs (mentor)


# b1ba33ff 31-Jan-2010 Robert Noland <rnoland@FreeBSD.org>

Welcome drm support for VIA unichrome chips.

MFC after: 2 weeks


# 5e860e7b 20-Dec-2009 Andriy Gapon <avg@FreeBSD.org>

MFC r199969: amdsbwd: new driver for AMD SB600/SB7xx watchdog timer


# 390cee87 18-Dec-2009 John Baldwin <jhb@FreeBSD.org>

- Create a separate section in in the MI NOTES file for PCI wireless NIC
drivers and move bwi(4) there from the PCI Ethernet NIC section.
- Move ath(4) and ral(4) to the MI NOTES file.

Reviewed by: rpaulo


# a1778929 05-Dec-2009 Bjoern A. Zeeb <bz@FreeBSD.org>

MFC r197518:

lindev(4) [1] is supposed to be a collection of linux-specific pseudo
devices that we also support, just not by default (thus only LINT or
module builds by default).

While currently there is only "/dev/full" [2], we are planning to see more
in the future. We may decide to change the module/dependency logic in the
future should the list grow too long.

This is not part of linux.ko as also non-linux binaries like kFreeBSD
userland or ports can make use of this as well.

Suggested by: rwatson [1] (name)
Submitted by: ed [2]
Discussed with: markm, ed, rwatson, kib (weeks ago)
Reviewed by: rwatson, brueffer (prev. version)
PR: kern/68961


# 5022f21b 30-Nov-2009 Andriy Gapon <avg@FreeBSD.org>

amdsbwd: new driver for AMD SB600/SB7xx watchdog timer

The hardware is compliant with WDRT specification, so I originally
considered including generic WDRT watchdog support, but decided
against it, because I couldn't find anyone to the code for me.
WDRT seems to be not very popular.
Besides, generic WDRT porbably requires a slightly different driver
approach.

Reviewed by: des, gavin, rpaulo
MFC after: 3 weeks


# 4507f02e 25-Sep-2009 Bjoern A. Zeeb <bz@FreeBSD.org>

lindev(4) [1] is supposed to be a collection of linux-specific pseudo
devices that we also support, just not by default (thus only LINT or
module builds by default).

While currently there is only "/dev/full" [2], we are planning to see more
in the future. We may decide to change the module/dependency logic in the
future should the list grow too long.

This is not part of linux.ko as also non-linux binaries like kFreeBSD
userland or ports can make use of this as well.

Suggested by: rwatson [1] (name)
Submitted by: ed [2]
Discussed with: markm, ed, rwatson, kib (weeks ago)
Reviewed by: rwatson, brueffer (prev. version)
PR: kern/68961
MFC after: 6 weeks


# a57707e7 21-Sep-2009 Xin LI <delphij@FreeBSD.org>

Build x86bios only for i386/amd64 for now. More work is required
to make these functional on other architectures, and the current
code breaks sparc64 and powerpc.

Spotted by: tinderbox via des


# 6abad12d 21-Sep-2009 Xin LI <delphij@FreeBSD.org>

Automatically depend on x86emu when vesa or dpms is being built into
kernel. With this change the user no longer need to remember building
this option.

Submitted by: swell.k at gmail.com


# 372c7337 21-Sep-2009 Xin LI <delphij@FreeBSD.org>

Enable s3pci on amd64 which works on top of VESA, and allow
static building it into kernel on i386 and amd64.

Submitted by: swell.k at gmail.com


# ee5e90da 09-Sep-2009 Xin LI <delphij@FreeBSD.org>

- Teach vesa(4) and dpms(4) about x86emu. [1]
- Add vesa kernel options for amd64.
- Connect libvgl library and splash kernel modules to amd64 build.
- Connect manual page dpms(4) to amd64 build.
- Remove old vesa/dpms files.

Submitted by: paradox <ddkprog yahoo com> [1], swell k at gmail.com
(with some minor tweaks)


# be105717 13-Aug-2009 Attilio Rao <attilio@FreeBSD.org>

MFC r196196:

* Completely remove the option STOP_NMI from the kernel. This option
has proven to have a good effect when entering KDB by using a NMI,
but it completely violates all the good rules about interrupts
disabled while holding a spinlock in other occasions. This can be the
cause of deadlocks on events where a normal IPI_STOP is expected.
* Add an new IPI called IPI_STOP_HARD on all the supported architectures.
This IPI is responsible for sending a stop message among CPUs using a
privileged channel when disponible. In other cases it just does match a
normal IPI_STOP.
Right now the IPI_STOP_HARD functionality uses a NMI on ia32 and amd64
architectures, while on the other has a normal IPI_STOP effect. It is
responsibility of maintainers to eventually implement an hard stop
when necessary and possible.
* Use the new IPI facility in order to implement a new userend SMP kernel
function called stop_cpus_hard(). That is specular to stop_cpu() but
it does use the privileged channel for the stopping facility.
* Let KDB use the newly introduced function stop_cpus_hard() and leave
stop_cpus() for all the other cases
* Disable interrupts on CPU0 when starting the process of APs suspension.
* Style cleanup and comments adding

This patch should fix the reboot/shutdown deadlocks many users are
constantly reporting on mailing lists.

Please don't forget to update your config file with the STOP_NMI
option removal

Reviewed by: jhb
Tested by: pho, bz, rink
Approved by: re (kib)


# dc6fbf65 13-Aug-2009 Attilio Rao <attilio@FreeBSD.org>

* Completely Remove the option STOP_NMI from the kernel. This option
has proven to have a good effect when entering KDB by using a NMI,
but it completely violates all the good rules about interrupts
disabled while holding a spinlock in other occasions. This can be the
cause of deadlocks on events where a normal IPI_STOP is expected.
* Adds an new IPI called IPI_STOP_HARD on all the supported architectures.
This IPI is responsible for sending a stop message among CPUs using a
privileged channel when disponible. In other cases it just does match a
normal IPI_STOP.
Right now the IPI_STOP_HARD functionality uses a NMI on ia32 and amd64
architectures, while on the other has a normal IPI_STOP effect. It is
responsibility of maintainers to eventually implement an hard stop
when necessary and possible.
* Use the new IPI facility in order to implement a new userend SMP kernel
function called stop_cpus_hard(). That is specular to stop_cpu() but
it does use the privileged channel for the stopping facility.
* Let KDB use the newly introduced function stop_cpus_hard() and leave
stop_cpus() for all the other cases
* Disable interrupts on CPU0 when starting the process of APs suspension.
* Style cleanup and comments adding

This patch should fix the reboot/shutdown deadlocks many users are
constantly reporting on mailing lists.

Please don't forget to update your config file with the STOP_NMI
option removal

Reviewed by: jhb
Tested by: pho, bz, rink
Approved by: re (kib)


# 230bb4d9 08-Jun-2009 Jung-uk Kim <jkim@FreeBSD.org>

Rewrite OsdSynch.c to reflect the latest ACPICA more closely:

- Implement ACPI semaphore (ACPI_SEMAPHORE) with condvar(9) and mutex(9).
- Implement ACPI mutex (ACPI_MUTEX) with mutex(9).
- Implement ACPI lock (ACPI_SPINLOCK) with spin mutex(9).


# b3b17597 09-May-2009 Jun Kuriyama <kuriyama@FreeBSD.org>

- Use "device\t" and "options \t" for consistency.


# 6465d2d9 16-Mar-2009 Dmitry Chagin <dchagin@FreeBSD.org>

Chase the k8temp->amdtemp rename in NOTES and loader.conf.

Approved by: kib (mentor)


# 663963b1 07-Mar-2009 Andrew Thompson <thompsa@FreeBSD.org>

Reenable ndis in the LINT build now that it has been updated for USB. Thanks to
HPS and Weongyo.


# 211211de 23-Feb-2009 Andrew Thompson <thompsa@FreeBSD.org>

Exclude ndis from the LINT build as it currently breaks the build, patches to
move to the new usb stack are in progress.


# c4ce3ea6 06-Feb-2009 Wojciech A. Koszek <wkoszek@FreeBSD.org>

Tidy NOTES a bit:
- remove misleading nve/nfe comments, which make it hard to
distinguish those two at a first glance
- bring pbio documentation to the block comment together with
other drivers

I also brought commented out line responsible for si(4), since it
seems to compile and already has respective comment in this file.


# bc4c1dda 06-Feb-2009 Wojciech A. Koszek <wkoszek@FreeBSD.org>

ural(4) is already present in global NOTES, thus there is no
need to explicitly list it here once again. This removes:

WARNING: duplicate option `DEV_URAL' encountered.
WARNING: duplicate device `ural' encountered.

Warnings when compiling LINT on amd64.


# c353491a 06-Feb-2009 Wojciech A. Koszek <wkoszek@FreeBSD.org>

Fix AGP debugging code:
- correct format strings
- fill opt_agp.h if AGP_DEBUG is defined
- bring AGP_DEBUG to LINT by mentioning it in NOTES

This should hopefully fix a warning that was...

Found by: Coverity Prevent(tm)
CID: 3676
Tested on: amd64, i386


# 33644623 01-Dec-2008 Sam Leffler <sam@FreeBSD.org>

Switch to ath hal source code. Note this removes the ath_hal
module; the ath module now brings in the hal support. Kernel
config files are almost backwards compatible; supplying

device ath_hal

gives you the same chip support that the binary hal did but you
must also include

options AH_SUPPORT_AR5416

to enable the extended format descriptors used by 11n parts.
It is now possible to control the chip support included in a
build by specifying exactly which chips are to be supported
in the config file; consult ath_hal(4) for information.


# d7f03759 19-Oct-2008 Ulf Lilleengen <lulf@FreeBSD.org>

- Import the HEAD csup code which is the basis for the cvsmode work.


# e085f869 08-Aug-2008 Stanislav Sedov <stas@FreeBSD.org>

- Add cpuctl(4) pseudo-device driver to provide access to some low-level
features of CPUs like reading/writing machine-specific registers,
retrieving cpuid data, and updating microcode.
- Add cpucontrol(8) utility, that provides userland access to
the features of cpuctl(4).
- Add subsequent manpages.

The cpuctl(4) device operates as follows. The pseudo-device node cpuctlX
is created for each cpu present in the systems. The pseudo-device minor
number corresponds to the cpu number in the system. The cpuctl(4) pseudo-
device allows a number of ioctl to be preformed, namely RDMSR/WRMSR/CPUID
and UPDATE. The first pair alows the caller to read/write machine-specific
registers from the correspondent CPU. cpuid data could be retrieved using
the CPUID call, and microcode updates are applied via UPDATE.

The permissions are inforced based on the pseudo-device file permissions.
RDMSR/CPUID will be allowed when the caller has read access to the device
node, while WRMSR/UPDATE will be granted only when the node is opened
for writing. There're also a number of priv(9) checks.

The cpucontrol(8) utility is intened to provide userland access to
the cpuctl(4) device features. The utility also allows one to apply
cpu microcode updates.

Currently only Intel and AMD cpus are supported and were tested.

Approved by: kib
Reviewed by: rpaulo, cokane, Peter Jeremy
MFC after: 1 month


# 200d80cd 03-Aug-2008 Ed Schouten <ed@FreeBSD.org>

Disconnect drivers that haven't been ported to MPSAFE TTY yet.

As clearly mentioned on the mailing lists, there is a list of drivers
that have not been ported to the MPSAFE TTY layer yet. Remove them from
the kernel configuration files. This means people can now still use
these drivers if they explicitly put them in their kernel configuration
file, which is good.

People should keep in mind that after August 10, these drivers will not
work anymore. Even though owners of the hardware are capable of getting
these drivers working again, I will see if I can at least get them to a
compilable state (if time permits).


# 2e598474 26-May-2008 Bjoern A. Zeeb <bz@FreeBSD.org>

Remove ISDN4BSD (I4B) from HEAD as it is not MPSAFE and
parts relied on the now removed NET_NEEDS_GIANT.
Most of I4B has been disconnected from the build
since July 2007 in HEAD/RELENG_7.

This is what was removed:
- configuration in /etc/isdn
- examples
- man pages
- kernel configuration
- sys/i4b (drivers, layers, include files)
- user space tools
- i4b support from ppp
- further documentation

Discussed with: rwatson, re


# 3971d07b 29-Apr-2008 Sam Leffler <sam@FreeBSD.org>

Intel 4965 wireless driver (derived from openbsd driver of the same name)


# 6f15a9e5 12-Apr-2008 Rui Paulo <rpaulo@FreeBSD.org>

Connect k8temp(4) to the build.


# dad3b6c6 26-Mar-2008 Poul-Henning Kamp <phk@FreeBSD.org>

Back in the good old days, PC's had random pieces of rock for
frequency generation and what frequency the generated was anyones
guess.

In general the 32.768kHz RTC clock x-tal was the best, because that
was a regular wrist-watch Xtal, whereas the X-tal generating the
ISA bus frequency was much lower quality, often costing as much as
several cents a piece, so it made good sense to check the ISA bus
frequency against the RTC clock.

The other relevant property of those machines, is that they
typically had no more than 16MB RAM.

These days, CPU chips croak if their clocks are not tightly within
specs and all necessary frequencies are derived from the master
crystal by means if PLL's.

Considering that it takes on average 1.5 second to calibrate the
frequency of the i8254 counter, that more likely than not, we will
not actually use the result of the calibration, and as the final
clincher, we seldom use the i8254 for anything besides BEL in
syscons anyway, it has become time to drop the calibration code.

If you need to tell the system what frequency your i8254 runs,
you can do so from the loader using hw.i8254.freq or using the
sysctl kern.timecounter.tc.i8254.frequency.


# cb7d38ab 24-Mar-2008 Jung-uk Kim <jkim@FreeBSD.org>

Belatedly add BPF_JITTER in NOTES for supported architectures.


# 593c8734 03-Feb-2008 Scott Long <scottl@FreeBSD.org>

Remove the rr232x driver. It has been superceded by the hptrr driver.


# d9aa6eb4 28-Dec-2007 Rui Paulo <rpaulo@FreeBSD.org>

Add asmc(4).

Requested by: njl (mentor)


# b063a422 14-Dec-2007 Scott Long <scottl@FreeBSD.org>

Add the 'hptrr' driver for supporting the following Highpoint RocketRAID
cards:

o RocketRAID 172x series
o RocketRAID 174x series
o RocketRAID 2210
o RocketRAID 222x series
o RocketRAID 2240
o RocketRAID 230x series
o RocketRAID 231x series
o RocketRAID 232x series
o RocketRAID 2340
o RocketRAID 2522

Many thanks to Highpoint for their continued support of FreeBSD.

Submitted by: Highpoint


# d31fc8ce 01-Dec-2007 Poul-Henning Kamp <phk@FreeBSD.org>

Remove XRPU driver, after asking all the users.


# 03734771 08-Nov-2007 Benjamin Close <benjsc@FreeBSD.org>

Link wpi(4) into the build.

This includes:
o mtree (for legal/intel_wpi)
o manpage for i386/amd64 archs
o module for i386/amd64 archs
o NOTES for i386/amd64 archs

Approved by: mlaier (comentor)


# c8b14fa8 29-Oct-2007 Peter Wemm <peter@FreeBSD.org>

Move nvram out of DEFAULTS. There really isn't a lot of justification
for consuming the memory. The module works just fine in the unlikely
case that this is needed. It can still be compiled into a custom kernel.


# 83d18f22 15-Aug-2007 Dag-Erling Smørgrav <des@FreeBSD.org>

Add a driver for the on-die digital thermal sensor found on Intel Core
and newer CPUs (including Core 2 and Core / Core 2 based Xeons). The
driver attaches to each cpu device and creates a sysctl node in that
device's sysctl context (dev.cpu.N.temperature). When invoked, the
handler binds to the appropriate CPU to ensure a correct reading.

Submitted by: Rui Paulo <rpaulo@fnop.net>
Sponsored by: Google Summer of Code 2007
Tested by: des, marcus, Constantine A. Murenin, Ian FREISLICH
Approved by: re (kensmith)
MFC after: 3 weeks


# 118043c6 03-Jul-2007 Bjoern A. Zeeb <bz@FreeBSD.org>

Temporary disconnect i4bing, i4bisppp and i4bipr from the build for
the 7.0 timeframe.

This is needed because I4B is not locked and NET_NEEDS_GIANT goes away.

The plan is to lock I4B and bring everything back for 7.1.

Approved by: re (kensmith)


# a1ec5393 01-Jul-2007 Nate Lawson <njl@FreeBSD.org>

Revert previous commit, retaining cpufreq.

Approved by: re (implicitly)


# a7b811a6 01-Jul-2007 Nate Lawson <njl@FreeBSD.org>

Add cpufreq(4) to GENERIC. It does not change the frequency by default,
so systems should be relatively unaffected. Users can then simply enable
powerd(8) in rc.conf to take advantage of it.

Approved by: re


# f73e86c3 09-May-2007 Scott Long <scottl@FreeBSD.org>

It turns out that the hptiop driver isn't portable after all. Confine it to
amd64 and i386 for now.


# 2be4e471 22-Mar-2007 Jung-uk Kim <jkim@FreeBSD.org>

Catch up with ACPI-CA 20070320 import.


# 837f167e 23-Oct-2006 Ruslan Ermilov <ru@FreeBSD.org>

Move "device splash" back to MI NOTES and "files", it's MI.


# c43ac89a 20-Oct-2006 Dag-Erling Smørgrav <des@FreeBSD.org>

Move more MD devices and options out of MI NOTES.


# c2762838 20-Oct-2006 Dag-Erling Smørgrav <des@FreeBSD.org>

The VGA_DEBUG option only exists on {amd64,i386,ia64}.
Also remove 'device io' from amd64 NOTES; DEFAULTS takes care of it.


# e54ad0a1 18-Oct-2006 Warner Losh <imp@FreeBSD.org>

Remove references to pccard.conf


# d72a0786 22-Sep-2006 John Baldwin <jhb@FreeBSD.org>

Update the ipmi(4) driver:
- Split out the communication protocols into their own files and use
a couple of function pointers in the softc that the commuication
protocols setup in their own attach routine.
- Add support for the SSIF interface (talking to IPMI over SMBus).
- Add an ACPI attachment.
- Add a PCI attachment that attaches to devices with the IPMI interface
subclass.
- Split the ISA attachment out into its own file: ipmi_isa.c.
- Change the code to probe the SMBIOS table for an IPMI entry to just use
pmap_mapbios() to map the table in rather than trying to setup a fake
resource on an isa device and then activating the resource to map in the
table.
- Make bus attachments leaner by adding attach functions for each
communication interface (ipmi_kcs_attach(), ipmi_smic_attach(), etc.)
that setup per-interface data.
- Formalize the model used by the driver to handle requests by adding an
explicit struct ipmi_request object that holds the state of a given
request and reply for the entire lifetime of the request. By bundling
the request into an object, it is easier to add retry logic to the various
communication backends (as well as eventually support BT mode which uses
a slightly different message format than KCS, SMIC, and SSIF).
- Add a per-softc lock and remove D_NEEDGIANT as the driver is now MPSAFE.
- Add 32-bit compatibility ioctl shims so you can use a 32-bit ipmitool
on FreeBSD/amd64.
- Add ipmi(4) to i386 and amd64 NOTES.

Submitted by: ambrisko (large portions of 2 and 3)
Sponsored by: IronPort Systems, Yahoo!
MFC after: 6 days


# 302981e7 29-Jul-2006 Marcel Moolenaar <marcel@FreeBSD.org>

Remove sio(4) and related options from MI files to amd64, i386
and pc98 MD files. Remove nodevice and nooption lines specific
to sio(4) from ia64, powerpc and sparc64 NOTES. There were no
such lines for arm yet.
sio(4) is usable on less than half the platforms, not counting
a future mips platform. Its presence in MI files is therefore
increasingly becoming a burden.


# bfc788c2 26-Jun-2006 David E. O'Brien <obrien@FreeBSD.org>

Add a pure open source nForce Ethernet driver, under BSDL.
This driver was ported from OpenBSD by Shigeaki Tagashira
<shigeaki@se.hiroshima-u.ac.jp> and posted at
http://www.se.hiroshima-u.ac.jp/~shigeaki/software/freebsd-nfe.html
It was additionally cleaned up by me.
It is still a work-in-progress and thus is purposefully not in GENERIC.
And it conflicts with nve(4), so only one should be loaded.


# e3d7caf4 12-Jun-2006 John Baldwin <jhb@FreeBSD.org>

Enable a few more things in x86 NOTES to get broader LINT coverage:
- Turn on iwi(4), ipw(4), and ndis(4) on amd64 and i386.
- Turn on ral(4) and ural(4) on i386, pc98, and amd64.


# 055abe9a 14-May-2006 Marius Strobl <marius@FreeBSD.org>

Remove some remnants of lnc(4).


# 32397ce0 09-May-2006 Doug Ambrisko <ambrisko@FreeBSD.org>

Add in linsysfs. A linux 2.6 like sys filesystem to pacify the Linux
LSI MegaRAID SAS utility.

Sponsored by: IronPort Systems
Man page help from: brueffer


# 27aafcda 27-Apr-2006 Scott Long <scottl@FreeBSD.org>

Enable the rr232x driver for amd64.


# 4ffbe6ba 06-Mar-2006 Yaroslav Tykhiy <ytykhiy@gmail.com>

MFi386 revision 1.1220: options TDFX_LINUX --> device tdfx_linux


# 69b9fffc 02-Dec-2005 Eric Anholt <anholt@FreeBSD.org>

Merge DRM CVS as of 2005-12-02, adding i915 DRM support thanks to Alexey Popov,
and a new r300 PCI ID.


# 9fb07673 28-Nov-2005 Eric Anholt <anholt@FreeBSD.org>

Update DRM to CVS snapshot as of 2005-11-28. Notable changes:
- S3 Savage driver ported.
- Added support for ATI_fragment_shader registers for r200.
- Improved r300 support, needed for latest r300 DRI driver.
- (possibly) r300 PCIE support, needs X.Org server from CVS.
- Added support for PCI Matrox cards.
- Software fallbacks fixed for Rage 128, which used to render badly or hang.
- Some issues reported by WITNESS are fixed.
- i915 module Makefile added, as the driver may now be working, but is untested.
- Added scripts for copying and preprocessing DRM CVS for inclusion in the
kernel. Thanks to Daniel Stone for getting me started on that.


# 6646524f 27-Nov-2005 Ruslan Ermilov <ru@FreeBSD.org>

- Allow duplicate "machine" directives with the same arguments.
- Move existing "machine" directives to DEFAULTS.


# 6d8200ff 11-Nov-2005 Ruslan Ermilov <ru@FreeBSD.org>

Add /dev/speaker support to amd64.

The following repo-copies were made (by Mark Murray):

sys/i386/isa/spkr.c -> sys/dev/speaker/spkr.c
sys/i386/include/speaker.h -> sys/dev/speaker/speaker.h
share/man/man4/man4.i386/spkr.4 -> share/man/man4/spkr.4


# 296c4b1a 31-Oct-2005 John Baldwin <jhb@FreeBSD.org>

Hook nve(4) up in i386 and amd64 NOTES.

MFC after: 1 week


# 58553b99 24-Oct-2005 John Baldwin <jhb@FreeBSD.org>

Rename the KDB_STOP_NMI kernel option to STOP_NMI and make it apply to all
IPI_STOP IPIs.
- Change the i386 and amd64 MD IPI code to send an NMI if STOP_NMI is
enabled if an attempt is made to send an IPI_STOP IPI. If the kernel
option is enabled, there is also a sysctl to change the behavior at
runtime (debug.stop_cpus_with_nmi which defaults to enabled). This
includes removing stop_cpus_nmi() and making ipi_nmi_selected() a
private function for i386 and amd64.
- Fix ipi_all(), ipi_all_but_self(), and ipi_self() on i386 and amd64 to
properly handle bitmapped IPIs as well as IPI_STOP IPIs when STOP_NMI is
enabled.
- Fix ipi_nmi_handler() to execute the restart function on the first CPU
that is restarted making use of atomic_readandclear() rather than
assuming that the BSP is always included in the set of restarted CPUs.
Also, the NMI handler didn't clear the function pointer meaning that
subsequent stop and restarts could execute the function again.
- Define a new macro HAVE_STOPPEDPCBS on i386 and amd64 to control the use
of stoppedpcbs[] and always enable it for i386 and amd64 instead of
being dependent on KDB_STOP_NMI. It works fine in both the NMI and
non-NMI cases.


# 05490142 17-Oct-2005 John Baldwin <jhb@FreeBSD.org>

Another bit of sx(4) removal.


# 6f6b430e 14-Oct-2005 Ruslan Ermilov <ru@FreeBSD.org>

Sort ath_rate_* entries. Mark ath_rate_sample as the desired algorithm.

Discussed with: sam


# 9c26aa3c 07-Oct-2005 Gleb Smirnoff <glebius@FreeBSD.org>

Polling is now configured with help of ifconfig(8), not sysctl.

Prodded by: maxim


# dc8540a9 07-Sep-2005 Scott Long <scottl@FreeBSD.org>

Hook up the hptmv driver for amd64.

MFC After: 3 days


# c5bf476a 22-Jul-2005 Ruslan Ermilov <ru@FreeBSD.org>

Fallout from the previous revision: lnc isn't quite ready for amd64 yet.


# 4bf21bfe 21-Jul-2005 Peter Wemm <peter@FreeBSD.org>

MFi386: add vpd driver (vital product data.. model & serial numbers etc)


# 6ec29713 21-Jul-2005 Peter Wemm <peter@FreeBSD.org>

Add the ed driver for lint building. The PCI instances are still useful.
In theory, there are no isa slots on any amd64/em64t systems, but it
doesn't hurt to keep these tiny fragments compiling.


# a52daa5f 20-Jul-2005 Jung-uk Kim <jkim@FreeBSD.org>

Fix smbios(4) and add support for amd64

Approved by: anholt (mentor)


# af088425 20-Jul-2005 Eric Anholt <anholt@FreeBSD.org>

Add the latest r300 code from r300.sf.net. This is based on the patch supplied
by Vladimir Dergachev for inclusion in DRM CVS, with minor modifications for
FreeBSD CVS and the appropriate license from Nicolai Haehnle on r300_reg.h.
Fixes hangs when using r300.sf.net userland, tested on a Radeon 9600 on amd64.


# 80a11093 29-Jun-2005 Peter Wemm <peter@FreeBSD.org>

Sync i386->amd64.
* Add ichwd (The Intel EM64T folks have an ICH)
* Cosmetic comment syncs
* Merge cpufreq change over to NOTES
* add pbio (it compiles, but isn't useful since no boxes have ISA slots)
* copy ath settings (note: wlan disabled here since its in global NOTES)
* copy profiling, including fixing a previous i386->amd64 merge typo.

Approved by: re (blanket i386 <-> amd64 sync/convergence)


# 7452bc49 14-Jun-2005 Stephan Uphoff <ups@FreeBSD.org>

Move IPI_PREEMPTION option from global NOTES file to i386+amd64 specific
NOTES files.

Approved by: re (scottl)


# fdc9713b 30-Apr-2005 Doug White <dwhite@FreeBSD.org>

Implement an alternate method to stop CPUs when entering DDB. Normally we use
a regular IPI vector, but this vector is blocked when interrupts are disabled.
With "options KDB_STOP_NMI" and debug.kdb.stop_cpus_with_nmi set, KDB will
send an NMI to each CPU instead. The code also has a context-stuffing
feature which helps ddb extract the state of processes running on the
stopped CPUs.

KDB_STOP_NMI is only useful with SMP and complains if SMP is not defined.
This feature only applies to i386 and amd64 at the moment, but could be
used on other architectures with the appropriate MD bits.

Submitted by: ups


# 379ad243 25-Apr-2005 Scott Long <scottl@FreeBSD.org>

Remove the ACPI_MAX_THREADS option.


# d47cce3e 20-Apr-2005 Marcel Moolenaar <marcel@FreeBSD.org>

Revert previous commit: The hwpmc(4) driver compiles on all platforms.


# f13ea502 19-Apr-2005 Warner Losh <imp@FreeBSD.org>

Move this to the specific architectures that are supported. #ifdef foo
in sys/pmc.h precludes it from working on !i386, !amd64. When that changes,
it can be moved back into conf/NOTES.


# b8aa843c 15-Apr-2005 Eric Anholt <anholt@FreeBSD.org>

Update to DRM CVS as of 2005-04-12, bringing many changes:
- Split core DRM routines back into their own module, rather than using the
nasty templated system like before.
- Development-class R300 support in radeon driver (requires userland pieces, of
course).
- Mach64 driver (haven't tested in a while -- my mach64s no longer fit in the
testbox). Covers Rage Pros, Rage Mobility P/M, Rage XL, and some others.
- i915 driver files, which just need to get drm_drv.c fixed to allow attachment
to the drmsub device. Covers i830 through i915 integrated graphics.
- savage driver files, which should require minimal changes to work. Covers the
Savage3D, Savage IX/MX, Savage 4, ProSavage.
- Support for color and texture tiling and HyperZ features of Radeon.

Thanks to: scottl (much p4 handholding)
Jung-uk Kim (helpful prodding)
PR: [1] kern/76879, [2] kern/72548
Submitted by: [1] Alex, lesha at intercaf dot ru
[2] Shaun Jurrens, shaun at shamz dot net


# e137a5d6 15-Apr-2005 Peter Wemm <peter@FreeBSD.org>

MFi386: remove NO_MIXED_MODE


# 6ab95de3 08-Apr-2005 David E. O'Brien <obrien@FreeBSD.org>

'apic' isn't optional on amd64, so don't speak as if it is.


# d0885ac3 31-Mar-2005 Scott Long <scottl@FreeBSD.org>

Glue the arcmsr driver into the tree.


# 9bec0bd8 27-Feb-2005 David E. O'Brien <obrien@FreeBSD.org>

Spell "options" correctly as "options ".


# fdbbb288 27-Feb-2005 David E. O'Brien <obrien@FreeBSD.org>

Connect "options MP_WATCHDOG" to the LINT builds.


# 183a16a3 25-Feb-2005 Tom Rhodes <trhodes@FreeBSD.org>

Remove recently added note about DEVICE_POLLING not working with SMP.
Remove warning from kern_poll.c to allow DEVICE_POLLING to be built with SMP.

Discussed with: ru, glebius


# 130d7d9f 25-Feb-2005 Xin LI <delphij@FreeBSD.org>

Remove acpi_perf from {ARCH}/conf/NOTES, to make tinderbox happy.

Reported by: tinderbox
Inspired by: acpi_perf build structure removal commit


# fda9ad60 22-Feb-2005 Tom Rhodes <trhodes@FreeBSD.org>

According to kern_poll.c, you cannot use DEVICE_POLLING with SMP. Add a
commen about this in every NOTES file which lists DEVICE_POLLING.

PR: 46793
MFC: 1 day


# 69bc96f2 05-Feb-2005 Nate Lawson <njl@FreeBSD.org>

Build cpufreq and acpi_perf on platforms that are likely to be able to
use them.


# b05ba1f7 21-Sep-2004 Peter Wemm <peter@FreeBSD.org>

Minor sync-up with i386. Catch up on de-quoting and de-counting after
config changes.


# 0039290c 27-Aug-2004 Tilman Keskinoz <arved@FreeBSD.org>

Fix a comment, IA32 was renamed to COMPAT_IA32

Approved by: marcel


# 7a474197 15-Aug-2004 Tim J. Robbins <tjr@FreeBSD.org>

Un-comment LINPROCFS.


# c680f6b1 16-Aug-2004 David E. O'Brien <obrien@FreeBSD.org>

I'm not sure what tjr envisioned for turning on FreeBSD/i386 rt support,
but make it COMPAT_IA32 for now.
Fix the 'DEBUG' argument code to unbreak the amd64 LINT build.


# ea0fabbc 16-Aug-2004 Tim J. Robbins <tjr@FreeBSD.org>

Add preliminary support for running 32-bit Linux binaries on amd64, enabled
with the COMPAT_LINUX32 option. This is largely based on the i386 MD Linux
emulations bits, but also builds on the 32-bit FreeBSD and generic IA-32
binary emulation work.

Some of this is still a little rough around the edges, and will need to be
revisited before 32-bit and 64-bit Linux emulation support can coexist in
the same kernel.


# 8ab2f5ec 01-Aug-2004 Mark Murray <markm@FreeBSD.org>

Break out the MI part of the /dev/[k]mem and /dev/io drivers into
their own directory and module, leaving the MD parts in the MD
area (the MD parts _are_ part of the modules). /dev/mem and /dev/io
are now loadable modules, thus taking us one step further towards
a kernel created entirely out of modules. Of course, there is nothing
preventing the kernel from having these statically compiled.


# 922013a6 17-May-2004 Peter Wemm <peter@FreeBSD.org>

Turn on modules for amd64. Fear.


# 7be2e3e2 16-May-2004 Peter Wemm <peter@FreeBSD.org>

Converge some more with i386.


# 0fef69a2 13-Mar-2004 Peter Wemm <peter@FreeBSD.org>

MFp4: comment out options that don't exist so that they cannot be
accidently added to config files and be silently accepted.
Comment out one bogo-option that crept into NOTES.


# 75294710 13-Mar-2004 Peter Wemm <peter@FreeBSD.org>

Diff reduction with current. Correct comment about ed etc.


# 5af2e7de 05-Mar-2004 David E. O'Brien <obrien@FreeBSD.org>

Document that ENABLE_ALART controls the alarm on Intel intpm driver.

Submitted by: peter


# 42044cee 05-Mar-2004 David E. O'Brien <obrien@FreeBSD.org>

Sync with i386/NOTES.


# 84883913 05-Mar-2004 David E. O'Brien <obrien@FreeBSD.org>

Add comment for 'mptable'.

Submitted by: peter


# df4d19f5 04-Mar-2004 David E. O'Brien <obrien@FreeBSD.org>

Note that imp is working on un-shimming this driver, afterwards it should
work on AMD64.


# 0db5c4ce 04-Mar-2004 David E. O'Brien <obrien@FreeBSD.org>

The PECOFF support is 32-bit only.

Reviewed by: peter


# 5b9bfb42 03-Mar-2004 David E. O'Brien <obrien@FreeBSD.org>

Sync with i386/NOTES rev. 1.1131.


# 32a31d0d 18-Feb-2004 David E. O'Brien <obrien@FreeBSD.org>

Checkpoint the NOTES I was working on.


# ca88a766 07-Feb-2004 Peter Wemm <peter@FreeBSD.org>

I forgot to add the NO_MODULES override for NOTES


# d132b81c 05-Feb-2004 Peter Wemm <peter@FreeBSD.org>

Turn of ath since it causes a link failure without the hal till sam's
set up with a cross compiler and has the time to port the hal.


# b132d96e 04-Feb-2004 Peter Wemm <peter@FreeBSD.org>

Checkpoint a NOTES file I had as of Nov 23rd. It doesn't quite compile
due to triggering some printf breakage in some DIAGNOSTIC printfs.