1028 lines
16 KiB
Makefile
Raw Normal View History

1994-05-30 19:09:18 +00:00
# @(#)Makefile 8.1 (Berkeley) 6/18/93
1999-10-30 13:17:58 +00:00
# $FreeBSD$
1994-05-30 19:09:18 +00:00
.include <src.opts.mk>
2001-03-27 13:48:25 +00:00
MAN= aac.4 \
aacraid.4 \
acpi.4 \
${_acpi_asus.4} \
${_acpi_asus_wmi.4} \
${_acpi_dock.4} \
${_acpi_fujitsu.4} \
${_acpi_hp.4} \
${_acpi_ibm.4} \
${_acpi_panasonic.4} \
${_acpi_rapidstart.4} \
${_acpi_sony.4} \
2003-12-28 23:23:16 +00:00
acpi_thermal.4 \
acpi_battery.4 \
${_acpi_toshiba.4} \
acpi_video.4 \
${_acpi_wmi.4} \
2009-11-19 16:19:05 +00:00
ada.4 \
adm6996fc.4 \
ads111x.4 \
ae.4 \
2010-09-06 20:35:48 +00:00
${_aesni.4} \
2008-05-19 02:21:00 +00:00
age.4 \
agp.4 \
ahc.4 \
Separate the parallel scsi knowledge out of the core of the XPT, and modularize it so that new transports can be created. Add a transport for SATA Add a periph+protocol layer for ATA Add a driver for AHCI-compliant hardware. Add a maxio field to CAM so that drivers can advertise their max I/O capability. Modify various drivers so that they are insulated from the value of MAXPHYS. The new ATA/SATA code supports AHCI-compliant hardware, and will override the classic ATA driver if it is loaded as a module at boot time or compiled into the kernel. The stack now support NCQ (tagged queueing) for increased performance on modern SATA drives. It also supports port multipliers. ATA drives are accessed via 'ada' device nodes. ATAPI drives are accessed via 'cd' device nodes. They can all be enumerated and manipulated via camcontrol, just like SCSI drives. SCSI commands are not translated to their ATA equivalents; ATA native commands are used throughout the entire stack, including camcontrol. See the camcontrol manpage for further details. Testing this code may require that you update your fstab, and possibly modify your BIOS to enable AHCI functionality, if available. This code is very experimental at the moment. The userland ABI/API has changed, so applications will need to be recompiled. It may change further in the near future. The 'ada' device name may also change as more infrastructure is completed in this project. The goal is to eventually put all CAM busses and devices until newbus, allowing for interesting topology and management options. Few functional changes will be seen with existing SCSI/SAS/FC drivers, though the userland ABI has still changed. In the future, transports specific modules for SAS and FC may appear in order to better support the topologies and capabilities of these technologies. The modularization of CAM and the addition of the ATA/SATA modules is meant to break CAM out of the mold of being specific to SCSI, letting it grow to be a framework for arbitrary transports and protocols. It also allows drivers to be written to support discrete hardware without jeopardizing the stability of non-related hardware. While only an AHCI driver is provided now, a Silicon Image driver is also in the works. Drivers for ICH1-4, ICH5-6, PIIX, classic IDE, and any other hardware is possible and encouraged. Help with new transports is also encouraged. Submitted by: scottl, mav Approved by: re
2009-07-10 08:18:08 +00:00
ahci.4 \
2002-09-01 07:34:47 +00:00
ahd.4 \
${_aibs.4} \
aio.4 \
alc.4 \
ale.4 \
alpm.4 \
altera_atse.4 \
altera_avgen.4 \
altera_jtag_uart.4 \
altera_sdcard.4 \
altq.4 \
amdpm.4 \
${_amdsbwd.4} \
${_amdsmb.4} \
${_amdsmn.4} \
${_amdtemp.4} \
${_bxe.4} \
amr.4 \
an.4 \
${_aout.4} \
${_apic.4} \
2005-09-28 07:31:18 +00:00
arcmsr.4 \
${_asmc.4} \
at45d.4 \
ata.4 \
ath.4 \
ath_ahb.4 \
ath_hal.4 \
ath_pci.4 \
atkbd.4 \
atkbdc.4 \
atp.4 \
${_atf_test_case.4} \
2010-09-17 08:44:54 +00:00
${_atrtc.4} \
${_attimer.4} \
audit.4 \
auditpipe.4 \
aue.4 \
axe.4 \
axge.4 \
2006-04-10 20:04:22 +00:00
bce.4 \
bcma.4 \
bfe.4 \
bge.4 \
${_bhyve.4} \
bhnd.4 \
bhnd_chipc.4 \
bhnd_pmu.4 \
bhndb.4 \
bhndb_pci.4 \
blackhole.4 \
bnxt.4 \
bpf.4 \
bridge.4 \
bt.4 \
2009-05-16 10:42:00 +00:00
bwi.4 \
2010-02-25 19:43:22 +00:00
bwn.4 \
${_bytgpio.4} \
${_chvgpio.4} \
capsicum.4 \
2002-07-09 05:08:49 +00:00
cardbus.4 \
carp.4 \
cas.4 \
cc_cdg.4 \
cc_chd.4 \
cc_cubic.4 \
cc_dctcp.4 \
cc_hd.4 \
cc_htcp.4 \
cc_newreno.4 \
cc_vegas.4 \
${_ccd.4} \
ccr.4 \
cd.4 \
cdce.4 \
cdceem.4 \
cfi.4 \
cfumass.4 \
ch.4 \
chromebook_platform.4 \
ciss.4 \
cloudabi.4 \
cmx.4 \
${_coretemp.4} \
${_cpuctl.4} \
cpufreq.4 \
crypto.4 \
ctl.4 \
cue.4 \
2007-03-14 05:12:25 +00:00
cxgb.4 \
cxgbe.4 \
Chelsio T4/T5 VF driver. The cxgbev/cxlv driver supports Virtual Function devices for Chelsio T4 and T4 adapters. The VF devices share most of their code with the existing PF4 driver (cxgbe/cxl) and as such the VF device driver currently depends on the PF4 driver. Similar to the cxgbe/cxl drivers, the VF driver includes a t4vf/t5vf PCI device driver that attaches to the VF device. It then creates child cxgbev/cxlv devices representing ports assigned to the VF. By default, the PF driver assigns a single port to each VF. t4vf_hw.c contains VF-specific routines from the shared code used to fetch VF-specific parameters from the firmware. t4_vf.c contains the VF-specific PCI device driver and includes its own attach routine. VF devices are required to use a different firmware request when transmitting packets (which in turn requires a different CPL message to encapsulate messages). This alternate firmware request does not permit chaining multiple packets in a single message, so each packet results in a firmware request. In addition, the different CPL message requires more detailed information when enabling hardware checksums, so parse_pkt() on VF devices must examine L2 and L3 headers for all packets (not just TSO packets) for VF devices. Finally, L2 checksums on non-UDP/non-TCP packets do not work reliably (the firmware trashes the IPv4 fragment field), so IPv4 checksums for such packets are calculated in software. Most of the other changes in the non-VF-specific code are to expose various variables and functions private to the PF driver so that they can be used by the VF driver. Note that a limited subset of cxgbetool functions are supported on VF devices including register dumps, scheduler classes, and clearing of statistics. In addition, TOE is not supported on VF devices, only for the PF interfaces. Reviewed by: np MFC after: 2 months Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D7599
2016-09-07 18:13:57 +00:00
cxgbev.4 \
cy.4 \
cyapa.4 \
da.4 \
dc.4 \
dcons.4 \
dcons_crom.4 \
ddb.4 \
devctl.4 \
disc.4 \
divert.4 \
${_dpms.4} \
ds1307.4 \
ds3231.4 \
${_dtrace_provs} \
dummynet.4 \
edsc.4 \
ehci.4 \
em.4 \
ena.4 \
2006-06-26 22:31:26 +00:00
enc.4 \
epair.4 \
esp.4 \
est.4 \
et.4 \
etherswitch.4 \
eventtimers.4 \
2003-02-23 22:22:29 +00:00
exca.4 \
e6060sw.4 \
fd.4 \
fdc.4 \
fdt.4 \
fdt_pinctrl.4 \
fdtbus.4 \
ffclock.4 \
filemon.4 \
2002-10-25 14:34:24 +00:00
firewire.4 \
full.4 \
2002-11-08 03:24:32 +00:00
fwe.4 \
2004-06-14 10:55:03 +00:00
fwip.4 \
2002-10-25 14:34:24 +00:00
fwohci.4 \
fxp.4 \
gbde.4 \
gdb.4 \
gem.4 \
geom.4 \
geom_linux_lvm.4 \
geom_map.4 \
geom_uzip.4 \
gif.4 \
gpio.4 \
gpioiic.4 \
gpioled.4 \
gpioths.4 \
2002-09-06 17:17:22 +00:00
gre.4 \
h_ertt.4 \
hifn.4 \
hme.4 \
2010-09-15 04:51:07 +00:00
hpet.4 \
${_hpt27xx.4} \
${_hptiop.4} \
${_hptmv.4} \
${_hptnr.4} \
${_hptrr.4} \
${_hv_kvp.4} \
${_hv_netvsc.4} \
${_hv_storvsc.4} \
${_hv_utils.4} \
${_hv_vmbus.4} \
${_hv_vss.4} \
hwpmc.4 \
2020-02-20 06:45:51 +00:00
${_hwpstate_intel.4} \
iavf.4 \
2000-11-16 03:43:56 +00:00
ichsmb.4 \
${_ichwd.4} \
icmp.4 \
icmp6.4 \
ida.4 \
Merge projects/ipsec into head/. Small summary ------------- o Almost all IPsec releated code was moved into sys/netipsec. o New kernel modules added: ipsec.ko and tcpmd5.ko. New kernel option IPSEC_SUPPORT added. It enables support for loading and unloading of ipsec.ko and tcpmd5.ko kernel modules. o IPSEC_NAT_T option was removed. Now NAT-T support is enabled by default. The UDP_ENCAP_ESPINUDP_NON_IKE encapsulation type support was removed. Added TCP/UDP checksum handling for inbound packets that were decapsulated by transport mode SAs. setkey(8) modified to show run-time NAT-T configuration of SA. o New network pseudo interface if_ipsec(4) added. For now it is build as part of ipsec.ko module (or with IPSEC kernel). It implements IPsec virtual tunnels to create route-based VPNs. o The network stack now invokes IPsec functions using special methods. The only one header file <netipsec/ipsec_support.h> should be included to declare all the needed things to work with IPsec. o All IPsec protocols handlers (ESP/AH/IPCOMP protosw) were removed. Now these protocols are handled directly via IPsec methods. o TCP_SIGNATURE support was reworked to be more close to RFC. o PF_KEY SADB was reworked: - now all security associations stored in the single SPI namespace, and all SAs MUST have unique SPI. - several hash tables added to speed up lookups in SADB. - SADB now uses rmlock to protect access, and concurrent threads can do SA lookups in the same time. - many PF_KEY message handlers were reworked to reflect changes in SADB. - SADB_UPDATE message was extended to support new PF_KEY headers: SADB_X_EXT_NEW_ADDRESS_SRC and SADB_X_EXT_NEW_ADDRESS_DST. They can be used by IKE daemon to change SA addresses. o ipsecrequest and secpolicy structures were cardinally changed to avoid locking protection for ipsecrequest. Now we support only limited number (4) of bundled SAs, but they are supported for both INET and INET6. o INPCB security policy cache was introduced. Each PCB now caches used security policies to avoid SP lookup for each packet. o For inbound security policies added the mode, when the kernel does check for full history of applied IPsec transforms. o References counting rules for security policies and security associations were changed. The proper SA locking added into xform code. o xform code was also changed. Now it is possible to unregister xforms. tdb_xxx structures were changed and renamed to reflect changes in SADB/SPDB, and changed rules for locking and refcounting. Reviewed by: gnn, wblock Obtained from: Yandex LLC Relnotes: yes Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D9352
2017-02-06 08:49:57 +00:00
if_ipsec.4 \
iflib.4 \
2005-09-28 07:31:18 +00:00
ifmib.4 \
ig4.4 \
igmp.4 \
iic.4 \
Add support for i2c bus mux hardware. An i2c bus can be divided into segments which can be selectively connected and disconnected from the main bus. This is usually done to enable using multiple slave devices having the same address, by isolating the devices onto separate bus segments, only one of which is connected to the main bus at once. There are several types of i2c bus muxes, which break down into two general categories... - Muxes which are themselves i2c slaves. These devices respond to i2c commands on their upstream bus, and based on those commands, connect various downstream buses to the upstream. In newbus terms, they are both a child of an iicbus and the parent of one or more iicbus instances. - Muxes which are not i2c devices themselves. Such devices are part of the i2c bus electrically, but in newbus terms their parent is some other bus. The association with the upstream bus must be established by separate metadata (such as FDT data). In both cases, the mux driver has one or more iicbus child instances representing the downstream buses. The mux driver implements the iicbus_if interface, as if it were an iichb host bridge/i2c controller driver. It services the IO requests sent to it by forwarding them to the iicbus instance representing the upstream bus, after electrically connecting the upstream bus to the downstream bus that hosts the i2c slave device which made the IO request. The net effect is automatic mux switching which is transparent to slaves on the downstream buses. They just do i2c IO they way they normally do, and the bus is electrically connected for the duration of the IO and then idled when it is complete. The existing iicbus_if callback() method is enhanced so that the parameter passed to it can be a struct which contains a device_t for the requesting bus and slave devices. This change is done by adding a flag that indicates the extra values are present, and making the flags field the first field of a new args struct. If the flag is set, the iichb or mux driver can recast the pointer-to-flags into a pointer-to-struct and access the extra fields. Thus abi compatibility with older drivers is retained (but a mux cannot exist on the bus with the older iicbus driver in use.) A new set of core support routines exists in iicbus.c. This code will help implement mux drivers for any type of mux hardware by supplying all the boilerplate code that forwards IO requests upstream. It also has code for parsing metadata and instantiating the child iicbus instances based on it. Two new hardware mux drivers are added. The ltc430x driver supports the LTC4305/4306 mux chips which are controlled via i2c commands. The iic_gpiomux driver supports any mux hardware which is controlled by manipulating the state of one or more gpio pins. Test Plan Tested locally using a variety of mux'd bus configurations involving both ltc4305 and a homebrew gpio-controlled mux. Tested configurations included cascaded muxes (unlikely in the real world, but useful to prove that 'it all just works' in terms of the automatic switching and upstream forwarding of IO requests).
2020-01-02 17:51:49 +00:00
iic_gpiomux.4 \
iicbb.4 \
iicbus.4 \
Add support for i2c bus mux hardware. An i2c bus can be divided into segments which can be selectively connected and disconnected from the main bus. This is usually done to enable using multiple slave devices having the same address, by isolating the devices onto separate bus segments, only one of which is connected to the main bus at once. There are several types of i2c bus muxes, which break down into two general categories... - Muxes which are themselves i2c slaves. These devices respond to i2c commands on their upstream bus, and based on those commands, connect various downstream buses to the upstream. In newbus terms, they are both a child of an iicbus and the parent of one or more iicbus instances. - Muxes which are not i2c devices themselves. Such devices are part of the i2c bus electrically, but in newbus terms their parent is some other bus. The association with the upstream bus must be established by separate metadata (such as FDT data). In both cases, the mux driver has one or more iicbus child instances representing the downstream buses. The mux driver implements the iicbus_if interface, as if it were an iichb host bridge/i2c controller driver. It services the IO requests sent to it by forwarding them to the iicbus instance representing the upstream bus, after electrically connecting the upstream bus to the downstream bus that hosts the i2c slave device which made the IO request. The net effect is automatic mux switching which is transparent to slaves on the downstream buses. They just do i2c IO they way they normally do, and the bus is electrically connected for the duration of the IO and then idled when it is complete. The existing iicbus_if callback() method is enhanced so that the parameter passed to it can be a struct which contains a device_t for the requesting bus and slave devices. This change is done by adding a flag that indicates the extra values are present, and making the flags field the first field of a new args struct. If the flag is set, the iichb or mux driver can recast the pointer-to-flags into a pointer-to-struct and access the extra fields. Thus abi compatibility with older drivers is retained (but a mux cannot exist on the bus with the older iicbus driver in use.) A new set of core support routines exists in iicbus.c. This code will help implement mux drivers for any type of mux hardware by supplying all the boilerplate code that forwards IO requests upstream. It also has code for parsing metadata and instantiating the child iicbus instances based on it. Two new hardware mux drivers are added. The ltc430x driver supports the LTC4305/4306 mux chips which are controlled via i2c commands. The iic_gpiomux driver supports any mux hardware which is controlled by manipulating the state of one or more gpio pins. Test Plan Tested locally using a variety of mux'd bus configurations involving both ltc4305 and a homebrew gpio-controlled mux. Tested configurations included cascaded muxes (unlikely in the real world, but useful to prove that 'it all just works' in terms of the automatic switching and upstream forwarding of IO requests).
2020-01-02 17:51:49 +00:00
iicmux.4 \
iicsmb.4 \
iir.4 \
${_imcsmb.4} \
inet.4 \
inet6.4 \
intpm.4 \
intro.4 \
${_io.4} \
${_ioat.4} \
ip.4 \
ip6.4 \
ipfirewall.4 \
ipheth.4 \
${_ipmi.4} \
2003-11-11 18:48:02 +00:00
ips.4 \
ipsec.4 \
ipw.4 \
ipwfw.4 \
isci.4 \
isl.4 \
ismt.4 \
isp.4 \
ispfw.4 \
${_itwd.4} \
iwi.4 \
iwifw.4 \
iwm.4 \
iwmfw.4 \
iwn.4 \
2009-05-09 19:44:23 +00:00
iwnfw.4 \
2008-09-04 20:45:32 +00:00
ixgbe.4 \
ixl.4 \
jedec_dimm.4 \
2008-05-27 02:18:17 +00:00
jme.4 \
kbdmux.4 \
keyboard.4 \
kld.4 \
ksyms.4 \
ksz8995ma.4 \
ktr.4 \
kue.4 \
lagg.4 \
le.4 \
led.4 \
lge.4 \
${_linux.4} \
liquidio.4 \
lm75.4 \
lo.4 \
lp.4 \
lpbb.4 \
lpt.4 \
Add support for i2c bus mux hardware. An i2c bus can be divided into segments which can be selectively connected and disconnected from the main bus. This is usually done to enable using multiple slave devices having the same address, by isolating the devices onto separate bus segments, only one of which is connected to the main bus at once. There are several types of i2c bus muxes, which break down into two general categories... - Muxes which are themselves i2c slaves. These devices respond to i2c commands on their upstream bus, and based on those commands, connect various downstream buses to the upstream. In newbus terms, they are both a child of an iicbus and the parent of one or more iicbus instances. - Muxes which are not i2c devices themselves. Such devices are part of the i2c bus electrically, but in newbus terms their parent is some other bus. The association with the upstream bus must be established by separate metadata (such as FDT data). In both cases, the mux driver has one or more iicbus child instances representing the downstream buses. The mux driver implements the iicbus_if interface, as if it were an iichb host bridge/i2c controller driver. It services the IO requests sent to it by forwarding them to the iicbus instance representing the upstream bus, after electrically connecting the upstream bus to the downstream bus that hosts the i2c slave device which made the IO request. The net effect is automatic mux switching which is transparent to slaves on the downstream buses. They just do i2c IO they way they normally do, and the bus is electrically connected for the duration of the IO and then idled when it is complete. The existing iicbus_if callback() method is enhanced so that the parameter passed to it can be a struct which contains a device_t for the requesting bus and slave devices. This change is done by adding a flag that indicates the extra values are present, and making the flags field the first field of a new args struct. If the flag is set, the iichb or mux driver can recast the pointer-to-flags into a pointer-to-struct and access the extra fields. Thus abi compatibility with older drivers is retained (but a mux cannot exist on the bus with the older iicbus driver in use.) A new set of core support routines exists in iicbus.c. This code will help implement mux drivers for any type of mux hardware by supplying all the boilerplate code that forwards IO requests upstream. It also has code for parsing metadata and instantiating the child iicbus instances based on it. Two new hardware mux drivers are added. The ltc430x driver supports the LTC4305/4306 mux chips which are controlled via i2c commands. The iic_gpiomux driver supports any mux hardware which is controlled by manipulating the state of one or more gpio pins. Test Plan Tested locally using a variety of mux'd bus configurations involving both ltc4305 and a homebrew gpio-controlled mux. Tested configurations included cascaded muxes (unlikely in the real world, but useful to prove that 'it all just works' in terms of the automatic switching and upstream forwarding of IO requests).
2020-01-02 17:51:49 +00:00
ltc430x.4 \
mac.4 \
mac_biba.4 \
mac_bsdextended.4 \
mac_ifoff.4 \
mac_lomac.4 \
mac_mls.4 \
mac_none.4 \
mac_ntpd.4 \
mac_partition.4 \
mac_portacl.4 \
mac_seeotheruids.4 \
mac_stub.4 \
mac_test.4 \
malo.4 \
md.4 \
mdio.4 \
me.4 \
mem.4 \
meteor.4 \
2006-03-29 07:35:39 +00:00
mfi.4 \
miibus.4 \
mk48txx.4 \
Merge final round of MLD changes from p4: ip6_input.c, in6.h: * Add netinet6-specific mbuf flag M_RTALERT_MLD, shadowing M_PROTO6. * Always set this flag if HBH Router Alert option is present for MLD, even when not forwarding. icmp6.c: * In icmp6_input(), spell m->m_pkthdr.rcvif as ifp to be consistent. * Use scope ID for verifying input. Do not apply SSM filters here, no inpcb. * Check for M_RTALERT_MLD when validating MLD traffic, as we can't see IPv6 hop options outside of ip6_input(). in6_mcast.c: * Use KAME scope/zone ID in in6_multi. * Update net.inet6.ip6.mcast.filters implementation to use scope IDs for comparisons. * Fix scope ID treatment in multicast socket option processing. Scope IDs passed in from userland will be ignored as other less ambiguous APIs exist for specifying the link. * Tighten userland input checks in IPv6 SSM delta and full-state ops. * Source filter embedded scope IDs need to be revisited, for now just clear them and ignore them on input. * Adapt KAME behaviour of looking up the scope ID in the default zone for multicast leaves, when the interface is ambiguous. mld6.c: * Tighten origin checks on MLD traffic as per RFC3810 Section 6.2: * ip6_src MAY be the unspecified address for MLDv1 reports. * ip6_src MAY have link-local address scope for MLDv1 reports, MLDv1 queries, and MLDv2 queries. * Perform address field validation *before* accepting queries. * Use KAME scope/zone ID in query/report processing. * Break const correctness for mld_v1_input_report(), mld_v1_input_query() as we temporarily modify the input mbuf chain. * Clear the scope ID before handoff to userland MLD daemon. * Fix MLDv1 old querier present timer processing. With the protocol defaults, hosts should revert to MLDv2 after 260s. * Add net.inet6.mld.v1enable sysctl, default to on. ifmcstat.c: * Use sysctl by default; -K requests kvm(3) if so compiled. mld.4: * Connect man page to build. Tested using PCS.
2009-05-27 18:57:13 +00:00
mld.4 \
mlx.4 \
mlx4en.4 \
mlx5en.4 \
mly.4 \
mmc.4 \
mmcsd.4 \
mn.4 \
mod_cc.4 \
mos.4 \
mouse.4 \
mpr.4 \
mps.4 \
mpt.4 \
mrsas.4 \
2006-12-13 02:37:48 +00:00
msk.4 \
mtio.4 \
multicast.4 \
muge.4 \
mvs.4 \
mwl.4 \
mwlfw.4 \
mx25l.4 \
mxge.4 \
my.4 \
${_ndis.4} \
net80211.4 \
netdump.4 \
netfpga10g_nf10bmac.4 \
netgdb.4 \
netgraph.4 \
netintro.4 \
Bring in support for netmap, a framework for very efficient packet I/O from userspace, capable of line rate at 10G, see http://info.iet.unipi.it/~luigi/netmap/ At this time I am bringing in only the generic code (sys/dev/netmap/ plus two headers under sys/net/), and some sample applications in tools/tools/netmap. There is also a manpage in share/man/man4 [1] In order to make use of the framework you need to build a kernel with "device netmap", and patch individual drivers with the code that you can find in sys/dev/netmap/head.diff The file will go away as the relevant pieces are committed to the various device drivers, which should happen in a few days after talking to the driver maintainers. Netmap support is available at the moment for Intel 10G and 1G cards (ixgbe, em/lem/igb), and for the Realtek 1G card ("re"). I have partial patches for "bge" and am starting to work on "cxgbe". Hopefully changes are trivial enough so interested third parties can submit their patches. Interested people can contact me for advice on how to add netmap support to specific devices. CREDITS: Netmap has been developed by Luigi Rizzo and other collaborators at the Universita` di Pisa, and supported by EU project CHANGE (http://www.change-project.eu/) The code is distributed under a BSD Copyright. [1] In my opinion is a bad idea to have all manpage in one directory. We should place kernel documentation in the same dir that contains the code, which would make it much simpler to keep doc and code in sync, reduce the clutter in share/man/ and incidentally is the policy used for all of userspace code. Makefiles and doc tools can be trivially adjusted to find the manpages in the relevant subdirs.
2011-11-17 12:17:39 +00:00
netmap.4 \
${_nfe.4} \
${_nfsmb.4} \
ng_async.4 \
ngatmbase.4 \
ng_atmllc.4 \
ng_bpf.4 \
ng_bridge.4 \
2002-11-21 00:06:08 +00:00
ng_bt3c.4 \
ng_btsocket.4 \
ng_car.4 \
ng_ccatm.4 \
ng_checksum.4 \
ng_cisco.4 \
ng_deflate.4 \
ng_device.4 \
nge.4 \
ng_echo.4 \
ng_eiface.4 \
ng_etf.4 \
ng_ether.4 \
ng_ether_echo.4 \
ng_frame_relay.4 \
2001-09-26 23:50:17 +00:00
ng_gif.4 \
ng_gif_demux.4 \
2002-11-21 00:06:08 +00:00
ng_h4.4 \
ng_hci.4 \
ng_hole.4 \
ng_hub.4 \
ng_iface.4 \
2005-02-05 17:53:44 +00:00
ng_ipfw.4 \
2005-09-28 07:31:18 +00:00
ng_ip_input.4 \
ng_ksocket.4 \
2002-11-21 00:06:08 +00:00
ng_l2cap.4 \
ng_l2tp.4 \
ng_lmi.4 \
ng_mppc.4 \
2005-05-06 15:33:12 +00:00
ng_nat.4 \
ng_netflow.4 \
2000-11-16 05:58:33 +00:00
ng_one2many.4 \
ng_patch.4 \
ng_pipe.4 \
ng_ppp.4 \
ng_pppoe.4 \
ng_pptpgre.4 \
ng_pred1.4 \
ng_rfc1490.4 \
ng_socket.4 \
ng_source.4 \
ng_split.4 \
2004-04-25 08:52:26 +00:00
ng_sppp.4 \
ng_sscfu.4 \
ng_sscop.4 \
ng_tag.4 \
2005-06-10 08:44:19 +00:00
ng_tcpmss.4 \
ng_tee.4 \
ng_tty.4 \
2002-11-21 00:06:08 +00:00
ng_ubt.4 \
ng_UI.4 \
ng_uni.4 \
ng_vjc.4 \
ng_vlan.4 \
2001-07-08 04:36:52 +00:00
nmdm.4 \
${_ntb.4} \
${_ntb_hw_amd.4} \
${_ntb_hw_intel.4} \
${_ntb_hw_plx.4} \
${_ntb_transport.4} \
${_nda.4} \
${_if_ntb.4} \
null.4 \
Add an initial NUMA affinity/policy configuration for threads and processes. This is based on work done by jeff@ and jhb@, as well as the numa.diff patch that has been circulating when someone asks for first-touch NUMA on -10 or -11. * Introduce a simple set of VM policy and iterator types. * tie the policy types into the vm_phys path for now, mirroring how the initial first-touch allocation work was enabled. * add syscalls to control changing thread and process defaults. * add a global NUMA VM domain policy. * implement a simple cascade policy order - if a thread policy exists, use it; if a process policy exists, use it; use the default policy. * processes inherit policies from their parent processes, threads inherit policies from their parent threads. * add a simple tool (numactl) to query and modify default thread/process policities. * add documentation for the new syscalls, for numa and for numactl. * re-enable first touch NUMA again by default, as now policies can be set in a variety of methods. This is only relevant for very specific workloads. This doesn't pretend to be a final NUMA solution. The previous defaults in -HEAD (with MAXMEMDOM set) can be achieved by 'sysctl vm.default_policy=rr'. This is only relevant if MAXMEMDOM is set to something other than 1. Ie, if you're using GENERIC or a modified kernel with non-NUMA, then this is a glorified no-op for you. Thank you to Norse Corp for giving me access to rather large (for FreeBSD!) NUMA machines in order to develop and verify this. Thank you to Dell for providing me with dual socket sandybridge and westmere v3 hardware to do NUMA development with. Thank you to Scott Long at Netflix for providing me with access to the two-socket, four-domain haswell v3 hardware. Thank you to Peter Holm for running the stress testing suite against the NUMA branch during various stages of development! Tested: * MIPS (regression testing; non-NUMA) * i386 (regression testing; non-NUMA GENERIC) * amd64 (regression testing; non-NUMA GENERIC) * westmere, 2 socket (thankyou norse!) * sandy bridge, 2 socket (thankyou dell!) * ivy bridge, 2 socket (thankyou norse!) * westmere-EX, 4 socket / 1TB RAM (thankyou norse!) * haswell, 2 socket (thankyou norse!) * haswell v3, 2 socket (thankyou dell) * haswell v3, 2x18 core (thankyou scott long / netflix!) * Peter Holm ran a stress test suite on this work and found one issue, but has not been able to verify it (it doesn't look NUMA related, and he only saw it once over many testing runs.) * I've tested bhyve instances running in fixed NUMA domains and cpusets; all seems to work correctly. Verified: * intel-pcm - pcm-numa.x and pcm-memory.x, whilst selecting different NUMA policies for processes under test. Review: This was reviewed through phabricator (https://reviews.freebsd.org/D2559) as well as privately and via emails to freebsd-arch@. The git history with specific attributes is available at https://github.com/erikarn/freebsd/ in the NUMA branch (https://github.com/erikarn/freebsd/compare/local/adrian_numa_policy). This has been reviewed by a number of people (stas, rpaulo, kib, ngie, wblock) but not achieved a clear consensus. My hope is that with further exposure and testing more functionality can be implemented and evaluated. Notes: * The VM doesn't handle unbalanced domains very well, and if you have an overly unbalanced memory setup whilst under high memory pressure, VM page allocation may fail leading to a kernel panic. This was a problem in the past, but it's much more easily triggered now with these tools. * This work only controls the path through vm_phys; it doesn't yet strongly/predictably affect contigmalloc, KVA placement, UMA, etc. So, driver placement of memory isn't really guaranteed in any way. That's next on my plate. Sponsored by: Norse Corp, Inc.; Dell
2015-07-11 15:21:37 +00:00
numa.4 \
${_nvd.4} \
${_nvdimm.4} \
${_nvme.4} \
${_nvram.4} \
${_nvram2env.4} \
oce.4 \
ocs_fc.4\
ohci.4 \
orm.4 \
ow.4 \
ow_temp.4 \
owc.4 \
${_padlock.4} \
pass.4 \
2002-07-09 05:08:49 +00:00
pccard.4 \
pccbb.4 \
pcf.4 \
${_pchtherm.4} \
pci.4 \
pcib.4 \
2001-08-21 20:07:49 +00:00
pcic.4 \
pcm.4 \
${_pf.4} \
${_pflog.4} \
${_pfsync.4} \
pim.4 \
pms.4 \
polling.4 \
ppbus.4 \
ppc.4 \
ppi.4 \
procdesc.4 \
proto.4 \
psm.4 \
pst.4 \
pt.4 \
ptnet.4 \
Integrate the new MPSAFE TTY layer to the FreeBSD operating system. The last half year I've been working on a replacement TTY layer for the FreeBSD kernel. The new TTY layer was designed to improve the following: - Improved driver model: The old TTY layer has a driver model that is not abstract enough to make it friendly to use. A good example is the output path, where the device drivers directly access the output buffers. This means that an in-kernel PPP implementation must always convert network buffers into TTY buffers. If a PPP implementation would be built on top of the new TTY layer (still needs a hooks layer, though), it would allow the PPP implementation to directly hand the data to the TTY driver. - Improved hotplugging: With the old TTY layer, it isn't entirely safe to destroy TTY's from the system. This implementation has a two-step destructing design, where the driver first abandons the TTY. After all threads have left the TTY, the TTY layer calls a routine in the driver, which can be used to free resources (unit numbers, etc). The pts(4) driver also implements this feature, which means posix_openpt() will now return PTY's that are created on the fly. - Improved performance: One of the major improvements is the per-TTY mutex, which is expected to improve scalability when compared to the old Giant locking. Another change is the unbuffered copying to userspace, which is both used on TTY device nodes and PTY masters. Upgrading should be quite straightforward. Unlike previous versions, existing kernel configuration files do not need to be changed, except when they reference device drivers that are listed in UPDATING. Obtained from: //depot/projects/mpsafetty/... Approved by: philip (ex-mentor) Discussed: on the lists, at BSDCan, at the DevSummit Sponsored by: Snow B.V., the Netherlands dcons(4) fixed by: kan
2008-08-20 08:31:58 +00:00
pts.4 \
pty.4 \
puc.4 \
2019-06-18 04:32:19 +00:00
pwmc.4 \
${_qlxge.4} \
${_qlxgb.4} \
${_qlxgbe.4} \
${_qlnxe.4} \
ral.4 \
random.4 \
rc.4 \
rctl.4 \
re.4 \
rgephy.4 \
rights.4 \
rl.4 \
2003-03-11 19:16:42 +00:00
rndtest.4 \
route.4 \
rp.4 \
rtwn.4 \
rtwnfw.4 \
rtwn_pci.4 \
rue.4 \
sa.4 \
2003-07-21 21:52:48 +00:00
safe.4 \
2002-10-25 14:34:24 +00:00
sbp.4 \
2003-11-07 09:41:42 +00:00
sbp_targ.4 \
scc.4 \
sched_4bsd.4 \
sched_ule.4 \
screen.4 \
scsi.4 \
2007-10-15 08:17:12 +00:00
sctp.4 \
2009-01-07 09:50:57 +00:00
sdhci.4 \
sem.4 \
send.4 \
ses.4 \
${_sfxge.4} \
sge.4 \
siba.4 \
siftr.4 \
siis.4 \
simplebus.4 \
sis.4 \
sk.4 \
${_smartpqi.4} \
smb.4 \
smbus.4 \
smp.4 \
smsc.4 \
snd_ad1816.4 \
snd_als4000.4 \
snd_atiixp.4 \
snd_cmi.4 \
snd_cs4281.4 \
snd_csa.4 \
snd_ds1.4 \
snd_emu10k1.4 \
snd_emu10kx.4 \
2006-06-17 16:43:21 +00:00
snd_envy24.4 \
2006-09-30 18:04:57 +00:00
snd_envy24ht.4 \
snd_es137x.4 \
2004-09-20 20:21:47 +00:00
snd_ess.4 \
snd_fm801.4 \
snd_gusc.4 \
snd_hda.4 \
snd_hdspe.4 \
snd_ich.4 \
snd_maestro3.4 \
2007-10-15 08:17:12 +00:00
snd_maestro.4 \
snd_mss.4 \
snd_neomagic.4 \
snd_sbc.4 \
snd_solo.4 \
2006-09-30 17:30:02 +00:00
snd_spicds.4 \
snd_t4dwave.4 \
snd_uaudio.4 \
snd_via8233.4 \
snd_via82c686.4 \
snd_vibes.4 \
snp.4 \
spigen.4 \
${_spkr.4} \
splash.4 \
sppp.4 \
ste.4 \
stf.4 \
2006-07-25 00:53:14 +00:00
stge.4 \
${_superio.4} \
sym.4 \
syncache.4 \
syncer.4 \
syscons.4 \
sysmouse.4 \
tap.4 \
targ.4 \
tcp.4 \
tdfx.4 \
Add terasic_mtl(4), a device driver for the Terasic Multi-Touch LCD, used with Terasic's DE-4 and other similar FPGA boards. This display is 800x480 and includes a capacitive touch screen, multi-touch gesture recognition, etc. This device driver depends on a Cambridge- provided IP core that allows the MTL device to be hooked up to the Altera Avalon SoC bus, and also provides a VGA-like text frame buffer. Although it is compiled as a single device driver, it actually implements a number of different device nodes exporting various aspects of this multi-function device to userspace: - Simple memory-mapped driver for the MTL 24-bit pixel frame buffer. - Simple memory-mapped driver for the MTL control register set. - Simple memory-mapped driver for the MTL text frame buffer. - syscons attachment for the MTL text frame buffer. This driver attaches directly to Nexus as is common for SoC device drivers, and for the time being is considered BERI-specific, although in principle it might be used with other hard and soft cores on Altera FPGAs. Control registers, including touchscreen input, are simply memory mapped; in the future it would be desirable to hook up a more conventional device node that can stream events, support kqueue(2)/ poll(2)/select(2), etc. This is the first use of syscons on MIPS, as far as I can tell, and there are some loose ends, such as an inability to use the hardware cursor. More fundamentally, it appears that syscons(4) assumes that either a host is PC-like (i386, amd64) *or* it must be using a graphical frame buffer. While the MTL supports a graphical frame buffer, using the text frame buffer is preferable for console use. Fixing this issue in syscons(4) requires non-trivial changes, as the text frame buffer support assumes that direct memory access can be done to the text frame buffer without using bus accessor methods, which is not the case on MIPS. As a workaround for this, we instead double-buffer and pretend to be a graphical frame buffer exposing text accessor methods, leading to some quirks in syscons behaviour. Sponsored by: DARPA, AFRL
2012-08-25 22:35:29 +00:00
terasic_mtl.4 \
termios.4 \
textdump.4 \
ti.4 \
timecounters.4 \
2010-08-13 05:01:44 +00:00
${_tpm.4} \
tty.4 \
tun.4 \
twa.4 \
twe.4 \
tws.4 \
udp.4 \
udplite.4 \
ure.4 \
vale.4 \
vga.4 \
vge.4 \
viapm.4 \
${_viawd.4} \
${_virtio.4} \
${_virtio_balloon.4} \
${_virtio_blk.4} \
${_virtio_console.4} \
${_virtio_random.4} \
${_virtio_scsi.4} \
${_vmci.4} \
vkbd.4 \
vlan.4 \
vxlan.4 \
${_vmd.4} \
${_vmm.4} \
${_vmx.4} \
vr.4 \
vt.4 \
vte.4 \
${_vtnet.4} \
watchdog.4 \
2012-05-30 02:02:37 +00:00
${_wbwd.4} \
wi.4 \
witness.4 \
wlan.4 \
wlan_acl.4 \
wlan_amrr.4 \
wlan_ccmp.4 \
wlan_tkip.4 \
wlan_wep.4 \
wlan_xauth.4 \
wmt.4 \
${_wpi.4} \
wsp.4 \
${_xen.4} \
xhci.4 \
xl.4 \
${_xnb.4} \
xpt.4 \
zero.4
MLINKS= ads111x.4 ads1013.4 \
ads111x.4 ads1014.4 \
ads111x.4 ads1015.4 \
ads111x.4 ads1113.4 \
ads111x.4 ads1114.4 \
ads111x.4 ads1115.4
MLINKS+=ae.4 if_ae.4
2008-11-29 18:21:31 +00:00
MLINKS+=age.4 if_age.4
MLINKS+=agp.4 agpgart.4
MLINKS+=alc.4 if_alc.4
2008-11-29 18:21:31 +00:00
MLINKS+=ale.4 if_ale.4
MLINKS+=altera_atse.4 atse.4
MLINKS+=altera_sdcard.4 altera_sdcardc.4
MLINKS+=altq.4 ALTQ.4
MLINKS+=ath.4 if_ath.4
MLINKS+=ath_pci.4 if_ath_pci.4
MLINKS+=an.4 if_an.4
MLINKS+=aue.4 if_aue.4
MLINKS+=axe.4 if_axe.4
MLINKS+=bce.4 if_bce.4
MLINKS+=bfe.4 if_bfe.4
MLINKS+=bge.4 if_bge.4
MLINKS+=bnxt.4 if_bnxt.4
MLINKS+=bridge.4 if_bridge.4
2009-05-16 10:42:00 +00:00
MLINKS+=bwi.4 if_bwi.4
MLINKS+=bwn.4 if_bwn.4
MLINKS+=${_bxe.4} ${_if_bxe.4}
MLINKS+=cas.4 if_cas.4
MLINKS+=cdce.4 if_cdce.4
MLINKS+=cfi.4 cfid.4
MLINKS+=cloudabi.4 cloudabi32.4 \
cloudabi.4 cloudabi64.4
MLINKS+=crypto.4 cryptodev.4
MLINKS+=cue.4 if_cue.4
MLINKS+=cxgb.4 if_cxgb.4
MLINKS+=cxgbe.4 if_cxgbe.4 \
cxgbe.4 vcxgbe.4 \
cxgbe.4 if_vcxgbe.4 \
cxgbe.4 cxl.4 \
cxgbe.4 if_cxl.4 \
cxgbe.4 vcxl.4 \
cxgbe.4 if_vcxl.4 \
cxgbe.4 cc.4 \
cxgbe.4 if_cc.4 \
cxgbe.4 vcc.4 \
cxgbe.4 if_vcc.4
Chelsio T4/T5 VF driver. The cxgbev/cxlv driver supports Virtual Function devices for Chelsio T4 and T4 adapters. The VF devices share most of their code with the existing PF4 driver (cxgbe/cxl) and as such the VF device driver currently depends on the PF4 driver. Similar to the cxgbe/cxl drivers, the VF driver includes a t4vf/t5vf PCI device driver that attaches to the VF device. It then creates child cxgbev/cxlv devices representing ports assigned to the VF. By default, the PF driver assigns a single port to each VF. t4vf_hw.c contains VF-specific routines from the shared code used to fetch VF-specific parameters from the firmware. t4_vf.c contains the VF-specific PCI device driver and includes its own attach routine. VF devices are required to use a different firmware request when transmitting packets (which in turn requires a different CPL message to encapsulate messages). This alternate firmware request does not permit chaining multiple packets in a single message, so each packet results in a firmware request. In addition, the different CPL message requires more detailed information when enabling hardware checksums, so parse_pkt() on VF devices must examine L2 and L3 headers for all packets (not just TSO packets) for VF devices. Finally, L2 checksums on non-UDP/non-TCP packets do not work reliably (the firmware trashes the IPv4 fragment field), so IPv4 checksums for such packets are calculated in software. Most of the other changes in the non-VF-specific code are to expose various variables and functions private to the PF driver so that they can be used by the VF driver. Note that a limited subset of cxgbetool functions are supported on VF devices including register dumps, scheduler classes, and clearing of statistics. In addition, TOE is not supported on VF devices, only for the PF interfaces. Reviewed by: np MFC after: 2 months Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D7599
2016-09-07 18:13:57 +00:00
MLINKS+=cxgbev.4 if_cxgbev.4 \
cxgbev.4 cxlv.4 \
cxgbev.4 if_cxlv.4 \
cxgbev.4 ccv.4 \
cxgbev.4 if_ccv.4
MLINKS+=dc.4 if_dc.4
MLINKS+=disc.4 if_disc.4
MLINKS+=edsc.4 if_edsc.4
MLINKS+=em.4 if_em.4 \
em.4 igb.4 \
em.4 if_igb.4
MLINKS+=enc.4 if_enc.4
MLINKS+=epair.4 if_epair.4
MLINKS+=et.4 if_et.4
MLINKS+=fd.4 stderr.4 \
fd.4 stdin.4 \
fd.4 stdout.4
MLINKS+=fdt.4 FDT.4
MLINKS+=firewire.4 ieee1394.4
2004-01-09 17:49:03 +00:00
MLINKS+=fwe.4 if_fwe.4
2004-06-14 10:55:03 +00:00
MLINKS+=fwip.4 if_fwip.4
MLINKS+=fxp.4 if_fxp.4
MLINKS+=gem.4 if_gem.4
2003-10-23 05:27:38 +00:00
MLINKS+=geom.4 GEOM.4
MLINKS+=gif.4 if_gif.4
2014-04-01 14:17:38 +00:00
MLINKS+=gpio.4 gpiobus.4
MLINKS+=gpioths.4 dht11.4
MLINKS+=gpioths.4 dht22.4
MLINKS+=gre.4 if_gre.4
MLINKS+=hme.4 if_hme.4
2010-09-15 04:51:07 +00:00
MLINKS+=hpet.4 acpi_hpet.4
MLINKS+=${_hptrr.4} ${_rr232x.4}
2010-09-17 04:55:01 +00:00
MLINKS+=${_attimer.4} ${_i8254.4}
MLINKS+=ip.4 rawip.4
MLINKS+=ipfirewall.4 ipaccounting.4 \
ipfirewall.4 ipacct.4 \
ipfirewall.4 ipfw.4
MLINKS+=ipheth.4 if_ipheth.4
MLINKS+=ipw.4 if_ipw.4
MLINKS+=iwi.4 if_iwi.4
MLINKS+=iwm.4 if_iwm.4
2008-11-29 18:21:31 +00:00
MLINKS+=iwn.4 if_iwn.4
MLINKS+=ixgbe.4 ix.4
MLINKS+=ixgbe.4 if_ix.4
2008-09-04 20:45:32 +00:00
MLINKS+=ixgbe.4 if_ixgbe.4
MLINKS+=ixl.4 if_ixl.4
MLINKS+=iavf.4 if_iavf.4
2008-11-29 18:21:31 +00:00
MLINKS+=jme.4 if_jme.4
MLINKS+=kue.4 if_kue.4
2007-04-17 00:57:54 +00:00
MLINKS+=lagg.4 trunk.4
MLINKS+=lagg.4 if_lagg.4
MLINKS+=le.4 if_le.4
MLINKS+=lge.4 if_lge.4
MLINKS+=lo.4 loop.4
1999-04-14 16:04:55 +00:00
MLINKS+=lp.4 plip.4
2008-11-29 18:21:31 +00:00
MLINKS+=malo.4 if_malo.4
MLINKS+=md.4 vn.4
MLINKS+=mem.4 kmem.4
MLINKS+=mfi.4 mfi_linux.4 \
mfi.4 mfip.4
MLINKS+=mlx5en.4 mce.4
MLINKS+=mn.4 if_mn.4
MLINKS+=mos.4 if_mos.4
MLINKS+=msk.4 if_msk.4
MLINKS+=mwl.4 if_mwl.4
MLINKS+=mxge.4 if_mxge.4
MLINKS+=my.4 if_my.4
MLINKS+=${_ndis.4} ${_if_ndis.4}
MLINKS+=netfpga10g_nf10bmac.4 if_nf10bmac.4
MLINKS+=netintro.4 net.4 \
netintro.4 networking.4
MLINKS+=${_nfe.4} ${_if_nfe.4}
MLINKS+=nge.4 if_nge.4
MLINKS+=ow.4 onewire.4
MLINKS+=pccbb.4 cbb.4
MLINKS+=pcm.4 snd.4 \
pcm.4 sound.4
MLINKS+=pms.4 pmspcv.4
MLINKS+=ptnet.4 if_ptnet.4
MLINKS+=ral.4 if_ral.4
MLINKS+=re.4 if_re.4
MLINKS+=rl.4 if_rl.4
MLINKS+=rtwn_pci.4 if_rtwn_pci.4
2004-01-14 13:35:15 +00:00
MLINKS+=rue.4 if_rue.4
MLINKS+=scsi.4 CAM.4 \
scsi.4 cam.4 \
scsi.4 scbus.4 \
scsi.4 SCSI.4
MLINKS+=sge.4 if_sge.4
MLINKS+=sis.4 if_sis.4
MLINKS+=sk.4 if_sk.4
1999-04-14 16:04:55 +00:00
MLINKS+=smp.4 SMP.4
MLINKS+=smsc.4 if_smsc.4
2006-06-17 16:43:21 +00:00
MLINKS+=snd_envy24.4 snd_ak452x.4
MLINKS+=snd_sbc.4 snd_sb16.4 \
snd_sbc.4 snd_sb8.4
MLINKS+=${_spkr.4} ${_speaker.4}
MLINKS+=splash.4 screensaver.4
MLINKS+=ste.4 if_ste.4
MLINKS+=stf.4 if_stf.4
2006-07-25 00:53:14 +00:00
MLINKS+=stge.4 if_stge.4
MLINKS+=syncache.4 syncookies.4
MLINKS+=syscons.4 sc.4
MLINKS+=tap.4 if_tap.4 \
tap.4 vmnet.4 \
tap.4 if_vmnet.4
MLINKS+=tdfx.4 tdfx_linux.4
MLINKS+=ti.4 if_ti.4
MLINKS+=tun.4 if_tun.4
MLINKS+=ure.4 if_ure.4
MLINKS+=vge.4 if_vge.4
MLINKS+=vlan.4 if_vlan.4
MLINKS+=vxlan.4 if_vxlan.4
MLINKS+=${_vmx.4} ${_if_vmx.4}
MLINKS+=vr.4 if_vr.4
MLINKS+=vte.4 if_vte.4
MLINKS+=${_vtnet.4} ${_if_vtnet.4}
2007-10-15 08:17:12 +00:00
MLINKS+=watchdog.4 SW_WATCHDOG.4
MLINKS+=wi.4 if_wi.4
MLINKS+=${_wpi.4} ${_if_wpi.4}
MLINKS+=xl.4 if_xl.4
.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
_acpi_asus.4= acpi_asus.4
_acpi_asus_wmi.4= acpi_asus_wmi.4
_acpi_dock.4= acpi_dock.4
_acpi_fujitsu.4=acpi_fujitsu.4
_acpi_hp.4= acpi_hp.4
_acpi_ibm.4= acpi_ibm.4
_acpi_panasonic.4=acpi_panasonic.4
_acpi_rapidstart.4=acpi_rapidstart.4
_acpi_sony.4= acpi_sony.4
_acpi_toshiba.4=acpi_toshiba.4
_acpi_wmi.4= acpi_wmi.4
2010-09-06 20:35:48 +00:00
_aesni.4= aesni.4
_aout.4= aout.4
_apic.4= apic.4
2010-09-17 08:44:54 +00:00
_atrtc.4= atrtc.4
2010-09-17 04:55:01 +00:00
_attimer.4= attimer.4
_aibs.4= aibs.4
_amdsbwd.4= amdsbwd.4
_amdsmb.4= amdsmb.4
_amdsmn.4= amdsmn.4
_amdtemp.4= amdtemp.4
2007-11-13 11:23:52 +00:00
_asmc.4= asmc.4
_bxe.4= bxe.4
_bytgpio.4= bytgpio.4
_chvgpio.4= chvgpio.4
_coretemp.4= coretemp.4
_cpuctl.4= cpuctl.4
_dpms.4= dpms.4
_hpt27xx.4= hpt27xx.4
_hptiop.4= hptiop.4
_hptmv.4= hptmv.4
_hptnr.4= hptnr.4
_hptrr.4= hptrr.4
_hv_kvp.4= hv_kvp.4
_hv_netvsc.4= hv_netvsc.4
_hv_storvsc.4= hv_storvsc.4
_hv_utils.4= hv_utils.4
_hv_vmbus.4= hv_vmbus.4
_hv_vss.4= hv_vss.4
2020-02-20 06:45:51 +00:00
_hwpstate_intel.4= hwpstate_intel.4
2010-09-17 04:55:01 +00:00
_i8254.4= i8254.4
_ichwd.4= ichwd.4
_if_bxe.4= if_bxe.4
_if_ndis.4= if_ndis.4
_if_nfe.4= if_nfe.4
2009-01-23 05:53:49 +00:00
_if_urtw.4= if_urtw.4
_if_vmx.4= if_vmx.4
_if_vtnet.4= if_vtnet.4
_if_wpi.4= if_wpi.4
_imcsmb.4= imcsmb.4
_ipmi.4= ipmi.4
_io.4= io.4
_itwd.4= itwd.4
_linux.4= linux.4
_nda.4= nda.4
_ndis.4= ndis.4
_nfe.4= nfe.4
2007-10-15 08:17:12 +00:00
_nfsmb.4= nfsmb.4
_if_ntb.4= if_ntb.4
_ntb.4= ntb.4
_ntb_hw_amd.4= ntb_hw_amd.4
_ntb_hw_intel.4= ntb_hw_intel.4
_ntb_hw_plx.4= ntb_hw_plx.4
_ntb_transport.4=ntb_transport.4
_nvd.4= nvd.4
_nvme.4= nvme.4
_nvram.4= nvram.4
_padlock.4= padlock.4
_pchtherm.4= pchtherm.4
_rr232x.4= rr232x.4
_speaker.4= speaker.4
2007-10-15 08:17:12 +00:00
_spkr.4= spkr.4
_superio.4= superio.4
2010-08-13 05:01:44 +00:00
_tpm.4= tpm.4
2009-01-23 05:53:49 +00:00
_urtw.4= urtw.4
_viawd.4= viawd.4
_virtio.4= virtio.4
_virtio_balloon.4=virtio_balloon.4
_virtio_blk.4= virtio_blk.4
_virtio_console.4=virtio_console.4
_virtio_random.4= virtio_random.4
_virtio_scsi.4= virtio_scsi.4
_vmci.4= vmci.4
_vmx.4= vmx.4
_vtnet.4= vtnet.4
2012-05-30 02:02:37 +00:00
_wbwd.4= wbwd.4
_wpi.4= wpi.4
_xen.4= xen.4
_xnb.4= xnb.4
.endif
.if ${MACHINE_CPUARCH} == "amd64"
_ioat.4= ioat.4
_nvdimm.4= nvdimm.4
_qlxge.4= qlxge.4
_qlxgb.4= qlxgb.4
_qlxgbe.4= qlxgbe.4
_qlnxe.4= qlnxe.4
_sfxge.4= sfxge.4
_smartpqi.4= smartpqi.4
_vmd.4= vmd.4
MLINKS+=qlxge.4 if_qlxge.4
MLINKS+=qlxgb.4 if_qlxgb.4
MLINKS+=qlxgbe.4 if_qlxgbe.4
MLINKS+=qlnxe.4 if_qlnxe.4
MLINKS+=sfxge.4 if_sfxge.4
.if ${MK_BHYVE} != "no"
_bhyve.4= bhyve.4
_vmm.4= vmm.4
.endif
.endif
.if ${MACHINE_CPUARCH} == "mips"
_nvram2env.4= nvram2env.4
.endif
.if ${MACHINE_CPUARCH} == "powerpc"
_if_vtnet.4= if_vtnet.4
_nvd.4= nvd.4
_nvme.4= nvme.4
_virtio.4= virtio.4
_virtio_balloon.4=virtio_balloon.4
_virtio_blk.4= virtio_blk.4
_virtio_console.4=virtio_console.4
_virtio_random.4= virtio_random.4
_virtio_scsi.4= virtio_scsi.4
_vtnet.4= vtnet.4
.endif
.if empty(MAN_ARCH)
__arches= ${MACHINE} ${MACHINE_ARCH} ${MACHINE_CPUARCH}
.elif ${MAN_ARCH} == "all"
__arches= ${:!/bin/sh -c "/bin/ls -d ${.CURDIR}/man4.*"!:E}
.else
__arches= ${MAN_ARCH}
.endif
.for __arch in ${__arches:O:u}
.if exists(${.CURDIR}/man4.${__arch})
SUBDIR+= man4.${__arch}
.endif
.endfor
1994-05-30 19:09:18 +00:00
.if ${MK_BLUETOOTH} != "no"
MAN+= ng_bluetooth.4
.endif
.if ${MK_CCD} != "no"
_ccd.4= ccd.4
.endif
.if ${MK_CDDL} != "no"
_dtrace_provs= dtrace_audit.4 \
dtrace_io.4 \
dtrace_ip.4 \
dtrace_lockstat.4 \
dtrace_proc.4 \
dtrace_sched.4 \
dtrace_sctp.4 \
dtrace_tcp.4 \
dtrace_udp.4 \
dtrace_udplite.4
MLINKS+= dtrace_audit.4 dtaudit.4
.endif
.if ${MK_EFI} != "no"
MAN+= efidev.4
MLINKS+= efidev.4 efirtc.4
.endif
.if ${MK_ISCSI} != "no"
MAN+= cfiscsi.4
MAN+= iscsi.4
MAN+= iscsi_initiator.4
MAN+= iser.4
.endif
.if ${MK_OFED} != "no"
MAN+= mlx4ib.4
MAN+= mlx5ib.4
.endif
.if ${MK_MLX5TOOL} != "no"
MAN+= mlx5io.4
.endif
.if ${MK_TESTS} != "no"
ATF= ${SRCTOP}/contrib/atf
.PATH: ${ATF}/doc
_atf_test_case.4= atf-test-case.4
.endif
.if ${MK_PF} != "no"
_pf.4= pf.4
_pflog.4= pflog.4
_pfsync.4= pfsync.4
.endif
.if ${MK_USB} != "no"
MAN+= \
otus.4 \
otusfw.4 \
rsu.4 \
rsufw.4 \
rtwn_usb.4 \
rum.4 \
run.4 \
runfw.4 \
u3g.4 \
uark.4 \
uart.4 \
uath.4 \
ubsa.4 \
ubsec.4 \
ubser.4 \
ubtbcmfw.4 \
uchcom.4 \
ucom.4 \
ucycom.4 \
udav.4 \
udbp.4 \
udl.4 \
uep.4 \
ufm.4 \
ufoma.4 \
uftdi.4 \
ugen.4 \
ugold.4 \
uhci.4 \
uhid.4 \
uhso.4 \
uipaq.4 \
ukbd.4 \
uled.4 \
ulpt.4 \
umass.4 \
umcs.4 \
umct.4 \
umodem.4 \
umoscom.4 \
ums.4 \
unix.4 \
upgt.4 \
uplcom.4 \
ural.4 \
urio.4 \
urndis.4 \
${_urtw.4} \
usb.4 \
usb_quirk.4 \
usb_template.4 \
usfs.4 \
uslcom.4 \
uvisor.4 \
uvscom.4 \
zyd.4
MLINKS+=otus.4 if_otus.4
MLINKS+=rsu.4 if_rsu.4
MLINKS+=rtwn_usb.4 if_rtwn_usb.4
MLINKS+=rum.4 if_rum.4
MLINKS+=run.4 if_run.4
MLINKS+=u3g.4 u3gstub.4
MLINKS+=uath.4 if_uath.4
MLINKS+=udav.4 if_udav.4
MLINKS+=upgt.4 if_upgt.4
MLINKS+=ural.4 if_ural.4
MLINKS+=urndis.4 if_urndis.4
MLINKS+=${_urtw.4} ${_if_urtw.4}
MLINKS+=zyd.4 if_zyd.4
.endif
1994-05-30 19:09:18 +00:00
.include <bsd.prog.mk>