From 5cb84ec742fd33f78c8022863fadaa8d0d93e176 Mon Sep 17 00:00:00 2001 From: Jacob McDonnell Date: Sat, 25 Apr 2026 15:32:58 -0400 Subject: feat: Added NetBSD man pages --- build | 82 +- static/netbsd/Makefile | 12 + static/netbsd/man0/Makefile | 108 + static/netbsd/man0/back | 80 + static/netbsd/man0/break | 5 + static/netbsd/man0/cover | 62 + static/netbsd/man0/cshcmd | 54 + static/netbsd/man0/groff.sed | 22 + static/netbsd/man0/ignore | 99 + static/netbsd/man0/intros | 33 + static/netbsd/man0/makewhatis.sed | 66 + static/netbsd/man0/noman | 6 + static/netbsd/man0/title.cdrom | 1260 ++++++ static/netbsd/man0/title.prm | 587 +++ static/netbsd/man0/title.urm | 2018 +++++++++ static/netbsd/man0/tocrc | 79 + static/netbsd/man1/Makefile | 5 + static/netbsd/man1/cd.1 | 114 + static/netbsd/man1/intro.1 | 81 + static/netbsd/man1/ld.so.1 | 60 + static/netbsd/man1/man1.atari/Makefile | 4 + static/netbsd/man1/man1.atari/edahdi.1 | 150 + static/netbsd/man1/man1.atari/msconfig.1 | 62 + static/netbsd/man1/man1.x68k/Makefile | 4 + static/netbsd/man1/man1.x68k/aout2hux.1 | 81 + static/netbsd/man1/man1.x68k/bellctrl.1 | 85 + static/netbsd/man1/man1.x68k/loadfont.1 | 42 + static/netbsd/man1/man1.x68k/loadkmap.1 | 24 + static/netbsd/man1/man1.x68k/palette.1 | 50 + static/netbsd/man1/man1.x68k/tvctrl.1 | 24 + static/netbsd/man1/wait.1 | 98 + static/netbsd/man2/Makefile | 4 + static/netbsd/man2/siginfo.2 | 442 ++ static/netbsd/man2/ucontext.2 | 137 + static/netbsd/man3/CMSG_DATA.3 | 188 + static/netbsd/man3/Makefile | 4 + static/netbsd/man3/_DIAGASSERT.3 | 130 + static/netbsd/man3/__CONCAT.3 | 108 + static/netbsd/man3/__FPTRCAST.3 | 80 + static/netbsd/man3/__UNCONST.3 | 88 + static/netbsd/man3/__USE.3 | 122 + static/netbsd/man3/__alignof__.3 | 84 + static/netbsd/man3/__arraycount.3 | 62 + static/netbsd/man3/__builtin_constant_p.3 | 78 + static/netbsd/man3/__builtin_prefetch.3 | 115 + static/netbsd/man3/__builtin_return_address.3 | 67 + static/netbsd/man3/__builtin_types_compatible_p.3 | 104 + static/netbsd/man3/__insn_barrier.3 | 63 + static/netbsd/man3/assert.3 | 98 + static/netbsd/man3/attribute.3 | 392 ++ static/netbsd/man3/bitmap.3 | 151 + static/netbsd/man3/bitops.3 | 64 + static/netbsd/man3/bits.3 | 160 + static/netbsd/man3/bitstring.3 | 184 + static/netbsd/man3/cdefs.3 | 116 + static/netbsd/man3/container_of.3 | 78 + static/netbsd/man3/dirent.3 | 214 + static/netbsd/man3/dl_iterate_phdr.3 | 84 + static/netbsd/man3/dlfcn.3 | 377 ++ static/netbsd/man3/dlinfo.3 | 285 ++ static/netbsd/man3/end.3 | 81 + static/netbsd/man3/fast_divide32.3 | 113 + static/netbsd/man3/ffs32.3 | 103 + static/netbsd/man3/gcq.3 | 532 +++ static/netbsd/man3/ilog2.3 | 85 + static/netbsd/man3/intro.3 | 314 ++ static/netbsd/man3/inttypes.3 | 152 + static/netbsd/man3/iso646.3 | 71 + static/netbsd/man3/limits.3 | 171 + static/netbsd/man3/makedev.3 | 80 + static/netbsd/man3/offsetof.3 | 72 + static/netbsd/man3/param.3 | 101 + static/netbsd/man3/paths.3 | 98 + static/netbsd/man3/queue.3 | 1103 +++++ static/netbsd/man3/rbtree.3 | 319 ++ static/netbsd/man3/sigevent.3 | 180 + static/netbsd/man3/stdarg.3 | 269 ++ static/netbsd/man3/stdbool.3 | 78 + static/netbsd/man3/stddef.3 | 93 + static/netbsd/man3/stdint.3 | 139 + static/netbsd/man3/stdlib.3 | 110 + static/netbsd/man3/sysexits.3 | 152 + static/netbsd/man3/tgmath.3 | 154 + static/netbsd/man3/timeradd.3 | 144 + static/netbsd/man3/timeval.3 | 189 + static/netbsd/man3/tm.3 | 112 + static/netbsd/man3/tree.3 | 610 +++ static/netbsd/man3/typeof.3 | 63 + static/netbsd/man3/types.3 | 223 + static/netbsd/man3/uchar.3 | 151 + static/netbsd/man3/unistd.3 | 109 + static/netbsd/man3lua/Makefile | 4 + static/netbsd/man3lua/bozohttpd.3lua | 94 + static/netbsd/man3lua/gpio.3lua | 178 + static/netbsd/man3lua/intro.3lua | 85 + static/netbsd/man3lua/libm.3lua | 151 + static/netbsd/man3lua/netpgp.3lua | 89 + static/netbsd/man3lua/sqlite.3lua | 334 ++ static/netbsd/man3lua/syslog.3lua | 217 + static/netbsd/man4/Makefile | 36 + static/netbsd/man4/aac.4 | 105 + static/netbsd/man4/ac97.4 | 78 + static/netbsd/man4/acardide.4 | 69 + static/netbsd/man4/aceride.4 | 58 + static/netbsd/man4/acphy.4 | 58 + static/netbsd/man4/acpi.4 | 573 +++ static/netbsd/man4/acpiacad.4 | 58 + static/netbsd/man4/acpibat.4 | 123 + static/netbsd/man4/acpibut.4 | 59 + static/netbsd/man4/acpicpu.4 | 365 ++ static/netbsd/man4/acpidalb.4 | 73 + static/netbsd/man4/acpiec.4 | 123 + static/netbsd/man4/acpifan.4 | 75 + static/netbsd/man4/acpihed.4 | 72 + static/netbsd/man4/acpilid.4 | 94 + static/netbsd/man4/acpipmtr.4 | 66 + static/netbsd/man4/acpismbus.4 | 82 + static/netbsd/man4/acpitz.4 | 128 + static/netbsd/man4/acpivga.4 | 124 + static/netbsd/man4/acpivmgenid.4 | 108 + static/netbsd/man4/acpiwdrt.4 | 62 + static/netbsd/man4/acpiwmi.4 | 100 + static/netbsd/man4/adb.4 | 265 ++ static/netbsd/man4/adbbt.4 | 50 + static/netbsd/man4/adbkbd.4 | 62 + static/netbsd/man4/adbms.4 | 54 + static/netbsd/man4/adc.4 | 50 + static/netbsd/man4/adm1026hm.4 | 101 + static/netbsd/man4/admtemp.4 | 86 + static/netbsd/man4/adv.4 | 157 + static/netbsd/man4/adw.4 | 100 + static/netbsd/man4/age.4 | 91 + static/netbsd/man4/agp.4 | 246 ++ static/netbsd/man4/agr.4 | 172 + static/netbsd/man4/aha.4 | 58 + static/netbsd/man4/ahb.4 | 52 + static/netbsd/man4/ahc.4 | 402 ++ static/netbsd/man4/ahcisata.4 | 69 + static/netbsd/man4/ahd.4 | 194 + static/netbsd/man4/aht20temp.4 | 76 + static/netbsd/man4/ai.4 | 65 + static/netbsd/man4/aibs.4 | 235 ++ static/netbsd/man4/aic.4 | 79 + static/netbsd/man4/akbd.4 | 189 + static/netbsd/man4/alc.4 | 77 + static/netbsd/man4/ale.4 | 93 + static/netbsd/man4/alipm.4 | 52 + static/netbsd/man4/altmem.4 | 67 + static/netbsd/man4/altq.4 | 97 + static/netbsd/man4/am2315temp.4 | 97 + static/netbsd/man4/amdgpio.4 | 101 + static/netbsd/man4/amdpm.4 | 55 + static/netbsd/man4/amdtemp.4 | 88 + static/netbsd/man4/amhphy.4 | 53 + static/netbsd/man4/amr.4 | 179 + static/netbsd/man4/ams.4 | 80 + static/netbsd/man4/an.4 | 144 + static/netbsd/man4/apei.4 | 133 + static/netbsd/man4/aps.4 | 85 + static/netbsd/man4/aq.4 | 105 + static/netbsd/man4/arcmsr.4 | 161 + static/netbsd/man4/arcofi.4 | 102 + static/netbsd/man4/aria.4 | 72 + static/netbsd/man4/artsata.4 | 62 + static/netbsd/man4/ast.4 | 92 + static/netbsd/man4/asus.4 | 77 + static/netbsd/man4/ata.4 | 54 + static/netbsd/man4/atalk.4 | 183 + static/netbsd/man4/ataraid.4 | 94 + static/netbsd/man4/ate.4 | 75 + static/netbsd/man4/ath.4 | 307 ++ static/netbsd/man4/athn.4 | 251 ++ static/netbsd/man4/atphy.4 | 37 + static/netbsd/man4/atppc.4 | 115 + static/netbsd/man4/attimer.4 | 55 + static/netbsd/man4/atu.4 | 115 + static/netbsd/man4/atw.4 | 197 + static/netbsd/man4/auacer.4 | 54 + static/netbsd/man4/aubtfwl.4 | 78 + static/netbsd/man4/audio.4 | 835 ++++ static/netbsd/man4/audiocs.4 | 51 + static/netbsd/man4/aue.4 | 171 + static/netbsd/man4/auich.4 | 80 + static/netbsd/man4/auixp.4 | 64 + static/netbsd/man4/autri.4 | 50 + static/netbsd/man4/auvia.4 | 53 + static/netbsd/man4/auvitek.4 | 102 + static/netbsd/man4/awi.4 | 186 + static/netbsd/man4/axe.4 | 205 + static/netbsd/man4/axen.4 | 95 + static/netbsd/man4/az.4 | 76 + static/netbsd/man4/battery_pmu.4 | 53 + static/netbsd/man4/bba.4 | 55 + static/netbsd/man4/bce.4 | 61 + static/netbsd/man4/bcsp.4 | 69 + static/netbsd/man4/be.4 | 83 + static/netbsd/man4/bge.4 | 254 ++ static/netbsd/man4/bha.4 | 75 + static/netbsd/man4/bio.4 | 235 ++ static/netbsd/man4/bktr.4 | 499 +++ static/netbsd/man4/bluetooth.4 | 428 ++ static/netbsd/man4/bmtphy.4 | 54 + static/netbsd/man4/bmx280thp.4 | 110 + static/netbsd/man4/bnx.4 | 195 + static/netbsd/man4/boca.4 | 130 + static/netbsd/man4/bochsfb.4 | 80 + static/netbsd/man4/bpf.4 | 890 ++++ static/netbsd/man4/bpfjit.4 | 116 + static/netbsd/man4/brgphy.4 | 49 + static/netbsd/man4/bridge.4 | 142 + static/netbsd/man4/bt3c.4 | 86 + static/netbsd/man4/btbc.4 | 51 + static/netbsd/man4/bthidev.4 | 118 + static/netbsd/man4/bthub.4 | 118 + static/netbsd/man4/btkbd.4 | 77 + static/netbsd/man4/btmagic.4 | 146 + static/netbsd/man4/btms.4 | 64 + static/netbsd/man4/btsco.4 | 142 + static/netbsd/man4/btuart.4 | 64 + static/netbsd/man4/bwfm.4 | 59 + static/netbsd/man4/bwi.4 | 136 + static/netbsd/man4/cac.4 | 96 + static/netbsd/man4/can.4 | 106 + static/netbsd/man4/canloop.4 | 54 + static/netbsd/man4/cardbus.4 | 199 + static/netbsd/man4/carp.4 | 209 + static/netbsd/man4/cas.4 | 109 + static/netbsd/man4/ccd.4 | 161 + static/netbsd/man4/cd.4 | 409 ++ static/netbsd/man4/cdce.4 | 145 + static/netbsd/man4/cec.4 | 70 + static/netbsd/man4/cfb.4 | 54 + static/netbsd/man4/cgd.4 | 324 ++ static/netbsd/man4/ch.4 | 50 + static/netbsd/man4/chipsfb.4 | 47 + static/netbsd/man4/ciphy.4 | 56 + static/netbsd/man4/cir.4 | 53 + static/netbsd/man4/ciss.4 | 188 + static/netbsd/man4/clcs.4 | 60 + static/netbsd/man4/clct.4 | 53 + static/netbsd/man4/clockctl.4 | 133 + static/netbsd/man4/cmdide.4 | 75 + static/netbsd/man4/cmpci.4 | 129 + static/netbsd/man4/cms.4 | 61 + static/netbsd/man4/cnw.4 | 112 + static/netbsd/man4/com.4 | 191 + static/netbsd/man4/coram.4 | 69 + static/netbsd/man4/crypto.4 | 663 +++ static/netbsd/man4/cs.4 | 66 + static/netbsd/man4/cs80bus.4 | 54 + static/netbsd/man4/cuda.4 | 51 + static/netbsd/man4/cue.4 | 93 + static/netbsd/man4/cxdtv.4 | 72 + static/netbsd/man4/cy.4 | 91 + static/netbsd/man4/cypide.4 | 58 + static/netbsd/man4/cz.4 | 128 + static/netbsd/man4/dbcool.4 | 264 ++ static/netbsd/man4/ddb.4 | 1739 ++++++++ static/netbsd/man4/ddc.4 | 61 + static/netbsd/man4/dge.4 | 139 + static/netbsd/man4/dk.4 | 183 + static/netbsd/man4/dm.4 | 140 + static/netbsd/man4/dmoverio.4 | 244 ++ static/netbsd/man4/dmphy.4 | 50 + static/netbsd/man4/dpt.4 | 115 + static/netbsd/man4/dpti.4 | 78 + static/netbsd/man4/drm.4 | 272 ++ static/netbsd/man4/drum.4 | 57 + static/netbsd/man4/drvctl.4 | 205 + static/netbsd/man4/ds2482ow.4 | 87 + static/netbsd/man4/ds28e17iic.4 | 92 + static/netbsd/man4/dse.4 | 82 + static/netbsd/man4/dtide.4 | 57 + static/netbsd/man4/dtv.4 | 113 + static/netbsd/man4/dtviic.4 | 158 + static/netbsd/man4/dwctwo.4 | 51 + static/netbsd/man4/ea.4 | 71 + static/netbsd/man4/eap.4 | 94 + static/netbsd/man4/eb.4 | 61 + static/netbsd/man4/ebus.4 | 60 + static/netbsd/man4/ec.4 | 162 + static/netbsd/man4/edc.4 | 69 + static/netbsd/man4/ef.4 | 61 + static/netbsd/man4/eg.4 | 46 + static/netbsd/man4/ehci.4 | 73 + static/netbsd/man4/ei.4 | 58 + static/netbsd/man4/eisa.4 | 143 + static/netbsd/man4/el.4 | 49 + static/netbsd/man4/elmc.4 | 63 + static/netbsd/man4/emcfan.4 | 161 + static/netbsd/man4/emdtv.4 | 81 + static/netbsd/man4/emuxki.4 | 88 + static/netbsd/man4/ena.4 | 106 + static/netbsd/man4/envsys.4 | 472 +++ static/netbsd/man4/ep.4 | 209 + static/netbsd/man4/epic.4 | 60 + static/netbsd/man4/eqos.4 | 57 + static/netbsd/man4/esa.4 | 63 + static/netbsd/man4/esiop.4 | 100 + static/netbsd/man4/esm.4 | 64 + static/netbsd/man4/eso.4 | 73 + static/netbsd/man4/esp.4 | 149 + static/netbsd/man4/ess.4 | 80 + static/netbsd/man4/et.4 | 79 + static/netbsd/man4/etphy.4 | 58 + static/netbsd/man4/ex.4 | 155 + static/netbsd/man4/exphy.4 | 49 + static/netbsd/man4/faith.4 | 129 + static/netbsd/man4/fd.4 | 96 + static/netbsd/man4/finsio.4 | 75 + static/netbsd/man4/flash.4 | 69 + static/netbsd/man4/fms.4 | 54 + static/netbsd/man4/fmv.4 | 76 + static/netbsd/man4/fss.4 | 158 + static/netbsd/man4/fujbp.4 | 94 + static/netbsd/man4/full.4 | 56 + static/netbsd/man4/fwip.4 | 82 + static/netbsd/man4/fwohci.4 | 148 + static/netbsd/man4/fxp.4 | 155 + static/netbsd/man4/g760a.4 | 74 + static/netbsd/man4/gcscaudio.4 | 60 + static/netbsd/man4/gem.4 | 115 + static/netbsd/man4/genet.4 | 78 + static/netbsd/man4/genfb.4 | 85 + static/netbsd/man4/gentbi.4 | 48 + static/netbsd/man4/geodeide.4 | 103 + static/netbsd/man4/gif.4 | 276 ++ static/netbsd/man4/glxtphy.4 | 48 + static/netbsd/man4/gphyter.4 | 50 + static/netbsd/man4/gpib.4 | 61 + static/netbsd/man4/gpio.4 | 245 ++ static/netbsd/man4/gpioiic.4 | 95 + static/netbsd/man4/gpioirq.4 | 147 + static/netbsd/man4/gpiolock.4 | 67 + static/netbsd/man4/gpioow.4 | 73 + static/netbsd/man4/gpiopps.4 | 106 + static/netbsd/man4/gpiopwm.4 | 92 + static/netbsd/man4/gpiosim.4 | 58 + static/netbsd/man4/gre.4 | 359 ++ static/netbsd/man4/gscan.4 | 55 + static/netbsd/man4/gsip.4 | 94 + static/netbsd/man4/gtp.4 | 78 + static/netbsd/man4/gus.4 | 87 + static/netbsd/man4/guspnp.4 | 117 + static/netbsd/man4/hcide.4 | 57 + static/netbsd/man4/hdaudio.4 | 131 + static/netbsd/man4/hifn.4 | 118 + static/netbsd/man4/hil.4 | 84 + static/netbsd/man4/hilid.4 | 47 + static/netbsd/man4/hilkbd.4 | 108 + static/netbsd/man4/hilms.4 | 48 + static/netbsd/man4/hme.4 | 114 + static/netbsd/man4/hpacel.4 | 85 + static/netbsd/man4/hpqlb.4 | 70 + static/netbsd/man4/hptide.4 | 59 + static/netbsd/man4/hvn.4 | 70 + static/netbsd/man4/hythygtemp.4 | 83 + static/netbsd/man4/iavf.4 | 63 + static/netbsd/man4/ibmcd.4 | 68 + static/netbsd/man4/ibmhawk.4 | 58 + static/netbsd/man4/ichsmb.4 | 68 + static/netbsd/man4/icmp.4 | 122 + static/netbsd/man4/icmp6.4 | 255 ++ static/netbsd/man4/icp.4 | 60 + static/netbsd/man4/icsphy.4 | 49 + static/netbsd/man4/iee.4 | 173 + static/netbsd/man4/ieee1394if.4 | 113 + static/netbsd/man4/ieee80211.4 | 246 ++ static/netbsd/man4/ietp.4 | 47 + static/netbsd/man4/ifmedia.4 | 473 +++ static/netbsd/man4/igc.4 | 68 + static/netbsd/man4/igmafb.4 | 83 + static/netbsd/man4/igphy.4 | 49 + static/netbsd/man4/igpio.4 | 94 + static/netbsd/man4/igsfb.4 | 56 + static/netbsd/man4/iha.4 | 70 + static/netbsd/man4/ihidev.4 | 60 + static/netbsd/man4/ihphy.4 | 50 + static/netbsd/man4/iic.4 | 290 ++ static/netbsd/man4/ikphy.4 | 53 + static/netbsd/man4/ims.4 | 54 + static/netbsd/man4/inet.4 | 187 + static/netbsd/man4/inet6.4 | 408 ++ static/netbsd/man4/inphy.4 | 55 + static/netbsd/man4/intersil7170.4 | 117 + static/netbsd/man4/intro.4 | 181 + static/netbsd/man4/ioasic.4 | 103 + static/netbsd/man4/ioat.4 | 94 + static/netbsd/man4/iop.4 | 193 + static/netbsd/man4/iophy.4 | 49 + static/netbsd/man4/iopsp.4 | 68 + static/netbsd/man4/ip.4 | 545 +++ static/netbsd/man4/ip6.4 | 732 ++++ static/netbsd/man4/ipgphy.4 | 36 + static/netbsd/man4/ipmi.4 | 87 + static/netbsd/man4/ipsec.4 | 397 ++ static/netbsd/man4/ipsecif.4 | 198 + static/netbsd/man4/ipw.4 | 99 + static/netbsd/man4/irframe.4 | 91 + static/netbsd/man4/irframetty.4 | 74 + static/netbsd/man4/irmce.4 | 62 + static/netbsd/man4/isa.4 | 312 ++ static/netbsd/man4/isapnp.4 | 143 + static/netbsd/man4/ismt.4 | 79 + static/netbsd/man4/isp.4 | 134 + static/netbsd/man4/isv.4 | 87 + static/netbsd/man4/iteide.4 | 69 + static/netbsd/man4/itesio.4 | 94 + static/netbsd/man4/iwi.4 | 100 + static/netbsd/man4/iwm.4 | 69 + static/netbsd/man4/iwn.4 | 254 ++ static/netbsd/man4/ix.4 | 55 + static/netbsd/man4/ixg.4 | 116 + static/netbsd/man4/ixl.4 | 71 + static/netbsd/man4/ixpide.4 | 71 + static/netbsd/man4/ixv.4 | 80 + static/netbsd/man4/iy.4 | 88 + static/netbsd/man4/jme.4 | 85 + static/netbsd/man4/jmide.4 | 70 + static/netbsd/man4/jmphy.4 | 63 + static/netbsd/man4/joy.4 | 154 + static/netbsd/man4/kcov.4 | 197 + static/netbsd/man4/kloader.4 | 95 + static/netbsd/man4/kse.4 | 74 + static/netbsd/man4/ksyms.4 | 123 + static/netbsd/man4/kttcp.4 | 63 + static/netbsd/man4/kue.4 | 114 + static/netbsd/man4/l2tp.4 | 175 + static/netbsd/man4/lagg.4 | 200 + static/netbsd/man4/lc.4 | 60 + static/netbsd/man4/ld.4 | 90 + static/netbsd/man4/le.4 | 449 ++ static/netbsd/man4/lii.4 | 54 + static/netbsd/man4/lm.4 | 142 + static/netbsd/man4/lmenv.4 | 95 + static/netbsd/man4/lmtemp.4 | 84 + static/netbsd/man4/lo.4 | 86 + static/netbsd/man4/lpt.4 | 97 + static/netbsd/man4/lua.4 | 198 + static/netbsd/man4/lxtphy.4 | 49 + static/netbsd/man4/m25p.4 | 70 + static/netbsd/man4/machfb.4 | 75 + static/netbsd/man4/mainbus.4 | 48 + static/netbsd/man4/makphy.4 | 50 + static/netbsd/man4/malo.4 | 180 + static/netbsd/man4/man4.acorn32/Makefile | 4 + static/netbsd/man4/man4.acorn32/asc.4 | 47 + static/netbsd/man4/man4.acorn32/autoconf.4 | 65 + static/netbsd/man4/man4.acorn32/cosc.4 | 47 + static/netbsd/man4/man4.acorn32/csc.4 | 47 + static/netbsd/man4/man4.acorn32/ie.4 | 58 + static/netbsd/man4/man4.acorn32/intro.4 | 136 + static/netbsd/man4/man4.acorn32/iomdkbc.4 | 78 + static/netbsd/man4/man4.acorn32/lpt.4 | 52 + static/netbsd/man4/man4.acorn32/mainbus.4 | 45 + static/netbsd/man4/man4.acorn32/mem.4 | 80 + static/netbsd/man4/man4.acorn32/ptsc.4 | 47 + static/netbsd/man4/man4.acorn32/qms.4 | 25 + static/netbsd/man4/man4.acorn32/vidcaudio.4 | 71 + static/netbsd/man4/man4.acorn32/vidcvideo.4 | 84 + static/netbsd/man4/man4.alpha/Makefile | 4 + static/netbsd/man4/man4.alpha/apecs.4 | 49 + static/netbsd/man4/man4.alpha/asc.4 | 54 + static/netbsd/man4/man4.alpha/autoconf.4 | 78 + static/netbsd/man4/man4.alpha/cia.4 | 49 + static/netbsd/man4/man4.alpha/dwlpx.4 | 48 + static/netbsd/man4/man4.alpha/gbus.4 | 56 + static/netbsd/man4/man4.alpha/intro.4 | 605 +++ static/netbsd/man4/man4.alpha/irongate.4 | 48 + static/netbsd/man4/man4.alpha/jensenio.4 | 76 + static/netbsd/man4/man4.alpha/kft.4 | 55 + static/netbsd/man4/man4.alpha/lca.4 | 47 + static/netbsd/man4/man4.alpha/mcbus.4 | 70 + static/netbsd/man4/man4.alpha/mcpcia.4 | 48 + static/netbsd/man4/man4.alpha/sableio.4 | 66 + static/netbsd/man4/man4.alpha/tcasic.4 | 48 + static/netbsd/man4/man4.alpha/tlsb.4 | 62 + static/netbsd/man4/man4.alpha/tsc.4 | 48 + static/netbsd/man4/man4.alpha/tsciic.4 | 47 + static/netbsd/man4/man4.alpha/tsp.4 | 48 + static/netbsd/man4/man4.alpha/ttwoga.4 | 47 + static/netbsd/man4/man4.alpha/ttwopci.4 | 48 + static/netbsd/man4/man4.amiga/Makefile | 4 + static/netbsd/man4/man4.amiga/a1k2cp.4 | 73 + static/netbsd/man4/man4.amiga/a2kbbc.4 | 46 + static/netbsd/man4/man4.amiga/a34kbbc.4 | 46 + static/netbsd/man4/man4.amiga/acafh.4 | 67 + static/netbsd/man4/man4.amiga/afsc.4 | 90 + static/netbsd/man4/man4.amiga/ahsc.4 | 90 + static/netbsd/man4/man4.amiga/amidisplaycc.4 | 96 + static/netbsd/man4/man4.amiga/atzsc.4 | 98 + static/netbsd/man4/man4.amiga/autoconf.4 | 94 + static/netbsd/man4/man4.amiga/bah.4 | 132 + static/netbsd/man4/man4.amiga/bppcsc.4 | 66 + static/netbsd/man4/man4.amiga/clockport.4 | 75 + static/netbsd/man4/man4.amiga/console.4 | 75 + static/netbsd/man4/man4.amiga/cv3dpb.4 | 69 + static/netbsd/man4/man4.amiga/drbbc.4 | 46 + static/netbsd/man4/man4.amiga/ed.4 | 80 + static/netbsd/man4/man4.amiga/efa.4 | 116 + static/netbsd/man4/man4.amiga/em4k.4 | 85 + static/netbsd/man4/man4.amiga/empb.4 | 105 + static/netbsd/man4/man4.amiga/es.4 | 76 + static/netbsd/man4/man4.amiga/fdc.4 | 79 + static/netbsd/man4/man4.amiga/grf.4 | 76 + static/netbsd/man4/man4.amiga/grfcl.4 | 96 + static/netbsd/man4/man4.amiga/grfcv.4 | 100 + static/netbsd/man4/man4.amiga/grfcv3d.4 | 103 + static/netbsd/man4/man4.amiga/grfet.4 | 85 + static/netbsd/man4/man4.amiga/grfrh.4 | 73 + static/netbsd/man4/man4.amiga/grfrt.4 | 70 + static/netbsd/man4/man4.amiga/grful.4 | 77 + static/netbsd/man4/man4.amiga/gtsc.4 | 90 + static/netbsd/man4/man4.amiga/intro.4 | 171 + static/netbsd/man4/man4.amiga/ite.4 | 137 + static/netbsd/man4/man4.amiga/mem.4 | 76 + static/netbsd/man4/man4.amiga/mfcs.4 | 85 + static/netbsd/man4/man4.amiga/mgnsc.4 | 82 + static/netbsd/man4/man4.amiga/mntva.4 | 77 + static/netbsd/man4/man4.amiga/mppb.4 | 72 + static/netbsd/man4/man4.amiga/p5membar.4 | 62 + static/netbsd/man4/man4.amiga/p5pb.4 | 108 + static/netbsd/man4/man4.amiga/qn.4 | 93 + static/netbsd/man4/man4.amiga/ser.4 | 81 + static/netbsd/man4/man4.amiga/wesc.4 | 90 + static/netbsd/man4/man4.amiga/xsh.4 | 74 + static/netbsd/man4/man4.amiga/xsurf.4 | 82 + static/netbsd/man4/man4.amiga/z3rambd.4 | 83 + static/netbsd/man4/man4.amiga/zssc.4 | 82 + static/netbsd/man4/man4.amiga/zz9k.4 | 124 + static/netbsd/man4/man4.arc/Makefile | 4 + static/netbsd/man4/man4.arc/intro.4 | 185 + static/netbsd/man4/man4.atari/Makefile | 4 + static/netbsd/man4/man4.atari/et.4 | 100 + static/netbsd/man4/man4.atari/floppy.4 | 59 + static/netbsd/man4/man4.atari/intro.4 | 157 + static/netbsd/man4/man4.atari/ms.4 | 90 + static/netbsd/man4/man4.atari/rtc.4 | 60 + static/netbsd/man4/man4.cobalt/Makefile | 4 + static/netbsd/man4/man4.cobalt/gt.4 | 45 + static/netbsd/man4/man4.cobalt/intro.4 | 124 + static/netbsd/man4/man4.dreamcast/Makefile | 4 + static/netbsd/man4/man4.dreamcast/aica.4 | 54 + static/netbsd/man4/man4.dreamcast/g2bus.4 | 49 + static/netbsd/man4/man4.dreamcast/gapspci.4 | 55 + static/netbsd/man4/man4.dreamcast/gdrom.4 | 63 + static/netbsd/man4/man4.dreamcast/intro.4 | 136 + static/netbsd/man4/man4.dreamcast/maple.4 | 83 + static/netbsd/man4/man4.dreamcast/mkbd.4 | 53 + static/netbsd/man4/man4.dreamcast/mlcd.4 | 65 + static/netbsd/man4/man4.dreamcast/mmem.4 | 87 + static/netbsd/man4/man4.dreamcast/mms.4 | 53 + static/netbsd/man4/man4.dreamcast/pvr.4 | 52 + static/netbsd/man4/man4.emips/Makefile | 4 + static/netbsd/man4/man4.emips/ace.4 | 58 + static/netbsd/man4/man4.emips/autoconf.4 | 61 + static/netbsd/man4/man4.emips/dz.4 | 90 + static/netbsd/man4/man4.emips/ebus.4 | 68 + static/netbsd/man4/man4.emips/eclock.4 | 44 + static/netbsd/man4/man4.emips/enic.4 | 82 + static/netbsd/man4/man4.emips/intro.4 | 132 + static/netbsd/man4/man4.evbarm/Makefile | 4 + static/netbsd/man4/man4.evbarm/awge.4 | 45 + static/netbsd/man4/man4.evbarm/bcmgpio.4 | 65 + static/netbsd/man4/man4.evbarm/cpsw.4 | 50 + static/netbsd/man4/man4.evbarm/epgpio.4 | 103 + static/netbsd/man4/man4.evbarm/gxio.4 | 121 + static/netbsd/man4/man4.evbarm/intro.4 | 101 + static/netbsd/man4/man4.evbarm/iopaau.4 | 111 + static/netbsd/man4/man4.evbarm/iopwdog.4 | 71 + static/netbsd/man4/man4.evbarm/rktsadc.4 | 66 + static/netbsd/man4/man4.evbarm/sun8icrypto.4 | 109 + static/netbsd/man4/man4.evbarm/vcaudio.4 | 68 + static/netbsd/man4/man4.evbarm/vchiq.4 | 75 + static/netbsd/man4/man4.evbmips/Makefile | 4 + static/netbsd/man4/man4.evbmips/aupci.4 | 56 + static/netbsd/man4/man4.evbmips/cnmac.4 | 61 + static/netbsd/man4/man4.evbmips/intro.4 | 151 + static/netbsd/man4/man4.evbppc/Makefile | 4 + static/netbsd/man4/man4.evbppc/cpc.4 | 54 + static/netbsd/man4/man4.evbppc/intro_pmppc.4 | 123 + static/netbsd/man4/man4.evbppc/mainbus.4 | 54 + static/netbsd/man4/man4.evbppc/rtc.4 | 49 + static/netbsd/man4/man4.hp300/Makefile | 4 + static/netbsd/man4/man4.hp300/autoconf.4 | 144 + static/netbsd/man4/man4.hp300/cons.4 | 73 + static/netbsd/man4/man4.hp300/ct.4 | 102 + static/netbsd/man4/man4.hp300/dcl.4 | 130 + static/netbsd/man4/man4.hp300/dcm.4 | 97 + static/netbsd/man4/man4.hp300/dio.4 | 103 + static/netbsd/man4/man4.hp300/dnkbd.4 | 46 + static/netbsd/man4/man4.hp300/dvbox.4 | 70 + static/netbsd/man4/man4.hp300/frodo.4 | 58 + static/netbsd/man4/man4.hp300/gbox.4 | 94 + static/netbsd/man4/man4.hp300/hpib.4 | 49 + static/netbsd/man4/man4.hp300/hyper.4 | 46 + static/netbsd/man4/man4.hp300/intio.4 | 72 + static/netbsd/man4/man4.hp300/intro.4 | 136 + static/netbsd/man4/man4.hp300/mem.4 | 84 + static/netbsd/man4/man4.hp300/ppi.4 | 75 + static/netbsd/man4/man4.hp300/rbox.4 | 69 + static/netbsd/man4/man4.hp300/rd.4 | 328 ++ static/netbsd/man4/man4.hp300/rmp.4 | 171 + static/netbsd/man4/man4.hp300/rtc.4 | 50 + static/netbsd/man4/man4.hp300/topcat.4 | 81 + static/netbsd/man4/man4.hpcarm/Makefile | 4 + static/netbsd/man4/man4.hpcarm/intro.4 | 154 + static/netbsd/man4/man4.hpcarm/j720kbd.4 | 47 + static/netbsd/man4/man4.hpcarm/j720lcd.4 | 47 + static/netbsd/man4/man4.hpcarm/j720tp.4 | 72 + static/netbsd/man4/man4.hpcmips/Makefile | 4 + static/netbsd/man4/man4.hpcmips/teliosio.4 | 55 + static/netbsd/man4/man4.hpcsh/Makefile | 4 + static/netbsd/man4/man4.hpcsh/intro.4 | 201 + static/netbsd/man4/man4.hpcsh/j6x0lcd.4 | 51 + static/netbsd/man4/man4.hpcsh/j6x0tp.4 | 100 + static/netbsd/man4/man4.hpcsh/psh3lcd.4 | 62 + static/netbsd/man4/man4.hpcsh/psh3tp.4 | 52 + static/netbsd/man4/man4.hppa/Makefile | 4 + static/netbsd/man4/man4.hppa/asp.4 | 104 + static/netbsd/man4/man4.hppa/astro.4 | 47 + static/netbsd/man4/man4.hppa/cpu.4 | 266 ++ static/netbsd/man4/man4.hppa/dino.4 | 103 + static/netbsd/man4/man4.hppa/elroy.4 | 43 + static/netbsd/man4/man4.hppa/gsc.4 | 118 + static/netbsd/man4/man4.hppa/gsckbc.4 | 77 + static/netbsd/man4/man4.hppa/harmony.4 | 117 + static/netbsd/man4/man4.hppa/intro.4 | 287 ++ static/netbsd/man4/man4.hppa/io.4 | 157 + static/netbsd/man4/man4.hppa/lasi.4 | 148 + static/netbsd/man4/man4.hppa/lcd.4 | 52 + static/netbsd/man4/man4.hppa/mem.4 | 84 + static/netbsd/man4/man4.hppa/mongoose.4 | 83 + static/netbsd/man4/man4.hppa/pdc.4 | 723 ++++ static/netbsd/man4/man4.hppa/phantomas.4 | 87 + static/netbsd/man4/man4.hppa/ssio.4 | 56 + static/netbsd/man4/man4.hppa/uturn.4 | 66 + static/netbsd/man4/man4.hppa/wax.4 | 107 + static/netbsd/man4/man4.i386/Makefile | 4 + static/netbsd/man4/man4.i386/apm.4 | 214 + static/netbsd/man4/man4.i386/cmos.4 | 129 + static/netbsd/man4/man4.i386/elanpar.4 | 97 + static/netbsd/man4/man4.i386/elanpex.4 | 101 + static/netbsd/man4/man4.i386/elansc.4 | 131 + static/netbsd/man4/man4.i386/gcscide.4 | 54 + static/netbsd/man4/man4.i386/gcscpcib.4 | 56 + static/netbsd/man4/man4.i386/geodecntr.4 | 54 + static/netbsd/man4/man4.i386/geodewdog.4 | 61 + static/netbsd/man4/man4.i386/glxsb.4 | 70 + static/netbsd/man4/man4.i386/gscpcib.4 | 75 + static/netbsd/man4/man4.i386/intro.4 | 176 + static/netbsd/man4/man4.i386/io.4 | 76 + static/netbsd/man4/man4.i386/lms.4 | 53 + static/netbsd/man4/man4.i386/mms.4 | 53 + static/netbsd/man4/man4.i386/pcibios.4 | 164 + static/netbsd/man4/man4.i386/pcmb.4 | 39 + static/netbsd/man4/man4.i386/pnpbios.4 | 100 + static/netbsd/man4/man4.i386/rdcide.4 | 54 + static/netbsd/man4/man4.i386/rdcpcib.4 | 49 + static/netbsd/man4/man4.i386/spic.4 | 71 + static/netbsd/man4/man4.luna68k/Makefile | 4 + static/netbsd/man4/man4.luna68k/autoconf.4 | 76 + static/netbsd/man4/man4.luna68k/intro.4 | 120 + static/netbsd/man4/man4.luna68k/lcd.4 | 86 + static/netbsd/man4/man4.luna68k/mem.4 | 76 + static/netbsd/man4/man4.luna68k/xp.4 | 75 + static/netbsd/man4/man4.mac68k/Makefile | 4 + static/netbsd/man4/man4.mac68k/ae.4 | 95 + static/netbsd/man4/man4.mac68k/ascaudio.4 | 72 + static/netbsd/man4/man4.mac68k/autoconf.4 | 100 + static/netbsd/man4/man4.mac68k/cpi.4 | 113 + static/netbsd/man4/man4.mac68k/intro.4 | 135 + static/netbsd/man4/man4.mac68k/iwm.4 | 88 + static/netbsd/man4/man4.mac68k/mainbus.4 | 65 + static/netbsd/man4/man4.mac68k/mem.4 | 75 + static/netbsd/man4/man4.mac68k/netdock.4 | 83 + static/netbsd/man4/man4.mac68k/obio.4 | 111 + static/netbsd/man4/man4.mac68k/pbbat.4 | 111 + static/netbsd/man4/man4.mac68k/zsc.4 | 77 + static/netbsd/man4/man4.macppc/Makefile | 4 + static/netbsd/man4/man4.macppc/autoconf.4 | 70 + static/netbsd/man4/man4.macppc/awacs.4 | 55 + static/netbsd/man4/man4.macppc/bm.4 | 61 + static/netbsd/man4/man4.macppc/gm.4 | 75 + static/netbsd/man4/man4.macppc/intro.4 | 170 + static/netbsd/man4/man4.macppc/mesh.4 | 113 + static/netbsd/man4/man4.macppc/obio.4 | 109 + static/netbsd/man4/man4.macppc/pbms.4 | 58 + static/netbsd/man4/man4.macppc/platinumfb.4 | 64 + static/netbsd/man4/man4.macppc/snapper.4 | 68 + static/netbsd/man4/man4.mvme68k/Makefile | 4 + static/netbsd/man4/man4.mvme68k/autoconf.4 | 67 + static/netbsd/man4/man4.mvme68k/clmpcc.4 | 92 + static/netbsd/man4/man4.mvme68k/clock.4 | 56 + static/netbsd/man4/man4.mvme68k/ie.4 | 48 + static/netbsd/man4/man4.mvme68k/intro.4 | 142 + static/netbsd/man4/man4.mvme68k/lpt.4 | 64 + static/netbsd/man4/man4.mvme68k/mainbus.4 | 58 + static/netbsd/man4/man4.mvme68k/mem.4 | 76 + static/netbsd/man4/man4.mvme68k/memc.4 | 72 + static/netbsd/man4/man4.mvme68k/ncrsc.4 | 62 + static/netbsd/man4/man4.mvme68k/pcc.4 | 56 + static/netbsd/man4/man4.mvme68k/pcctwo.4 | 57 + static/netbsd/man4/man4.mvme68k/wdsc.4 | 75 + static/netbsd/man4/man4.mvme68k/zsc.4 | 65 + static/netbsd/man4/man4.pmax/Makefile | 4 + static/netbsd/man4/man4.pmax/asc.4 | 70 + static/netbsd/man4/man4.pmax/autoconf.4 | 68 + static/netbsd/man4/man4.pmax/ibus.4 | 74 + static/netbsd/man4/man4.pmax/intro.4 | 193 + static/netbsd/man4/man4.pmax/pm.4 | 56 + static/netbsd/man4/man4.pmax/sii.4 | 75 + static/netbsd/man4/man4.pmax/xcfb.4 | 56 + static/netbsd/man4/man4.prep/Makefile | 4 + static/netbsd/man4/man4.prep/intro.4 | 140 + static/netbsd/man4/man4.prep/nvram.4 | 121 + static/netbsd/man4/man4.sandpoint/Makefile | 4 + static/netbsd/man4/man4.sandpoint/nhpow.4 | 135 + static/netbsd/man4/man4.sandpoint/satmgr.4 | 128 + static/netbsd/man4/man4.sgimips/Makefile | 4 + static/netbsd/man4/man4.sgimips/crime.4 | 51 + static/netbsd/man4/man4.sgimips/dpclock.4 | 52 + static/netbsd/man4/man4.sgimips/dsclock.4 | 51 + static/netbsd/man4/man4.sgimips/gio.4 | 93 + static/netbsd/man4/man4.sgimips/giopci.4 | 62 + static/netbsd/man4/man4.sgimips/grtwo.4 | 60 + static/netbsd/man4/man4.sgimips/haltwo.4 | 50 + static/netbsd/man4/man4.sgimips/hpc.4 | 100 + static/netbsd/man4/man4.sgimips/imc.4 | 53 + static/netbsd/man4/man4.sgimips/intro.4 | 177 + static/netbsd/man4/man4.sgimips/light.4 | 65 + static/netbsd/man4/man4.sgimips/mace.4 | 54 + static/netbsd/man4/man4.sgimips/mavb.4 | 68 + static/netbsd/man4/man4.sgimips/mec.4 | 57 + static/netbsd/man4/man4.sgimips/newport.4 | 53 + static/netbsd/man4/man4.sgimips/pic.4 | 51 + static/netbsd/man4/man4.sgimips/sq.4 | 66 + static/netbsd/man4/man4.sgimips/wdsc.4 | 60 + static/netbsd/man4/man4.sparc/Makefile | 4 + static/netbsd/man4/man4.sparc/apc.4 | 49 + static/netbsd/man4/man4.sparc/audioamd.4 | 47 + static/netbsd/man4/man4.sparc/autoconf.4 | 68 + static/netbsd/man4/man4.sparc/auxreg.4 | 57 + static/netbsd/man4/man4.sparc/bpp.4 | 43 + static/netbsd/man4/man4.sparc/bwtwo.4 | 53 + static/netbsd/man4/man4.sparc/cgeight.4 | 57 + static/netbsd/man4/man4.sparc/cgfour.4 | 57 + static/netbsd/man4/man4.sparc/cgfourteen.4 | 79 + static/netbsd/man4/man4.sparc/cgsix.4 | 208 + static/netbsd/man4/man4.sparc/cgthree.4 | 58 + static/netbsd/man4/man4.sparc/cgtwo.4 | 56 + static/netbsd/man4/man4.sparc/clock.4 | 72 + static/netbsd/man4/man4.sparc/dbri.4 | 44 + static/netbsd/man4/man4.sparc/fd.4 | 118 + static/netbsd/man4/man4.sparc/ie.4 | 61 + static/netbsd/man4/man4.sparc/intro.4 | 301 ++ static/netbsd/man4/man4.sparc/kbd.4 | 184 + static/netbsd/man4/man4.sparc/magma.4 | 125 + static/netbsd/man4/man4.sparc/mem.4 | 76 + static/netbsd/man4/man4.sparc/ms.4 | 98 + static/netbsd/man4/man4.sparc/nell.4 | 60 + static/netbsd/man4/man4.sparc/openprom.4 | 161 + static/netbsd/man4/man4.sparc/pnozz.4 | 68 + static/netbsd/man4/man4.sparc/tctrl.4 | 63 + static/netbsd/man4/man4.sparc/tcx.4 | 61 + static/netbsd/man4/man4.sparc/timer.4 | 55 + static/netbsd/man4/man4.sparc/tslot.4 | 55 + static/netbsd/man4/man4.sparc/xd.4 | 49 + static/netbsd/man4/man4.sparc/xy.4 | 45 + static/netbsd/man4/man4.sparc/zx.4 | 58 + static/netbsd/man4/man4.sparc64/Makefile | 4 + static/netbsd/man4/man4.sparc64/envctrl.4 | 74 + static/netbsd/man4/man4.sparc64/fdc.4 | 119 + static/netbsd/man4/man4.sparc64/ffb.4 | 221 + static/netbsd/man4/man4.sparc64/intro.4 | 195 + static/netbsd/man4/man4.sparc64/lom.4 | 71 + static/netbsd/man4/man4.sparc64/psycho.4 | 51 + static/netbsd/man4/man4.sparc64/pyro.4 | 62 + static/netbsd/man4/man4.sparc64/sab.4 | 88 + static/netbsd/man4/man4.sparc64/schizo.4 | 52 + static/netbsd/man4/man4.sparc64/tadpmu.4 | 55 + static/netbsd/man4/man4.sparc64/tda.4 | 69 + static/netbsd/man4/man4.sun2/Makefile | 4 + static/netbsd/man4/man4.sun2/autoconf.4 | 68 + static/netbsd/man4/man4.sun2/bwtwo.4 | 50 + static/netbsd/man4/man4.sun2/ec.4 | 68 + static/netbsd/man4/man4.sun2/ie.4 | 70 + static/netbsd/man4/man4.sun2/intro.4 | 138 + static/netbsd/man4/man4.sun2/kbd.4 | 177 + static/netbsd/man4/man4.sun2/leds.4 | 105 + static/netbsd/man4/man4.sun2/mem.4 | 75 + static/netbsd/man4/man4.sun2/ms.4 | 98 + static/netbsd/man4/man4.sun3/Makefile | 4 + static/netbsd/man4/man4.sun3/autoconf.4 | 68 + static/netbsd/man4/man4.sun3/bwtwo.4 | 52 + static/netbsd/man4/man4.sun3/cgfour.4 | 52 + static/netbsd/man4/man4.sun3/cgtwo.4 | 54 + static/netbsd/man4/man4.sun3/fd.4 | 117 + static/netbsd/man4/man4.sun3/ie.4 | 69 + static/netbsd/man4/man4.sun3/intro.4 | 174 + static/netbsd/man4/man4.sun3/kbd.4 | 180 + static/netbsd/man4/man4.sun3/leds.4 | 107 + static/netbsd/man4/man4.sun3/mem.4 | 75 + static/netbsd/man4/man4.sun3/ms.4 | 98 + static/netbsd/man4/man4.vax/Makefile | 4 + static/netbsd/man4/man4.vax/acc.4 | 106 + static/netbsd/man4/man4.vax/ad.4 | 89 + static/netbsd/man4/man4.vax/asc.4 | 96 + static/netbsd/man4/man4.vax/autoconf.4 | 262 ++ static/netbsd/man4/man4.vax/cons.4 | 146 + static/netbsd/man4/man4.vax/covid.4 | 157 + static/netbsd/man4/man4.vax/crl.4 | 79 + static/netbsd/man4/man4.vax/css.4 | 105 + static/netbsd/man4/man4.vax/ct.4 | 72 + static/netbsd/man4/man4.vax/ddn.4 | 129 + static/netbsd/man4/man4.vax/de.4 | 96 + static/netbsd/man4/man4.vax/dh.4 | 138 + static/netbsd/man4/man4.vax/dhu.4 | 110 + static/netbsd/man4/man4.vax/dl.4 | 121 + static/netbsd/man4/man4.vax/dmc.4 | 144 + static/netbsd/man4/man4.vax/dmf.4 | 165 + static/netbsd/man4/man4.vax/dmv.4 | 120 + static/netbsd/man4/man4.vax/dmz.4 | 139 + static/netbsd/man4/man4.vax/dn.4 | 116 + static/netbsd/man4/man4.vax/dz.4 | 117 + static/netbsd/man4/man4.vax/ec.4 | 129 + static/netbsd/man4/man4.vax/en.4 | 130 + static/netbsd/man4/man4.vax/ex.4 | 92 + static/netbsd/man4/man4.vax/fl.4 | 71 + static/netbsd/man4/man4.vax/hdh.4 | 129 + static/netbsd/man4/man4.vax/hk.4 | 203 + static/netbsd/man4/man4.vax/hp.4 | 168 + static/netbsd/man4/man4.vax/ht.4 | 111 + static/netbsd/man4/man4.vax/hy.4 | 129 + static/netbsd/man4/man4.vax/ik.4 | 90 + static/netbsd/man4/man4.vax/il.4 | 93 + static/netbsd/man4/man4.vax/intro.4 | 183 + static/netbsd/man4/man4.vax/ix.4 | 121 + static/netbsd/man4/man4.vax/kg.4 | 73 + static/netbsd/man4/man4.vax/lp.4 | 87 + static/netbsd/man4/man4.vax/mem.4 | 102 + static/netbsd/man4/man4.vax/mt.4 | 109 + static/netbsd/man4/man4.vax/mtc.4 | 70 + static/netbsd/man4/man4.vax/np.4 | 129 + static/netbsd/man4/man4.vax/pcl.4 | 129 + static/netbsd/man4/man4.vax/ps.4 | 156 + static/netbsd/man4/man4.vax/qe.4 | 73 + static/netbsd/man4/man4.vax/qt.4 | 75 + static/netbsd/man4/man4.vax/rf.4 | 147 + static/netbsd/man4/man4.vax/rl.4 | 110 + static/netbsd/man4/man4.vax/tm.4 | 108 + static/netbsd/man4/man4.vax/ts.4 | 96 + static/netbsd/man4/man4.vax/tu.4 | 95 + static/netbsd/man4/man4.vax/uda.4 | 76 + static/netbsd/man4/man4.vax/up.4 | 264 ++ static/netbsd/man4/man4.vax/ut.4 | 105 + static/netbsd/man4/man4.vax/uu.4 | 155 + static/netbsd/man4/man4.vax/va.4 | 172 + static/netbsd/man4/man4.vax/vp.4 | 123 + static/netbsd/man4/man4.vax/vv.4 | 111 + static/netbsd/man4/man4.x68k/Makefile | 4 + static/netbsd/man4/man4.x68k/bmd.4 | 59 + static/netbsd/man4/man4.x68k/intio.4 | 73 + static/netbsd/man4/man4.x68k/intro.4 | 173 + static/netbsd/man4/man4.x68k/mfp.4 | 64 + static/netbsd/man4/man4.x68k/neptune.4 | 69 + static/netbsd/man4/man4.x68k/powsw.4 | 55 + static/netbsd/man4/man4.x68k/vs.4 | 42 + static/netbsd/man4/man4.x86/Makefile | 4 + static/netbsd/man4/man4.x86/amdccp.4 | 54 + static/netbsd/man4/man4.x86/amdpcib.4 | 43 + static/netbsd/man4/man4.x86/amdsmn.4 | 89 + static/netbsd/man4/man4.x86/amdzentemp.4 | 100 + static/netbsd/man4/man4.x86/apic.4 | 174 + static/netbsd/man4/man4.x86/autoconf.4 | 69 + static/netbsd/man4/man4.x86/balloon.4 | 209 + static/netbsd/man4/man4.x86/console.4 | 116 + static/netbsd/man4/man4.x86/coretemp.4 | 90 + static/netbsd/man4/man4.x86/est.4 | 89 + static/netbsd/man4/man4.x86/fdc.4 | 112 + static/netbsd/man4/man4.x86/fwhrng.4 | 60 + static/netbsd/man4/man4.x86/hpet.4 | 78 + static/netbsd/man4/man4.x86/ichlpcib.4 | 126 + static/netbsd/man4/man4.x86/imcsmb.4 | 171 + static/netbsd/man4/man4.x86/lpt.4 | 74 + static/netbsd/man4/man4.x86/mem.4 | 72 + static/netbsd/man4/man4.x86/odcm.4 | 75 + static/netbsd/man4/man4.x86/powernow.4 | 77 + static/netbsd/man4/man4.x86/soekrisgpio.4 | 64 + static/netbsd/man4/man4.x86/tco.4 | 77 + static/netbsd/man4/man4.x86/viac7temp.4 | 55 + static/netbsd/man4/mbe.4 | 87 + static/netbsd/man4/mc.4 | 93 + static/netbsd/man4/mca.4 | 104 + static/netbsd/man4/mcclock.4 | 61 + static/netbsd/man4/mcd.4 | 80 + static/netbsd/man4/mcommphy.4 | 59 + static/netbsd/man4/mcp3kadc.4 | 95 + static/netbsd/man4/mcp48x1dac.4 | 105 + static/netbsd/man4/mcp980x.4 | 81 + static/netbsd/man4/mcpgpio.4 | 108 + static/netbsd/man4/mcx.4 | 73 + static/netbsd/man4/md.4 | 39 + static/netbsd/man4/mfb.4 | 54 + static/netbsd/man4/mfi.4 | 108 + static/netbsd/man4/mfii.4 | 110 + static/netbsd/man4/mhzc.4 | 53 + static/netbsd/man4/micphy.4 | 40 + static/netbsd/man4/midi.4 | 771 ++++ static/netbsd/man4/mii.4 | 139 + static/netbsd/man4/mk48txx.4 | 173 + static/netbsd/man4/mlx.4 | 89 + static/netbsd/man4/mly.4 | 291 ++ static/netbsd/man4/mos.4 | 131 + static/netbsd/man4/mpii.4 | 120 + static/netbsd/man4/mpl115a.4 | 67 + static/netbsd/man4/mpls.4 | 305 ++ static/netbsd/man4/mpt.4 | 111 + static/netbsd/man4/mpu.4 | 69 + static/netbsd/man4/msm6242b.4 | 68 + static/netbsd/man4/mtd.4 | 72 + static/netbsd/man4/mtio.4 | 167 + static/netbsd/man4/mue.4 | 82 + static/netbsd/man4/multicast.4 | 976 +++++ static/netbsd/man4/mvsata.4 | 128 + static/netbsd/man4/nadb.4 | 50 + static/netbsd/man4/nca.4 | 53 + static/netbsd/man4/ncm.4 | 75 + static/netbsd/man4/nct.4 | 72 + static/netbsd/man4/ne.4 | 110 + static/netbsd/man4/neo.4 | 70 + static/netbsd/man4/netintro.4 | 348 ++ static/netbsd/man4/nfe.4 | 84 + static/netbsd/man4/nfsmb.4 | 56 + static/netbsd/man4/njata.4 | 89 + static/netbsd/man4/njs.4 | 70 + static/netbsd/man4/npflog.4 | 102 + static/netbsd/man4/nsclpcsio.4 | 65 + static/netbsd/man4/nside.4 | 47 + static/netbsd/man4/nsphy.4 | 49 + static/netbsd/man4/nsphyter.4 | 52 + static/netbsd/man4/ntwoc.4 | 182 + static/netbsd/man4/null.4 | 54 + static/netbsd/man4/nvme.4 | 152 + static/netbsd/man4/nvmm.4 | 67 + static/netbsd/man4/oak.4 | 49 + static/netbsd/man4/oboe.4 | 57 + static/netbsd/man4/ofisa.4 | 97 + static/netbsd/man4/ohci.4 | 55 + static/netbsd/man4/onewire.4 | 77 + static/netbsd/man4/oosiop.4 | 87 + static/netbsd/man4/opl.4 | 87 + static/netbsd/man4/optiide.4 | 58 + static/netbsd/man4/options.4 | 2774 +++++++++++++ static/netbsd/man4/osiop.4 | 129 + static/netbsd/man4/otus.4 | 179 + static/netbsd/man4/owtemp.4 | 62 + static/netbsd/man4/pad.4 | 84 + static/netbsd/man4/pas.4 | 45 + static/netbsd/man4/pcdisplay.4 | 67 + static/netbsd/man4/pcf8563rtc.4 | 56 + static/netbsd/man4/pchtemp.4 | 62 + static/netbsd/man4/pci.4 | 524 +++ static/netbsd/man4/pciback.4 | 119 + static/netbsd/man4/pcic.4 | 85 + static/netbsd/man4/pciide.4 | 150 + static/netbsd/man4/pckbc.4 | 60 + static/netbsd/man4/pckbd.4 | 83 + static/netbsd/man4/pcmcia.4 | 213 + static/netbsd/man4/pcmcom.4 | 54 + static/netbsd/man4/pcn.4 | 101 + static/netbsd/man4/pcppi.4 | 83 + static/netbsd/man4/pcscp.4 | 86 + static/netbsd/man4/pcweasel.4 | 116 + static/netbsd/man4/pdcide.4 | 65 + static/netbsd/man4/pdcsata.4 | 55 + static/netbsd/man4/piixide.4 | 59 + static/netbsd/man4/piixpcib.4 | 67 + static/netbsd/man4/piixpm.4 | 71 + static/netbsd/man4/pim.4 | 203 + static/netbsd/man4/plip.4 | 311 ++ static/netbsd/man4/pm3fb.4 | 61 + static/netbsd/man4/pms.4 | 303 ++ static/netbsd/man4/pmu.4 | 90 + static/netbsd/man4/pnaphy.4 | 66 + static/netbsd/man4/podulebus.4 | 139 + static/netbsd/man4/ppbus.4 | 438 ++ static/netbsd/man4/ppi.4 | 79 + static/netbsd/man4/ppp.4 | 101 + static/netbsd/man4/pppoe.4 | 347 ++ static/netbsd/man4/pseye.4 | 66 + static/netbsd/man4/ptcd.4 | 67 + static/netbsd/man4/ptm.4 | 110 + static/netbsd/man4/pty.4 | 269 ++ static/netbsd/man4/puc.4 | 271 ++ static/netbsd/man4/pud.4 | 56 + static/netbsd/man4/puffs.4 | 61 + static/netbsd/man4/pv.4 | 44 + static/netbsd/man4/pwdog.4 | 55 + static/netbsd/man4/px.4 | 55 + static/netbsd/man4/pxagpio.4 | 72 + static/netbsd/man4/pxaip.4 | 101 + static/netbsd/man4/pxg.4 | 57 + static/netbsd/man4/qat.4 | 88 + static/netbsd/man4/qe.4 | 76 + static/netbsd/man4/qec.4 | 59 + static/netbsd/man4/qemufwcfg.4 | 62 + static/netbsd/man4/qsphy.4 | 48 + static/netbsd/man4/r128fb.4 | 58 + static/netbsd/man4/radeonfb.4 | 93 + static/netbsd/man4/radio.4 | 191 + static/netbsd/man4/raid.4 | 498 +++ static/netbsd/man4/ral.4 | 474 +++ static/netbsd/man4/ray.4 | 121 + static/netbsd/man4/rcons.4 | 60 + static/netbsd/man4/rdcphy.4 | 49 + static/netbsd/man4/re.4 | 225 + static/netbsd/man4/rge.4 | 87 + static/netbsd/man4/rgephy.4 | 39 + static/netbsd/man4/rlphy.4 | 54 + static/netbsd/man4/rnd.4 | 733 ++++ static/netbsd/man4/route.4 | 435 ++ static/netbsd/man4/rs5c372rtc.4 | 56 + static/netbsd/man4/rt.4 | 70 + static/netbsd/man4/rtfps.4 | 98 + static/netbsd/man4/rtii.4 | 78 + static/netbsd/man4/rtk.4 | 57 + static/netbsd/man4/rtsx.4 | 56 + static/netbsd/man4/rtw.4 | 266 ++ static/netbsd/man4/rtwn.4 | 155 + static/netbsd/man4/rum.4 | 336 ++ static/netbsd/man4/run.4 | 231 ++ static/netbsd/man4/s390rtc.4 | 56 + static/netbsd/man4/satalink.4 | 55 + static/netbsd/man4/sb.4 | 110 + static/netbsd/man4/sbp.4 | 89 + static/netbsd/man4/sbt.4 | 41 + static/netbsd/man4/sbus.4 | 136 + static/netbsd/man4/sc.4 | 132 + static/netbsd/man4/sc16is7xx.4 | 246 ++ static/netbsd/man4/schide.4 | 47 + static/netbsd/man4/scmd.4 | 88 + static/netbsd/man4/scmdi2c.4 | 73 + static/netbsd/man4/scmdspi.4 | 71 + static/netbsd/man4/scsi.4 | 333 ++ static/netbsd/man4/sctp.4 | 436 ++ static/netbsd/man4/sd.4 | 277 ++ static/netbsd/man4/sdhc.4 | 42 + static/netbsd/man4/sdmmc.4 | 54 + static/netbsd/man4/sdtemp.4 | 97 + static/netbsd/man4/se.4 | 63 + static/netbsd/man4/sea.4 | 56 + static/netbsd/man4/sec.4 | 51 + static/netbsd/man4/seeprom.4 | 82 + static/netbsd/man4/sem.4 | 60 + static/netbsd/man4/ses.4 | 120 + static/netbsd/man4/sf.4 | 85 + static/netbsd/man4/sf2r.4 | 87 + static/netbsd/man4/sfb.4 | 54 + static/netbsd/man4/sgp40mox.4 | 110 + static/netbsd/man4/sgsmix.4 | 50 + static/netbsd/man4/shb.4 | 61 + static/netbsd/man4/shmif.4 | 120 + static/netbsd/man4/shpcic.4 | 53 + static/netbsd/man4/sht3xtemp.4 | 134 + static/netbsd/man4/sht4xtemp.4 | 97 + static/netbsd/man4/si.4 | 188 + static/netbsd/man4/si70xxtemp.4 | 102 + static/netbsd/man4/siisata.4 | 82 + static/netbsd/man4/siop.4 | 120 + static/netbsd/man4/sip.4 | 81 + static/netbsd/man4/siside.4 | 58 + static/netbsd/man4/sk.4 | 300 ++ static/netbsd/man4/sl.4 | 139 + static/netbsd/man4/slhci.4 | 127 + static/netbsd/man4/slide.4 | 58 + static/netbsd/man4/slurm.4 | 63 + static/netbsd/man4/sm.4 | 109 + static/netbsd/man4/smsc.4 | 76 + static/netbsd/man4/smscmon.4 | 72 + static/netbsd/man4/smscphy.4 | 65 + static/netbsd/man4/smsh.4 | 71 + static/netbsd/man4/sn.4 | 128 + static/netbsd/man4/sony.4 | 139 + static/netbsd/man4/spc.4 | 62 + static/netbsd/man4/spdmem.4 | 82 + static/netbsd/man4/speaker.4 | 322 ++ static/netbsd/man4/spi.4 | 175 + static/netbsd/man4/spif.4 | 104 + static/netbsd/man4/sqphy.4 | 50 + static/netbsd/man4/srt.4 | 133 + static/netbsd/man4/ss.4 | 52 + static/netbsd/man4/ssdfb.4 | 156 + static/netbsd/man4/st.4 | 457 +++ static/netbsd/man4/ste.4 | 66 + static/netbsd/man4/stf.4 | 294 ++ static/netbsd/man4/stge.4 | 90 + static/netbsd/man4/sti.4 | 273 ++ static/netbsd/man4/stpcide.4 | 60 + static/netbsd/man4/stuirda.4 | 78 + static/netbsd/man4/sv.4 | 55 + static/netbsd/man4/svwsata.4 | 54 + static/netbsd/man4/swsensor.4 | 143 + static/netbsd/man4/swwdog.4 | 89 + static/netbsd/man4/sysmon.4 | 76 + static/netbsd/man4/tap.4 | 194 + static/netbsd/man4/tc.4 | 111 + static/netbsd/man4/tcds.4 | 51 + static/netbsd/man4/tcic.4 | 51 + static/netbsd/man4/tcom.4 | 133 + static/netbsd/man4/tcp.4 | 389 ++ static/netbsd/man4/tcu.4 | 58 + static/netbsd/man4/tdvfb.4 | 110 + static/netbsd/man4/tea5767radio.4 | 79 + static/netbsd/man4/termios.4 | 1574 +++++++ static/netbsd/man4/tfb.4 | 57 + static/netbsd/man4/thinkpad.4 | 52 + static/netbsd/man4/ti.4 | 219 + static/netbsd/man4/tl.4 | 88 + static/netbsd/man4/tlp.4 | 565 +++ static/netbsd/man4/tlphy.4 | 50 + static/netbsd/man4/tm121temp.4 | 83 + static/netbsd/man4/tpm.4 | 75 + static/netbsd/man4/tprof.4 | 73 + static/netbsd/man4/tps65217pmic.4 | 99 + static/netbsd/man4/tqphy.4 | 54 + static/netbsd/man4/tra.4 | 78 + static/netbsd/man4/trm.4 | 93 + static/netbsd/man4/tsllux.4 | 132 + static/netbsd/man4/tty.4 | 490 +++ static/netbsd/man4/tun.4 | 299 ++ static/netbsd/man4/twa.4 | 64 + static/netbsd/man4/twe.4 | 61 + static/netbsd/man4/txp.4 | 135 + static/netbsd/man4/u3g.4 | 108 + static/netbsd/man4/ualea.4 | 55 + static/netbsd/man4/uark.4 | 65 + static/netbsd/man4/uatp.4 | 176 + static/netbsd/man4/uaudio.4 | 149 + static/netbsd/man4/uberry.4 | 69 + static/netbsd/man4/ubsa.4 | 76 + static/netbsd/man4/ubsec.4 | 111 + static/netbsd/man4/ubt.4 | 133 + static/netbsd/man4/uchcom.4 | 69 + static/netbsd/man4/ucom.4 | 114 + static/netbsd/man4/ucycom.4 | 73 + static/netbsd/man4/udav.4 | 86 + static/netbsd/man4/udl.4 | 108 + static/netbsd/man4/udp.4 | 178 + static/netbsd/man4/udsbr.4 | 58 + static/netbsd/man4/uep.4 | 62 + static/netbsd/man4/uftdi.4 | 106 + static/netbsd/man4/ug.4 | 85 + static/netbsd/man4/ugen.4 | 448 ++ static/netbsd/man4/ugensa.4 | 91 + static/netbsd/man4/uha.4 | 56 + static/netbsd/man4/uhci.4 | 53 + static/netbsd/man4/uhid.4 | 166 + static/netbsd/man4/uhidev.4 | 69 + static/netbsd/man4/uhmodem.4 | 80 + static/netbsd/man4/uhso.4 | 146 + static/netbsd/man4/uintuos.4 | 65 + static/netbsd/man4/uipad.4 | 64 + static/netbsd/man4/uipaq.4 | 72 + static/netbsd/man4/uirda.4 | 62 + static/netbsd/man4/uk.4 | 88 + static/netbsd/man4/ukbd.4 | 63 + static/netbsd/man4/ukphy.4 | 52 + static/netbsd/man4/ukyopon.4 | 145 + static/netbsd/man4/ulpt.4 | 81 + static/netbsd/man4/umass.4 | 81 + static/netbsd/man4/umb.4 | 90 + static/netbsd/man4/umcpmio.4 | 465 +++ static/netbsd/man4/umcs.4 | 71 + static/netbsd/man4/umct.4 | 70 + static/netbsd/man4/umidi.4 | 97 + static/netbsd/man4/umodem.4 | 66 + static/netbsd/man4/ums.4 | 67 + static/netbsd/man4/unix.4 | 317 ++ static/netbsd/man4/upgt.4 | 236 ++ static/netbsd/man4/upl.4 | 88 + static/netbsd/man4/uplcom.4 | 79 + static/netbsd/man4/ure.4 | 96 + static/netbsd/man4/url.4 | 77 + static/netbsd/man4/urndis.4 | 112 + static/netbsd/man4/urtw.4 | 107 + static/netbsd/man4/urtwn.4 | 206 + static/netbsd/man4/usb.4 | 580 +++ static/netbsd/man4/usbnet.4 | 101 + static/netbsd/man4/userconf.4 | 110 + static/netbsd/man4/uslsa.4 | 85 + static/netbsd/man4/usmsc.4 | 83 + static/netbsd/man4/usscanner.4 | 62 + static/netbsd/man4/ustir.4 | 73 + static/netbsd/man4/uthum.4 | 54 + static/netbsd/man4/utoppy.4 | 306 ++ static/netbsd/man4/uts.4 | 64 + static/netbsd/man4/uvideo.4 | 65 + static/netbsd/man4/uvisor.4 | 64 + static/netbsd/man4/uvscom.4 | 62 + static/netbsd/man4/uxrcom.4 | 80 + static/netbsd/man4/vald.4 | 73 + static/netbsd/man4/valz.4 | 69 + static/netbsd/man4/veriexec.4 | 159 + static/netbsd/man4/vether.4 | 74 + static/netbsd/man4/vga.4 | 206 + static/netbsd/man4/vge.4 | 210 + static/netbsd/man4/viaenv.4 | 75 + static/netbsd/man4/viaide.4 | 84 + static/netbsd/man4/video.4 | 269 ++ static/netbsd/man4/vio9p.4 | 73 + static/netbsd/man4/viocon.4 | 66 + static/netbsd/man4/viogpu.4 | 56 + static/netbsd/man4/vioif.4 | 58 + static/netbsd/man4/viomb.4 | 86 + static/netbsd/man4/viornd.4 | 64 + static/netbsd/man4/vioscsi.4 | 67 + static/netbsd/man4/virt.4 | 61 + static/netbsd/man4/virtio.4 | 91 + static/netbsd/man4/virtio_mmio.4 | 79 + static/netbsd/man4/vlan.4 | 190 + static/netbsd/man4/vmmon.4 | 41 + static/netbsd/man4/vmnet.4 | 41 + static/netbsd/man4/vmt.4 | 118 + static/netbsd/man4/vmx.4 | 115 + static/netbsd/man4/vnd.4 | 99 + static/netbsd/man4/voodoofb.4 | 64 + static/netbsd/man4/vr.4 | 63 + static/netbsd/man4/vte.4 | 90 + static/netbsd/man4/wapbl.4 | 206 + static/netbsd/man4/wb.4 | 57 + static/netbsd/man4/wbsio.4 | 67 + static/netbsd/man4/wd.4 | 120 + static/netbsd/man4/wdc.4 | 80 + static/netbsd/man4/wds.4 | 60 + static/netbsd/man4/we.4 | 171 + static/netbsd/man4/wg.4 | 227 + static/netbsd/man4/wi.4 | 255 ++ static/netbsd/man4/wm.4 | 273 ++ static/netbsd/man4/wpi.4 | 242 ++ static/netbsd/man4/wsbell.4 | 107 + static/netbsd/man4/wscons.4 | 291 ++ static/netbsd/man4/wsdisplay.4 | 652 +++ static/netbsd/man4/wsfont.4 | 50 + static/netbsd/man4/wskbd.4 | 281 ++ static/netbsd/man4/wsmouse.4 | 181 + static/netbsd/man4/wsmux.4 | 119 + static/netbsd/man4/wss.4 | 72 + static/netbsd/man4/wt.4 | 69 + static/netbsd/man4/wwanc.4 | 95 + static/netbsd/man4/xbd.4 | 102 + static/netbsd/man4/xbdback.4 | 124 + static/netbsd/man4/xbox.4 | 50 + static/netbsd/man4/xenbus.4 | 85 + static/netbsd/man4/xennet.4 | 115 + static/netbsd/man4/xge.4 | 96 + static/netbsd/man4/xhci.4 | 54 + static/netbsd/man4/xi.4 | 105 + static/netbsd/man4/xirc.4 | 53 + static/netbsd/man4/xpci.4 | 81 + static/netbsd/man4/xvif.4 | 107 + static/netbsd/man4/yds.4 | 58 + static/netbsd/man4/ym.4 | 205 + static/netbsd/man4/zero.4 | 21 + static/netbsd/man4/zstty.4 | 241 ++ static/netbsd/man4/zyd.4 | 304 ++ static/netbsd/man5/Makefile | 4 + static/netbsd/man5/a.out.5 | 452 ++ static/netbsd/man5/acct.5 | 137 + static/netbsd/man5/ar.5 | 160 + static/netbsd/man5/autofs.5 | 125 + static/netbsd/man5/boot.cfg.5 | 255 ++ static/netbsd/man5/capfile.5 | 191 + static/netbsd/man5/changelist.5 | 52 + static/netbsd/man5/core.5 | 416 ++ static/netbsd/man5/daily.5 | 225 + static/netbsd/man5/disktab.5 | 139 + static/netbsd/man5/elf.5 | 528 +++ static/netbsd/man5/ethers.5 | 63 + static/netbsd/man5/floppytab.5 | 55 + static/netbsd/man5/forward.5 | 99 + static/netbsd/man5/fs.5 | 371 ++ static/netbsd/man5/fstab.5 | 381 ++ static/netbsd/man5/genassym.cf.5 | 87 + static/netbsd/man5/gpio.conf.5 | 72 + static/netbsd/man5/group.5 | 263 ++ static/netbsd/man5/hesiod.conf.5 | 71 + static/netbsd/man5/hosts.5 | 116 + static/netbsd/man5/hosts.equiv.5 | 179 + static/netbsd/man5/ifaliases.5 | 77 + static/netbsd/man5/ifconfig.if.5 | 180 + static/netbsd/man5/intro.5 | 39 + static/netbsd/man5/ipsec.conf.5 | 72 + static/netbsd/man5/ld.so.conf.5 | 103 + static/netbsd/man5/link.5 | 609 +++ static/netbsd/man5/locale.alias.5 | 84 + static/netbsd/man5/locate.conf.5 | 167 + static/netbsd/man5/login.conf.5 | 424 ++ static/netbsd/man5/mixerctl.conf.5 | 114 + static/netbsd/man5/mk.conf.5 | 3107 ++++++++++++++ static/netbsd/man5/modules.conf.5 | 59 + static/netbsd/man5/monthly.5 | 67 + static/netbsd/man5/motd.5 | 38 + static/netbsd/man5/netconfig.5 | 123 + static/netbsd/man5/netgroup.5 | 125 + static/netbsd/man5/networks.5 | 171 + static/netbsd/man5/nologin.5 | 85 + static/netbsd/man5/nsswitch.conf.5 | 272 ++ static/netbsd/man5/passwd.5 | 424 ++ static/netbsd/man5/passwd.conf.5 | 147 + static/netbsd/man5/phones.5 | 93 + static/netbsd/man5/pkgpath.conf.5 | 66 + static/netbsd/man5/printcap.5 | 342 ++ static/netbsd/man5/protocols.5 | 90 + static/netbsd/man5/ranlib.5 | 81 + static/netbsd/man5/rc.conf.5 | 1650 ++++++++ static/netbsd/man5/remote.5 | 222 + static/netbsd/man5/resolv.conf.5 | 296 ++ static/netbsd/man5/route.conf.5 | 96 + static/netbsd/man5/rpc.5 | 54 + static/netbsd/man5/security.conf.5 | 332 ++ static/netbsd/man5/services.5 | 92 + static/netbsd/man5/shells.5 | 81 + static/netbsd/man5/stab.5 | 219 + static/netbsd/man5/statvfs.5 | 191 + static/netbsd/man5/sysctl.conf.5 | 101 + static/netbsd/man5/ttyaction.5 | 111 + static/netbsd/man5/utmp.5 | 222 + static/netbsd/man5/utmpx.5 | 140 + static/netbsd/man5/veriexec.5 | 155 + static/netbsd/man5/weekly.5 | 111 + static/netbsd/man5/wscons.conf.5 | 166 + static/netbsd/man6/Makefile | 4 + static/netbsd/man6/intro.6 | 39 + static/netbsd/man7/Makefile | 4 + static/netbsd/man7/ascii.7 | 199 + static/netbsd/man7/c.7 | 250 ++ static/netbsd/man7/entropy.7 | 286 ++ static/netbsd/man7/environ.7 | 295 ++ static/netbsd/man7/glob.7 | 154 + static/netbsd/man7/groups.7 | 330 ++ static/netbsd/man7/hier.7 | 1302 ++++++ static/netbsd/man7/hostname.7 | 185 + static/netbsd/man7/intro.7 | 139 + static/netbsd/man7/kernel_sanitizers.7 | 157 + static/netbsd/man7/mailaddr.7 | 104 + static/netbsd/man7/module.7 | 215 + static/netbsd/man7/nls.7 | 518 +++ static/netbsd/man7/operator.7 | 106 + static/netbsd/man7/orders.7 | 113 + static/netbsd/man7/pkgsrc.7 | 61 + static/netbsd/man7/release.7 | 449 ++ static/netbsd/man7/rfc6056.7 | 123 + static/netbsd/man7/script.7 | 413 ++ static/netbsd/man7/security.7 | 510 +++ static/netbsd/man7/setuid.7 | 369 ++ static/netbsd/man7/signal.7 | 633 +++ static/netbsd/man7/src.7 | 362 ++ static/netbsd/man7/stack.7 | 293 ++ static/netbsd/man7/sticky.7 | 112 + static/netbsd/man7/symlink.7 | 674 +++ static/netbsd/man7/sysctl.7 | 2920 +++++++++++++ static/netbsd/man7/tests.atf.7 | 236 ++ static/netbsd/man7/tests.kyua.7 | 248 ++ static/netbsd/man7/users.7 | 206 + static/netbsd/man8/MAKEDEV.8 | 1025 +++++ static/netbsd/man8/MAKEDEV.8.template | 351 ++ static/netbsd/man8/MAKEDEV.local.8 | 130 + static/netbsd/man8/MAKEDEV2manpage.awk | 231 ++ static/netbsd/man8/MAKEDEV2manpage.sh | 69 + static/netbsd/man8/Makefile | 33 + static/netbsd/man8/afterboot.8 | 1095 +++++ static/netbsd/man8/boot.8 | 298 ++ static/netbsd/man8/compat_30.8 | 206 + static/netbsd/man8/compat_bsdos.8 | 201 + static/netbsd/man8/compat_freebsd.8 | 419 ++ static/netbsd/man8/compat_linux.8 | 224 + static/netbsd/man8/compat_netbsd32.8 | 127 + static/netbsd/man8/compat_sunos.8 | 134 + static/netbsd/man8/compat_ultrix.8 | 147 + static/netbsd/man8/creds_msdos.8 | 114 + static/netbsd/man8/diskless.8 | 898 ++++ static/netbsd/man8/hpcboot.8 | 165 + static/netbsd/man8/intro.8 | 70 + static/netbsd/man8/man8.acorn32/Makefile | 4 + static/netbsd/man8/man8.acorn32/boot32.8 | 156 + static/netbsd/man8/man8.acorn32/nbfs.8 | 82 + static/netbsd/man8/man8.alpha/Makefile | 4 + static/netbsd/man8/man8.alpha/boot.8 | 535 +++ static/netbsd/man8/man8.alpha/mkbootimage.8 | 132 + static/netbsd/man8/man8.alpha/setnetbootinfo.8 | 151 + static/netbsd/man8/man8.amiga/Makefile | 4 + static/netbsd/man8/man8.amiga/binpatch.8 | 93 + static/netbsd/man8/man8.amiga/boot.8 | 267 ++ static/netbsd/man8/man8.amiga/installboot.8 | 139 + static/netbsd/man8/man8.atari/Makefile | 4 + static/netbsd/man8/man8.atari/ahdilabel.8 | 178 + static/netbsd/man8/man8.atari/binpatch.8 | 145 + static/netbsd/man8/man8.atari/boot.8 | 217 + static/netbsd/man8/man8.atari/bootpref.8 | 197 + static/netbsd/man8/man8.atari/installboot.8 | 174 + static/netbsd/man8/man8.cobalt/Makefile | 4 + static/netbsd/man8/man8.cobalt/boot.8 | 479 +++ static/netbsd/man8/man8.dreamcast/Makefile | 4 + static/netbsd/man8/man8.dreamcast/boot.8 | 59 + static/netbsd/man8/man8.emips/Makefile | 4 + static/netbsd/man8/man8.emips/boot.8 | 96 + static/netbsd/man8/man8.evbarm/Makefile | 4 + static/netbsd/man8/man8.evbarm/bootmini2440.8 | 179 + static/netbsd/man8/man8.hp300/Makefile | 4 + static/netbsd/man8/man8.hp300/boot.8 | 125 + static/netbsd/man8/man8.hp300/format.8 | 63 + static/netbsd/man8/man8.hpcarm/Makefile | 4 + static/netbsd/man8/man8.hpcarm/boot.8 | 105 + static/netbsd/man8/man8.hpcmips/Makefile | 4 + static/netbsd/man8/man8.hpcmips/boot.8 | 80 + static/netbsd/man8/man8.hpcmips/pbsdboot.8 | 61 + static/netbsd/man8/man8.hpcsh/Makefile | 4 + static/netbsd/man8/man8.hpcsh/boot.8 | 107 + static/netbsd/man8/man8.hppa/Makefile | 4 + static/netbsd/man8/man8.hppa/boot.8 | 339 ++ static/netbsd/man8/man8.hppa/mkboot.8 | 64 + static/netbsd/man8/man8.mac68k/Makefile | 4 + static/netbsd/man8/man8.mac68k/boot.8 | 129 + static/netbsd/man8/man8.macppc/Makefile | 4 + static/netbsd/man8/man8.macppc/boot.8 | 410 ++ static/netbsd/man8/man8.macppc/ofwboot.8 | 490 +++ static/netbsd/man8/man8.mvme68k/Makefile | 4 + static/netbsd/man8/man8.mvme68k/boot.8 | 137 + static/netbsd/man8/man8.mvme68k/installboot.8 | 58 + static/netbsd/man8/man8.next68k/Makefile | 4 + static/netbsd/man8/man8.next68k/boot.8 | 73 + static/netbsd/man8/man8.pmax/Makefile | 4 + static/netbsd/man8/man8.pmax/boot.8 | 220 + static/netbsd/man8/man8.prep/Makefile | 4 + static/netbsd/man8/man8.prep/boot.8 | 86 + static/netbsd/man8/man8.prep/mkbootimage.8 | 153 + static/netbsd/man8/man8.sandpoint/Makefile | 4 + static/netbsd/man8/man8.sandpoint/altboot.8 | 288 ++ static/netbsd/man8/man8.sgimips/Makefile | 4 + static/netbsd/man8/man8.sgimips/boot.8 | 132 + static/netbsd/man8/man8.sgimips/sgivol.8 | 155 + static/netbsd/man8/man8.sparc/Makefile | 4 + static/netbsd/man8/man8.sparc/binstall.8 | 102 + static/netbsd/man8/man8.sparc/boot.8 | 264 ++ static/netbsd/man8/man8.sparc64/Makefile | 4 + static/netbsd/man8/man8.sparc64/boot.8 | 264 ++ static/netbsd/man8/man8.sun2/Makefile | 4 + static/netbsd/man8/man8.sun2/boot.8 | 178 + static/netbsd/man8/man8.sun3/Makefile | 4 + static/netbsd/man8/man8.sun3/boot.8 | 121 + static/netbsd/man8/man8.vax/Makefile | 4 + static/netbsd/man8/man8.vax/boot.8 | 321 ++ static/netbsd/man8/man8.vax/crash.8 | 205 + static/netbsd/man8/man8.vax/drtest.8 | 112 + static/netbsd/man8/man8.vax/format.8 | 295 ++ static/netbsd/man8/man8.x68k/Makefile | 4 + static/netbsd/man8/man8.x68k/boot.8 | 241 ++ static/netbsd/man8/man8.x68k/loadbsd.8 | 137 + static/netbsd/man8/man8.x68k/newdisk.8 | 86 + static/netbsd/man8/man8.x86/Makefile | 4 + static/netbsd/man8/man8.x86/boot.8 | 1087 +++++ static/netbsd/man8/man8.x86/boot_console.8 | 147 + static/netbsd/man8/man8.x86/dosboot.8 | 163 + static/netbsd/man8/man8.x86/mbr.8 | 135 + static/netbsd/man8/man8.x86/multiboot.8 | 115 + static/netbsd/man8/man8.x86/pxeboot.8 | 401 ++ static/netbsd/man8/nis.8 | 180 + static/netbsd/man8/pam.8 | 108 + static/netbsd/man8/rc.8 | 406 ++ static/netbsd/man8/rc.subr.8 | 865 ++++ static/netbsd/man8/rescue.8 | 136 + static/netbsd/man8/veriexec.8 | 200 + static/netbsd/man8/wizd.8 | 82 + static/netbsd/man9/CTASSERT.9 | 70 + static/netbsd/man9/KASSERT.9 | 118 + static/netbsd/man9/KERNEL_LOCK.9 | 312 ++ static/netbsd/man9/LWP_CACHE_CREDS.9 | 75 + static/netbsd/man9/Makefile | 7 + static/netbsd/man9/RUN_ONCE.9 | 136 + static/netbsd/man9/SET.9 | 71 + static/netbsd/man9/STACK.9 | 97 + static/netbsd/man9/VOP_ACLCHECK.9 | 103 + static/netbsd/man9/VOP_GETACL.9 | 95 + static/netbsd/man9/VOP_SETACL.9 | 104 + static/netbsd/man9/__cpu_simple_lock.9 | 235 ++ static/netbsd/man9/accept_filter.9 | 163 + static/netbsd/man9/accf_data.9 | 75 + static/netbsd/man9/accf_http.9 | 102 + static/netbsd/man9/acct_process.9 | 61 + static/netbsd/man9/acl.9 | 226 + static/netbsd/man9/altq.9 | 601 +++ static/netbsd/man9/arp.9 | 138 + static/netbsd/man9/atomic_loadstore.9 | 827 ++++ static/netbsd/man9/audio.9 | 676 +++ static/netbsd/man9/autoconf.9 | 507 +++ static/netbsd/man9/bcdtobin.9 | 62 + static/netbsd/man9/bcmp.9 | 74 + static/netbsd/man9/bcopy.9 | 89 + static/netbsd/man9/bintime_add.9 | 101 + static/netbsd/man9/bluetooth.9 | 384 ++ static/netbsd/man9/boothowto.9 | 289 ++ static/netbsd/man9/bpf.9 | 71 + static/netbsd/man9/buffercache.9 | 332 ++ static/netbsd/man9/bufferio.9 | 442 ++ static/netbsd/man9/bufq.9 | 238 ++ static/netbsd/man9/bus_dma.9 | 995 +++++ static/netbsd/man9/bus_space.9 | 1985 +++++++++ static/netbsd/man9/byteorder.9 | 201 + static/netbsd/man9/bzero.9 | 73 + static/netbsd/man9/callback.9 | 112 + static/netbsd/man9/callout.9 | 322 ++ static/netbsd/man9/cardbus.9 | 328 ++ static/netbsd/man9/clock.9 | 103 + static/netbsd/man9/cnmagic.9 | 198 + static/netbsd/man9/condvar.9 | 379 ++ static/netbsd/man9/config.9 | 352 ++ static/netbsd/man9/cons.9 | 161 + static/netbsd/man9/copy.9 | 180 + static/netbsd/man9/coredump_write.9 | 73 + static/netbsd/man9/cprng.9 | 264 ++ static/netbsd/man9/cpu_configure.9 | 74 + static/netbsd/man9/cpu_coredump.9 | 73 + static/netbsd/man9/cpu_dumpconf.9 | 81 + static/netbsd/man9/cpu_idle.9 | 85 + static/netbsd/man9/cpu_initclocks.9 | 52 + static/netbsd/man9/cpu_lwp_fork.9 | 102 + static/netbsd/man9/cpu_need_resched.9 | 116 + static/netbsd/man9/cpu_number.9 | 53 + static/netbsd/man9/cpu_reboot.9 | 120 + static/netbsd/man9/cpu_rootconf.9 | 140 + static/netbsd/man9/cpu_startup.9 | 63 + static/netbsd/man9/cpu_switchto.9 | 149 + static/netbsd/man9/cpufreq.9 | 311 ++ static/netbsd/man9/crashme.9 | 125 + static/netbsd/man9/csf.9 | 216 + static/netbsd/man9/ctod.9 | 84 + static/netbsd/man9/curlwp_bind.9 | 98 + static/netbsd/man9/curproc.9 | 124 + static/netbsd/man9/ddb.9 | 162 + static/netbsd/man9/ddc.9 | 110 + static/netbsd/man9/delay.9 | 60 + static/netbsd/man9/deviter.9 | 198 + static/netbsd/man9/devsw_attach.9 | 185 + static/netbsd/man9/disk.9 | 574 +++ static/netbsd/man9/disklabel.9 | 182 + static/netbsd/man9/dksubr.9 | 309 ++ static/netbsd/man9/dmover.9 | 622 +++ static/netbsd/man9/do_setresuid.9 | 92 + static/netbsd/man9/dofileread.9 | 120 + static/netbsd/man9/dopowerhooks.9 | 60 + static/netbsd/man9/doshutdownhooks.9 | 68 + static/netbsd/man9/driver.9 | 372 ++ static/netbsd/man9/edid.9 | 131 + static/netbsd/man9/errno.9 | 120 + static/netbsd/man9/ethersubr.9 | 174 + static/netbsd/man9/evcnt.9 | 315 ++ static/netbsd/man9/extattr.9 | 86 + static/netbsd/man9/extent.9 | 393 ++ static/netbsd/man9/file.9 | 256 ++ static/netbsd/man9/fileassoc.9 | 346 ++ static/netbsd/man9/filedesc.9 | 250 ++ static/netbsd/man9/firmload.9 | 135 + static/netbsd/man9/flash.9 | 86 + static/netbsd/man9/fork1.9 | 151 + static/netbsd/man9/fsetown.9 | 152 + static/netbsd/man9/fstrans.9 | 331 ++ static/netbsd/man9/genfs.9 | 114 + static/netbsd/man9/genfs_can_access.9 | 122 + static/netbsd/man9/genfs_can_access_acl_nfs4.9 | 122 + static/netbsd/man9/genfs_can_access_acl_posix1e.9 | 120 + static/netbsd/man9/genfs_rename.9 | 621 +++ static/netbsd/man9/hardclock.9 | 81 + static/netbsd/man9/hash.9 | 118 + static/netbsd/man9/hashinit.9 | 205 + static/netbsd/man9/heartbeat.9 | 172 + static/netbsd/man9/humanize_number.9 | 119 + static/netbsd/man9/hz.9 | 112 + static/netbsd/man9/ieee80211.9 | 248 ++ static/netbsd/man9/ieee80211_crypto.9 | 98 + static/netbsd/man9/ieee80211_input.9 | 112 + static/netbsd/man9/ieee80211_ioctl.9 | 92 + static/netbsd/man9/ieee80211_node.9 | 245 ++ static/netbsd/man9/ieee80211_output.9 | 138 + static/netbsd/man9/ieee80211_proto.9 | 74 + static/netbsd/man9/ieee80211_radiotap.9 | 277 ++ static/netbsd/man9/iic.9 | 350 ++ static/netbsd/man9/imax.9 | 80 + static/netbsd/man9/in4_cksum.9 | 111 + static/netbsd/man9/in_getifa.9 | 244 ++ static/netbsd/man9/inittodr.9 | 105 + static/netbsd/man9/interrupt_distribute.9 | 55 + static/netbsd/man9/intro.9 | 633 +++ static/netbsd/man9/ioasic.9 | 214 + static/netbsd/man9/ioctl.9 | 317 ++ static/netbsd/man9/ipi.9 | 217 + static/netbsd/man9/isa.9 | 501 +++ static/netbsd/man9/isapnp.9 | 239 ++ static/netbsd/man9/itimerfix.9 | 63 + static/netbsd/man9/kauth.9 | 2048 +++++++++ static/netbsd/man9/kcopy.9 | 60 + static/netbsd/man9/kcpuset.9 | 354 ++ static/netbsd/man9/kernhist.9 | 286 ++ static/netbsd/man9/kfilter_register.9 | 147 + static/netbsd/man9/klua_lock.9 | 181 + static/netbsd/man9/klua_mod_register.9 | 112 + static/netbsd/man9/kmem.9 | 355 ++ static/netbsd/man9/knote.9 | 109 + static/netbsd/man9/kpause.9 | 126 + static/netbsd/man9/kpreempt.9 | 87 + static/netbsd/man9/kprintf.9 | 341 ++ static/netbsd/man9/kthread.9 | 222 + static/netbsd/man9/linedisc.9 | 107 + static/netbsd/man9/localcount.9 | 202 + static/netbsd/man9/lock.9 | 62 + static/netbsd/man9/locking.9 | 317 ++ static/netbsd/man9/log.9 | 65 + static/netbsd/man9/ltsleep.9 | 284 ++ static/netbsd/man9/m_tag.9 | 167 + static/netbsd/man9/makeiplcookie.9 | 58 + static/netbsd/man9/malloc.9 | 254 ++ static/netbsd/man9/man9.i386/Makefile | 4 + static/netbsd/man9/man9.i386/bios32_service.9 | 51 + static/netbsd/man9/man9.i386/bioscall.9 | 131 + static/netbsd/man9/man9.i386/return_address.9 | 91 + static/netbsd/man9/man9.i386/splraise.9 | 85 + static/netbsd/man9/man9.sun3/Makefile | 4 + static/netbsd/man9/man9.sun3/isr_add.9 | 124 + static/netbsd/man9/man9.x86/Makefile | 4 + static/netbsd/man9/man9.x86/nmi.9 | 135 + static/netbsd/man9/man9.x86/rdmsr.9 | 119 + static/netbsd/man9/man9.x86/tsc.9 | 152 + static/netbsd/man9/man9.x86/x86_msr_xcall.9 | 98 + static/netbsd/man9/mbuf.9 | 721 ++++ static/netbsd/man9/mca.9 | 192 + static/netbsd/man9/memcmp.9 | 74 + static/netbsd/man9/memcpy.9 | 73 + static/netbsd/man9/memmove.9 | 69 + static/netbsd/man9/memoryallocators.9 | 164 + static/netbsd/man9/memset.9 | 67 + static/netbsd/man9/mi_switch.9 | 113 + static/netbsd/man9/microseq.9 | 514 +++ static/netbsd/man9/microtime.9 | 184 + static/netbsd/man9/microuptime.9 | 115 + static/netbsd/man9/module.9 | 617 +++ static/netbsd/man9/mstohz.9 | 75 + static/netbsd/man9/mutex.9 | 319 ++ static/netbsd/man9/namecache.9 | 262 ++ static/netbsd/man9/namei.9 | 966 +++++ static/netbsd/man9/nullop.9 | 88 + static/netbsd/man9/opencrypto.9 | 709 ++++ static/netbsd/man9/optstr.9 | 155 + static/netbsd/man9/panic.9 | 114 + static/netbsd/man9/paravirt_membar_sync.9 | 148 + static/netbsd/man9/pathbuf.9 | 130 + static/netbsd/man9/pci.9 | 881 ++++ static/netbsd/man9/pci_configure_bus.9 | 303 ++ static/netbsd/man9/pci_intr.9 | 208 + static/netbsd/man9/pci_msi.9 | 341 ++ static/netbsd/man9/pckbport.9 | 330 ++ static/netbsd/man9/pcmcia.9 | 431 ++ static/netbsd/man9/pcq.9 | 194 + static/netbsd/man9/pcu.9 | 130 + static/netbsd/man9/percpu.9 | 226 + static/netbsd/man9/pfil.9 | 267 ++ static/netbsd/man9/physio.9 | 143 + static/netbsd/man9/pktqueue.9 | 259 ++ static/netbsd/man9/pmap.9 | 1243 ++++++ static/netbsd/man9/pmatch.9 | 68 + static/netbsd/man9/pmf.9 | 310 ++ static/netbsd/man9/pool.9 | 322 ++ static/netbsd/man9/pool_cache.9 | 383 ++ static/netbsd/man9/portfeatures.9 | 98 + static/netbsd/man9/powerhook_establish.9 | 107 + static/netbsd/man9/ppsratecheck.9 | 88 + static/netbsd/man9/preempt.9 | 56 + static/netbsd/man9/proc_find.9 | 71 + static/netbsd/man9/pserialize.9 | 188 + static/netbsd/man9/pslist.9 | 429 ++ static/netbsd/man9/psref.9 | 405 ++ static/netbsd/man9/putter.9 | 48 + static/netbsd/man9/radio.9 | 129 + static/netbsd/man9/ras.9 | 141 + static/netbsd/man9/rasops.9 | 149 + static/netbsd/man9/ratecheck.9 | 144 + static/netbsd/man9/resettodr.9 | 52 + static/netbsd/man9/rnd.9 | 430 ++ static/netbsd/man9/roundup.9 | 106 + static/netbsd/man9/rssadapt.9 | 394 ++ static/netbsd/man9/rt_timer.9 | 135 + static/netbsd/man9/rwlock.9 | 252 ++ static/netbsd/man9/scanc.9 | 68 + static/netbsd/man9/sched_4bsd.9 | 106 + static/netbsd/man9/sched_m2.9 | 62 + static/netbsd/man9/scsipi.9 | 622 +++ static/netbsd/man9/secmodel.9 | 538 +++ static/netbsd/man9/secmodel_bsd44.9 | 55 + static/netbsd/man9/secmodel_extensions.9 | 139 + static/netbsd/man9/secmodel_overlay.9 | 52 + static/netbsd/man9/secmodel_securelevel.9 | 287 ++ static/netbsd/man9/secmodel_suser.9 | 92 + static/netbsd/man9/select.9 | 124 + static/netbsd/man9/setbit.9 | 83 + static/netbsd/man9/setjmp.9 | 69 + static/netbsd/man9/shutdownhook_establish.9 | 100 + static/netbsd/man9/signal.9 | 507 +++ static/netbsd/man9/skpc.9 | 62 + static/netbsd/man9/sockopt.9 | 153 + static/netbsd/man9/softintr.9 | 219 + static/netbsd/man9/specificdata.9 | 161 + static/netbsd/man9/spi.9 | 171 + static/netbsd/man9/spl.9 | 287 ++ static/netbsd/man9/splraiseipl.9 | 103 + static/netbsd/man9/strlist.9 | 218 + static/netbsd/man9/suspendsched.9 | 50 + static/netbsd/man9/sysctl.9 | 682 +++ static/netbsd/man9/sysmon_envsys.9 | 722 ++++ static/netbsd/man9/sysmon_pswitch.9 | 139 + static/netbsd/man9/sysmon_taskq.9 | 105 + static/netbsd/man9/tc.9 | 182 + static/netbsd/man9/tcp_congctl.9 | 95 + static/netbsd/man9/thmap.9 | 237 ++ static/netbsd/man9/threadpool.9 | 343 ++ static/netbsd/man9/time_second.9 | 111 + static/netbsd/man9/timecounter.9 | 195 + static/netbsd/man9/todr.9 | 132 + static/netbsd/man9/ts2timo.9 | 90 + static/netbsd/man9/tvtohz.9 | 67 + static/netbsd/man9/ubc.9 | 146 + static/netbsd/man9/ucas.9 | 167 + static/netbsd/man9/ucom.9 | 231 ++ static/netbsd/man9/ufetch.9 | 88 + static/netbsd/man9/uiomove.9 | 182 + static/netbsd/man9/usbd_status.9 | 107 + static/netbsd/man9/usbdi.9 | 987 +++++ static/netbsd/man9/usbnet.9 | 827 ++++ static/netbsd/man9/userret.9 | 81 + static/netbsd/man9/ustore.9 | 88 + static/netbsd/man9/uvm.9 | 710 ++++ static/netbsd/man9/uvm_hotplug.9 | 550 +++ static/netbsd/man9/uvm_km.9 | 187 + static/netbsd/man9/uvm_map.9 | 406 ++ static/netbsd/man9/uvm_obj_wirepages.9 | 90 + static/netbsd/man9/vattr.9 | 107 + static/netbsd/man9/vcons.9 | 207 + static/netbsd/man9/veriexec.9 | 346 ++ static/netbsd/man9/versioningsyscalls.9 | 374 ++ static/netbsd/man9/vfs.9 | 56 + static/netbsd/man9/vfs_hooks.9 | 104 + static/netbsd/man9/vfsops.9 | 505 +++ static/netbsd/man9/vfssubr.9 | 254 ++ static/netbsd/man9/video.9 | 187 + static/netbsd/man9/vme.9 | 346 ++ static/netbsd/man9/vmem.9 | 642 +++ static/netbsd/man9/vnfileops.9 | 188 + static/netbsd/man9/vnode.9 | 780 ++++ static/netbsd/man9/vnodeops.9 | 1537 +++++++ static/netbsd/man9/vnsubr.9 | 354 ++ static/netbsd/man9/wapbl.9 | 532 +++ static/netbsd/man9/wdc.9 | 412 ++ static/netbsd/man9/workqueue.9 | 163 + static/netbsd/man9/wsbell.9 | 112 + static/netbsd/man9/wscons.9 | 75 + static/netbsd/man9/wsdisplay.9 | 422 ++ static/netbsd/man9/wsfont.9 | 247 ++ static/netbsd/man9/wskbd.9 | 346 ++ static/netbsd/man9/wsmouse.9 | 265 ++ static/netbsd/man9/xcall.9 | 204 + static/netbsd/man9lua/Makefile | 6 + static/netbsd/man9lua/intro.9lua | 54 + static/netbsd/man9lua/pmf.9lua | 99 + static/netbsd/man9lua/systm.9lua | 163 + static/netbsd/tools/.param | 95 + static/netbsd/tools/M.folio | 251 ++ static/netbsd/tools/M.tabs | 70 + static/netbsd/tools/README | 198 + static/netbsd/tools/TOOLKIT | 198 + static/netbsd/tools/badcref3 | 55 + static/netbsd/tools/break | 3 + static/netbsd/tools/ckcrefs | 78 + static/netbsd/tools/ckfrefs | 74 + static/netbsd/tools/cknames | 76 + static/netbsd/tools/ckso | 49 + static/netbsd/tools/ckspell | 26 + static/netbsd/tools/ignore | 891 ++++ static/netbsd/tools/line.c | 45 + static/netbsd/tools/list | 13 + static/netbsd/tools/mcmp | 76 + static/netbsd/tools/mgrep | 19 + static/netbsd/tools/mklinks | 42 + static/netbsd/tools/mroff | 26 + static/netbsd/tools/newsp.errs | 4569 +++++++++++++++++++++ static/netbsd/tools/noso.c | 36 + static/netbsd/tools/pages.c | 36 + static/netbsd/tools/pgcnt | 92 + static/netbsd/tools/prnames | 25 + static/netbsd/tools/prsynops | 29 + static/netbsd/tools/sp.ignore | 1892 +++++++++ static/netbsd/tools/tocrc | 114 + 1799 files changed, 277308 insertions(+), 29 deletions(-) create mode 100644 static/netbsd/Makefile create mode 100644 static/netbsd/man0/Makefile create mode 100644 static/netbsd/man0/back create mode 100644 static/netbsd/man0/break create mode 100644 static/netbsd/man0/cover create mode 100644 static/netbsd/man0/cshcmd create mode 100644 static/netbsd/man0/groff.sed create mode 100644 static/netbsd/man0/ignore create mode 100644 static/netbsd/man0/intros create mode 100644 static/netbsd/man0/makewhatis.sed create mode 100644 static/netbsd/man0/noman create mode 100644 static/netbsd/man0/title.cdrom create mode 100644 static/netbsd/man0/title.prm create mode 100644 static/netbsd/man0/title.urm create mode 100755 static/netbsd/man0/tocrc create mode 100644 static/netbsd/man1/Makefile create mode 100644 static/netbsd/man1/cd.1 create mode 100644 static/netbsd/man1/intro.1 create mode 100644 static/netbsd/man1/ld.so.1 create mode 100644 static/netbsd/man1/man1.atari/Makefile create mode 100644 static/netbsd/man1/man1.atari/edahdi.1 create mode 100644 static/netbsd/man1/man1.atari/msconfig.1 create mode 100644 static/netbsd/man1/man1.x68k/Makefile create mode 100644 static/netbsd/man1/man1.x68k/aout2hux.1 create mode 100644 static/netbsd/man1/man1.x68k/bellctrl.1 create mode 100644 static/netbsd/man1/man1.x68k/loadfont.1 create mode 100644 static/netbsd/man1/man1.x68k/loadkmap.1 create mode 100644 static/netbsd/man1/man1.x68k/palette.1 create mode 100644 static/netbsd/man1/man1.x68k/tvctrl.1 create mode 100644 static/netbsd/man1/wait.1 create mode 100644 static/netbsd/man2/Makefile create mode 100644 static/netbsd/man2/siginfo.2 create mode 100644 static/netbsd/man2/ucontext.2 create mode 100644 static/netbsd/man3/CMSG_DATA.3 create mode 100644 static/netbsd/man3/Makefile create mode 100644 static/netbsd/man3/_DIAGASSERT.3 create mode 100644 static/netbsd/man3/__CONCAT.3 create mode 100644 static/netbsd/man3/__FPTRCAST.3 create mode 100644 static/netbsd/man3/__UNCONST.3 create mode 100644 static/netbsd/man3/__USE.3 create mode 100644 static/netbsd/man3/__alignof__.3 create mode 100644 static/netbsd/man3/__arraycount.3 create mode 100644 static/netbsd/man3/__builtin_constant_p.3 create mode 100644 static/netbsd/man3/__builtin_prefetch.3 create mode 100644 static/netbsd/man3/__builtin_return_address.3 create mode 100644 static/netbsd/man3/__builtin_types_compatible_p.3 create mode 100644 static/netbsd/man3/__insn_barrier.3 create mode 100644 static/netbsd/man3/assert.3 create mode 100644 static/netbsd/man3/attribute.3 create mode 100644 static/netbsd/man3/bitmap.3 create mode 100644 static/netbsd/man3/bitops.3 create mode 100644 static/netbsd/man3/bits.3 create mode 100644 static/netbsd/man3/bitstring.3 create mode 100644 static/netbsd/man3/cdefs.3 create mode 100644 static/netbsd/man3/container_of.3 create mode 100644 static/netbsd/man3/dirent.3 create mode 100644 static/netbsd/man3/dl_iterate_phdr.3 create mode 100644 static/netbsd/man3/dlfcn.3 create mode 100644 static/netbsd/man3/dlinfo.3 create mode 100644 static/netbsd/man3/end.3 create mode 100644 static/netbsd/man3/fast_divide32.3 create mode 100644 static/netbsd/man3/ffs32.3 create mode 100644 static/netbsd/man3/gcq.3 create mode 100644 static/netbsd/man3/ilog2.3 create mode 100644 static/netbsd/man3/intro.3 create mode 100644 static/netbsd/man3/inttypes.3 create mode 100644 static/netbsd/man3/iso646.3 create mode 100644 static/netbsd/man3/limits.3 create mode 100644 static/netbsd/man3/makedev.3 create mode 100644 static/netbsd/man3/offsetof.3 create mode 100644 static/netbsd/man3/param.3 create mode 100644 static/netbsd/man3/paths.3 create mode 100644 static/netbsd/man3/queue.3 create mode 100644 static/netbsd/man3/rbtree.3 create mode 100644 static/netbsd/man3/sigevent.3 create mode 100644 static/netbsd/man3/stdarg.3 create mode 100644 static/netbsd/man3/stdbool.3 create mode 100644 static/netbsd/man3/stddef.3 create mode 100644 static/netbsd/man3/stdint.3 create mode 100644 static/netbsd/man3/stdlib.3 create mode 100644 static/netbsd/man3/sysexits.3 create mode 100644 static/netbsd/man3/tgmath.3 create mode 100644 static/netbsd/man3/timeradd.3 create mode 100644 static/netbsd/man3/timeval.3 create mode 100644 static/netbsd/man3/tm.3 create mode 100644 static/netbsd/man3/tree.3 create mode 100644 static/netbsd/man3/typeof.3 create mode 100644 static/netbsd/man3/types.3 create mode 100644 static/netbsd/man3/uchar.3 create mode 100644 static/netbsd/man3/unistd.3 create mode 100644 static/netbsd/man3lua/Makefile create mode 100644 static/netbsd/man3lua/bozohttpd.3lua create mode 100644 static/netbsd/man3lua/gpio.3lua create mode 100644 static/netbsd/man3lua/intro.3lua create mode 100644 static/netbsd/man3lua/libm.3lua create mode 100644 static/netbsd/man3lua/netpgp.3lua create mode 100644 static/netbsd/man3lua/sqlite.3lua create mode 100644 static/netbsd/man3lua/syslog.3lua create mode 100644 static/netbsd/man4/Makefile create mode 100644 static/netbsd/man4/aac.4 create mode 100644 static/netbsd/man4/ac97.4 create mode 100644 static/netbsd/man4/acardide.4 create mode 100644 static/netbsd/man4/aceride.4 create mode 100644 static/netbsd/man4/acphy.4 create mode 100644 static/netbsd/man4/acpi.4 create mode 100644 static/netbsd/man4/acpiacad.4 create mode 100644 static/netbsd/man4/acpibat.4 create mode 100644 static/netbsd/man4/acpibut.4 create mode 100644 static/netbsd/man4/acpicpu.4 create mode 100644 static/netbsd/man4/acpidalb.4 create mode 100644 static/netbsd/man4/acpiec.4 create mode 100644 static/netbsd/man4/acpifan.4 create mode 100644 static/netbsd/man4/acpihed.4 create mode 100644 static/netbsd/man4/acpilid.4 create mode 100644 static/netbsd/man4/acpipmtr.4 create mode 100644 static/netbsd/man4/acpismbus.4 create mode 100644 static/netbsd/man4/acpitz.4 create mode 100644 static/netbsd/man4/acpivga.4 create mode 100644 static/netbsd/man4/acpivmgenid.4 create mode 100644 static/netbsd/man4/acpiwdrt.4 create mode 100644 static/netbsd/man4/acpiwmi.4 create mode 100644 static/netbsd/man4/adb.4 create mode 100644 static/netbsd/man4/adbbt.4 create mode 100644 static/netbsd/man4/adbkbd.4 create mode 100644 static/netbsd/man4/adbms.4 create mode 100644 static/netbsd/man4/adc.4 create mode 100644 static/netbsd/man4/adm1026hm.4 create mode 100644 static/netbsd/man4/admtemp.4 create mode 100644 static/netbsd/man4/adv.4 create mode 100644 static/netbsd/man4/adw.4 create mode 100644 static/netbsd/man4/age.4 create mode 100644 static/netbsd/man4/agp.4 create mode 100644 static/netbsd/man4/agr.4 create mode 100644 static/netbsd/man4/aha.4 create mode 100644 static/netbsd/man4/ahb.4 create mode 100644 static/netbsd/man4/ahc.4 create mode 100644 static/netbsd/man4/ahcisata.4 create mode 100644 static/netbsd/man4/ahd.4 create mode 100644 static/netbsd/man4/aht20temp.4 create mode 100644 static/netbsd/man4/ai.4 create mode 100644 static/netbsd/man4/aibs.4 create mode 100644 static/netbsd/man4/aic.4 create mode 100644 static/netbsd/man4/akbd.4 create mode 100644 static/netbsd/man4/alc.4 create mode 100644 static/netbsd/man4/ale.4 create mode 100644 static/netbsd/man4/alipm.4 create mode 100644 static/netbsd/man4/altmem.4 create mode 100644 static/netbsd/man4/altq.4 create mode 100644 static/netbsd/man4/am2315temp.4 create mode 100644 static/netbsd/man4/amdgpio.4 create mode 100644 static/netbsd/man4/amdpm.4 create mode 100644 static/netbsd/man4/amdtemp.4 create mode 100644 static/netbsd/man4/amhphy.4 create mode 100644 static/netbsd/man4/amr.4 create mode 100644 static/netbsd/man4/ams.4 create mode 100644 static/netbsd/man4/an.4 create mode 100644 static/netbsd/man4/apei.4 create mode 100644 static/netbsd/man4/aps.4 create mode 100644 static/netbsd/man4/aq.4 create mode 100644 static/netbsd/man4/arcmsr.4 create mode 100644 static/netbsd/man4/arcofi.4 create mode 100644 static/netbsd/man4/aria.4 create mode 100644 static/netbsd/man4/artsata.4 create mode 100644 static/netbsd/man4/ast.4 create mode 100644 static/netbsd/man4/asus.4 create mode 100644 static/netbsd/man4/ata.4 create mode 100644 static/netbsd/man4/atalk.4 create mode 100644 static/netbsd/man4/ataraid.4 create mode 100644 static/netbsd/man4/ate.4 create mode 100644 static/netbsd/man4/ath.4 create mode 100644 static/netbsd/man4/athn.4 create mode 100644 static/netbsd/man4/atphy.4 create mode 100644 static/netbsd/man4/atppc.4 create mode 100644 static/netbsd/man4/attimer.4 create mode 100644 static/netbsd/man4/atu.4 create mode 100644 static/netbsd/man4/atw.4 create mode 100644 static/netbsd/man4/auacer.4 create mode 100644 static/netbsd/man4/aubtfwl.4 create mode 100644 static/netbsd/man4/audio.4 create mode 100644 static/netbsd/man4/audiocs.4 create mode 100644 static/netbsd/man4/aue.4 create mode 100644 static/netbsd/man4/auich.4 create mode 100644 static/netbsd/man4/auixp.4 create mode 100644 static/netbsd/man4/autri.4 create mode 100644 static/netbsd/man4/auvia.4 create mode 100644 static/netbsd/man4/auvitek.4 create mode 100644 static/netbsd/man4/awi.4 create mode 100644 static/netbsd/man4/axe.4 create mode 100644 static/netbsd/man4/axen.4 create mode 100644 static/netbsd/man4/az.4 create mode 100644 static/netbsd/man4/battery_pmu.4 create mode 100644 static/netbsd/man4/bba.4 create mode 100644 static/netbsd/man4/bce.4 create mode 100644 static/netbsd/man4/bcsp.4 create mode 100644 static/netbsd/man4/be.4 create mode 100644 static/netbsd/man4/bge.4 create mode 100644 static/netbsd/man4/bha.4 create mode 100644 static/netbsd/man4/bio.4 create mode 100644 static/netbsd/man4/bktr.4 create mode 100644 static/netbsd/man4/bluetooth.4 create mode 100644 static/netbsd/man4/bmtphy.4 create mode 100644 static/netbsd/man4/bmx280thp.4 create mode 100644 static/netbsd/man4/bnx.4 create mode 100644 static/netbsd/man4/boca.4 create mode 100644 static/netbsd/man4/bochsfb.4 create mode 100644 static/netbsd/man4/bpf.4 create mode 100644 static/netbsd/man4/bpfjit.4 create mode 100644 static/netbsd/man4/brgphy.4 create mode 100644 static/netbsd/man4/bridge.4 create mode 100644 static/netbsd/man4/bt3c.4 create mode 100644 static/netbsd/man4/btbc.4 create mode 100644 static/netbsd/man4/bthidev.4 create mode 100644 static/netbsd/man4/bthub.4 create mode 100644 static/netbsd/man4/btkbd.4 create mode 100644 static/netbsd/man4/btmagic.4 create mode 100644 static/netbsd/man4/btms.4 create mode 100644 static/netbsd/man4/btsco.4 create mode 100644 static/netbsd/man4/btuart.4 create mode 100644 static/netbsd/man4/bwfm.4 create mode 100644 static/netbsd/man4/bwi.4 create mode 100644 static/netbsd/man4/cac.4 create mode 100644 static/netbsd/man4/can.4 create mode 100644 static/netbsd/man4/canloop.4 create mode 100644 static/netbsd/man4/cardbus.4 create mode 100644 static/netbsd/man4/carp.4 create mode 100644 static/netbsd/man4/cas.4 create mode 100644 static/netbsd/man4/ccd.4 create mode 100644 static/netbsd/man4/cd.4 create mode 100644 static/netbsd/man4/cdce.4 create mode 100644 static/netbsd/man4/cec.4 create mode 100644 static/netbsd/man4/cfb.4 create mode 100644 static/netbsd/man4/cgd.4 create mode 100644 static/netbsd/man4/ch.4 create mode 100644 static/netbsd/man4/chipsfb.4 create mode 100644 static/netbsd/man4/ciphy.4 create mode 100644 static/netbsd/man4/cir.4 create mode 100644 static/netbsd/man4/ciss.4 create mode 100644 static/netbsd/man4/clcs.4 create mode 100644 static/netbsd/man4/clct.4 create mode 100644 static/netbsd/man4/clockctl.4 create mode 100644 static/netbsd/man4/cmdide.4 create mode 100644 static/netbsd/man4/cmpci.4 create mode 100644 static/netbsd/man4/cms.4 create mode 100644 static/netbsd/man4/cnw.4 create mode 100644 static/netbsd/man4/com.4 create mode 100644 static/netbsd/man4/coram.4 create mode 100644 static/netbsd/man4/crypto.4 create mode 100644 static/netbsd/man4/cs.4 create mode 100644 static/netbsd/man4/cs80bus.4 create mode 100644 static/netbsd/man4/cuda.4 create mode 100644 static/netbsd/man4/cue.4 create mode 100644 static/netbsd/man4/cxdtv.4 create mode 100644 static/netbsd/man4/cy.4 create mode 100644 static/netbsd/man4/cypide.4 create mode 100644 static/netbsd/man4/cz.4 create mode 100644 static/netbsd/man4/dbcool.4 create mode 100644 static/netbsd/man4/ddb.4 create mode 100644 static/netbsd/man4/ddc.4 create mode 100644 static/netbsd/man4/dge.4 create mode 100644 static/netbsd/man4/dk.4 create mode 100644 static/netbsd/man4/dm.4 create mode 100644 static/netbsd/man4/dmoverio.4 create mode 100644 static/netbsd/man4/dmphy.4 create mode 100644 static/netbsd/man4/dpt.4 create mode 100644 static/netbsd/man4/dpti.4 create mode 100644 static/netbsd/man4/drm.4 create mode 100644 static/netbsd/man4/drum.4 create mode 100644 static/netbsd/man4/drvctl.4 create mode 100644 static/netbsd/man4/ds2482ow.4 create mode 100644 static/netbsd/man4/ds28e17iic.4 create mode 100644 static/netbsd/man4/dse.4 create mode 100644 static/netbsd/man4/dtide.4 create mode 100644 static/netbsd/man4/dtv.4 create mode 100644 static/netbsd/man4/dtviic.4 create mode 100644 static/netbsd/man4/dwctwo.4 create mode 100644 static/netbsd/man4/ea.4 create mode 100644 static/netbsd/man4/eap.4 create mode 100644 static/netbsd/man4/eb.4 create mode 100644 static/netbsd/man4/ebus.4 create mode 100644 static/netbsd/man4/ec.4 create mode 100644 static/netbsd/man4/edc.4 create mode 100644 static/netbsd/man4/ef.4 create mode 100644 static/netbsd/man4/eg.4 create mode 100644 static/netbsd/man4/ehci.4 create mode 100644 static/netbsd/man4/ei.4 create mode 100644 static/netbsd/man4/eisa.4 create mode 100644 static/netbsd/man4/el.4 create mode 100644 static/netbsd/man4/elmc.4 create mode 100644 static/netbsd/man4/emcfan.4 create mode 100644 static/netbsd/man4/emdtv.4 create mode 100644 static/netbsd/man4/emuxki.4 create mode 100644 static/netbsd/man4/ena.4 create mode 100644 static/netbsd/man4/envsys.4 create mode 100644 static/netbsd/man4/ep.4 create mode 100644 static/netbsd/man4/epic.4 create mode 100644 static/netbsd/man4/eqos.4 create mode 100644 static/netbsd/man4/esa.4 create mode 100644 static/netbsd/man4/esiop.4 create mode 100644 static/netbsd/man4/esm.4 create mode 100644 static/netbsd/man4/eso.4 create mode 100644 static/netbsd/man4/esp.4 create mode 100644 static/netbsd/man4/ess.4 create mode 100644 static/netbsd/man4/et.4 create mode 100644 static/netbsd/man4/etphy.4 create mode 100644 static/netbsd/man4/ex.4 create mode 100644 static/netbsd/man4/exphy.4 create mode 100644 static/netbsd/man4/faith.4 create mode 100644 static/netbsd/man4/fd.4 create mode 100644 static/netbsd/man4/finsio.4 create mode 100644 static/netbsd/man4/flash.4 create mode 100644 static/netbsd/man4/fms.4 create mode 100644 static/netbsd/man4/fmv.4 create mode 100644 static/netbsd/man4/fss.4 create mode 100644 static/netbsd/man4/fujbp.4 create mode 100644 static/netbsd/man4/full.4 create mode 100644 static/netbsd/man4/fwip.4 create mode 100644 static/netbsd/man4/fwohci.4 create mode 100644 static/netbsd/man4/fxp.4 create mode 100644 static/netbsd/man4/g760a.4 create mode 100644 static/netbsd/man4/gcscaudio.4 create mode 100644 static/netbsd/man4/gem.4 create mode 100644 static/netbsd/man4/genet.4 create mode 100644 static/netbsd/man4/genfb.4 create mode 100644 static/netbsd/man4/gentbi.4 create mode 100644 static/netbsd/man4/geodeide.4 create mode 100644 static/netbsd/man4/gif.4 create mode 100644 static/netbsd/man4/glxtphy.4 create mode 100644 static/netbsd/man4/gphyter.4 create mode 100644 static/netbsd/man4/gpib.4 create mode 100644 static/netbsd/man4/gpio.4 create mode 100644 static/netbsd/man4/gpioiic.4 create mode 100644 static/netbsd/man4/gpioirq.4 create mode 100644 static/netbsd/man4/gpiolock.4 create mode 100644 static/netbsd/man4/gpioow.4 create mode 100644 static/netbsd/man4/gpiopps.4 create mode 100644 static/netbsd/man4/gpiopwm.4 create mode 100644 static/netbsd/man4/gpiosim.4 create mode 100644 static/netbsd/man4/gre.4 create mode 100644 static/netbsd/man4/gscan.4 create mode 100644 static/netbsd/man4/gsip.4 create mode 100644 static/netbsd/man4/gtp.4 create mode 100644 static/netbsd/man4/gus.4 create mode 100644 static/netbsd/man4/guspnp.4 create mode 100644 static/netbsd/man4/hcide.4 create mode 100644 static/netbsd/man4/hdaudio.4 create mode 100644 static/netbsd/man4/hifn.4 create mode 100644 static/netbsd/man4/hil.4 create mode 100644 static/netbsd/man4/hilid.4 create mode 100644 static/netbsd/man4/hilkbd.4 create mode 100644 static/netbsd/man4/hilms.4 create mode 100644 static/netbsd/man4/hme.4 create mode 100644 static/netbsd/man4/hpacel.4 create mode 100644 static/netbsd/man4/hpqlb.4 create mode 100644 static/netbsd/man4/hptide.4 create mode 100644 static/netbsd/man4/hvn.4 create mode 100644 static/netbsd/man4/hythygtemp.4 create mode 100644 static/netbsd/man4/iavf.4 create mode 100644 static/netbsd/man4/ibmcd.4 create mode 100644 static/netbsd/man4/ibmhawk.4 create mode 100644 static/netbsd/man4/ichsmb.4 create mode 100644 static/netbsd/man4/icmp.4 create mode 100644 static/netbsd/man4/icmp6.4 create mode 100644 static/netbsd/man4/icp.4 create mode 100644 static/netbsd/man4/icsphy.4 create mode 100644 static/netbsd/man4/iee.4 create mode 100644 static/netbsd/man4/ieee1394if.4 create mode 100644 static/netbsd/man4/ieee80211.4 create mode 100644 static/netbsd/man4/ietp.4 create mode 100644 static/netbsd/man4/ifmedia.4 create mode 100644 static/netbsd/man4/igc.4 create mode 100644 static/netbsd/man4/igmafb.4 create mode 100644 static/netbsd/man4/igphy.4 create mode 100644 static/netbsd/man4/igpio.4 create mode 100644 static/netbsd/man4/igsfb.4 create mode 100644 static/netbsd/man4/iha.4 create mode 100644 static/netbsd/man4/ihidev.4 create mode 100644 static/netbsd/man4/ihphy.4 create mode 100644 static/netbsd/man4/iic.4 create mode 100644 static/netbsd/man4/ikphy.4 create mode 100644 static/netbsd/man4/ims.4 create mode 100644 static/netbsd/man4/inet.4 create mode 100644 static/netbsd/man4/inet6.4 create mode 100644 static/netbsd/man4/inphy.4 create mode 100644 static/netbsd/man4/intersil7170.4 create mode 100644 static/netbsd/man4/intro.4 create mode 100644 static/netbsd/man4/ioasic.4 create mode 100644 static/netbsd/man4/ioat.4 create mode 100644 static/netbsd/man4/iop.4 create mode 100644 static/netbsd/man4/iophy.4 create mode 100644 static/netbsd/man4/iopsp.4 create mode 100644 static/netbsd/man4/ip.4 create mode 100644 static/netbsd/man4/ip6.4 create mode 100644 static/netbsd/man4/ipgphy.4 create mode 100644 static/netbsd/man4/ipmi.4 create mode 100644 static/netbsd/man4/ipsec.4 create mode 100644 static/netbsd/man4/ipsecif.4 create mode 100644 static/netbsd/man4/ipw.4 create mode 100644 static/netbsd/man4/irframe.4 create mode 100644 static/netbsd/man4/irframetty.4 create mode 100644 static/netbsd/man4/irmce.4 create mode 100644 static/netbsd/man4/isa.4 create mode 100644 static/netbsd/man4/isapnp.4 create mode 100644 static/netbsd/man4/ismt.4 create mode 100644 static/netbsd/man4/isp.4 create mode 100644 static/netbsd/man4/isv.4 create mode 100644 static/netbsd/man4/iteide.4 create mode 100644 static/netbsd/man4/itesio.4 create mode 100644 static/netbsd/man4/iwi.4 create mode 100644 static/netbsd/man4/iwm.4 create mode 100644 static/netbsd/man4/iwn.4 create mode 100644 static/netbsd/man4/ix.4 create mode 100644 static/netbsd/man4/ixg.4 create mode 100644 static/netbsd/man4/ixl.4 create mode 100644 static/netbsd/man4/ixpide.4 create mode 100644 static/netbsd/man4/ixv.4 create mode 100644 static/netbsd/man4/iy.4 create mode 100644 static/netbsd/man4/jme.4 create mode 100644 static/netbsd/man4/jmide.4 create mode 100644 static/netbsd/man4/jmphy.4 create mode 100644 static/netbsd/man4/joy.4 create mode 100644 static/netbsd/man4/kcov.4 create mode 100644 static/netbsd/man4/kloader.4 create mode 100644 static/netbsd/man4/kse.4 create mode 100644 static/netbsd/man4/ksyms.4 create mode 100644 static/netbsd/man4/kttcp.4 create mode 100644 static/netbsd/man4/kue.4 create mode 100644 static/netbsd/man4/l2tp.4 create mode 100644 static/netbsd/man4/lagg.4 create mode 100644 static/netbsd/man4/lc.4 create mode 100644 static/netbsd/man4/ld.4 create mode 100644 static/netbsd/man4/le.4 create mode 100644 static/netbsd/man4/lii.4 create mode 100644 static/netbsd/man4/lm.4 create mode 100644 static/netbsd/man4/lmenv.4 create mode 100644 static/netbsd/man4/lmtemp.4 create mode 100644 static/netbsd/man4/lo.4 create mode 100644 static/netbsd/man4/lpt.4 create mode 100644 static/netbsd/man4/lua.4 create mode 100644 static/netbsd/man4/lxtphy.4 create mode 100644 static/netbsd/man4/m25p.4 create mode 100644 static/netbsd/man4/machfb.4 create mode 100644 static/netbsd/man4/mainbus.4 create mode 100644 static/netbsd/man4/makphy.4 create mode 100644 static/netbsd/man4/malo.4 create mode 100644 static/netbsd/man4/man4.acorn32/Makefile create mode 100644 static/netbsd/man4/man4.acorn32/asc.4 create mode 100644 static/netbsd/man4/man4.acorn32/autoconf.4 create mode 100644 static/netbsd/man4/man4.acorn32/cosc.4 create mode 100644 static/netbsd/man4/man4.acorn32/csc.4 create mode 100644 static/netbsd/man4/man4.acorn32/ie.4 create mode 100644 static/netbsd/man4/man4.acorn32/intro.4 create mode 100644 static/netbsd/man4/man4.acorn32/iomdkbc.4 create mode 100644 static/netbsd/man4/man4.acorn32/lpt.4 create mode 100644 static/netbsd/man4/man4.acorn32/mainbus.4 create mode 100644 static/netbsd/man4/man4.acorn32/mem.4 create mode 100644 static/netbsd/man4/man4.acorn32/ptsc.4 create mode 100644 static/netbsd/man4/man4.acorn32/qms.4 create mode 100644 static/netbsd/man4/man4.acorn32/vidcaudio.4 create mode 100644 static/netbsd/man4/man4.acorn32/vidcvideo.4 create mode 100644 static/netbsd/man4/man4.alpha/Makefile create mode 100644 static/netbsd/man4/man4.alpha/apecs.4 create mode 100644 static/netbsd/man4/man4.alpha/asc.4 create mode 100644 static/netbsd/man4/man4.alpha/autoconf.4 create mode 100644 static/netbsd/man4/man4.alpha/cia.4 create mode 100644 static/netbsd/man4/man4.alpha/dwlpx.4 create mode 100644 static/netbsd/man4/man4.alpha/gbus.4 create mode 100644 static/netbsd/man4/man4.alpha/intro.4 create mode 100644 static/netbsd/man4/man4.alpha/irongate.4 create mode 100644 static/netbsd/man4/man4.alpha/jensenio.4 create mode 100644 static/netbsd/man4/man4.alpha/kft.4 create mode 100644 static/netbsd/man4/man4.alpha/lca.4 create mode 100644 static/netbsd/man4/man4.alpha/mcbus.4 create mode 100644 static/netbsd/man4/man4.alpha/mcpcia.4 create mode 100644 static/netbsd/man4/man4.alpha/sableio.4 create mode 100644 static/netbsd/man4/man4.alpha/tcasic.4 create mode 100644 static/netbsd/man4/man4.alpha/tlsb.4 create mode 100644 static/netbsd/man4/man4.alpha/tsc.4 create mode 100644 static/netbsd/man4/man4.alpha/tsciic.4 create mode 100644 static/netbsd/man4/man4.alpha/tsp.4 create mode 100644 static/netbsd/man4/man4.alpha/ttwoga.4 create mode 100644 static/netbsd/man4/man4.alpha/ttwopci.4 create mode 100644 static/netbsd/man4/man4.amiga/Makefile create mode 100644 static/netbsd/man4/man4.amiga/a1k2cp.4 create mode 100644 static/netbsd/man4/man4.amiga/a2kbbc.4 create mode 100644 static/netbsd/man4/man4.amiga/a34kbbc.4 create mode 100644 static/netbsd/man4/man4.amiga/acafh.4 create mode 100644 static/netbsd/man4/man4.amiga/afsc.4 create mode 100644 static/netbsd/man4/man4.amiga/ahsc.4 create mode 100644 static/netbsd/man4/man4.amiga/amidisplaycc.4 create mode 100644 static/netbsd/man4/man4.amiga/atzsc.4 create mode 100644 static/netbsd/man4/man4.amiga/autoconf.4 create mode 100644 static/netbsd/man4/man4.amiga/bah.4 create mode 100644 static/netbsd/man4/man4.amiga/bppcsc.4 create mode 100644 static/netbsd/man4/man4.amiga/clockport.4 create mode 100644 static/netbsd/man4/man4.amiga/console.4 create mode 100644 static/netbsd/man4/man4.amiga/cv3dpb.4 create mode 100644 static/netbsd/man4/man4.amiga/drbbc.4 create mode 100644 static/netbsd/man4/man4.amiga/ed.4 create mode 100644 static/netbsd/man4/man4.amiga/efa.4 create mode 100644 static/netbsd/man4/man4.amiga/em4k.4 create mode 100644 static/netbsd/man4/man4.amiga/empb.4 create mode 100644 static/netbsd/man4/man4.amiga/es.4 create mode 100644 static/netbsd/man4/man4.amiga/fdc.4 create mode 100644 static/netbsd/man4/man4.amiga/grf.4 create mode 100644 static/netbsd/man4/man4.amiga/grfcl.4 create mode 100644 static/netbsd/man4/man4.amiga/grfcv.4 create mode 100644 static/netbsd/man4/man4.amiga/grfcv3d.4 create mode 100644 static/netbsd/man4/man4.amiga/grfet.4 create mode 100644 static/netbsd/man4/man4.amiga/grfrh.4 create mode 100644 static/netbsd/man4/man4.amiga/grfrt.4 create mode 100644 static/netbsd/man4/man4.amiga/grful.4 create mode 100644 static/netbsd/man4/man4.amiga/gtsc.4 create mode 100644 static/netbsd/man4/man4.amiga/intro.4 create mode 100644 static/netbsd/man4/man4.amiga/ite.4 create mode 100644 static/netbsd/man4/man4.amiga/mem.4 create mode 100644 static/netbsd/man4/man4.amiga/mfcs.4 create mode 100644 static/netbsd/man4/man4.amiga/mgnsc.4 create mode 100644 static/netbsd/man4/man4.amiga/mntva.4 create mode 100644 static/netbsd/man4/man4.amiga/mppb.4 create mode 100644 static/netbsd/man4/man4.amiga/p5membar.4 create mode 100644 static/netbsd/man4/man4.amiga/p5pb.4 create mode 100644 static/netbsd/man4/man4.amiga/qn.4 create mode 100644 static/netbsd/man4/man4.amiga/ser.4 create mode 100644 static/netbsd/man4/man4.amiga/wesc.4 create mode 100644 static/netbsd/man4/man4.amiga/xsh.4 create mode 100644 static/netbsd/man4/man4.amiga/xsurf.4 create mode 100644 static/netbsd/man4/man4.amiga/z3rambd.4 create mode 100644 static/netbsd/man4/man4.amiga/zssc.4 create mode 100644 static/netbsd/man4/man4.amiga/zz9k.4 create mode 100644 static/netbsd/man4/man4.arc/Makefile create mode 100644 static/netbsd/man4/man4.arc/intro.4 create mode 100644 static/netbsd/man4/man4.atari/Makefile create mode 100644 static/netbsd/man4/man4.atari/et.4 create mode 100644 static/netbsd/man4/man4.atari/floppy.4 create mode 100644 static/netbsd/man4/man4.atari/intro.4 create mode 100644 static/netbsd/man4/man4.atari/ms.4 create mode 100644 static/netbsd/man4/man4.atari/rtc.4 create mode 100644 static/netbsd/man4/man4.cobalt/Makefile create mode 100644 static/netbsd/man4/man4.cobalt/gt.4 create mode 100644 static/netbsd/man4/man4.cobalt/intro.4 create mode 100644 static/netbsd/man4/man4.dreamcast/Makefile create mode 100644 static/netbsd/man4/man4.dreamcast/aica.4 create mode 100644 static/netbsd/man4/man4.dreamcast/g2bus.4 create mode 100644 static/netbsd/man4/man4.dreamcast/gapspci.4 create mode 100644 static/netbsd/man4/man4.dreamcast/gdrom.4 create mode 100644 static/netbsd/man4/man4.dreamcast/intro.4 create mode 100644 static/netbsd/man4/man4.dreamcast/maple.4 create mode 100644 static/netbsd/man4/man4.dreamcast/mkbd.4 create mode 100644 static/netbsd/man4/man4.dreamcast/mlcd.4 create mode 100644 static/netbsd/man4/man4.dreamcast/mmem.4 create mode 100644 static/netbsd/man4/man4.dreamcast/mms.4 create mode 100644 static/netbsd/man4/man4.dreamcast/pvr.4 create mode 100644 static/netbsd/man4/man4.emips/Makefile create mode 100644 static/netbsd/man4/man4.emips/ace.4 create mode 100644 static/netbsd/man4/man4.emips/autoconf.4 create mode 100644 static/netbsd/man4/man4.emips/dz.4 create mode 100644 static/netbsd/man4/man4.emips/ebus.4 create mode 100644 static/netbsd/man4/man4.emips/eclock.4 create mode 100644 static/netbsd/man4/man4.emips/enic.4 create mode 100644 static/netbsd/man4/man4.emips/intro.4 create mode 100644 static/netbsd/man4/man4.evbarm/Makefile create mode 100644 static/netbsd/man4/man4.evbarm/awge.4 create mode 100644 static/netbsd/man4/man4.evbarm/bcmgpio.4 create mode 100644 static/netbsd/man4/man4.evbarm/cpsw.4 create mode 100644 static/netbsd/man4/man4.evbarm/epgpio.4 create mode 100644 static/netbsd/man4/man4.evbarm/gxio.4 create mode 100644 static/netbsd/man4/man4.evbarm/intro.4 create mode 100644 static/netbsd/man4/man4.evbarm/iopaau.4 create mode 100644 static/netbsd/man4/man4.evbarm/iopwdog.4 create mode 100644 static/netbsd/man4/man4.evbarm/rktsadc.4 create mode 100644 static/netbsd/man4/man4.evbarm/sun8icrypto.4 create mode 100644 static/netbsd/man4/man4.evbarm/vcaudio.4 create mode 100644 static/netbsd/man4/man4.evbarm/vchiq.4 create mode 100644 static/netbsd/man4/man4.evbmips/Makefile create mode 100644 static/netbsd/man4/man4.evbmips/aupci.4 create mode 100644 static/netbsd/man4/man4.evbmips/cnmac.4 create mode 100644 static/netbsd/man4/man4.evbmips/intro.4 create mode 100644 static/netbsd/man4/man4.evbppc/Makefile create mode 100644 static/netbsd/man4/man4.evbppc/cpc.4 create mode 100644 static/netbsd/man4/man4.evbppc/intro_pmppc.4 create mode 100644 static/netbsd/man4/man4.evbppc/mainbus.4 create mode 100644 static/netbsd/man4/man4.evbppc/rtc.4 create mode 100644 static/netbsd/man4/man4.hp300/Makefile create mode 100644 static/netbsd/man4/man4.hp300/autoconf.4 create mode 100644 static/netbsd/man4/man4.hp300/cons.4 create mode 100644 static/netbsd/man4/man4.hp300/ct.4 create mode 100644 static/netbsd/man4/man4.hp300/dcl.4 create mode 100644 static/netbsd/man4/man4.hp300/dcm.4 create mode 100644 static/netbsd/man4/man4.hp300/dio.4 create mode 100644 static/netbsd/man4/man4.hp300/dnkbd.4 create mode 100644 static/netbsd/man4/man4.hp300/dvbox.4 create mode 100644 static/netbsd/man4/man4.hp300/frodo.4 create mode 100644 static/netbsd/man4/man4.hp300/gbox.4 create mode 100644 static/netbsd/man4/man4.hp300/hpib.4 create mode 100644 static/netbsd/man4/man4.hp300/hyper.4 create mode 100644 static/netbsd/man4/man4.hp300/intio.4 create mode 100644 static/netbsd/man4/man4.hp300/intro.4 create mode 100644 static/netbsd/man4/man4.hp300/mem.4 create mode 100644 static/netbsd/man4/man4.hp300/ppi.4 create mode 100644 static/netbsd/man4/man4.hp300/rbox.4 create mode 100644 static/netbsd/man4/man4.hp300/rd.4 create mode 100644 static/netbsd/man4/man4.hp300/rmp.4 create mode 100644 static/netbsd/man4/man4.hp300/rtc.4 create mode 100644 static/netbsd/man4/man4.hp300/topcat.4 create mode 100644 static/netbsd/man4/man4.hpcarm/Makefile create mode 100644 static/netbsd/man4/man4.hpcarm/intro.4 create mode 100644 static/netbsd/man4/man4.hpcarm/j720kbd.4 create mode 100644 static/netbsd/man4/man4.hpcarm/j720lcd.4 create mode 100644 static/netbsd/man4/man4.hpcarm/j720tp.4 create mode 100644 static/netbsd/man4/man4.hpcmips/Makefile create mode 100644 static/netbsd/man4/man4.hpcmips/teliosio.4 create mode 100644 static/netbsd/man4/man4.hpcsh/Makefile create mode 100644 static/netbsd/man4/man4.hpcsh/intro.4 create mode 100644 static/netbsd/man4/man4.hpcsh/j6x0lcd.4 create mode 100644 static/netbsd/man4/man4.hpcsh/j6x0tp.4 create mode 100644 static/netbsd/man4/man4.hpcsh/psh3lcd.4 create mode 100644 static/netbsd/man4/man4.hpcsh/psh3tp.4 create mode 100644 static/netbsd/man4/man4.hppa/Makefile create mode 100644 static/netbsd/man4/man4.hppa/asp.4 create mode 100644 static/netbsd/man4/man4.hppa/astro.4 create mode 100644 static/netbsd/man4/man4.hppa/cpu.4 create mode 100644 static/netbsd/man4/man4.hppa/dino.4 create mode 100644 static/netbsd/man4/man4.hppa/elroy.4 create mode 100644 static/netbsd/man4/man4.hppa/gsc.4 create mode 100644 static/netbsd/man4/man4.hppa/gsckbc.4 create mode 100644 static/netbsd/man4/man4.hppa/harmony.4 create mode 100644 static/netbsd/man4/man4.hppa/intro.4 create mode 100644 static/netbsd/man4/man4.hppa/io.4 create mode 100644 static/netbsd/man4/man4.hppa/lasi.4 create mode 100644 static/netbsd/man4/man4.hppa/lcd.4 create mode 100644 static/netbsd/man4/man4.hppa/mem.4 create mode 100644 static/netbsd/man4/man4.hppa/mongoose.4 create mode 100644 static/netbsd/man4/man4.hppa/pdc.4 create mode 100644 static/netbsd/man4/man4.hppa/phantomas.4 create mode 100644 static/netbsd/man4/man4.hppa/ssio.4 create mode 100644 static/netbsd/man4/man4.hppa/uturn.4 create mode 100644 static/netbsd/man4/man4.hppa/wax.4 create mode 100644 static/netbsd/man4/man4.i386/Makefile create mode 100644 static/netbsd/man4/man4.i386/apm.4 create mode 100644 static/netbsd/man4/man4.i386/cmos.4 create mode 100644 static/netbsd/man4/man4.i386/elanpar.4 create mode 100644 static/netbsd/man4/man4.i386/elanpex.4 create mode 100644 static/netbsd/man4/man4.i386/elansc.4 create mode 100644 static/netbsd/man4/man4.i386/gcscide.4 create mode 100644 static/netbsd/man4/man4.i386/gcscpcib.4 create mode 100644 static/netbsd/man4/man4.i386/geodecntr.4 create mode 100644 static/netbsd/man4/man4.i386/geodewdog.4 create mode 100644 static/netbsd/man4/man4.i386/glxsb.4 create mode 100644 static/netbsd/man4/man4.i386/gscpcib.4 create mode 100644 static/netbsd/man4/man4.i386/intro.4 create mode 100644 static/netbsd/man4/man4.i386/io.4 create mode 100644 static/netbsd/man4/man4.i386/lms.4 create mode 100644 static/netbsd/man4/man4.i386/mms.4 create mode 100644 static/netbsd/man4/man4.i386/pcibios.4 create mode 100644 static/netbsd/man4/man4.i386/pcmb.4 create mode 100644 static/netbsd/man4/man4.i386/pnpbios.4 create mode 100644 static/netbsd/man4/man4.i386/rdcide.4 create mode 100644 static/netbsd/man4/man4.i386/rdcpcib.4 create mode 100644 static/netbsd/man4/man4.i386/spic.4 create mode 100644 static/netbsd/man4/man4.luna68k/Makefile create mode 100644 static/netbsd/man4/man4.luna68k/autoconf.4 create mode 100644 static/netbsd/man4/man4.luna68k/intro.4 create mode 100644 static/netbsd/man4/man4.luna68k/lcd.4 create mode 100644 static/netbsd/man4/man4.luna68k/mem.4 create mode 100644 static/netbsd/man4/man4.luna68k/xp.4 create mode 100644 static/netbsd/man4/man4.mac68k/Makefile create mode 100644 static/netbsd/man4/man4.mac68k/ae.4 create mode 100644 static/netbsd/man4/man4.mac68k/ascaudio.4 create mode 100644 static/netbsd/man4/man4.mac68k/autoconf.4 create mode 100644 static/netbsd/man4/man4.mac68k/cpi.4 create mode 100644 static/netbsd/man4/man4.mac68k/intro.4 create mode 100644 static/netbsd/man4/man4.mac68k/iwm.4 create mode 100644 static/netbsd/man4/man4.mac68k/mainbus.4 create mode 100644 static/netbsd/man4/man4.mac68k/mem.4 create mode 100644 static/netbsd/man4/man4.mac68k/netdock.4 create mode 100644 static/netbsd/man4/man4.mac68k/obio.4 create mode 100644 static/netbsd/man4/man4.mac68k/pbbat.4 create mode 100644 static/netbsd/man4/man4.mac68k/zsc.4 create mode 100644 static/netbsd/man4/man4.macppc/Makefile create mode 100644 static/netbsd/man4/man4.macppc/autoconf.4 create mode 100644 static/netbsd/man4/man4.macppc/awacs.4 create mode 100644 static/netbsd/man4/man4.macppc/bm.4 create mode 100644 static/netbsd/man4/man4.macppc/gm.4 create mode 100644 static/netbsd/man4/man4.macppc/intro.4 create mode 100644 static/netbsd/man4/man4.macppc/mesh.4 create mode 100644 static/netbsd/man4/man4.macppc/obio.4 create mode 100644 static/netbsd/man4/man4.macppc/pbms.4 create mode 100644 static/netbsd/man4/man4.macppc/platinumfb.4 create mode 100644 static/netbsd/man4/man4.macppc/snapper.4 create mode 100644 static/netbsd/man4/man4.mvme68k/Makefile create mode 100644 static/netbsd/man4/man4.mvme68k/autoconf.4 create mode 100644 static/netbsd/man4/man4.mvme68k/clmpcc.4 create mode 100644 static/netbsd/man4/man4.mvme68k/clock.4 create mode 100644 static/netbsd/man4/man4.mvme68k/ie.4 create mode 100644 static/netbsd/man4/man4.mvme68k/intro.4 create mode 100644 static/netbsd/man4/man4.mvme68k/lpt.4 create mode 100644 static/netbsd/man4/man4.mvme68k/mainbus.4 create mode 100644 static/netbsd/man4/man4.mvme68k/mem.4 create mode 100644 static/netbsd/man4/man4.mvme68k/memc.4 create mode 100644 static/netbsd/man4/man4.mvme68k/ncrsc.4 create mode 100644 static/netbsd/man4/man4.mvme68k/pcc.4 create mode 100644 static/netbsd/man4/man4.mvme68k/pcctwo.4 create mode 100644 static/netbsd/man4/man4.mvme68k/wdsc.4 create mode 100644 static/netbsd/man4/man4.mvme68k/zsc.4 create mode 100644 static/netbsd/man4/man4.pmax/Makefile create mode 100644 static/netbsd/man4/man4.pmax/asc.4 create mode 100644 static/netbsd/man4/man4.pmax/autoconf.4 create mode 100644 static/netbsd/man4/man4.pmax/ibus.4 create mode 100644 static/netbsd/man4/man4.pmax/intro.4 create mode 100644 static/netbsd/man4/man4.pmax/pm.4 create mode 100644 static/netbsd/man4/man4.pmax/sii.4 create mode 100644 static/netbsd/man4/man4.pmax/xcfb.4 create mode 100644 static/netbsd/man4/man4.prep/Makefile create mode 100644 static/netbsd/man4/man4.prep/intro.4 create mode 100644 static/netbsd/man4/man4.prep/nvram.4 create mode 100644 static/netbsd/man4/man4.sandpoint/Makefile create mode 100644 static/netbsd/man4/man4.sandpoint/nhpow.4 create mode 100644 static/netbsd/man4/man4.sandpoint/satmgr.4 create mode 100644 static/netbsd/man4/man4.sgimips/Makefile create mode 100644 static/netbsd/man4/man4.sgimips/crime.4 create mode 100644 static/netbsd/man4/man4.sgimips/dpclock.4 create mode 100644 static/netbsd/man4/man4.sgimips/dsclock.4 create mode 100644 static/netbsd/man4/man4.sgimips/gio.4 create mode 100644 static/netbsd/man4/man4.sgimips/giopci.4 create mode 100644 static/netbsd/man4/man4.sgimips/grtwo.4 create mode 100644 static/netbsd/man4/man4.sgimips/haltwo.4 create mode 100644 static/netbsd/man4/man4.sgimips/hpc.4 create mode 100644 static/netbsd/man4/man4.sgimips/imc.4 create mode 100644 static/netbsd/man4/man4.sgimips/intro.4 create mode 100644 static/netbsd/man4/man4.sgimips/light.4 create mode 100644 static/netbsd/man4/man4.sgimips/mace.4 create mode 100644 static/netbsd/man4/man4.sgimips/mavb.4 create mode 100644 static/netbsd/man4/man4.sgimips/mec.4 create mode 100644 static/netbsd/man4/man4.sgimips/newport.4 create mode 100644 static/netbsd/man4/man4.sgimips/pic.4 create mode 100644 static/netbsd/man4/man4.sgimips/sq.4 create mode 100644 static/netbsd/man4/man4.sgimips/wdsc.4 create mode 100644 static/netbsd/man4/man4.sparc/Makefile create mode 100644 static/netbsd/man4/man4.sparc/apc.4 create mode 100644 static/netbsd/man4/man4.sparc/audioamd.4 create mode 100644 static/netbsd/man4/man4.sparc/autoconf.4 create mode 100644 static/netbsd/man4/man4.sparc/auxreg.4 create mode 100644 static/netbsd/man4/man4.sparc/bpp.4 create mode 100644 static/netbsd/man4/man4.sparc/bwtwo.4 create mode 100644 static/netbsd/man4/man4.sparc/cgeight.4 create mode 100644 static/netbsd/man4/man4.sparc/cgfour.4 create mode 100644 static/netbsd/man4/man4.sparc/cgfourteen.4 create mode 100644 static/netbsd/man4/man4.sparc/cgsix.4 create mode 100644 static/netbsd/man4/man4.sparc/cgthree.4 create mode 100644 static/netbsd/man4/man4.sparc/cgtwo.4 create mode 100644 static/netbsd/man4/man4.sparc/clock.4 create mode 100644 static/netbsd/man4/man4.sparc/dbri.4 create mode 100644 static/netbsd/man4/man4.sparc/fd.4 create mode 100644 static/netbsd/man4/man4.sparc/ie.4 create mode 100644 static/netbsd/man4/man4.sparc/intro.4 create mode 100644 static/netbsd/man4/man4.sparc/kbd.4 create mode 100644 static/netbsd/man4/man4.sparc/magma.4 create mode 100644 static/netbsd/man4/man4.sparc/mem.4 create mode 100644 static/netbsd/man4/man4.sparc/ms.4 create mode 100644 static/netbsd/man4/man4.sparc/nell.4 create mode 100644 static/netbsd/man4/man4.sparc/openprom.4 create mode 100644 static/netbsd/man4/man4.sparc/pnozz.4 create mode 100644 static/netbsd/man4/man4.sparc/tctrl.4 create mode 100644 static/netbsd/man4/man4.sparc/tcx.4 create mode 100644 static/netbsd/man4/man4.sparc/timer.4 create mode 100644 static/netbsd/man4/man4.sparc/tslot.4 create mode 100644 static/netbsd/man4/man4.sparc/xd.4 create mode 100644 static/netbsd/man4/man4.sparc/xy.4 create mode 100644 static/netbsd/man4/man4.sparc/zx.4 create mode 100644 static/netbsd/man4/man4.sparc64/Makefile create mode 100644 static/netbsd/man4/man4.sparc64/envctrl.4 create mode 100644 static/netbsd/man4/man4.sparc64/fdc.4 create mode 100644 static/netbsd/man4/man4.sparc64/ffb.4 create mode 100644 static/netbsd/man4/man4.sparc64/intro.4 create mode 100644 static/netbsd/man4/man4.sparc64/lom.4 create mode 100644 static/netbsd/man4/man4.sparc64/psycho.4 create mode 100644 static/netbsd/man4/man4.sparc64/pyro.4 create mode 100644 static/netbsd/man4/man4.sparc64/sab.4 create mode 100644 static/netbsd/man4/man4.sparc64/schizo.4 create mode 100644 static/netbsd/man4/man4.sparc64/tadpmu.4 create mode 100644 static/netbsd/man4/man4.sparc64/tda.4 create mode 100644 static/netbsd/man4/man4.sun2/Makefile create mode 100644 static/netbsd/man4/man4.sun2/autoconf.4 create mode 100644 static/netbsd/man4/man4.sun2/bwtwo.4 create mode 100644 static/netbsd/man4/man4.sun2/ec.4 create mode 100644 static/netbsd/man4/man4.sun2/ie.4 create mode 100644 static/netbsd/man4/man4.sun2/intro.4 create mode 100644 static/netbsd/man4/man4.sun2/kbd.4 create mode 100644 static/netbsd/man4/man4.sun2/leds.4 create mode 100644 static/netbsd/man4/man4.sun2/mem.4 create mode 100644 static/netbsd/man4/man4.sun2/ms.4 create mode 100644 static/netbsd/man4/man4.sun3/Makefile create mode 100644 static/netbsd/man4/man4.sun3/autoconf.4 create mode 100644 static/netbsd/man4/man4.sun3/bwtwo.4 create mode 100644 static/netbsd/man4/man4.sun3/cgfour.4 create mode 100644 static/netbsd/man4/man4.sun3/cgtwo.4 create mode 100644 static/netbsd/man4/man4.sun3/fd.4 create mode 100644 static/netbsd/man4/man4.sun3/ie.4 create mode 100644 static/netbsd/man4/man4.sun3/intro.4 create mode 100644 static/netbsd/man4/man4.sun3/kbd.4 create mode 100644 static/netbsd/man4/man4.sun3/leds.4 create mode 100644 static/netbsd/man4/man4.sun3/mem.4 create mode 100644 static/netbsd/man4/man4.sun3/ms.4 create mode 100644 static/netbsd/man4/man4.vax/Makefile create mode 100644 static/netbsd/man4/man4.vax/acc.4 create mode 100644 static/netbsd/man4/man4.vax/ad.4 create mode 100644 static/netbsd/man4/man4.vax/asc.4 create mode 100644 static/netbsd/man4/man4.vax/autoconf.4 create mode 100644 static/netbsd/man4/man4.vax/cons.4 create mode 100644 static/netbsd/man4/man4.vax/covid.4 create mode 100644 static/netbsd/man4/man4.vax/crl.4 create mode 100644 static/netbsd/man4/man4.vax/css.4 create mode 100644 static/netbsd/man4/man4.vax/ct.4 create mode 100644 static/netbsd/man4/man4.vax/ddn.4 create mode 100644 static/netbsd/man4/man4.vax/de.4 create mode 100644 static/netbsd/man4/man4.vax/dh.4 create mode 100644 static/netbsd/man4/man4.vax/dhu.4 create mode 100644 static/netbsd/man4/man4.vax/dl.4 create mode 100644 static/netbsd/man4/man4.vax/dmc.4 create mode 100644 static/netbsd/man4/man4.vax/dmf.4 create mode 100644 static/netbsd/man4/man4.vax/dmv.4 create mode 100644 static/netbsd/man4/man4.vax/dmz.4 create mode 100644 static/netbsd/man4/man4.vax/dn.4 create mode 100644 static/netbsd/man4/man4.vax/dz.4 create mode 100644 static/netbsd/man4/man4.vax/ec.4 create mode 100644 static/netbsd/man4/man4.vax/en.4 create mode 100644 static/netbsd/man4/man4.vax/ex.4 create mode 100644 static/netbsd/man4/man4.vax/fl.4 create mode 100644 static/netbsd/man4/man4.vax/hdh.4 create mode 100644 static/netbsd/man4/man4.vax/hk.4 create mode 100644 static/netbsd/man4/man4.vax/hp.4 create mode 100644 static/netbsd/man4/man4.vax/ht.4 create mode 100644 static/netbsd/man4/man4.vax/hy.4 create mode 100644 static/netbsd/man4/man4.vax/ik.4 create mode 100644 static/netbsd/man4/man4.vax/il.4 create mode 100644 static/netbsd/man4/man4.vax/intro.4 create mode 100644 static/netbsd/man4/man4.vax/ix.4 create mode 100644 static/netbsd/man4/man4.vax/kg.4 create mode 100644 static/netbsd/man4/man4.vax/lp.4 create mode 100644 static/netbsd/man4/man4.vax/mem.4 create mode 100644 static/netbsd/man4/man4.vax/mt.4 create mode 100644 static/netbsd/man4/man4.vax/mtc.4 create mode 100644 static/netbsd/man4/man4.vax/np.4 create mode 100644 static/netbsd/man4/man4.vax/pcl.4 create mode 100644 static/netbsd/man4/man4.vax/ps.4 create mode 100644 static/netbsd/man4/man4.vax/qe.4 create mode 100644 static/netbsd/man4/man4.vax/qt.4 create mode 100644 static/netbsd/man4/man4.vax/rf.4 create mode 100644 static/netbsd/man4/man4.vax/rl.4 create mode 100644 static/netbsd/man4/man4.vax/tm.4 create mode 100644 static/netbsd/man4/man4.vax/ts.4 create mode 100644 static/netbsd/man4/man4.vax/tu.4 create mode 100644 static/netbsd/man4/man4.vax/uda.4 create mode 100644 static/netbsd/man4/man4.vax/up.4 create mode 100644 static/netbsd/man4/man4.vax/ut.4 create mode 100644 static/netbsd/man4/man4.vax/uu.4 create mode 100644 static/netbsd/man4/man4.vax/va.4 create mode 100644 static/netbsd/man4/man4.vax/vp.4 create mode 100644 static/netbsd/man4/man4.vax/vv.4 create mode 100644 static/netbsd/man4/man4.x68k/Makefile create mode 100644 static/netbsd/man4/man4.x68k/bmd.4 create mode 100644 static/netbsd/man4/man4.x68k/intio.4 create mode 100644 static/netbsd/man4/man4.x68k/intro.4 create mode 100644 static/netbsd/man4/man4.x68k/mfp.4 create mode 100644 static/netbsd/man4/man4.x68k/neptune.4 create mode 100644 static/netbsd/man4/man4.x68k/powsw.4 create mode 100644 static/netbsd/man4/man4.x68k/vs.4 create mode 100644 static/netbsd/man4/man4.x86/Makefile create mode 100644 static/netbsd/man4/man4.x86/amdccp.4 create mode 100644 static/netbsd/man4/man4.x86/amdpcib.4 create mode 100644 static/netbsd/man4/man4.x86/amdsmn.4 create mode 100644 static/netbsd/man4/man4.x86/amdzentemp.4 create mode 100644 static/netbsd/man4/man4.x86/apic.4 create mode 100644 static/netbsd/man4/man4.x86/autoconf.4 create mode 100644 static/netbsd/man4/man4.x86/balloon.4 create mode 100644 static/netbsd/man4/man4.x86/console.4 create mode 100644 static/netbsd/man4/man4.x86/coretemp.4 create mode 100644 static/netbsd/man4/man4.x86/est.4 create mode 100644 static/netbsd/man4/man4.x86/fdc.4 create mode 100644 static/netbsd/man4/man4.x86/fwhrng.4 create mode 100644 static/netbsd/man4/man4.x86/hpet.4 create mode 100644 static/netbsd/man4/man4.x86/ichlpcib.4 create mode 100644 static/netbsd/man4/man4.x86/imcsmb.4 create mode 100644 static/netbsd/man4/man4.x86/lpt.4 create mode 100644 static/netbsd/man4/man4.x86/mem.4 create mode 100644 static/netbsd/man4/man4.x86/odcm.4 create mode 100644 static/netbsd/man4/man4.x86/powernow.4 create mode 100644 static/netbsd/man4/man4.x86/soekrisgpio.4 create mode 100644 static/netbsd/man4/man4.x86/tco.4 create mode 100644 static/netbsd/man4/man4.x86/viac7temp.4 create mode 100644 static/netbsd/man4/mbe.4 create mode 100644 static/netbsd/man4/mc.4 create mode 100644 static/netbsd/man4/mca.4 create mode 100644 static/netbsd/man4/mcclock.4 create mode 100644 static/netbsd/man4/mcd.4 create mode 100644 static/netbsd/man4/mcommphy.4 create mode 100644 static/netbsd/man4/mcp3kadc.4 create mode 100644 static/netbsd/man4/mcp48x1dac.4 create mode 100644 static/netbsd/man4/mcp980x.4 create mode 100644 static/netbsd/man4/mcpgpio.4 create mode 100644 static/netbsd/man4/mcx.4 create mode 100644 static/netbsd/man4/md.4 create mode 100644 static/netbsd/man4/mfb.4 create mode 100644 static/netbsd/man4/mfi.4 create mode 100644 static/netbsd/man4/mfii.4 create mode 100644 static/netbsd/man4/mhzc.4 create mode 100644 static/netbsd/man4/micphy.4 create mode 100644 static/netbsd/man4/midi.4 create mode 100644 static/netbsd/man4/mii.4 create mode 100644 static/netbsd/man4/mk48txx.4 create mode 100644 static/netbsd/man4/mlx.4 create mode 100644 static/netbsd/man4/mly.4 create mode 100644 static/netbsd/man4/mos.4 create mode 100644 static/netbsd/man4/mpii.4 create mode 100644 static/netbsd/man4/mpl115a.4 create mode 100644 static/netbsd/man4/mpls.4 create mode 100644 static/netbsd/man4/mpt.4 create mode 100644 static/netbsd/man4/mpu.4 create mode 100644 static/netbsd/man4/msm6242b.4 create mode 100644 static/netbsd/man4/mtd.4 create mode 100644 static/netbsd/man4/mtio.4 create mode 100644 static/netbsd/man4/mue.4 create mode 100644 static/netbsd/man4/multicast.4 create mode 100644 static/netbsd/man4/mvsata.4 create mode 100644 static/netbsd/man4/nadb.4 create mode 100644 static/netbsd/man4/nca.4 create mode 100644 static/netbsd/man4/ncm.4 create mode 100644 static/netbsd/man4/nct.4 create mode 100644 static/netbsd/man4/ne.4 create mode 100644 static/netbsd/man4/neo.4 create mode 100644 static/netbsd/man4/netintro.4 create mode 100644 static/netbsd/man4/nfe.4 create mode 100644 static/netbsd/man4/nfsmb.4 create mode 100644 static/netbsd/man4/njata.4 create mode 100644 static/netbsd/man4/njs.4 create mode 100644 static/netbsd/man4/npflog.4 create mode 100644 static/netbsd/man4/nsclpcsio.4 create mode 100644 static/netbsd/man4/nside.4 create mode 100644 static/netbsd/man4/nsphy.4 create mode 100644 static/netbsd/man4/nsphyter.4 create mode 100644 static/netbsd/man4/ntwoc.4 create mode 100644 static/netbsd/man4/null.4 create mode 100644 static/netbsd/man4/nvme.4 create mode 100644 static/netbsd/man4/nvmm.4 create mode 100644 static/netbsd/man4/oak.4 create mode 100644 static/netbsd/man4/oboe.4 create mode 100644 static/netbsd/man4/ofisa.4 create mode 100644 static/netbsd/man4/ohci.4 create mode 100644 static/netbsd/man4/onewire.4 create mode 100644 static/netbsd/man4/oosiop.4 create mode 100644 static/netbsd/man4/opl.4 create mode 100644 static/netbsd/man4/optiide.4 create mode 100644 static/netbsd/man4/options.4 create mode 100644 static/netbsd/man4/osiop.4 create mode 100644 static/netbsd/man4/otus.4 create mode 100644 static/netbsd/man4/owtemp.4 create mode 100644 static/netbsd/man4/pad.4 create mode 100644 static/netbsd/man4/pas.4 create mode 100644 static/netbsd/man4/pcdisplay.4 create mode 100644 static/netbsd/man4/pcf8563rtc.4 create mode 100644 static/netbsd/man4/pchtemp.4 create mode 100644 static/netbsd/man4/pci.4 create mode 100644 static/netbsd/man4/pciback.4 create mode 100644 static/netbsd/man4/pcic.4 create mode 100644 static/netbsd/man4/pciide.4 create mode 100644 static/netbsd/man4/pckbc.4 create mode 100644 static/netbsd/man4/pckbd.4 create mode 100644 static/netbsd/man4/pcmcia.4 create mode 100644 static/netbsd/man4/pcmcom.4 create mode 100644 static/netbsd/man4/pcn.4 create mode 100644 static/netbsd/man4/pcppi.4 create mode 100644 static/netbsd/man4/pcscp.4 create mode 100644 static/netbsd/man4/pcweasel.4 create mode 100644 static/netbsd/man4/pdcide.4 create mode 100644 static/netbsd/man4/pdcsata.4 create mode 100644 static/netbsd/man4/piixide.4 create mode 100644 static/netbsd/man4/piixpcib.4 create mode 100644 static/netbsd/man4/piixpm.4 create mode 100644 static/netbsd/man4/pim.4 create mode 100644 static/netbsd/man4/plip.4 create mode 100644 static/netbsd/man4/pm3fb.4 create mode 100644 static/netbsd/man4/pms.4 create mode 100644 static/netbsd/man4/pmu.4 create mode 100644 static/netbsd/man4/pnaphy.4 create mode 100644 static/netbsd/man4/podulebus.4 create mode 100644 static/netbsd/man4/ppbus.4 create mode 100644 static/netbsd/man4/ppi.4 create mode 100644 static/netbsd/man4/ppp.4 create mode 100644 static/netbsd/man4/pppoe.4 create mode 100644 static/netbsd/man4/pseye.4 create mode 100644 static/netbsd/man4/ptcd.4 create mode 100644 static/netbsd/man4/ptm.4 create mode 100644 static/netbsd/man4/pty.4 create mode 100644 static/netbsd/man4/puc.4 create mode 100644 static/netbsd/man4/pud.4 create mode 100644 static/netbsd/man4/puffs.4 create mode 100644 static/netbsd/man4/pv.4 create mode 100644 static/netbsd/man4/pwdog.4 create mode 100644 static/netbsd/man4/px.4 create mode 100644 static/netbsd/man4/pxagpio.4 create mode 100644 static/netbsd/man4/pxaip.4 create mode 100644 static/netbsd/man4/pxg.4 create mode 100644 static/netbsd/man4/qat.4 create mode 100644 static/netbsd/man4/qe.4 create mode 100644 static/netbsd/man4/qec.4 create mode 100644 static/netbsd/man4/qemufwcfg.4 create mode 100644 static/netbsd/man4/qsphy.4 create mode 100644 static/netbsd/man4/r128fb.4 create mode 100644 static/netbsd/man4/radeonfb.4 create mode 100644 static/netbsd/man4/radio.4 create mode 100644 static/netbsd/man4/raid.4 create mode 100644 static/netbsd/man4/ral.4 create mode 100644 static/netbsd/man4/ray.4 create mode 100644 static/netbsd/man4/rcons.4 create mode 100644 static/netbsd/man4/rdcphy.4 create mode 100644 static/netbsd/man4/re.4 create mode 100644 static/netbsd/man4/rge.4 create mode 100644 static/netbsd/man4/rgephy.4 create mode 100644 static/netbsd/man4/rlphy.4 create mode 100644 static/netbsd/man4/rnd.4 create mode 100644 static/netbsd/man4/route.4 create mode 100644 static/netbsd/man4/rs5c372rtc.4 create mode 100644 static/netbsd/man4/rt.4 create mode 100644 static/netbsd/man4/rtfps.4 create mode 100644 static/netbsd/man4/rtii.4 create mode 100644 static/netbsd/man4/rtk.4 create mode 100644 static/netbsd/man4/rtsx.4 create mode 100644 static/netbsd/man4/rtw.4 create mode 100644 static/netbsd/man4/rtwn.4 create mode 100644 static/netbsd/man4/rum.4 create mode 100644 static/netbsd/man4/run.4 create mode 100644 static/netbsd/man4/s390rtc.4 create mode 100644 static/netbsd/man4/satalink.4 create mode 100644 static/netbsd/man4/sb.4 create mode 100644 static/netbsd/man4/sbp.4 create mode 100644 static/netbsd/man4/sbt.4 create mode 100644 static/netbsd/man4/sbus.4 create mode 100644 static/netbsd/man4/sc.4 create mode 100644 static/netbsd/man4/sc16is7xx.4 create mode 100644 static/netbsd/man4/schide.4 create mode 100644 static/netbsd/man4/scmd.4 create mode 100644 static/netbsd/man4/scmdi2c.4 create mode 100644 static/netbsd/man4/scmdspi.4 create mode 100644 static/netbsd/man4/scsi.4 create mode 100644 static/netbsd/man4/sctp.4 create mode 100644 static/netbsd/man4/sd.4 create mode 100644 static/netbsd/man4/sdhc.4 create mode 100644 static/netbsd/man4/sdmmc.4 create mode 100644 static/netbsd/man4/sdtemp.4 create mode 100644 static/netbsd/man4/se.4 create mode 100644 static/netbsd/man4/sea.4 create mode 100644 static/netbsd/man4/sec.4 create mode 100644 static/netbsd/man4/seeprom.4 create mode 100644 static/netbsd/man4/sem.4 create mode 100644 static/netbsd/man4/ses.4 create mode 100644 static/netbsd/man4/sf.4 create mode 100644 static/netbsd/man4/sf2r.4 create mode 100644 static/netbsd/man4/sfb.4 create mode 100644 static/netbsd/man4/sgp40mox.4 create mode 100644 static/netbsd/man4/sgsmix.4 create mode 100644 static/netbsd/man4/shb.4 create mode 100644 static/netbsd/man4/shmif.4 create mode 100644 static/netbsd/man4/shpcic.4 create mode 100644 static/netbsd/man4/sht3xtemp.4 create mode 100644 static/netbsd/man4/sht4xtemp.4 create mode 100644 static/netbsd/man4/si.4 create mode 100644 static/netbsd/man4/si70xxtemp.4 create mode 100644 static/netbsd/man4/siisata.4 create mode 100644 static/netbsd/man4/siop.4 create mode 100644 static/netbsd/man4/sip.4 create mode 100644 static/netbsd/man4/siside.4 create mode 100644 static/netbsd/man4/sk.4 create mode 100644 static/netbsd/man4/sl.4 create mode 100644 static/netbsd/man4/slhci.4 create mode 100644 static/netbsd/man4/slide.4 create mode 100644 static/netbsd/man4/slurm.4 create mode 100644 static/netbsd/man4/sm.4 create mode 100644 static/netbsd/man4/smsc.4 create mode 100644 static/netbsd/man4/smscmon.4 create mode 100644 static/netbsd/man4/smscphy.4 create mode 100644 static/netbsd/man4/smsh.4 create mode 100644 static/netbsd/man4/sn.4 create mode 100644 static/netbsd/man4/sony.4 create mode 100644 static/netbsd/man4/spc.4 create mode 100644 static/netbsd/man4/spdmem.4 create mode 100644 static/netbsd/man4/speaker.4 create mode 100644 static/netbsd/man4/spi.4 create mode 100644 static/netbsd/man4/spif.4 create mode 100644 static/netbsd/man4/sqphy.4 create mode 100644 static/netbsd/man4/srt.4 create mode 100644 static/netbsd/man4/ss.4 create mode 100644 static/netbsd/man4/ssdfb.4 create mode 100644 static/netbsd/man4/st.4 create mode 100644 static/netbsd/man4/ste.4 create mode 100644 static/netbsd/man4/stf.4 create mode 100644 static/netbsd/man4/stge.4 create mode 100644 static/netbsd/man4/sti.4 create mode 100644 static/netbsd/man4/stpcide.4 create mode 100644 static/netbsd/man4/stuirda.4 create mode 100644 static/netbsd/man4/sv.4 create mode 100644 static/netbsd/man4/svwsata.4 create mode 100644 static/netbsd/man4/swsensor.4 create mode 100644 static/netbsd/man4/swwdog.4 create mode 100644 static/netbsd/man4/sysmon.4 create mode 100644 static/netbsd/man4/tap.4 create mode 100644 static/netbsd/man4/tc.4 create mode 100644 static/netbsd/man4/tcds.4 create mode 100644 static/netbsd/man4/tcic.4 create mode 100644 static/netbsd/man4/tcom.4 create mode 100644 static/netbsd/man4/tcp.4 create mode 100644 static/netbsd/man4/tcu.4 create mode 100644 static/netbsd/man4/tdvfb.4 create mode 100644 static/netbsd/man4/tea5767radio.4 create mode 100644 static/netbsd/man4/termios.4 create mode 100644 static/netbsd/man4/tfb.4 create mode 100644 static/netbsd/man4/thinkpad.4 create mode 100644 static/netbsd/man4/ti.4 create mode 100644 static/netbsd/man4/tl.4 create mode 100644 static/netbsd/man4/tlp.4 create mode 100644 static/netbsd/man4/tlphy.4 create mode 100644 static/netbsd/man4/tm121temp.4 create mode 100644 static/netbsd/man4/tpm.4 create mode 100644 static/netbsd/man4/tprof.4 create mode 100644 static/netbsd/man4/tps65217pmic.4 create mode 100644 static/netbsd/man4/tqphy.4 create mode 100644 static/netbsd/man4/tra.4 create mode 100644 static/netbsd/man4/trm.4 create mode 100644 static/netbsd/man4/tsllux.4 create mode 100644 static/netbsd/man4/tty.4 create mode 100644 static/netbsd/man4/tun.4 create mode 100644 static/netbsd/man4/twa.4 create mode 100644 static/netbsd/man4/twe.4 create mode 100644 static/netbsd/man4/txp.4 create mode 100644 static/netbsd/man4/u3g.4 create mode 100644 static/netbsd/man4/ualea.4 create mode 100644 static/netbsd/man4/uark.4 create mode 100644 static/netbsd/man4/uatp.4 create mode 100644 static/netbsd/man4/uaudio.4 create mode 100644 static/netbsd/man4/uberry.4 create mode 100644 static/netbsd/man4/ubsa.4 create mode 100644 static/netbsd/man4/ubsec.4 create mode 100644 static/netbsd/man4/ubt.4 create mode 100644 static/netbsd/man4/uchcom.4 create mode 100644 static/netbsd/man4/ucom.4 create mode 100644 static/netbsd/man4/ucycom.4 create mode 100644 static/netbsd/man4/udav.4 create mode 100644 static/netbsd/man4/udl.4 create mode 100644 static/netbsd/man4/udp.4 create mode 100644 static/netbsd/man4/udsbr.4 create mode 100644 static/netbsd/man4/uep.4 create mode 100644 static/netbsd/man4/uftdi.4 create mode 100644 static/netbsd/man4/ug.4 create mode 100644 static/netbsd/man4/ugen.4 create mode 100644 static/netbsd/man4/ugensa.4 create mode 100644 static/netbsd/man4/uha.4 create mode 100644 static/netbsd/man4/uhci.4 create mode 100644 static/netbsd/man4/uhid.4 create mode 100644 static/netbsd/man4/uhidev.4 create mode 100644 static/netbsd/man4/uhmodem.4 create mode 100644 static/netbsd/man4/uhso.4 create mode 100644 static/netbsd/man4/uintuos.4 create mode 100644 static/netbsd/man4/uipad.4 create mode 100644 static/netbsd/man4/uipaq.4 create mode 100644 static/netbsd/man4/uirda.4 create mode 100644 static/netbsd/man4/uk.4 create mode 100644 static/netbsd/man4/ukbd.4 create mode 100644 static/netbsd/man4/ukphy.4 create mode 100644 static/netbsd/man4/ukyopon.4 create mode 100644 static/netbsd/man4/ulpt.4 create mode 100644 static/netbsd/man4/umass.4 create mode 100644 static/netbsd/man4/umb.4 create mode 100644 static/netbsd/man4/umcpmio.4 create mode 100644 static/netbsd/man4/umcs.4 create mode 100644 static/netbsd/man4/umct.4 create mode 100644 static/netbsd/man4/umidi.4 create mode 100644 static/netbsd/man4/umodem.4 create mode 100644 static/netbsd/man4/ums.4 create mode 100644 static/netbsd/man4/unix.4 create mode 100644 static/netbsd/man4/upgt.4 create mode 100644 static/netbsd/man4/upl.4 create mode 100644 static/netbsd/man4/uplcom.4 create mode 100644 static/netbsd/man4/ure.4 create mode 100644 static/netbsd/man4/url.4 create mode 100644 static/netbsd/man4/urndis.4 create mode 100644 static/netbsd/man4/urtw.4 create mode 100755 static/netbsd/man4/urtwn.4 create mode 100644 static/netbsd/man4/usb.4 create mode 100644 static/netbsd/man4/usbnet.4 create mode 100644 static/netbsd/man4/userconf.4 create mode 100644 static/netbsd/man4/uslsa.4 create mode 100644 static/netbsd/man4/usmsc.4 create mode 100644 static/netbsd/man4/usscanner.4 create mode 100644 static/netbsd/man4/ustir.4 create mode 100644 static/netbsd/man4/uthum.4 create mode 100644 static/netbsd/man4/utoppy.4 create mode 100644 static/netbsd/man4/uts.4 create mode 100644 static/netbsd/man4/uvideo.4 create mode 100644 static/netbsd/man4/uvisor.4 create mode 100644 static/netbsd/man4/uvscom.4 create mode 100644 static/netbsd/man4/uxrcom.4 create mode 100644 static/netbsd/man4/vald.4 create mode 100644 static/netbsd/man4/valz.4 create mode 100644 static/netbsd/man4/veriexec.4 create mode 100644 static/netbsd/man4/vether.4 create mode 100644 static/netbsd/man4/vga.4 create mode 100644 static/netbsd/man4/vge.4 create mode 100644 static/netbsd/man4/viaenv.4 create mode 100644 static/netbsd/man4/viaide.4 create mode 100644 static/netbsd/man4/video.4 create mode 100644 static/netbsd/man4/vio9p.4 create mode 100644 static/netbsd/man4/viocon.4 create mode 100644 static/netbsd/man4/viogpu.4 create mode 100644 static/netbsd/man4/vioif.4 create mode 100644 static/netbsd/man4/viomb.4 create mode 100644 static/netbsd/man4/viornd.4 create mode 100644 static/netbsd/man4/vioscsi.4 create mode 100644 static/netbsd/man4/virt.4 create mode 100644 static/netbsd/man4/virtio.4 create mode 100644 static/netbsd/man4/virtio_mmio.4 create mode 100644 static/netbsd/man4/vlan.4 create mode 100644 static/netbsd/man4/vmmon.4 create mode 100644 static/netbsd/man4/vmnet.4 create mode 100644 static/netbsd/man4/vmt.4 create mode 100644 static/netbsd/man4/vmx.4 create mode 100644 static/netbsd/man4/vnd.4 create mode 100644 static/netbsd/man4/voodoofb.4 create mode 100644 static/netbsd/man4/vr.4 create mode 100644 static/netbsd/man4/vte.4 create mode 100644 static/netbsd/man4/wapbl.4 create mode 100644 static/netbsd/man4/wb.4 create mode 100644 static/netbsd/man4/wbsio.4 create mode 100644 static/netbsd/man4/wd.4 create mode 100644 static/netbsd/man4/wdc.4 create mode 100644 static/netbsd/man4/wds.4 create mode 100644 static/netbsd/man4/we.4 create mode 100644 static/netbsd/man4/wg.4 create mode 100644 static/netbsd/man4/wi.4 create mode 100644 static/netbsd/man4/wm.4 create mode 100644 static/netbsd/man4/wpi.4 create mode 100644 static/netbsd/man4/wsbell.4 create mode 100644 static/netbsd/man4/wscons.4 create mode 100644 static/netbsd/man4/wsdisplay.4 create mode 100644 static/netbsd/man4/wsfont.4 create mode 100644 static/netbsd/man4/wskbd.4 create mode 100644 static/netbsd/man4/wsmouse.4 create mode 100644 static/netbsd/man4/wsmux.4 create mode 100644 static/netbsd/man4/wss.4 create mode 100644 static/netbsd/man4/wt.4 create mode 100644 static/netbsd/man4/wwanc.4 create mode 100644 static/netbsd/man4/xbd.4 create mode 100644 static/netbsd/man4/xbdback.4 create mode 100644 static/netbsd/man4/xbox.4 create mode 100644 static/netbsd/man4/xenbus.4 create mode 100644 static/netbsd/man4/xennet.4 create mode 100644 static/netbsd/man4/xge.4 create mode 100644 static/netbsd/man4/xhci.4 create mode 100644 static/netbsd/man4/xi.4 create mode 100644 static/netbsd/man4/xirc.4 create mode 100644 static/netbsd/man4/xpci.4 create mode 100644 static/netbsd/man4/xvif.4 create mode 100644 static/netbsd/man4/yds.4 create mode 100644 static/netbsd/man4/ym.4 create mode 100644 static/netbsd/man4/zero.4 create mode 100644 static/netbsd/man4/zstty.4 create mode 100644 static/netbsd/man4/zyd.4 create mode 100644 static/netbsd/man5/Makefile create mode 100644 static/netbsd/man5/a.out.5 create mode 100644 static/netbsd/man5/acct.5 create mode 100644 static/netbsd/man5/ar.5 create mode 100644 static/netbsd/man5/autofs.5 create mode 100644 static/netbsd/man5/boot.cfg.5 create mode 100644 static/netbsd/man5/capfile.5 create mode 100644 static/netbsd/man5/changelist.5 create mode 100644 static/netbsd/man5/core.5 create mode 100644 static/netbsd/man5/daily.5 create mode 100644 static/netbsd/man5/disktab.5 create mode 100644 static/netbsd/man5/elf.5 create mode 100644 static/netbsd/man5/ethers.5 create mode 100644 static/netbsd/man5/floppytab.5 create mode 100644 static/netbsd/man5/forward.5 create mode 100644 static/netbsd/man5/fs.5 create mode 100644 static/netbsd/man5/fstab.5 create mode 100644 static/netbsd/man5/genassym.cf.5 create mode 100644 static/netbsd/man5/gpio.conf.5 create mode 100644 static/netbsd/man5/group.5 create mode 100644 static/netbsd/man5/hesiod.conf.5 create mode 100644 static/netbsd/man5/hosts.5 create mode 100644 static/netbsd/man5/hosts.equiv.5 create mode 100644 static/netbsd/man5/ifaliases.5 create mode 100644 static/netbsd/man5/ifconfig.if.5 create mode 100644 static/netbsd/man5/intro.5 create mode 100644 static/netbsd/man5/ipsec.conf.5 create mode 100644 static/netbsd/man5/ld.so.conf.5 create mode 100644 static/netbsd/man5/link.5 create mode 100644 static/netbsd/man5/locale.alias.5 create mode 100644 static/netbsd/man5/locate.conf.5 create mode 100644 static/netbsd/man5/login.conf.5 create mode 100644 static/netbsd/man5/mixerctl.conf.5 create mode 100644 static/netbsd/man5/mk.conf.5 create mode 100644 static/netbsd/man5/modules.conf.5 create mode 100644 static/netbsd/man5/monthly.5 create mode 100644 static/netbsd/man5/motd.5 create mode 100644 static/netbsd/man5/netconfig.5 create mode 100644 static/netbsd/man5/netgroup.5 create mode 100644 static/netbsd/man5/networks.5 create mode 100644 static/netbsd/man5/nologin.5 create mode 100644 static/netbsd/man5/nsswitch.conf.5 create mode 100644 static/netbsd/man5/passwd.5 create mode 100644 static/netbsd/man5/passwd.conf.5 create mode 100644 static/netbsd/man5/phones.5 create mode 100644 static/netbsd/man5/pkgpath.conf.5 create mode 100644 static/netbsd/man5/printcap.5 create mode 100644 static/netbsd/man5/protocols.5 create mode 100644 static/netbsd/man5/ranlib.5 create mode 100644 static/netbsd/man5/rc.conf.5 create mode 100644 static/netbsd/man5/remote.5 create mode 100644 static/netbsd/man5/resolv.conf.5 create mode 100644 static/netbsd/man5/route.conf.5 create mode 100644 static/netbsd/man5/rpc.5 create mode 100644 static/netbsd/man5/security.conf.5 create mode 100644 static/netbsd/man5/services.5 create mode 100644 static/netbsd/man5/shells.5 create mode 100644 static/netbsd/man5/stab.5 create mode 100644 static/netbsd/man5/statvfs.5 create mode 100644 static/netbsd/man5/sysctl.conf.5 create mode 100644 static/netbsd/man5/ttyaction.5 create mode 100644 static/netbsd/man5/utmp.5 create mode 100644 static/netbsd/man5/utmpx.5 create mode 100644 static/netbsd/man5/veriexec.5 create mode 100644 static/netbsd/man5/weekly.5 create mode 100644 static/netbsd/man5/wscons.conf.5 create mode 100644 static/netbsd/man6/Makefile create mode 100644 static/netbsd/man6/intro.6 create mode 100644 static/netbsd/man7/Makefile create mode 100644 static/netbsd/man7/ascii.7 create mode 100644 static/netbsd/man7/c.7 create mode 100644 static/netbsd/man7/entropy.7 create mode 100644 static/netbsd/man7/environ.7 create mode 100644 static/netbsd/man7/glob.7 create mode 100644 static/netbsd/man7/groups.7 create mode 100644 static/netbsd/man7/hier.7 create mode 100644 static/netbsd/man7/hostname.7 create mode 100644 static/netbsd/man7/intro.7 create mode 100644 static/netbsd/man7/kernel_sanitizers.7 create mode 100644 static/netbsd/man7/mailaddr.7 create mode 100644 static/netbsd/man7/module.7 create mode 100644 static/netbsd/man7/nls.7 create mode 100644 static/netbsd/man7/operator.7 create mode 100644 static/netbsd/man7/orders.7 create mode 100644 static/netbsd/man7/pkgsrc.7 create mode 100644 static/netbsd/man7/release.7 create mode 100644 static/netbsd/man7/rfc6056.7 create mode 100644 static/netbsd/man7/script.7 create mode 100644 static/netbsd/man7/security.7 create mode 100644 static/netbsd/man7/setuid.7 create mode 100644 static/netbsd/man7/signal.7 create mode 100644 static/netbsd/man7/src.7 create mode 100644 static/netbsd/man7/stack.7 create mode 100644 static/netbsd/man7/sticky.7 create mode 100644 static/netbsd/man7/symlink.7 create mode 100644 static/netbsd/man7/sysctl.7 create mode 100644 static/netbsd/man7/tests.atf.7 create mode 100644 static/netbsd/man7/tests.kyua.7 create mode 100644 static/netbsd/man7/users.7 create mode 100644 static/netbsd/man8/MAKEDEV.8 create mode 100644 static/netbsd/man8/MAKEDEV.8.template create mode 100644 static/netbsd/man8/MAKEDEV.local.8 create mode 100644 static/netbsd/man8/MAKEDEV2manpage.awk create mode 100644 static/netbsd/man8/MAKEDEV2manpage.sh create mode 100644 static/netbsd/man8/Makefile create mode 100644 static/netbsd/man8/afterboot.8 create mode 100644 static/netbsd/man8/boot.8 create mode 100644 static/netbsd/man8/compat_30.8 create mode 100644 static/netbsd/man8/compat_bsdos.8 create mode 100644 static/netbsd/man8/compat_freebsd.8 create mode 100644 static/netbsd/man8/compat_linux.8 create mode 100644 static/netbsd/man8/compat_netbsd32.8 create mode 100644 static/netbsd/man8/compat_sunos.8 create mode 100644 static/netbsd/man8/compat_ultrix.8 create mode 100644 static/netbsd/man8/creds_msdos.8 create mode 100644 static/netbsd/man8/diskless.8 create mode 100644 static/netbsd/man8/hpcboot.8 create mode 100644 static/netbsd/man8/intro.8 create mode 100644 static/netbsd/man8/man8.acorn32/Makefile create mode 100644 static/netbsd/man8/man8.acorn32/boot32.8 create mode 100644 static/netbsd/man8/man8.acorn32/nbfs.8 create mode 100644 static/netbsd/man8/man8.alpha/Makefile create mode 100644 static/netbsd/man8/man8.alpha/boot.8 create mode 100644 static/netbsd/man8/man8.alpha/mkbootimage.8 create mode 100644 static/netbsd/man8/man8.alpha/setnetbootinfo.8 create mode 100644 static/netbsd/man8/man8.amiga/Makefile create mode 100644 static/netbsd/man8/man8.amiga/binpatch.8 create mode 100644 static/netbsd/man8/man8.amiga/boot.8 create mode 100644 static/netbsd/man8/man8.amiga/installboot.8 create mode 100644 static/netbsd/man8/man8.atari/Makefile create mode 100644 static/netbsd/man8/man8.atari/ahdilabel.8 create mode 100644 static/netbsd/man8/man8.atari/binpatch.8 create mode 100644 static/netbsd/man8/man8.atari/boot.8 create mode 100644 static/netbsd/man8/man8.atari/bootpref.8 create mode 100644 static/netbsd/man8/man8.atari/installboot.8 create mode 100644 static/netbsd/man8/man8.cobalt/Makefile create mode 100644 static/netbsd/man8/man8.cobalt/boot.8 create mode 100644 static/netbsd/man8/man8.dreamcast/Makefile create mode 100644 static/netbsd/man8/man8.dreamcast/boot.8 create mode 100644 static/netbsd/man8/man8.emips/Makefile create mode 100644 static/netbsd/man8/man8.emips/boot.8 create mode 100644 static/netbsd/man8/man8.evbarm/Makefile create mode 100644 static/netbsd/man8/man8.evbarm/bootmini2440.8 create mode 100644 static/netbsd/man8/man8.hp300/Makefile create mode 100644 static/netbsd/man8/man8.hp300/boot.8 create mode 100644 static/netbsd/man8/man8.hp300/format.8 create mode 100644 static/netbsd/man8/man8.hpcarm/Makefile create mode 100644 static/netbsd/man8/man8.hpcarm/boot.8 create mode 100644 static/netbsd/man8/man8.hpcmips/Makefile create mode 100644 static/netbsd/man8/man8.hpcmips/boot.8 create mode 100644 static/netbsd/man8/man8.hpcmips/pbsdboot.8 create mode 100644 static/netbsd/man8/man8.hpcsh/Makefile create mode 100644 static/netbsd/man8/man8.hpcsh/boot.8 create mode 100644 static/netbsd/man8/man8.hppa/Makefile create mode 100644 static/netbsd/man8/man8.hppa/boot.8 create mode 100644 static/netbsd/man8/man8.hppa/mkboot.8 create mode 100644 static/netbsd/man8/man8.mac68k/Makefile create mode 100644 static/netbsd/man8/man8.mac68k/boot.8 create mode 100644 static/netbsd/man8/man8.macppc/Makefile create mode 100644 static/netbsd/man8/man8.macppc/boot.8 create mode 100644 static/netbsd/man8/man8.macppc/ofwboot.8 create mode 100644 static/netbsd/man8/man8.mvme68k/Makefile create mode 100644 static/netbsd/man8/man8.mvme68k/boot.8 create mode 100644 static/netbsd/man8/man8.mvme68k/installboot.8 create mode 100644 static/netbsd/man8/man8.next68k/Makefile create mode 100644 static/netbsd/man8/man8.next68k/boot.8 create mode 100644 static/netbsd/man8/man8.pmax/Makefile create mode 100644 static/netbsd/man8/man8.pmax/boot.8 create mode 100644 static/netbsd/man8/man8.prep/Makefile create mode 100644 static/netbsd/man8/man8.prep/boot.8 create mode 100644 static/netbsd/man8/man8.prep/mkbootimage.8 create mode 100644 static/netbsd/man8/man8.sandpoint/Makefile create mode 100644 static/netbsd/man8/man8.sandpoint/altboot.8 create mode 100644 static/netbsd/man8/man8.sgimips/Makefile create mode 100644 static/netbsd/man8/man8.sgimips/boot.8 create mode 100644 static/netbsd/man8/man8.sgimips/sgivol.8 create mode 100644 static/netbsd/man8/man8.sparc/Makefile create mode 100644 static/netbsd/man8/man8.sparc/binstall.8 create mode 100644 static/netbsd/man8/man8.sparc/boot.8 create mode 100644 static/netbsd/man8/man8.sparc64/Makefile create mode 100644 static/netbsd/man8/man8.sparc64/boot.8 create mode 100644 static/netbsd/man8/man8.sun2/Makefile create mode 100644 static/netbsd/man8/man8.sun2/boot.8 create mode 100644 static/netbsd/man8/man8.sun3/Makefile create mode 100644 static/netbsd/man8/man8.sun3/boot.8 create mode 100644 static/netbsd/man8/man8.vax/Makefile create mode 100644 static/netbsd/man8/man8.vax/boot.8 create mode 100644 static/netbsd/man8/man8.vax/crash.8 create mode 100644 static/netbsd/man8/man8.vax/drtest.8 create mode 100644 static/netbsd/man8/man8.vax/format.8 create mode 100644 static/netbsd/man8/man8.x68k/Makefile create mode 100644 static/netbsd/man8/man8.x68k/boot.8 create mode 100644 static/netbsd/man8/man8.x68k/loadbsd.8 create mode 100644 static/netbsd/man8/man8.x68k/newdisk.8 create mode 100644 static/netbsd/man8/man8.x86/Makefile create mode 100644 static/netbsd/man8/man8.x86/boot.8 create mode 100644 static/netbsd/man8/man8.x86/boot_console.8 create mode 100644 static/netbsd/man8/man8.x86/dosboot.8 create mode 100644 static/netbsd/man8/man8.x86/mbr.8 create mode 100644 static/netbsd/man8/man8.x86/multiboot.8 create mode 100644 static/netbsd/man8/man8.x86/pxeboot.8 create mode 100644 static/netbsd/man8/nis.8 create mode 100644 static/netbsd/man8/pam.8 create mode 100644 static/netbsd/man8/rc.8 create mode 100644 static/netbsd/man8/rc.subr.8 create mode 100644 static/netbsd/man8/rescue.8 create mode 100644 static/netbsd/man8/veriexec.8 create mode 100644 static/netbsd/man8/wizd.8 create mode 100644 static/netbsd/man9/CTASSERT.9 create mode 100644 static/netbsd/man9/KASSERT.9 create mode 100644 static/netbsd/man9/KERNEL_LOCK.9 create mode 100644 static/netbsd/man9/LWP_CACHE_CREDS.9 create mode 100644 static/netbsd/man9/Makefile create mode 100644 static/netbsd/man9/RUN_ONCE.9 create mode 100644 static/netbsd/man9/SET.9 create mode 100644 static/netbsd/man9/STACK.9 create mode 100644 static/netbsd/man9/VOP_ACLCHECK.9 create mode 100644 static/netbsd/man9/VOP_GETACL.9 create mode 100644 static/netbsd/man9/VOP_SETACL.9 create mode 100644 static/netbsd/man9/__cpu_simple_lock.9 create mode 100644 static/netbsd/man9/accept_filter.9 create mode 100644 static/netbsd/man9/accf_data.9 create mode 100644 static/netbsd/man9/accf_http.9 create mode 100644 static/netbsd/man9/acct_process.9 create mode 100644 static/netbsd/man9/acl.9 create mode 100644 static/netbsd/man9/altq.9 create mode 100644 static/netbsd/man9/arp.9 create mode 100644 static/netbsd/man9/atomic_loadstore.9 create mode 100644 static/netbsd/man9/audio.9 create mode 100644 static/netbsd/man9/autoconf.9 create mode 100644 static/netbsd/man9/bcdtobin.9 create mode 100644 static/netbsd/man9/bcmp.9 create mode 100644 static/netbsd/man9/bcopy.9 create mode 100644 static/netbsd/man9/bintime_add.9 create mode 100644 static/netbsd/man9/bluetooth.9 create mode 100644 static/netbsd/man9/boothowto.9 create mode 100644 static/netbsd/man9/bpf.9 create mode 100644 static/netbsd/man9/buffercache.9 create mode 100644 static/netbsd/man9/bufferio.9 create mode 100644 static/netbsd/man9/bufq.9 create mode 100644 static/netbsd/man9/bus_dma.9 create mode 100644 static/netbsd/man9/bus_space.9 create mode 100644 static/netbsd/man9/byteorder.9 create mode 100644 static/netbsd/man9/bzero.9 create mode 100644 static/netbsd/man9/callback.9 create mode 100644 static/netbsd/man9/callout.9 create mode 100644 static/netbsd/man9/cardbus.9 create mode 100644 static/netbsd/man9/clock.9 create mode 100644 static/netbsd/man9/cnmagic.9 create mode 100644 static/netbsd/man9/condvar.9 create mode 100644 static/netbsd/man9/config.9 create mode 100644 static/netbsd/man9/cons.9 create mode 100644 static/netbsd/man9/copy.9 create mode 100644 static/netbsd/man9/coredump_write.9 create mode 100644 static/netbsd/man9/cprng.9 create mode 100644 static/netbsd/man9/cpu_configure.9 create mode 100644 static/netbsd/man9/cpu_coredump.9 create mode 100644 static/netbsd/man9/cpu_dumpconf.9 create mode 100644 static/netbsd/man9/cpu_idle.9 create mode 100644 static/netbsd/man9/cpu_initclocks.9 create mode 100644 static/netbsd/man9/cpu_lwp_fork.9 create mode 100644 static/netbsd/man9/cpu_need_resched.9 create mode 100644 static/netbsd/man9/cpu_number.9 create mode 100644 static/netbsd/man9/cpu_reboot.9 create mode 100644 static/netbsd/man9/cpu_rootconf.9 create mode 100644 static/netbsd/man9/cpu_startup.9 create mode 100644 static/netbsd/man9/cpu_switchto.9 create mode 100644 static/netbsd/man9/cpufreq.9 create mode 100644 static/netbsd/man9/crashme.9 create mode 100644 static/netbsd/man9/csf.9 create mode 100644 static/netbsd/man9/ctod.9 create mode 100644 static/netbsd/man9/curlwp_bind.9 create mode 100644 static/netbsd/man9/curproc.9 create mode 100644 static/netbsd/man9/ddb.9 create mode 100644 static/netbsd/man9/ddc.9 create mode 100644 static/netbsd/man9/delay.9 create mode 100644 static/netbsd/man9/deviter.9 create mode 100644 static/netbsd/man9/devsw_attach.9 create mode 100644 static/netbsd/man9/disk.9 create mode 100644 static/netbsd/man9/disklabel.9 create mode 100644 static/netbsd/man9/dksubr.9 create mode 100644 static/netbsd/man9/dmover.9 create mode 100644 static/netbsd/man9/do_setresuid.9 create mode 100644 static/netbsd/man9/dofileread.9 create mode 100644 static/netbsd/man9/dopowerhooks.9 create mode 100644 static/netbsd/man9/doshutdownhooks.9 create mode 100644 static/netbsd/man9/driver.9 create mode 100644 static/netbsd/man9/edid.9 create mode 100644 static/netbsd/man9/errno.9 create mode 100644 static/netbsd/man9/ethersubr.9 create mode 100644 static/netbsd/man9/evcnt.9 create mode 100644 static/netbsd/man9/extattr.9 create mode 100644 static/netbsd/man9/extent.9 create mode 100644 static/netbsd/man9/file.9 create mode 100644 static/netbsd/man9/fileassoc.9 create mode 100644 static/netbsd/man9/filedesc.9 create mode 100644 static/netbsd/man9/firmload.9 create mode 100644 static/netbsd/man9/flash.9 create mode 100644 static/netbsd/man9/fork1.9 create mode 100644 static/netbsd/man9/fsetown.9 create mode 100644 static/netbsd/man9/fstrans.9 create mode 100644 static/netbsd/man9/genfs.9 create mode 100644 static/netbsd/man9/genfs_can_access.9 create mode 100644 static/netbsd/man9/genfs_can_access_acl_nfs4.9 create mode 100644 static/netbsd/man9/genfs_can_access_acl_posix1e.9 create mode 100644 static/netbsd/man9/genfs_rename.9 create mode 100644 static/netbsd/man9/hardclock.9 create mode 100644 static/netbsd/man9/hash.9 create mode 100644 static/netbsd/man9/hashinit.9 create mode 100644 static/netbsd/man9/heartbeat.9 create mode 100644 static/netbsd/man9/humanize_number.9 create mode 100644 static/netbsd/man9/hz.9 create mode 100644 static/netbsd/man9/ieee80211.9 create mode 100644 static/netbsd/man9/ieee80211_crypto.9 create mode 100644 static/netbsd/man9/ieee80211_input.9 create mode 100644 static/netbsd/man9/ieee80211_ioctl.9 create mode 100644 static/netbsd/man9/ieee80211_node.9 create mode 100644 static/netbsd/man9/ieee80211_output.9 create mode 100644 static/netbsd/man9/ieee80211_proto.9 create mode 100644 static/netbsd/man9/ieee80211_radiotap.9 create mode 100644 static/netbsd/man9/iic.9 create mode 100644 static/netbsd/man9/imax.9 create mode 100644 static/netbsd/man9/in4_cksum.9 create mode 100644 static/netbsd/man9/in_getifa.9 create mode 100644 static/netbsd/man9/inittodr.9 create mode 100644 static/netbsd/man9/interrupt_distribute.9 create mode 100644 static/netbsd/man9/intro.9 create mode 100644 static/netbsd/man9/ioasic.9 create mode 100644 static/netbsd/man9/ioctl.9 create mode 100644 static/netbsd/man9/ipi.9 create mode 100644 static/netbsd/man9/isa.9 create mode 100644 static/netbsd/man9/isapnp.9 create mode 100644 static/netbsd/man9/itimerfix.9 create mode 100644 static/netbsd/man9/kauth.9 create mode 100644 static/netbsd/man9/kcopy.9 create mode 100644 static/netbsd/man9/kcpuset.9 create mode 100644 static/netbsd/man9/kernhist.9 create mode 100644 static/netbsd/man9/kfilter_register.9 create mode 100644 static/netbsd/man9/klua_lock.9 create mode 100644 static/netbsd/man9/klua_mod_register.9 create mode 100644 static/netbsd/man9/kmem.9 create mode 100644 static/netbsd/man9/knote.9 create mode 100644 static/netbsd/man9/kpause.9 create mode 100644 static/netbsd/man9/kpreempt.9 create mode 100644 static/netbsd/man9/kprintf.9 create mode 100644 static/netbsd/man9/kthread.9 create mode 100644 static/netbsd/man9/linedisc.9 create mode 100644 static/netbsd/man9/localcount.9 create mode 100644 static/netbsd/man9/lock.9 create mode 100644 static/netbsd/man9/locking.9 create mode 100644 static/netbsd/man9/log.9 create mode 100644 static/netbsd/man9/ltsleep.9 create mode 100644 static/netbsd/man9/m_tag.9 create mode 100644 static/netbsd/man9/makeiplcookie.9 create mode 100644 static/netbsd/man9/malloc.9 create mode 100644 static/netbsd/man9/man9.i386/Makefile create mode 100644 static/netbsd/man9/man9.i386/bios32_service.9 create mode 100644 static/netbsd/man9/man9.i386/bioscall.9 create mode 100644 static/netbsd/man9/man9.i386/return_address.9 create mode 100644 static/netbsd/man9/man9.i386/splraise.9 create mode 100644 static/netbsd/man9/man9.sun3/Makefile create mode 100644 static/netbsd/man9/man9.sun3/isr_add.9 create mode 100644 static/netbsd/man9/man9.x86/Makefile create mode 100644 static/netbsd/man9/man9.x86/nmi.9 create mode 100644 static/netbsd/man9/man9.x86/rdmsr.9 create mode 100644 static/netbsd/man9/man9.x86/tsc.9 create mode 100644 static/netbsd/man9/man9.x86/x86_msr_xcall.9 create mode 100644 static/netbsd/man9/mbuf.9 create mode 100644 static/netbsd/man9/mca.9 create mode 100644 static/netbsd/man9/memcmp.9 create mode 100644 static/netbsd/man9/memcpy.9 create mode 100644 static/netbsd/man9/memmove.9 create mode 100644 static/netbsd/man9/memoryallocators.9 create mode 100644 static/netbsd/man9/memset.9 create mode 100644 static/netbsd/man9/mi_switch.9 create mode 100644 static/netbsd/man9/microseq.9 create mode 100644 static/netbsd/man9/microtime.9 create mode 100644 static/netbsd/man9/microuptime.9 create mode 100644 static/netbsd/man9/module.9 create mode 100644 static/netbsd/man9/mstohz.9 create mode 100644 static/netbsd/man9/mutex.9 create mode 100644 static/netbsd/man9/namecache.9 create mode 100644 static/netbsd/man9/namei.9 create mode 100644 static/netbsd/man9/nullop.9 create mode 100644 static/netbsd/man9/opencrypto.9 create mode 100644 static/netbsd/man9/optstr.9 create mode 100644 static/netbsd/man9/panic.9 create mode 100644 static/netbsd/man9/paravirt_membar_sync.9 create mode 100644 static/netbsd/man9/pathbuf.9 create mode 100644 static/netbsd/man9/pci.9 create mode 100644 static/netbsd/man9/pci_configure_bus.9 create mode 100644 static/netbsd/man9/pci_intr.9 create mode 100644 static/netbsd/man9/pci_msi.9 create mode 100644 static/netbsd/man9/pckbport.9 create mode 100644 static/netbsd/man9/pcmcia.9 create mode 100644 static/netbsd/man9/pcq.9 create mode 100644 static/netbsd/man9/pcu.9 create mode 100644 static/netbsd/man9/percpu.9 create mode 100644 static/netbsd/man9/pfil.9 create mode 100644 static/netbsd/man9/physio.9 create mode 100644 static/netbsd/man9/pktqueue.9 create mode 100644 static/netbsd/man9/pmap.9 create mode 100644 static/netbsd/man9/pmatch.9 create mode 100644 static/netbsd/man9/pmf.9 create mode 100644 static/netbsd/man9/pool.9 create mode 100644 static/netbsd/man9/pool_cache.9 create mode 100644 static/netbsd/man9/portfeatures.9 create mode 100644 static/netbsd/man9/powerhook_establish.9 create mode 100644 static/netbsd/man9/ppsratecheck.9 create mode 100644 static/netbsd/man9/preempt.9 create mode 100644 static/netbsd/man9/proc_find.9 create mode 100644 static/netbsd/man9/pserialize.9 create mode 100644 static/netbsd/man9/pslist.9 create mode 100644 static/netbsd/man9/psref.9 create mode 100644 static/netbsd/man9/putter.9 create mode 100644 static/netbsd/man9/radio.9 create mode 100644 static/netbsd/man9/ras.9 create mode 100644 static/netbsd/man9/rasops.9 create mode 100644 static/netbsd/man9/ratecheck.9 create mode 100644 static/netbsd/man9/resettodr.9 create mode 100644 static/netbsd/man9/rnd.9 create mode 100644 static/netbsd/man9/roundup.9 create mode 100644 static/netbsd/man9/rssadapt.9 create mode 100644 static/netbsd/man9/rt_timer.9 create mode 100644 static/netbsd/man9/rwlock.9 create mode 100644 static/netbsd/man9/scanc.9 create mode 100644 static/netbsd/man9/sched_4bsd.9 create mode 100644 static/netbsd/man9/sched_m2.9 create mode 100644 static/netbsd/man9/scsipi.9 create mode 100644 static/netbsd/man9/secmodel.9 create mode 100644 static/netbsd/man9/secmodel_bsd44.9 create mode 100644 static/netbsd/man9/secmodel_extensions.9 create mode 100644 static/netbsd/man9/secmodel_overlay.9 create mode 100644 static/netbsd/man9/secmodel_securelevel.9 create mode 100644 static/netbsd/man9/secmodel_suser.9 create mode 100644 static/netbsd/man9/select.9 create mode 100644 static/netbsd/man9/setbit.9 create mode 100644 static/netbsd/man9/setjmp.9 create mode 100644 static/netbsd/man9/shutdownhook_establish.9 create mode 100644 static/netbsd/man9/signal.9 create mode 100644 static/netbsd/man9/skpc.9 create mode 100644 static/netbsd/man9/sockopt.9 create mode 100644 static/netbsd/man9/softintr.9 create mode 100644 static/netbsd/man9/specificdata.9 create mode 100644 static/netbsd/man9/spi.9 create mode 100644 static/netbsd/man9/spl.9 create mode 100644 static/netbsd/man9/splraiseipl.9 create mode 100644 static/netbsd/man9/strlist.9 create mode 100644 static/netbsd/man9/suspendsched.9 create mode 100644 static/netbsd/man9/sysctl.9 create mode 100644 static/netbsd/man9/sysmon_envsys.9 create mode 100644 static/netbsd/man9/sysmon_pswitch.9 create mode 100644 static/netbsd/man9/sysmon_taskq.9 create mode 100644 static/netbsd/man9/tc.9 create mode 100644 static/netbsd/man9/tcp_congctl.9 create mode 100644 static/netbsd/man9/thmap.9 create mode 100644 static/netbsd/man9/threadpool.9 create mode 100644 static/netbsd/man9/time_second.9 create mode 100644 static/netbsd/man9/timecounter.9 create mode 100644 static/netbsd/man9/todr.9 create mode 100644 static/netbsd/man9/ts2timo.9 create mode 100644 static/netbsd/man9/tvtohz.9 create mode 100644 static/netbsd/man9/ubc.9 create mode 100644 static/netbsd/man9/ucas.9 create mode 100644 static/netbsd/man9/ucom.9 create mode 100644 static/netbsd/man9/ufetch.9 create mode 100644 static/netbsd/man9/uiomove.9 create mode 100644 static/netbsd/man9/usbd_status.9 create mode 100644 static/netbsd/man9/usbdi.9 create mode 100644 static/netbsd/man9/usbnet.9 create mode 100644 static/netbsd/man9/userret.9 create mode 100644 static/netbsd/man9/ustore.9 create mode 100644 static/netbsd/man9/uvm.9 create mode 100644 static/netbsd/man9/uvm_hotplug.9 create mode 100644 static/netbsd/man9/uvm_km.9 create mode 100644 static/netbsd/man9/uvm_map.9 create mode 100644 static/netbsd/man9/uvm_obj_wirepages.9 create mode 100644 static/netbsd/man9/vattr.9 create mode 100644 static/netbsd/man9/vcons.9 create mode 100644 static/netbsd/man9/veriexec.9 create mode 100644 static/netbsd/man9/versioningsyscalls.9 create mode 100644 static/netbsd/man9/vfs.9 create mode 100644 static/netbsd/man9/vfs_hooks.9 create mode 100644 static/netbsd/man9/vfsops.9 create mode 100644 static/netbsd/man9/vfssubr.9 create mode 100644 static/netbsd/man9/video.9 create mode 100644 static/netbsd/man9/vme.9 create mode 100644 static/netbsd/man9/vmem.9 create mode 100644 static/netbsd/man9/vnfileops.9 create mode 100644 static/netbsd/man9/vnode.9 create mode 100644 static/netbsd/man9/vnodeops.9 create mode 100644 static/netbsd/man9/vnsubr.9 create mode 100644 static/netbsd/man9/wapbl.9 create mode 100644 static/netbsd/man9/wdc.9 create mode 100644 static/netbsd/man9/workqueue.9 create mode 100644 static/netbsd/man9/wsbell.9 create mode 100644 static/netbsd/man9/wscons.9 create mode 100644 static/netbsd/man9/wsdisplay.9 create mode 100644 static/netbsd/man9/wsfont.9 create mode 100644 static/netbsd/man9/wskbd.9 create mode 100644 static/netbsd/man9/wsmouse.9 create mode 100644 static/netbsd/man9/xcall.9 create mode 100644 static/netbsd/man9lua/Makefile create mode 100644 static/netbsd/man9lua/intro.9lua create mode 100644 static/netbsd/man9lua/pmf.9lua create mode 100644 static/netbsd/man9lua/systm.9lua create mode 100644 static/netbsd/tools/.param create mode 100644 static/netbsd/tools/M.folio create mode 100644 static/netbsd/tools/M.tabs create mode 100644 static/netbsd/tools/README create mode 100644 static/netbsd/tools/TOOLKIT create mode 100644 static/netbsd/tools/badcref3 create mode 100644 static/netbsd/tools/break create mode 100755 static/netbsd/tools/ckcrefs create mode 100755 static/netbsd/tools/ckfrefs create mode 100755 static/netbsd/tools/cknames create mode 100755 static/netbsd/tools/ckso create mode 100755 static/netbsd/tools/ckspell create mode 100755 static/netbsd/tools/ignore create mode 100644 static/netbsd/tools/line.c create mode 100755 static/netbsd/tools/list create mode 100755 static/netbsd/tools/mcmp create mode 100755 static/netbsd/tools/mgrep create mode 100644 static/netbsd/tools/mklinks create mode 100755 static/netbsd/tools/mroff create mode 100644 static/netbsd/tools/newsp.errs create mode 100644 static/netbsd/tools/noso.c create mode 100644 static/netbsd/tools/pages.c create mode 100755 static/netbsd/tools/pgcnt create mode 100755 static/netbsd/tools/prnames create mode 100755 static/netbsd/tools/prsynops create mode 100644 static/netbsd/tools/sp.ignore create mode 100755 static/netbsd/tools/tocrc diff --git a/build b/build index c7eb7fcb..0af838ad 100755 --- a/build +++ b/build @@ -1,7 +1,8 @@ #!/usr/bin/env bash -SUBDIRS=(static/openbsd) +SUBDIRS=(static/openbsd static/netbsd) +create() { sqlite3 man.db <&2 - exit 1 -fi - -for SUBDIR in ${SUBDIRS[*]}; -do - make -j "$(nproc)" -C "$SUBDIR" - if [[ $? != 0 ]]; then - printf "Error: error building %s man pages.\n" "$SUBDIR" >&2 + printf "Error: error creating table.\n" >&2 exit 1 fi - HTML=$(find "$SUBDIR" -type f -name '*.html') - - for FILE in $HTML; + for SUBDIR in ${SUBDIRS[*]}; do - SECTION=$(basename "$FILE" | sed -E 's|.*\.([0-9])\..*|\1|') - NAME=$(basename "$FILE" | sed -E 's|(.*)\.[0-9]\.html|\1|') - OS=$(basename "$SUBDIR") - - if [[ -n "$(echo "$FILE" | grep "man$SECTION\.")" ]]; - then - NAME="$(echo "$FILE" | sed -E "s|.*man$SECTION\.(.*)/.*|\1|" ).$NAME" - fi - - echo "INSERT INTO manpages (os, name, section, path) VALUES ('"$OS"', '"$NAME"', '"$SECTION"', '"$FILE"');" - sqlite3 man.db \ - "INSERT INTO manpages (os, name, section, path) VALUES ('"$OS"', '"$NAME"', '"$SECTION"', '"$FILE"');" + make -j "$(nproc)" -C "$SUBDIR" if [[ $? != 0 ]]; then - printf "Error: error inserting ('%s', '%s', '%s', '%s').\n" "$OS" "$NAME" "$SECTION" "$FILE" >&2 + printf "Error: error building %s man pages.\n" "$SUBDIR" >&2 exit 1 fi + + HTML=$(find "$SUBDIR" -type f -name '*.html') + + for FILE in $HTML; + do + SECTION=$(basename "$FILE" | sed -E 's|.*\.([0-9])\..*|\1|') + NAME=$(basename "$FILE" | sed -E 's|(.*)\.[0-9]\.html|\1|') + OS=$(basename "$SUBDIR") + + if [[ -n "$(echo "$FILE" | grep "man$SECTION\.")" ]]; + then + NAME="$(echo "$FILE" | sed -E "s|.*man$SECTION\.(.*)/.*|\1|" ).$NAME" + fi + + echo "INSERT INTO manpages (os, name, section, path) VALUES ('"$OS"', '"$NAME"', '"$SECTION"', '"$FILE"');" + sqlite3 man.db \ + "INSERT INTO manpages (os, name, section, path) VALUES ('"$OS"', '"$NAME"', '"$SECTION"', '"$FILE"');" + + if [[ $? != 0 ]]; + then + printf "Error: error inserting ('%s', '%s', '%s', '%s').\n" "$OS" "$NAME" "$SECTION" "$FILE" >&2 + exit 1 + fi + done done -done +} + +clean() { + for SUBDIR in ${SUBDIRS[*]}; + do + make -C "$SUBDIR" -j "$(nproc)" clean + done + + rm -f man.db +} + +case "$1" in + create) + create + ;; + clean) + clean + ;; + *) + printf "Error: \"%s\" not an option.\n" "$1" + exit 1 + ;; +esac diff --git a/static/netbsd/Makefile b/static/netbsd/Makefile new file mode 100644 index 00000000..a9710695 --- /dev/null +++ b/static/netbsd/Makefile @@ -0,0 +1,12 @@ +SUBDIRS = man1 \ + man2 \ + man3 \ + man4 \ + man5 \ + man6 \ + man7 \ + man8 \ + man9 + +include ../subdir.mk + diff --git a/static/netbsd/man0/Makefile b/static/netbsd/man0/Makefile new file mode 100644 index 00000000..65b3af4d --- /dev/null +++ b/static/netbsd/man0/Makefile @@ -0,0 +1,108 @@ +# from: @(#)Makefile 5.9 (Berkeley) 7/1/91 +# $NetBSD: Makefile,v 1.19 2024/04/05 23:05:53 christos Exp $ + +# +# Note: Needs ps2pdf to convert .ps to .pdf +# + +.include + +.if ${MKSHARE} != "no" && ${MKMAKEMANDB} == "no" +FILES= makewhatis.sed +FILESDIR= /usr/share/man +.endif + +SECTIONS?= 1 2 3 4 5 6 7 8 9 + +MANSRCDIRS= "${.CURDIR}/../../.." ../../.. + +# Takes out some fluff from the PostScript files created by +# grops which does some VM saving/restoring that bloats the +# PDF file pdf2ps generates. By uwe@NetBSD.org. +OPTIMIZE_PDF?= \ + -e '/^\/level0 0 def/d' \ + -e '/^\/level0 save/d' \ + -e '/^level0 restore/d' + +MAN0SRCS= +.if ${MKMAN} != "no" +MAN0SRCS+= all.files +MAN0SRCS+= ${SECTIONS:@S@man${S}pages.files@} +MAN0SRCS+= ${SECTIONS:@S@man${S}pages.ps @} +MAN0SRCS+= ${SECTIONS:@S@man${S}pages.pdf@} +.endif + +CLEANFILES+= ${MAN0SRCS} +CLEANFILES+= *.tmp +CLEANFILES+= toc? tocx? + +all: ${MAN0SRCS} + +all.files: + ${_MKTARGET_CREATE} + find ${MANSRCDIRS} -name '*.[1-9]' -print \ + | xargs ${TOOL_MKMAGIC} \ + | ${TOOL_GREP} troff \ + | ${TOOL_SED} 's/:[ ]*.*$$//' \ + | ${TOOL_GREP} -F -v -f "${.CURDIR}/noman" \ + | ${TOOL_GREP} -v '#' \ + | ${TOOL_GREP} -v '/obj\.' \ + | ${TOOL_GREP} -v '/destdir\.' \ + | ${TOOL_GREP} -v '/tooldir\.' \ + > ${.TARGET}.tmp \ + && ${MV} ${.TARGET}.tmp ${.TARGET} ; \ + rm -f ${.TARGET}.tmp + + +.for _S in ${SECTIONS} + +man${_S}pages.files: all.files + ${_MKTARGET_CREATE} + cat ${.ALLSRC} \ + | ${TOOL_GREP} "${_S}\$$" \ + | ${TOOL_SED} 's,\(.*/\)\([^/]*\),\2 \1\2,' \ + | sort \ + | ${TOOL_SED} 's/^.* //' \ + > ${.TARGET}.tmp \ + && ${MV} ${.TARGET}.tmp ${.TARGET} ; \ + rm -f ${.TARGET}.tmp + +man${_S}pages.ps: man${_S}pages.files + ${_MKTARGET_CREATE} + for f in `${TOOL_GREP} "${_S}\$$" "${.CURDIR}/intros"` `cat ${.ALLSRC}` ; \ + do \ + if [ ! -f $${f} ]; then \ + continue ; \ + fi ; \ + if ${TOOL_GREP} -q ^\\.TS "${.CURDIR}/back" ; \ + then \ + ${_MKSHMSG_FORMAT} >&2 $${f} ; \ + cat $${f} | ${TOOL_TBL} | ${TOOL_GROFF} -Z -msafer -man -Tps ${ROFF_PAGESIZE}; \ + else \ + ${_MKSHMSG_FORMAT} >&2 $${f} "(tbl)"; \ + cat $${f} | ${TOOL_GROFF} -Z -msafer -man -Tps ${ROFF_PAGESIZE}; \ + fi ; \ + done > ${.TARGET}.troff.tmp \ + && cat ${.TARGET}.troff.tmp \ + | ${TOOL_GREP} -v '^x stop' \ + | ${TOOL_GROPS} \ + > ${.TARGET}.tmp \ + && ${MV} ${.TARGET}.tmp ${.TARGET} ; \ + rm -f ${.TARGET}.tmp ${.TARGET}.troff.tmp + +man${_S}pages.pdf: man${_S}pages.ps + ${_MKTARGET_CREATE} + cat ${.ALLSRC} \ + | ${TOOL_SED} ${OPTIMIZE_PDF} \ + | ps2pdf - - \ + > ${.TARGET}.tmp \ + && ${MV} ${.TARGET}.tmp ${.TARGET} ; \ + rm -f ${.TARGET}.tmp + +.endfor + +man.tgz: + tar plzvcf manpages-ps.tgz man?pages.ps + tar plzvcf manpages-pdf.tgz man?pages.pdf + +.include diff --git a/static/netbsd/man0/back b/static/netbsd/man0/back new file mode 100644 index 00000000..25324a9c --- /dev/null +++ b/static/netbsd/man0/back @@ -0,0 +1,80 @@ +.\" $NetBSD: back,v 1.4 2003/08/07 10:30:59 agc Exp $ +.\" +.\" Copyright (c) 1994 Regents of the University of California. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)back 8.1 (Berkeley) 5/5/94 +.\" +.TS +c s s s +r l r l. +\s24\fBUNIX Documents\fP\s0 +.sp 2 +\fBURM User Reference Manual\fP \fBPSD Programmer Supplementary Documents\fP + man section 1 (commands) 1 The Unix Time \- Sharing System + man section 6 (games) 2 Unix Implementation + man section 7 (miscellaneous) 3 The Unix I/O System + 4 Unix Programming \- Second Edition +\fBUSD User Supplementary Documents\fP 5 4.4BSD Software Architecture Manual +1 Unix for Beginners 6 C Language \- Reference Manual +2 Learn \- Computer \- Aided Instruction 7 Berkeley Pascal User\'s Manual +3 Introduction to the UNIX Shell 8 Fortran 77 +4 Introduction to the C shell 9 Fortran 77 I/O Library +5 DC \- Interactive Desk Calculator 10 The GDB Source-Level Debugger +6 BC \- Arbitrary Precision Desk Calculator 11 ADB Tutorial +7 Mail Reference Manual 12 Make +8 MH Message Handling System 13 Revision Control System (RCS) +9 Tutorial Introduction to ``ed'' 14 Source Code Control System (SCCS) +10 Advanced Editing on Unix 15 YACC: Yet Another Compiler-Compiler +11 Introduction to Display Editing with Vi 16 LEX \- A Lexical Analyzer Generator +12 Ex Reference Manual (Version 3.7) 17 M4 Macro Processor +13 Vi Reference Manual 18 gprof \- Call Graph Execution Profiler +14 Jove Manual for UNIX Users 19 The curses library +15 SED \- A Non-interactive Text Editor 20 Introductory 4.4BSD IPC +16 AWK \- Pattern Scanning and Processing 21 Advanced 4.4BSD IPC +17 Using the \-ms Macros +18 Revised Version of \-ms \fBSMM System Managers Manual\fP +19 Writing Papers using \-me man section 8 (system administration) +20 The \-me Reference Manual 1 Installing and Operating 4.4BSD +21 NROFF/TROFF User\'s Manual 2 Building 4.4BSD Kernels with \fIConfig\fP +22 A TROFF Tutorial 3 Fsck \- File System Check Program +23 Typesetting Mathematics with ``eqn'' 4 Disc Quotas +24 Typesetting Mathematics \- User\'s Guide 5 A Fast File System for UNIX +25 Tbl \- A Program to Format Tables 6 The 4.4BSD NFS Implementation +26 Refer \- A Bibliography System 7 Line Printer Spooler Manual +27 Some Applications of Inverted Indexes 8 Sendmail Installation and Operation +28 BIB \- Bibliographic Formatting Program 9 Sendmail \- An Internetwork Mail Router +29 Writing Tools \- STYLE and DICTION 10 Name Server Operations Guide +30 A Guide to the Dungeons of Doom 11 Timed Installation and Operation +31 Star Trek 12 Berkeley Time Synchronization Protocol + 13 AMD \- The 4.4BSD Automounter +\fBPRM Programmer Reference Manual\fP 14 Installation and Operation of UUCP + man section 2 (system calls) 15 A Dial \- Up Network of UNIX Systems + man section 3 (library routines) 16 On the Security of UNIX + man section 4 (devices, special files) 17 Password Security \- A Case History + man section 5 (file formats) 18 4.4BSD Networking Implementation + 19 The PERL Programming Language diff --git a/static/netbsd/man0/break b/static/netbsd/man0/break new file mode 100644 index 00000000..6db07269 --- /dev/null +++ b/static/netbsd/man0/break @@ -0,0 +1,5 @@ + +; +: +. +, diff --git a/static/netbsd/man0/cover b/static/netbsd/man0/cover new file mode 100644 index 00000000..d025cc19 --- /dev/null +++ b/static/netbsd/man0/cover @@ -0,0 +1,62 @@ +.\" $NetBSD: cover,v 1.4 2003/08/07 10:30:59 agc Exp $ +.\" +.\" Copyright (c) 1993 Regents of the University of California. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)cover 8.1 (Berkeley) 7/20/93 +.\" +.ps 36 +.vs 40p +.de t +\& +.sp |3.5i +.ce 10 +\fBSection \\$1 +.sp 0.5 +\\$2 +\\$3 +\\$4 +\\$5\fP +.ce 0 +.bp +.. +.t 1 Commands and Application Programs +.t 2 System Calls +.t 3 C-Library Subroutines +.t 4 Special Files +.t 5 File Formats +.t 6 Games +.t 7 Miscellaneous +.t 8 System Maintenance +.t 9 Kernel Internals +\& +.sp |3.5i +.ce 10 +\fBSystem +Management +Documents\fP +.ce 1 diff --git a/static/netbsd/man0/cshcmd b/static/netbsd/man0/cshcmd new file mode 100644 index 00000000..1b67aaf6 --- /dev/null +++ b/static/netbsd/man0/cshcmd @@ -0,0 +1,54 @@ +csh(1) alias: shell macros. +csh(1) bg: place job in background. +csh(1) break: exit while/foreach loop. +csh(1) breaksw: exit from switch. +csh(1) case: selector in switch. +csh(1) cd: change directory. +csh(1) chdir: change directory. +csh(1) continue: cycle in loop. +csh(1) default: catchall clause in switch. +csh(1) echo: echo arguments. +csh(1) else: alternative commands. +csh(1) end: terminate loop. +csh(1) endif: terminate conditional. +csh(1) endsw: terminate switch. +csh(1) eval: re-evaluate shell data. +csh(1) exec: overlay shell with specified command. +csh(1) exit: leave shell. +csh(1) fg: bring job into foreground. +csh(1) foreach: loop over list of names. +csh(1) glob: filename expand argument list. +csh(1) goto: command transfer. +csh(1) hashstat: print command hashing statistics. +csh(1) history: print history event list. +csh(1) if: conditional statement. +csh(1) jobs: print current job list. +csh(1) kill: kill jobs and processes. +csh(1) limit: alter per-process resource limitations. +csh(1) login: login new user. +csh(1) logout: end session. +csh(1) nice: run low priority process. +csh(1) nohup: run command immune to hangups. +csh(1) notify: request immediate notification. +csh(1) onintr: process interrupts in command scripts. +csh(1) popd: pop shell directory stack. +csh(1) pushd: push shell directory stack. +csh(1) rehash: recompute command hash table. +csh(1) repeat: execute command repeatedly. +csh(1) set: change value of shell variable. +csh(1) setenv: set variable in environment. +csh(1) shift: manipulate argument list. +csh(1) source: read commands from file. +csh(1) stop: halt a job or process. +csh(1) suspend: suspend a shell, resuming its superior. +csh(1) switch: multi-way command branch. +csh(1) time: time command. +csh(1) umask: change or display file creation mask. +csh(1) unalias: remove aliases. +csh(1) unhash: discard command hash table. +csh(1) unlimit: remove resource limitations. +csh(1) unsetenv: remove environment variables. +csh(1) unset: discard shell variables. +csh(1) wait: wait for background processes to complete. +csh(1) while: repeat commands conditionally. +csh(1) @: arithmetic on shell variables. diff --git a/static/netbsd/man0/groff.sed b/static/netbsd/man0/groff.sed new file mode 100644 index 00000000..fe8ea6ef --- /dev/null +++ b/static/netbsd/man0/groff.sed @@ -0,0 +1,22 @@ +s/@MDATE@/June 30, 1993/ +s/@VERSION@/1.08/ +s,@DEFAULT_INDEX@,/usr/share/dict/papers/Ind, +s,@DEFAULT_INDEX_NAME@,/usr/share/dict/papers/Ind, +s,@COMMON_WORDS_FILE@,/usr/share/dict/papers/words, +s,@INDEX_SUFFIX@,.i, +s,@DEVICE@,/usr/share/groff_font, +s,@FONTDIR@,/usr/share/groff_font, +s,@FONTPATH@,/usr/share/groff_font, +s,@MACRODIR@,/usr/share/tmac, +s,@TMAC_M@,/usr/share/tmac/tmac.m, +s,@TMAC_MDIR@,/usr/share/tmac, +s/@g@// +s/@G@// +s/@MAN1EXT@/1/ +s/@MAN2EXT@/2/ +s/@MAN3EXT@/3/ +s/@MAN4EXT@/4/ +s/@MAN5EXT@/5/ +s/@MAN6EXT@/6/ +s/@MAN7EXT@/7/ +s/@MAN8EXT@/8/ diff --git a/static/netbsd/man0/ignore b/static/netbsd/man0/ignore new file mode 100644 index 00000000..1498edcd --- /dev/null +++ b/static/netbsd/man0/ignore @@ -0,0 +1,99 @@ +- +\- +10 +11 +16 +144 +2 +201 +3 +4014 +6 +7 +77 +a +about +across +after +al +al +all +allow +am +among +an +and +and/or +any +another +are +B +back +be +been +between +bits +by +dialect +do +et +extreme +facts +feeds +fitting +for +from +general +get +has +head +in +integer +integers +interval +into +intro +is +it +its +knowledge +large +last +later +local +long +low +map +o +of +off +on +or +other +out +package +part +periodically +pieces +prejudice +problem +service +simple +special +system +tac +that +the +them +they +this +to +toe +turn +two +until +way +with +yet +you +your diff --git a/static/netbsd/man0/intros b/static/netbsd/man0/intros new file mode 100644 index 00000000..4e81af30 --- /dev/null +++ b/static/netbsd/man0/intros @@ -0,0 +1,33 @@ +../man1/intro.1 +../../../lib/libc/sys/intro.2 +../man3/intro.3 +../man4/man4.acorn32/intro.4 +../man4/man4.alpha/intro.4 +../man4/man4.amiga/intro.4 +../man4/man4.arc/intro.4 +../man4/man4.atari/intro.4 +../man4/man4.cobalt/intro.4 +../man4/man4.dreamcast/intro.4 +../man4/man4.emips/intro.4 +../man4/man4.evbarm/intro.4 +../man4/man4.hp300/intro.4 +../man4/man4.hpcsh/intro.4 +../man4/man4.hppa/intro.4 +../man4/man4.i386/intro.4 +../man4/man4.mac68k/intro.4 +../man4/man4.macppc/intro.4 +../man4/man4.mvme68k/intro.4 +../man4/man4.pmax/intro.4 +../man4/man4.evbppc/intro_pmppc.4 +../man4/man4.sgimips/intro.4 +../man4/man4.sparc/intro.4 +../man4/man4.sparc64/intro.4 +../man4/man4.sun2/intro.4 +../man4/man4.sun3/intro.4 +../man4/man4.vax/intro.4 +../man4/man4.x68k/intro.4 +../man5/intro.5 +../man6/intro.6 +../man7/intro.7 +../man8/intro.8 +../man9/intro.9 diff --git a/static/netbsd/man0/makewhatis.sed b/static/netbsd/man0/makewhatis.sed new file mode 100644 index 00000000..1b5b0ed7 --- /dev/null +++ b/static/netbsd/man0/makewhatis.sed @@ -0,0 +1,66 @@ +#!/usr/bin/sed -nf +# +# $NetBSD: makewhatis.sed,v 1.1 1997/05/09 14:31:27 mycroft Exp $ +# +# Copyright (c) 1988 The Regents of the University of California. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. All advertising materials mentioning features or use of this software +# must display the following acknowledgement: +# This product includes software developed by the University of +# California, Berkeley and its contributors. +# 4. Neither the name of the University nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# @(#)makewhatis.sed 8.4 (Berkeley) 4/3/94 +# + +/^[a-zA-Z][a-zA-Z0-9\._+\-]*(\([a-zA-Z0-9\._+\-]*\).*/ { + s;^[a-zA-Z0-9\._+\-]*(\([a-zA-Z0-9\._+\-]*\).*;\1; + h + d +} + +/^NNAAMMEE/!d + +:name + s;.*;; + N + s;\n;; + # some twits underline the command name + s;_;;g + /^[^ ]/b print + H + b name + +:print + x + s;\n;;g + /-/!d + s;.;;g + s;\([a-z][A-z]\)-[ ][ ]*;\1; + s;\([a-zA-Z0-9,\._+\-]\)[ ][ ]*;\1 ;g + s;[^a-zA-Z0-9\._+\-]*\([a-zA-Z0-9\._+\-]*\)[^a-zA-Z0-9\._+\-]*\(.*\) - \(.*\);\2 (\1) - \3; + p + q diff --git a/static/netbsd/man0/noman b/static/netbsd/man0/noman new file mode 100644 index 00000000..9310ea1b --- /dev/null +++ b/static/netbsd/man0/noman @@ -0,0 +1,6 @@ +# $NetBSD: noman,v 1.2 2023/05/22 12:34:48 lukem Exp $ +# troff files that are no manpages - ready for fgrep -v +USD.doc/csh +bind/dist/bin/tests +libcurses/PSD.doc +/intro diff --git a/static/netbsd/man0/title.cdrom b/static/netbsd/man0/title.cdrom new file mode 100644 index 00000000..a4485d17 --- /dev/null +++ b/static/netbsd/man0/title.cdrom @@ -0,0 +1,1260 @@ +.\" $NetBSD: title.cdrom,v 1.8 2023/05/04 11:30:25 uwe Exp $ +.\" +.\" Copyright (c) 1994 Regents of the University of California. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)title.cdrom 8.3 (Berkeley) 8/8/94 +.\" +.nr LL 6.5i +.EH '''' +.OH '''' +.EF '''' +.OF '''' +\& +.sp |1.5i +.nr PS 36 +.nr VS 39 +.LP +.ft B +.ce 2 +4.4BSD-Lite +CD-ROM Companion +.bp +\& +.sp |0.83i +.nr PS 14 +.nr VS 16.5 +.LP +Now in its twentieth year, the USENIX Association, +the UNIX and Advanced Computing Systems professional and technical organization, +is a not-for-profit membership association of individuals and +institutions with an interest in UNIX and UNIX-like systems, +and, by extension, C++, X windows, and other advanced tools and technologies. +.LP +USENIX and its members are dedicated to: +.IP \(bu +fostering innovation and communicating research and technological developments, +.IP \(bu +sharing ideas and experience relevant to UNIX, +UNIX-related, and advanced computing systems, and +.IP \(bu +providing a neutral forum for the exercise of critical +thought and airing of technical issues. +.LP +USENIX publishes a journal (\fBComputing Systems\fP), +a newsletter (\fI;login:\fP), +Proceedings from its frequent Conferences and Symposia, +and a Book Series. +.LP +SAGE, The Systems Administrators Guild, a Special Technical Group with +the USENIX Association, is dedicated to the advancement of system +administration as a profession. +.LP +SAGE brings together systems managers and administrators to: +.IP \(bu +propagate knowledge of good professional practice, +.IP \(bu +recruit talented individuals to the profession, +.IP \(bu +recognize individuals who attain professional excellence, +.IP \(bu +foster technical development and share solutions to technical +problems, and +.IP \(bu +communicate in an organized voice with users, management, and vendors +on system administration topics. +.bp +\& +.sp |1i +.nr PS 36 +.nr VS 39 +.LP +.ft B +.ce 3 +4.4BSD-Lite +CD-ROM Companion +.sp 1.5i +.nr PS 24 +.nr VS 26 +.LP +.ft B +.ce 1 +Berkeley Software Distribution +.nr PS 18 +.nr VS 26 +.LP +.ft B +.ce 1 +April, 1994 +.sp 1i +.nr PS 18 +.nr VS 20 +.LP +.ft B +.ce 2 +Computer Systems Research Group +University of California at Berkeley +.sp 2.75i +.nr PS 12 +.nr VS 14.5 +.LP +.ft B +.ce 4 +A USENIX Association Book +O'Reilly & Associates, Inc. +103 Morris Street, Suite A +Sebastopol, CA 94572 +.bp +.hy 0 +.nr PS 9 +.nr VS 11 +.LP +First Printing, 1994 +.br +Second Printing, 1995 +.sp 1 +.LP +Copyright 1979, 1980, 1983, 1986, 1993, 1994 +The Regents of the University of California. All rights reserved. +.sp 1 +.LP +Redistribution and use of this manual and its accompanying CD-ROM +in source and binary forms, +with or without modification, are permitted provided that the +following conditions are met: +.IP 1) +Redistributions of this manual must retain the copyright +notices on this page, this list of conditions and the following disclaimer. +.IP 2) +Software or documentation that incorporates part of this manual must +reproduce the copyright notices on this page, this list of conditions and +the following disclaimer in the documentation and/or other materials +provided with the distribution. +.IP 3) +All advertising materials mentioning features or use of this software +must display the following acknowledgement: +``This product includes software developed by the University of +California, Berkeley and its contributors.'' +.IP 4) +Neither the name of the University nor the names of its contributors +may be used to endorse or promote products derived from this software +without specific prior written permission. +.LP +\fB\s-1THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE.\s+1\fP +.sp 1.5 +.LP +The Institute of Electrical and Electronics Engineers and the American +National Standards Committee X3, on Information Processing Systems have +given us permission to reprint portions of their documentation. +.sp 1 +.LP +In the following statement, the phrase ``this text'' refers to portions +of the system documentation. +.LP +``Portions of this text are reprinted and reproduced in +electronic form in 4.4BSD from IEEE Std 1003.1-1988, IEEE +Standard Portable Operating System Interface for Computer Environments +(POSIX), copyright 1988 by the Institute of Electrical and Electronics +Engineers, Inc. In the event of any discrepancy between these versions +and the original IEEE Standard, the original IEEE Standard is the referee +document.'' +.sp 1 +.LP +In the following statement, the phrase ``This material'' refers to portions +of the system documentation. +.LP +``This material is reproduced with permission from American National +Standards Committee X3, on Information Processing Systems. Computer and +Business Equipment Manufacturers Association (CBEMA), 311 First St., NW, +Suite 500, Washington, DC 20001-2178. The developmental work of +Programming Language C was completed by the X3J11 Technical Committee.'' +.sp 1.5 +.LP +The views and conclusions contained in this manual are those of the +authors and should not be interpreted as representing official policies, +either expressed or implied, of the Regents of the University of California. +.sp 1.5 +.LP +The 4.4BSD Daemon used on the cover is +copyright 1994 by Marshall Kirk McKusick +and is reproduced with permission. +.br +This book was printed and bound in the United States of America. +.br +Distributed by O'Reilly & Associates, Inc. +.sp 1 +.IP "[recycle logo]" 16 +This book is printed on acid-free paper with 50% recycled content, +10-13% post-consumer waste. O'Reilly & Associates is committed to +using paper with the highest recycled content available consistent +with high quality. +.sp 1 +.LP +ISBN: 1-56592-081-3 (Domestic) +.LP +ISBN: 1-56592-092-9 (International) +.bp +\& +.sp |1.5i +.nr PS 24 +.nr VS 26 +.LP +.ce 1 +\fBContents\fP +.sp 1 +.nr PS 14 +.nr VS 17 +.LP +.TS +expand; +l r. +The Computer Systems Research Group, 1979\-1993 7 +Overview 11 +CD-ROM Source Hierarchy 15 +Introduction 21 +List of Manual Pages 23 +Permuted Index 41 +.TE +.if o .bp +\& +.bp +.\" +.\" The contributor list below is derived from the file that resides in +.\" vangogh:~admin/contrib/contrib: +.\" +.\" @(#)contrib 5.55 (Berkeley) 4/18/94 +.\" +.\" This file should not be editted, rather the original contrib file +.\" should be used to recrete this one following the directions at its top. +.\" Contrib starts here and continues to the comment `END OF CONTRIB'. +.\" +\& +.sp |1i +.ps 24 +.vs 27 +.ce 2 +\fBThe Computer Systems Research Group +1979 \- 1993\fP +.sp 1.5 +.nr PS 11 +.nr VS 12 +.LP +.nf +.in +0.5i +\fBCSRG Technical Staff\fP +.sp 1 +.in +1i +Jim Bloom +Keith Bostic +Ralph Campbell +Kevin Dunlap +William N. Joy +Michael J. Karels +Samuel J. Leffler +Marshall Kirk McKusick +Miriam Amos Nihart +Keith Sklower +Marc Teitelbaum +Michael Toy +.in -1i +.sp 3 +\fBCSRG Administration and Support\fP +.sp 1 +.in +1i +Robert Fabry +Domenico Ferrari +Susan L. Graham +Bob Henry +Anne Hughes +Bob Kridle +David Mosher +Pauline Schwartz +Mark Seiden +Jean Wood +.in -1i +.fi +.sp 3 +\fBOrganizations that funded the CSRG with grants, +gifts, personnel, and/or hardware.\fP +.sp 1 +.nf +.in +1i +Center for Advanced Aviation System Development, The MITRE Corp. +Compaq Computer Corporation +Cray Research Inc. +Department of Defense Advance Research Projects Agency (DARPA) +Digital Equipment Corporation +The Hewlett-Packard Company +NASA Ames Research Center +The National Science Foundation +The Open Software Foundation +UUNET Technologies Inc. +.in -1.5i +.fi +.OH '\s10CSRG, 1979 \- 1993''- % -\s0' +.EH '\s10- % -''CSRG, 1979 \- 1993\s0' +.bp +.nr PS 10 +.nr VS 11 +.LP +\fBThe following are people and organizations that provided a +large subsystem for the BSD releases.\fP +.sp +.TS +l l. +ANSI C library Chris Torek +ANSI C prototypes Donn Seeley and John Kohl +Autoconfiguration Robert Elz +C library documentation American National Standards Committee X3 +CCI 6/32 support Computer Consoles Inc. +DEC 3000/5000 support Ralph Campbell +Disklabels Symmetric Computer Systems +Documentation Cynthia Livingston and The USENIX Association +Franz Lisp Richard Fateman, John Foderaro, Keith Sklower, Kevin Layer +GCC, GDB The Free Software Foundation +Groff James Clark (The FSF) +HP300 support Jeff Forys, Mike Hibler, Jay Lepreau, Donn Seeley and the Systems + Programming Group; University of Utah Computer Science Department +ISODE Marshall Rose +Ingres Mike Stonebraker, Gene Wong, and the Berkeley Ingres Research Group +Intel 386/486 support Bill Jolitz and TeleMuse +Job control Jim Kulp +Kerberos Project Athena and MIT +Kernel support Bill Shannon and Sun Microsystems Inc. +LFS Margo Seltzer, Mendel Rosenblum, Carl Staelin +MIPS support Trent Hein +Math library K.C. Ng, Zhishun Alex Liu, S. McDonald, P. Tang and W. Kahan +NFS Rick Macklem +NFS automounter Jan-Simon Pendry +Network device drivers Micom-Interlan and Excelan +Omron Luna support Akito Fujita and Shigeto Mochida +Quotas Robert Elz +RPC support Sun Microsystems Inc. +Shared library support Rob Gingell and Sun Microsystems Inc. +Sony News 3400 support Kazumasa Utashiro +Sparc I/II support Computer Systems Engineering Group, Lawrence Berkeley Laboratory +Stackable file systems John Heidemann +Stdio Chris Torek +System documentation The Institute of Electrical and Electronics Engineers, Inc. +TCP/IP Rob Gurwitz and Bolt Beranek and Newman Inc. +Timezone support Arthur David Olson +Transport/Network OSI layers IBM Corporation and the University of Wisconsin +Kernel XNS assistance William Nesheim, J. Q. Johnson, Chris Torek, and James O'Toole +User level XNS Cornell University +VAX 3000 support Mt. Xinu and Tom Ferrin +VAX BI support Chris Torek +VAX device support Digital Equipment Corporation and Helge Skrivervik +Versatec printer/plotter support University of Toronto +Virtual memory implementation Avadis Tevanian, Jr., Michael Wayne Young, + and the Carnegie-Mellon University Mach project +X25 University of British Columbia +.TE +.bp +.LP +\fBThe following are people and organizations that provided a specific +item, program, library routine or program maintenance for the BSD system. +(Their contribution may not be part of the final 4.4BSD release.)\fP +.nr PS 9 +.nr VS 10 +.ps 9 +.vs 10 +.TS +l l. +386 device drivers Carnegie-Mellon University Mach project +386 device drivers Don Ahn, Sean Fagan and Tim Tucker +HCX device drivers Harris Corporation +Kernel enhancements Robert Elz, Peter Ivanov, Ian Johnstone, Piers Lauder, + John Lions, Tim Long, Chris Maltby, Greg Rose and John Wainwright +ISO-9660 filesystem Pace Willisson, Atsushi Murai +.TE +.sp -0.4 +.TS +l l l l. +adventure(6) Don Woods log(3) Peter McIlroy +adventure(6) Jim Gillogly look(1) David Hitz +adventure(6) Will Crowther ls(1) Elan Amir +apply(1) Rob Pike ls(1) Michael Fischbein +apply(1) Jan-Simon Pendry lsearch(3) Roger L. Snyder +ar(1) Hugh A. Smith m4(1) Ozan Yigit +arithmetic(6) Eamonn McManus mail(1) Kurt Shoens +arp(8) Sun Microsystems Inc. make(1) Adam de Boor +at(1) Steve Wall me(7) Eric Allman +atc(6) Ed James mergesort(3) Peter McIlroy +awk(1) Arnold Robbins mh(1) Marshall Rose +awk(1) David Trueman mh(1) The Rand Corporation +backgammon(6) Alan Char mille(6) Ken Arnold +banner(1) Mark Horton mknod(8) Kevin Fall +battlestar(6) David Riggle monop(6) Ken Arnold +bcd(6) Steve Hayman more(1) Eric Shienbrood +bdes(1) Matt Bishop more(1) Mark Nudelman +berknet(1) Eric Schmidt mountd(8) Herb Hasler +bib(1) Dain Samples mprof(1) Ben Zorn +bib(1) Gary M. Levin msgs(1) David Wasley +bib(1) Timothy A. Budd multicast Stephen Deering +bitstring(3) Paul Vixie mv(1) Ken Smith +boggle(6) Barry Brachman named/bind(8) Douglas Terry +bpf(4) Steven McCanne named/bind(8) Kevin Dunlap +btree(3) Mike Olson news(1) Rick Adams (and a cast of thousands) +byte-range locking Scooter Morris nm(1) Hans Huebner +caesar(6) John Eldridge pascal(1) Kirk McKusick +caesar(6) Stan King pascal(1) Peter Kessler +cal(1) Kim Letkeman paste(1) Adam S. Moskowitz +cat(1) Kevin Fall patch(1) Larry Wall +chess(6) Stuart Cracraft (The FSF) pax(1) Keith Muller +ching(6) Guy Harris phantasia(6) C. Robertson +cksum(1) James W. Williams phantasia(6) Edward A. Estes +clri(8) Rich $alz ping(8) Mike Muuss +col(1) Michael Rendell pom(6) Keith E. Brandt +comm(1) Case Larsen pr(1) Keith Muller +compact(1) Colin L. McMaster primes(6) Landon Curt Noll +compress(1) James A. Woods qsort(3) Doug McIlroy +compress(1) Joseph Orost qsort(3) Earl Cohen +compress(1) Spencer Thomas qsort(3) Jon Bentley +courier(1) Eric Cooper quad(3) Chris Torek +cp(1) David Hitz quiz(6) Jim R. Oldroyd +cpio(1) AT&T quiz(6) Keith Gabryelski +crypt(3) Tom Truscott radixsort(3) Dan Bernstein +csh(1) Christos Zoulas radixsort(3) Peter McIlroy +csh(1) Len Shar rain(6) Eric P. Scott +curses(3) Elan Amir ranlib(1) Hugh A. Smith +curses(3) Ken Arnold rcs(1) Walter F. Tichy +cut(1) Adam S. Moskowitz rdist(1) Michael Cooper +cut(1) Marciano Pitargue regex(3) Henry Spencer +dbx(1) Mark Linton robots(6) Ken Arnold +dd(1) Keith Muller rogue(6) Timothy C. Stoehr +dd(1) Lance Visser rs(1) John Kunze +des(1) Jim Gillogly sail(6) David Riggle +des(1) Phil Karn sail(6) Edward Wang +des(1) Richard Outerbridge sccs(1) Eric Allman +dipress(1) Xerox Corporation scsiformat(1) Lawrence Berkeley Laboratory +disklabel(8) Symmetric Computer Systems sdb(1) Howard Katseff +du(1) Chris Newcomb sed(1) Diomidis Spinellis +dungeon(6) R.M. Supnik sendmail(8) Eric Allman +ed(1) Rodney Ruddock setmode(3) Dave Borman +emacs(1) Richard Stallman sh(1) Kenneth Almquist +erf(3) Peter McIlroy, K.C. Ng slattach(8) Rick Adams +error(1) Robert R. Henry slip(8) Rick Adams +ex(1) Mark Horton spms(1) Peter J. Nicklin +factor(6) Landon Curt Noll strtod(3) David M. Gay +file(1) Ian Darwin swab(3) Jeffrey Mogul +find(1) Cimarron Taylor sysconf(3) Sean Eric Fagan +finger(1) Tony Nardo sysline(1) J.K. Foderaro +fish(6) Muffy Barkocy syslog(3) Eric Allman +fmt(1) Kurt Shoens systat(1) Bill Reeves +fnmatch(3) Guido van Rossum systat(1) Robert Elz +fold(1) Kevin Ruddy tail(1) Edward Sze-Tyan Wang +fortune(6) Ken Arnold talk(1) Clem Cole +fpr(1) Robert Corbett talk(1) Kipp Hickman +fsdb(8) Computer Consoles Inc. talk(1) Peter Moore +fsplit(1) Asa Romberger telnet(1) Dave Borman +fsplit(1) Jerry Berkman telnet(1) Paul Borman +gcc/groff integration UUNET Technologies, Inc. termcap(5) John A. Kunze +gcore(1) Eric Cooper termcap(5) Mark Horton +getcap(3) Casey Leedom test(1) Kenneth Almquist +glob(3) Guido van Rossum tetris(6) Chris Torek +gprof(1) Peter Kessler tetris(6) Darren F. Provine +gprof(1) Robert R. Henry timed(8) Riccardo Gusella +hack(6) Andries Brouwer (and a cast of thousands) timed(8) Stefano Zatti +hangman(6) Ken Arnold tn3270(1) Gregory Minshall +hash(3) Margo Seltzer tr(1) Igor Belchinskiy +heapsort(3) Elmer Yglesias traceroute(8) Van Jacobson +heapsort(3) Kevin Lew trek(6) Eric Allman +heapsort(3) Ronnie Kon tset(1) Eric Allman +hunt(6) Conrad Huang tsort(1) Michael Rendell +hunt(6) Greg Couch unifdef(1) Dave Yost +icon(1) Bill Mitchell uniq(1) Case Larsen +icon(1) Ralph Griswold uucpd(8) Rick Adams +indent(1) David Willcox uudecode(1) Mark Horton +indent(1) Eric Schmidt uuencode(1) Mark Horton +indent(1) James Gosling uuq(1) Lou Salkind +indent(1) Sun Microsystems uuq(1) Rick Adams +init(1) Donn Seeley uusnap(8) Randy King +j0(3) Sun Microsystems, Inc. uusnap(8) Rick Adams +j1(3) Sun Microsystems, Inc. vacation(1) Eric Allman +jn(3) Sun Microsystems, Inc. vi(1) Steve Kirkendall +join(1) David Goodenough which(1) Peter Kessler +join(1) Michiro Hikida who(1) Michael Fischbein +join(1) Steve Hayman window(1) Edward Wang +jot(1) John Kunze worm(6) Michael Toy +jove(1) Jonathon Payne worms(6) Eric P. Scott +kermit(1) Columbia University write(1) Craig Leres +kvm(3) Peter Shipley write(1) Jef Poskanzer +kvm(3) Steven McCanne wump(6) Dave Taylor +lam(1) John Kunze X25/Ethernet Univ. of Erlangen-Nuremberg +larn(6) Noah Morgan X25/LLC2 Dirk Husemann +lastcomm(1) Len Edmondson xargs(1) John B. Roll Jr. +lex(1) Vern Paxson xneko(6) Masayuki Koba +libm(3) Peter McIlroy XNSrouted(1) Bill Nesheim +libm(3) UUNET Technologies, Inc. xroach(6) J.T. Anderson +locate(1) James A. Woods yacc(1) Robert Paul Corbett +lock(1) Bob Toxen +.TE +.\" +.\" END OF CONTRIB: Contrib ends here. +.\" +.if o .bp +\& +.EH '''' +.OH '''' +.bp +.OH '\s10Overview''- % -\s0' +.EH '\s10- % -''Overview\s0' +.nr PS 10 +.nr VS 12 +\& +.sp |1.5i +.EQ +delim $$ +.EN +.LP +.ce +\fB\s24Overview\s0\fP +.sp 3 +.NH 1 +4.4BSD-Lite Description +.PP +This cd-rom contains the source code, +manual pages and other documentation, +and research papers from the first revision of the University of California, +Berkeley's 4.4BSD-Lite distribution. +.PP +The 4.4BSD-Lite software is copyrighted by the +University of California and others, +but may be freely redistributed and used in products without fee, +as long as the due credit, +copyright notice, +and other requirements described in the file /COPYRIGHT are met. +.PP +The distribution includes both software developed at Berkeley and much +software contributed by authors outside Berkeley. +Please see the previous section of this document +for a list of the many contributors to the system. +.PP +The layout of the 4.4BSD-Lite distribution is described +in the \fIhier\fR(7) manual page, which follows. +A table of contents and permuted index for the 4.4BSD-Lite manual pages +follow as well. +.PP +The cd-rom is in ISO-9660 format, +with Rock Ridge Extensions. +For example, to mount on a 4.4BSD-Lite system +on which the CD-ROM drive is connected as SCSI unit 1, +ensure that the directory /cdrom exists, +then enter ``mount -r -t cd9660 /dev/sd1a /cdrom''. +To mount on a Sun, +ensure that the directory /cdrom exists, +then enter ``mount -r -t hsts /dev/sr0 /cdrom''. +.PP +The 4.4BSD-Lite distribution is a source distribution only, +and does not contain program binaries for any architecture. +It is not possible to compile or run this software without a +pre-existing system that is already installed and running. +In addition, +the distribution does not include sources for the complete 4.4BSD system. +It includes source code and manual pages for the C library, +approximately 95% of the utilities distributed in 4.4BSD, +and all but a few files from the kernel. +The system is almost entirely ANSI C and IEEE POSIX 1003.1 and 1003.2 +standards compliant. +.NH 1 +4.4BSD-Lite Features +.PP +The major new facilities available in the 4.4BSD-Lite release are +a new virtual memory system, +the addition of ISO/OSI networking support, +a new virtual filesystem interface supporting filesystem stacking, +a freely redistributable implementation of NFS, +a log-structured filesystem, +enhancement of the local filesystems to support +files and filesystems that are up to $2 sup 63$ bytes in size, +enhanced security and system management support, +and the conversion to and addition of the IEEE Std1003.1 (``POSIX'') +facilities and many of the IEEE Std1003.2 facilities. +In addition, many new utilities and additions have been made to the C-library. +The kernel sources have been reorganized to collect all machine-dependent +files for each architecture under one directory, +and most of the machine-independent code is now free of code +conditional on specific machines. +The user structure and process structure have been reorganized +to eliminate the statically-mapped user structure and to make most +of the process resources shareable by multiple processes. +The system and include files have been converted to be compatible +with ANSI C, including function prototypes for most of the exported +functions. +There are numerous other changes throughout the system. +.NH 1 +Changes in the Kernel +.PP +This release includes several important structural kernel changes. +The kernel uses a new internal system call convention; +the use of global (``u-dot'') variables for parameters and error returns +has been eliminated, +and interrupted system calls no longer abort using non-local goto's (longjmp's). +A new sleep interface separates signal handling from scheduling priority, +returning characteristic errors to abort or restart the current system call. +This sleep call also passes a string describing the process state, +which is used by the ps(1) program. +The old sleep interface can be used only for non-interruptible sleeps. +.PP +Many data structures that were previously statically allocated +are now allocated dynamically. +These structures include mount entries, file entries, +user open file descriptors, the process entries, the vnode table, +the name cache, and the quota structures. +.PP +The 4.4BSD-Lite distribution adds support for several new +architectures including +SPARC-based Sparcstations 1 and 2, +MIPS-based Decstation 3100 and 5000 and Sony NEWS, +68000-based Hewlett-Packard 9000/300 and Omron Luna, and +386-based Personal Computers. +Both the HP300 and SPARC ports feature the ability to run binaries +built for the native operating system (HP-UX or SunOS) by emulating +their system calls. +Though this native operating system compatibility was provided by the +developers as needed for their purposes and is by no means complete, +it is complete enough to run several non-trivial applications including +those that require HP-UX or SunOS shared libraries. +For example, the vendor supplied X11 server and windowing environment +can be used on both the HP300 and SPARC. +.NH 2 +Virtual memory changes +.PP +The new virtual memory implementation is derived from the MACH +operating system developed at Carnegie-Mellon, +and was ported to the BSD kernel at the University of Utah. +The MACH virtual memory system call interface has been replaced with the +``mmap''-based interface described in the +``Berkeley Software Architecture Manual (4.4 Edition)'' +(see the UNIX Programmer's Manual, +Supplementary Documents, PSD:5). +The interface is similar to the interfaces shipped +by several commercial vendors such as Sun, USL, and Convex Computer Corp. +The integration of the new virtual memory is functionally complete, +but, like most MACH-based virtual memory systems, +still has serious performance problems under heavy memory load. +.NH 2 +Networking additions and changes +.PP +The ISO/OSI Networking consists of a kernel implementation of +transport class 4 (TP-4), +connectionless networking protocol (CLNP), +and 802.3-based link-level support (hardware-compatible with Ethernet*). +.\" +.\" ditroff screws up the environment for footnote. This restores it. +.\" +.ev 1 +.ps 8 +.vs 9 +.ev +.\" end of ditroff fix +.FS +*Ethernet is a trademark of the Xerox Corporation. +.FE +We also include support for ISO Connection-Oriented Network Service, +X.25, and TP-0. +The session and presentation layers are provided outside +the kernel by the ISO development environment (ISODE). +Included in this development environment are file +transfer and management (FTAM), virtual terminals (VT), +a directory services implementation (X.500), and miscellaneous other utilities. +.PP +Several important enhancements have been added to the TCP/IP +protocols including TCP header prediction and +serial line IP (SLIP) with header compression. +The routing implementation has been completely rewritten +to use a hierarchical routing tree with a mask per route +to support the arbitrary levels of routing found in the ISO protocols. +The routing table also stores and caches route characteristics +to speed the adaptation of the throughput and congestion avoidance +algorithms. +.NH 2 +Additions and changes to filesystems +.PP +The 4.4BSD-Lite distribution contains most of the interfaces +specified in the IEEE Std1003.1 system interface standard. +Filesystem additions include IEEE Std1003.1 FIFOs, +byte-range file locking, and saved user and group identifiers. +.PP +A new virtual filesystem interface has been added to the +kernel to support multiple filesystems. +In comparison with other interfaces, +the Berkeley interface has been structured for more efficient support +of filesystems that maintain state (such as the local filesystem). +The interface has been extended with support for stackable +filesystems done at UCLA. +These extensions allow for filesystems to be layered on top of each +other and allow new vnode operations to be added without requiring +changes to existing filesystem implementations. +For example, the umap filesystem +is used to mount a sub-tree of an existing filesystem +that uses a different set of uids and gids than the local system. +Such a filesystem could be mounted from a remote site via NFS or it +could be a filesystem on removable media brought from some foreign +location that uses a different password file. +.PP +In addition to the local ``fast filesystem,'' +we have added an implementation of the network filesystem (NFS) +that fully interoperates with the NFS shipped by Sun and its licensees. +Because our NFS implementation was implemented using only the +publicly available NFS specification, +it does not require a license from Sun to use in source or binary form. +By default it runs over UDP to be compatible with Sun's implementation. +However, it can be configured on a per-mount basis to run over TCP. +Using TCP allows it to be used quickly and efficiently through +gateways and over long-haul networks. +Using an extended protocol, it supports Leases to allow a limited +callback mechanism that greatly reduces the network traffic necessary +to maintain cache consistency between the server and its clients. +.PP +A new log-structured filesystem has been added that provides +near disk-speed output and fast crash recovery. +It is still experimental in the 4.4BSD-Lite release, +so we do not recommend it for production use. +We have also added a memory-based filesystem that runs in +pageable memory, allowing large temporary filesystems without +requiring dedicated physical memory. +.PP +The local ``fast filesystem'' has been enhanced to do +clustering which allows large pieces of files to be +allocated contiguously resulting in near doubling +of filesystem throughput. +The filesystem interface has been extended to allow +files and filesystems to grow to $2 sup 63$ bytes in size. +The quota system has been rewritten to support both +user and group quotas (simultaneously if desired). +Quota expiration is based on time rather than +the previous metric of number of logins over quota. +This change makes quotas more useful on fileservers +onto which users seldom log in. +.PP +The system security has been greatly enhanced by the +addition of additional file flags that permit a file to be +marked as immutable or append only. +Once set, these flags can only be cleared by the super-user +when the system is running single user. +To protect against indiscriminate reading or writing of kernel +memory, all writing and most reading of kernel data structures +must be done using a new ``sysctl'' interface. +The information to be accessed is described through an extensible +``Management Information Base'' (MIB). +.EQ +delim off +.EN +.NH 2 +POSIX terminal driver changes +.PP +The biggest area of change is a new terminal driver. +The terminal driver is similar to the System V terminal driver +with the addition of the necessary extensions to get the +functionality previously available in the 4.3BSD terminal driver. +4.4BSD-Lite also adds the IEEE Std1003.1 job control interface, +which is similar to the 4.3BSD job control interface, +but adds a security model that was missing in the +4.3BSD job control implementation. +A new system call, \fIsetsid\fP, +creates a job-control session consisting of a single process +group with one member, the caller, that becomes a session leader. +Only a session leader may acquire a controlling terminal. +This is done explicitly via a \s-1TIOCSCTTY\s+1 \fIioctl\fP call, +not implicitly by an \fIopen\fP call. +The call fails if the terminal is in use. +.PP +For backward compatibility, +both the old \fIioctl\fP +calls and old options to \fIstty\fP +are emulated. +.NH 1 +Changes to the utilities +.PP +There are several new tools and utilities included in this release. +A new version of ``make'' allows much-simplified makefiles for the +system software and allows compilation for multiple architectures +from the same source tree (which may be mounted read-only). +Notable additions to the libraries include functions to traverse a +filesystem hierarchy, database interfaces to btree and hashing functions, +a new, fast implementation of stdio, and a radix sort function. +The additions to the utility suite include greatly enhanced versions of +programs that display system status information, implementations of +various traditional tools described in the IEEE Std1003.2 standard, +and many others. +.PP +We have been tracking the IEEE Std1003.2 shell and utility work +and have included prototypes of many of the proposed utilities. +Most of the traditional utilities have been replaced +with implementations conformant to the POSIX standards. +Almost the entire manual suite has been rewritten to +reflect the POSIX defined interfaces. +In rewriting this software, we have generally +been rewarded with significant performance improvements. +Most of the libraries and header files have been converted +to be compliant with ANSI C. +The system libraries and utilities all compile +with either ANSI or traditional C. +.PP +The Kerberos (version 4) authentication software has been +integrated into much of the system (including NFS) to provide +the first real network authentication on BSD. +.PP +A new implementation of the \fIex/vi\fP text editors is available +in this release. +It is intended as a bug-for-bug compatible version of the editors. +It also has a few new features: 8-bit clean data, lines and files +limited only by memory and disk space, split screens, tags stacks +and left-right scrolling among them. +\fINex/nvi\fP +is not yet production quality; future versions of this software may +be retrieved by anonymous ftp from ftp.cs.berkeley.edu, in the +directory ucb/4bsd. +.PP +The \fIfind\fP +utility has two new options that are important to be aware of if you +intend to use NFS. +The ``fstype'' and ``prune'' options can be used together to prevent +find from crossing NFS mount points. +.NH 2 +Additions and changes to the libraries +.PP +The \fIcurses\fP +library has been largely rewritten. +Important additional features include support +for scrolling and \fItermios\fP. +.PP +An application front-end editing library, named libedit, has been +added to the system. +.PP +A superset implementation of the SunOS kernel memory interface library, +\fIlibkvm\fP, has been integrated into the system. +.PP +Nearly the entire C-library has been rewritten. +Some highlights of the changes to the 4.4BSD-Lite C-library: +.IP \(bu +The newly added \fIfts\fP +functions will do either physical or logical traversal of +a file hierarchy as well as handle essentially infinite depth +filesystems and filesystems with cycles. +All the utilities in 4.4BSD-Lite that traverse file hierarchies +have been converted to use \fIfts\fP. +The conversion has always resulted in a significant performance +gain, often of four or five to one in system time. +.IP \(bu +The newly added \fIdbopen\fP +functions are intended to be a family of database access methods. +Currently, they consist of \fIhash\fP, +an extensible, dynamic hashing scheme, +\fIbtree\fP, a sorted, balanced tree structure (B+tree's), and +\fIrecno\fP, a flat-file interface for fixed or variable length records +referenced by logical record number. +Each of the access methods stores associated key/data pairs and +uses the same record oriented interface for access. +Future versions of this software may be retrieved by anonymous ftp +from ftp.cs.berkeley.edu, in the directory ucb/4bsd. +.IP \(bu +The \fIqsort\fP +function has been rewritten for additional performance. +In addition, three new types of sorting functions, +\fIheapsort\fP, \fImergesort\fP, and \fIradixsort\fP +have been added to the system. +The \fImergesort\fP +function is optimized for data with pre-existing order, +in which case it usually significantly outperforms \fIqsort\fP. +The \fIradixsort\fP +functions are variants of most-significant-byte radix sorting. +They take time linear to the number of bytes to be +sorted, usually significantly outperforming \fIqsort\fP +on data that can be sorted in this fashion. +An implementation of the POSIX 1003.2 standard \fIsort\fP +based on \fIradixsort\fP is included in 4.4BSD-Lite. +.IP \(bu +The floating point support in the C-library has been replaced +and is now accurate. +.IP \(bu +The C functions specified by both ANSI C, POSIX 1003.1 and +1003.2 are now part of the C-library. +This includes support for file name matching, shell globbing +and both basic and extended regular expressions. +.IP \(bu +ANSI C multibyte and wide-character support has been integrated. +The rune functionality from the Bell Labs' Plan 9 system is provided +as well. +.IP \(bu +The \fItermcap\fP +functions have been generalized and replaced with a general +purpose interface named \fIgetcap\fP. +.IP \(bu +The \fIstdio\fP +routines have been replaced, and are usually much faster. +In addition, the \fIfunopen\fP +interface permits applications to provide their own I/O stream +function support. +.NH 1 +Acknowledgements +.PP +We were greatly assisted by the past employees of the Computer Systems +Research Group: Mike Karels, Keith Sklower, and Marc Tietelbaum. +Our distribution coordinator, Pauline Schwartz, has reliably managed +the finances and the mechanics of shipping distributions for +nearly the entire fourteen years of the group's existence. +Without the help of lawyers Mary MacDonald, Joel Linzner, +and Carla Shapiro, the 4.4BSD-Lite distribution would never +have seen the light of day. +Much help was provided by Chris Demetriou in getting bug fixes +from NetBSD integrated back into the 4.4BSD-Lite distribution. +.PP +The vast majority of the 4.4BSD-Lite distribution comes from the numerous +people in the UNIX community that provided their time and energy in +creating the software contained in this release. +We dedicate this distribution to them. +.sp 0.6 +.in 4i +.nf +M. K. McKusick +K. Bostic +.fi +.in 0 +.if o .bp +\& +.EH '''' +.OH '''' +.bp +7 +.OH '\s10Introduction''- % -\s0' +.EH '\s10- % -''Introduction\s0' +.de IR +\fI\\$1\^\fR\\$2 +.. +.de RI +\fR\\$1\fI\\$2\^\fR\\$3 +.. +.ce +\fB\s24Introduction\s0\fP +.sp 2 +.nr PS 10 +.nr VS 12 +.LP +The documentation for 4.4BSD is in a format similar +to the one used for the 4.2BSD and 4.3BSD manuals. +It is divided into three sets; each set consists of one or more volumes. +The abbreviations for the volume names are listed in square brackets; +the abbreviations for the manual sections are listed in parenthesis. +.DS +I. User's Documents + User's Reference Manual [URM] + Commands (1) + Games (6) + Macro packages and language conventions (7) + User's Supplementary Documents [USD] + Getting Started + Basic Utilities + Communicating with the World + Text Editing + Document Preparation + Amusements + +II. Programmer's Documents + Programmer's Reference Manual [PRM] + System calls (2) + Subroutines (3) + Special files (4) + File formats and conventions (5) + Programmer's Supplementary Documents [PSD] + Documents of Historic Interest + Languages in common use + Programming Tools + Programming Libraries + General Reference + +III. System Manager's Manual [SMM] + Maintenance commands (8) + System Installation and Administration +.DE +.LP +References to individual documents are given as ``volume:document'', +thus USD:1 refers to the first document in the ``User's Supplementary +Documents''. +References to manual pages are given as ``\fIname\fP(section)'' thus +.IR sh (1) +refers to the shell manual entry in section 1. +.LP +The manual pages give descriptions of the features of the +4.4BSD system, as developed at the University of California at Berkeley. +They do not attempt to provide perspective or tutorial information about the +4.4BSD operating system, its facilities, or its implementation. +Various documents on those topics are contained in the +``\s-1UNIX\s+1 User's Supplementary Documents'' (USD), the +``\s-1UNIX\s+1 Programmer's Supplementary Documents'' (PSD), +and ``\s-1UNIX\s+1 System Manager's Manual'' (SMM). +In particular, for an overview see ``The \s-1UNIX\s+1 Time-Sharing System'' (PSD:1) +by Ritchie and Thompson; for a tutorial see +``\s8\s-1UNIX\s+1\s10 for Beginners'' (USD:1) by Kernighan, +and for an guide to the new features of this latest version, see +``Berkeley Software Architecture Manual (4.4 Edition)'' (PSD:5). +.LP +Within the area it surveys, this volume attempts to be timely, complete +and concise. Where the latter two objectives conflict, +the obvious is often left unsaid in favor of brevity. +It is intended that each program be described as it is, not as it should be. +Inevitably, this means that various sections will soon be out of date. +.LP +Commands are programs intended to be invoked directly by +the user, in contrast to subroutines, that are +intended to be called by the user's programs. +User commands are described in URM section 1. +Commands generally reside in directory +.I /bin +(for +.IR bin \|ary +programs). +Some programs also reside in +.I +/\|usr/\|bin, +.R +to save space in +.I /\|bin. +.R +These directories are searched automatically by the command interpreters. +Additional directories that may be of interest include +.I +/\|usr/\|contrib/\|bin, +.R +which has contributed software +.I +/\|usr/\|old/\|bin, +.R +which has old but sometimes still useful software and +.I +/\|usr/\|local/\|bin, +.R +which contains software local to your site. +.LP +Games have been relegated to URM section 6 and +.I +/\|usr/\|games, +.R +to keep them from contaminating +the more staid information of URM section 1. +.LP +Miscellaneous collection of information necessary for +writing in various specialized languages such as character codes, +macro packages for typesetting, etc is contained in URM section 7. +.LP +System calls are entries into the BSD kernel. +The system call interface is identical to a C language +procedure call; the equivalent C procedures are described in PRM section 2. +.LP +An assortment of subroutines is available; +they are described in PRM section 3. +The primary libraries in which they are kept are described in +.IR intro (3). +The functions are described in terms of C. +.LP +PRM section 4 discusses the characteristics of +each system ``file'' that refers to an I/O device. +The names in this section refer to the HP300 device names for the hardware, +instead of the names of the special files themselves. +.LP +The file formats and conventions (PRM section 5) +documents the structure of particular kinds of files; +for example, the form of the output of the loader and +assembler is given. Excluded are files used by only one command, +for example the assembler's intermediate files. +.LP +Commands and procedures intended for use primarily by the +system administrator are described in SMM section 8. +The files described here are almost all kept in the directory +.I /\|etc. +The system administration binaries reside in +.I +/\|sbin, +.R +and +.I +/\|usr/\|sbin. +.LP +Each section consists of independent entries of a page or so each. +The name of the entry is in the upper corners of its pages, +together with the section number. +Entries within each section are alphabetized. +The page numbers of each entry start at 1; +it is infeasible to number consecutively the pages of +a document like this that is republished in many variant forms. +.LP +All entries are based on a common format; +not all subsections always appear. +.RS +.LP +The +.I name +subsection lists the exact names of the commands and subroutines +covered under the entry and gives a short description of their purpose. +.LP +The +.IR synopsis "" +summarizes the use of the program being described. +A few conventions are used, particularly in the Commands subsection: +.LP +.RS +.B Boldface +words are considered literals, and are typed just as they appear. +.LP +Square brackets [ ] around an argument show that the argument is optional. +When an argument is given as ``name'', it always refers to a file name. +.LP +Ellipses ``.\|.\|.'' are used to show that the previous argument-prototype +may be repeated. +.LP +A final convention is used by the commands themselves. +An argument beginning with a minus sign ``\-'' usually means that it is an +option-specifying argument, even if it appears in a position where +a file name could appear. Therefore, it is unwise to have files whose +names begin with ``\-''. +.LP +.RE +The +.IR description "" +subsection discusses in detail the subject at hand. +.LP +The +.IR files "" +subsection gives the names of files that are built into the program. +.LP +A +.I +see also +.R +subsection gives pointers to related information. +.LP +A +.I diagnostics +subsection discusses the diagnostic indications that may be produced. +Messages that are intended to be self-explanatory are not listed. +.LP +The +.IR bugs "" +subsection gives known bugs and sometimes deficiencies. +Occasionally the suggested fix is also described. +.LP +.RE +At the beginning of URM, PRM, and SSM is a List of Manual Pages, +organized by section and alphabetically within each section, and a +Permuted Index derived from that List. +Within each index entry, the title of the writeup to which +it refers is followed by the appropriate section number in parentheses. +This fact is important because there is considerable +name duplication among the sections, arising principally from commands that +exist only to exercise a particular system call. +Finally, there is a list of documents on the inside back cover of each volume. +.if o .bp +\& +.EH '''' +.OH '''' +.bp +.OH '\s10Manual Pages''- % -\s0' +.EH '\s10- % -''Manual Pages\s0' +.EF '\s10\\\\*(Dt''\\\\*(Ed\s0' +.OF '\s10\\\\*(Ed''\\\\*(Dt\s0' +.nr PS 10 +.nr VS 11.5 +.LP +.ce +\s24\fBList \|of \|Manual \|Pages\fP\s0 +.nr x 0.5 +.in +\nxi +.nf +.ta \n(.lu-\nxuR +.de xx +\\$1\f3 \a \fP\\$2 +.. +.de t +.sp 1v +.ne .5i +.cs 3 +.ti -\\nxi +.ss 18 +\fB\\$2. \\$3\fP +.ss 12 +.if t .sp .5v +.cs 3 36 +.ds Ed Section \\$2 +.ds Dt \\$3 +.so \\$1 +.. +.t toc1 1 "Commands and Application Programs" +.t toc2 2 "System Calls" +.t toc3 3 "C Library Subroutines" +.t toc4 4 "Special Files" +.t toc5 5 "File Formats" +.t toc6 6 "Games" +.t toc7 7 "Miscellaneous" +.t toc8 8 "System Maintenance" +.in -\nxi +.cs 3 +.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i +.if o .bp +\& +.EH '''' +.OH '''' +.bp +\& +.OH '\s10Permuted Index''- % -\s0' +.EH '\s10- % -''Permuted Index\s0' +.ds Ed 4.4BSD +.ds Dt April \|1994 +.ce +\s24\fBPermuted \|Index\fP\s0 +.sp 2 +.nr PS 8 +.nr VS 9 +.LP +.\" backup from slotput 1, slot, 2 +.tr ~ +.nf +.cs 3 36 +.de xx +.ds s1\" +.if \w\\$2 .ds s1 ~~\" +.ds s2 ~~~\" +.ds s3\" +.if \w\\$4 .ds s3 ~~\" +.ds s4 ~~\" +.ds s5 ~~\" +.ds y \\*(s4\f3\fP\\*(s5 +.ta 6i-\w\\*(s5u +\h"3i-\w\\$1\\*(s1\\$2\\*(s2u"\\$1\\*(s1\\$2\\*(s2\\$3\\*(s3\\$4\\*y\\$5 +.. +.so ptxx +.cs 3 +.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i diff --git a/static/netbsd/man0/title.prm b/static/netbsd/man0/title.prm new file mode 100644 index 00000000..9402c08b --- /dev/null +++ b/static/netbsd/man0/title.prm @@ -0,0 +1,587 @@ +.\" $NetBSD: title.prm,v 1.4 2003/08/07 10:30:59 agc Exp $ +.\" +.\" Copyright (c) 1980, 1993, 1994 Regents of the University of California. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)title.prm 8.4 (Berkeley) 8/8/94 +.\" +.af % i +.nr LL 6.5i +.EH '''' +.OH '''' +.EF '''' +.OF '''' +\& +.sp |1.5i +.nr PS 36 +.nr VS 39 +.LP +.ft B +.ce 3 +4.4BSD +Programmer's +Reference Manual +.nr PS 24 +.nr VS 32 +.LP +.ft B +.ce 1 +(PRM) +.bp +\& +.sp |0.83i +.nr PS 14 +.nr VS 16.5 +.LP +Now in its twentieth year, the USENIX Association, +the UNIX and Advanced Computing Systems professional and technical organization, +is a not-for-profit membership association of individuals and +institutions with an interest in UNIX and UNIX-like systems, +and, by extension, C++, X windows, and other advanced tools and technologies. +.LP +USENIX and its members are dedicated to: +.IP \(bu +fostering innovation and communicating research and technological developments, +.IP \(bu +sharing ideas and experience relevant to UNIX, +UNIX-related, and advanced computing systems, and +.IP \(bu +providing a neutral forum for the exercise of critical +thought and airing of technical issues. +.LP +USENIX publishes a journal (\fBComputing Systems\fP), +a newsletter (\fI;login:\fP), +Proceedings from its frequent Conferences and Symposia, +and a Book Series. +.LP +SAGE, The Systems Administrators Guild, a Special Technical Group with +the USENIX Association, is dedicated to the advancement of system +administration as a profession. +.LP +SAGE brings together systems managers and administrators to: +.IP \(bu +propagate knowledge of good professional practice, +.IP \(bu +recruit talented individuals to the profession, +.IP \(bu +recognize individuals who attain professional excellence, +.IP \(bu +foster technical development and share solutions to technical +problems, and +.IP \(bu +communicate in an organized voice with users, management, and vendors +on system administration topics. +.bp +\& +.sp |1i +.nr PS 36 +.nr VS 39 +.LP +.ft B +.ce 3 +4.4BSD +Programmer's +Reference Manual +.nr PS 24 +.nr VS 32 +.LP +.ft B +.ce 1 +(PRM) +.sp 1i +.nr PS 24 +.nr VS 26 +.LP +.ft B +.ce 1 +Berkeley Software Distribution +.nr PS 18 +.nr VS 26 +.LP +.ft B +.ce 1 +April, 1994 +.sp 1i +.nr PS 18 +.nr VS 20 +.LP +.ft B +.ce 2 +Computer Systems Research Group +University of California at Berkeley +.sp 2.2i +.nr PS 12 +.nr VS 14.5 +.LP +.ft B +.ce 4 +A USENIX Association Book +O'Reilly & Associates, Inc. +103 Morris Street, Suite A +Sebastopol, CA 94572 +.bp +.hy 0 +.nr PS 9 +.nr VS 11 +.LP +First Printing, 1994 +.br +Second Printing, 1995 +.sp 1 +.LP +Copyright 1979, 1980, 1983, 1986, 1993, 1994 +The Regents of the University of California. All rights reserved. +.sp 1 +.LP +Other than the specific manual pages and documents listed below +as copyrighted by AT&T, +redistribution and use of this manual in source and binary forms, +with or without modification, are permitted provided that the +following conditions are met: +.IP 1) +Redistributions of this manual must retain the copyright +notices on this page, this list of conditions and the following disclaimer. +.IP 2) +Software or documentation that incorporates part of this manual must +reproduce the copyright notices on this page, this list of conditions and +the following disclaimer in the documentation and/or other materials +provided with the distribution. +.IP 3) +All advertising materials mentioning features or use of this software +must display the following acknowledgement: +``This product includes software developed by the University of +California, Berkeley and its contributors.'' +.IP 4) +Neither the name of the University nor the names of its contributors +may be used to endorse or promote products derived from this software +without specific prior written permission. +.LP +\fB\s-1THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE.\s+1\fP +.sp 1 +.LP +The Institute of Electrical and Electronics Engineers and the American +National Standards Committee X3, on Information Processing Systems have +given us permission to reprint portions of their documentation. +.sp 0.5 +.LP +In the following statement, the phrase ``this text'' refers to portions +of the system documentation. +.LP +``Portions of this text are reprinted and reproduced in +electronic form in 4.4BSD from IEEE Std 1003.1-1988, IEEE +Standard Portable Operating System Interface for Computer Environments +(POSIX), copyright 1988 by the Institute of Electrical and Electronics +Engineers, Inc. In the event of any discrepancy between these versions +and the original IEEE Standard, the original IEEE Standard is the referee +document.'' +.sp 0.5 +.LP +In the following statement, the phrase ``This material'' refers to portions +of the system documentation. +.LP +``This material is reproduced with permission from American National +Standards Committee X3, on Information Processing Systems. Computer and +Business Equipment Manufacturers Association (CBEMA), 311 First St., NW, +Suite 500, Washington, DC 20001-2178. The developmental work of +Programming Language C was completed by the X3J11 Technical Committee.'' +.sp 1 +.LP +Manual pages ptrace.2, ecvt.3, mp.3, plot.3, L-devices.5, L-dialcodes.5, +L.aliases.5, L.cmds.5, L.sys.5, USERFILE.5, dump.5, and plot.5 +are copyright 1979, AT&T Bell Laboratories, Incorporated. +Holders of \x'-1p'UNIX\v'-4p'\s-3TM\s0\v'4p'/32V, +System III, or System V software licenses are +permitted to copy these documents, or any portion of them, +as necessary for licensed use of the software, +provided this copyright notice and statement of permission +are included. +.sp 1 +.LP +The views and conclusions contained in this manual are those of the +authors and should not be interpreted as representing official policies, +either expressed or implied, of the Regents of the University of California. +.sp 1 +.LP +The 4.4BSD Daemon used on the cover is +copyright 1994 by Marshall Kirk McKusick +and is reproduced with permission. +.br +This book was printed and bound in the United States of America. +.br +Distributed by O'Reilly & Associates, Inc. +.sp 1 +.IP "[recycle logo]" 16 +This book is printed on acid-free paper with 50% recycled content, +10-13% post-consumer waste. O'Reilly & Associates is committed to +using paper with the highest recycled content available consistent +with high quality. +.LP +.sp 1 +ISBN: 1-56592-078-3 +.bp +\& +.sp |1.5i +.nr PS 24 +.nr VS 26 +.LP +.ce 1 +\fBContents\fP +.sp 1 +.nr PS 14 +.nr VS 17 +.LP +.TS +expand; +l r. +Introduction vii +List of Manual Pages ix +Permuted Index xxix +Reference Manual Sections 2, 3, 4, 5 tabbed pages +List of Documents inside back cover +.TE +.if o .bp +\& +.EH '''' +.OH '''' +.bp +.OH '\s10Introduction''- % -\s0' +.EH '\s10- % -''Introduction\s0' +.de IR +\fI\\$1\^\fR\\$2 +.. +.de RI +\fR\\$1\fI\\$2\^\fR\\$3 +.. +.ce +\fB\s24Introduction\s0\fP +.sp 2 +.nr PS 10 +.nr VS 12 +.LP +The documentation for 4.4BSD is in a format similar +to the one used for the 4.2BSD and 4.3BSD manuals. +It is divided into three sets; each set consists of one or more volumes. +The abbreviations for the volume names are listed in square brackets; +the abbreviations for the manual sections are listed in parenthesis. +.DS +I. User's Documents + User's Reference Manual [URM] + Commands (1) + Games (6) + Macro packages and language conventions (7) + User's Supplementary Documents [USD] + Getting Started + Basic Utilities + Communicating with the World + Text Editing + Document Preparation + Amusements + +II. Programmer's Documents + Programmer's Reference Manual [PRM] + System calls (2) + Subroutines (3) + Special files (4) + File formats and conventions (5) + Programmer's Supplementary Documents [PSD] + Documents of Historic Interest + Languages in common use + Programming Tools + Programming Libraries + General Reference + +III. System Manager's Manual [SMM] + Maintenance commands (8) + System Installation and Administration +.DE +.LP +References to individual documents are given as ``volume:document'', +thus USD:1 refers to the first document in the ``User's Supplementary +Documents''. +References to manual pages are given as ``\fIname\fP(section)'' thus +.IR sh (1) +refers to the shell manual entry in section 1. +.LP +The manual pages give descriptions of the features of the +4.4BSD system, as developed at the University of California at Berkeley. +They do not attempt to provide perspective or tutorial information about the +4.4BSD operating system, its facilities, or its implementation. +Various documents on those topics are contained in the +``\s-1UNIX\s+1 User's Supplementary Documents'' (USD), the +``\s-1UNIX\s+1 Programmer's Supplementary Documents'' (PSD), +and ``\s-1UNIX\s+1 System Manager's Manual'' (SMM). +In particular, for an overview see ``The \s-1UNIX\s+1 Time-Sharing System'' (PSD:1) +by Ritchie and Thompson; for a tutorial see +``\s8\s-1UNIX\s+1\s10 for Beginners'' (USD:1) by Kernighan, +and for an guide to the new features of this latest version, see +``Berkeley Software Architecture Manual (4.4 Edition)'' (PSD:5). +.LP +Within the area it surveys, this volume attempts to be timely, complete +and concise. Where the latter two objectives conflict, +the obvious is often left unsaid in favor of brevity. +It is intended that each program be described as it is, not as it should be. +Inevitably, this means that various sections will soon be out of date. +.LP +Commands are programs intended to be invoked directly by +the user, in contrast to subroutines, that are +intended to be called by the user's programs. +User commands are described in URM section 1. +Commands generally reside in directory +.I /bin +(for +.IR bin \|ary +programs). +Some programs also reside in +.I +/\|usr/\|bin, +.R +to save space in +.I /\|bin. +.R +These directories are searched automatically by the command interpreters. +Additional directories that may be of interest include +.I +/\|usr/\|contrib/\|bin, +.R +which has contributed software +.I +/\|usr/\|old/\|bin, +.R +which has old but sometimes still useful software and +.I +/\|usr/\|local/\|bin, +.R +which contains software local to your site. +.LP +Games have been relegated to URM section 6 and +.I +/\|usr/\|games, +.R +to keep them from contaminating +the more staid information of URM section 1. +.LP +Miscellaneous collection of information necessary for +writing in various specialized languages such as character codes, +macro packages for typesetting, etc is contained in URM section 7. +.LP +System calls are entries into the BSD kernel. +The system call interface is identical to a C language +procedure call; the equivalent C procedures are described in PRM section 2. +.LP +An assortment of subroutines is available; +they are described in PRM section 3. +The primary libraries in which they are kept are described in +.IR intro (3). +The functions are described in terms of C. +.LP +PRM section 4 discusses the characteristics of +each system ``file'' that refers to an I/O device. +The names in this section refer to the HP300 device names for the hardware, +instead of the names of the special files themselves. +.LP +The file formats and conventions (PRM section 5) +documents the structure of particular kinds of files; +for example, the form of the output of the loader and +assembler is given. Excluded are files used by only one command, +for example the assembler's intermediate files. +.LP +Commands and procedures intended for use primarily by the +system administrator are described in SMM section 8. +The files described here are almost all kept in the directory +.I /\|etc. +The system administration binaries reside in +.I +/\|sbin, +.R +and +.I +/\|usr/\|sbin. +.LP +Each section consists of independent entries of a page or so each. +The name of the entry is in the upper corners of its pages, +together with the section number. +Entries within each section are alphabetized. +The page numbers of each entry start at 1; +it is infeasible to number consecutively the pages of +a document like this that is republished in many variant forms. +.LP +All entries are based on a common format; +not all subsections always appear. +.RS +.LP +The +.I name +subsection lists the exact names of the commands and subroutines +covered under the entry and gives a short description of their purpose. +.LP +The +.IR synopsis "" +summarizes the use of the program being described. +A few conventions are used, particularly in the Commands subsection: +.LP +.RS +.B Boldface +words are considered literals, and are typed just as they appear. +.LP +Square brackets [ ] around an argument show that the argument is optional. +When an argument is given as ``name'', it always refers to a file name. +.LP +Ellipses ``.\|.\|.'' are used to show that the previous argument-prototype +may be repeated. +.LP +A final convention is used by the commands themselves. +An argument beginning with a minus sign ``\-'' usually means that it is an +option-specifying argument, even if it appears in a position where +a file name could appear. Therefore, it is unwise to have files whose +names begin with ``\-''. +.LP +.RE +The +.IR description "" +subsection discusses in detail the subject at hand. +.LP +The +.IR files "" +subsection gives the names of files that are built into the program. +.LP +A +.I +see also +.R +subsection gives pointers to related information. +.LP +A +.I diagnostics +subsection discusses the diagnostic indications that may be produced. +Messages that are intended to be self-explanatory are not listed. +.LP +The +.IR bugs "" +subsection gives known bugs and sometimes deficiencies. +Occasionally the suggested fix is also described. +.LP +.RE +At the beginning of URM, PRM, and SSM is a List of Manual Pages, +organized by section and alphabetically within each section, and a +Permuted Index derived from that List. +Within each index entry, the title of the writeup to which +it refers is followed by the appropriate section number in parentheses. +This fact is important because there is considerable +name duplication among the sections, arising principally from commands that +exist only to exercise a particular system call. +Finally, there is a list of documents on the inside back cover of each volume. +.if o .bp +\& +.EH '''' +.OH '''' +.bp +.OH '\s10Manual Pages''- % -\s0' +.EH '\s10- % -''Manual Pages\s0' +.EF '\s10\\\\*(Dt''\\\\*(Ed\s0' +.OF '\s10\\\\*(Ed''\\\\*(Dt\s0' +.nr PS 10 +.nr VS 12 +.LP +.ce +\s24\fBList \|of \|Manual \|Pages\fP\s0 +.nr x 0.5 +.in +\nxi +.nf +.ta \n(.lu-\nxuR +.de xx +\\$1\f3 \a \fP\\$2 +.. +.de t +.sp 1v +.ne .5i +.cs 3 +.ti -\\nxi +.ss 18 +\fB\\$2. \\$3\fP +.ss 12 +.if t .sp .5v +.cs 3 36 +.ds Ed Section \\$2 +.ds Dt \\$3 +.so \\$1 +.. +.t toc1 1 "Commands and Application Programs" +.t toc2 2 "System Calls" +.t toc3 3 "C Library Subroutines" +.t toc4 4 "Special Files" +.t toc5 5 "File Formats" +.t toc6 6 "Games" +.t toc7 7 "Miscellaneous" +.t toc8 8 "System Maintenance" +.in -\nxi +.cs 3 +.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i +.if o .bp +\& +.EH '''' +.OH '''' +.bp +\& +.OH '\s10Permuted Index''- % -\s0' +.EH '\s10- % -''Permuted Index\s0' +.ds Ed 4.4BSD +.ds Dt April \|1994 +.ce +\s24\fBPermuted \|Index\fP\s0 +.sp 2 +.nr PS 8 +.nr VS 9 +.LP +.\" backup from slotput 1, slot, 2 +.tr ~ +.nf +.cs 3 36 +.de xx +.ds s1\" +.if \w\\$2 .ds s1 ~~\" +.ds s2 ~~~\" +.ds s3\" +.if \w\\$4 .ds s3 ~~\" +.ds s4 ~~\" +.ds s5 ~~\" +.ds y \\*(s4\f3\fP\\*(s5 +.ta 6i-\w\\*(s5u +\h"3i-\w\\$1\\*(s1\\$2\\*(s2u"\\$1\\*(s1\\$2\\*(s2\\$3\\*(s3\\$4\\*y\\$5 +.. +.so ptxx +.cs 3 +.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i diff --git a/static/netbsd/man0/title.urm b/static/netbsd/man0/title.urm new file mode 100644 index 00000000..2c38fbe0 --- /dev/null +++ b/static/netbsd/man0/title.urm @@ -0,0 +1,2018 @@ +.\" $NetBSD: title.urm,v 1.10 2023/05/04 11:30:25 uwe Exp $ +.\" +.\" Copyright (c) 1980, 1993, 1994 Regents of the University of California. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)title.urm 8.13 (Berkeley) 8/8/94 +.\" +.af % i +.nr LL 6.5i +.EH '''' +.OH '''' +.EF '''' +.OF '''' +\& +.sp |1.5i +.nr PS 36 +.nr VS 39 +.LP +.ft B +.ce 2 +4.4BSD +User's Reference Manual +.nr PS 24 +.nr VS 32 +.LP +.ft B +.ce 1 +(URM) +.bp +\& +.sp |0.83i +.nr PS 14 +.nr VS 16.5 +.LP +Now in its twentieth year, the USENIX Association, +the UNIX and Advanced Computing Systems professional and technical organization, +is a not-for-profit membership association of individuals and +institutions with an interest in UNIX and UNIX-like systems, +and, by extension, C++, X windows, and other advanced tools and technologies. +.LP +USENIX and its members are dedicated to: +.IP \(bu +fostering innovation and communicating research and technological developments, +.IP \(bu +sharing ideas and experience relevant to UNIX, +UNIX-related, and advanced computing systems, and +.IP \(bu +providing a neutral forum for the exercise of critical +thought and airing of technical issues. +.LP +USENIX publishes a journal (\fBComputing Systems\fP), +a newsletter (\fI;login:\fP), +Proceedings from its frequent Conferences and Symposia, +and a Book Series. +.LP +SAGE, The Systems Administrators Guild, a Special Technical Group with +the USENIX Association, is dedicated to the advancement of system +administration as a profession. +.LP +SAGE brings together systems managers and administrators to: +.IP \(bu +propagate knowledge of good professional practice, +.IP \(bu +recruit talented individuals to the profession, +.IP \(bu +recognize individuals who attain professional excellence, +.IP \(bu +foster technical development and share solutions to technical +problems, and +.IP \(bu +communicate in an organized voice with users, management, and vendors +on system administration topics. +.bp +\& +.sp |1i +.nr PS 36 +.nr VS 39 +.LP +.ft B +.ce 3 +4.4BSD +User's Reference Manual +.nr PS 24 +.nr VS 32 +.LP +.ft B +.ce 1 +(URM) +.sp 1i +.nr PS 24 +.nr VS 26 +.LP +.ft B +.ce 1 +Berkeley Software Distribution +.nr PS 18 +.nr VS 26 +.LP +.ft B +.ce 1 +April, 1994 +.sp 1i +.nr PS 18 +.nr VS 20 +.LP +.ft B +.ce 2 +Computer Systems Research Group +University of California at Berkeley +.sp 2.75i +.nr PS 12 +.nr VS 14.5 +.LP +.ft B +.ce 4 +A USENIX Association Book +O'Reilly & Associates, Inc. +103 Morris Street, Suite A +Sebastopol, CA 94572 +.bp +.hy 0 +.nr PS 9 +.nr VS 11 +.LP +First Printing, 1994 +.br +Second Printing, 1995 +.sp 1 +.LP +Copyright 1979, 1980, 1983, 1986, 1993, 1994 +The Regents of the University of California. All rights reserved. +.sp 1 +.LP +Other than the specific manual pages and documents listed below +as copyrighted by AT&T, +redistribution and use of this manual in source and binary forms, +with or without modification, are permitted provided that the +following conditions are met: +.IP 1) +Redistributions of this manual must retain the copyright +notices on this page, this list of conditions and the following disclaimer. +.IP 2) +Software or documentation that incorporates part of this manual must +reproduce the copyright notices on this page, this list of conditions and +the following disclaimer in the documentation and/or other materials +provided with the distribution. +.IP 3) +All advertising materials mentioning features or use of this software +must display the following acknowledgement: +``This product includes software developed by the University of +California, Berkeley and its contributors.'' +.IP 4) +Neither the name of the University nor the names of its contributors +may be used to endorse or promote products derived from this software +without specific prior written permission. +.LP +\fB\s-1THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE.\s+1\fP +.sp 1 +.LP +The Institute of Electrical and Electronics Engineers and the American +National Standards Committee X3, on Information Processing Systems have +given us permission to reprint portions of their documentation. +.sp 0.5 +.LP +In the following statement, the phrase ``this text'' refers to portions +of the system documentation. +.LP +``Portions of this text are reprinted and reproduced in +electronic form in 4.4BSD from IEEE Std 1003.1-1988, IEEE +Standard Portable Operating System Interface for Computer Environments +(POSIX), copyright 1988 by the Institute of Electrical and Electronics +Engineers, Inc. In the event of any discrepancy between these versions +and the original IEEE Standard, the original IEEE Standard is the referee +document.'' +.sp 0.5 +.LP +In the following statement, the phrase ``This material'' refers to portions +of the system documentation. +.LP +``This material is reproduced with permission from American National +Standards Committee X3, on Information Processing Systems. Computer and +Business Equipment Manufacturers Association (CBEMA), 311 First St., NW, +Suite 500, Washington, DC 20001-2178. The developmental work of +Programming Language C was completed by the X3J11 Technical Committee.'' +.sp 1 +.LP +Manual pages adb.1, bc.1, compact.1, crypt.1, dc.1, deroff.1, +expr.1, graph.1, ld.1, learn.1, m4.1, plot.1, ptx.1, spell.1, +spline.1, struct.1, tar.1, units.1, uucp.1, uux.1, ching.6, eqnchar.7, +man.7, ms.7, and term.7 +are copyright 1979, AT&T Bell Laboratories, Incorporated. +Holders of \x'-1p'UNIX\v'-4p'\s-3TM\s0\v'4p'/32V, +System III, or System V software licenses are +permitted to copy these documents, or any portion of them, +as necessary for licensed use of the software, +provided this copyright notice and statement of permission +are included. +.sp 1 +.LP +The 4.4BSD Daemon used on the cover is +copyright 1994 by Marshall Kirk McKusick +and is reproduced with permission. +.br +The views and conclusions contained in this manual are those of the +authors and should not be interpreted as representing official policies, +either expressed or implied, of the Regents of the University of California. +.sp 1 +.LP +This book was printed and bound in the United States of America. +.br +Distributed by O'Reilly & Associates, Inc. +.sp 1 +.IP "[recycle logo]" 16 +This book is printed on acid-free paper with 50% recycled content, +10-13% post-consumer waste. O'Reilly & Associates is committed to +using paper with the highest recycled content available consistent +with high quality. +.LP +.sp 1 +ISBN: 1-56592-075-9 +.bp +\& +.sp |1.5i +.nr PS 24 +.nr VS 26 +.LP +.ce 1 +\fBContents\fP +.sp 1 +.nr PS 14 +.nr VS 17 +.LP +.TS +expand; +l r. +The Computer Systems Research Group, 1979\-1993 vii +Prefaces xi +Introduction xvii +List of Manual Pages xxiii +Permuted Index xli +Reference Manual Sections 1, 6, 7 tabbed pages +List of Documents inside back cover +.TE +.if o .bp +\& +.bp +.\" +.\" The contributor list below is derived from the file that resides in +.\" vangogh:~admin/contrib/contrib: +.\" +.\" @(#)contrib 5.55 (Berkeley) 4/18/94 +.\" +.\" This file should not be editted, rather the original contrib file +.\" should be used to recrete this one following the directions at its top. +.\" Contrib starts here and continues to the comment `END OF CONTRIB'. +.\" +\& +.sp |1i +.ps 24 +.vs 27 +.ce 2 +\fBThe Computer Systems Research Group +1979 \- 1993\fP +.sp 1.5 +.nr PS 11 +.nr VS 12 +.LP +.nf +.in +0.5i +\fBCSRG Technical Staff\fP +.sp 1 +.in +1i +Jim Bloom +Keith Bostic +Ralph Campbell +Kevin Dunlap +William N. Joy +Michael J. Karels +Samuel J. Leffler +Marshall Kirk McKusick +Miriam Amos Nihart +Keith Sklower +Marc Teitelbaum +Michael Toy +.in -1i +.sp 3 +\fBCSRG Administration and Support\fP +.sp 1 +.in +1i +Robert Fabry +Domenico Ferrari +Susan L. Graham +Bob Henry +Anne Hughes +Bob Kridle +David Mosher +Pauline Schwartz +Mark Seiden +Jean Wood +.in -1i +.fi +.sp 3 +\fBOrganizations that funded the CSRG with grants, +gifts, personnel, and/or hardware.\fP +.sp 1 +.nf +.in +1i +Center for Advanced Aviation System Development, The MITRE Corp. +Compaq Computer Corporation +Cray Research Inc. +Department of Defense Advance Research Projects Agency (DARPA) +Digital Equipment Corporation +The Hewlett-Packard Company +NASA Ames Research Center +The National Science Foundation +The Open Software Foundation +UUNET Technologies Inc. +.in -1.5i +.fi +.OH '\s10CSRG, 1979 \- 1993''- % -\s0' +.EH '\s10- % -''CSRG, 1979 \- 1993\s0' +.bp +.nr PS 10 +.nr VS 11 +.LP +\fBThe following are people and organizations that provided a +large subsystem for the BSD releases.\fP +.sp +.TS +l l. +ANSI C library Chris Torek +ANSI C prototypes Donn Seeley and John Kohl +Autoconfiguration Robert Elz +C library documentation American National Standards Committee X3 +CCI 6/32 support Computer Consoles Inc. +DEC 3000/5000 support Ralph Campbell +Disklabels Symmetric Computer Systems +Documentation Cynthia Livingston and The USENIX Association +Franz Lisp Richard Fateman, John Foderaro, Keith Sklower, Kevin Layer +GCC, GDB The Free Software Foundation +Groff James Clark (The FSF) +HP300 support Jeff Forys, Mike Hibler, Jay Lepreau, Donn Seeley and the Systems + Programming Group; University of Utah Computer Science Department +ISODE Marshall Rose +Ingres Mike Stonebraker, Gene Wong, and the Berkeley Ingres Research Group +Intel 386/486 support Bill Jolitz and TeleMuse +Job control Jim Kulp +Kerberos Project Athena and MIT +Kernel support Bill Shannon and Sun Microsystems Inc. +LFS Margo Seltzer, Mendel Rosenblum, Carl Staelin +MIPS support Trent Hein +Math library K.C. Ng, Zhishun Alex Liu, S. McDonald, P. Tang and W. Kahan +NFS Rick Macklem +NFS automounter Jan-Simon Pendry +Network device drivers Micom-Interlan and Excelan +Omron Luna support Akito Fujita and Shigeto Mochida +Quotas Robert Elz +RPC support Sun Microsystems Inc. +Shared library support Rob Gingell and Sun Microsystems Inc. +Sony News 3400 support Kazumasa Utashiro +Sparc I/II support Computer Systems Engineering Group, Lawrence Berkeley Laboratory +Stackable file systems John Heidemann +Stdio Chris Torek +System documentation The Institute of Electrical and Electronics Engineers, Inc. +TCP/IP Rob Gurwitz and Bolt Beranek and Newman Inc. +Timezone support Arthur David Olson +Transport/Network OSI layers IBM Corporation and the University of Wisconsin +Kernel XNS assistance William Nesheim, J. Q. Johnson, Chris Torek, and James O'Toole +User level XNS Cornell University +VAX 3000 support Mt. Xinu and Tom Ferrin +VAX BI support Chris Torek +VAX device support Digital Equipment Corporation and Helge Skrivervik +Versatec printer/plotter support University of Toronto +Virtual memory implementation Avadis Tevanian, Jr., Michael Wayne Young, + and the Carnegie-Mellon University Mach project +X25 University of British Columbia +.TE +.bp +.LP +\fBThe following are people and organizations that provided a specific +item, program, library routine or program maintenance for the BSD system. +(Their contribution may not be part of the final 4.4BSD release.)\fP +.nr PS 9 +.nr VS 10 +.ps 9 +.vs 10 +.TS +l l. +386 device drivers Carnegie-Mellon University Mach project +386 device drivers Don Ahn, Sean Fagan and Tim Tucker +HCX device drivers Harris Corporation +Kernel enhancements Robert Elz, Peter Ivanov, Ian Johnstone, Piers Lauder, + John Lions, Tim Long, Chris Maltby, Greg Rose and John Wainwright +ISO-9660 filesystem Pace Willisson, Atsushi Murai +.TE +.sp -0.4 +.TS +l l l l. +adventure(6) Don Woods log(3) Peter McIlroy +adventure(6) Jim Gillogly look(1) David Hitz +adventure(6) Will Crowther ls(1) Elan Amir +apply(1) Rob Pike ls(1) Michael Fischbein +apply(1) Jan-Simon Pendry lsearch(3) Roger L. Snyder +ar(1) Hugh A. Smith m4(1) Ozan Yigit +arithmetic(6) Eamonn McManus mail(1) Kurt Shoens +arp(8) Sun Microsystems Inc. make(1) Adam de Boor +at(1) Steve Wall me(7) Eric Allman +atc(6) Ed James mergesort(3) Peter McIlroy +awk(1) Arnold Robbins mh(1) Marshall Rose +awk(1) David Trueman mh(1) The Rand Corporation +backgammon(6) Alan Char mille(6) Ken Arnold +banner(1) Mark Horton mknod(8) Kevin Fall +battlestar(6) David Riggle monop(6) Ken Arnold +bcd(6) Steve Hayman more(1) Eric Shienbrood +bdes(1) Matt Bishop more(1) Mark Nudelman +berknet(1) Eric Schmidt mountd(8) Herb Hasler +bib(1) Dain Samples mprof(1) Ben Zorn +bib(1) Gary M. Levin msgs(1) David Wasley +bib(1) Timothy A. Budd multicast Stephen Deering +bitstring(3) Paul Vixie mv(1) Ken Smith +boggle(6) Barry Brachman named/bind(8) Douglas Terry +bpf(4) Steven McCanne named/bind(8) Kevin Dunlap +btree(3) Mike Olson news(1) Rick Adams (and a cast of thousands) +byte-range locking Scooter Morris nm(1) Hans Huebner +caesar(6) John Eldridge pascal(1) Kirk McKusick +caesar(6) Stan King pascal(1) Peter Kessler +cal(1) Kim Letkeman paste(1) Adam S. Moskowitz +cat(1) Kevin Fall patch(1) Larry Wall +chess(6) Stuart Cracraft (The FSF) pax(1) Keith Muller +ching(6) Guy Harris phantasia(6) C. Robertson +cksum(1) James W. Williams phantasia(6) Edward A. Estes +clri(8) Rich $alz ping(8) Mike Muuss +col(1) Michael Rendell pom(6) Keith E. Brandt +comm(1) Case Larsen pr(1) Keith Muller +compact(1) Colin L. McMaster primes(6) Landon Curt Noll +compress(1) James A. Woods qsort(3) Doug McIlroy +compress(1) Joseph Orost qsort(3) Earl Cohen +compress(1) Spencer Thomas qsort(3) Jon Bentley +courier(1) Eric Cooper quad(3) Chris Torek +cp(1) David Hitz quiz(6) Jim R. Oldroyd +cpio(1) AT&T quiz(6) Keith Gabryelski +crypt(3) Tom Truscott radixsort(3) Dan Bernstein +csh(1) Christos Zoulas radixsort(3) Peter McIlroy +csh(1) Len Shar rain(6) Eric P. Scott +curses(3) Elan Amir ranlib(1) Hugh A. Smith +curses(3) Ken Arnold rcs(1) Walter F. Tichy +cut(1) Adam S. Moskowitz rdist(1) Michael Cooper +cut(1) Marciano Pitargue regex(3) Henry Spencer +dbx(1) Mark Linton robots(6) Ken Arnold +dd(1) Keith Muller rogue(6) Timothy C. Stoehr +dd(1) Lance Visser rs(1) John Kunze +des(1) Jim Gillogly sail(6) David Riggle +des(1) Phil Karn sail(6) Edward Wang +des(1) Richard Outerbridge sccs(1) Eric Allman +dipress(1) Xerox Corporation scsiformat(1) Lawrence Berkeley Laboratory +disklabel(8) Symmetric Computer Systems sdb(1) Howard Katseff +du(1) Chris Newcomb sed(1) Diomidis Spinellis +dungeon(6) R.M. Supnik sendmail(8) Eric Allman +ed(1) Rodney Ruddock setmode(3) Dave Borman +emacs(1) Richard Stallman sh(1) Kenneth Almquist +erf(3) Peter McIlroy, K.C. Ng slattach(8) Rick Adams +error(1) Robert R. Henry slip(8) Rick Adams +ex(1) Mark Horton spms(1) Peter J. Nicklin +factor(6) Landon Curt Noll strtod(3) David M. Gay +file(1) Ian Darwin swab(3) Jeffrey Mogul +find(1) Cimarron Taylor sysconf(3) Sean Eric Fagan +finger(1) Tony Nardo sysline(1) J.K. Foderaro +fish(6) Muffy Barkocy syslog(3) Eric Allman +fmt(1) Kurt Shoens systat(1) Bill Reeves +fnmatch(3) Guido van Rossum systat(1) Robert Elz +fold(1) Kevin Ruddy tail(1) Edward Sze-Tyan Wang +fortune(6) Ken Arnold talk(1) Clem Cole +fpr(1) Robert Corbett talk(1) Kipp Hickman +fsdb(8) Computer Consoles Inc. talk(1) Peter Moore +fsplit(1) Asa Romberger telnet(1) Dave Borman +fsplit(1) Jerry Berkman telnet(1) Paul Borman +gcc/groff integration UUNET Technologies, Inc. termcap(5) John A. Kunze +gcore(1) Eric Cooper termcap(5) Mark Horton +getcap(3) Casey Leedom test(1) Kenneth Almquist +glob(3) Guido van Rossum tetris(6) Chris Torek +gprof(1) Peter Kessler tetris(6) Darren F. Provine +gprof(1) Robert R. Henry timed(8) Riccardo Gusella +hack(6) Andries Brouwer (and a cast of thousands) timed(8) Stefano Zatti +hangman(6) Ken Arnold tn3270(1) Gregory Minshall +hash(3) Margo Seltzer tr(1) Igor Belchinskiy +heapsort(3) Elmer Yglesias traceroute(8) Van Jacobson +heapsort(3) Kevin Lew trek(6) Eric Allman +heapsort(3) Ronnie Kon tset(1) Eric Allman +hunt(6) Conrad Huang tsort(1) Michael Rendell +hunt(6) Greg Couch unifdef(1) Dave Yost +icon(1) Bill Mitchell uniq(1) Case Larsen +icon(1) Ralph Griswold uucpd(8) Rick Adams +indent(1) David Willcox uudecode(1) Mark Horton +indent(1) Eric Schmidt uuencode(1) Mark Horton +indent(1) James Gosling uuq(1) Lou Salkind +indent(1) Sun Microsystems uuq(1) Rick Adams +init(1) Donn Seeley uusnap(8) Randy King +j0(3) Sun Microsystems, Inc. uusnap(8) Rick Adams +j1(3) Sun Microsystems, Inc. vacation(1) Eric Allman +jn(3) Sun Microsystems, Inc. vi(1) Steve Kirkendall +join(1) David Goodenough which(1) Peter Kessler +join(1) Michiro Hikida who(1) Michael Fischbein +join(1) Steve Hayman window(1) Edward Wang +jot(1) John Kunze worm(6) Michael Toy +jove(1) Jonathon Payne worms(6) Eric P. Scott +kermit(1) Columbia University write(1) Craig Leres +kvm(3) Peter Shipley write(1) Jef Poskanzer +kvm(3) Steven McCanne wump(6) Dave Taylor +lam(1) John Kunze X25/Ethernet Univ. of Erlangen-Nuremberg +larn(6) Noah Morgan X25/LLC2 Dirk Husemann +lastcomm(1) Len Edmondson xargs(1) John B. Roll Jr. +lex(1) Vern Paxson xneko(6) Masayuki Koba +libm(3) Peter McIlroy XNSrouted(1) Bill Nesheim +libm(3) UUNET Technologies, Inc. xroach(6) J.T. Anderson +locate(1) James A. Woods yacc(1) Robert Paul Corbett +lock(1) Bob Toxen +.TE +.\" +.\" END OF CONTRIB: Contrib ends here. +.\" +.if o .bp +\& +.EH '''' +.OH '''' +.bp +.OH '\s10Preface''- % -\s0' +.EH '\s10- % -''Preface\s0' +.nr PS 10 +.nr VS 12 +\& +.sp |1.5i +.EQ +delim $$ +.EN +.LP +.ce +\fB\s24Preface\s0\fP +.sp 3 +.NH 1 +Introduction +.PP +The major new facilities available in the 4.4BSD release are +a new virtual memory system, +the addition of ISO/OSI networking support, +a new virtual filesystem interface supporting filesystem stacking, +a freely redistributable implementation of NFS, +a log-structured filesystem, +enhancement of the local filesystems to support +files and filesystems that are up to $2 sup 63$ bytes in size, +enhanced security and system management support, +and the conversion to and addition of the IEEE Std1003.1 (``POSIX'') +facilities and many of the IEEE Std1003.2 facilities. +In addition, many new utilities and additions have been made to the C-library. +The kernel sources have been reorganized to collect all machine-dependent +files for each architecture under one directory, +and most of the machine-independent code is now free of code +conditional on specific machines. +The user structure and process structure have been reorganized +to eliminate the statically-mapped user structure and to make most +of the process resources shareable by multiple processes. +The system and include files have been converted to be compatible +with ANSI C, including function prototypes for most of the exported +functions. +There are numerous other changes throughout the system. +.NH 1 +Changes in the Kernel +.PP +This release includes several important structural kernel changes. +The kernel uses a new internal system call convention; +the use of global (``u-dot'') variables for parameters and error returns +has been eliminated, +and interrupted system calls no longer abort using non-local goto's (longjmp's). +A new sleep interface separates signal handling from scheduling priority, +returning characteristic errors to abort or restart the current system call. +This sleep call also passes a string describing the process state, +which is used by the ps(1) program. +The old sleep interface can be used only for non-interruptible sleeps. +.PP +Many data structures that were previously statically allocated +are now allocated dynamically. +These structures include mount entries, file entries, +user open file descriptors, the process entries, the vnode table, +the name cache, and the quota structures. +.PP +The 4.4BSD distribution adds support for several new architectures including +SPARC-based Sparcstations 1 and 2, +MIPS-based Decstation 3100 and 5000 and Sony NEWS, +68000-based Hewlett-Packard 9000/300 and Omron Luna, and +386-based Personal Computers. +Both the HP300 and SPARC ports feature the ability to run binaries +built for the native operating system (HP-UX or SunOS) by emulating +their system calls. +Though this native operating system compatibility was provided by the +developers as needed for their purposes and is by no means complete, +it is complete enough to run several non-trivial applications including +those that require HP-UX or SunOS shared libraries. +For example, the vendor supplied X11 server and windowing environment +can be used on both the HP300 and SPARC. +.NH 2 +Virtual memory changes +.PP +The new virtual memory implementation is derived from the MACH +operating system developed at Carnegie-Mellon, +and was ported to the BSD kernel at the University of Utah. +The MACH virtual memory system call interface has been replaced with the +``mmap''-based interface described in the +``Berkeley Software Architecture Manual (4.4 Edition)'' +(see the UNIX Programmer's Manual, +Supplementary Documents, PSD:5). +The interface is similar to the interfaces shipped +by several commercial vendors such as Sun, USL, and Convex Computer Corp. +The integration of the new virtual memory is functionally complete, +but, like most MACH-based virtual memory systems, +still has serious performance problems under heavy memory load. +.NH 2 +Networking additions and changes +.PP +The ISO/OSI Networking consists of a kernel implementation of +transport class 4 (TP-4), +connectionless networking protocol (CLNP), +and 802.3-based link-level support (hardware-compatible with Ethernet*). +.\" +.\" ditroff screws up the environment for footnote. This restores it. +.\" +.ev 1 +.ps 8 +.vs 9 +.ev +.\" end of ditroff fix +.FS +*Ethernet is a trademark of the Xerox Corporation. +.FE +We also include support for ISO Connection-Oriented Network Service, +X.25, and TP-0. +The session and presentation layers are provided outside +the kernel by the ISO development environment (ISODE). +Included in this development environment are file +transfer and management (FTAM), virtual terminals (VT), +a directory services implementation (X.500), and miscellaneous other utilities. +.PP +Several important enhancements have been added to the TCP/IP +protocols including TCP header prediction and +serial line IP (SLIP) with header compression. +The routing implementation has been completely rewritten +to use a hierarchical routing tree with a mask per route +to support the arbitrary levels of routing found in the ISO protocols. +The routing table also stores and caches route characteristics +to speed the adaptation of the throughput and congestion avoidance +algorithms. +.NH 2 +Additions and changes to filesystems +.PP +The 4.4BSD distribution contains most of the interfaces +specified in the IEEE Std1003.1 system interface standard. +Filesystem additions include IEEE Std1003.1 FIFOs, +byte-range file locking, and saved user and group identifiers. +.PP +A new virtual filesystem interface has been added to the +kernel to support multiple filesystems. +In comparison with other interfaces, +the Berkeley interface has been structured for more efficient support +of filesystems that maintain state (such as the local filesystem). +The interface has been extended with support for stackable +filesystems done at UCLA. +These extensions allow for filesystems to be layered on top of each +other and allow new vnode operations to be added without requiring +changes to existing filesystem implementations. +For example, the umap filesystem +is used to mount a sub-tree of an existing filesystem +that uses a different set of uids and gids than the local system. +Such a filesystem could be mounted from a remote site via NFS or it +could be a filesystem on removable media brought from some foreign +location that uses a different password file. +.PP +In addition to the local ``fast filesystem,'' +we have added an implementation of the network filesystem (NFS) +that fully interoperates with the NFS shipped by Sun and its licensees. +Because our NFS implementation was implemented using only the +publicly available NFS specification, +it does not require a license from Sun to use in source or binary form. +By default it runs over UDP to be compatible with Sun's implementation. +However, it can be configured on a per-mount basis to run over TCP. +Using TCP allows it to be used quickly and efficiently through +gateways and over long-haul networks. +Using an extended protocol, it supports Leases to allow a limited +callback mechanism that greatly reduces the network traffic necessary +to maintain cache consistency between the server and its clients. +.PP +A new log-structured filesystem has been added that provides +near disk-speed output and fast crash recovery. +It is still experimental in the 4.4BSD release, +so we do not recommend it for production use. +We have also added a memory-based filesystem that runs in +pageable memory, allowing large temporary filesystems without +requiring dedicated physical memory. +.PP +The local ``fast filesystem'' has been enhanced to do +clustering which allows large pieces of files to be +allocated contiguously resulting in near doubling +of filesystem throughput. +The filesystem interface has been extended to allow +files and filesystems to grow to $2 sup 63$ bytes in size. +The quota system has been rewritten to support both +user and group quotas (simultaneously if desired). +Quota expiration is based on time rather than +the previous metric of number of logins over quota. +This change makes quotas more useful on fileservers +onto which users seldom log in. +.PP +The system security has been greatly enhanced by the +addition of additional file flags that permit a file to be +marked as immutable or append only. +Once set, these flags can only be cleared by the super-user +when the system is running single user. +To protect against indiscriminate reading or writing of kernel +memory, all writing and most reading of kernel data structures +must be done using a new ``sysctl'' interface. +The information to be accessed is described through an extensible +``Management Information Base'' (MIB). +.EQ +delim off +.EN +.NH 2 +POSIX terminal driver changes +.PP +The biggest area of change is a new terminal driver. +The terminal driver is similar to the System V terminal driver +with the addition of the necessary extensions to get the +functionality previously available in the 4.3BSD terminal driver. +4.4BSD also adds the IEEE Std1003.1 job control interface, +which is similar to the 4.3BSD job control interface, +but adds a security model that was missing in the +4.3BSD job control implementation. +A new system call, \fIsetsid\fP, +creates a job-control session consisting of a single process +group with one member, the caller, that becomes a session leader. +Only a session leader may acquire a controlling terminal. +This is done explicitly via a \s-1TIOCSCTTY\s+1 \fIioctl\fP call, +not implicitly by an \fIopen\fP call. +The call fails if the terminal is in use. +.PP +For backward compatibility, +both the old \fIioctl\fP +calls and old options to \fIstty\fP +are emulated. +.NH 1 +Changes to the utilities +.PP +There are several new tools and utilities included in this release. +A new version of ``make'' allows much-simplified makefiles for the +system software and allows compilation for multiple architectures +from the same source tree (which may be mounted read-only). +Notable additions to the libraries include functions to traverse a +filesystem hierarchy, database interfaces to btree and hashing functions, +a new, fast implementation of stdio, and a radix sort function. +The additions to the utility suite include greatly enhanced versions of +programs that display system status information, implementations of +various traditional tools described in the IEEE Std1003.2 standard, +and many others. +.PP +We have been tracking the IEEE Std1003.2 shell and utility work +and have included prototypes of many of the proposed utilities. +Most of the traditional utilities have been replaced +with implementations conformant to the POSIX standards. +Almost the entire manual suite has been rewritten to +reflect the POSIX defined interfaces. +In rewriting this software, we have generally +been rewarded with significant performance improvements. +Most of the libraries and header files have been converted +to be compliant with ANSI C. +The system libraries and utilities all compile +with either ANSI or traditional C. +.PP +The Kerberos (version 4) authentication software has been +integrated into much of the system (including NFS) to provide +the first real network authentication on BSD. +.PP +A new implementation of the \fIex/vi\fP text editors is available +in this release. +It is intended as a bug-for-bug compatible version of the editors. +It also has a few new features: 8-bit clean data, lines and files +limited only by memory and disk space, split screens, tags stacks +and left-right scrolling among them. +\fINex/nvi\fP +is not yet production quality; future versions of this software may +be retrieved by anonymous ftp from ftp.cs.berkeley.edu, in the +directory ucb/4bsd. +.PP +The \fIfind\fP +utility has two new options that are important to be aware of if you +intend to use NFS. +The ``fstype'' and ``prune'' options can be used together to prevent +find from crossing NFS mount points. +.NH 2 +Additions and changes to the libraries +.PP +The \fIcurses\fP +library has been largely rewritten. +Important additional features include support +for scrolling and \fItermios\fP. +.PP +An application front-end editing library, named libedit, has been +added to the system. +.PP +A superset implementation of the SunOS kernel memory interface library, +\fIlibkvm\fP, has been integrated into the system. +.PP +Nearly the entire C-library has been rewritten. +Some highlights of the changes to the 4.4BSD C-library: +.IP \(bu +The newly added \fIfts\fP +functions will do either physical or logical traversal of +a file hierarchy as well as handle essentially infinite depth +filesystems and filesystems with cycles. +All the utilities in 4.4BSD that traverse file hierarchies +have been converted to use \fIfts\fP. +The conversion has always resulted in a significant performance +gain, often of four or five to one in system time. +.IP \(bu +The newly added \fIdbopen\fP +functions are intended to be a family of database access methods. +Currently, they consist of \fIhash\fP, +an extensible, dynamic hashing scheme, +\fIbtree\fP, a sorted, balanced tree structure (B+tree's), and +\fIrecno\fP, a flat-file interface for fixed or variable length records +referenced by logical record number. +Each of the access methods stores associated key/data pairs and +uses the same record oriented interface for access. +Future versions of this software may be retrieved by anonymous ftp +from ftp.cs.berkeley.edu, in the directory ucb/4bsd. +.IP \(bu +The \fIqsort\fP +function has been rewritten for additional performance. +In addition, three new types of sorting functions, +\fIheapsort\fP, \fImergesort\fP, and \fIradixsort\fP +have been added to the system. +The \fImergesort\fP +function is optimized for data with pre-existing order, +in which case it usually significantly outperforms \fIqsort\fP. +The \fIradixsort\fP +functions are variants of most-significant-byte radix sorting. +They take time linear to the number of bytes to be +sorted, usually significantly outperforming \fIqsort\fP +on data that can be sorted in this fashion. +An implementation of the POSIX 1003.2 standard \fIsort\fP +based on \fIradixsort\fP is included in 4.4BSD. +.IP \(bu +The floating point support in the C-library has been replaced +and is now accurate. +.IP \(bu +The C functions specified by both ANSI C, POSIX 1003.1 and +1003.2 are now part of the C-library. +This includes support for file name matching, shell globbing +and both basic and extended regular expressions. +.IP \(bu +ANSI C multibyte and wide-character support has been integrated. +The rune functionality from the Bell Labs' Plan 9 system is provided +as well. +.IP \(bu +The \fItermcap\fP +functions have been generalized and replaced with a general +purpose interface named \fIgetcap\fP. +.IP \(bu +The \fIstdio\fP +routines have been replaced, and are usually much faster. +In addition, the \fIfunopen\fP +interface permits applications to provide their own I/O stream +function support. +.NH 1 +Acknowledgements +.PP +We were greatly assisted by the past employees of the Computer Systems +Research Group: Mike Karels, Keith Sklower, and Marc Tietelbaum. +Our distribution coordinator, Pauline Schwartz, has reliably managed +the finances and the mechanics of shipping distributions for +nearly the entire fourteen years of the group's existence. +Without the help of lawyers Mary MacDonald, Joel Linzner, +and Carla Shapiro, the 4.4BSD-Lite distribution would never +have seen the light of day. +Much help was provided by Chris Demetriou in getting bug fixes +from NetBSD integrated back into the 4.4BSD-Lite distribution. +.PP +The vast majority of the 4.4BSD distribution comes from the numerous +people in the UNIX community that provided their time and energy in +creating the software contained in this release. +We dedicate this distribution to them. +.sp 0.6 +.in 4i +.nf +M. K. McKusick +K. Bostic +.fi +.in 0 +.sp 3 +.nr PS 9 +.nr VS 10 +.LP +.ne 1i +.ce +\fIPreface to the 4.3 Berkeley distribution\fP +.sp 1 +.LP +This update to the 4.2 distribution of August 1983 provides +substantially improved performance, reliability, and security, +the addition of Xerox Network System (NS) to the set of networking domains, +and partial support for the VAX 8600 and MICROVAXII. +.LP +We were greatly assisted by the DEC UNIX Engineering group who +provided two full time employees, Miriam Amos and Kevin Dunlap, +to work at Berkeley. They were responsible for developing and +debugging the distributed domain based name server +and integrating it into the mail system. +Mt Xinu provided the bug list distribution service as well as +donating their MICROVAXII port to 4.3BSD. +Drivers for the MICROVAXII were done by Rick Macklem +at the University of Guelph. +Sam Leffler provided valuable assistance and advice with many projects. +Keith Sklower coordinated with William Nesheim and J. Q. Johnson at Cornell, +and Chris Torek and James O'Toole at the University of Maryland +to do the Xerox Network Systems implementation. +Robert Elz at the University of Melbourne contributed greatly +to the performance work in the kernel. +Donn Seeley and Jay Lepreau at the University of Utah +relentlessly dealt with a myriad of details; +Donn completed the unfinished performance work on Fortran 77 +and fixed numerous C compiler bugs. +Ralph Campbell handled innumerable questions and problem reports +and had time left to write rdist. +George Goble was invaluable in shaking out the bugs on his +production systems long before we were confident enough to +inflict it on our users. +Bill Shannon at Sun Microsystems has been helpful in +providing us with bug fixes and improvements. +Tom Ferrin, in his capacity as Board Member of Usenix Association, +handled the logistics of large-scale reproduction +of the 4.2BSD and 4.3BSD manuals. +Mark Seiden helped with the typesetting and indexing of the 4.3BSD manuals. +Special mention goes to Bob Henry for keeping ucbvax running +in spite of new and improved software and +an ever increasing mail, news, and uucp load. +.LP +Numerous others contributed their time and energy in creating +the user contributed software for the release. +As always, we are grateful to the UNIX user community for +encouragement and support. +.LP +Once again, the financial support of the Defense Advanced Research +Projects Agency is gratefully acknowledged. +.sp 1 +.in 4i +.nf +M. K. McKusick +M. J. Karels +J. M. Bloom +.fi +.in 0 +.sp 1.5 +.ne 2i +.ce +\fIPreface to the 4.2 Berkeley distribution\fP +.sp 1 +This update to the 4.1 distribution of June 1981 provides support +for the VAX 11/730, full networking and interprocess communication +support, an entirely new file system, and many other new features. +It is certainly the most ambitious release of software ever prepared +here and represents many man-years of work. +Bill Shannon (both at DEC and at Sun Microsystems) +and Robert Elz of the University +of Melbourne contributed greatly to this distribution +through new device drivers and painful debugging episodes. +Rob Gurwitz of BBN wrote the initial version of the code upon +which the current networking support is based. +Eric Allman of Britton-Lee donated countless hours to the mail system. +Bill Croft (both at SRI and Sun Microsystems) aided in the +debugging and development of the networking facilities. +Dennis Ritchie of Bell Laboratories also +contributed greatly to this distribution, providing +valuable advise and guidance. Helge Skrivervik +worked on the device drivers which enabled +the distribution to be delivered with a TU58 +console cassette and RX01 console floppy disk, and +rewrote major portions of the standalone i/o system +to support formatting of non-DEC peripherals. +.LP +Numerous others contributed their time and energy in organizing +the user software for release, while many groups of people on +campus suffered patiently through the low spots of development. +As always, we are grateful to the UNIX user community for +encouragement and support. +.LP +Once again, the financial support of the Defense Advanced Research +Projects Agency is gratefully acknowledged. +.sp 1 +.in 4i +.nf +S. J. Leffler +W. N. Joy +M. K. McKusick +.fi +.in 0 +.sp 1.5 +.ne 1i +.ce +\fIPreface to the 4.1 Berkeley distribution\fP +.sp 1 +This update to the fourth distribution of November 1980 provides +support for the VAX 11/750 and for the full interconnect architecture +of the VAX 11/780. Robert Elz of the University of Melbourne contributed +greatly to this distribution especially in the boot-time system +configuration code; Bill Shannon of DEC supplied us with the +implementation of DEC standard bad block handling. The research +group at Bell Laboratories and DEC Merrimack provided us with access +to 11/750's in order to debug its support. +.LP +Other individuals too numerous to mention provided us with bug reports, +fixes and other enhancements which are reflected in the system. We +are grateful to the UNIX user community for encouragement and +support. +.LP +The financial support of the Defense Advanced Research Projects Agency +in support of this work is gratefully acknowledged. +.sp 1 +.in 4i +.nf +W. N. Joy +R. S. Fabry +K. Sklower +.fi +.in 0 +.sp 1.5 +.ne 1i +.ce +\fIPreface to the Fourth Berkeley distribution\fP +.sp 1 +This manual reflects the Berkeley system mid-October, 1980. +A large amount of tuning has been done in the system since the last release; +we hope this provides as noticeable an improvement for you as it did for us. +This release finds the system in transition; a number of facilities +have been added in experimental versions (job control, resource limits) +and the implementation of others is imminent (shared-segments, higher +performance from the file system, etc.). +Applications which use facilities that are in transition should be aware +that some of the system calls and library routines will change +in the near future. We have tried to be conscientious and make it +very clear where this is likely. +.LP +A new group has been formed +at Berkeley, to assume responsibility for the future +development and support of a version of UNIX on the VAX. +The group has received funding from the +Defense Advanced Research Projects Agency (DARPA) +to supply a standard version of the system to DARPA contractors. +The same version of the system will be made available to other licensees +of UNIX on the VAX for a duplication charge. +We gratefully acknowledge +the support of this contract. +.LP +We wish to acknowledge the contribution of a number of individuals to +the system. +.LP +We would especially like to thank +Jim Kulp of IIASA, +Laxenburg Austria and his colleagues, +who first put job control facilities into UNIX; +Eric Allman, Robert Henry, Peter Kessler and Kirk McKusick, who +contributed major new pieces of software; +Mark Horton, who contributed to the improvement of facilities and +substantially improved the quality of our bit-mapped fonts, +our hardware support staff: +Bob Kridle, +Anita Hirsch, +Len Edmondson +and +Fred Archibald, +who helped us to debug a number of new peripherals; +Ken Arnold who did much of the leg-work in getting this version of the +manual prepared, and did the final editing of sections 2-6, +some special individuals within Bell Laboratories: +Greg Chesson, +Stuart Feldman, +Dick Haight, +Howard Katseff, +Brian Kernighan, +Tom London, +John Reiser, +Dennis Ritchie, +Ken Thompson, +and +Peter Weinberger +who helped out by answering questions; +our excellent local DEC field service people, +Kevin Althaus and Frank Chargois +who kept our machine running virtually all the time, and fixed it quickly +when things broke; +and, +Mike Accetta of Carnegie-Mellon University, +Robert Elz of the University of Melbourne, +George Goble of Purdue University, +and +David Kashtan of the Stanford Research Institute +for their technical advice and support. +.LP +Special thanks to Bill Munson of DEC who helped by augmenting +our computing facility +and to Eric Allman for carefully proofreading the +``last'' draft of the manual and finding the bugs which we knew were +there but couldn't see. +.LP +We dedicate this to the memory of David Sakrison, late chairman of our +department, who gave his support to the establishment of our VAX +computing facility, and to our department as a whole. +.sp 1 +.in 4i +.nf +W. N. Joy +O\h'-.54m'\v'-.24m'\z\(..\v'.24m'\h'.54m'. Babao\o'~g'lu +R. S. Fabry +K. Sklower +.fi +.in 0 +.sp 3 +.ne 1i +.ce +\fIPreface to the Third Berkeley distribution\fP +.sp 1 +This manual reflects the state of the Berkeley system, December 1979. +We would like to thank all the people at Berkeley who have contributed to +the system, and particularly thank +Prof. Richard Fateman for creating and administrating a hospitable environment, +Mark Horton who helped prepare this manual, and +Eric Allman, Bob Kridle, Juan Porcar +and Richard Tuck for their contributions to the kernel. +.LP +The cooperation of Bell Laboratories in providing us with an early version of +\s-2UNIX\s0/32V is greatly appreciated. We would especially like to thank +Dr. Charles Roberts of Bell Laboratories for helping us obtain this release, +and acknowledge +T. B. London, +J. F. Reiser, +K. Thompson, +D. M. Ritchie, +G. Chesson and +H. P. Katseff +for their advice and support. +.sp 1 +.in 4i +W. N. Joy +.br +O\h'-.54m'\v'-.24m'\z\(..\v'.24m'\h'.54m'. Babao\o'~g'lu +.in 0 +.sp 3 +.ne 1i +.ce +\fIPreface to the UNIX/32V distribution\fP +.sp 1 +The UNIX operating system for the VAX*-11 +.FS +*VAX and PDP are Trademarks of Digital Equipment Corporation. +.FE +provides substantially the same facilities as the +\s-2UNIX\s0 +system for the PDP*-11. +.LP +We acknowledge the work of many who came before us, and particularly thank +G. K. Swanson, W. M. Cardoza, D. K. Sharma, and J. F. Jarvis for assistance +with the implementation for the VAX-11/780. +.sp 1 +.in 4i +T. B. London +.br +J. F. Reiser +.in 0 +.sp 3 +.ne 1i +.ce +\fIPreface to the Seventh Edition\fP +.sp 1 +.LP +Although this Seventh Edition no longer bears their byline, +Ken Thompson and Dennis Ritchie remain the fathers +and preceptors of the +\s-2UNIX\s0 +time-sharing system. +Many of the improvements here described bear their mark. +Among many, many other people who have contributed to +the further flowering of +\s-2UNIX\s0, +we wish especially to +acknowledge the contributions of +A. V. Aho, +S. R. Bourne, +L. L. Cherry, +G. L. Chesson, +S. I. Feldman, +C. B. Haley, +R. C. Haight, +S. C. Johnson, +M. E. Lesk, +T. L. Lyon, +L. E. McMahon, +R. Morris, +R. Muha, +D. A. Nowitz, +L. Wehr, +and +P. J. Weinberger. +We appreciate also +the effective advice and criticism of +T. A. Dolotta, +A. G. Fraser, +J. F. Maranzano, +and +J. R. Mashey; +and we remember the important work of +the late Joseph F. Ossanna. +.sp 1 +.in 4i +B. W. Kernighan +.br +M. D. McIlroy +.in 0 +.if o .bp +\& +.EH '''' +.OH '''' +.bp +.OH '\s10Introduction''- % -\s0' +.EH '\s10- % -''Introduction\s0' +.de IR +\fI\\$1\^\fR\\$2 +.. +.de RI +\fR\\$1\fI\\$2\^\fR\\$3 +.. +.ce +\fB\s24Introduction\s0\fP +.sp 2 +.nr PS 10 +.nr VS 12 +.LP +The documentation for 4.4BSD is in a format similar +to the one used for the 4.2BSD and 4.3BSD manuals. +It is divided into three sets; each set consists of one or more volumes. +The abbreviations for the volume names are listed in square brackets; +the abbreviations for the manual sections are listed in parenthesis. +.DS +I. User's Documents + User's Reference Manual [URM] + Commands (1) + Games (6) + Macro packages and language conventions (7) + User's Supplementary Documents [USD] + Getting Started + Basic Utilities + Communicating with the World + Text Editing + Document Preparation + Amusements + +II. Programmer's Documents + Programmer's Reference Manual [PRM] + System calls (2) + Subroutines (3) + Special files (4) + File formats and conventions (5) + Programmer's Supplementary Documents [PSD] + Documents of Historic Interest + Languages in common use + Programming Tools + Programming Libraries + General Reference + +III. System Manager's Manual [SMM] + Maintenance commands (8) + System Installation and Administration +.DE +.LP +References to individual documents are given as ``volume:document'', +thus USD:1 refers to the first document in the ``User's Supplementary +Documents''. +References to manual pages are given as ``\fIname\fP(section)'' thus +.IR sh (1) +refers to the shell manual entry in section 1. +.LP +The manual pages give descriptions of the features of the +4.4BSD system, as developed at the University of California at Berkeley. +They do not attempt to provide perspective or tutorial information about the +4.4BSD operating system, its facilities, or its implementation. +Various documents on those topics are contained in the +``\s-1UNIX\s+1 User's Supplementary Documents'' (USD), the +``\s-1UNIX\s+1 Programmer's Supplementary Documents'' (PSD), +and ``\s-1UNIX\s+1 System Manager's Manual'' (SMM). +In particular, for an overview see ``The \s-1UNIX\s+1 Time-Sharing System'' (PSD:1) +by Ritchie and Thompson; for a tutorial see +``\s8\s-1UNIX\s+1\s10 for Beginners'' (USD:1) by Kernighan, +and for an guide to the new features of this latest version, see +``Berkeley Software Architecture Manual (4.4 Edition)'' (PSD:5). +.LP +Within the area it surveys, this volume attempts to be timely, complete +and concise. Where the latter two objectives conflict, +the obvious is often left unsaid in favor of brevity. +It is intended that each program be described as it is, not as it should be. +Inevitably, this means that various sections will soon be out of date. +.LP +Commands are programs intended to be invoked directly by +the user, in contrast to subroutines, that are +intended to be called by the user's programs. +User commands are described in URM section 1. +Commands generally reside in directory +.I /bin +(for +.IR bin \|ary +programs). +Some programs also reside in +.I +/\|usr/\|bin, +.R +to save space in +.I /\|bin. +.R +These directories are searched automatically by the command interpreters. +Additional directories that may be of interest include +.I +/\|usr/\|contrib/\|bin, +.R +which has contributed software +.I +/\|usr/\|old/\|bin, +.R +which has old but sometimes still useful software and +.I +/\|usr/\|local/\|bin, +.R +which contains software local to your site. +.LP +Games have been relegated to URM section 6 and +.I +/\|usr/\|games, +.R +to keep them from contaminating +the more staid information of URM section 1. +.LP +Miscellaneous collection of information necessary for +writing in various specialized languages such as character codes, +macro packages for typesetting, etc is contained in URM section 7. +.LP +System calls are entries into the BSD kernel. +The system call interface is identical to a C language +procedure call; the equivalent C procedures are described in PRM section 2. +.LP +An assortment of subroutines is available; +they are described in PRM section 3. +The primary libraries in which they are kept are described in +.IR intro (3). +The functions are described in terms of C. +.LP +PRM section 4 discusses the characteristics of +each system ``file'' that refers to an I/O device. +The names in this section refer to the HP300 device names for the hardware, +instead of the names of the special files themselves. +.LP +The file formats and conventions (PRM section 5) +documents the structure of particular kinds of files; +for example, the form of the output of the loader and +assembler is given. Excluded are files used by only one command, +for example the assembler's intermediate files. +.LP +Commands and procedures intended for use primarily by the +system administrator are described in SMM section 8. +The files described here are almost all kept in the directory +.I /\|etc. +The system administration binaries reside in +.I +/\|sbin, +.R +and +.I +/\|usr/\|sbin. +.LP +Each section consists of independent entries of a page or so each. +The name of the entry is in the upper corners of its pages, +together with the section number. +Entries within each section are alphabetized. +The page numbers of each entry start at 1; +it is infeasible to number consecutively the pages of +a document like this that is republished in many variant forms. +.LP +All entries are based on a common format; +not all subsections always appear. +.RS +.LP +The +.I name +subsection lists the exact names of the commands and subroutines +covered under the entry and gives a short description of their purpose. +.LP +The +.IR synopsis "" +summarizes the use of the program being described. +A few conventions are used, particularly in the Commands subsection: +.LP +.RS +.B Boldface +words are considered literals, and are typed just as they appear. +.LP +Square brackets [ ] around an argument show that the argument is optional. +When an argument is given as ``name'', it always refers to a file name. +.LP +Ellipses ``.\|.\|.'' are used to show that the previous argument-prototype +may be repeated. +.LP +A final convention is used by the commands themselves. +An argument beginning with a minus sign ``\-'' usually means that it is an +option-specifying argument, even if it appears in a position where +a file name could appear. Therefore, it is unwise to have files whose +names begin with ``\-''. +.LP +.RE +The +.IR description "" +subsection discusses in detail the subject at hand. +.LP +The +.IR files "" +subsection gives the names of files that are built into the program. +.LP +A +.I +see also +.R +subsection gives pointers to related information. +.LP +A +.I diagnostics +subsection discusses the diagnostic indications that may be produced. +Messages that are intended to be self-explanatory are not listed. +.LP +The +.IR bugs "" +subsection gives known bugs and sometimes deficiencies. +Occasionally the suggested fix is also described. +.LP +.RE +At the beginning of URM, PRM, and SSM is a List of Manual Pages, +organized by section and alphabetically within each section, and a +Permuted Index derived from that List. +Within each index entry, the title of the writeup to which +it refers is followed by the appropriate section number in parentheses. +This fact is important because there is considerable +name duplication among the sections, arising principally from commands that +exist only to exercise a particular system call. +Finally, there is a list of documents on the inside back cover of each volume. +.SH +HOW TO GET STARTED +.LP +This section sketches the basic information you need to get started on \s-1UNIX\s+1; +how to log in and log out, how to communicate through your terminal, +and how to run a program. +See ``\s-1UNIX\s+1 for Beginners'' in (USD:1) for a +more complete introduction to the system. +.LP +.I +Logging in.\ \ +.R +Almost any ASCII terminal capable of +full duplex operation and generating +the entire character set can be used. +You must have a valid user name, +which may be obtained from the system administration. +If you will be accessing \s-1UNIX\s+1 remotely, you will also +need to obtain the telephone number for the system that you will be using. +.LP +After a data connection is established, +the login procedure depends on what type of terminal you are using +and local system conventions. +If your terminal is directly connected to the computer, +it generally runs at 9600 or 19200 baud. +If you are using a modem running over a phone line, +the terminal must be set at the speed appropriate for the modem you are using, +typically 1200, 2400, or 9600 baud. +The half/full duplex switch should always be set at full-duplex. +(This switch will often have to be changed +since many other systems require half-duplex). +.LP +When a connection is established, the system types ``login:''; +you type your user name, followed by the ``return'' key. +If you have a password, the system asks for it +and suppresses echo to the terminal so the password will not appear. +After you have logged in, the ``return'', ``new line'', or ``linefeed'' keys +will give exactly the same results. +A message-of-the-day usually greets you before your first prompt. +.LP +If the system types out a few garbage characters +after you have established a data connection +(the ``login:'' message at the wrong speed), +depress the ``break'' (or ``interrupt'') key. +This is a speed-independent signal to \s-1UNIX\s+1 +that a different speed terminal is in use. +The system then will type ``login:,'' this time at another speed. +Continue depressing the break key until ``login:'' appears clearly, +then respond with your user name. +.LP +For all these terminals, it is important +that you type your name in lower-case if possible; if you type +upper-case letters, +\s-1UNIX\s+1 will assume that your terminal cannot generate lower-case +letters and will translate all subsequent lower-case letters to upper case. +.LP +The evidence that you have successfully logged in is that a shell program +will type a prompt (``$'' or ``%'') to you. +(The shells are described below under ``How to run a program.'') +.LP +For more information, consult +.IR tset (1), +and +.IR stty (1), +which tell how to adjust terminal behavior; +.IR getty (8) +discusses the login sequence in more detail, and +.IR tty (4) +discusses terminal I/O. +.LP +.I +Logging out.\ \ +.R +There are three ways to log out: +.IP +By typing ``logout'' or an end-of-file +indication (EOT character, control-D) to the shell. +The shell will terminate and the ``login:'' message will appear again. +.IP +You can log in directly as another user by giving a +.IR login (1) +command. +.IP +If worse comes to worse, +you can simply hang up the phone; but beware \- some machines may +lack the necessary hardware to detect that the phone has been hung up. +Ask your system administrator if this is a problem on your machine. +.LP +.I +How to communicate through your terminal.\ \ +.R +When you type characters, a gnome deep in the system +gathers your characters and saves them in a secret place. +The characters will not be given to a program +until you type a return (or newline), as described above in +.I +Logging in. +.R +.LP +\s-1UNIX\s+1 terminal I/O is full-duplex. +It has full read-ahead, which means that you can type at any time, +even while a program is typing at you. +Of course, if you type during output, the printed output will +have the input characters interspersed. +However, whatever you type will be saved up and interpreted in correct sequence. +There is a limit to the amount of read-ahead, +but it is generous and not likely to be exceeded unless +the system is in trouble. +When the read-ahead limit is exceeded, the system +throws away all the saved characters (or beeps, if your prompt was a ``%''). +.LP +The ^U (control-U) character in typed input kills all the +preceding characters in the line, +so typing mistakes can be repaired on a single line. +Also, the delete character (DEL) or sometimes the +backspace character (control-H) erases the last character typed. +.IR Tset (1) +or +.IR stty (1) +can be used to change these defaults. +Successive uses of delete (or backspace) erases characters back to, but +not beyond, the beginning of the line. +DEL and ^U (control-U) can be transmitted to a program by preceding them with +^V (control-V). +(So, to erase ^V (control-V), you need two deletes or backspaces). +.LP +An +.I +interrupt signal +.R +is sent to a program by typing ^C (control-C) or the ``break'' key +which is not passed to programs. +This signal generally causes whatever program you are running to terminate. +It is typically used to stop a long printout that you do not want. +However, programs can arrange either to ignore this signal altogether, +or to be notified when it happens (instead of being terminated). +The editor, for example, catches interrupts and stops what it is doing, +instead of terminating, so that an interrupt can +be used to halt an editor printout without losing the file being edited. +The interrupt character can also be changed with +.IR tset (1) +or +.IR stty (1). +.LP +It is also possible to suspend output temporarily using ^S (control-S) +and later resume output with ^Q (control-Q). +Output can be thrown away without interrupting +the program by typing ^O (control-O); see +.IR tty (4). +.LP +The +.IR quit "" +signal is generated by typing the \s8ASCII\s10 FS character. +(FS appears many places on different terminals, most commonly +as control-\e or control-\^|\^.) +It not only causes a running program to terminate +but also generates a file with the core image of the terminated process. +Quit is useful for debugging. +.LP +Besides adapting to the speed of the terminal, +\s-1UNIX\s+1 tries to be intelligent about whether +you have a terminal with the newline function +or whether it must be simulated with carriage-return and line-feed. +In the latter case, all input carriage returns +are turned to newline characters (the standard line delimiter) +and both a carriage return and a line feed are echoed to the terminal. +If you get into the wrong mode, the +.IR reset (1) +command will rescue you. +If the terminal does not appear to be echoing anything that you type, +it may be stuck in ``no-echo'' or ``raw'' mode. +Try typing ``(control-J)reset(control-J)'' to recover. +.LP +Tab characters are used freely in \s-1UNIX\s+1 source programs. +If your terminal does not have the tab function, +you can arrange to have them turned into spaces +during output, and echoed as spaces during input. +The system assumes that tabs are set every eight columns. +Again, the +.IR tset (1) +or +.IR stty (1) +command can be used to change these defaults. +.IR Tset (1) +can be used to set the tab stops automatically when necessary. +.LP +.I +How to run a program; the shells.\ \ +.R +When you have successfully logged in, a program +called a shell is listening to your terminal. +The shell reads typed-in lines, splits them up +into a command name and arguments, and executes the command. +A command is simply an executable program. +The shell looks in several system directories to find the command. +You can also place commands in your own directory and +have the shell find them there. +There is nothing special about system-provided +commands except that they are kept in a directory where the shell can find them. +.LP +The command name is always the first word on an input line; +it and its arguments are separated from one another by spaces. +.LP +When a program terminates, the shell will ordinarily regain control and type +a prompt at you to show that it is ready for another command. +.LP +The shells have many other capabilities, that are described in detail in +sections +.IR sh (1) +and +.IR csh (1). +If the shell prompts you with ``$'', then it is an instance of +.IR sh (1), +the original \s-1UNIX\s+1 shell. +If it prompts with ``%'' then it is an instance of +.IR csh (1), +a shell written at Berkeley. +The shells are different for all but the most simple terminal usage. +Most users at Berkeley choose +.IR csh (1) +because of the +.I history +mechanism and the +.I alias +feature, that greatly enhance its power when used interactively. +.I Csh +also supports the job-control facilities; +see +.IR csh (1) +or the Csh introduction in USD:4 for details. +.LP +You can change from one shell to the other by using the +.I chpass (1) +command, which takes effect at your next login. +.LP +.I +The current directory.\ \ +.R +\s-1UNIX\s+1 has a file system arranged as a hierarchy of directories. +When the system administrator gave you a user name, +they also created a directory for you (ordinarily +with the same name as your user name). +When you log in, any file name you type is by default in this directory. +Since you are the owner of this directory, you have +full permission to read, write, alter, or destroy its contents. +Permissions to have your will with other directories +and files will have been granted or denied to you by their owners. +As a matter of observed fact, few \s-1UNIX\s+1 +users protect their files from perusal by other users. +.LP +To change the current directory (but not the set of permissions you +were endowed with at login) use +.IR cd (1). +.LP +.I +Path names.\ \ +.R +To refer to files not in the current directory, you must use a path name. +Full path names begin with ``/\|'', the name of the root directory of the +whole file system. +After the slash comes the name of each directory containing the next +sub-directory (followed by a ``/\|'') until finally the file name is reached. +For example, +.I +/\^var/\^tmp/\^filex +.R +refers to the file +.I +filex +.R +in the directory +.I +tmp; tmp +.R +is itself a subdirectory of +.I +var; var +.R +springs directly from the root directory. +.LP +If your current directory has subdirectories, +the path names of files therein begin with +the name of the subdirectory with no prefixed ``/\|''. +.LP +A path name may be used anywhere a file name is required. +.LP +Important commands that modify the contents of files are +.IR cp (1), +.IR mv (1), +and +.IR rm (1), +which respectively copy, move (i.e. rename) and remove files. +To find out the status of files or directories, use +.IR ls (1). +See +.IR mkdir (1) +for making directories and +.IR rmdir (1) +for destroying them. +.LP +For a fuller discussion of the file system, see +``A Fast File System for \s-1UNIX\s+1'' (SMM:5) +by McKusick, Joy, Leffler, and Fabry. +It may also be useful to glance through PRM section 2, +that discusses system calls, even if you do not intend +to deal with the system at that level. +.LP +.I +Writing a program.\ \ +.R +To enter the text of a source program into a \s-1UNIX\s+1 file, +use the standard display editor +.IR vi (1) +or its \s-1WYSIWYG\s+1 counterparts +.IR jove (1) +and +.IR emacs (1). +(The old standard editor +.IR ed (1) +is also available.) +The principle language in \s-1UNIX\s+1 is provided by the C compiler +.IR cc (1). +User contributed software in the latest +release of the system supports the programming languages perl and C++. +After the program text has been entered through the editor +and written to a file, you can give the file +to the appropriate language processor as an argument. +The output of the language processor +will be left on a file in the current directory named ``a.out''. +If the output is precious, use +.IR mv (1) +to move it to a less exposed name after successful compilation. +.LP +When you have finally gone through this entire process +without provoking any diagnostics, the resulting program +can be run by giving its name to the shell +in response to the shell (``$'' or ``%'') prompt. +.LP +Your programs can receive arguments from the command line +just as system programs do, +see ``\s-1UNIX\s+1 Programming - Second Edition'' (PSD:4), +or for a more terse description +.IR execve (2). +.LP +.I +Text processing.\ \ +.R +Almost all text is entered through an editor such as +.IR vi (1), +.IR jove (1), +or +.IR emacs (1). +The commands most often used to write text on a terminal are: +.IR cat (1), +.IR more (1), +and +.IR nroff (1). +.LP +The +.IR cat (1) +command simply dumps \s8ASCII\s10 text +on the terminal, with no processing at all. +.IR More (1) +is useful for preventing the output of a command from +scrolling off the top of your screen. +It is also well suited to perusing files. +.IR Nroff (1) +is an elaborate text formatting program. +Used naked, it requires careful forethought, but for +ordinary documents it has been tamed; see +.IR me (7) +and +.IR ms (7). +.LP +.IR Groff (1) +converts documents to postscript for output to a +Laserwriter or Phototypesetter. +It is similar to +.IR nroff (1), +and often works from exactly the same source text. +It was used to produce this manual. +.LP +.IR Script (1) +lets you keep a record of your session in a file, +which can then be printed, mailed, etc. +It provides the advantages of a hard-copy terminal +even when using a display terminal. +.LP +.I +Status inquiries.\ \ +.R +Various commands exist to provide you with useful information. +.IR w (1) +prints a list of users currently logged in, and what they are doing. +.IR date (1) +prints the current time and date. +.IR ls (1) +will list the files in your directory or give +summary information about particular files. +.LP +.I +Surprises.\ \ +.R +Certain commands provide inter-user communication. +Even if you do not plan to use them, it would be +well to learn something about them, because someone else may aim them at you. +.LP +To communicate with another user currently logged in, +.IR write (1) +or +.IR talk (1) +is used; +.IR mail (1) +will leave a message whose presence will be announced +to another user when they next log in. +The write-ups in the manual also suggest how to respond to +these commands if you are a target. +.LP +If you use +.IR csh (1) +the key ^Z (control-Z) will cause jobs to ``stop''. +If this happens before you learn about it, +you can simply continue by saying ``fg'' (for foreground) to bring +the job back. +.LP +We hope that you will come to enjoy using the BSD system. +Although it is very large and contains many commands, +you can become very productive using only a small subset of them. +As your needs expand to doing new tasks, +you will almost always find that the system has the facilities +that you need to accomplish them easily and quickly. +.LP +Most importantly, the source code to the BSD system +is cheaply available to anyone that wants it. +On many BSD systems, it can be found in the directory +.IR /\|usr/\|src . +You may simply want to find out how something works +or fix some important bug without waiting months for +your vendor to respond. +It is also particularly useful if you +want to grab another piece of code to bootstrap a new project. +Provided that you retain the copyrights and acknowledgements +at the top of each file, you are free to redistribute your +work for fun or profit. +Naturally, we hope that you will allow others to also redistribute +your code, though you are not required to do so unless you +use copyleft code (which is primarily found in the software +contributed from the Free Software Foundation and is +clearly identified). +.LP +Good luck and enjoy BSD. +.if o .bp +\& +.EH '''' +.OH '''' +.bp +.OH '\s10Manual Pages''- % -\s0' +.EH '\s10- % -''Manual Pages\s0' +.EF '\s10\\\\*(Dt''\\\\*(Ed\s0' +.OF '\s10\\\\*(Ed''\\\\*(Dt\s0' +.nr PS 10 +.nr VS 11.5 +.LP +.ce +\s24\fBList \|of \|Manual \|Pages\fP\s0 +.nr x 0.5 +.in +\nxi +.nf +.ta \n(.lu-\nxuR +.de xx +\\$1\f3 \a \fP\\$2 +.. +.de t +.sp 1v +.ne .5i +.cs 3 +.ti -\\nxi +.ss 18 +\fB\\$2. \\$3\fP +.ss 12 +.if t .sp .5v +.cs 3 36 +.ds Ed Section \\$2 +.ds Dt \\$3 +.so \\$1 +.. +.t toc1 1 "Commands and Application Programs" +.t toc2 2 "System Calls" +.t toc3 3 "C Library Subroutines" +.t toc4 4 "Special Files" +.t toc5 5 "File Formats" +.t toc6 6 "Games" +.t toc7 7 "Miscellaneous" +.t toc8 8 "System Maintenance" +.in -\nxi +.cs 3 +.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i +.if o .bp +\& +.EH '''' +.OH '''' +.bp +\& +.OH '\s10Permuted Index''- % -\s0' +.EH '\s10- % -''Permuted Index\s0' +.ds Ed 4.4BSD +.ds Dt April \|1994 +.ce +\s24\fBPermuted \|Index\fP\s0 +.sp 2 +.nr PS 8 +.nr VS 9 +.LP +.\" backup from slotput 1, slot, 2 +.tr ~ +.nf +.cs 3 36 +.de xx +.ds s1\" +.if \w\\$2 .ds s1 ~~\" +.ds s2 ~~~\" +.ds s3\" +.if \w\\$4 .ds s3 ~~\" +.ds s4 ~~\" +.ds s5 ~~\" +.ds y \\*(s4\f3\fP\\*(s5 +.ta 6i-\w\\*(s5u +\h"3i-\w\\$1\\*(s1\\$2\\*(s2u"\\$1\\*(s1\\$2\\*(s2\\$3\\*(s3\\$4\\*y\\$5 +.. +.so ptxx +.cs 3 +.ta .5i 1i 1.5i 2i 2.5i 3i 3.5i 4i 4.5i 5i 5.5i 6i 6.5i diff --git a/static/netbsd/man0/tocrc b/static/netbsd/man0/tocrc new file mode 100755 index 00000000..e1febf22 --- /dev/null +++ b/static/netbsd/man0/tocrc @@ -0,0 +1,79 @@ +#!/bin/sh - +# +# $NetBSD: tocrc,v 1.4 2004/03/31 02:10:00 snj Exp $ +# +# Copyright (c) 1993 +# The Regents of the University of California. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. All advertising materials mentioning features or use of this software +# must display the following acknowledgement: +# This product includes software developed by the University of +# California, Berkeley and its contributors. +# 4. Neither the name of the University nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# @(#)tocrc 8.2 (Berkeley) 5/5/94 +# +tmp=/tmp/toc$$ +trap "rm $tmp ; exit" 2 3 15 +: tocx files for all sections and everything else + +if [ ! -f tocx8 ]; then + for x in 1 2 3 4 5 6 7 8; do + /usr/libexec/getNAME -t `cat man$x` | + sed \ + -e 's/.s-2//g' \ + -e 's/.s-1//g' \ + -e 's/.s0//g' \ + -e 's/.s+1//g' \ + -e 's/ *.- */: /' \ + -e 's/ *$/./' \ + -e 's/.TH.* //' \ + -e 's/@g@//' \ + -e 's/@G@//' \ + > tocx$x + done +fi +: permuted index and toc files + +cat tocx* cshcmd > /tmp/cattoc + +# If this fails, try gptx from GNU coreutils (pkgsrc/sysutils/coreutils) +ptx -r -t -b break -f -w 108 -i ignore /tmp/cattoc ptxx + +for x in 1 2 3 4 5 6 7 8; do + grep '^intro' $tmp + sed \ + -e '2,${' \ + -e '/^intro/d' \ + -e '}' \ + -e 's/ .*://' \ + -e 's/.$//' \ + -e 's/([^)]*) /" "/' \ + -e 's/.*/.xx "&"/' \ + -e '/""/d' \ + $tmp tocx$x \ + >toc$x +done +exit diff --git a/static/netbsd/man1/Makefile b/static/netbsd/man1/Makefile new file mode 100644 index 00000000..18078255 --- /dev/null +++ b/static/netbsd/man1/Makefile @@ -0,0 +1,5 @@ +MAN = $(wildcard *.1) +SUBDIRS = man1.atari man1.x68k + +include ../../mandoc.mk + diff --git a/static/netbsd/man1/cd.1 b/static/netbsd/man1/cd.1 new file mode 100644 index 00000000..b31da7b3 --- /dev/null +++ b/static/netbsd/man1/cd.1 @@ -0,0 +1,114 @@ +.\" $NetBSD: cd.1,v 1.10 2019/08/31 21:35:50 uwe Exp $ +.\" +.\" Copyright (c) 1980, 1990, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" This code is derived from software contributed to Berkeley by +.\" the Institute of Electrical and Electronics Engineers, Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)cd.1 8.1 (Berkeley) 6/5/93 +.\" +.Dd August 31, 2019 +.Dt CD 1 +.Os +.Sh NAME +.Nm cd +.Nd change working directory +.Sh SYNOPSIS +.Nm cd +.Op Ar directory +.Sh DESCRIPTION +Since +.Nm +affects the current shell execution environment, it is always provided +as a shell regular built-in. +For more information consult the manual page for the shell in use. +.Pp +The +.Ar directory +operand is an absolute or relative pathname which becomes the new +working directory. +The interpretation of a relative pathname by +.Nm +depends on the +.Ev CDPATH +environment variable (see below). +.Sh ENVIRONMENT +The following environment variables affect the execution of +.Nm : +.Bl -tag -width Ev +.It Ev CDPATH +A colon-separated list of pathnames that refer to directories. +If the +.Ar directory +operand does not begin with a slash +.Pq Ql \&/ +character, and the first +component is not dot +.Pq Ql \&. +or dot-dot +.Pq Ql \&.. , +.Nm +searches for the +.Ar directory +relative to each directory named in the +.Ev CDPATH +variable, in the order listed. +The new working directory is set to the first matching directory found. +An empty string in place of a directory pathname represents the current +directory. +If the new working directory was derived from +.Ev CDPATH , +it will be printed to the standard output. +.It Ev HOME +If +.Nm cd +is invoked without arguments and the +.Ev HOME +environment variable exists and contains a directory name, that directory +becomes the new working directory. +.It Ev OLDPWD +Set to the previous working directory after a directory change. +Not supported by +.Xr csh 1 . +.It Ev PWD +Set to the current working directory. +.El +.Sh EXIT STATUS +.Ex -std cd +.Sh SEE ALSO +.Xr csh 1 , +.Xr ksh 1 , +.Xr pwd 1 , +.Xr sh 1 , +.Xr chdir 2 +.Sh STANDARDS +The +.Nm cd +command is expected to be +.St -p1003.2 +compatible. diff --git a/static/netbsd/man1/intro.1 b/static/netbsd/man1/intro.1 new file mode 100644 index 00000000..9f9e60e9 --- /dev/null +++ b/static/netbsd/man1/intro.1 @@ -0,0 +1,81 @@ +.\" $NetBSD: intro.1,v 1.14 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)intro.1 8.2 (Berkeley) 12/30/93 +.\" +.Dd October 26, 2013 +.Dt INTRO 1 +.Os +.Sh NAME +.Nm intro +.Nd introduction to general commands (tools and utilities) +.Sh DESCRIPTION +Section one of the manual contains most of the commands +which comprise the +.Bx +user environment. +Some of the commands included in section one are +text editors, command shell interpreters, +searching and sorting tools, +file manipulation commands, +system status commands, +remote file copy commands, mail commands, +compilers and compiler tools, +formatted output tools, +and line printer commands. +.Pp +All commands set a status value upon exit which may be tested +to see if the command completed normally. +The exit values and their meanings are explained in the individual +manuals. +Traditionally, the value 0 signifies successful completion of the command. +.Sh SEE ALSO +.Xr man 1 , +.Xr intro 2 , +.Xr intro 3 , +.Xr intro 3lua , +.Xr intro 4 , +.Xr intro 5 , +.Xr intro 6 , +.Xr intro 7 , +.Xr intro 8 , +.Xr intro 9 , +.Xr intro 9lua +.Rs +.%A The Regents of the University of California +.%I University of California, Berkeley +.%T "UNIX User's Manual Supplementary Documents" +.%D June, 1993 +.%U https://www.netbsd.org/docs/bsd/lite2/usd.html +.Re +.Sh HISTORY +An +.Xr intro 1 +manual appeared in +.At v6 . diff --git a/static/netbsd/man1/ld.so.1 b/static/netbsd/man1/ld.so.1 new file mode 100644 index 00000000..29014fa3 --- /dev/null +++ b/static/netbsd/man1/ld.so.1 @@ -0,0 +1,60 @@ +.\" $NetBSD: ld.so.1,v 1.3 2010/03/31 16:52:03 jruoho Exp $ +.\" +.\" Copyright (c) 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Thomas Klausner. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 31, 2010 +.Dt LD.SO 1 +.Os +.Sh NAME +.Nm ld.so +.Nd run-time link-editor +.Sh DESCRIPTION +.Nm +is a self-contained, position independent program image providing run-time +support for loading and link-editing shared objects into a process' +address space. +.Pp +For the particular details, refer to +.Xr ld.aout_so 1 +or +.Xr ld.elf_so 1 , +depending on the system's object file format. +.Sh SEE ALSO +.Xr ld 1 , +.Xr ld.aout_so 1 , +.Xr ld.elf_so 1 , +.Xr a.out 5 , +.Xr elf 5 , +.Xr link 5 , +.Xr ldconfig 8 +.Rs +.%A John R. Levine +.%B Linkers and Loaders +.%D 1999 +.%I Morgan Kaufmann +.Re diff --git a/static/netbsd/man1/man1.atari/Makefile b/static/netbsd/man1/man1.atari/Makefile new file mode 100644 index 00000000..a128dd58 --- /dev/null +++ b/static/netbsd/man1/man1.atari/Makefile @@ -0,0 +1,4 @@ +MAN = $(wildcard *.1) + +include ../../../mandoc.mk + diff --git a/static/netbsd/man1/man1.atari/edahdi.1 b/static/netbsd/man1/man1.atari/edahdi.1 new file mode 100644 index 00000000..c4b40e10 --- /dev/null +++ b/static/netbsd/man1/man1.atari/edahdi.1 @@ -0,0 +1,150 @@ +.\" $NetBSD: edahdi.1,v 1.12 2019/09/01 12:50:22 sevan Exp $ +.\" +.\" Copyright (c) 1996 Leo Weppelman +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd September 1, 2019 +.Dt EDAHDI 1 atari +.Os +.Sh NAME +.Nm edahdi +.Nd modify AHDI partition identifiers +.Sh SYNOPSIS +.Nm +.Ar device +.Sh DESCRIPTION +.Nm +allows you to modify the partition identifiers on a disk partitioned with +AHDI or an AHDI compatible formatter. +An AHDI partition format is usually only present on disks shared between +.Nx +and some other OS. +The partition identifiers are used by +.Nx +as a guideline to emulate a disklabel on such a disk. +.Pp +.Nm +supports the following options: +.Bl -tag -width device +.It Ar device +The name of the raw device you want to edit. +.El +.Pp +The following partition identifiers are recognized by +.Nx : +.Bl -tag -width "GEM or BGM" -compact +.It NBD +Partition is reserved for +.Nx . +This can be either a root or an user partition. +The first NBD partition on a disk will be mapped to partition +.Em a +in +.Nx . +The following NBD partitions will be mapped from +.Em d +up. +The filesystem type is ffs by default. +.It SWP +The first SWP partition is mapped to partition +.Em b . +.It GEM or BGM +These partitions are mapped from +.Em d +up. +The filesystem type is msdos. +.It NBR +.Nx +root partition (deprecated). +.It NBU +.Nx +user partition (deprecated). +.It NBS +.Nx +swap partition (deprecated). +.El +.Sh EXAMPLES +Say, you have a disk that is partitioned like: +.Bl -column Number Id +.It Sy "Number" Ta Sy "Id" +.It 1 Ta GEM +.It 2 Ta GEM +.It 3 Ta GEM +.It 4 Ta GEM +.El +.Pp +This partitioning will show up in +.Nx +as (Number refers to the first table): +.Bl -column "c (whole disk)" "Fstype" "Number" +.It Sy Partition Ta Sy Fstype Ta Sy Number +.It c (whole disk) Ta unused Ta "" +.It d (user part) Ta MSDOS Ta 1 +.It e (user part) Ta MSDOS Ta 2 +.It f (user part) Ta MSDOS Ta 3 +.It g (user part) Ta MSDOS Ta 4 +.El +.Pp +Now you decide to change the id of partition 2 and 3 to NBD. +Now +.Nx +will show the partitioning as (Number refers to the first table): +.Bl -column "c (whole disk)" "Fstype" "Number" +.It Sy Partition Ta Sy Fstype Ta Sy Number +.It a (root) Ta 4.2BSD Ta 2 +.It c (whole disk) Ta unused Ta "" +.It d (user part) Ta MSDOS Ta 1 +.It e (user part) Ta 4.2BSD Ta 3 +.It f (user part) Ta MSDOS Ta 4 +.El +.Pp +You will notice that the order of the partitions has changed! You will have +to watchout for this. +It is a consequence of +.Nx +habit of assigning a predefined meaning to the partitions +.Em a/b +and +.Em c . +.Sh SEE ALSO +.Xr disklabel 8 , +.Xr installboot 8 +.Sh HISTORY +The +.Nm +command first appeared in +.Nx 1.2 . +.Sh BUGS +The changes made to the AHDI partitions will become active on the next +.Em first open +of the device. +You are advised to use +.Nm +only on a device without any mounted or otherwise active partitions. +This is not enforced by +.Nm . +This is particularly confusing when your change caused partitions to shift, +as shown in the example above. +.Pp +As soon as a disk contains at least one NBD partition, you are allowed to +write disklabels and install bootstraps. diff --git a/static/netbsd/man1/man1.atari/msconfig.1 b/static/netbsd/man1/man1.atari/msconfig.1 new file mode 100644 index 00000000..953f2338 --- /dev/null +++ b/static/netbsd/man1/man1.atari/msconfig.1 @@ -0,0 +1,62 @@ +.\" $NetBSD: msconfig.1,v 1.9 2019/09/01 12:56:14 sevan Exp $ +.\" +.\" Copyright (c) 1996 Leo Weppelman +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd September 1, 2019 +.Dt MSCONFIG 1 atari +.Os +.Sh NAME +.Nm msconfig +.Nd Show or change the middle button emulation mode +.Sh SYNOPSIS +.Nm +.Op Fl f Ar mouse-device +.Op Ar on|off +.Sh DESCRIPTION +.Nm +is used to modify or examine the state of the middle-button emulation mode of +the +.Nx Ns Tn /Atari +mouse driver. +When +.Nm +is used without the +.Ar on|off +parameter, it prints the current state of the emulation mode. +The default mouse device is +.Pa /dev/mouse . +This can be overridden by means of the +.Fl f +option. +.Pp +When the emulation is turned on, a middle-button event can be generated +by simultaneously pressing the left and right buttons. +When turned off, a middle-button event is generated by pushing the fire-button +of joystick1. +Note that you'll need a special type of mouse to use this. +.Sh HISTORY +The +.Nm +command appeared in +.Nx 1.3 diff --git a/static/netbsd/man1/man1.x68k/Makefile b/static/netbsd/man1/man1.x68k/Makefile new file mode 100644 index 00000000..a128dd58 --- /dev/null +++ b/static/netbsd/man1/man1.x68k/Makefile @@ -0,0 +1,4 @@ +MAN = $(wildcard *.1) + +include ../../../mandoc.mk + diff --git a/static/netbsd/man1/man1.x68k/aout2hux.1 b/static/netbsd/man1/man1.x68k/aout2hux.1 new file mode 100644 index 00000000..91a94507 --- /dev/null +++ b/static/netbsd/man1/man1.x68k/aout2hux.1 @@ -0,0 +1,81 @@ +.\" $NetBSD: aout2hux.1,v 1.6 2019/09/01 13:30:54 sevan Exp $ +.Dd September 1, 2019 +.Dt AOUT2HUX 1 x68k +.Os +.Sh NAME +.Nm aout2hux +.Nd convert a.out/ELF executable to Human68k .x format +.Sh SYNOPSIS +.Nm +.Op Fl o Ar output_file +.Ar aout1 +.Ar loadaddr1 +.Ar aout2 +.Ar loadaddr2 +.Sh DESCRIPTION +.Nm +reads two +.Xr a.out 5 +or ELF +format executables with different load addresses +and generates a Human68k +.Sq Li \&.x +format executable. +.Pp +If the input files are a.out, they must be static +.Dv OMAGIC +/ +.Dv NMAGIC +m68k executables. +If the input files are ELF, they must be static m68k executables. +The two input executables must be created from the same objects, +but use different load addresses. +The load address is specified as a hexadecimal number. +Load addresses are a multiple of 4 for +.Xr as 1 +and +.Xr ld 1 +from +.Nx Ns Tn /m68k . +.Pp +If +.Ar output_file +is not specified with the +.Fl o +option, the default name +.Pa out.x +is used. +.Sh FILES +.Bl -tag -width out.xxxx -compact +.It Pa out.x +default output file. +.El +.Sh EXAMPLES +The following command sequence creates a Human68k executable +.Pa foo.x +from object files +.Pa a.o +and +.Pa b.o : +.Bd -literal -offset indent +cc -N -nostdlib -static -Wl,-Text,0 -o aout1 a.o b.o +cc -N -nostdlib -static -Wl,-Text,10203040 -o aout2 a.o b.o +aout2hux -o foo.x aout1 0 aout2 10203040 +.Ed +.Pp +This example uses 0x0 and 0x10203040 as the load addresses. +.Sh SEE ALSO +.Xr as 1 , +.Xr cc 1 , +.Xr ld 1 , +.Xr a.out 5 +.Sh HISTORY +The +.Nm +utility first appeared in +.Nx 1.4 . +.Sh BUGS +Symbol and debugging information is not converted. +.Pp +The generated executable is not as effective as that of +Human68k native compiler. diff --git a/static/netbsd/man1/man1.x68k/bellctrl.1 b/static/netbsd/man1/man1.x68k/bellctrl.1 new file mode 100644 index 00000000..9d92e3cd --- /dev/null +++ b/static/netbsd/man1/man1.x68k/bellctrl.1 @@ -0,0 +1,85 @@ +.\" $NetBSD: bellctrl.1,v 1.17 2019/09/01 14:26:28 sevan Exp $ +.\" +.\" Copyright (c) 1995 Takuya Harakawa. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by the University of +.\" California, Berkeley and its contributors. +.\" 4. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" from: @(#)bellctrl.1 6.19 (Berkeley) 7/27/91 +.\" +.Dd September 1, 2019 +.Dt BELLCTRL 1 x68k +.Os +.Sh NAME +.Nm bellctrl +.Nd opm bell emulation preference utility +.Sh SYNOPSIS +.Nm bellctrl +.Op Fl b +.Op Sy b Ar on/off +.Op Sy b Op Ar volume Op Ar pitch Op Ar duration +.Op Sy v Ar default +.Op Fl v Ar voicefile +.Sh DESCRIPTION +.Nm +is used to set various preference options of the opm bell. +.Pp +The options are as follows: +.Bl -tag -width Op +.It Fl b +The b option controls bell volume, pitch and duration. +This option accepts up to three numerical parameters, a preceding +dash(-), or an 'on/off' flag. +If no parameters are given, or the 'on' flag is used, the system defaults will +be used. +If the dash or 'off' are given, the bell will be turned off. +If only one numerical parameter is given, the bell volume will be +set to that value, as a percentage of its maximum. +Likewise, the second numerical parameter specifies the bell pitch, +in hertz, and the third numerical parameter specifies the duration +in milliseconds. +.It Sy v Ar default +The +.Ar default +argument cause the voice parameter to be reset to the system default. +.It Fl v Ar voicefile +The +.Fl v +option sets the voice parameter to given voice parameter file ( +.Ar voicefile ) . +.El +.Sh HISTORY +A +.Nm +utility first appeared in +.Nx 1.3 . +.Sh AUTHORS +.Nm +was written by +.An Takuya Harakawa Aq Mt ussy@int.titech.ac.jp . diff --git a/static/netbsd/man1/man1.x68k/loadfont.1 b/static/netbsd/man1/man1.x68k/loadfont.1 new file mode 100644 index 00000000..019afb5b --- /dev/null +++ b/static/netbsd/man1/man1.x68k/loadfont.1 @@ -0,0 +1,42 @@ +.\" $NetBSD: loadfont.1,v 1.10 2019/09/01 14:22:12 sevan Exp $ +.\" +.\" This software is in the Public Domain. +.\" Author: Masaru Oki +.\" +.Dd September 1, 2019 +.Dt LOADFONT 1 x68k +.Os +.Sh NAME +.Nm loadfont +.Nd load and set font for the +.Nx Ns Tn /x68k +console +.Sh SYNOPSIS +.Nm loadfont +.Ar fontfile +.Sh DESCRIPTION +.Nm +command reads font data from +.Ar fontfile +and replaces the x68k console font with it. +.Pp +.Ar fontfile +format is compatible with that of +.Tn Human68k +.Sq IOCS +font. +.Sh HISTORY +A +.Nm +utility first appeared in +.Nx 1.3 . +.Sh BUGS +Replacing kanji fonts is not supported, +because current +.Nx Ns Tn /x68k +kernel has no ability to use +one other than in the ROM. +.Pp +Font data in +.Ar fontfile +must be a full set of JIS X0201 (must contain hankaku-katakana part). diff --git a/static/netbsd/man1/man1.x68k/loadkmap.1 b/static/netbsd/man1/man1.x68k/loadkmap.1 new file mode 100644 index 00000000..2c65f6b9 --- /dev/null +++ b/static/netbsd/man1/man1.x68k/loadkmap.1 @@ -0,0 +1,24 @@ +.\" $NetBSD: loadkmap.1,v 1.7 2019/09/01 14:32:04 sevan Exp $ +.\" +.\" This software is in the Public Domain. +.\" Author: Masaru Oki +.\" +.Dd September 1, 2019 +.Dt LOADKMAP 1 x68k +.Os +.Sh NAME +.Nm loadkmap +.Nd load and set the x68k console keyboard map +.Sh SYNOPSIS +.Nm loadkmap +.Ar keymapfile +.Sh DESCRIPTION +.Nm +command reads +.Ar keymapfile +and replaces the x68k console keyboard map. +.Sh HISTORY +A +.Nm +utility first appeared in +.Nx 1.4 . diff --git a/static/netbsd/man1/man1.x68k/palette.1 b/static/netbsd/man1/man1.x68k/palette.1 new file mode 100644 index 00000000..3369daa2 --- /dev/null +++ b/static/netbsd/man1/man1.x68k/palette.1 @@ -0,0 +1,50 @@ +.\" $NetBSD: palette.1,v 1.7 2019/09/01 14:34:54 sevan Exp $ +.\" +.\" This software is in the Public Domain. +.\" Author: Masaru Oki +.\" +.Dd September 1, 2019 +.Dt PALETTE 1 x68k +.Os +.Sh NAME +.Nm palette +.Nd manipulate the text screen colormap +.Sh SYNOPSIS +.Nm palette +.Op Ar red green blue Op Ar code +.Sh DESCRIPTION +The +.Nm +utility manipulates the colormap of x68k's console. +The value of the color cell number +.Ar code +is replaced according to the arguments +.Ar red, green, blue +.Po +each value is an integer from +.Li 0 +to +.Li 31 +.Pc . +.Pp +Each part of the console corresponds to the +.Ar code : +.Bl -tag -width "foreground (default)" -compact +.It background +.Li 0 +.It cursor +.Li 1 +.It foreground (default) +.Li 7 +.El +.Pp +If no arguments are supplied, +.Nm +resets the colormap to the default. +.Sh HISTORY +A +.Nm +utility first appeared in +.Nx 1.4 . +.Sh BUGS +Quite a few. diff --git a/static/netbsd/man1/man1.x68k/tvctrl.1 b/static/netbsd/man1/man1.x68k/tvctrl.1 new file mode 100644 index 00000000..5a920e39 --- /dev/null +++ b/static/netbsd/man1/man1.x68k/tvctrl.1 @@ -0,0 +1,24 @@ +.\" $NetBSD: tvctrl.1,v 1.6 2019/09/01 14:40:07 sevan Exp $ +.\" +.\" This software is in the Public Domain. +.\" Author: Masaru Oki +.\" +.Dd September 1, 2019 +.Dt TVCTRL 1 x68k +.Os +.Sh NAME +.Nm tvctrl +.Nd control display-TV for X680x0 +.Sh SYNOPSIS +.Nm tvctrl +.Ar control_number +.Sh DESCRIPTION +.Nm tvctrl +is a display-TV control program for X680x0. +.Sh HISTORY +A +.Nm +utility first appeared in +.Nx 1.4 . +.Sh BUGS +Errors are not checked. diff --git a/static/netbsd/man1/wait.1 b/static/netbsd/man1/wait.1 new file mode 100644 index 00000000..90fa83fd --- /dev/null +++ b/static/netbsd/man1/wait.1 @@ -0,0 +1,98 @@ +.\" $NetBSD: wait.1,v 1.5 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)wait.1 8.1 (Berkeley) 6/5/93 +.\" +.Dd June 5, 1993 +.Dt WAIT 1 +.Os +.Sh NAME +.Nm wait +.Nd await process completion +.Sh SYNOPSIS +.Nm wait +.Op Ar pid +.Sh DESCRIPTION +If invoked with no arguments, the +.Nm wait +utility waits until +all existing child processes in the background +have terminated. +.Pp +Available operands: +.Bl -tag -width Ds +.It Ar pid +If a +.Ar pid +operand is specified, and it is the process ID of a +background child process that still exists, the +.Nm wait +utility +waits until that process has completed and consumes its +status information, without consuming the status information +of any other process. +.Pp +If a pid operand is specified that is not the process ID of +a child background process that still exists, +.Nm wait +exits +without waiting for any processes to complete. +.El +.Pp +The +.Nm wait +utility exits with one of the following values: +.Bl -tag -width Ds +.It \&0 +The +.Nm wait +utility was invoked with no operands and +all of the existing background child processes have +terminated, or the process specified by the pid +operand exited normally with 0 as its exit status. +.It \&>\&0 +The specified process did not exist and its exit +status information was not available, or the specified +process existed or its exit status information +was available, and it terminated with a non-zero +exit status. +.El +.Pp +If the specified process terminated abnormally due +to the receipt of a signal, the exit status +information of +.Nm wait +contains that termination status as +well. +.Sh STANDARDS +The +.Nm wait +command is expected to be +.St -p1003.2 +compatible. diff --git a/static/netbsd/man2/Makefile b/static/netbsd/man2/Makefile new file mode 100644 index 00000000..3766686c --- /dev/null +++ b/static/netbsd/man2/Makefile @@ -0,0 +1,4 @@ +MAN = $(wildcard *.2) + +include ../../mandoc.mk + diff --git a/static/netbsd/man2/siginfo.2 b/static/netbsd/man2/siginfo.2 new file mode 100644 index 00000000..61cae785 --- /dev/null +++ b/static/netbsd/man2/siginfo.2 @@ -0,0 +1,442 @@ +.\" $NetBSD: siginfo.2,v 1.24 2020/06/08 17:19:44 sevan Exp $ +.\" +.\" Copyright (c) 2003 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 25, 2019 +.Dt SIGINFO 2 +.Os +.Sh NAME +.Nm siginfo +.Nd signal information +.Sh SYNOPSIS +.In signal.h +.Sh DESCRIPTION +.Nm +is a structure type which contains information about a signal delivered +to a process. +.Pp +.Nm +includes the following members: +.Bd -literal -offset indent +int si_signo; +int si_errno; +int si_code; +.Ed +.Pp +.Fa si_signo +contains the signal number generated by the system. +.Pp +If +.Fa si_errno +is non-zero, then it contains a system specific error number associated +with this signal. +This number is defined in +.Xr errno 2 . +.Pp +If +.Fa si_code +is less than or equal to zero, the signal was generated by a user process +or a user requested service: +.Bl -tag -width SI_ASYNCIO +.It SI_USER +The signal was generated via +.Xr kill 2 . +The +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +pid_t si_pid; +uid_t si_uid; +.Ed +.Pp +The +.Fa si_pid +field contains the pid of the sending process and the +.Fa si_uid +field contains the user id of the sending process. +.It SI_QUEUE +The signal was generated via +.Xr sigqueue 2 . +The +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +pid_t si_pid; +uid_t si_uid; +sigval_t si_value; +.Ed +.Pp +The +.Fa si_pid +field contains the pid of the sending process and the +.Fa si_uid +field contains the user id of the sending process. +Finally, the +.Fa si_value +field contains the value sent via +.Xr sigqueue 2 . +.It SI_TIMER +The signal was generated because a timer set by +.Xr timer_settime 2 +has expired. +The +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +sigval_t si_value; +.Ed +.Pp +The +.Fa si_value +field contains the value set via +.Xr timer_create 2 . +.It SI_ASYNCIO +The signal was generated by completion of an asynchronous I/O operation. +The +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +int si_fd; +long si_band; +.Ed +.Pp +The +.Fa si_fd +argument contains the file descriptor number on which the operation was +completed and the +.Fa si_band +field contains the side and priority of the operation. +If the operation was a normal read, +.Fa si_band +will contain +.Dv POLLIN | POLLRDNORM ; +on an out-of-band read it will contain +.Dv POLLPRI | POLLRDBAND ; +on a normal write it will contain +.Dv POLLOUT | POLLWRNORM ; +on an out-of-band write it will contain +.Dv POLLPRI | POLLWRBAND . +.It SI_MESGQ +The signal was generated because of the arrival of a message on an empty +message queue. +See +.Xr mq_notify 3 . +.It SI_LWP +The signal was generated via +.Xr _lwp_kill 2 . +The +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +pid_t si_pid; +uid_t si_uid; +.Ed +.Pp +The +.Fa si_pid +field contains the pid of the sending process and the +.Fa si_uid +field contains the user id of the sending process. +.It SI_NOINFO +The signal was generated without specific info available. +.El +.Pp +If +.Fa si_code +is positive, then it contains a signal specific reason +why the signal was generated: +.Bl -tag -width SIGCHLD +.It SIGILL +.Bl -tag -width ILL_ILLOPC +.It ILL_BADSTK +Internal stack error +.It ILL_COPROC +Coprocessor error +.It ILL_ILLADR +Illegal addressing mode +.It ILL_ILLOPC +Illegal opcode +.It ILL_ILLOPN +Illegal operand +.It ILL_ILLTRP +Illegal trap +.It ILL_PRVOPC +Privileged opcode +.It ILL_PRVREG +Privileged register +.El +.It SIGFPE +.Bl -tag -width FPE_INTDIV +.It FPE_FLTDIV +Floating-point divide by zero +.It FPE_FLTINV +Invalid floating-point operation +.It FPE_FLTOVF +Floating-point overflow +.It FPE_FLTRES +Floating-point inexact result +.It FPE_FLTUND +Floating-point underflow +.It FPE_FLTSUB +Subscript out of range +.It FPE_INTDIV +Integer divide by zero +.It FPE_INTOVF +Integer overflow +.El +.It SIGSEGV +.Bl -tag -width SEGV_MAPERR +.It SEGV_ACCERR +Invalid permissions for mapped object +.It SEGV_MAPERR +Address not mapped to object +.El +.It SIGBUS +.Bl -tag -width BUS_ADRALN +.It BUS_ADRALN +Invalid address alignment +.It BUS_ADRERR +Nonexistent physical address +.It BUS_OBJERR +Object-specific hardware error +.El +.It SIGTRAP +.Bl -tag -width TRAP_BRKPT +.It TRAP_BRKPT +Process breakpoint +.It TRAP_CHLD +Process child trap +.It TRAP_DBREG +Process hardware debug register trap +.It TRAP_EXEC +Process exec trap +.It TRAP_LWP +Process LWP trap +.It TRAP_SCE +Process syscall entry trap +.It TRAP_SCX +Process syscall exit trap +.It TRAP_TRACE +Process trace trap +.El +.It SIGCHLD +.Bl -tag -width CLD_CONTINUED +.It CLD_CONTINUED +Stopped child has continued +.It CLD_DUMPED +Child has terminated abnormally and created a core file +.It CLD_EXITED +Child has exited +.It CLD_KILLED +Child has terminated abnormally but did not create a core file +.It CLD_STOPPED +Child has stopped +.It CLD_TRAPPED +Traced child has trapped +.El +.It SIGIO +.Bl -tag -width POLL_OUT +.It POLL_ERR +I/O error +.It POLL_HUP +Device disconnected +.It POLL_IN +Data input available +.It POLL_MSG +Input message available +.It POLL_OUT +Output buffers available +.It POLL_PRI +High priority input available +.El +.El +.Pp +For +.Dv SIGILL , +.Dv SIGFPE , +.Dv SIGBUS +and +.Dv SIGSEGV +the +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +void *si_addr; +int si_trap; +.Ed +.Pp +.Fa si_addr +contains the address of the faulting instruction or data and +.Fa si_trap +contains a hardware specific reason. +.Pp +For +.Dv SIGTRAP +and +.Dv TRAP_BRKPT , +.Dv TRAP_TRACE +or +.Dv TRAP_DBREG +the +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +void *si_addr; +int si_trap; +.Ed +.Pp +.Fa si_addr +contains the address of the faulting data and +.Fa si_trap +contains a hardware specific reason. +.Pp +For +.Dv SIGTRAP +and +.Dv TRAP_SCE +or +.Dv TRAP_SCX +the +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +int si_sysnum; +int si_retval[2]; +int si_error; +uint64_t si_args[8]; +.Ed +.Pp +.Fa si_sysnum +contains the syscall number, +.Fa si_retval +contains the syscall return value (meaningful for +.Dv TRAP_SCX +only), +.Fa si_error +contains the syscall error value (meaningful for +.Dv TRAP_SCX +only) and +.Fa si_args[8] +contains the syscall arguments, +.Pp +For +.Dv SIGIO +the +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +int si_fd; +long si_band; +.Ed +.Pp +The +.Fa si_fd +argument contains the file descriptor number on which the operation was +completed and the +.Fa si_band +field contains the side and priority of the operation as described above. +.Pp +Finally, for +.Dv SIGCHLD +the +.Nm +structure contains the following additional members: +.Bd -literal -offset indent +pid_t si_pid; +uid_t si_uid; +int si_status; +clock_t si_utime; +clock_t si_stime; +.Ed +.Pp +The +.Fa si_pid +field contains the pid of the process who's status changed, the +.Fa si_uid +field contains the user id of the that process, the +.Fa si_status +field contains either the exit code of the process (for +.Dv CLD_EXITED ) , +or the signal number received by the process. +.Xr waitid 2 , +.Xr waitpid 2 , +and the +.Fa si_utime +and +.Fa si_stime +fields contain the user and system process accounting time. +.Sh STANDARDS +The +.Nm +type conforms to +.St -xsh5 . +.Pp +Signals specifying +.Dv SI_LWP +or +.Dv SI_NOINFO +are +.Nx +extensions. +.Pp +The +.Dv TRAP_CHLD , +.Dv TRAP_DBREG , +.Dv TRAP_EXEC , +.Dv TRAP_LWP , +.Dv TRAP_SCE +and +.Dv TRAP_SCX +signal specific reasons of +.Dv SIGTRAP +are +.Nx +extensions. +.Sh HISTORY +The +.Nm +functionality first appeared in +.At V.4 . +.Pp +.Dv TRAP_CHLD , +.Dv TRAP_DBREG , +.Dv TRAP_EXEC , +.Dv TRAP_LWP , +.Dv TRAP_SCE +and +.Dv TRAP_SCX +first appeared +in +.Nx 8 . +.Pp +The additional parameters with syscall information in +.Dv TRAP_SCE +and +.Dv TRAP_SCX +first appeared in +.Nx 9 . diff --git a/static/netbsd/man2/ucontext.2 b/static/netbsd/man2/ucontext.2 new file mode 100644 index 00000000..21a937b2 --- /dev/null +++ b/static/netbsd/man2/ucontext.2 @@ -0,0 +1,137 @@ +.\" $NetBSD: ucontext.2,v 1.10 2018/02/27 10:09:42 uwe Exp $ +.\" +.\" Copyright (c) 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Klaus Klein. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd February 25, 2018 +.Dt UCONTEXT 2 +.Os +.Sh NAME +.Nm ucontext +.Nd user context +.Sh SYNOPSIS +.In ucontext.h +.Fn _UC_MACHINE_SP "&uc" +.Fn _UC_MACHINE_FP "&uc" +.Fn _UC_MACHINE_PC "&uc" +.Fn _UC_MACHINE_INTRV "&uc" +.Fn _UC_MACHINE_SET_PC "&uc" +.Sh DESCRIPTION +The +.Vt ucontext_t +is a structure type which is used to describe the context of a +thread of control within the execution of a process. +A thread's context includes its stack, saved registers, and list of +blocked signals. +.Pp +The +.Vt ucontext_t +structure includes the following members: +.Bd -literal -offset indent +ucontext_t *uc_link +sigset_t uc_sigmask +stack_t uc_stack +mcontext_t uc_mcontext +.Ed +.Pp +The +.Fa uc_link +member points to the context that will be resumed after the function +specified when modifying a context using +.Xr makecontext 3 +has returned. +If +.Fa uc_link +is a +.Dv NULL +pointer, then the context is the main context, +and the process will exit with an exit status of 0 upon return. +.Pp +The +.Fa uc_sigmask +member is the set of signals that are blocked when the context is +activated. +Further information can be found in +.Xr sigprocmask 2 . +.Pp +The +.Fa uc_stack +member defines the stack used by the context. +Further information can be found in +.Xr sigaltstack 2 . +.Pp +The +.Fa uc_mcontext +member defines the machine state associated with the context; +it may consist of general registers, floating point registers +and other machine-specific information. +Its description is beyond the scope of this manual page; +portable applications should not access this structure member. +.Pp +The following auxiliary macros are available to access some of that +machine-specific information: +.Bl -tag -width ".Fn _UC_MACHINE_SET_PC" -offset indent +.It Fn _UC_MACHINE_SP +\(em read stack pointer, +.It Fn _UC_MACHINE_FP +\(em read frame pointer (base pointer), +.It Fn _UC_MACHINE_PC +\(em read program counter, +.It Fn _UC_MACHINE_INTRV +\(em read integer return value, +.It Fn _UC_MACHINE_SET_PC +\(em write program counter. +.El +.Pp +The frame pointer macro does not guarantee to retrieve a reliable value +and should not be used in a code unless no other debugging format is +easily accessible. +A compiler might optimize the frame pointer register in a function, +reusing it as a general purpose register storage +.Fl ( fomit-frame-pointer ) +or emit function prologues only before parts that need them +.Fl ( fshrink-wrap ) . +.Sh SEE ALSO +.Xr _exit 2 , +.Xr getcontext 2 , +.Xr setcontext 2 , +.Xr sigaltstack 2 , +.Xr sigprocmask 2 , +.Xr makecontext 3 , +.Xr swapcontext 3 +.Sh STANDARDS +The +.Vt ucontext_t +type conforms to +.St -xsh5 +and +.St -p1003.1-2001 . +The +.St -p1003.1-2008 +revision removed the +.Vt ucontext_t +from the specification. diff --git a/static/netbsd/man3/CMSG_DATA.3 b/static/netbsd/man3/CMSG_DATA.3 new file mode 100644 index 00000000..f755e147 --- /dev/null +++ b/static/netbsd/man3/CMSG_DATA.3 @@ -0,0 +1,188 @@ +.\" $NetBSD: CMSG_DATA.3,v 1.6 2025/03/26 14:12:16 riastradh Exp $ +.\" $OpenBSD: CMSG_DATA.3,v 1.5 2008/03/24 16:11:07 deraadt Exp $ +.\" Written by Jared Yanovich +.\" Public domain, July 3, 2005 +.Dd January 24, 2015 +.Dt CMSG_DATA 3 +.Os +.Sh NAME +.Nm CMSG_DATA , +.Nm CMSG_FIRSTHDR , +.Nm CMSG_LEN , +.Nm CMSG_NXTHDR , +.Nm CMSG_SPACE +.Nd socket control message routines +.Sh SYNOPSIS +.In sys/socket.h +.Ft unsigned char * +.Fn CMSG_DATA "struct cmsghdr *" +.Ft const unsigned char * +.Fn CCMSG_DATA "struct cmsghdr *" +.Ft struct cmsghdr * +.Fn CMSG_FIRSTHDR "struct msghdr *" +.Ft size_t +.Fn CMSG_LEN "size_t" +.Ft struct cmsghdr * +.Fn CMSG_NXTHDR "struct msghdr *" "struct cmsghdr *" +.Ft size_t +.Fn CMSG_SPACE "size_t" +.Sh DESCRIPTION +The control message API is used to construct ancillary data objects for +use in control messages sent and received across sockets. +.Pp +Control messages are passed around by the +.Xr recvmsg 2 +and +.Xr sendmsg 2 +system calls. +The +.Vt cmsghdr +structure, described in +.Xr recvmsg 2 , +is used to specify a chain of control messages. +.Pp +These routines should be used instead of directly accessing the control +message header members and data buffers as they ensure that necessary +alignment constraints are met. +.Pp +The following routines are provided: +.Bl -tag -width Ds +.It Fn CMSG_DATA cmsg +This routine accesses the data portion of the control message header +.Fa cmsg . +It ensures proper alignment constraints on the beginning of ancillary +data are met. +.It Fn CMSG_FIRSTHDR mhdr +This routine accesses the first control message attached to the +message +.Fa msg . +If no control messages are attached to the message, this routine +returns +.Dv NULL . +.It Fn CMSG_LEN len +This routine determines the size in bytes of a control message, +which includes the control message header. +.Fa len +specifies the length of the data held by the control message. +.Pp +This value is what is normally stored in the +.Fa cmsg_len +of each control message. +.Pp +This routine accounts for any alignment constraints on the beginning of +ancillary data. +.Pp +If +.Fa len +is an integer constant expression, then +.Fn CMSG_LEN len +is an integer constant expression. +.It Fn CMSG_NXTHDR mhdr cmsg +This routine returns the location of the control message following +.Fa cmsg +in the message +.Fa mhdr . +If +.Fa cmsg +is the last control message in the chain, this routine returns +.Dv NULL . +.It Fn CMSG_SPACE len +This routine determines the size in bytes needed to hold a control +message and its contents of length +.Fa len , +which includes the control message header. +.Pp +This value is what is normally stored in +.Fa msg_msgcontrollen . +.Pp +This routine accounts for any alignment constraints on the beginning of +ancillary data as well as any needed to pad the next control message. +.Pp +If +.Fa len +is an integer constant expression, then +.Fn CMSG_SPACE len +is an integer constant expression. +.El +.Sh EXAMPLES +The following example constructs a control message containing a file +descriptor and passes it over a socket: +.Bd -literal -offset indent +struct msghdr msg; +struct cmsghdr *cmsg; +/* We use a union to make sure hdr is aligned */ +union { + struct cmsghdr hdr; + unsigned char buf[CMSG_SPACE(sizeof(int))]; +} cmsgbuf; + +(void)memset(&msg, 0, sizeof(msg)); +msg.msg_control = cmsgbuf.buf; +msg.msg_controllen = sizeof(cmsgbuf.buf); + +cmsg = CMSG_FIRSTHDR(&msg); +cmsg->cmsg_len = CMSG_LEN(sizeof(int)); +cmsg->cmsg_level = SOL_SOCKET; +cmsg->cmsg_type = SCM_RIGHTS; +*(int *)CMSG_DATA(cmsg) = fd; + +if (sendmsg(s, &msg, 0) == -1) + err(1, "sendmsg"); +.Ed +.Pp +And an example that receives the control message and handles all the +file descriptors it receives: +.Bd -literal -offset indent +struct msghdr msg; +struct cmsghdr *cmsg; +union { + struct cmsghdr hdr; + unsigned char buf[CMSG_SPACE(sizeof(int))]; +} cmsgbuf; + +(void)memset(&msg, 0, sizeof(msg)); +msg.msg_control = cmsgbuf.buf; +msg.msg_controllen = sizeof(cmsgbuf.buf); + +if (recvmsg(s, &msg, 0) == -1) + err(1, "recvmsg"); +if (msg.msg_flags & MSG_CTRUNC) + warnx("control message truncated"); +for (cmsg = CMSG_FIRSTHDR(&msg); cmsg != NULL; + cmsg = CMSG_NXTHDR(&msg, cmsg)) { + if (cmsg->cmsg_level == SOL_SOCKET && + cmsg->cmsg_type == SCM_RIGHTS) { + int *fdp = (int *)CMSG_DATA(cmsg); + socklen_t nbytes = cmsg->cmsg_len - CMSG_LEN(0); + socklen_t nfds = nbytes/sizeof(fdp[0]); + + assert(nbytes % sizeof(fdp[0]) == 0); + + while (nfds --> 0) { + int fd = *fdp++; + + /* Do something with the descriptor. */ + } + } +} +.Ed +.Pp +Note that even if the receiver +.Em intends +to size its control buffer for +.Em one +file descriptor with +.Li CMSG_SPACE(sizeof(int)) , +this size may be rounded up for alignment to enough space for more than +one file descriptor. +So if the sender may send more than one file descriptor at a time, the +receiver cannot restrict itself to receiving at most one at a time, and +must be prepared to handle all of them \(em otherwise they will simply +leak on the receiver side. +.Sh SEE ALSO +.Xr recvmsg 2 , +.Xr sendmsg 2 , +.Xr socket 2 +.Sh HISTORY +The control message API first appeared in +.Bx 4.2 . diff --git a/static/netbsd/man3/Makefile b/static/netbsd/man3/Makefile new file mode 100644 index 00000000..b3d61c4b --- /dev/null +++ b/static/netbsd/man3/Makefile @@ -0,0 +1,4 @@ +MAN = $(wildcard *.3) + +include ../../mandoc.mk + diff --git a/static/netbsd/man3/_DIAGASSERT.3 b/static/netbsd/man3/_DIAGASSERT.3 new file mode 100644 index 00000000..4df491b9 --- /dev/null +++ b/static/netbsd/man3/_DIAGASSERT.3 @@ -0,0 +1,130 @@ +.\" $NetBSD: _DIAGASSERT.3,v 1.8 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Luke Mewburn. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 22, 2007 +.Dt _DIAGASSERT 3 +.Os +.Sh NAME +.Nm _DIAGASSERT +.Nd expression verification macro +.Sh SYNOPSIS +.In assert.h +.Fn _DIAGASSERT expression +.Sh DESCRIPTION +The +.Fn _DIAGASSERT +macro tests the given +.Ar expression +and if it is false, one or more of the following may occur: +.Bl -bullet -offset indent +.It +a diagnostic message may be logged to the system logger with +.Xr syslog 3 . +This is default behaviour. +.It +a diagnostic message may be printed to the +.Dv stderr +stream. +.It +the calling process will be terminated by calling +.Xr abort 3 . +.El +.Pp +This behaviour may be changed by setting the +.Ev LIBC_DIAGASSERT +environment variable (see below). +.Pp +The diagnostic message consists of the text of the expression, +the name of the source file, the line number and the enclosing +function. +.Pp +If +.Ar expression +is true, +the +.Fn _DIAGASSERT +macro does nothing. +.Pp +The +.Fn _DIAGASSERT +macro is not compiled in by default, and will only be compiled in with the +.Xr cc 1 +option +.Fl D_DIAGNOSTIC . +.Pp +This macro is used in the various system libraries such as the +.Lb libc +to ensure that various library calls are invoked with valid arguments. +.Sh ENVIRONMENT +The +.Ev LIBC_DIAGASSERT +environment variable can be used to modify the default behaviour of +logging the assertion to the system logger. +.Pp +.Ev LIBC_DIAGASSERT +may be set to one or more of the following characters: +.Bl -tag -width xxx -offset indent +.It a +.Xr abort 3 +once any assertion messages have been logged and/or printed. +.It A +Opposite of +.Dq a . +.It e +Print the assertion message to the +.Dv stderr +stream. +.It E +Opposite of +.Dq e . +.It l +Log the assertion message with +.Xr syslog 3 +to the facility +.Dv user.debug . +.It L +Opposite of +.Dq l . +.El +.Sh DIAGNOSTICS +The diagnostic message has the following format: +.Bd -literal -offset indent +"assertion \e"%s\e" failed: file \e"%s\e", line %d, function \e"%s\e"\en", + "expression", __FILE__, __LINE__, __func__ +.Ed +.Sh SEE ALSO +.Xr cc 1 , +.Xr abort 3 , +.Xr assert 3 , +.Xr syslog 3 +.Sh HISTORY +The +.Nm _DIAGASSERT +macro appeared in +.Nx 1.5 . diff --git a/static/netbsd/man3/__CONCAT.3 b/static/netbsd/man3/__CONCAT.3 new file mode 100644 index 00000000..fd99a81c --- /dev/null +++ b/static/netbsd/man3/__CONCAT.3 @@ -0,0 +1,108 @@ +.\" $NetBSD: __CONCAT.3,v 1.8 2013/10/17 20:43:49 wiz Exp $ $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 17, 2013 +.Dt __CONCAT 3 +.Os +.Sh NAME +.Nm __CONCAT , +.Nm __STRING +.Nd argument substitution +.Sh SYNOPSIS +.In sys/cdefs.h +.Ft xy +.Fn __CONCAT "x" "y" +.Ft const char * +.Fn __STRING "x" +.Sh DESCRIPTION +The +.Nm +macro makes use of the +.Xr cpp 1 +preprocessor to concatenate two tokens. +When the macro is expanded, +.Fa x +and +.Fa y +are combined into a single token, provided that the result forms a valid token; +two tokens that together do not form a valid token can not be concatenated. +This is known as +.Dq token concatenation +or +.Dq token pasting . +.Pp +The +.Fn __STRING +macro uses the conventional +.Sq # +preprocessing operator to replace the argument +.Fa x +with a string literal. +This is also known as +.Dq stringification . +.Sh EXAMPLES +The following two +.Xr printf 3 +calls produce the same output: +.Bd -literal -offset indent +#define Net 0x01 +#define BSD 0x02 + +#define NetBSD "NetBSD" + +(void)printf("%s\en", __CONCAT(Net, BSD)); +(void)printf("%s%s\en", __STRING(Net), __STRING(BSD)); +.Ed +.Sh SEE ALSO +.Xr cpp 1 , +.Xr cdefs 3 +.Sh HISTORY +The +.Fn __CONCAT +and +.Fn __STRING +macros first appeared in +.Nx 1.3 . +.Sh CAVEATS +Many small details direct the proper use of the macros. +For example, while all leading and trailing whitespace is ignored when +.Fn __STRING +is used, it is undefined whether +.Xr cpp 1 +puts white space between the tokens when +.Fn __CONCAT +is used. +It can be also noted that the C preprocessor converts all +comments to whitespace before any macros are even considered. +The use of either macro is discouraged in complex constructs. +.Pp +Use of this macro is non-portable; this is part of the implementation +namespace and should only be used in +.Nx +code. diff --git a/static/netbsd/man3/__FPTRCAST.3 b/static/netbsd/man3/__FPTRCAST.3 new file mode 100644 index 00000000..4c6d5ed2 --- /dev/null +++ b/static/netbsd/man3/__FPTRCAST.3 @@ -0,0 +1,80 @@ +.\" $NetBSD: __FPTRCAST.3,v 1.2 2019/11/11 11:06:27 wiz Exp $ $ +.\" +.\" Copyright (c) 2019 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 17, 2013 +.Dt __FPTRCAST 3 +.Os +.Sh NAME +.Nm __FPTRCAST +.Nd function pointer cast +.Sh SYNOPSIS +.In sys/cdefs.h +.Ft ftype +.Fn __FPTRCAST ftype fname +.Sh DESCRIPTION +The +.Fn __FPTRCAST +macro can be used to silence warnings produced by certain compilers when +converting from one function pointer type to another. +The +.Fa ftype +argument is the function pointer type to which to cast the function +pointer in +.Fa fname . +.Pp +This cast should be used sparingly and it is typically used in the following +situations: +.Bl -bullet -offset indent -compact +.It +We know that the function prototypes don't match at all, but we don't care +because we point it to a function that does not take arguments and returns +an error. +.It +We only care about the first few arguments and we don't care about the rest. +.It +We don't care about the return value, we ignore it anyway. +.El +.Sh IMPLEMENTATION NOTES +This macro is implemented by using an intermediate +.Em void * +cast. +.Sh SEE ALSO +.Xr cc 1 , +.Xr cdefs 3 +.Sh CAVEATS +Use of this macro can hide valid errors, and its usage is not recommended +unless there is a well-thought reason for a cast. +As a general guideline, don't use this macro inside other macros because +it will hide cases where the user of the original macro accidentally used +an incorrect function pointer. +.Pp +Use of this macro is non-portable; this is part of the implementation +namespace and should only be used in +.Nx +code. diff --git a/static/netbsd/man3/__UNCONST.3 b/static/netbsd/man3/__UNCONST.3 new file mode 100644 index 00000000..32f73647 --- /dev/null +++ b/static/netbsd/man3/__UNCONST.3 @@ -0,0 +1,88 @@ +.\" $NetBSD: __UNCONST.3,v 1.7 2013/10/17 20:43:49 wiz Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 17, 2013 +.Dt __UNCONST 3 +.Os +.Sh NAME +.Nm __UNCONST +.Nd compile time cast-away macro +.Sh SYNOPSIS +.In sys/cdefs.h +.Ft void +.Fn __UNCONST x +.Ft void +.Fn __UNVOLATILE x +.Sh DESCRIPTION +The +.Fn __UNCONST +macro can be used to omit warnings produced by certain compilers when +operating with pointers declared with the +.Em const +type qualifier in a context without such qualifier. +Examples include passing a pointer declared with the +.Em const +qualifier to a function without such qualifier, +and variable assignment from a +.Em const +pointer to a non-const pointer. +In the same vein, the +.Fn __UNVOLATILE +macro can be used to exclude warnings related to the +.Em volatile +type qualifier. +.Sh IMPLEMENTATION NOTES +These macros are implemented by explicitly using +.Em unsigned long +instead of +.Em intptr_t , +a signed type guaranteed to hold a pointer. +.Sh SEE ALSO +.Xr cc 1 , +.Xr cdefs 3 +.Sh CAVEATS +As both macros may hide valid errors, their usage is not recommended +unless there is a well-thought reason for a cast. +A typical use case for +.Fn __UNCONST +involve an +.Tn API +that does not follow the so-called ``const correctness'' +even if it would be appropriate. +Valid use cases of +.Fn __UNVOLATILE +include passing a +.Em volatile +pointer to +.Xr memset 3 . +.Pp +Use of this macro is non-portable; this is part of the implementation +namespace and should only be used in +.Nx +code. diff --git a/static/netbsd/man3/__USE.3 b/static/netbsd/man3/__USE.3 new file mode 100644 index 00000000..d32df999 --- /dev/null +++ b/static/netbsd/man3/__USE.3 @@ -0,0 +1,122 @@ +.\" $NetBSD: __USE.3,v 1.2 2013/10/17 19:37:56 jnemeth Exp $ +.\" +.\" Copyright (c) 2013 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 17, 2013 +.Dt __USE 3 +.Os +.Sh NAME +.Nm __USE +.Nd compile time macro that marks a variable as being used +.Sh SYNOPSIS +.In sys/cdefs.h +.Ft void +.Fn __USE x +.Sh DESCRIPTION +The +.Nm __USE +macro can be used to omit warnings produced by certain compilers when +variables are being set, but not used in a function. +.Pp +There are cases where it is simpler to mark a variable as used, as opposed +to ifdef out its use: +.Bd -literal -offset indent +#ifdef DEBUG_FOO +#define DPRINTF(a) printf a +#else +#define DPRINTF(a) + +void +foo(void) { + int var; + + var = getval(); + + DPRINTF(("val is %d\n", var)); +} +.Ed +.Pp +In this case, ifdefing the code would make it: +.Bd -literal -offset indent +void +foo(void) { +#ifdef DEBUG_FOO + int var; + + var = getval(); + + DPRINTF(("val is %d\n", var)); +#else + (void)getval(); +#endif +} +.Ed +.Pp +This is not desirable because it duplicates code. +With the +.Nm __USE +macro this can be written as: +.Bd -literal -offset indent +void +foo(void) { + int var; + + var = getval(); + +#ifdef DEBUG_FOO + DPRINTF(("val is %d\n", var)); +#else + __USE(var); +#endif +} +.Ed +.Pp +without producing compiler warnings. +.Pp +Although it is simple to write: +.Bd -literal -offset indent + (void)var; +.Ed +.Pp +abstracting this into the macro allows for alternate implementations, +as well as changing it to an empty implementation so that the liveness +of the variable can be re-evaluated. +.Sh IMPLEMENTATION NOTES +.Nm +is implemented as: +.Bd -literal -offset indent +#define __USE(a) ((void)(a)) +.Ed +.Sh SEE ALSO +.Xr cc 1 , +.Xr cdefs 3 +.Sh CAVEATS +.Nm +should be used sparingly as it can cause valid warnings to be hidden. +.Pp +Use of this macro is non-portable; this is part of the implementation +namespace and should only be used in +.Nx +code. diff --git a/static/netbsd/man3/__alignof__.3 b/static/netbsd/man3/__alignof__.3 new file mode 100644 index 00000000..b61b9bdb --- /dev/null +++ b/static/netbsd/man3/__alignof__.3 @@ -0,0 +1,84 @@ +.\" $NetBSD: __alignof__.3,v 1.5 2011/04/14 06:56:28 wiz Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 20, 2010 +.Dt __ALIGNOF__ 3 +.Os +.Sh NAME +.Nm __alignof__ +.Nd GNU extension for alignment of an object +.Sh SYNOPSIS +.Ft int +.Fn __alignof__ "void x" +.Sh DESCRIPTION +The +.Fn __alignof__ +operator returns the alignment of its operand. +The operand can be a type or an expression. +If the operand is a +.Sq lvalue , +the return value represents the required alignment of the underlying type, +not the actual alignment of the specified +.Sq lvalue . +.Pp +The returned value is specific to the architecture and the +.Tn ABI . +If the architecture does not impose strict alignment requirements, +.Fn __alignof__ +returns the minimum required alignment. +If +.Xr __aligned 3 +is used to increase the alignment, +.Fn __alignof__ +returns the specified alignment. +.Sh EXAMPLES +The syntax is comparable to the +.Fn sizeof +operator. +If the architecture aligns integers along 32-bit address boundaries, +the following should print the value 4. +.Bd -literal -offset indent +(void)printf("%d\en", __alignof__(int)); +.Ed +.Pp +On the other hand, the following example should print the value 1, +even though this is unlikely to be the actual alignment of the +structure member. +.Bd -literal -offset indent +struct align { + int x; + char y; +} a; + +(void)printf("%d\en", __alignof__(a.y)); +.Ed +.Sh SEE ALSO +.Xr gcc 1 , +.Xr attribute 3 , +.Xr offsetof 3 , +.Xr typeof 3 +.Sh CAVEATS +This is a non-standard, compiler-specific extension. diff --git a/static/netbsd/man3/__arraycount.3 b/static/netbsd/man3/__arraycount.3 new file mode 100644 index 00000000..61b9ce47 --- /dev/null +++ b/static/netbsd/man3/__arraycount.3 @@ -0,0 +1,62 @@ +.\" $NetBSD: __arraycount.3,v 1.7 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 16, 2010 +.Dt __ARRAYCOUNT 3 +.Os +.Sh NAME +.Nm __arraycount +.Nd macro for statically allocated arrays +.Sh SYNOPSIS +.In sys/cdefs.h +.Ft size_t +.Fn __arraycount x +.Sh DESCRIPTION +The +.Fn __arraycount +macro returns the number of elements in a statically allocated buffer. +.Sh EXAMPLES +The following example demonstrates a typical usage of +.Fn __arraycount : +.Bd -literal -offset indent +uint8_t buf[BUFSIZE]; +size_t i; + +\&... + +for (i = 0; i < __arraycount(buf); i++) + \&... +.Ed +.Sh SEE ALSO +.Xr cdefs 3 +.Sh HISTORY +The +.Fn __arraycount +macro first appeared in +.Nx 4.0 . diff --git a/static/netbsd/man3/__builtin_constant_p.3 b/static/netbsd/man3/__builtin_constant_p.3 new file mode 100644 index 00000000..2083c122 --- /dev/null +++ b/static/netbsd/man3/__builtin_constant_p.3 @@ -0,0 +1,78 @@ +.\" $NetBSD: __builtin_constant_p.3,v 1.2 2010/12/19 10:08:44 jruoho Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 19, 2010 +.Dt __BUILTIN_CONSTANT_P 3 +.Os +.Sh NAME +.Nm __builtin_constant_p +.Nd GNU extension to determine compile time constants +.Sh SYNOPSIS +.Ft int +.Fn __builtin_constant_p "value" +.Sh DESCRIPTION +The +.Fn __builtin_constant_p +is a +.Tn GNU +extension for determining whether a value +is known to be constant at compile time. +The function is closely related to the concept of +.Dq constant folding +used by modern optimizing compilers. +.Pp +If the +.Fa value +is known to be a compile-time constant, a value 1 is returned. +If +.Fn __builtin_constant_p +returns 0, the +.Fa value +is not a compile-time constant in the sense that +.Xr gcc 1 +was unable to determine whether the value is constant or not. +.Sh EXAMPLES +A typical example of the use of +.Fn __builtin_constant_p +involves a situation where it may be desirable to +fold the computation if it involves a constant, +but a function call is needed otherwise. +For instance, +.Xr bswap16 3 +is defined in +.Nx +as: +.Bd -literal -offset indent +#define bswap16(x) \\ + (__builtin_constant_p((x)) ? \\ + __byte_swap_u16_constant(x) : __BYTE_SWAP_U16_VARIABLE(x)) +.Ed +.Sh SEE ALSO +.Xr gcc 1 , +.Xr __builtin_object_size 3 , +.Xr __builtin_return_address 3 +.Sh CAVEATS +This is a non-standard, compiler-specific extension. diff --git a/static/netbsd/man3/__builtin_prefetch.3 b/static/netbsd/man3/__builtin_prefetch.3 new file mode 100644 index 00000000..21fce7a5 --- /dev/null +++ b/static/netbsd/man3/__builtin_prefetch.3 @@ -0,0 +1,115 @@ +.\" $NetBSD: __builtin_prefetch.3,v 1.4 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 22, 2010 +.Dt __BUILTIN_PREFETCH 3 +.Os +.Sh NAME +.Nm __builtin_prefetch +.Nd GNU extension to prefetch memory +.Sh SYNOPSIS +.Ft void +.Fn __builtin_prefetch "const void *addr" "..." +.Sh DESCRIPTION +The +.Fn __builtin_prefetch +function prefetches memory from +.Fa addr . +The rationale is to minimize cache-miss latency by +trying to move data into a cache before accessing the data. +Possible use cases include frequently called sections of code +in which it is known that the data in a given address is likely +to be accessed soon. +.Pp +In addition to +.Fa addr , +there are two optional +.Xr stdarg 3 +arguments, +.Fa rw +and +.Fa locality . +The value of the latter should be a compile-time +constant integer between 0 and 3. +The higher the value, the higher the temporal locality in the data. +When +.Fa locality +is 0, it is assumed that there is little or no temporal locality in the data; +after access, it is not necessary to leave the data in the cache. +The default value is 3. +The value of +.Fa rw +is either 0 or 1, corresponding with read and write prefetch, respectively. +The default value of +.Fa rw +is 0. +Also +.Fa rw +must be a compile-time constant integer. +.Pp +The +.Fn __builtin_prefetch +function translates into prefetch instructions +only if the architecture has support for these. +If there is no support, +.Fa addr +is evaluated only if it includes side effects, +although no warnings are issued by +.Xr gcc 1 . +.Sh EXAMPLES +The following optimization appears in the heavily used +.Fn cpu_in_cksum +function that calculates checksums for the +.Xr inet 4 +headers: +.Bd -literal -offset indent +while (mlen >= 32) { + __builtin_prefetch(data + 32); + partial += *(uint16_t *)data; + partial += *(uint16_t *)(data + 2); + partial += *(uint16_t *)(data + 4); + + \&... + + partial += *(uint16_t *)(data + 28); + partial += *(uint16_t *)(data + 30); + + data += 32; + mlen -= 32; + + \&... +.Ed +.Sh SEE ALSO +.Xr gcc 1 , +.Xr attribute 3 +.Rs +.%A Ulrich Drepper +.%T What Every Programmer Should Know About Memory +.%D November 21, 2007 +.%U https://www.akkadia.org/drepper/cpumemory.pdf +.Re +.Sh CAVEATS +This is a non-standard, compiler-specific extension. diff --git a/static/netbsd/man3/__builtin_return_address.3 b/static/netbsd/man3/__builtin_return_address.3 new file mode 100644 index 00000000..ca941c00 --- /dev/null +++ b/static/netbsd/man3/__builtin_return_address.3 @@ -0,0 +1,67 @@ +.\" $NetBSD: __builtin_return_address.3,v 1.1 2010/12/19 09:30:50 jruoho Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 19, 2010 +.Dt __BUILTIN_RETURN_ADDRESS 3 +.Os +.Sh NAME +.Nm __builtin_return_address +.Nd the return address of a function +.Sh SYNOPSIS +.Ft void * +.Fn __builtin_return_address "unsigned int level" +.Ft void * +.Fn __builtin_frame_address "unsigned int level" +.Sh DESCRIPTION +The +.Fn __builtin_return_address +is a +.Tn GNU +extension for obtaining the return address of the current function +or one of the callers of the current function. +.Pp +The parameter +.Fa level +specifies the number of frames that should be scanned up in the call stack. +A value 0 returns the address of the current function, +a value 1 requests the address of the caller of the current function, +a value 2 asks for the address of the caller's caller, and so forth. +If the top of the call stack has been reached, the function will return 0. +Note also that on some architectures it is only possible +to determine the address of the current function. +In such cases a value 0 is returned. +Thus, it is usually safe to only use the value 0 for +.Fa level . +.Pp +The +.Fn __builtin_frame_address +behaves similarly, but returns the address of the function +frame rather than the return address of the function. +.Sh SEE ALSO +.Xr gcc 1 , +.Xr __builtin_object_size 3 +.Sh CAVEATS +These are non-standard, compiler-specific extensions. diff --git a/static/netbsd/man3/__builtin_types_compatible_p.3 b/static/netbsd/man3/__builtin_types_compatible_p.3 new file mode 100644 index 00000000..32608d43 --- /dev/null +++ b/static/netbsd/man3/__builtin_types_compatible_p.3 @@ -0,0 +1,104 @@ +.\" $NetBSD: __builtin_types_compatible_p.3,v 1.2 2010/12/22 09:07:15 wiz Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 21, 2010 +.Dt __BUILTIN_TYPES_COMPATIBLE_P 3 +.Os +.Sh NAME +.Nm __builtin_types_compatible_p +.Nd GNU extension to check equivalent types +.Sh SYNOPSIS +.Ft int +.Fn __builtin_types_compatible_p "type_a" "type_b" +.Sh DESCRIPTION +The +.Fn __builtin_types_compatible_p +is a +.Tn GNU +extension for determining whether two types are equivalent. +If +.Fa type_a +is equivalent to +.Fa type_b , +a value 1 is returned. +Otherwise +.Fn __builtin_types_compatible_p +returns 0. +.Pp +The following remarks should be taken into account. +.Bl -enum -offset indent +.It +The architecture-specific size of the two types +does not have an impact on the result. +For example, +.Fn sizeof "char *" +and +.Fn sizeof "int" +result the same value on i386, but the types naturally are not equivalent. +.It +Type qualifiers are ignored. +The function returns the same value for +.Vt long +and +.Vt const long . +.It +The amount of pointer indirection affects the result. +For example, +.Vt double * +is not equivalent to +.Vt double ** . +.It +Two types defined with +.Em typedef +are equivalent if and only if their underlying types are equivalent. +.It +The +.Em enum +type is a special case in that two +.Em enum +types are not considered equivalent. +.El +.Sh EXAMPLES +The following example combines +.Fn __builtin_types_compatible_p +and the +.Xr typeof 3 +construct: +.Bd -literal -offset indent +#define __COMPARE_TYPES(v, t) \\ + __builtin_types_compatible_p(__typeof__(v), t) + +\&... + +if (__COMPARE_TYPES(p, double) != 0) + err(EX_DATAERR, "invalid type"); +.Ed +.Sh SEE ALSO +.Xr gcc 1 , +.Xr __builtin_constant_p 3 , +.Xr typeof 3 +.Sh CAVEATS +This is a non-standard, compiler-specific extension. diff --git a/static/netbsd/man3/__insn_barrier.3 b/static/netbsd/man3/__insn_barrier.3 new file mode 100644 index 00000000..4a7f2f8a --- /dev/null +++ b/static/netbsd/man3/__insn_barrier.3 @@ -0,0 +1,63 @@ +.\" $NetBSD: __insn_barrier.3,v 1.4 2017/11/13 09:11:16 wiz Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 2, 2011 +.Dt __INSN_BARRIER 3 +.Os +.Sh NAME +.Nm __insn_barrier +.Nd compiler reorder barrier +.Sh SYNOPSIS +.In sys/cdefs.h +.Ft void +.Fn __insn_barrier +.Sh DESCRIPTION +The +.Fn __insn_barrier +macro prevents GCC from moving code across the barrier. +In other words, the compiler is not allowed to reorder read and write +commands below the barrier with the code preceding the barrier. +Like with the +.Em volatile +type qualifier, +.Fn __insn_barrier +may be necessary in some corner cases to prevent the compiler +from misoptimizing. +.Sh SEE ALSO +.Xr gcc 1 , +.Xr cdefs 3 , +.Xr membar_ops 3 +.Rs +.%A Paul E. McKenney +.%T Memory Barriers: a Hardware View for Software Hackers +.%D June 7, 2010 +.%U http://www.rdrop.com/users/paulmck/scalability/paper/whymb.2010.06.07c.pdf +.Re +.Sh HISTORY +The +.Fn __insn_barrier +macro first appeared in +.Nx 2.0 . diff --git a/static/netbsd/man3/assert.3 b/static/netbsd/man3/assert.3 new file mode 100644 index 00000000..d7eb8a9b --- /dev/null +++ b/static/netbsd/man3/assert.3 @@ -0,0 +1,98 @@ +.\" $NetBSD: assert.3,v 1.14 2016/06/01 01:31:11 pgoyette Exp $ +.\" +.\" Copyright (c) 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)assert.3 8.1 (Berkeley) 6/9/93 +.\" +.Dd June 1, 2016 +.Dt ASSERT 3 +.Os +.Sh NAME +.Nm assert +.Nd expression verification macro +.Sh SYNOPSIS +.In assert.h +.Fn assert expression +.Sh DESCRIPTION +The +.Fn assert +macro tests the given +.Ar expression +and if it is false, +the calling process is terminated. +A diagnostic message, consisting of the text of the expression, +the name of the source file, the line number and the enclosing +function, +is written to +.Em stderr +and the +.Xr abort 3 +function is called, effectively terminating the program. +.Pp +If +.Ar expression +is true, +the +.Fn assert +macro does nothing. +.Pp +The +.Fn assert +macro +may be removed at compile time with +the +.Xr cc 1 +option +.Fl DNDEBUG . +.Sh DIAGNOSTICS +The following diagnostic message is written to +.Em stderr +if +.Ar expression +is false: +.Bd -literal -offset indent +"assertion \e"%s\e" failed: file \e"%s\e", line %d, function \e"%s\e"\en", \e + "expression", __FILE__, __LINE__, __func__); +.Ed +.Sh SEE ALSO +.Xr cc 1 , +.Xr _DIAGASSERT 3 , +.Xr abort 3 +.Sh STANDARDS +The +.Fn assert +macro conforms to +.St -isoC-99 . +.Sh HISTORY +A +.Nm +macro appeared in +.At v7 . +.Pp +Information on the name of the enclosing function appeared in +.St -isoC-99 . diff --git a/static/netbsd/man3/attribute.3 b/static/netbsd/man3/attribute.3 new file mode 100644 index 00000000..3ac665b4 --- /dev/null +++ b/static/netbsd/man3/attribute.3 @@ -0,0 +1,392 @@ +.\" $NetBSD: attribute.3,v 1.18 2018/09/14 20:53:49 christos Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd September 14, 2018 +.Dt ATTRIBUTE 3 +.Os +.Sh NAME +.Nm attribute +.Nd non-standard compiler attribute extensions +.Sh SYNOPSIS +.In sys/cdefs.h +.Pp +.Ic __dead +.Pp +.Ic __pure +.Pp +.Ic __constfunc +.Pp +.Ic __noinline +.Pp +.Ic __unused +.Pp +.Ic __used +.Pp +.Ic __diagused +.Pp +.Ic __debugused +.Pp +.Ic __packed +.Pp +.Fn __aligned "x" +.Fn __section "section" +.Pp +.Ic __read_mostly +.Pp +.Ic __cacheline_aligned +.Pp +.Fn __predict_true "exp" +.Pp +.Fn __predict_false "exp" +.Pp +.Fn __printflike "fmtarg" "firstvararg" +.Pp +.Fn __sysloglike "fmtarg" "firstvararg" +.Sh DESCRIPTION +As an extension to the C standard, some compilers allow non-standard +attributes to be associated with functions, variables, or types, to +modify some aspect of the way the compiler treats the associated item. +The +.Tn GNU +Compiler Collection +.Pq Tn GCC , +and +.Tn LLVM/Clang , +use the +.Em __attribute__ +syntax for such attributes, +but different versions of the compilers support different attributes, +and other compilers may use entirely different syntax. +.Pp +.Nx +code should usually avoid direct use of the +.Em __attribute__ +or similar syntax provided by specific compilers. +Instead, +.Nx Ap s +.In sys/cdefs.h +header file +provides several attribute macros in a namespace +reserved for the implementation (beginning with +.Ql __ ) , +that expand to the appropriate syntax for the compiler that is in use. +.Sh ATTRIBUTES +.Bl -tag -width abc +.It Ic __dead +Certain functions, such as +.Xr abort 3 +and +.Xr exit 3 , +can never return. +When such a function is declared with +.Ic __dead , +certain optimizations are possible and warnings sensitive to the code flow graph +may be pruned. +Obviously a +.Ic __dead +function can never have return type other than +.Vt void . +.It Ic __pure +A +.Ic __pure +function is defined to be one that has no effects except +the return value, which is assumed to depend only on the +function parameters and/or global variables. +Any access to parameters and/or global variables must also be read-only. +A function that depends on volatile memory, or other comparable +system resource that can change between two consecutive calls, +can never be +.Ic __pure . +Many +.Xr math 3 +functions satisfy the definition of a +.Ic __pure +function, at least in theory. +Other examples include +.Xr strlen 3 +and +.Xr strcmp 3 . +.It Ic __constfunc +A +.Dq const function +is a stricter variant of +.Dq pure functions . +In addition to the restrictions of pure functions, a function declared with +.Ic __constfunc +can never access global variables nor take pointers as parameters. +The return value of these functions must depend +only on the passed-by-value parameters. +Note also that a function that calls non-const functions can not be +.Ic __constfunc . +The canonical example of a const function would be +.Xr abs 3 . +As with pure functions, +certain micro-optimizations are possible for functions declared with +.Ic __constfunc . +.It Ic __noinline +Sometimes it is known that inlining is undesirable or that +a function will perform incorrectly when inlined. +The +.Ic __noinline +macro expands to a function attribute that prevents +the compiler from inlining the function, irrespective +of whether the function was declared with the +.Em inline +keyword. +The attribute takes precedence over all +other compiler options related to inlining. +.It Ic __unused +Marking an unused function with the +.Ic __unused +macro inhibits warnings that a function is defined but not used. +Marking a variable with the +.Ic __unused +macro inhibits warnings that the variable is unused, +or that it is set but never read. +.It Ic __used +The +.Ic __used +macro expands to an attribute that informs the compiler +that a static variable or function is to be always retained +in the object file even if it is unreferenced. +.It Ic __diagused +The +.Ic __diagused +macro expands to an attribute that informs the compiler +that a variable or function is used only in diagnostic code, +and may be unused in non-diagnostic code. +.Pp +In the kernel, variables that are used when +.Dv DIAGNOSTIC +is defined, but unused when +.Dv DIAGNOSTIC +is not defined, may be declared with +.Ic __diagused . +In userland, variables that are used when +.Dv NDEBUG +is not defined, but unused when +.Dv NDEBUG +is defined, may be declared with +.Ic __diagused . +.Pp +Variables used only in +.Xr assert 3 +or +.Xr KASSERT 9 +macros are likely candidates for being declared with +.Ic __diagused . +.It Ic __debugused +The +.Ic __debugused +macro expands to an attribute that informs the compiler +that a variable or function is used only in debug code, +and may be unused in non-debug code. +.Pp +In either the kernel or userland, variables that are used when +.Dv DEBUG +is defined, but unused when +.Dv DEBUG +is not defined, may be declared with +.Ic __debugused . +.Pp +In the kernel, variables used only in +.Xr KDASSERT 9 +macros are likely candidates for being declared with +.Ic __debugused . +There is no established convention for the use of +.Dv DEBUG +in userland code. +.It Ic __packed +The +.Ic __packed +macro expands to an attribute that forces a variable or +structure field to have the smallest possible alignment, +potentially disregarding architecture specific alignment requirements. +The smallest possible alignment is effectively one byte +for variables and one bit for fields. +If specified on a +.Vt struct +or +.Vt union , +all variables therein are also packed. +The +.Ic __packed +macro is often useful when dealing with data that +is in a particular static format on the disk, wire, or memory. +.It Fn __aligned "x" +The +.Fn __aligned +macro expands to an attribute that specifies the minimum alignment +in bytes for a variable, structure field, or function. +In other words, the specified object should have an alignment of at least +.Fa x +bytes, as opposed to the minimum alignment requirements dictated +by the architecture and the +.Tn ABI . +Possible use cases include: +.Bl -bullet -offset indent +.It +Mixing assembly and C code. +.It +Dealing with hardware that may impose alignment requirements +greater than the architecture itself. +.It +Using instructions that may impose special alignment requirements. +Typical example would be alignment of frequently used objects along +processor cache lines. +.El +.Pp +Note that when used with functions, structures, or structure members, +.Fn __aligned +can only be used to increase the alignment. +If the macro is however used as part of a +.Vt typedef , +the alignment can both increase and decrease. +Otherwise it is only possible to decrease the alignment +for variables and fields by using the +.Ic __packed +macro. +The effectiveness of +.Fn __aligned +is largely dependent on the linker. +The +.Xr __alignof__ 3 +operator can be used to examine the alignment. +.It Fn __section "section" +The +.Fn __section +macro expands to an attribute that specifies a particular +.Fa section +to which a variable or function should be placed. +Normally the compiler places the generated objects to sections such as +.Dq data +or +.Dq text . +By using +.Fn __section , +it is possible to override this behavior, perhaps in order to place +some variables into particular sections specific to unique hardware. +.It Ic __read_mostly +The +.Ic __read_mostly +macro uses +.Fn __section +to place a variable or function into the +.Dq .data.read_mostly +section of the (kernel) +.Xr elf 5 . +The use of +.Ic __read_mostly +allows infrequently modified data to be grouped together; +it is expected that the cachelines of rarely and frequently modified +data structures are this way separated. +Candidates for +.Ic __read_mostly +include variables that are initialized once, +read very often, and seldom written to. +.It Ic __cacheline_aligned +The +.Ic __cacheline_aligned +macro behaves like +.Ic __read_mostly , +but the used section is +.Dq .data.cacheline_aligned +instead. +It also uses +.Fn __aligned +to set the minimum alignment into a predefined coherency unit. +This should ensure that frequently used data structures are +aligned on cacheline boundaries. +Both +.Ic __cacheline_aligned +and +.Ic __read_mostly +are only available for the kernel. +.It Ic __predict_true +A branch is generally defined to be a conditional execution of a +program depending on whether a certain flow control mechanism is altered. +Typical example would be a +.Dq if-then-else +sequence used in high-level languages or +a jump instruction used in machine-level code. +A branch prediction would then be defined as an +attempt to guess whether a conditional branch will be taken. +.Pp +The macros +.Fn __predict_true +and +.Fn __predict_false +annotate the likelihood of whether +a branch will evaluate to true or false. +The rationale is to improve instruction pipelining. +Semantically +.Ic __predict_true +expects that the integral expression +.Fa exp +yields nonzero. +.It Ic __predict_false +The +.Ic __predict_false +expands to an attribute that instructs the compiler +to predict that a given branch will be likely false. +As programmers are notoriously bad at predicting +the likely behavior of their code, profiling and +empirical evidence should precede the use of +.Ic __predict_false +and +.Ic __predict_true . +.It Fn __printflike "fmtarg" "firstvararg" +Marks a function as taking printf-like arguments. +.Fa fmtarg +is the index of the format string in the argument list, and +.Fa firstvararg +is the index of the first item of the vararg list. +.It Fn __sysloglike "fmtarg" "firstvararg" +Marks a function as taking syslog-like arguments. +Allows use of the %m formatting code. +.Fa fmtarg +is the index of the format string in the argument list, and +.Fa firstvararg +is the index of the first item of the vararg list, or +.Dv 0 +if the argument is a +.Ft va_list . +.El +.Sh SEE ALSO +.Xr clang 1 , +.Xr gcc 1 , +.Xr __builtin_object_size 3 , +.Xr cdefs 3 , +.Xr c 7 +.Sh CAVEATS +It goes without saying that portable applications +should steer clear from non-standard extensions specific +to any given compiler. +Even when portability is not a concern, +use these macros sparsely and wisely. diff --git a/static/netbsd/man3/bitmap.3 b/static/netbsd/man3/bitmap.3 new file mode 100644 index 00000000..f6c89d85 --- /dev/null +++ b/static/netbsd/man3/bitmap.3 @@ -0,0 +1,151 @@ +.\" $NetBSD: bitmap.3,v 1.12 2018/03/08 06:47:30 wiz Exp $ +.\" +.\" Copyright (c) 2012 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Christos Zoulas. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 8, 2018 +.Dt BITMAP 3 +.Os +.Sh NAME +.Nm __BITMAP_CLR , +.Nm __BITMAP_ISSET , +.Nm __BITMAP_SET , +.Nm __BITMAP_SIZE , +.Nm __BITMAP_TYPE , +.Nm __BITMAP_ZERO +.Nd bitmap manipulation macros +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In sys/bitops.h +.Fn __BITMAP_CLR "int bit" "type *bitmap" +.Fn __BITMAP_ISSET "int bit" "type *bitmap" +.Fn __BITMAP_SET "int bit" "type *bitmap" +.Fn __BITMAP_SIZE "type" "int nbits" +.Fn __BITMAP_TYPE "name" "type" "int nbits" +.Fn __BITMAP_ZERO "type *bitmap" +.Sh DESCRIPTION +The supplied macros are similar to the +.Xr select 2 +.Fn FD_SET +family, to the +.Xr setbit 9 , +macros and the +.Xr bitstring 3 +library. +They are different from +.Fn FD_SET +because they are designed to handle multiple sized bitmaps at the same time, +and they can be of any integral type. +They are different from +.Xr setbit 9 +because they can operate on different integral types, not just on bytes. +They are different from +.Xr bitstring 3 +because they are just macros, they don't allocate memory or use code, +and they can be used in both kernel and userland. +.Pp +The following macros are provided for manipulating creating and manipulating +bitmaps: +.Pp +.Fn __BITMAP_CLR bit bitmap +removes the given +.Fa bit +from the +.Fa bitmap . +.Pp +.Fn __BITMAP_ISSET bit bitmap +is non-zero if +.Fa bit +is a member of +.Fa bitmap , +zero otherwise. +.Pp +.Fn __BITMAP_SET bit bitmap +Sets the given +.Fa bit +in the +.Fa bitmap . +.Pp +.Fn __BITMAP_SIZE type nbits +Returns the number of elements would be required of the given +.Fa type +to hold +.Fa nbits . +.Pp +.Fn __BITMAP_TYPE name type nbits +Declares the properly sized bitmap structure +of the given +.Fa type +that holds +.Fa nbits +and is named +.Fa name . +.Pp +.Fn __BITMAP_ZERO bitmap +initializes a descriptor set pointed to by +.Fa bitmap +to the null set. +.Pp +The behavior of these macros is undefined for negative +bit values or ones greater than the number of bits the bitmap can hold. +.Sh EXAMPLES +.Bd -literal +#include + +int +main(int argc, char **argv) +{ + __BITMAP_TYPE(, uint32_t, 5000) bitmap; + + /* Initialize the read set to null */ + __BITMAP_ZERO(&bitmap); + + /* Set bit 1 */ + __BITMAP_SET(1, &bitmap); + + for (size_t i = 0; i < 5000; i++) { + if (__BITMAP_ISSET(i, &bitmap)) { + /* Should just print 1 */ + printf("Bit %zu is set\en", i); + __BITMAP_CLR(i, &bitmap); + } + break; + } + return 0; +} +.Ed +.Sh SEE ALSO +.Xr select 2 , +.Xr bitops 3 , +.Xr bitstring 3 , +.Xr setbit 9 +.Sh HISTORY +The +.Fn __BITMAP_* +macros appeared in +.Nx 7.0 . diff --git a/static/netbsd/man3/bitops.3 b/static/netbsd/man3/bitops.3 new file mode 100644 index 00000000..ae3bd06a --- /dev/null +++ b/static/netbsd/man3/bitops.3 @@ -0,0 +1,64 @@ +.\" $NetBSD: bitops.3,v 1.6 2020/01/13 16:11:53 uwe Exp $ +.\" +.\" Copyright (c) 2011 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 4, 2012 +.Dt BITOPS 3 +.Os +.Sh NAME +.Nm bitops +.Nd functions related to bits and integers +.Sh SYNOPSIS +.In sys/bitops.h +.Sh DESCRIPTION +The +.In sys/bitops.h +header provides macros and +.Vt static inline +functions related to bits and integers. +Among these are: +.Bl -tag -width ".Xr fast_divide32 3" -offset indent +.It Xr bitmap 3 +bitmap manipulation macros +.It Xr fast_divide32 3 +a function for fast 32-bit division +.It Xr ffs32 3 +functions to find the first and last set bit in integers of type +.Vt uint32_t +and +.Vt uint64_t +.It Xr ilog2 3 +a macro for binary logarithm +.El +.Sh SEE ALSO +.Xr bits 3 , +.Xr bitstring 3 , +.Xr cdefs 3 , +.Xr param 3 +.Sh HISTORY +The +.In sys/bitops.h +header first appeared in +.Nx 4.0 . diff --git a/static/netbsd/man3/bits.3 b/static/netbsd/man3/bits.3 new file mode 100644 index 00000000..9110c11c --- /dev/null +++ b/static/netbsd/man3/bits.3 @@ -0,0 +1,160 @@ +.\" $NetBSD: bits.3,v 1.22 2022/01/22 09:22:41 wiz Exp $ +.\" +.\" Copyright (c) 2006, 2010 David Young. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or +.\" without modification, are permitted provided that the following +.\" conditions are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above +.\" copyright notice, this list of conditions and the following +.\" disclaimer in the documentation and/or other materials +.\" provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY DAVID YOUNG ``AS IS'' AND ANY +.\" EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +.\" THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +.\" PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL DAVID +.\" YOUNG BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +.\" EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +.\" TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +.\" ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 22, 2022 +.Dt BITS 3 +.Os +.Sh NAME +.Nm __BIT , +.Nm __BITS , +.Nm __MASK , +.Nm __SHIFTIN , +.Nm __SHIFTOUT , +.Nm __SHIFTOUT_MASK +.Nd "macros for preparing bitmasks and operating on bit fields" +.Sh SYNOPSIS +.In sys/param.h +.In sys/cdefs.h +.Ft uintmax_t +.Fn __BIT "n" +.Ft uintmax_t +.Fn __BITS "m" "n" +.Ft uintmax_t +.Fn __MASK "n" +.Ft uintmax_t +.Fn __SHIFTIN "v" "mask" +.Ft uintmax_t +.Fn __SHIFTOUT "v" "mask" +.Ft uintmax_t +.Fn __SHIFTOUT_MASK "mask" +.Sh DESCRIPTION +These macros prepare bitmasks, extract bitfields from words, and +insert bitfields into words. +A +.Dq bitfield +is a span of consecutive bits defined by a bitmask, where 1s select +the bits in the bitfield. +.Pp +Use +.Fn __BIT , +.Fn __BITS , +and +.Fn __MASK +to define bitmasks: +.Bl -tag -width __BITS -offset indent +.It Fn __BIT "n" +Return a bitmask with bit +.Fa n +set, where the least significant bit is bit 0. +.It Fn __BITS "m" "n" +Return a bitmask with bits +.Fa m +through +.Fa n , +inclusive, set. +It does not matter whether +.Fa m No > Fa n +or +.Fa m No <= Fa n . +The least significant bit is bit 0. +.It Fn __MASK "n" +Return a bitmask with the first +.Fa n +bits set. +That is, bits 0 through +.Fa n +- 1, inclusive, set. +.El +.Pp +.Fn __SHIFTIN , +.Fn __SHIFTOUT , +and +.Fn __SHIFTOUT_MASK +help read and write bitfields from words: +.Bl -tag -width __SHIFTOUT_MASK -offset indent +.It Fn __SHIFTIN "v" "mask" +Left-shift bits +.Fa v +into the bitfield defined by +.Fa mask , +and return them. +No side-effects. +.It Fn __SHIFTOUT "v" "mask" +Extract and return the bitfield selected by +.Fa mask +from +.Fa v , +right-shifting the bits so that the rightmost selected bit is at +bit 0. +No side-effects. +.It Fn __SHIFTOUT_MASK "mask" +Right-shift the bits in +.Fa mask +so that the rightmost non-zero bit is at bit 0. +This is useful for finding the greatest unsigned value that a +bitfield can hold. +No side-effects. +Note that +.Fn __SHIFTOUT_MASK "m" += +.Fn __SHIFTOUT "m" "m" . +.El +.Sh EXAMPLES +The following example demonstrates basic usage of the +.Nm bits +macros: +.Bd -literal -offset indent +uint32_t bits, mask, val; + +bits = __BITS(2, 3); /* 00001100 */ +mask = __BIT(2) | __BIT(3); /* 00001100 */ + +val = __SHIFTIN(0x03, mask); /* 00001100 */ +val = __SHIFTOUT(0xf, mask); /* 00000011 */ +.Ed +.Sh SEE ALSO +.Xr bitops 3 , +.Xr cdefs 3 +.Sh HISTORY +The +.Nm bits +macros first appeared in +.Xr atw 4 , +with different names and implementation. +In their current form these macros appeared in +.Nx 4.0 . +.Sh AUTHORS +The +.Nm bits +macros were written by +.An David Young Aq Mt dyoung@NetBSD.org . +.An Matt Thomas Aq Mt matt@NetBSD.org +suggested important improvements to the implementation, and +contributed the macro names +.Fn SHIFTIN +and +.Fn SHIFTOUT . diff --git a/static/netbsd/man3/bitstring.3 b/static/netbsd/man3/bitstring.3 new file mode 100644 index 00000000..cda7e437 --- /dev/null +++ b/static/netbsd/man3/bitstring.3 @@ -0,0 +1,184 @@ +.\" $NetBSD: bitstring.3,v 1.18 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 1989, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" This code is derived from software contributed to Berkeley by +.\" Paul Vixie. +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)bitstring.3 8.1 (Berkeley) 7/19/93 +.\" +.Dd December 29, 2016 +.Dt BITSTRING 3 +.Os +.Sh NAME +.Nm bit_alloc , +.Nm bit_clear , +.Nm bit_decl , +.Nm bit_ffc , +.Nm bit_ffs , +.Nm bit_nclear , +.Nm bit_nset , +.Nm bit_set , +.Nm bitstr_size , +.Nm bit_test +.Nd bit-string manipulation macros +.Sh SYNOPSIS +.In sys/types.h +.In bitstring.h +.Ft bitstr_t * +.Fn bit_decl "bitstr_t *name" "size_t nbits" +.Ft bitstr_t * +.Fn bit_alloc "size_t nbits" +.Fn bit_clear "bitstr_t *name" "size_t bit" +.Fn bit_ffc "const bitstr_t *name" "size_t nbits" "int *value" +.Fn bit_ffs "const bitstr_t *name" "size_t nbits" "int *value" +.Fn bit_nclear "bitstr_t *name" "size_t start" "size_t stop" +.Fn bit_nset "bitstr_t *name" "size_t start" "size_t stop" +.Fn bit_set "bitstr_t *name" "size_t bit" +.Fn bitstr_size "size_t nbits" +.Fn bit_test "const bitstr_t *name" "size_t bit" +.Sh DESCRIPTION +These macros operate on strings of bits. +.Pp +The macro +.Fn bit_alloc +returns a pointer of type +.Dq Fa "bitstr_t" +to sufficient space to store +.Fa nbits +bits, or +.Dv NULL +if no space is available. +.Pp +The macro +.Fn bit_decl +allocates sufficient space to store +.Fa nbits +bits on the stack. +.Pp +The macro +.Fn bitstr_size +returns the number of elements of type +.Fa bitstr_t +necessary to store +.Fa nbits +bits. +This is useful for copying bit strings. +.Pp +The macros +.Fn bit_clear +and +.Fn bit_set +clear or set the zero-based numbered bit +.Fa bit , +in the bit string +.Ar name . +.Pp +The +.Fn bit_nset +and +.Fn bit_nclear +macros +set or clear the zero-based numbered bits from +.Fa start +to +.Fa stop +in the bit string +.Ar name . +.Pp +The +.Fn bit_test +macro +evaluates to non-zero if the zero-based numbered bit +.Fa bit +of bit string +.Fa name +is set, and zero otherwise. +.Pp +The +.Fn bit_ffs +macro +stores in the location referenced by +.Fa value +the zero-based number of the first bit set in the array of +.Fa nbits +bits referenced by +.Fa name . +If no bits are set, the location referenced by +.Fa value +is set to \-1. +.Pp +The macro +.Fn bit_ffc +stores in the location referenced by +.Fa value +the zero-based number of the first bit not set in the array of +.Fa nbits +bits referenced by +.Fa name . +If all bits are set, the location referenced by +.Fa value +is set to \-1. +.Pp +The arguments to these macros are evaluated only once and may safely +have side effects. +.Sh EXAMPLES +.Bd -literal -offset indent +#include +#include + +\&... +#define LPR_BUSY_BIT 0 +#define LPR_FORMAT_BIT 1 +#define LPR_DOWNLOAD_BIT 2 +\&... +#define LPR_AVAILABLE_BIT 9 +#define LPR_MAX_BITS 10 + +void +make_lpr_available(void) +{ + bitstr_t bit_decl(bitlist, LPR_MAX_BITS); + ... + bit_nclear(bitlist, 0, LPR_MAX_BITS - 1); + ... + if (!bit_test(bitlist, LPR_BUSY_BIT)) { + bit_clear(bitlist, LPR_FORMAT_BIT); + bit_clear(bitlist, LPR_DOWNLOAD_BIT); + bit_set(bitlist, LPR_AVAILABLE_BIT); + } +} +.Ed +.Sh SEE ALSO +.Xr bitmap 3 , +.Xr calloc 3 , +.Xr setbit 9 +.Sh HISTORY +The +.Nm bitstring +functions first appeared in +.Bx 4.4 . diff --git a/static/netbsd/man3/cdefs.3 b/static/netbsd/man3/cdefs.3 new file mode 100644 index 00000000..25cc5f8b --- /dev/null +++ b/static/netbsd/man3/cdefs.3 @@ -0,0 +1,116 @@ +.\" $NetBSD: cdefs.3,v 1.5 2019/11/10 18:45:09 christos Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 10, 2019 +.Dt CDEFS 3 +.Os +.Sh NAME +.Nm cdefs +.Nd common definitions and macros +.Sh SYNOPSIS +.In sys/cdefs.h +.Sh DESCRIPTION +The +.In sys/cdefs.h +header includes some common definitions and macros +typical to the C language conventions of +.Nx . +Among these are: +.Bl -bullet -offset indent +.It +Certain C language properties and definitions that +are versioned according to the support in compilers. +Examples include the +.Em __func__ +keyword and the +.Em restrict +type qualifier from +.Tn C99 . +.It +Macros and definitions specific to compilers, preprocessors, and linkers; see +.Xr __BIT 3 , +.Xr __BITS 3 , +.Xr __CONCAT 3 , +.Xr __FPTRCAST 3 , +.Xr __SHIFTIN 3 , +.Xr __SHIFTOUT 3 , +.Xr __SHIFTOUT_MASK 3 , +.Xr __UNCONST 3 , +.Xr __UNVOLATILE 3 , +.Xr __USE 3 , +.Xr __insn_barrier 3 , +and +.Xr attribute 3 . +.It +Utility macros provided for convenience; see +.Xr __arraycount 3 +and +.Xr bits 3 . +.El +.Pp +The header also contains the +.Fn __RCSID +and +.Fn __KERNEL_RCSID +macros used for version control system +.Pq Tn VCS +identifiers. +Thus, all +.Nx +source code files typically include +.In sys/cdefs.h , +included as the first thing right after any possible copyright texts; +.Bd -literal -offset indent +/*- + * Copyright (c) 1984 John Doe + * All rights reserved. + * + * Redistribution and use in source and binary forms, + * with or without modification, are permitted. + */ + +#include +__RCSID("$NetBSD: cdefs.3,v 1.5 2019/11/10 18:45:09 christos Exp $"); +.Ed +.Pp +It is possible to identify the +.Tn RCS +keyword strings by using +.Xr ident 1 . +.Sh SEE ALSO +.Xr ident 1 , +.Xr param 3 , +.Xr stddef 3 , +.Xr types 3 , +.Xr c 7 +.Sh HISTORY +The +.In sys/cdefs.h +header was originally imported from +.Bx 386 . diff --git a/static/netbsd/man3/container_of.3 b/static/netbsd/man3/container_of.3 new file mode 100644 index 00000000..0933753e --- /dev/null +++ b/static/netbsd/man3/container_of.3 @@ -0,0 +1,78 @@ +.\" $NetBSD: container_of.3,v 1.2 2024/10/09 00:55:24 uwe Exp $ +.\" +.\" Copyright (c) 2024 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 8, 2011 +.Dt CONTAINER_OF 3 +.Os +.Sh NAME +.Nm container_of +.Nd cast a pointer to member of a structure to a pointer of its +container structure. +.Sh SYNOPSIS +.In sys/container_of.h +.Ft "type *" +.Fn container_of "pointer" "type" "member" +.Sh DESCRIPTION +Given a +.Fa pointer +that points to a +.Fa member +of the container structure +.Fa type +the +.Fn container_of +macro returns a pointer that points to the enclosing container structure. +.Pp +A compiler error will result if +.Ar member +is not aligned to a byte boundary +.Pq i.e. it is a bit-field . +.Sh EXAMPLES +.Bd -literal +#include +#include +struct container { + double other_member; + int member; +}; + +struct container one; + +void test(void) { + int *ptr = &one.member; + struct container *onep = container_of(ptr, struct container, member); + assert(onep == &one); +} +.Ed +.Sh SEE ALSO +.Xr __alignof__ 3 , +.Xr offsetof 3 , +.Xr stddef 3 , +.Xr typeof 3 +.Sh HISTORY +The +.Fn container_of +macro appeared first in the Linux kernel. diff --git a/static/netbsd/man3/dirent.3 b/static/netbsd/man3/dirent.3 new file mode 100644 index 00000000..5efa9126 --- /dev/null +++ b/static/netbsd/man3/dirent.3 @@ -0,0 +1,214 @@ +.\" $NetBSD: dirent.3,v 1.7 2021/08/12 20:25:26 andvar Exp $ +.\" +.\" Copyright (c) 1983, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)dir.5 8.3 (Berkeley) 4/19/94 +.\" +.Dd September 7, 2019 +.Dt DIRENT 3 +.Os +.Sh NAME +.Nm dirent +.Nd directory format +.Sh SYNOPSIS +.In sys/types.h +.In sys/dirent.h +.Ft mode +.Fn DTTOIF "dirtype" +.Ft dirtype +.Fn IFTODT "mode" +.Sh DESCRIPTION +Directories provide a convenient hierarchical method of grouping +files while obscuring the underlying details of the storage medium. +A directory file is differentiated from a plain file +by a flag in its +.Xr inode 5 +entry. +It consists of records (directory entries) each of which contains +information about a file and a pointer to the file itself. +Directory entries may contain other directories +as well as plain files; such nested directories are referred to as +subdirectories. +A hierarchy of directories and files is formed in this manner +and is called a file system (or referred to as a file system tree). +.\" An entry in this tree, +.\" nested or not nested, +.\" is a pathname. +.Pp +Each directory file contains two special directory entries; one is a pointer +to the directory itself +called dot +.Ql \&. +and the other a pointer to its parent directory called dot-dot +.Ql \&.. . +Dot and dot-dot +are valid pathnames, however, +the system root directory +.Ql / , +has no parent and dot-dot points to itself like dot. +.Pp +File system nodes are ordinary directory files on which has +been grafted a file system object, such as a physical disk or a +partitioned area of such a disk. +(See +.Xr mount 8 . ) +.Sh IMPLEMENTATION NOTES +The directory entry format is defined in the file +.In sys/dirent.h , +which is also included by +.In dirent.h . +The format is represented by the +.Em dirent +structure, which contains the following entries: +.Bd -literal -offset indent +ino_t d_fileno; +uint16_t d_reclen; +uint16_t d_namlen; +uint8_t d_type; +char d_name[MAXNAMLEN + 1]; +.Ed +.Pp +These are: +.Bl -enum -offset indent +.It +The +.Fa d_fileno +entry is a number which is unique for each +distinct file in the filesystem. +Files that are linked by hard links (see +.Xr link 2 ) +have the same +.Fa d_fileno . +If +.Fa d_fileno +is zero, the entry refers to a deleted file. +The type +.Va ino_t +is defined in +.In sys/types.h . +.It +The +.Fa d_reclen +entry is the length, in bytes, of the directory record. +.It +The +.Fa d_namlen +entry specifies the length of the file name excluding the NUL. +Thus the actual size of +.Fa d_name +may vary from 1 to +.Dv MAXNAMLEN +\&+ 1. +.It +The +.Fa d_type +is the type of the file. +.It +The +.Fa d_name +entry contains a NUL-terminated file name. +.El +.Pp +The following table lists the types available for +.Vt d_type +and the corresponding ones used in the +.Em struct stat +(see +.Xr stat 2 ) , +respectively: +.Pp +.Bl -column -offset indent -compact \ +"DT_UNKNOWN " "DT_UNKNOWN " "DT_UNKNOWN " +.It Sy Dirent Ta Sy Stat Ta Sy Description +.It Dv DT_UNKNOWN Ta - Ta unknown file type +.It Dv DT_FIFO Ta Dv S_IFIFO Ta named pipe +.It Dv DT_CHR Ta Dv S_IFCHR Ta character device +.It Dv DT_DIR Ta Dv S_IFDIR Ta directory +.It Dv DT_BLK Ta Dv S_IFBLK Ta block device +.It Dv DT_REG Ta Dv S_IFREG Ta regular file +.It Dv DT_LNK Ta Dv S_IFLNK Ta symbolic link +.It Dv DT_SOCK Ta Dv S_IFSOCK Ta UNIX domain socket +.It Dv DT_WHT Ta Dv S_IFWHT Ta dummy Dq whiteout inode +.El +.Pp +The +.Dv DT_WHT +type is internal to the implementation and +should not be seen in normal user applications. +The macros +.Fn DTTOIF +and +.Fn IFTODT +can be used to convert from +.Em struct dirent +types to +.Em struct stat +types, and vice versa. +.Sh COMPATIBILITY +The +.St -p1003.1-2001 +standard specifies only the fields +.Va d_ino +and +.Va d_name . +The remaining fields are available on many, but not all systems. +.Pp +Furthermore, the standard leaves the size of +.Va d_name +as unspecified, mentioning only that the number of +bytes preceding the terminating NUL shall not exceed +.Dv NAME_MAX . +Because of this, and because the +.Va d_namlen +field may not be present, a portable application should determine the size of +.Va d_name +by using +.Xr strlen 3 +instead of applying the +.Fn sizeof +operator. +.Sh SEE ALSO +.Xr getdents 2 , +.Xr fs 5 , +.Xr inode 5 +.\" .Sh STANDARDS +.\" +.\" XXX: Conformance is unclear, cf. PR lib/43310. +.\" +.\" Given the noted limitations, the +.\".In dirent.h +.\" header conforms to +.\" .St -p1003.1-2001 . +.Sh HISTORY +A +directory file format appeared in +.At v1 . +The +.Em dirent +structure appeared in +.Bx 4.3 reno . diff --git a/static/netbsd/man3/dl_iterate_phdr.3 b/static/netbsd/man3/dl_iterate_phdr.3 new file mode 100644 index 00000000..d115e986 --- /dev/null +++ b/static/netbsd/man3/dl_iterate_phdr.3 @@ -0,0 +1,84 @@ +.\" $NetBSD: dl_iterate_phdr.3,v 1.2 2010/10/16 12:05:48 wiz Exp $ +.\" $OpenBSD: dl_iterate_phdr.3,v 1.3 2007/05/31 19:19:48 jmc Exp $ +.\" +.\" Copyright (c) 2005 Mark Kettenis +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd October 16, 2010 +.Dt DL_ITERATE_PHDR 3 +.Os +.Sh NAME +.Nm dl_iterate_phdr +.Nd iterate over program headers +.Sh SYNOPSIS +.In link.h +.Ft int +.Fn dl_iterate_phdr "int (*callback)(struct dl_phdr_info *, size_t, void*)" "void *data" +.Sh DESCRIPTION +The +.Fn dl_iterate_phdr +function iterates over all shared objects loaded into a process's +address space, calling +.Fa callback +for each shared object, passing it information about the object's +program headers and the +.Fa data +argument. +The information about the program headers is passed in a structure +that is defined as: +.Bd -literal +struct dl_phdr_info { + Elf_Addr dlpi_addr; + const char *dlpi_name; + const Elf_Phdr *dlpi_phdr; + Elf_Half dlpi_phnum; + unsigned long long int dlpi_adds; + unsigned long long int dlpi_subs; + size_t dlpi_tls_modid; + void *dlpi_tls_data; +}; +.Ed +.Pp +The members of +.Li struct dl_phdr_info +have the following meaning: +.Bl -tag -width XXXdlpi_phdr +.It Fa dlpi_addr +The base address at which the shared object is mapped into the address +space of the calling process. +.It Fa dlpi_name +The name of the shared object. +.It Fa dlpi_phdr +A pointer to the shared object's program headers. +.It Fa dlpi_phnum +The number of program headers in the shared object. +.It Fa dlpi_adds +The number of objects added into the main program. +.It Fa dlpi_subs +The number of objects removed from the main program. +.El +.Pp +To make it possible for programs to check whether any new members have +been added, the size of the structure is passed as an argument to +.Fa callback . +.Sh SEE ALSO +.Xr ld 1 , +.Xr ld.elf_so 1 , +.Xr dlfcn 3 , +.Xr elf 5 +.Sh HISTORY +The +.Nm +function first appeared in +.Nx 6.0 . diff --git a/static/netbsd/man3/dlfcn.3 b/static/netbsd/man3/dlfcn.3 new file mode 100644 index 00000000..65910c07 --- /dev/null +++ b/static/netbsd/man3/dlfcn.3 @@ -0,0 +1,377 @@ +.\" $NetBSD: dlfcn.3,v 1.42 2024/03/09 18:43:39 gutteridge Exp $ +.\" +.\" Copyright (c) 1998 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Paul Kranenburg. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 7, 2024 +.Dt DLFCN 3 +.Os +.Sh NAME +.Nm _dlauxinfo , +.Nm dlopen , +.Nm dlclose , +.Nm dlsym , +.Nm dlvsym , +.Nm dladdr , +.Nm dlctl , +.Nm dlerror +.Nd dynamic link interface +.Sh LIBRARY +(These functions are not in a library. +They are included in every +dynamically linked program automatically.) +.Sh SYNOPSIS +.In dlfcn.h +.Ft "void *" +.Fn _dlauxinfo "void" +.Ft "void *" +.Fn dlopen "const char *path" "int mode" +.Ft "int" +.Fn dlclose "void *handle" +.Ft "void *" +.Fn dlsym "void * restrict handle" "const char * restrict symbol" +.Ft "void *" +.Fn dlvsym "void * restrict handle" "const char * restrict symbol" "const char *version" +.Ft "int" +.Fn dladdr "void * restrict addr" "Dl_info * restrict dli" +.Ft "int" +.Fn dlctl "void *handle" "int cmd" "void *data" +.Ft "char *" +.Fn dlerror "void" +.Sh DESCRIPTION +These functions provide an interface to the run-time linker +.Xr ld.so 1 . +They allow new shared objects to be loaded into the process' address space +under program control. +.Pp +The +.Fn _dlauxinfo +function returns a pointer to the +.Xr elf 5 +array of +.Vt AuxInfo +structures for the current executable. +.Pp +The +.Fn dlopen +function takes the name of a shared object as the first argument. +The +.Fa path +argument can be specified as either an absolute pathname to a shared object +or just the name of the shared object itself. +When an absolute pathname is specified, +only the path provided will be searched. +When just a shared object name is specified, the same search rules apply that +are used for +.Dq intrinsic +shared object searches +.Po +see +.Xr ld.elf_so 1 +.Pc . +.Pp +Shared libraries take the following form: +.Sm off +.Ic lib\^ Ao Ar name Ac Ic .so Oo Ic \&. Ar xx\^ Oo Ic \&. Ar yy\^ Oc Oc . +.Sm on +.Pp +The shared object is mapped into the address space, relocated, and +its external references are resolved in the same way as is done +with the implicitly loaded shared libraries at program startup. +.Pp +If the first argument is +.Dv NULL , +.Fn dlopen +returns a +.Fa handle +on the global symbol object. +This object +provides access to all symbols from an ordered set of objects consisting +of the original program image and any dependencies loaded during startup. +.Pp +The +.Fa mode +parameter specifies symbol resolution time and symbol visibility. +One of the following values may be used to specify symbol resolution time: +.Bl -tag -width ".Dv RTLD_NODELETE" -offset indent +.It Dv RTLD_NOW +Symbols are resolved immediately. +.It Dv RTLD_LAZY +Symbols are resolved when they are first referred to. +This is the default value if resolution time is unspecified. +.El +.Pp +One of the following values may be used to specify symbol visibility: +.Bl -tag -width ".Dv RTLD_NODELETE" -offset indent +.It Dv RTLD_GLOBAL +The object's symbols and the symbols of its dependencies will be visible to +other objects. +.It Dv RTLD_LOCAL +The object's symbols and the symbols of its dependencies will not be visible to +other objects. +This is the default value if visibility is unspecified. +.El +.Pp +To specify both resolution time and visibility, bitwise inclusive +.Tn OR +one of each of the above values together. +If an object was opened with +.Dv RTLD_LOCAL +and later opened with +.Dv RTLD_GLOBAL , +then it is promoted to +.Dv RTLD_GLOBAL . +.Pp +Additionally, one of the following flags may be +.Tn OR Ap ed +into the +.Fa mode +argument: +.Bl -tag -width ".Dv RTLD_NODELETE" -offset indent +.It Dv RTLD_NODELETE +Prevents unload of the loaded object on +.Fn dlclose . +The same behaviour may be requested by +.Fl z Cm nodelete +option of the static linker +.Xr ld 1 . +.It Dv RTLD_NOLOAD +Only return valid handle for the object if it is already loaded in +the process address space, otherwise do not load the object and return +.Dv NULL . +.El +.Pp +.Fn dlopen +returns a +.Fa handle +to be used in calls to +.Fn dlclose , +.Fn dlsym , +.Fn dlvsym , +and +.Fn dlctl . +If the named shared object has already +been loaded by a previous call to +.Fn dlopen +.Pq and not yet unloaded by Fn dlclose , +a +.Fa handle +referring to the resident copy is returned. +.Pp +.Fn dlclose +unlinks and removes the object referred to by +.Fa handle +from the process address space. +If multiple calls to +.Fn dlopen +have been done on this object, or the object was one loaded at startup time, +or the object is a dependency of another object +then the object is removed when its reference count drops to zero. +.Fn dlclose +returns 0 on success and non-zero on failure. +.Pp +.Fn dlsym +looks for a definition of +.Fa symbol +in the shared object designated by +.Fa handle , +and all shared objects that are listed as dependencies. +The symbol's address is returned. +If the symbol cannot be resolved, +.Dv NULL +is returned. +.Pp +.Fn dlsym +may also be called with special +.Fa handle +values. +.Fn dlsym +respects symbol visibility as specified by the +.Fn dlopen +.Fa mode +parameter. +However, the symbols of an object's dependencies are always visible to it. +All shared objects loaded at program startup are globally visible. +Only the symbols in the main executable that are referenced by a +shared object at link time will be visible unless it has been linked +with the +.Fl Fl export-dynamic +option where all of its symbols will be visible. +The following special +.Fa handle +values may be used with +.Fn dlsym : +.Bl -tag -width ".Dv RTLD_DEFAULT" -offset indent +.It Dv NULL +Interpreted as a reference to the executable or shared object +from which the call is being made. +Thus an object can reference its own symbols and the symbols of its +dependencies without calling +.Fn dlopen . +.It Dv RTLD_DEFAULT +All the visible shared objects and the executable will be searched in the order +they were loaded. +.It Dv RTLD_NEXT +The search for +.Fa symbol +is limited to the visible shared objects which were loaded after the one +issuing the call to +.Fn dlsym . +Thus, if +.Fn dlsym +is called from the main program, all the visible shared libraries are searched. +If it is called from a shared library, all subsequently visible shared +libraries are searched. +.It Dv RTLD_SELF +The search for +.Fa symbol +is limited to the shared object issuing the call to +.Fn dlsym +and those shared objects which were loaded after it that are visible. +.El +.Pp +.Fn dlvsym +does the same as +.Fn dlsym +but takes a +.Fa version +string as an additional argument. +Both the +.Fa symbol +and the +.Fa version +must match in order for the symbol to be resolved. +.Pp +.Fn dladdr +examines all currently mapped shared objects for a symbol whose address \(em +as mapped in the process address space \(em is closest to but not exceeding +the value passed in the first argument +.Fa addr . +The symbols of a shared object are only eligible if +.Fa addr +is between the base address of the shared object and the value of the +symbol +.Va _end +in the same shared object. +If no object for which this condition holds true can be found, +.Fn dladdr +will return 0. +Otherwise, a non-zero value is returned and the +.Fa dli +argument will be used to provide information on the selected symbol +and the shared object it is contained in. +The +.Fa dli +argument points at a caller-provided +.Vt Dl_info +structure defined as follows: +.Bd -literal -offset indent +typedef struct { + const char *dli_fname; /* File defining the symbol */ + void *dli_fbase; /* Base address */ + const char *dli_sname; /* Symbol name */ + const void *dli_saddr; /* Symbol address */ +} Dl_info; +.Ed +.Pp +The structure members are further described as follows: +.Bl -tag -width Fa +.It Fa dli_fname +The pathname of the shared object containing the address +.Fa addr . +.It Fa dli_fbase +The base address at which this shared object is loaded in the process +address space. +This may be zero if the symbol was found in the internally generated +.Dq copy +section +.Po +see +.Xr link 5 +.Pc +which is not associated with a file. +.It Fa dli_sname +points at the nul-terminated name of the selected symbol +.It Fa dli_saddr +is the actual address +.Pq as it appears in the process address space +of the symbol. +.El +.Pp +.Em Note : +both strings pointed at by +.Fa dli_fname +and +.Fa dli_sname +reside in memory private to the run-time linker module and should not +be modified by the caller. +.Pp +In dynamically linked programs, the address of a global function will +point to its program linkage table entry, rather than to the entry +point of the function itself. +This causes most global functions to appear to be defined within the +main executable, rather than in the shared libraries where the actual +code resides. +.Pp +.Fn dlctl +provides an interface similar to +.Xr ioctl 2 +to control several aspects of the run-time linker's operation. +This interface is +.Ud +.Pp +.Fn dlerror +returns a character string representing the most recent error that has +occurred while processing one of the other functions described here. +If no dynamic linking errors have occurred since the last invocation of +.Fn dlerror , +.Fn dlerror +returns +.Dv NULL . +Thus, invoking +.Fn dlerror +a second time, immediately following a prior invocation, will result in +.Dv NULL +being returned. +.Sh ERRORS +.Bl -diag +.It Cannot dlopen non-loadable /usr/lib/libpthread.so.1 +A program tries to +.Fn dlopen +a module that needs +.Lb libpthread +but the program isn't linked against it itself. +.El +.Sh SEE ALSO +.Xr ld 1 , +.Xr rtld 1 , +.Xr dlinfo 3 , +.Xr link 5 +.Sh HISTORY +Some of the +.Nm dl* +functions first appeared in SunOS\~4. diff --git a/static/netbsd/man3/dlinfo.3 b/static/netbsd/man3/dlinfo.3 new file mode 100644 index 00000000..709c00f3 --- /dev/null +++ b/static/netbsd/man3/dlinfo.3 @@ -0,0 +1,285 @@ +.\" $NetBSD: dlinfo.3,v 1.7 2022/03/06 23:36:01 andvar Exp $ +.\" +.\" Copyright (c) 2003 Alexey Zelkin +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: head/lib/libc/gen/dlinfo.3 267774 2014-06-23 08:25:03Z bapt $ +.\" +.Dd January 13, 2020 +.Dt DLINFO 3 +.Os +.Sh NAME +.Nm dlinfo +.Nd information about a dynamically loaded object +.Sh LIBRARY +(These functions are not in a library. +They are included in every +dynamically linked program automatically.) +.Sh SYNOPSIS +.In link.h +.In dlfcn.h +.Ft int +.Fn dlinfo "void *handle" "int request" "void *p" +.Sh DESCRIPTION +The +.Fn dlinfo +function provides information about a dynamically loaded object. +The action taken by +.Fn dlinfo +and exact meaning and type of +.Fa p +argument depend on value of the +.Fa request +argument provided by caller. +.Pp +The +.Fa handle +argument is either the value returned from the +.Xr dlopen 3 +function call or special handle +.Dv RTLD_SELF . +If +.Fa handle +is the value returned from +.Xr dlopen 3 , +the information returned by the +.Fn dlinfo +function pertains to the specified object. +If +.Fa handle +is the special handle +.Dv RTLD_SELF , +the information returned pertains to the caller itself. +.Pp +Possible values for the +.Fa request +argument are: +.Bl -tag -width "Dv RTLD_" +.It Dv RTLD_DI_LINKMAP +Retrieve the pointer to the +.Vt Link_map +for the specified +.Fa handle . +On successful return, the +.Fa p +argument is filled with the pointer to the +.Vt Link_map +structure +.Pq Fa "Link_map **p" +describing a shared object specified by the +.Fa handle +argument. +The +.Vt Link_map +structures are maintained as a doubly linked list by +.Xr ld.so 1 , +in the same order as +.Xr dlopen 3 +and +.Xr dlclose 3 +are called. +.Pp +The +.Vt Link_map +structure is defined in +.In link.h +and has the following members: +.Bd -literal -offset indent +caddr_t l_addr; /* Base Address of library */ +#ifdef __mips__ +caddr_t l_offs; /* Load Offset of library */ +#endif +const char *l_name; /* Absolute Path to Library */ +void *l_ld; /* Pointer to .dynamic in memory */ +struct link_map *l_next, /* linked list of mapped libs */ + *l_prev; +.Ed +.Bl -tag -width Va +.It Va l_addr +The base address of the object loaded into memory. +.It Va l_name +The absolute pathname of the loaded shared object. +.It Va l_ld +The address of the dynamic linking information segment +.Pq Dv PT_DYNAMIC +loaded into memory. +.It Va l_next +The next +.Vt Link_map +structure on the link-map list. +.It Va l_prev +The previous +.Vt Link_map +structure on the link-map list. +.El +.\" .It Dv RTLD_DI_SERINFO +.\" Retrieve the library search paths associated with the given +.\" .Fa handle +.\" argument. +.\" The +.\" .Fa p +.\" argument should point to +.\" .Vt Dl_serinfo +.\" structure buffer +.\" .Pq Fa "Dl_serinfo *p" . +.\" The +.\" .Vt Dl_serinfo +.\" structure must be initialized first with the +.\" .Dv RTLD_DI_SERINFOSIZE +.\" request. +.\" .Pp +.\" The returned +.\" .Vt Dl_serinfo +.\" structure contains +.\" .Va dls_cnt +.\" .Vt Dl_serpath +.\" entries. +.\" Each entry's +.\" .Va dlp_name +.\" field points to the search path. +.\" The corresponding +.\" .Va dlp_info +.\" field contains one of more flags indicating the origin of the path (see the +.\" .Dv LA_SER_* +.\" flags defined in the +.\" .In link.h +.\" header file). +.\" See +.\" .Sx EXAMPLES , +.\" example 2, for a usage example. +.\" .It Dv RTLD_DI_SERINFOSIZE +.\" Initialize a +.\" .Vt Dl_serinfo +.\" structure for use in a +.\" .Dv RTLD_DI_SERINFO +.\" request. +.\" Both the +.\" .Va dls_cnt +.\" and +.\" .Va dls_size +.\" fields are returned to indicate the number of search paths applicable +.\" to the handle, and the total size of a +.\" .Vt Dl_serinfo +.\" buffer required to hold +.\" .Va dls_cnt +.\" .Vt Dl_serpath +.\" entries and the associated search path strings. +.\" See +.\" .Sx EXAMPLES , +.\" example 2, for a usage example. +.\" .It Va RTLD_DI_ORIGIN +.\" Retrieve the origin of the dynamic object associated with the handle. +.\" On successful return, +.\" .Fa p +.\" argument is filled with the +.\" .Vt char +.\" pointer +.\" .Pq Fa "char *p" . +.El +.Sh RETURN VALUES +The +.Fn dlinfo +function returns 0 on success, or \-1 if an error occurred. +Whenever an error has been detected, a message detailing it can +be retrieved via a call to +.Xr dlerror 3 . +.Sh EXAMPLES +Using +.Fn dlinfo +to retrieve +.Vt Link_map +structure. +.Pp +The following example shows how dynamic library can detect the list +of shared libraries loaded after caller's one. +For simplicity, error checking has been omitted. +.Bd -literal -offset indent +Link_map *map; + +dlinfo(RTLD_SELF, RTLD_DI_LINKMAP, &map); + +while (map != NULL) { + printf("%p: %s\\n", map->l_addr, map->l_name); + map = map->l_next; +} +.Ed +.\" .Pp +.\" Example 2: Using +.\" .Fn dlinfo +.\" to retrieve the library search paths. +.\" .Pp +.\" The following example shows how a dynamic object can inspect the library +.\" search paths that would be used to locate a simple filename with +.\" .Xr dlopen 3 . +.\" For simplicity, error checking has been omitted. +.\" .Bd -literal -offset indent +.\" Dl_serinfo _info, *info = &_info; +.\" Dl_serpath *path; +.\" unsigned int cnt; +.\" +.\" /* determine search path count and required buffer size */ +.\" dlinfo(RTLD_SELF, RTLD_DI_SERINFOSIZE, (void *)info); +.\" +.\" /* allocate new buffer and initialize */ +.\" info = malloc(_info.dls_size); +.\" info->dls_size = _info.dls_size; +.\" info->dls_cnt = _info.dls_cnt; +.\" +.\" /* obtain search path information */ +.\" dlinfo(RTLD_SELF, RTLD_DI_SERINFO, (void *)info); +.\" +.\" path = &info->dls_serpath[0]; +.\" +.\" for (cnt = 1; cnt <= info->dls_cnt; cnt++, path++) { +.\" (void) printf("%2d: %s\\n", cnt, path->dls_name); +.\" } +.\" .Ed +.Sh SEE ALSO +.Xr rtld 1 , +.Xr dladdr 3 , +.Xr dlopen 3 , +.Xr dlsym 3 +.Sh HISTORY +The +.Fn dlinfo +function first appeared in the Solaris operating system. +In +.Nx , +it first appeared in +.Nx 5.1 . +.Sh AUTHORS +.An -nosplit +The +.Nx +implementation of the +.Fn dlinfo +function was written by +.An Antti Kantee Aq Mt pooka@NetBSD.org . +.Pp +The manual page for this function was written by +.An Alexey Zelkin Aq Mt phantom@FreeBSD.org +and adapted to +.Nx +by +.An Kamil Rytarowski Aq Mt kamil@NetBSD.org . diff --git a/static/netbsd/man3/end.3 b/static/netbsd/man3/end.3 new file mode 100644 index 00000000..5658a0cc --- /dev/null +++ b/static/netbsd/man3/end.3 @@ -0,0 +1,81 @@ +.\" $NetBSD: end.3,v 1.9 2011/04/08 08:47:12 wiz Exp $ +.\" +.\" Copyright (c) 1986 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)end.3 6.4 (Berkeley) 1/24/94 +.\" +.Dd September 1, 2005 +.Dt END 3 +.Os +.Sh NAME +.Nm end , +.Nm etext , +.Nm edata +.Nd end boundaries of image segments +.Sh SYNOPSIS +.Vt extern int end; +.Vt extern int etext; +.Vt extern int edata; +.Sh DESCRIPTION +The globals +.Va end , etext +and +.Va edata +are program segment end addresses. +.Pp +.Va etext +is located at the first address after the end of the text segment. +.Pp +.Va edata +is located at the first address after the end of the initialized data segment. +.Pp +.Va end +is located at the first address after the end of the data segment +.Pq Tn BSS +when the program is loaded. +Use the +.Xr sbrk 2 +.\".Fn sbrk 0 +system call with zero as its argument to find the current end of the +data segment. +.Sh SEE ALSO +.Xr sbrk 2 , +.Xr malloc 3 , +.Xr a.out 5 +.Sh HISTORY +An +.Nm end +manual page appeared in +.At v6 . +.Sh BUGS +Traditionally, no variable existed that pointed to the start of the +text segment because the text segment always started at address +zero. +Although it is no longer valid to make this assumption, no +variable similar to the ones documented above exists to point to the +start of the text segment. diff --git a/static/netbsd/man3/fast_divide32.3 b/static/netbsd/man3/fast_divide32.3 new file mode 100644 index 00000000..90e44041 --- /dev/null +++ b/static/netbsd/man3/fast_divide32.3 @@ -0,0 +1,113 @@ +.\" $NetBSD: fast_divide32.3,v 1.10 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Joerg Sonnenberger. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 10, 2011 +.Dt FAST_DIVIDE32 3 +.Os +.Sh NAME +.Nm fast_divide32 , +.Nm fast_divide32_prepare , +.Nm fast_remainder32 +.Nd fast 32bit division and remainder +.Sh SYNOPSIS +.In sys/bitops.h +.Ft uint32_t +.Fn fast_divide32 "uint32_t v" "uint32_t div" "uint32_t m" "uint8_t s1" \ +"uint8_t s2" +.Ft uint32_t +.Fn fast_remainder32 "uint32_t v" "uint32_t div" "uint32_t m" "uint8_t s1" \ +"uint8_t s2" +.Ft void +.Fn fast_divide32_prepare "uint32_t div" "uint32_t *m" "uint8_t *s1" \ +"uint8_t *s2" +.Sh DESCRIPTION +The +.Nm fast_divide32 +and +.Nm fast_remainder32 +functions compute the equivalent of +.Fa v / Fa div +and +.Fa v % Fa div +using optimised +.Tn CPU +instructions. +The constants +.Fa m , +.Fa s1 , +and +.Fa s2 +must first be preset for a given value of +.Fa div +with the +.Nm fast_divide32_prepare +function. +.Sh RATIONALE +These functions are useful for inner loops and other performance-sensitive +tasks. +The functions expand to code that is typically slightly larger than +a plain division instruction, but requires less time to execute. +The code for constant +.Fa div +arguments should be equivalent to the assembly created by +.Tn GCC . +.Sh EXAMPLES +The following example computes +.Va q = a / b +and +.Va r = a % b : +.Bd -literal -offset indent +uint32_t a, b, q, r, m; +uint8_t s1, s2; + +fast_divide32_prepare(b, &m, &s1, &s2); + +q = fast_divide32(a, b, m, s1, s2); +r = fast_remainder32(a, b, m, s1, s2); +.Ed +.Sh SEE ALSO +.Xr bitops 3 , +.Xr div 3 , +.Xr remainder 3 +.Rs +.%A Torbj\(:orn Granlund +.%A Peter L. Montgomery +.%T Division by Invariant Integers Using Multiplication +.%J ACM SIGPLAN Notices +.%D June 1994 +.%N Issue 6 +.%V Volume 29 +.%P 61-72 +.%U https://gmplib.org/~tege/divcnst-pldi94.pdf +.Re +.Sh HISTORY +The +.Nm +function appeared in +.Nx 6.0 . diff --git a/static/netbsd/man3/ffs32.3 b/static/netbsd/man3/ffs32.3 new file mode 100644 index 00000000..ed40527b --- /dev/null +++ b/static/netbsd/man3/ffs32.3 @@ -0,0 +1,103 @@ +.\" $NetBSD: ffs32.3,v 1.6 2011/04/08 08:47:50 wiz Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 8, 2011 +.Dt FFS32 3 +.Os +.Sh NAME +.Nm ffs32 , +.Nm ffs64 , +.Nm fls32 , +.Nm fls64 +.Nd find first or last bit set +.Sh SYNOPSIS +.In sys/bitops.h +.Ft int +.Fn ffs32 "uint32_t n" +.Ft int +.Fn ffs64 "uint64_t n" +.Ft int +.Fn fls32 "uint32_t n" +.Ft int +.Fn fls64 "uint64_t n" +.Sh DESCRIPTION +The +.Fn ffs32 +and +.Fn ffs64 +functions find the first bit set in +.Fa n +and return the index of that bit. +Conversely, +the +.Fn fls32 +and +.Fn fls64 +functions find the last bit set in +.Fa n , +returning the index of the bit. +.Pp +The search always starts from the bit 1 (the least significant bit). +If the argument +.Fa n +is zero, each function returns zero. +.Sh IMPLEMENTATION NOTES +The described functions are implemented as +.Em static inline +functions in the +.In sys/bitops.h +header. +The standard C library includes a more portable +.Xr ffs 3 +for user applications. +.\" +.\" XXX: It is noted in the CVS history of that MD-optimized +.\" is a TODO. If those start to appear, note it here. +.\" +.Sh EXAMPLES +In the following example +.Va f = 3 +and +.Va l = 7 : +.Bd -literal -offset indent +uint32_t n = 0x44; /* 01000100 */ +int f, l; + +f = ffs32(n); +l = fls32(n); +.Ed +.Sh SEE ALSO +.Xr bitops 3 , +.Xr bits 3 , +.Xr bitstring 3 , +.Xr ffs 3 , +.Xr setbit 9 +.Sh HISTORY +These functions first appeared in +.Nx 5.0 . diff --git a/static/netbsd/man3/gcq.3 b/static/netbsd/man3/gcq.3 new file mode 100644 index 00000000..cdc0750b --- /dev/null +++ b/static/netbsd/man3/gcq.3 @@ -0,0 +1,532 @@ +.\" $NetBSD: gcq.3,v 1.4 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Not (c) 2007 Matthew Orgass +.\" This file is public domain, meaning anyone can make any use of part or all +.\" of this file including copying into other works without credit. Any use, +.\" modified or not, is solely the responsibility of the user. If this file +.\" is part of a collection then use in the collection is governed by the +.\" terms of the collection. +.\" +.Dd May 1, 2007 +.Dt GCQ 3 +.Os +.Sh NAME +.Nm GCQ_INIT , +.Nm GCQ_INIT_HEAD , +.Nm gcq_init , +.Nm gcq_init_head , +.Nm gcq_q , +.Nm gcq_hq , +.Nm gcq_head , +.Nm gcq_remove , +.Nm gcq_onlist , +.Nm gcq_empty , +.Nm gcq_linked , +.Nm gcq_insert_after , +.Nm gcq_insert_before , +.Nm gcq_insert_head , +.Nm gcq_insert_tail , +.Nm gcq_tie , +.Nm gcq_tie_after , +.Nm gcq_tie_before , +.Nm gcq_merge , +.Nm gcq_merge_head , +.Nm gcq_merge_tail , +.Nm gcq_clear , +.Nm gcq_remove_all , +.Nm GCQ_ITEM , +.Nm GCQ_GOT_FIRST , +.Nm GCQ_GOT_LAST , +.Nm GCQ_GOT_NEXT , +.Nm GCQ_GOT_PREV , +.Nm GCQ_DEQUEUED_FIRST , +.Nm GCQ_DEQUEUED_LAST , +.Nm GCQ_DEQUEUED_NEXT , +.Nm GCQ_DEQUEUED_PREV , +.Nm GCQ_GOT_FIRST_TYPED , +.Nm GCQ_GOT_LAST_TYPED , +.Nm GCQ_GOT_NEXT_TYPED , +.Nm GCQ_GOT_PREV_TYPED , +.Nm GCQ_DEQUEUED_FIRST_TYPED , +.Nm GCQ_DEQUEUED_LAST_TYPED , +.Nm GCQ_DEQUEUED_NEXT_TYPED , +.Nm GCQ_DEQUEUED_PREV_TYPED , +.Nm GCQ_GOT_FIRST_COND , +.Nm GCQ_GOT_LAST_COND , +.Nm GCQ_GOT_NEXT_COND , +.Nm GCQ_GOT_PREV_COND , +.Nm GCQ_DEQUEUED_FIRST_COND , +.Nm GCQ_DEQUEUED_LAST_COND , +.Nm GCQ_DEQUEUED_NEXT_COND , +.Nm GCQ_DEQUEUED_PREV_COND , +.Nm GCQ_GOT_FIRST_COND_TYPED , +.Nm GCQ_GOT_LAST_COND_TYPED , +.Nm GCQ_GOT_NEXT_COND_TYPED , +.Nm GCQ_GOT_PREV_COND_TYPED , +.Nm GCQ_DEQUEUED_FIRST_COND_TYPED , +.Nm GCQ_DEQUEUED_LAST_COND_TYPED , +.Nm GCQ_DEQUEUED_NEXT_COND_TYPED , +.Nm GCQ_DEQUEUED_PREV_COND_TYPED , +.Nm GCQ_FOREACH , +.Nm GCQ_FOREACH_REV , +.Nm GCQ_FOREACH_NVAR , +.Nm GCQ_FOREACH_NVAR_REV , +.Nm GCQ_FOREACH_RO , +.Nm GCQ_FOREACH_RO_REV , +.Nm GCQ_FOREACH_DEQUEUED , +.Nm GCQ_FOREACH_DEQUEUED_REV , +.Nm GCQ_FOREACH_TYPED , +.Nm GCQ_FOREACH_REV_TYPED , +.Nm GCQ_FOREACH_NVAR_TYPED , +.Nm GCQ_FOREACH_NVAR_REV_TYPED , +.Nm GCQ_FOREACH_RO_TYPED , +.Nm GCQ_FOREACH_RO_REV_TYPED , +.Nm GCQ_FOREACH_DEQUEUED_TYPED , +.Nm GCQ_FOREACH_DEQUEUED_REV_TYPED , +.Nm GCQ_FIND , +.Nm GCQ_FIND_REV , +.Nm GCQ_FIND_TYPED , +.Nm GCQ_FIND_REV_TYPED +.Nd "Generic Circular Queues" +.Sh SYNOPSIS +.In sys/gcq.h +.Pp +.Vt struct gcq ; +.Vt struct gcq_head ; +.Pp +.Fn GCQ_INIT name +.Fn GCQ_INIT_HEAD name +.Pp +.Ft static inline void +.Fn gcq_init "struct gcq *q" +.Ft static inline void +.Fn gcq_init_head "struct gcq_head *head" +.Ft static inline struct gcq * +.Fn gcq_q "struct gcq_head *head" +.Ft static inline struct gcq * +.Fn gcq_hq "struct gcq_head *head" +.Ft static inline struct gcq_head * +.Fn gcq_head "struct gcq *q" +.Ft static inline struct gcq * +.Fn gcq_remove "struct gcq *q" +.Ft static inline bool +.Fn gcq_onlist "struct gcq *q" +.Ft static inline bool +.Fn gcq_empty "struct gcq_head *head" +.Ft static inline bool +.Fn gcq_linked "struct gcq *prev" "struct gcq *next" +.Ft static inline void +.Fn gcq_insert_after "struct gcq *on" "struct gcq *off" +.Ft static inline void +.Fn gcq_insert_before "struct gcq *on" "struct gcq *off" +.Ft static inline void +.Fn gcq_insert_head "struct gcq_head *head" "struct gcq *q" +.Ft static inline void +.Fn gcq_insert_tail "struct gcq_head *head" "struct gcq *q" +.Ft static inline void +.Fn gcq_tie "struct gcq *dst" "struct gcq *src" +.Ft static inline void +.Fn gcq_tie_after "struct gcq *dst" "struct gcq *src" +.Ft static inline void +.Fn gcq_tie_before "struct gcq *dst" "struct gcq *src" +.Ft static inline void +.Fn gcq_merge "struct gcq *dst" "struct gcq *src" +.Ft static inline void +.Fn gcq_merge_tail "struct gcq_head *dst" "struct gcq_head *src" +.Ft static inline void +.Fn gcq_merge_head "struct gcq_head *dst" "struct gcq_head *src" +.Ft static inline void +.Fn gcq_clear "struct gcq *q" +.Ft static inline void +.Fn gcq_remove_all "struct gcq_head *head" +.Pp +.Ft type * +.Fn GCQ_ITEM q type name +.Ft bool +.Fn GCQ_GOT_FIRST var head +.Ft bool +.Fn GCQ_GOT_LAST var head +.Ft bool +.Fn GCQ_GOT_NEXT var current head start +.Ft bool +.Fn GCQ_GOT_PREV var current head start +.Ft bool +.Fn GCQ_DEQUEUED_FIRST var head +.Ft bool +.Fn GCQ_DEQUEUED_LAST var head +.Ft bool +.Fn GCQ_DEQUEUED_NEXT var current head start +.Ft bool +.Fn GCQ_DEQUEUED_PREV var current head start +.Ft bool +.Fn GCQ_GOT_FIRST_TYPED tvar head type name +.Ft bool +.Fn GCQ_GOT_LAST_TYPED tvar head type name +.Ft bool +.Fn GCQ_GOT_NEXT_TYPED tvar current head start type name +.Ft bool +.Fn GCQ_GOT_PREV_TYPED tvar current head start type name +.Ft bool +.Fn GCQ_DEQUEUED_FIRST_TYPED tvar head type name +.Ft bool +.Fn GCQ_DEQUEUED_LAST_TYPED tvar head type name +.Ft bool +.Fn GCQ_DEQUEUED_NEXT_TYPED tvar current head start type name +.Ft bool +.Fn GCQ_DEQUEUED_PREV_TYPED tvar current head start type name +.Ft bool +.Fn GCQ_GOT_FIRST_COND var head cond +.Ft bool +.Fn GCQ_GOT_LAST_COND var head cond +.Ft bool +.Fn GCQ_GOT_NEXT_COND var current head start cond +.Ft bool +.Fn GCQ_GOT_PREV_COND var current head start cond +.Ft bool +.Fn GCQ_DEQUEUED_FIRST_COND var head cond +.Ft bool +.Fn GCQ_DEQUEUED_LAST_COND var head cond +.Ft bool +.Fn GCQ_DEQUEUED_NEXT_COND var current head start cond +.Ft bool +.Fn GCQ_DEQUEUED_PREV_COND var current head start cond +.Ft bool +.Fn GCQ_GOT_FIRST_COND_TYPED tvar head type name cond +.Ft bool +.Fn GCQ_GOT_LAST_COND_TYPED tvar head type name cond +.Ft bool +.Fn GCQ_GOT_NEXT_COND_TYPED tvar current head start type name cond +.Ft bool +.Fn GCQ_GOT_PREV_COND_TYPED tvar current head start type name cond +.Ft bool +.Fn GCQ_DEQUEUED_FIRST_COND_TYPED tvar head type name cond +.Ft bool +.Fn GCQ_DEQUEUED_LAST_COND_TYPED tvar head type name cond +.Ft bool +.Fn GCQ_DEQUEUED_NEXT_COND_TYPED tvar current head start type name cond +.Ft bool +.Fn GCQ_DEQUEUED_PREV_COND_TYPED tvar current head start type name cond +.Fn GCQ_FOREACH var head +.Fn GCQ_FOREACH_REV var head +.Fn GCQ_FOREACH_NVAR var nvar head +.Fn GCQ_FOREACH_NVAR_REV var nvar head +.Fn GCQ_FOREACH_RO var nvar head +.Fn GCQ_FOREACH_RO_REV var nvar head +.Fn GCQ_FOREACH_DEQUEUED var nvar head +.Fn GCQ_FOREACH_DEQUEUED_REV var nvar head +.Fn GCQ_FOREACH_TYPED var head tvar type name +.Fn GCQ_FOREACH_REV_TYPED var head tvar type name +.Fn GCQ_FOREACH_NVAR_TYPED var nvar head tvar type name +.Fn GCQ_FOREACH_NVAR_REV_TYPED var nvar head tvar type name +.Fn GCQ_FOREACH_RO_TYPED var nvar head tvar type name +.Fn GCQ_FOREACH_RO_REV_TYPED var nvar head tvar type name +.Fn GCQ_FOREACH_DEQUEUED_TYPED var nvar head tvar type name +.Fn GCQ_FOREACH_DEQUEUED_REV_TYPED var nvar head tvar type name +.Fn GCQ_FIND var head cond +.Fn GCQ_FIND_REV var head cond +.Fn GCQ_FIND_TYPED var head tvar type name cond +.Fn GCQ_FIND_REV_TYPED var head tvar type name cond +.Fn GCQ_ASSERT cond +.Sh DESCRIPTION +The generic circular queue is a doubly linked list designed for efficient +merge operations and unconditional removal. +All basic operations can be performed with or without use of a separate head, +allowing easy replacement of any pointers where efficient removal is desired. +The meaning of the data type will not change; direct use and defined +operations can be mixed when convenient. +The basic type is: +.Bd -literal -offset indent +struct gcq { + struct gcq *q_next; + struct gcq *q_prev; +}; +.Ed +.Pp +The structure must first be initialized such that the +.Va q_next +and +.Va q_prev +members point to the beginning of the +.Vt struct gcq . +This can be done with +.Fn gcq_init +and +.Fn gcq_init_head +or with constant initializers +.Fn GCQ_INIT +and +.Fn GCQ_INIT_HEAD . +A +.Vt struct gcq +should +.Em never +be given +.Dv NULL +values. +.Pp +The structure containing the +.Vt struct gcq +can be retrieved by pointer arithmetic in the +.Fn GCQ_ITEM +macro. +List traversal normally requires knowledge of the list head to safely +retrieve list items. +.Pp +Capitalized operation names are macros and should be assumed to cause multiple +evaluation of arguments. +.Li TYPED +variants of macros set a typed pointer variable instead of or in addition to +.Vt struct gcq * +arguments. +Additional type specific inlines and macros around some GCQ operations can be +useful. +.Pp +A few assertions are provided when +.Dv DIAGNOSTIC +is defined in the kernel or +.Dv _DIAGNOSTIC +is defined in userland. +If +.Dv GCQ_USE_ASSERT +is defined prior to header inclusions +then +.Fn assert +will be used for assertions and +.Dv NDEBUG +can be used to turn them off. +.Fn GCQ_ASSERT +is a wrapper around the used assertion function. +None of the operations accept +.Dv NULL +arguments, however this is not tested by assertion. +.Pp +The head is separately named for type checking but contains only a +.Vt struct gcq , +a pointer to which can be retrieved via +.Fn gcq_hq . +The reverse operation is performed by +.Fn gcq_head , +turning the supplied +.Vt struct gcq * +into +.Vt struct gcq_head * . +.Fn gcq_q +returns its +.Vt struct gcq * +argument and is used for type checking in +.Fn GCQ_ITEM . +There are no functions for retrieving the raw +.Va q_prev +and +.Va q_next +pointers as these are usually clearer when used directly (if at all). +.Pp +.Fn gcq_remove +returns the element removed and is always a valid operation after +initialization. +.Fn gcq_onlist +returns +.Dv false +if the structure links to itself and +.Dv true +otherwise. +.Fn gcq_empty +is the negation of this operation performed on a head. +.Fn gcq_linked +tests if +.Li "prev->q_next == next && next->q_prev == prev" . +.Pp +.Fn gcq_tie +ties +.Va src +after +.Va dst +such that that if the old lists are DST, DST2 and SRC, SRC2, the new list is +DST, SRC, SRC2, DST2. +If +.Va dst +and +.Va src +are on the same list then any elements between but not including +.Va dst +and +.Va src +are cut from the list. +If +.Li dst == src +then the result is the same as +.Fn gcq_remove . +.Fn gcq_tie +is equivalent to +.Fn gcq_tie_after +except that the latter must only be used with arguments on separate lists or +not on lists and asserts that +.Li "src != dst && dst->q_prev != src" . +.Fn gcq_tie_before +performs the same operation on +.Li dst->q_prev . +.Pp +.Fn gcq_merge +moves any elements on list +.Va src +(but not +.Va src +itself) to list +.Va dst . +It is normally used with two heads via +.Fn gcq_merge_head +or +.Fn gcq_merge_tail . +If +.Dv GCQ_UNCONDITIONAL_MERGE +is defined prior to header inclusion then the merge operations will always +perform a tie then remove +.Va src +from the new list, which may reduce code size slightly. +.Pp +.Fn gcq_clear +initializes all elements currently linked with +.Va q +and is normally used with a head as +.Fn gcq_remove_all . +.Pp +.Fn gcq_insert_after +and +.Fn gcq_insert_before +are slightly optimized versions of +.Fn gcq_tie +for the case where +.Va off +is not on a list and include assertions to this effect, which are also useful +to detect missing initialization. +.Fn gcq_insert_head +and +.Fn gcq_insert_tail +are the same operations applied to a head. +.Pp +.Fn GCQ_GOT_FIRST +and +.Fn GCQ_GOT_LAST +set +.Va var +to a pointer to the first or last +.Vt struct gcq +in the list +or +.Dv NULL +if the list is empty and return +.Dv false +if empty and +.Dv true +otherwise. +The boolean return is to emphasise that it is not normally safe and useful to +directly pass the raw first/next/etc. pointer to another function. +The macros are written such that the +.Dv NULL +values will be optimized out if not otherwise used. +.Li DEQUEUED +variants also remove the member from the list. +.Li COND +variants take an additional condition that is evaluated when the macro would +otherwise return +.Dv true . +If the condition is false +.Va var +or +.Va tvar +is set to +.Dv NULL +and no dequeue is performed. +.Pp +.Fn GCQ_GOT_NEXT +and variants take pointers to the current position, list head, and starting +point as arguments. +The list head will be skipped when it is reached unless it is equal to the +starting point; upon reaching the starting point +.Va var +will be set to +.Dv NULL +and the macro will return +.Dv false . +The next and prev macros also assert that +.Va current +is on the list unless it is equal to +.Va start . +These macros are the only provided method for iterating through the list from +an arbitrary point. +Traversal macros are only provided for list heads, however +.Fn gcq_head +can be used to treat any item as a head. +.Pp +Foreach variants contain an embedded +.Li for +statement for iterating over a list. +Those containing +.Li REV +use the +.Va q_prev +pointer for traversal, others use +.Va q_next . +The plain +.Fn GCQ_FOREACH +uses a single variable. +.Li NVAR +variants save the next pointer at the top of the loop so that the current +element can be removed without adjusting +.Va var . +This is useful when +.Va var +is passed to a function that might remove it but will not otherwise modify +the list. +When the head is reached both +.Va var +and +.Va nvar +elements are left pointing to the list head. +.Li FOREACH +asserts that +.Va var , +and +.Li NVAR +asserts that +.Va nvar +does not point to itself when starting the next loop. +This assertion takes place after the variable is tested against the head so +it is safe to remove all elements from the list. +.Li RO +variants also set +.Va nvar +but assert that the two variables are linked at the end of each iteration. +This is useful when calling a function that is not supposed to remove the +element passed. +.Li DEQUEUED +variants are like +.Li NVAR +but remove each element before the code block is executed. +.Li TYPED +variants are equivalent to the untyped versions except that they take three +extra arguments: a typed pointer, the type name, and the member name of the +.Vt struct gcq +used in this list. +.Va tvar +is set to +.Dv NULL +when the head is reached. +.Pp +.Fn GCQ_FIND +is a foreach loop that does nothing except break when the supplied condition +is true. +.Li REV +and +.Li TYPED +variants are available. +.\" .Sh EXAMPLES +.Sh SEE ALSO +.Xr gcc 1 , +.Xr _DIAGASSERT 3 , +.Xr assert 3 , +.Xr queue 3 , +.Xr KASSERT 9 +.Sh HISTORY +GCQ appeared in +.Nx 5.0 . diff --git a/static/netbsd/man3/ilog2.3 b/static/netbsd/man3/ilog2.3 new file mode 100644 index 00000000..f7940844 --- /dev/null +++ b/static/netbsd/man3/ilog2.3 @@ -0,0 +1,85 @@ +.\" $NetBSD: ilog2.3,v 1.6 2021/11/05 22:39:35 riastradh Exp $ $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 5, 2021 +.Dt ILOG2 3 +.Os +.Sh NAME +.Nm ilog2 +.Nd integer base-2 logarithm +.Sh SYNOPSIS +.In sys/bitops.h +.Ft int +.Fn ilog2 "size x" +.Sh DESCRIPTION +For positive +.Fa x , +the +.Fn ilog2 +macro returns the integer part of the base-2 logarithm of +.Fa x ; +that is, +.Fo floor +.Fn log_2 x +.Fc . +If +.Fa n Li = Fn ilog2 x , +then +.Fa n +is the largest integer such that +.No 2** Ns Fa n Li <= Fa x ; +in other words, +.Fn ilog2 +returns the largest integer to which 2 can be raised to obtain a value +at most +.Fa x . +.Pp +The type of the input parameter must be unsigned. +.Pp +If +.Fa x +is a constant expression, then so is +.Fn ilog2 x . +.Sh ERRORS +.Fn ilog2 +returns \-1 when +.Fa x +is zero. +.Sh SEE ALSO +.Xr bitops 3 , +.Xr ffs 3 , +.Xr ilogb 3 , +.Xr log2 3 , +.Xr imax 9 , +.Xr powerof2 9 +.Sh HISTORY +The +.Fn ilog2 +macro first appeared in +.Nx 5.0 . diff --git a/static/netbsd/man3/intro.3 b/static/netbsd/man3/intro.3 new file mode 100644 index 00000000..f7160aa8 --- /dev/null +++ b/static/netbsd/man3/intro.3 @@ -0,0 +1,314 @@ +.\" $NetBSD: intro.3,v 1.38 2025/09/30 10:18:45 uwe Exp $ +.\" +.\" Copyright (c) 1980, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)intro.3 8.1 (Berkeley) 6/5/93 +.\" +.Dd April 14, 2021 +.Dt INTRO 3 +.Os +.Sh NAME +.Nm intro +.Nd introduction to the system libraries +.Sh DESCRIPTION +This section provides an overview of the system libraries, their +functions, error returns and other common definitions and concepts. +Most of these functions are available from the standard C library, +.Em libc . +Other libraries, such as the math library, +.Em libm , +must be indicated at compile time with the +.Fl l +option of the compiler. +.\" .Pp +.\" A subset of the +.\" .Xr libc functions +.\" are available from Fortran; +.\" they are described separately in +.\" .Xr intro 3f . +.Pp +The various system libraries supplied in +.Nx +(followed by the linker flags) are: +.Bl -tag -width "libc (-lc)" +.It Em libasn1 Pq Fl l Ns Ar asn1 +The abstract syntax notation (ASN) library provides routines for the +specification of abstract data types. +.It Em libbz2 Pq Fl l Ns Ar bz2 +Block-sorting compressor library providing routines for fast and +efficient compression. +.It Em libc Pq Fl l Ns Ar c +The standard C library. +When using the C compiler +.Xr cc 1 , +it is not necessary to supply the linker flag +.Fl l Ns Ar c +for these functions. +There are several subsystems included inside +.Em libc : +.Bl -tag -width "XXXXXX" +.It standard I/O routines +see +.Xr stdio 3 +.It database routines +see +.Xr db 3 +.It bit operators +see +.Xr bitstring 3 +.It string operators +see +.Xr string 3 +.It character tests and character operators +.It encryption and hash routines +see +.Xr md4 3 +and +.Xr md5 3 . +.It storage allocation +see +.Xr mpool 3 +and +.Xr malloc 3 +.It time functions +see +.Xr time 3 +.It signal handling +see +.Xr signal 3 +.El +.It Em libcom_err Pq Fl l Ns Ar com_err +The common error description library. +See +.Xr com_err 3 . +.It Em libcompat Pq Fl l Ns Ar compat +Functions which are obsolete but are available for compatibility with +.Bx 4.3 . +In particular, a number of system call interfaces provided in previous +releases of +.Bx +have been included for source code compatibility. +Use of these routines should, for the most part, be avoided. +The manual page entry +for each compatibility routine indicates the proper interface to use. +.It Em libcrypt Pq Fl l Ns Ar crypt +The crypt library. +See +.Xr crypt 3 . +.It Em libcrypto Pq Fl l Ns Ar crypto +The OpenSSL cryptographic library. +See +.Xr crypto 7 . +.It Em libcurses Pq Fl l Ns Ar curses Fl l Ns Ar terminfo +Terminal independent screen management routines +for two dimensional non-bitmap display terminals. +See +.Xr curses 3 . +.It Em libdes Pq Fl l Ns Ar des +The OpenSSL cryptographic library for the DES algorithms. +See +.Xr des 3 . +.It Em libdm Pq Fl l Ns Ar dm +The device-mapper driver access library used for communication with +kernel driver +.Xr dm 4 +and for +.Xr lvm 8 +subsystem. +.It Em libedit Pq Fl l Ns Ar edit +The command-line editor or editline library. +The editline library provides generic editing and history functions. +See +.Xr editline 3 . +.It Em libform Pq Fl l Ns Ar form +The curses form library provides a terminal-independent form system +using the curses library. +The form library provides facilities for defining forms on terminals. +See +.Xr forms 3 . +.It Em libgssapi Pq Fl l Ns Ar gssapi +The Generic Security Services (GSS) API library. +This library provides +verification services to applications and usually sits above the +cryptographic libraries. +.It Em libhdb Pq Fl l Ns Ar hdb +The Heimdal Kerberos 5 authentication/authorisation database access +library. +.It Em libintl Pq Fl l Ns Ar intl +The internationalized message handling library. +See +.Xr gettext 3 . +.It Em libipsec Pq Fl l Ns Ar ipsec +The IPsec policy control library. +See +.Xr ipsec_set_policy 3 +and +.Xr ipsec_strerror 3 . +.It Em libkadm5clnt Pq Fl l Ns Ar kadm5clnt +The Kerberos 5 administration client library. +.It Em libkadm5srv Pq Fl l Ns Ar kadm5srv +The Kerberos 5 administration server library. +See +.Xr kadm5_pwcheck 3 . +.It Em libkafs Pq Fl l Ns Ar kafs +The Kerberos IV AFS library. +See +.Xr kafs 3 . +.It Em libkdb Pq Fl l Ns Ar kdb +The Kerberos IV authentication/authorisation database access library. +.It Em libkrb Pq Fl l Ns Ar krb +The Kerberos IV library. +.It Em libkrb5 Pq Fl l Ns Ar krb5 +The Kerberos 5 library. +See +.Xr krb5 3 . +.It Em libkstream Pq Fl l Ns Ar kstream +Kerberos IV encrypted stream library. +.It Em libkvm Pq Fl l Ns Ar kvm +Kernel data access library. +See +.Xr kvm 3 . +.It Em libl Pq Fl l Ns Ar l +The library for +.Xr lex 1 . +.It Em libm Pq Fl l Ns Ar m +The math library. +See +.Xr math 3 . +.\" The math library is loaded as needed by the Pascal compiler +.\" .Xr pc 1 , +.\" but not by the C compiler which requires the +.\" .Fl l Ns Ar m +.\" flag (see +.\" .Xr math 3 ) . +.\" .It Em libmp Pq Fl l Ns Ar mp +.\" .It Em libom +.\" Old math library. +.\" .It Em libplot Pq Fl l Ns Ar plot +.\" Device independent plotting functions (see +.\" .Xr plot 3 ) . +.\" .It Em libplotf77 Pq Fl l Ns Ar plotf77 +.\" The device independent plotting functions for fortran (see +.\" .Xr plot 3 ) . +.\" .It Em libresolv Pq Fl l Ns Ar resolv +.\" Routines for network address resolution. +.It Em libmenu Pq Fl l Ns Ar menu +The curses menu library. +See +.Xr menus 3 . +.It Em libnvmm Pq Fl l Ns Ar nvmm +.Nx +Virtualization API. +See +.Xr libnvmm 3 . +.It Em libossaudio Pq Fl l Ns Ar ossaudio +Open Sound System compatibility library. +See +.Xr ossaudio 3 . +.It Em libpanel Pq Fl l Ns Ar panel +The curses panel library. +See +.Xr panel 3 . +.It Em libpcap Pq Fl l Ns Ar pcap +The packet capture library. +See +.Xr pcap 3 . +.It Em libpci Pq Fl l Ns Ar pci +The PCI bus access library. +See +.Xr pci 3 . +.It Em libposix Pq Fl l Ns Ar posix +The POSIX compatibility library provides a compatibility interface for +POSIX functions which differ from the standard BSD interfaces. +See +.Xr chown 2 +and +.Xr rename 2 . +.It Em libresolv Pq Fl l Ns Ar resolv +The DNS resolver library. +.It Em librmt Pq Fl l Ns Ar rmt +Remote magnetic tape library. +See +.Xr rmtops 3 . +.It Em libroken Pq Fl l Ns Ar roken +A library containing compatibility functions used by Kerberos. +It implements functionality required by the Kerberos implementation not +implemented in the standard +.Nx +libraries. +.It Em librpcsvc Pq Fl l Ns Ar rpcsvc +The Remote Procedure Call (RPC) services library. +See +.Xr rpc 3 . +.It Em libskey Pq Fl l Ns Ar skey +The S/Key one-time password library. +See +.Xr skey 3 . +.It Em libsl Pq Fl l Ns Ar sl +.It Em libss Pq Fl l Ns Ar ss +.It Em libssl Pq Fl l Ns Ar ssl +The secure sockets layer (SSL) library. +See +.Xr ssl 7 . +.It Em libtelnet Pq Fl l Ns Ar telnet +The telnet library. +.It Em libterminfo Pq Fl l Ns Ar terminfo +The terminal-independent operation library. +See +.Xr terminfo 3 . +.It Em libusbhid Pq Fl l Ns Ar usbhid +The Universal Serial Bus (USB) Human Interface Devices access library. +See +.Xr libusbhid 3 . +.It Em libutil Pq Fl l Ns Ar util +The system utilities library. +See +.Xr util 3 . +.It Em libwrap Pq Fl l Ns Ar wrap +The TCP wrappers library. +See +.Xr hosts_access 3 . +.It Em liby Pq Fl l Ns Ar y +The library for +.Xr yacc 1 . +.It Em libz Pq Fl l Ns Ar z +General-purpose compression library. +See +.Xr zlib 3 . +.El +.Sh SEE ALSO +.Xr cc 1 , +.Xr ld 1 , +.Xr nm 1 , +.Xr rtld 1 , +.Xr intro 2 +.Sh HISTORY +An +.Nm +manual appeared in +.At v7 . diff --git a/static/netbsd/man3/inttypes.3 b/static/netbsd/man3/inttypes.3 new file mode 100644 index 00000000..afbfeed9 --- /dev/null +++ b/static/netbsd/man3/inttypes.3 @@ -0,0 +1,152 @@ +.\" $NetBSD: inttypes.3,v 1.2 2010/05/14 02:45:27 joerg Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 21, 2010 +.Dt INTTYPES 3 +.Os +.Sh NAME +.Nm inttypes +.Nd standard fixed-size integer types +.Sh SYNOPSIS +.In inttypes.h +.Sh DESCRIPTION +The +.In inttypes.h +header describes a set of format specifier macros aimed to increase +portability both within and across operating systems. +It includes the +.In stdint.h +header and extends it with additional facilities. +.Pp +Each of the following macros expand to a character string literal +containing the format specifier suitable for use within the format +argument of a formatted +.Tn I/O +function such as +.Xr printf 3 . +Each macro contains an identifier (PRI or SCN), +a conversion specifier, and a possible length modifier. +.Pp +The length modifier follows the integer types described in +.Xr stdint 3 : +.Bl -column -offset indent \ +"PRIdLEAST64 " \ +"PRIdLEAST64 " +.It Em int8_t Ta Em uint8_t +.It Em int16_t Ta Em uint16_t +.It Em int32_t Ta Em uint32_t +.It Em int64_t Ta Em uint64_t +.It Em int_least8_t Ta Em uint_least8_t +.It Em int_least16_t Ta Em uint_least16_t +.It Em int_least32_t Ta Em uint_least32_t +.It Em int_least64_t Ta Em uint_least64_t +.It Em int_fast8_t Ta Em uint_fast8_t +.It Em int_fast16_t Ta Em uint_fast16_t +.It Em int_fast32_t Ta Em uint_fast32_t +.It Em int_fast64_t Ta Em uint_fast64_t +.It Em intmax_t Ta Em uintmax_t +.It Em intptr_t Ta Em uintptr_t +.El +.Pp +The following format specifiers are defined for the +.Xr fprintf 3 +and +.Xr fscanf 3 +families, respectively: +.Bl -column -offset indent \ +"PRIdLEAST64 " \ +"PRIdLEAST64 " +.It Li PRI?8 Ta Li SCN?8 +.It Li PRI?16 Ta Li SCN?16 +.It Li PRI?32 Ta Li SCN?32 +.It Li PRI?64 Ta Li SCN?64 +.It Li PRI?LEAST8 Ta Li SCN?LEAST8 +.It Li PRI?LEAST16 Ta Li SCN?LEAST16 +.It Li PRI?LEAST32 Ta Li SCN?LEAST32 +.It Li PRI?LEAST64 Ta Li SCN?LEAST64 +.It Li PRI?FAST8 Ta Li SCN?FAST8 +.It Li PRI?FAST16 Ta Li SCN?FAST16 +.It Li PRI?FAST32 Ta Li SCN?FAST32 +.It Li PRI?FAST64 Ta Li SCN?FAST64 +.It Li PRI?MAX Ta Li SCN?MAX +.It Li PRI?PTR Ta Li SCN?PTR +.El +.Pp +The available conversion specifiers, +.Dq \&? +in above, are +.Em d +and +.Em i +for signed integers and +.Em o , +.Em u , +.Em x , +and +.Em X +for unsigned integers. +The +.Em X +is not available for the +.Xr fscanf 3 +family. +Without the length modifier these would correspond with +.Sy \&%d , +.Sy \&%i , +.Sy \&%o , +.Sy \&%u , +.Sy \&%x , +and +.Sy \&%X , +respectively. +.Sh EXAMPLES +The following example demonstrates typical usage: +.Bd -literal -offset indent +uint64_t i = 123; + +\&... + +(void)printf("i = %"PRIu64"\en", i); +.Ed +.Sh SEE ALSO +.Xr printf 3 , +.Xr scanf 3 , +.Xr stdint 3 +.Sh STANDARDS +The +.In inttypes.h +header conforms to +.St -isoC-99 +and +.St -p1003.1-2001 . +.Sh HISTORY +The +.In inttypes.h +header was first introduced in +.Nx 1.6 . diff --git a/static/netbsd/man3/iso646.3 b/static/netbsd/man3/iso646.3 new file mode 100644 index 00000000..42a7b833 --- /dev/null +++ b/static/netbsd/man3/iso646.3 @@ -0,0 +1,71 @@ +.\" $NetBSD: iso646.3,v 1.6 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 16, 2010 +.Dt ISO646 3 +.Os +.Sh NAME +.Nm iso646 +.Nd alternative operator spellings +.Sh SYNOPSIS +.In iso646.h +.Sh DESCRIPTION +The +.In iso646.h +header defines eleven alternative spellings for standard operators: +.Bl -column -offset indent \ +"11." "xor_eq" "xx" +.It Li 1. Ta Em and Ta && +.It Li 2. Ta Em and_eq Ta &\&= +.It Li 3. Ta Em bitand Ta & +.It Li 4. Ta Em bitor Ta \*[Ba] +.It Li 5. Ta Em compl Ta \&~ +.It Li 6. Ta Em not Ta \&! +.It Li 7. Ta Em not_eq Ta \*[Ne] +.It Li 8. Ta Em or Ta \*[Ba]\*[Ba] +.It Li 9. Ta Em or_eq Ta \*[Ba]\&= +.It Li 10. Ta Em xor Ta \&^ +.It Li 11. Ta Em xor_eq Ta \&^\&= +.El +.Pp +Each macro expands to the corresponding token. +.Sh RATIONALE +None. +.Sh SEE ALSO +.Xr operator 7 +.Sh STANDARDS +The +.In iso646.h +header conforms to +.St -ansiC . +.Sh HISTORY +The +.In iso646.h +header was first introduced in +.Nx 1.1 . diff --git a/static/netbsd/man3/limits.3 b/static/netbsd/man3/limits.3 new file mode 100644 index 00000000..a2a435b1 --- /dev/null +++ b/static/netbsd/man3/limits.3 @@ -0,0 +1,171 @@ +.\" $NetBSD: limits.3,v 1.2 2011/08/29 16:56:32 njoly Exp $ +.\" +.\" Copyright (c) 2011 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 9, 2011 +.Dt LIMITS 3 +.Os +.Sh NAME +.Nm limits +.Nd standard limits +.Sh SYNOPSIS +.In limits.h +.Sh DESCRIPTION +The +.In limits.h +header defines various compile-time and runtime limits. +These can be grouped into three categories: +.Bl -enum -offset indent +.It +Compile-time limits defined in a header file. +.It +Runtime system limits that are not associated with a file or directory; see +.Xr sysconf 3 . +.It +Runtime limits that are associated with a file or directory; see +.Xr pathconf 2 . +.El +.Pp +The +.In limits.h +header has been standardized by at least three entities. +.Ss ISO Limits +The limits defined by the +.St -isoC-99 +standard are all compile-time limits. +The numerical (integer) limits are: +.Bl -column -offset indent \ +"Constant " " Type " "either SCHAR_MAX or UCHAR_MAX " +.It Sy "Constant" Ta Sy "Type" Ta Sy " Minimum value" +.It Dv CHAR_BIT Ta Va char Ta " 8" +.It Dv SCHAR_MAX Ta Va signed char Ta " 127" +.It Dv SCHAR_MIN Ta Va signed char Ta "\-127" +.It Dv UCHAR_MAX Ta Va unsigned char Ta " 255" +.Pp +.It Dv INT_MAX Ta Va int Ta " 32767" +.It Dv INT_MIN Ta Va int Ta "\-32767" +.It Dv UINT_MAX Ta Va unsigned int Ta " 65535" +.Pp +.It Dv SHRT_MIN Ta Va short Ta "\-32767" +.It Dv SHRT_MAX Ta Va short Ta " 32767" +.It Dv USHRT_MAX Ta Va unsigned short Ta " 65535" +.Pp +.It Dv LONG_MAX Ta Va long int Ta " 2147483647" +.It Dv LONG_MIN Ta Va long int Ta "\-2147483647" +.It Dv ULONG_MAX Ta Va unsigned long int Ta " 4294967295" +.Pp +.It Dv LLONG_MAX Ta Va long long int Ta " 9223372036854775807" +.It Dv LLONG_MIN Ta Va long long int Ta "\-9223372036854775807" +.It Dv ULLONG_MAX Ta Va unsigned long long int Ta " 18446744073709551615" +.Pp +.It Dv MB_LEN_MAX Ta - Ta 1 +.El +.Pp +All listed limits may vary across machines and operating systems. +The standard guarantees only that the implementation-defined values are +equal or greater in absolute value to those shown. +The values permit a system with 16-bit integers +using one's complement arithmetic. +.Pp +Depending whether the system defines +.Va char +as signed or unsigned, the maximum and minimum values are: +.Bl -column -offset indent \ +"Constant " " Type " "either SCHAR_MAX or UCHAR_MAX " +.It Sy "Constant" Ta Sy "Type" Ta Sy "Minimum value" +.It Dv CHAR_MAX Ta Va char Ta either Dv SCHAR_MAX or Dv UCHAR_MAX +.It Dv CHAR_MIN Ta Va char Ta either Dv SCHAR_MIN or 0 +.El +.Pp +The two special cases, +.Dv CHAR_BIT +and +.Dv MB_LEN_MAX , +define the number of bits in +.Va char +and the maximum number of bytes in a multibyte character constant, +respectively. +.Ss POSIX Limits +The +.Dv POSIX.1 +standard specifies numerous limits related to the operating system. +For each limit, a separate constant prefixed with +.Dq Dv _POSIX_ +defines the +.Em lowest +value that the limit is allowed to have on +.Em any +.Tn POSIX +compliant system. +For instance, +.Dv _POSIX_OPEN_MAX +defines the minimum upper bound permitted by +.Tn POSIX +for the number of files that a single process may have open at any time. +This ensures that a portable program can safely reach these limits without +prior knowledge about the actual limits used in a particular system. +.Pp +As the limits are not necessary invariant, +.Xr pathconf 2 +and +.Xr sysconf 3 +should be used to determine the actual value of a limit at runtime. +The manual pages of these two functions also contain a more detailed +description of the limits available in +.Nx . +.Ss XSI Limits +Also the X/Open System Interface Extension +.Pq Dv XSI +specifies few limits. +In +.Nx +these are limited to +.Dv LONG_BIT +(the number of bits in +.Vt long ) , +.Dv WORD_BIT +(the number of bits in a +.Dq word ) , +and few limits related to +.Vt float +and +.Vt double . +.Sh SEE ALSO +.Xr getconf 1 , +.Xr pathconf 2 , +.Xr sysconf 3 , +.Xr types 3 , +.Xr unistd 3 +.Rs +.%A Richard W. Stevens +.%A Stephen A. Rago +.%B Advanced Programming in the UNIX Environment +.%V Second Edition +.%D 2005 +.%I Addison-Wesley +.Re diff --git a/static/netbsd/man3/makedev.3 b/static/netbsd/man3/makedev.3 new file mode 100644 index 00000000..a2a8e927 --- /dev/null +++ b/static/netbsd/man3/makedev.3 @@ -0,0 +1,80 @@ +.\" $NetBSD: makedev.3,v 1.3 2026/04/09 16:10:49 christos Exp $ +.\" +.\" Copyright (c) 2008 Ed Schouten +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man3/makedev.3,v 1.2 2008/09/28 20:26:16 ed Exp $ +.\" +.Dd April 9, 2026 +.Dt MAKEDEV 3 +.Os +.Sh NAME +.Nm makedev , +.Nm major , +.Nm minor +.Nd device number conversion +.Sh SYNOPSIS +.In sys/types.h +.Ft dev_t +.Fn makedev "int major" "int minor" +.Ft int +.Fn major "dev_t dev" +.Ft int +.Fn minor "dev_t dev" +.Sh DESCRIPTION +The +.Fn makedev +macro allows a unique device number to be generated based on its +.Fa major +and +.Fa minor +number. +The +.Fn major +and +.Fn minor +macros can be used to obtain the original numbers from the device number +.Fa dev . +.Pp +All block and character devices are uniquely +identified by a pair of major and minor numbers. +The major number refers to a certain device class (e.g. disks, TTYs) +while the minor number identifies an instance within the device class. +.Sh RETURN VALUES +The +.Fn major +macro returns a device major number that has a value between 0 and 4095 (0xfff). +The +.Fn minor +macro returns a device minor number that has a value between 0 and 1048575 +(0xfffff). +.Sh SEE ALSO +.Xr mknod 2 , +.Xr devname 3 , +.Xr MAKEDEV 8 +.Sh HISTORY +The major and minor numbers used to support values between 0 and 255 +(0xff) until +.Nx 1.3 +when the macros were changed to support their current ranges. diff --git a/static/netbsd/man3/offsetof.3 b/static/netbsd/man3/offsetof.3 new file mode 100644 index 00000000..7b6fb29a --- /dev/null +++ b/static/netbsd/man3/offsetof.3 @@ -0,0 +1,72 @@ +.\" $NetBSD: offsetof.3,v 1.5 2011/04/14 06:56:28 wiz Exp $ +.\" +.\" $OpenBSD: offsetof.3,v 1.2 2010/02/18 18:30:19 jmc Exp $ +.\" +.\" Copyright (c) 2010 Thomas Pfaff +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.\" +.Dd April 1, 2011 +.Dt OFFSETOF 3 +.Os +.Sh NAME +.Nm offsetof +.Nd offset of a structure member +.Sh SYNOPSIS +.In stddef.h +.Ft size_t +.Fn offsetof "type" "member" +.Sh DESCRIPTION +The +.Fn offsetof +macro expands to an integer constant expression of type +.Ft size_t +and yields the offset, +in bytes, of the field +.Ar member +from the start of the structure +.Ar type . +.Pp +A compiler error will result if +.Ar member +is not aligned to a byte boundary (i.e. it is a bit-field). +.Sh EXAMPLES +Regardless of the architecture and the +.Tn ABI , +the following example prints the value zero for the variable +.Va x . +.Bd -literal -offset indent +struct example { + double x; + int y; + char z; +}; + +size_t x, y, z; + +x = offsetof(struct example, x); +y = offsetof(struct example, y); +z = offsetof(struct example, z); + +(void)printf("%zu %zu %zu\en", x, y, z); +.Ed +.Sh SEE ALSO +.Xr __alignof__ 3 , +.Xr stddef 3 , +.Xr typeof 3 +.Sh STANDARDS +The +.Fn offsetof +macro conforms to +.St -ansiC . diff --git a/static/netbsd/man3/param.3 b/static/netbsd/man3/param.3 new file mode 100644 index 00000000..449f3d46 --- /dev/null +++ b/static/netbsd/man3/param.3 @@ -0,0 +1,101 @@ +.\" $NetBSD: param.3,v 1.4 2011/04/10 10:02:34 jruoho Exp $ +.\" +.\" Copyright (c) 2011 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 10, 2011 +.Dt PARAM 3 +.Os +.Sh NAME +.Nm param +.Nd common parameters +.Sh SYNOPSIS +.In sys/param.h +.Ft size +.Fn MAX "size a" "size b" +.Ft size +.Fn MIN "size a" "size b" +.Sh DESCRIPTION +The +.In sys/param.h +header includes some common definitions and macros specific to +.Nx . +The header is perhaps best characterized as a kernel equivalent of +.In sys/types.h . +The following list summarizes the provided definitions and macros. +.Bl -bullet -offset indent +.It +First and foremost, the header defines the version of +.Nx . +This is defined as +.Bd -literal -offset indent +#define __NetBSD_Version__ 599004800 /* 5.99.48 */ +.Ed +.Pp +The general format is +.Dq MMmmrrpp00 , +where +.Sq MM +and +.Sq mm +denote the major and minor version, respectively, +.Sq rr +is provided for compatibility, and +.Sq pp +defines the patch level. +.It +Common utility macros such as +.Fn MAX +and +.Fn MIN +as well as more specific macros such as +.Xr STACK 9 , +.Xr ctod 9 , +.Xr mstohz 9 , +.Xr roundup 9 , +and +.Xr setbit 9 . +.It +Numerous miscellaneous definitions such as limits, +constants for the kernel +.Xr memoryallocators 9 , +scale factors used by the scheduler, +.Xr kthread 9 +priorities, and many others. +.It +Definitions provided for historical and compatibility reasons. +Examples range from definitions such as +.Dq #define BSD +to old priority levels used in the kernel. +.El +.Sh SEE ALSO +.Xr bitops 3 , +.Xr cdefs 3 , +.Xr types 3 , +.Xr unistd 3 +.Sh HISTORY +A +.In param.h +header appeared already in the +.At v4 . diff --git a/static/netbsd/man3/paths.3 b/static/netbsd/man3/paths.3 new file mode 100644 index 00000000..e77a984b --- /dev/null +++ b/static/netbsd/man3/paths.3 @@ -0,0 +1,98 @@ +.\" $NetBSD: paths.3,v 1.3 2011/04/08 08:12:51 jruoho Exp $ +.\" +.\" Copyright (c) 2011 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 8, 2011 +.Dt PATHS 3 +.Os +.Sh NAME +.Nm paths +.Nd default system paths +.Sh SYNOPSIS +.In paths.h +.Sh DESCRIPTION +The +.In paths.h +header defines some default paths used in +.Nx . +All defined constants are prefixed with +.Dv _PATH . +The constants include: +.Bl -bullet -offset indent +.It +The default user search path set by +.Xr login 1 +and associated utilities such as +.Xr rshd 8 . +This is defined by +.Dv _PATH_DEFPATH +and includes directories such as +.Pa /usr/bin +and +.Pa /usr/local/bin . +.It +Default paths for some utilities and device nodes. +Examples include such paths as +.Pa /dev/null +.Pq Dv _PATH_DEVNULL , +.Pa /dev/mem +.Pq Dv _PATH_MEM , +and +.Pa /etc/nologin +.Pq Dv _PATH_NOLOGIN , +among others. +.It +Paths for some default directories such as +.Pa /dev +.Pq Dv _PATH_DEV +and +.Pa /tmp +.Pq Dv _PATH_TMP +as well as paths for some miscellaneous utilities such as +.Xr csh 1 , +.Pa /bin/csh +.Pq Dv _PATH_CSHELL . +.El +.Sh SEE ALSO +.Xr whereis 1 , +.Xr sysexits 3 , +.Xr types 3 , +.Xr hier 7 +.\" +.\" XXX: Fill this. +.\" +.\" .Sh HISTORY +.\" The +.\" .In paths.h +.\" header first appeared in +.\" .Bx ???? +.Sh CAVEATS +The +.In paths.h +header is specific to +.Nx . diff --git a/static/netbsd/man3/queue.3 b/static/netbsd/man3/queue.3 new file mode 100644 index 00000000..095c5b7c --- /dev/null +++ b/static/netbsd/man3/queue.3 @@ -0,0 +1,1103 @@ +.\" $NetBSD: queue.3,v 1.61 2020/10/20 23:27:57 kamil Exp $ +.\" +.\" Copyright (c) 2000, 2002 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" Copyright (c) 1993 The Regents of the University of California. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)queue.3 8.1 (Berkeley) 12/13/93 +.\" +.Dd October 1, 2017 +.Dt QUEUE 3 +.Os +.Sh NAME +.Nm SLIST_HEAD , +.Nm SLIST_HEAD_INITIALIZER , +.Nm SLIST_ENTRY , +.Nm SLIST_FIRST , +.Nm SLIST_EMPTY , +.Nm SLIST_NEXT , +.Nm SLIST_FOREACH , +.Nm SLIST_FOREACH_SAFE , +.Nm SLIST_INIT , +.Nm SLIST_INSERT_AFTER , +.Nm SLIST_INSERT_HEAD , +.Nm SLIST_REMOVE_AFTER , +.Nm SLIST_REMOVE_HEAD , +.Nm SLIST_REMOVE , +.Nm LIST_HEAD , +.Nm LIST_HEAD_INITIALIZER , +.Nm LIST_ENTRY , +.Nm LIST_FIRST , +.Nm LIST_EMPTY , +.Nm LIST_NEXT , +.Nm LIST_FOREACH , +.Nm LIST_FOREACH_SAFE , +.Nm LIST_INIT , +.Nm LIST_INSERT_AFTER , +.Nm LIST_INSERT_BEFORE , +.Nm LIST_INSERT_HEAD , +.Nm LIST_REMOVE , +.Nm LIST_REPLACE , +.Nm LIST_MOVE , +.Nm SIMPLEQ_HEAD , +.Nm SIMPLEQ_HEAD_INITIALIZER , +.Nm SIMPLEQ_ENTRY , +.Nm SIMPLEQ_FIRST , +.Nm SIMPLEQ_EMPTY , +.Nm SIMPLEQ_NEXT , +.Nm SIMPLEQ_LAST , +.Nm SIMPLEQ_FOREACH , +.Nm SIMPLEQ_FOREACH_SAFE , +.Nm SIMPLEQ_INIT , +.Nm SIMPLEQ_INSERT_AFTER , +.Nm SIMPLEQ_INSERT_HEAD , +.Nm SIMPLEQ_INSERT_TAIL , +.Nm SIMPLEQ_REMOVE_AFTER , +.Nm SIMPLEQ_REMOVE_HEAD , +.Nm SIMPLEQ_REMOVE , +.Nm SIMPLEQ_CONCAT , +.Nm TAILQ_HEAD , +.Nm TAILQ_HEAD_INITIALIZER , +.Nm TAILQ_ENTRY , +.Nm TAILQ_FIRST , +.Nm TAILQ_NEXT , +.Nm TAILQ_LAST , +.Nm TAILQ_PREV , +.Nm TAILQ_EMPTY , +.Nm TAILQ_FOREACH , +.Nm TAILQ_FOREACH_SAFE , +.Nm TAILQ_FOREACH_REVERSE , +.Nm TAILQ_FOREACH_REVERSE_SAFE , +.Nm TAILQ_INIT , +.Nm TAILQ_INSERT_AFTER , +.Nm TAILQ_INSERT_BEFORE , +.Nm TAILQ_INSERT_HEAD , +.Nm TAILQ_INSERT_TAIL , +.Nm TAILQ_REMOVE , +.Nm TAILQ_REPLACE , +.Nm TAILQ_CONCAT , +.Nm STAILQ_HEAD , +.Nm STAILQ_HEAD_INITIALIZER , +.Nm STAILQ_ENTRY , +.Nm STAILQ_FIRST , +.Nm STAILQ_EMPTY , +.Nm STAILQ_NEXT , +.Nm STAILQ_LAST , +.Nm STAILQ_FOREACH , +.Nm STAILQ_FOREACH_SAFE , +.Nm STAILQ_INIT , +.Nm STAILQ_INSERT_AFTER , +.Nm STAILQ_INSERT_HEAD , +.Nm STAILQ_INSERT_TAIL , +.Nm STAILQ_REMOVE_HEAD , +.Nm STAILQ_REMOVE , +.Nm STAILQ_CONCAT +.Nd implementations of singly-linked lists, lists, simple queues, tail queues, and singly-linked tail queues +.Sh SYNOPSIS +.In sys/queue.h +.Pp +.Fn SLIST_HEAD "HEADNAME" "TYPE" +.Fn SLIST_HEAD_INITIALIZER "head" +.Fn SLIST_ENTRY "TYPE" +.Ft TYPE * +.Fn SLIST_FIRST "SLIST_HEAD *head" +.Ft int +.Fn SLIST_EMPTY "SLIST_HEAD *head" +.Ft TYPE * +.Fn SLIST_NEXT "TYPE *elm" "SLIST_ENTRY NAME" +.Fn SLIST_FOREACH "TYPE *var" "SLIST_HEAD *head" "SLIST_ENTRY NAME" +.Fn SLIST_FOREACH_SAFE "TYPE *var" "SLIST_HEAD *head" "SLIST_ENTRY NAME" "TYPE *tmp" +.Fn SLIST_INIT "SLIST_HEAD *head" +.Fn SLIST_INSERT_HEAD "SLIST_HEAD *head" "TYPE *elm" "SLIST_ENTRY NAME" +.Fn SLIST_INSERT_AFTER "TYPE *listelm" "TYPE *elm" "SLIST_ENTRY NAME" +.Fn SLIST_REMOVE "SLIST_HEAD *head" "TYPE *elm" "TYPE" "SLIST_ENTRY NAME" +.Fn SLIST_REMOVE_HEAD "SLIST_HEAD *head" "SLIST_ENTRY NAME" +.Pp +.Fn LIST_HEAD "HEADNAME" "TYPE" +.Fn LIST_HEAD_INITIALIZER "head" +.Fn LIST_ENTRY "TYPE" +.Ft TYPE * +.Fn LIST_FIRST "LIST_HEAD *head" +.Ft TYPE * +.Fn LIST_NEXT "TYPE *elm" "LIST_ENTRY NAME" +.Ft int +.Fn LIST_EMPTY "LIST_HEAD *head" +.Fn LIST_FOREACH "TYPE *var" "LIST_HEAD *head" "LIST_ENTRY NAME" +.Fn LIST_FOREACH_SAFE "TYPE *var" "LIST_HEAD *head" "LIST_ENTRY NAME" "TYPE *tmp" +.Fn LIST_INIT "LIST_HEAD *head" +.Fn LIST_INSERT_AFTER "TYPE *listelm" "TYPE *elm" "LIST_ENTRY NAME" +.Fn LIST_INSERT_BEFORE "TYPE *listelm" "TYPE *elm" "LIST_ENTRY NAME" +.Fn LIST_INSERT_HEAD "LIST_HEAD *head" "TYPE *elm" "LIST_ENTRY NAME" +.Fn LIST_REMOVE "TYPE *elm" "LIST_ENTRY NAME" +.Fn LIST_REPLACE "TYPE *elm" "TYPE *new" "LIST_ENTRY NAME" +.Fn LIST_MOVE "LIST_HEAD *head1" "LIST_HEAD *head2" "LIST_ENTRY NAME" +.Pp +.Fn SIMPLEQ_HEAD "HEADNAME" "TYPE" +.Fn SIMPLEQ_HEAD_INITIALIZER "head" +.Fn SIMPLEQ_ENTRY "TYPE" +.Ft TYPE * +.Fn SIMPLEQ_FIRST "SIMPLEQ_HEAD *head" +.Ft int +.Fn SIMPLEQ_EMPTY "SIMPLEQ_HEAD *head" +.Ft TYPE * +.Fn SIMPLEQ_NEXT "TYPE *elm" "SIMPLEQ_ENTRY NAME" +.Ft TYPE * +.Fn SIMPLEQ_LAST "SIMPLEQ_HEAD *head" "TYPE *elm" "SIMPLEQ_ENTRY NAME" +.Fn SIMPLEQ_FOREACH "TYPE *var" "SIMPLEQ_HEAD *head" "SIMPLEQ_ENTRY NAME" +.Fn SIMPLEQ_FOREACH_SAFE "TYPE *var" "SIMPLEQ_HEAD *head" "SIMPLEQ_ENTRY NAME" "TYPE *tmp" +.Fn SIMPLEQ_INIT "SIMPLEQ_HEAD *head" +.Fn SIMPLEQ_INSERT_HEAD "SIMPLEQ_HEAD *head" "TYPE *elm" "SIMPLEQ_ENTRY NAME" +.Fn SIMPLEQ_INSERT_TAIL "SIMPLEQ_HEAD *head" "TYPE *elm" "SIMPLEQ_ENTRY NAME" +.Fn SIMPLEQ_INSERT_AFTER "SIMPLEQ_HEAD *head" "TYPE *listelm" "TYPE *elm" "SIMPLEQ_ENTRY NAME" +.Fn SIMPLEQ_REMOVE_HEAD "SIMPLEQ_HEAD *head" "SIMPLEQ_ENTRY NAME" +.Fn SIMPLEQ_REMOVE_AFTER "SIMPLEQ_HEAD *head" "TYPE *elm" "SIMPLEQ_ENTRY NAME" +.Fn SIMPLEQ_REMOVE "SIMPLEQ_HEAD *head" "TYPE *elm" "TYPE" "SIMPLEQ_ENTRY NAME" +.Fn SIMPLEQ_CONCAT "SIMPLEQ_HEAD *head1" "SIMPLEQ_HEAD *head2" +.Pp +.Fn TAILQ_HEAD "HEADNAME" "TYPE" +.Fn TAILQ_HEAD_INITIALIZER "head" +.Fn TAILQ_ENTRY "TYPE" +.Ft TYPE * +.Fn TAILQ_FIRST "TAILQ_HEAD *head" +.Ft TYPE * +.Fn TAILQ_NEXT "TYPE *elm" "TAILQ_ENTRY NAME" +.Ft TYPE * +.Fn TAILQ_LAST "TAILQ_HEAD *head" "HEADNAME" +.Ft TYPE * +.Fn TAILQ_PREV "TYPE *elm" "HEADNAME" "TAILQ_ENTRY NAME" +.Ft int +.Fn TAILQ_EMPTY "TAILQ_HEAD *head" +.Fn TAILQ_FOREACH "TYPE *var" "TAILQ_HEAD *head" "TAILQ_ENTRY NAME" +.Fn TAILQ_FOREACH_SAFE "TYPE *var" "TAILQ_HEAD *head" "TAILQ_ENTRY NAME" "TYPE *tmp" +.Fn TAILQ_FOREACH_REVERSE "TYPE *var" "TAILQ_HEAD *head" "HEADNAME" "TAILQ_ENTRY NAME" +.Fn TAILQ_FOREACH_REVERSE_SAFE "TYPE *var" "TAILQ_HEAD *head" "HEADNAME" "TAILQ_ENTRY NAME" "TYPE *tmp" +.Fn TAILQ_INIT "TAILQ_HEAD *head" +.Fn TAILQ_INSERT_HEAD "TAILQ_HEAD *head" "TYPE *elm" "TAILQ_ENTRY NAME" +.Fn TAILQ_INSERT_TAIL "TAILQ_HEAD *head" "TYPE *elm" "TAILQ_ENTRY NAME" +.Fn TAILQ_INSERT_AFTER "TAILQ_HEAD *head" "TYPE *listelm" "TYPE *elm" "TAILQ_ENTRY NAME" +.Fn TAILQ_INSERT_BEFORE "TYPE *listelm" "TYPE *elm" "TAILQ_ENTRY NAME" +.Fn TAILQ_REMOVE "TAILQ_HEAD *head" "TYPE *elm" "TAILQ_ENTRY NAME" +.Fn TAILQ_REPLACE "TAILQ_HEAD *head" "TYPE *elm" "TYPE *new" "TAILQ_ENTRY NAME" +.Fn TAILQ_CONCAT "TAILQ_HEAD *head1" "TAILQ_HEAD *head2" "TAILQ_ENTRY NAME" +.Pp +.Fn STAILQ_HEAD "HEADNAME" "TYPE" +.Fn STAILQ_HEAD_INITIALIZER "head" +.Fn STAILQ_ENTRY "TYPE" +.Ft TYPE * +.Fn STAILQ_FIRST "STAILQ_HEAD *head" +.Ft int +.Fn STAILQ_EMPTY "STAILQ_HEAD *head" +.Ft TYPE * +.Fn STAILQ_NEXT "TYPE *elm" "STAILQ_ENTRY NAME" +.Ft TYPE * +.Fn STAILQ_LAST "STAILQ_HEAD *head" "TYPE *elm" "STAILQ_ENTRY NAME" +.Fn STAILQ_FOREACH "TYPE *var" "STAILQ_HEAD *head" "STAILQ_ENTRY NAME" +.Fn STAILQ_FOREACH_SAFE "TYPE *var" "STAILQ_HEAD *head" "STAILQ_ENTRY NAME" "TYPE *tmp" +.Fn STAILQ_INIT "STAILQ_HEAD *head" +.Fn STAILQ_INSERT_HEAD "STAILQ_HEAD *head" "TYPE *elm" "STAILQ_ENTRY NAME" +.Fn STAILQ_INSERT_TAIL "STAILQ_HEAD *head" "TYPE *elm" "STAILQ_ENTRY NAME" +.Fn STAILQ_INSERT_AFTER "STAILQ_HEAD *head" "TYPE *listelm" "TYPE *elm" "STAILQ_ENTRY NAME" +.Fn STAILQ_REMOVE_HEAD "STAILQ_HEAD *head" "STAILQ_ENTRY NAME" +.Fn STAILQ_REMOVE "STAILQ_HEAD *head" "TYPE *elm" "TYPE" "STAILQ_ENTRY NAME" +.Fn STAILQ_CONCAT "STAILQ_HEAD *head1" "STAILQ_HEAD *head2" +.Sh DESCRIPTION +These macros define and operate on five types of data structures: +singly-linked lists, simple queues, lists, tail queues, and singly-linked +tail queues. +All five structures support the following functionality: +.Bl -enum -compact -offset indent +.It +Insertion of a new entry at the head of the list. +.It +Insertion of a new entry after any element in the list. +.It +Removal of any entry in the list. +.It +Forward traversal through the list. +.El +.Pp +Singly-linked lists are the simplest of the four data structures and +support only the above functionality. +Singly-linked lists are ideal for applications with large datasets and +few or no removals, +or for implementing a LIFO queue. +.Pp +Simple queues add the following functionality: +.Bl -enum -compact -offset indent +.It +Entries can be added at the end of a list. +.It +They may be concatenated. +.El +However: +.Bl -enum -compact -offset indent +.It +Entries may not be added before any element in the list. +.It +All list insertions and removals must specify the head of the list. +.It +Each head entry requires two pointers rather than one. +.El +.Pp +Simple queues are ideal for applications with large datasets and few or +no removals, or for implementing a FIFO queue. +.Pp +All doubly linked types of data structures (lists and tail queues) +additionally allow: +.Bl -enum -compact -offset indent +.It +Insertion of a new entry before any element in the list. +.It +O(1) removal of any entry in the list. +.El +However: +.Bl -enum -compact -offset indent +.It +Each element requires two pointers rather than one. +.It +Code size and execution time of operations (except for removal) is about +twice that of the singly-linked data-structures. +.El +.Pp +Linked lists are the simplest of the doubly linked data structures and +support only the above functionality over singly-linked lists. +.Pp +Tail queues add the following functionality: +.Bl -enum -compact -offset indent +.It +Entries can be added at the end of a list. +.It +They may be concatenated. +.El +However: +.Bl -enum -compact -offset indent +.It +All list insertions and removals, except insertion before another element, must +specify the head of the list. +.It +Each head entry requires two pointers rather than one. +.It +Code size is about 15% greater and operations run about 20% slower +than lists. +.El +.Pp +Circular queues add the following functionality: +.Bl -enum -compact -offset indent +.It +Entries can be added at the end of a list. +.It +They may be traversed backwards, from tail to head. +.El +However: +.Bl -enum -compact -offset indent +.It +All list insertions and removals must specify the head of the list. +.It +Each head entry requires two pointers rather than one. +.It +The termination condition for traversal is more complex. +.It +Code size is about 40% greater and operations run about 45% slower +than lists. +.El +.Pp +In the macro definitions, +.Fa TYPE +is the name of a user defined structure, +that must contain a field of type +.Li SLIST_ENTRY , +.Li LIST_ENTRY , +.Li SIMPLEQ_ENTRY , +.Li TAILQ_ENTRY , +or +.Li STAILQ_ENTRY , +named +.Fa NAME . +The argument +.Fa HEADNAME +is the name of a user defined structure that must be declared +using the macros +.Li LIST_HEAD , +.Li SIMPLEQ_HEAD , +.Li SLIST_HEAD , +or +.Li TAILQ_HEAD . +See the examples below for further explanation of how these +macros are used. +.Ss Summary of Operations +The following table summarizes the supported macros for each type +of data structure. +.Pp +.TS +box tab(:); +l | c | c | c | c | c +l | c | c | c | c | c +l | c | c | c | c | c +l | c | c | c | c | c +l | c | c | c | c | c +l | c | c | c | c | c. +:SLIST:LIST:SIMPLEQ:TAILQ:STAILQ +_ +_FIRST:+:+:+:+:+ +_EMPTY:+:+:+:+:+ +_NEXT:+:+:+:+:+ +_PREV:-:-:-:+:- +_LAST:-:-:+:+:+ +_FOREACH:+:+:+:+:+ +_FOREACH_SAFE:+:+:+:+:+ +_FOREACH_REVERSE:-:-:-:+:- +_FOREACH_REVERSE_SAFE:-:-:-:+:- +_INSERT_HEAD:+:+:+:+:+ +_INSERT_AFTER:+:+:+:+:+ +_INSERT_BEFORE:-:+:-:+:- +_INSERT_TAIL:-:-:+:+:+ +_REMOVE:+:+:+:+:+ +_REMOVE_HEAD:+:-:+:-:+ +_REMOVE_AFTER:-:-:+:-:+ +_REPLACE:-:+:-:+:- +_CONCAT:-:-:+:+:+ +.TE +.Sh SINGLY-LINKED LISTS +A singly-linked list is headed by a structure defined by the +.Fn SLIST_HEAD +macro. +This structure contains a single pointer to the first element +on the list. +The elements are singly linked for minimum space and pointer manipulation +overhead at the expense of O(n) removal for arbitrary elements. +New elements can be added to the list after an existing element or +at the head of the list. +An +.Fa SLIST_HEAD +structure is declared as follows: +.Bd -literal -offset indent +SLIST_HEAD(HEADNAME, TYPE) head; +.Ed +.Pp +where +.Fa HEADNAME +is the name of the structure to be defined, and +.Fa TYPE +is the type of the elements to be linked into the list. +A pointer to the head of the list can later be declared as: +.Bd -literal -offset indent +struct HEADNAME *headp; +.Ed +.Pp +(The names +.Li head +and +.Li headp +are user selectable.) +.Pp +The macro +.Fn SLIST_HEAD_INITIALIZER +evaluates to an initializer for the list +.Fa head . +.Pp +The macro +.Fn SLIST_ENTRY +declares a structure that connects the elements in +the list. +.Pp +The macro +.Fn SLIST_FIRST +returns the first element in the list or NULL if the list is empty. +.Pp +The macro +.Fn SLIST_EMPTY +evaluates to true if there are no elements in the list. +.Pp +The macro +.Fn SLIST_NEXT +returns the next element in the list. +.Pp +.Fn SLIST_FOREACH +traverses the list referenced by +.Fa head +in the forward direction, assigning each element in +turn to +.Fa var . +.Pp +The SAFE version uses +.Fa tmp +to hold the next element, so +.Fa var +may be freed or removed from the list. +.Pp +The macro +.Fn SLIST_INIT +initializes the list referenced by +.Fa head . +.Pp +The macro +.Fn SLIST_INSERT_HEAD +inserts the new element +.Fa elm +at the head of the list. +.Pp +The macro +.Fn SLIST_INSERT_AFTER +inserts the new element +.Fa elm +after the element +.Fa listelm . +.Pp +The macro +.Fn SLIST_REMOVE +removes the element +.Fa elm +from the list. +.Pp +The macro +.Fn SLIST_REMOVE_HEAD +removes the first element from the head of the list. +For optimum efficiency, +elements being removed from the head of the list should explicitly use +this macro instead of the generic +.Fn SLIST_REMOVE +macro. +.Pp +The macro +.Fn SLIST_REMOVE_AFTER +removes the element after the one specified. +For optimum efficiency, +elements being removed after a specified one should explicitly use +this macro instead of the generic +.Fn SLIST_REMOVE +.Sh SINGLY-LINKED LIST EXAMPLE +.Bd -literal +SLIST_HEAD(slisthead, entry) head = + SLIST_HEAD_INITIALIZER(head); +struct slisthead *headp; /* Singly-linked List head. */ +struct entry { + ... + SLIST_ENTRY(entry) entries; /* Singly-linked List. */ + ... +} *n1, *n2, *n3, *np; + +SLIST_INIT(&head); /* Initialize the list. */ + +n1 = malloc(sizeof(struct entry)); /* Insert at the head. */ +SLIST_INSERT_HEAD(&head, n1, entries); + +n2 = malloc(sizeof(struct entry)); /* Insert after. */ +SLIST_INSERT_AFTER(n1, n2, entries); + +SLIST_REMOVE(&head, n2, entry, entries);/* Deletion. */ +free(n2); + +n3 = SLIST_FIRST(&head); +SLIST_REMOVE_HEAD(&head, entries); /* Deletion from the head. */ +free(n3); + +SLIST_FOREACH(np, &head, entries) /* Forward traversal. */ + np-> ... + +while (!SLIST_EMPTY(&head)) { /* List Deletion. */ + n1 = SLIST_FIRST(&head); + SLIST_REMOVE_HEAD(&head, entries); + free(n1); +} +.Ed +.Sh LISTS +A list is headed by a structure defined by the +.Fn LIST_HEAD +macro. +This structure contains a single pointer to the first element +on the list. +The elements are doubly linked so that an arbitrary element can be +removed without traversing the list. +New elements can be added to the list after an existing element, +before an existing element, or at the head of the list. +A +.Fa LIST_HEAD +structure is declared as follows: +.Bd -literal -offset indent +LIST_HEAD(HEADNAME, TYPE) head; +.Ed +.Pp +where +.Fa HEADNAME +is the name of the structure to be defined, and +.Fa TYPE +is the type of the elements to be linked into the list. +A pointer to the head of the list can later be declared as: +.Bd -literal -offset indent +struct HEADNAME *headp; +.Ed +.Pp +(The names +.Li head +and +.Li headp +are user selectable.) +.Pp +The macro +.Fn LIST_ENTRY +declares a structure that connects the elements in +the list. +.Pp +The macro +.Fn LIST_HEAD_INITIALIZER +provides a value which can be used to initialize a list head at +compile time, and is used at the point that the list head +variable is declared, like: +.Bd -literal -offset indent +struct HEADNAME head = LIST_HEAD_INITIALIZER(head); +.Ed +.Pp +The macro +.Fn LIST_FIRST +returns the first element of the list +.Fa head . +.Pp +The macro +.Fn LIST_EMPTY +returns true if the list +.Fa head +has no elements. +.Pp +The macro +.Fn LIST_NEXT +returns the element after the element +.Fa elm . +.Pp +The macro +.Fn LIST_FOREACH +traverses the list referenced by +.Fa head +in the forward direction, assigning each element in turn to +.Fa var . +.Pp +The SAFE version uses +.Fa tmp +to hold the next element, so +.Fa var +may be freed or removed from the list. +.Pp +The macro +.Fn LIST_INIT +initializes the list referenced by +.Fa head . +.Pp +The macro +.Fn LIST_INSERT_AFTER +inserts the new element +.Fa elm +after the element +.Fa listelm . +.Pp +The macro +.Fn LIST_INSERT_BEFORE +inserts the new element +.Fa elm +before the element +.Fa listelm . +.Pp +The macro +.Fn LIST_INSERT_HEAD +inserts the new element +.Fa elm +at the head of the list. +.Pp +The macro +.Fn LIST_REMOVE +removes the element +.Fa elm +from the list. +.Pp +The macro +.Fn LIST_REPLACE +replaces the element +.Fa elm +with +.Fa new +in the list. +.Pp +The macro +.Fn LIST_MOVE +moves the list headed by +.Fa head1 +onto the list headed by +.Fa head2 , +always making the former empty. +.Sh LIST EXAMPLE +.Bd -literal +LIST_HEAD(listhead, entry) head; +struct listhead *headp; /* List head. */ +struct entry { + ... + LIST_ENTRY(entry) entries; /* List. */ + ... +} *n1, *n2, *np; + +LIST_INIT(&head); /* Initialize the list. */ + +n1 = malloc(sizeof(struct entry)); /* Insert at the head. */ +LIST_INSERT_HEAD(&head, n1, entries); + +n2 = malloc(sizeof(struct entry)); /* Insert after. */ +LIST_INSERT_AFTER(n1, n2, entries); + +n2 = malloc(sizeof(struct entry)); /* Insert before. */ +LIST_INSERT_BEFORE(n1, n2, entries); + +LIST_FOREACH(np, &head, entries) /* Forward traversal. */ + np-> ... + +while (LIST_FIRST(&head) != NULL) /* Delete. */ + LIST_REMOVE(LIST_FIRST(&head), entries); +if (LIST_EMPTY(&head)) /* Test for emptiness. */ + printf("nothing to do\\n"); +.Ed +.Sh SIMPLE QUEUES +A simple queue is headed by a structure defined by the +.Fn SIMPLEQ_HEAD +macro. +This structure contains a pair of pointers, +one to the first element in the simple queue and the other to +the last element in the simple queue. +The elements are singly linked for minimum space and pointer manipulation +overhead at the expense of O(n) removal for arbitrary elements. +New elements can be added to the queue after an existing element, +at the head of the queue, or at the end of the queue. +A +.Fa SIMPLEQ_HEAD +structure is declared as follows: +.Bd -literal -offset indent +SIMPLEQ_HEAD(HEADNAME, TYPE) head; +.Ed +.Pp +where +.Li HEADNAME +is the name of the structure to be defined, and +.Li TYPE +is the type of the elements to be linked into the simple queue. +A pointer to the head of the simple queue can later be declared as: +.Bd -literal -offset indent +struct HEADNAME *headp; +.Ed +.Pp +(The names +.Li head +and +.Li headp +are user selectable.) +.Pp +The macro +.Fn SIMPLEQ_ENTRY +declares a structure that connects the elements in +the simple queue. +.Pp +The macro +.Fn SIMPLEQ_HEAD_INITIALIZER +provides a value which can be used to initialize a simple queue head at +compile time, and is used at the point that the simple queue head +variable is declared, like: +.Bd -literal -offset indent +struct HEADNAME head = SIMPLEQ_HEAD_INITIALIZER(head); +.Ed +.Pp +The macro +.Fn SIMPLEQ_FIRST +returns the first element of the simple queue +.Fa head . +.Pp +The macro +.Fn SIMPLEQ_EMPTY +returns true if the simple queue +.Fa head +has no elements. +.Pp +The macro +.Fn SIMPLEQ_NEXT +returns the element after the element +.Fa elm . +.Pp +The macro +.Fn SIMPLEQ_LAST +returns the last item on the simple queue. +If the simple queue is empty the return value is +.Dv NULL . +.Pp +The macro +.Fn SIMPLEQ_FOREACH +traverses the simple queue referenced by +.Fa head +in the forward direction, assigning each element +in turn to +.Fa var . +.Pp +The SAFE version uses +.Fa tmp +to hold the next element, so +.Fa var +may be freed or removed from the list. +.Pp +The macro +.Fn SIMPLEQ_INIT +initializes the simple queue referenced by +.Fa head . +.Pp +The macro +.Fn SIMPLEQ_INSERT_HEAD +inserts the new element +.Fa elm +at the head of the simple queue. +.Pp +The macro +.Fn SIMPLEQ_INSERT_TAIL +inserts the new element +.Fa elm +at the end of the simple queue. +.Pp +The macro +.Fn SIMPLEQ_INSERT_AFTER +inserts the new element +.Fa elm +after the element +.Fa listelm . +.Pp +The macro +.Fn SIMPLEQ_REMOVE_HEAD +removes the first element from the head of the simple queue. +For optimum efficiency, +elements being removed from the head of the queue should explicitly use +this macro instead of the generic +.Fn SIMPLEQ_REMOVE +macro. +.Pp +The macro +.Fn SIMPLEQ_REMOVE_AFTER +removes the element after the one specified from the simple queue. +For optimum efficiency, +elements being removed after specified elements should explicitly use +this macro instead of the generic +.Fn SIMPLEQ_REMOVE +macro. +.Pp +The macro +.Fn SIMPLEQ_REMOVE +removes +.Fa elm +from the simple queue. +.Pp +The macro +.Fn SIMPLEQ_CONCAT +concatenates the simple queue headed by +.Fa head2 +onto the end of the one headed by +.Fa head1 , +removing all entries from the former. +.Sh SIMPLE QUEUE EXAMPLE +.Bd -literal +SIMPLEQ_HEAD(simplehead, entry) head; +struct simplehead *headp; /* Simple queue head. */ +struct entry { + ... + SIMPLEQ_ENTRY(entry) entries; /* Simple queue. */ + ... +} *n1, *n2, *np; + +SIMPLEQ_INIT(&head); /* Initialize the queue. */ + +n1 = malloc(sizeof(struct entry)); /* Insert at the head. */ +SIMPLEQ_INSERT_HEAD(&head, n1, entries); + +n1 = malloc(sizeof(struct entry)); /* Insert at the tail. */ +SIMPLEQ_INSERT_TAIL(&head, n1, entries); + +n2 = malloc(sizeof(struct entry)); /* Insert after. */ +SIMPLEQ_INSERT_AFTER(&head, n1, n2, entries); + +SIMPLEQ_FOREACH(np, &head, entries) /* Forward traversal. */ + np-> ... + +while (SIMPLEQ_FIRST(&head) != NULL) /* Delete. */ + SIMPLEQ_REMOVE_HEAD(&head, entries); +if (SIMPLEQ_EMPTY(&head)) /* Test for emptiness. */ + printf("nothing to do\\n"); +.Ed +.Sh TAIL QUEUES +A tail queue is headed by a structure defined by the +.Fn TAILQ_HEAD +macro. +This structure contains a pair of pointers, +one to the first element in the tail queue and the other to +the last element in the tail queue. +The elements are doubly linked so that an arbitrary element can be +removed without traversing the tail queue. +New elements can be added to the queue after an existing element, +before an existing element, at the head of the queue, or at the end +the queue. +A +.Fa TAILQ_HEAD +structure is declared as follows: +.Bd -literal -offset indent +TAILQ_HEAD(HEADNAME, TYPE) head; +.Ed +.Pp +where +.Li HEADNAME +is the name of the structure to be defined, and +.Li TYPE +is the type of the elements to be linked into the tail queue. +A pointer to the head of the tail queue can later be declared as: +.Bd -literal -offset indent +struct HEADNAME *headp; +.Ed +.Pp +(The names +.Li head +and +.Li headp +are user selectable.) +.Pp +The macro +.Fn TAILQ_ENTRY +declares a structure that connects the elements in +the tail queue. +.Pp +The macro +.Fn TAILQ_HEAD_INITIALIZER +provides a value which can be used to initialize a tail queue head at +compile time, and is used at the point that the tail queue head +variable is declared, like: +.Bd -literal -offset indent +struct HEADNAME head = TAILQ_HEAD_INITIALIZER(head); +.Ed +.Pp +The macro +.Fn TAILQ_FIRST +returns the first element of the tail queue +.Fa head . +.Pp +The macro +.Fn TAILQ_NEXT +returns the element after the element +.Fa elm . +.Pp +The macro +.Fn TAILQ_LAST +returns the last item on the tail queue. +If the tail queue is empty the return value is +.Dv NULL . +.Pp +The macro +.Fn TAILQ_PREV +returns the previous item on the tail queue, from the one specified. +If the tail queue is empty the return value is +.Dv NULL . +.Pp +The macro +.Fn TAILQ_EMPTY +returns true if the tail queue +.Fa head +has no elements. +.Pp +The macros +.Fn TAILQ_FOREACH , +.Fn TAILQ_FOREACH_REVERSE , +.Fn TAILQ_FOREACH_SAFE , +and +.Fn TAILQ_FOREACH_REVERSE_SAFE +traverse the tail queue referenced by +.Fa head +in the forward or reverse direction, assigning each element in turn to +.Fa var . +.Pp +The SAFE versions use +.Fa tmp +to hold the next element, so +.Fa var +may be freed or removed from the list. +.Pp +The macro +.Fn TAILQ_INIT +initializes the tail queue referenced by +.Fa head . +.Pp +The macro +.Fn TAILQ_INSERT_HEAD +inserts the new element +.Fa elm +at the head of the tail queue. +.Pp +The macro +.Fn TAILQ_INSERT_TAIL +inserts the new element +.Fa elm +at the end of the tail queue. +.Pp +The macro +.Fn TAILQ_INSERT_AFTER +inserts the new element +.Fa elm +after the element +.Fa listelm . +.Pp +The macro +.Fn TAILQ_INSERT_BEFORE +inserts the new element +.Fa elm +before the element +.Fa listelm . +.Pp +The macro +.Fn TAILQ_REMOVE +removes the element +.Fa elm +from the tail queue. +.Pp +The macro +.Fn TAILQ_REPLACE +replaces the element +.Fa elm +with the +.Fa new +one specified in the tail queue. +.Pp +The macro +.Fn TAILQ_CONCAT +concatenates the tail queue headed by +.Fa head2 +onto the end of the one headed by +.Fa head1 , +removing all entries from the former. +.Sh TAIL QUEUE EXAMPLE +.Bd -literal +TAILQ_HEAD(tailhead, entry) head; +struct tailhead *headp; /* Tail queue head. */ +struct entry { + ... + TAILQ_ENTRY(entry) entries; /* Tail queue. */ + ... +} *n1, *n2, *np; + +TAILQ_INIT(&head); /* Initialize the queue. */ + +n1 = malloc(sizeof(struct entry)); /* Insert at the head. */ +TAILQ_INSERT_HEAD(&head, n1, entries); + +n1 = malloc(sizeof(struct entry)); /* Insert at the tail. */ +TAILQ_INSERT_TAIL(&head, n1, entries); + +n2 = malloc(sizeof(struct entry)); /* Insert after. */ +TAILQ_INSERT_AFTER(&head, n1, n2, entries); + +n2 = malloc(sizeof(struct entry)); /* Insert before. */ +TAILQ_INSERT_BEFORE(n1, n2, entries); + +TAILQ_FOREACH(np, &head, entries) /* Forward traversal. */ + np-> ... + /* Reverse traversal. */ +TAILQ_FOREACH_REVERSE(np, &head, tailhead, entries) + np-> ... + +while (TAILQ_FIRST(&head) != NULL) /* Delete. */ + TAILQ_REMOVE(&head, TAILQ_FIRST(&head), entries); +if (TAILQ_EMPTY(&head)) /* Test for emptiness. */ + printf("nothing to do\\n"); +.Ed +.Sh SINGLY LINKED TAIL QUEUES +The macros prefixed with +.Do Nm STAILQ_ Dc ( +.Fn STAILQ_HEAD , +.Fn STAILQ_HEAD_INITIALIZER , +.Fn STAILQ_ENTRY , +.Fn STAILQ_FOREACH , +.Fn STAILQ_FOREACH_SAFE , +.Fn STAILQ_FIRST , +.Fn STAILQ_EMPTY , +.Fn STAILQ_NEXT , +.Fn STAILQ_LAST , +.Fn STAILQ_INIT , +.Fn STAILQ_INSERT_HEAD , +.Fn STAILQ_INSERT_TAIL , +.Fn STAILQ_INSERT_AFTER , +.Fn STAILQ_REMOVE_HEAD , +.Fn STAILQ_REMOVE , +and +.Fn STAILQ_CONCAT ) +are functionally identical to these simple queue functions, +and are provided for compatibility with +.Fx . +.Sh NOTES +Some of these macros or functions perform no error checking, +and invalid usage leads to undefined behaviour. +In the case of macros or functions that expect their arguments +to be elements that are present in the list or queue, passing an element +that is not present is invalid. +.Sh HISTORY +The +.Nm queue +functions first appeared in +.Bx 4.4 . +The +.Nm SIMPLEQ +functions first appeared in +.Nx 1.2 . +The +.Nm SLIST +and +.Nm STAILQ +functions first appeared in +.Fx 2.1.5 . +.Pp +The +.Nm CIRCLEQ +functions first appeared in +.Bx 4.4 +and were deprecated in +.Nx 7 +and removed in +.Nx 10 +due to the pointer aliasing violations. diff --git a/static/netbsd/man3/rbtree.3 b/static/netbsd/man3/rbtree.3 new file mode 100644 index 00000000..411d4356 --- /dev/null +++ b/static/netbsd/man3/rbtree.3 @@ -0,0 +1,319 @@ +.\" $NetBSD: rbtree.3,v 1.14 2025/10/22 12:34:00 roy Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Matt Thomas, Niels Provos, and David Young. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 22, 2025 +.Dt RBTREE 3 +.Os +.Sh NAME +.Nm rbtree +.Nd red-black tree +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.In sys/rbtree.h +.Ft void +.Fn rb_tree_init "rb_tree_t *rbt" "const rb_tree_ops_t *ops" +.Ft void * +.Fn rb_tree_insert_node "rb_tree_t *rbt" "void *rb" +.Ft void +.Fn rb_tree_remove_node "rb_tree_t *rbt" "void *rb" +.Ft void * +.Fn rb_tree_find_node "rb_tree_t *rbt" "const void *key" +.Ft void * +.Fn rb_tree_find_node_geq "rb_tree_t *rbt" "const void *key" +.Ft void * +.Fn rb_tree_find_node_leq "rb_tree_t *rbt" "const void *key" +.Ft void * +.Fn rb_tree_iterate "rb_tree_t *rbt" "void *rb" "unsigned int direction" +.Ft void * +.Fn RB_TREE_MIN "rb_tree_t *rbt" +.Ft void * +.Fn RB_TREE_MAX "rb_tree_t *rbt" +.Fn RB_TREE_NEXT "rb_tree_t *rbt" "void *rb" +.Fn RB_TREE_PREV "rb_tree_t *rbt" "void *rb" +.Fn RB_TREE_FOREACH "void *rb" "rb_tree_t *rbt" +.Fn RB_TREE_FOREACH_SAFE "void *rb" "rb_tree_t *rbt" "void *tmp" +.Fn RB_TREE_FOREACH_REVERSE "void *rb" "rb_tree_t *rbt" +.Fn RB_TREE_FOREACH_REVERSE_SAFE "void *rb" "rb_tree_t *rbt" "void *tmp" +.Sh DESCRIPTION +.Nm +provides red-black trees. +A red-black tree is a binary search tree with the node color as an +extra attribute. +It fulfills a set of conditions: +.Bl -enum -offset indent +.It +Every search path from the root to a leaf consists of the same number of +black nodes. +.It +Each red node (except for the root) has a black parent. +.It +Each leaf node is black. +.El +.Pp +Every operation on a red-black tree is bounded as O(lg n). +The maximum height of a red-black tree is 2lg (n+1). +.Sh TYPES +.Bl -tag -width compact +.It Vt rb_tree_t +A red-black tree. +.It Vt typedef signed int \ +(* rbto_compare_nodes_fn)(void *context, const void *node1, const void *node2); +The node-comparison function. +Defines an ordering on nodes. +Returns a negative value if the first node +.Ar node1 +precedes the second node +.Ar node2 . +Returns a positive value if the first node +.Ar node1 +follows the second node +.Ar node2 . +Returns 0 if the first node +.Ar node1 +and the second node +.Ar node2 +are identical according to the ordering. +.It Vt typedef signed int \ +(* rbto_compare_key_fn)(void *context, const void *node, const void *key); +The node-key comparison function. +Defines the order of nodes and keys. +Returns a negative value if the node +.Ar node +precedes the key +.Ar key . +Returns a positive value if the node +.Ar node +follows the key +.Ar key . +Returns 0 if the node +.Ar node +is identical to the key +.Ar key +according to the ordering. +.It Vt rb_tree_ops_t +Defines the function for comparing two nodes in the same tree, +the function for comparing a node in the tree with a key, +the offset of member +.Vt rb_node_t +within the node type, +and the opaque context pointer passed to the comparison functions. +Members of +.Vt rb_tree_ops_t +are +.Bd -literal + rbto_compare_nodes_fn rbto_compare_nodes; + rbto_compare_key_fn rbto_compare_key; + size_t rbto_node_offset; + void *rbto_context; +.Ed +.It Vt rb_node_t +A node in a red-black tree has this structure as a member. +The offset of the +.Vt rb_node_t +member in the caller's node structure should be provided as +.Va rbto_node_offset . +(None of the functions in the +.Nm +interface are meant to take pointers directly to the +.Vt rb_node_t +member.) +.El +.Sh FUNCTIONS +.Bl -tag -width compact +.It Fn rb_tree_init "rbt" "ops" +Initialize the red-black tree +.Fa rbt . +Let the comparison functions given by +.Fa ops +define the order of nodes in the tree for +the purposes of insertion, search, and iteration. +.Fn rb_tree_init +always succeeds. +.It Fn rb_tree_insert_node "rbt" "rb" +Insert the node +.Fa rb +into the tree +.Fa rbt . +Return inserted node on success, +already existing node on failure. +.It Fn rb_tree_remove_node "rbt" "rb" +Remove the node +.Fa rb +from the tree +.Fa rbt . +.It Fn rb_tree_find_node "rbt" "key" +Search the tree +.Fa rbt +for a node exactly matching +.Fa key . +If no such node is in the tree, return +.Dv NULL . +Otherwise, return the matching node. +.It Fn rb_tree_find_node_geq "rbt" "key" +Search the tree +.Fa rbt +for a node that exactly matches +.Fa key +and return it. +If no such node is present, return the first node following +.Fa key +or, if no such node is in the tree, return +.Dv NULL . +.It Fn rb_tree_find_node_leq "rbt" "key" +Search the tree +.Fa rbt +for a node that exactly matches +.Fa key +and return it. +If no such node is present, return the first node preceding +.Fa key +or, if no such node is in the tree, return +.Dv NULL . +.It Fn rb_tree_iterate "rbt" "rb" "direction" +If +.Fa direction +is +.Dv RB_DIR_LEFT , +return the node in the tree +.Fa rbt +immediately preceding the node +.Fa rb +or, if +.Fa rb +is +.Dv NULL , +return the first node in +.Fa rbt +or, if the tree is empty, return +.Dv NULL . +.Pp +If +.Fa direction +is +.Dv RB_DIR_RIGHT , +return the node in the tree +.Fa rbt +immediately following the node +.Fa rb +or, if +.Fa rb +is +.Dv NULL , +return the last node in +.Fa rbt +or, if the tree is empty, return +.Dv NULL . +.It Fn RB_TREE_MIN "rbt" +Return the first node in +.Fa rbt , +i.e. the node with the least key, or +.Dv NULL +if +.Fa rbt +is empty. +.It Fn RB_TREE_MAX "rbt" +Return the last node in +.Fa rbt , +i.e. the node with the greatest key, or +.Dv NULL +if +.Fa rbt +is empty. +.It Fn RB_TREE_NEXT "rbt" "rb" +Return the next node in +.Fa rbt , +or +.Dv NULL +if there is none. +.It Fn RB_TREE_PREV "rbt" "rb" +Return the previous node in +.Fa rbt , +or +.Dv NULL +if there is none. +.It Fn RB_TREE_FOREACH "rb" "rbt" +.Nm RB_TREE_FOREACH +is a macro to be used in the place of a +.Dv for +header preceding a statement to traverse the nodes in +.Fa rbt +from least to greatest, assigning +.Fa rb +to each node in turn and executing the statement. +.It Fn RB_TREE_FOREACH_SAFE "rb" "rbt" "tmp" +Allows both the removal of +.Fa rb +as well as freeing it from within the loop safely without interfering +with the traversal. +.It Fn RB_TREE_FOREACH_REVERSE "rb" "rbt" +.Nm RB_TREE_FOREACH_REVERSE +is a macro to be used in the place of a +.Dv for +header preceding a statement to traverse the nodes in +.Fa rbt +from greatest to least, assigning +.Fa rb +to each node in turn and executing the statement. +.It Fn RB_TREE_FOREACH_REVERSE_SAFE "rb" "rbt" "tmp" +Allows both the removal of +.Fa rb +as well as freeing it from within the loop safely without interfering +with the traversal. +.El +.Sh CODE REFERENCES +The +.Nm +interface is implemented in +.Pa common/lib/libc/gen/rbtree.c . +.\" .Sh EXAMPLES +.\" +.\" XXX: Should contain some examples. +.\" +.Sh SEE ALSO +.Xr queue 3 , +.Xr tree 3 +.Sh HISTORY +The +.Nm +interface first appeared in +.Nx 6.0 . +.Sh AUTHORS +.An Matt Thomas Aq Mt matt@NetBSD.org +wrote +.Nm . +.Pp +.An Niels Provos Aq Mt provos@citi.umich.edu +wrote the +.Xr tree 3 +manual page. +Portions of this page derive from that page. +.\" .Sh CAVEATS +.\" .Sh BUGS +.\" .Sh SECURITY CONSIDERATIONS diff --git a/static/netbsd/man3/sigevent.3 b/static/netbsd/man3/sigevent.3 new file mode 100644 index 00000000..bc6265d1 --- /dev/null +++ b/static/netbsd/man3/sigevent.3 @@ -0,0 +1,180 @@ +.\" $NetBSD: sigevent.3,v 1.8 2010/06/24 04:21:58 jruoho Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 24, 2010 +.Dt SIGEVENT 3 +.Os +.Sh NAME +.Nm sigevent +.Nd signal event structure +.Sh SYNOPSIS +.In sys/signal.h +.Sh DESCRIPTION +The +.St -p1003.1-2004 +standard extends traditional +.Tn UNIX +signal semantics by providing facilities +for realtime signal generation and delivery. +.Pp +.\" +.\" XXX: Remove once these are fixed. +.\" +.Bf -symbolic +Please note that this manual describes an interface that +is not yet fully functional in +.Nx : +neither realtime signals nor SIGEV_THREAD +are currently supported. +.Ef +.Pp +Realtime functions that can generate realtime signals include: +.Bl -enum -offset 3n +.It +Completion of asynchronous +.Tn I/O ; +see +.Xr aio 3 . +.It +Expiration of per-process timers; see +.Xr timer_create 2 . +.It +Arrival of a message to an empty message queue; see +.Xr mq_notify 3 . +.El +.Pp +The +.In sys/signal.h +header, included by +.In signal.h , +defines a +.Va sigevent +structure, which is the cornerstone in +asynchronous delivery of realtime signals. +This structure is defined as: +.Bd -literal -offset indent +struct sigevent { + int sigev_notify; + int sigev_signo; + union sigval sigev_value; + void (*sigev_notify_function)(union sigval); + void *sigev_notify_attributes; +}; +.Ed +.Pp +The included union is further defined in +.In siginfo.h +as: +.Bd -literal -offset indent +typedef union sigval { + int sival_int; + void *sival_ptr; +} sigval_t; +.Ed +.Pp +The +.Va sigev_notify +integer defines the action taken when +a notification such as timer expiration occurs. +The possiblue values are: +.Bl -tag -width "SIGEV_THREAD " -offset 2n +.It Dv SIGEV_NONE +This constant specifies a +.Dq null +handler: when a notification arrives, nothing happens. +.It Dv SIGEV_SIGNAL +The +.Dv SIGEV_SIGNAL +constant specifies that notifications are delivered by signals. +When a notification arrives, the kernel sends the signal specified in +.Va sigev_signo . +.Pp +In the signal handler the +.Sq si_value +of +.Va siginfo_t +is set to the value specified by the +.Va sigev_value . +In another words, the +.Va sigev_value +member is an application-defined value to be passed to +a particular signal handler at the time of signal delivery. +Depending whether the specified value is an integer or a pointer, the +delivered value can be either +.Va sigval_intr +or +.Va sigval_ptr . +.It Dv SIGEV_THREAD +This constant specifies a thread-driven notification mechanism. +When a notification occurs, the kernel creates a new thread that starts +executing the function specified in the function pointer +.Va sigev_notify_function . +The single argument passed to the function is specified in +.Va sigev_value . +.Pp +If +.Va sigev_notify_attributes +is not +.Dv NULL , +the provided attribute specifies the behavior of the thread; see +.Xr pthread_attr 3 . +(Note that although a pointer to void is specified for +.Va sigev_notify_attributes , +the type is +.Va pthread_attr_t +in practice.) +.Pp +The threads are created as detached, +or in an unspecified way if +.Xr pthread_attr_setdetachstate 3 +is used with +.Va sigev_notify_attributes +to set +.Dv PTHREAD_CREATE_JOINABLE . +It is not valid to call +.Xr pthread_join 3 +in either case. +Hence, it is impossible to determine the lifetime of the created thread. +This in turn means that it is neither possible to recover the memory nor +the address of the memory possibly dedicated as thread stack via +.Fn pthread_attr_setstack +or +.Fn pthread_attr_setstackaddr . +.El +.\" +.\" .Sh EXAMPLES +.\" +.\" XXX: Add one. +.\" +.Sh SEE ALSO +.Xr siginfo 2 , +.Xr timer_create 2 , +.Xr aio 3 , +.Xr mq 3 +.Sh HISTORY +The +.Va sigevent +structure first appeared in +.Nx 1.6 . diff --git a/static/netbsd/man3/stdarg.3 b/static/netbsd/man3/stdarg.3 new file mode 100644 index 00000000..d722d11b --- /dev/null +++ b/static/netbsd/man3/stdarg.3 @@ -0,0 +1,269 @@ +.\" $NetBSD: stdarg.3,v 1.21 2015/06/15 02:06:18 dholland Exp $ +.\" +.\" Copyright (c) 1990, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" This code is derived from software contributed to Berkeley by +.\" the American National Standards Committee X3, on Information +.\" Processing Systems. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)stdarg.3 8.1 (Berkeley) 6/5/93 +.\" +.Dd June 14, 2015 +.Dt STDARG 3 +.Os +.Sh NAME +.Nm stdarg , +.Nm va_arg , +.Nm va_copy , +.Nm va_end , +.Nm va_start +.Nd variable argument lists +.Sh SYNOPSIS +.In stdarg.h +.Ft void +.Fn va_start "va_list ap" last +.Ft type +.Fn va_arg "va_list ap" type +.Ft void +.Fn va_copy "va_list dest" "va_list src" +.Ft void +.Fn va_end "va_list ap" +.Sh DESCRIPTION +A function may be called with a varying number of arguments of varying +types. +The include file +.In stdarg.h +declares a type +.Pq Em va_list +and defines three macros for stepping +through a list of arguments whose number and types are not known to +the called function. +.Pp +The called function must declare an object of type +.Em va_list +which is used by the macros +.Fn va_start , +.Fn va_arg , +.Fn va_end , +and, optionally, +.Fn va_copy . +.Pp +The +.Fn va_start +macro initializes +.Fa ap +for subsequent use by +.Fn va_arg , +.Fn va_copy +and +.Fn va_end , +and must be called first. +.Pp +The parameter +.Fa last +is the name of the last parameter before the variable argument list, +i.e. the last parameter of which the calling function knows the type. +.Pp +Because the address of this parameter is used in the +.Fn va_start +macro, it should not be declared as a register variable, or as a +function or an array type. +.Pp +The +.Fn va_start +macro returns no value. +.Pp +The +.Fn va_arg +macro expands to an expression that has the type and value of the next +argument in the call. +The parameter +.Fa ap +is the +.Em va_list Fa ap +initialized by +.Fn va_start . +Each call to +.Fn va_arg +modifies +.Fa ap +so that the next call returns the next argument. +The parameter +.Fa type +is a type name specified so that the type of a pointer to an +object that has the specified type can be obtained simply by +adding a * +to +.Fa type . +.Pp +If there is no next argument, or if +.Fa type +is not compatible with the type of the actual next argument +(as promoted according to the default argument promotions), +random errors will occur. +.Pp +If the type in question is one that gets promoted, the promoted type +should be used as the argument to +.Fn va_arg . +The following describes which types are promoted (and to what): +.Bl -dash -compact +.It +.Va short +is promoted to +.Va int +.It +.Va float +is promoted to +.Va double +.It +.Va char +is promoted to +.Va int +.El +.Pp +The first use of the +.Fn va_arg +macro after that of the +.Fn va_start +macro returns the argument after +.Fa last . +Successive invocations return the values of the remaining +arguments. +.Pp +The +.Fn va_copy +macro makes +.Fa dest +a copy of +.Fa src +as if the +.Fn va_start +macro had been applied to it followed by the same sequence of uses of the +.Fn va_arg +macro as had previously been used to reach the present state of +.Fa src . +.Pp +The +.Fn va_copy +macro returns no value. +.Pp +The +.Fn va_end +macro handles a normal return from the function whose variable argument +list was initialized by +.Fn va_start +or +.Fn va_copy . +.Pp +The +.Fn va_end +macro returns no value. +.Sh EXAMPLES +The function +.Fn foo +takes a string of format characters and prints out the argument +associated with each format character based on the type. +.Bd -literal -offset indent +void +foo(char *fmt, ...) +{ + va_list ap; + int d, c; + char *s; + double f; + + va_start(ap, fmt); + while (*fmt) + switch (*fmt++) { + case 's': /* string */ + s = va_arg(ap, char *); + printf("string %s\en", s); + break; + case 'd': /* int */ + d = va_arg(ap, int); + printf("int %d\en", d); + break; + case 'c': /* char */ + c = va_arg(ap, int); /* promoted */ + printf("char %c\en", c); + break; + case 'f': /* float */ + f = va_arg(ap, double); /* promoted */ + printf("float %f\en", f); + } + va_end(ap); +} +.Ed +.Sh COMPATIBILITY +These macros are +.Em not +compatible with the historic +.In varargs.h +macros they replaced. +Any remaining code using the pre-C89 +.In varargs.h +interface should be updated. +.Sh STANDARDS +The +.Fn va_start , +.Fn va_arg , +.Fn va_copy , +and +.Fn va_end +macros conform to +.St -isoC-99 . +.Sh HISTORY +The +.Fn va_start , +.Fn va_arg +and +.Fn va_end +macros were introduced in +.St -ansiC . +The +.Fn va_copy +macro was introduced in +.St -isoC-99 . +.Sh BUGS +Unlike the +.Em varargs +macros, the +.Nm stdarg +macros do not permit programmers to +code a function with no fixed arguments. +This problem generates work mainly when converting +.Em varargs +code to +.Nm stdarg +code, +but it also creates difficulties for variadic functions that +wish to pass all of their arguments on to a function +that takes a +.Em va_list +argument, such as +.Xr vfprintf 3 . diff --git a/static/netbsd/man3/stdbool.3 b/static/netbsd/man3/stdbool.3 new file mode 100644 index 00000000..99f7160c --- /dev/null +++ b/static/netbsd/man3/stdbool.3 @@ -0,0 +1,78 @@ +.\" $NetBSD: stdbool.3,v 1.2 2010/05/14 02:45:39 joerg Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 21, 2010 +.Dt STDBOOL 3 +.Os +.Sh NAME +.Nm stdbool +.Nd standard boolean types +.Sh SYNOPSIS +.In stdbool.h +.Sh DESCRIPTION +The +.In stdbool.h +header defines four macros: +.Bl -enum -offset 4n +.It +.Vt bool , +which expands to +.Vt _Bool ; +.It +.Vt true , +which expands to the integer constant 1; +.It +.Vt false , +which expands to the integer constant 0; and +.It +.Vt __bool_true_false_are_defined , +which expands to the constant 1. +.El +.Pp +The ability to undefine and redefine the macros +.Vt bool , +.Vt true , +and +.Vt false +is an obsolescent feature that may +be withdrawn in a future version of a standard. +.Sh SEE ALSO +.Xr stdint 3 +.Sh STANDARDS +The +.In stdbool.h +header conforms to +.St -isoC-99 +and +.St -p1003.1-2001 . +.Sh HISTORY +The +.In stdbool.h +header was first introduced in +.Nx 1.6 . diff --git a/static/netbsd/man3/stddef.3 b/static/netbsd/man3/stddef.3 new file mode 100644 index 00000000..3c913b50 --- /dev/null +++ b/static/netbsd/man3/stddef.3 @@ -0,0 +1,93 @@ +.\" $NetBSD: stddef.3,v 1.8 2011/04/10 10:02:34 jruoho Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 10, 2011 +.Dt STDDEF 3 +.Os +.Sh NAME +.Nm stddef +.Nd standard type definitions +.Sh SYNOPSIS +.In stddef.h +.Sh DESCRIPTION +The +.In stddef.h +header defines the following types and macros: +.Bl -enum -offset 4n +.It +.Vt ptrdiff_t , +a signed integer type of the result of subtracting two pointers; +.It +.Vt size_t , +an unsigned integer type of the result of the +.Fn sizeof +operator; +.It +.Vt wchar_t , +an integer type whose range of values can represent distinct wide-character +codes for all members of the largest character set specified among the +supported locales: the null character has the code value 0 and each member +of the character set has a code value equal to its value when used +as the lone character in an integer character constant; +.It +.Dv NULL , +which expands to an implementation-defined null pointer constant; and +.It +.Fn offsetof , +a macro that expands to an integer constant as described in +.Xr offsetof 3 . +.El +.Pp +Some of the described types and macros may appear also in other headers. +.Sh SEE ALSO +.Xr offsetof 3 , +.Xr stdlib 3 , +.Xr unistd 3 +.Sh STANDARDS +As described here, the +.In stddef.h +header conforms to +.St -isoC-99 +and +.St -p1003.1-2001 . +Some of the types and macros conform to earlier standards such as +.St -ansiC . +.Sh HISTORY +In the current form the +.In stddef.h +header was introduced in +.Nx 0.8 , +the first official release of +.Nx . +Some definitions such as +.Dv NULL +were first introduced already in the +.In nsys/param.h +header of +.At v4 . diff --git a/static/netbsd/man3/stdint.3 b/static/netbsd/man3/stdint.3 new file mode 100644 index 00000000..3d755083 --- /dev/null +++ b/static/netbsd/man3/stdint.3 @@ -0,0 +1,139 @@ +.\" $NetBSD: stdint.3,v 1.6 2011/08/09 18:11:37 jruoho Exp $ +.\" +.\" Copyright (c) 2002 Mike Barcroft +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man7/stdint.7,v 1.5 2003/09/08 19:57:21 ru Exp $ +.\" +.Dd August 9, 2011 +.Dt STDINT 3 +.Os +.Sh NAME +.Nm stdint +.Nd standard integer types +.Sh SYNOPSIS +.In stdint.h +.Sh DESCRIPTION +The +.In stdint.h +header provides source-portable integer types of a specific +size, smallest memory footprint with a minimum size, fastest +access speed with a minimum size, largest integer size, and +those capable of storing pointers. +.Pp +The types +.Vt int8_t , +.Vt int16_t , +.Vt int32_t , +and +.Vt int64_t +provide a signed integer type of width 8, 16, 32, or 64 bits, respectively. +The types +.Vt uint8_t , +.Vt uint16_t , +.Vt uint32_t , +and +.Vt uint64_t +provide an unsigned integer type of width 8, 16, 32, or 64 bits, respectively. +These integer types should be used when a specific size is required. +.Pp +The types +.Vt int_fast8_t , +.Vt int_fast16_t , +.Vt int_fast32_t , +and +.Vt int_fast64_t +provide the fastest signed integer type with a width +of at least 8, 16, 32, or 64 bits, respectively. +The types +.Vt uint_fast8_t , +.Vt uint_fast16_t , +.Vt uint_fast32_t , +and +.Vt uint_fast64_t +provide the fastest unsigned integer type with a width +of at least 8, 16, 32, or 64 bits, respectively. +These types should be used when access speed is +paramount, and when a specific size is not required. +.Pp +The types +.Vt int_least8_t , +.Vt int_least16_t , +.Vt int_least32_t , +and +.Vt int_least64_t +provide the smallest memory footprint signed integer type with +a width of at least 8, 16, 32, or 64 bits, respectively. +The types +.Vt uint_least8_t , +.Vt uint_least16_t , +.Vt uint_least32_t , +and +.Vt uint_least64_t +provide the smallest memory footprint unsigned integer type with +a width of at least 8, 16, 32, or 64 bits, respectively. +These types should be used when memory storage is of +concern, and when a specific size is not required. +.Pp +The type +.Vt intmax_t +provides a signed integer type large +enough to hold any other signed integer. +The type +.Vt uintmax_t +provides an unsigned integer type large +enough to hold any other unsigned integer. +These types are generally the largest signed and unsigned +integer types available on a specific architecture. +.Pp +The type +.Vt intptr_t +provides a signed integer type with the ability to hold a pointer to +.Vt void , +that can later be converted back to a pointer to +.Vt void . +.Pp +The type +.Vt uintptr_t +provides an unsigned integer type with the ability to hold a pointer to +.Vt void , +that can later be converted back to a pointer to +.Vt void . +.Sh SEE ALSO +.Xr inttypes 3 , +.Xr limits 3 , +.Xr stdbool 3 , +.Xr unistd 3 +.Sh STANDARDS +The +.In stdint.h +header conforms to +.St -isoC-99 +and +.St -p1003.1-2001 . +.Sh HISTORY +The +.In stdint.h +header was first introduced in +.Nx 1.6 . diff --git a/static/netbsd/man3/stdlib.3 b/static/netbsd/man3/stdlib.3 new file mode 100644 index 00000000..9ca9e072 --- /dev/null +++ b/static/netbsd/man3/stdlib.3 @@ -0,0 +1,110 @@ +.\" $NetBSD: stdlib.3,v 1.3 2011/04/10 10:02:34 jruoho Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 10, 2011 +.Dt STDLIB 3 +.Os +.Sh NAME +.Nm stdlib +.Nd standard library definitions +.Sh SYNOPSIS +.In stdlib.h +.Sh DESCRIPTION +The +.In stdlib.h +header defines the following types and macros: +.Bl -enum -offset 4n +.It +.Dv NULL +- an implementation-defined null pointer constant; +.It +.Vt size_t +and +.Vt wchar_t +- integer types described in +.Xr stddef 3 ; +.It +.Vt div_t , +.Vt ldiv_t , +and +.Vt lldiv_t +- structures that are returned by the +.Xr div 3 , +.Xr ldiv 3 , +and +.Xr lldiv 3 +functions, respectively; +.It +.Dv RAND_MAX +- a macro which expands to an integer constant +that is the maximum value returned by the +.Xr rand 3 +function; +.It +.Dv MB_CUR_MAX +- an integer expression of type +.Vt size_t +whose value is the maximum number of bytes in a +character specified by the current locale; and +.It +.Dv EXIT_SUCCESS +and +.Dv EXIT_FAILURE +- macros which expand to integer constants +suitable for use as an argument to the +.Xr exit 3 +function. +.El +.Pp +The +.In stdlib.h +header also prototypes several important functions such as +.Xr abort 3 , +.Xr atoi 3 , +.Xr bsearch 3 , +.Xr free 3 , +.Xr malloc 3 , +and +.Xr strtol 3 . +.Sh SEE ALSO +.Xr stddef 3 , +.Xr types 3 , +.Xr unistd 3 +.Sh STANDARDS +As described here, the +.In stdlib.h +header conforms to +.St -isoC-99 +and +.St -p1003.1-2001 . +.Sh HISTORY +In the current form the +.In stdlib.h +header was introduced in +.Nx 0.8 . diff --git a/static/netbsd/man3/sysexits.3 b/static/netbsd/man3/sysexits.3 new file mode 100644 index 00000000..0c324be5 --- /dev/null +++ b/static/netbsd/man3/sysexits.3 @@ -0,0 +1,152 @@ +.\" $NetBSD: sysexits.3,v 1.6 2011/04/08 10:14:24 jruoho Exp $ +.\" +.\" Copyright (c) 1996 Joerg Wunsch +.\" +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man3/sysexits.3,v 1.16 2005/06/30 13:13:49 hmp Exp $ +.\" +.\" " +.Dd March 25, 2010 +.Dt SYSEXITS 3 +.Os +.Sh NAME +.Nm sysexits +.Nd preferable exit codes for programs +.Sh SYNOPSIS +.In sysexits.h +.Sh DESCRIPTION +It is not a good practice to call +.Xr exit 3 +with arbitrary values to indicate a failure condition when ending a program. +In addition to the two standard constants in +.In stdlib.h , +.Dv EXIT_SUCCESS +and +.Dv EXIT_FAILURE , +the header +.In sysexits.h +defines few exit codes that can be used as a parameter to the +.Xr exit 3 +function. +By using these constants the caller of the process can get a rough +estimation about the failure class without looking up the source code. +.Pp +The successful exit is always indicated by a status of 0, or +.Dv EX_OK . +Error numbers begin at +.Dv EX__BASE +to reduce the possibility of clashing with other exit statuses that +random programs may already return. +The meaning of the codes is +approximately as follows: +.Bl -tag -width "EX_UNAVAILABLEXX(XX)" +.It Dv EX_USAGE Pq 64 +The command was used incorrectly, e.g., with the wrong number of +arguments, a bad flag, a bad syntax in a parameter, or whatever. +.It Dv EX_DATAERR Pq 65 +The input data was incorrect in some way. +This should only be used +for user's data and not system files. +.It Dv EX_NOINPUT Pq 66 +An input file (not a system file) did not exist or was not readable. +This could also include errors like +.Dq \&No message +to a mailer (if it cared to catch it). +.It Dv EX_NOUSER Pq 67 +The user specified did not exist. +This might be used for mail +addresses or remote logins. +.It Dv EX_NOHOST Pq 68 +The host specified did not exist. +This is used in mail addresses or +network requests. +.It Dv EX_UNAVAILABLE Pq 69 +A service is unavailable. +This can occur if a support program or file +does not exist. +This can also be used as a catchall message when +something you wanted to do does not work, but you do not know why. +.It Dv EX_SOFTWARE Pq 70 +An internal software error has been detected. +This should be limited +to non-operating system related errors as possible. +.It Dv EX_OSERR Pq 71 +An operating system error has been detected. +This is intended to be +used for such things as +.Dq cannot fork , +.Dq cannot create pipe , +or the like. +It includes things like getuid returning a user that +does not exist in the passwd file. +.It Dv EX_OSFILE Pq 72 +Some system file (e.g., +.Pa /etc/passwd , +.Pa /var/run/utmp , +etc.) does not exist, cannot be opened, or has some sort of error +(e.g., syntax error). +.It Dv EX_CANTCREAT Pq 73 +A (user specified) output file cannot be created. +.It Dv EX_IOERR Pq 74 +An error occurred while doing I/O on some file. +.It Dv EX_TEMPFAIL Pq 75 +Temporary failure, indicating something that is not really an error. +In sendmail, this means that a mailer (e.g.) could not create a +connection, and the request should be reattempted later. +.It Dv EX_PROTOCOL Pq 76 +The remote system returned something that was +.Dq not possible +during a protocol exchange. +.It Dv EX_NOPERM Pq 77 +You did not have sufficient permission to perform the operation. +This +is not intended for file system problems, which should use +.Dv EX_NOINPUT +or +.Dv EX_CANTCREAT , +but rather for higher level permissions. +.It Dv EX_CONFIG Pq 78 +Something was found in an unconfigured or misconfigured state. +.El +.Pp +The numerical values corresponding to the symbolical ones are given in +parenthesis for easy reference. +.Sh SEE ALSO +.Xr err 3 , +.Xr exit 3 , +.Xr stdlib 3 +.Sh HISTORY +The +.In sysexits.h +header appeared somewhere after +.Bx 4.3 . +The manual page for it appeared in +.Nx 4.0 . +.Sh AUTHORS +This manual page was written by +.An J\(:org Wunsch +after the comments in +.In sysexits.h . +.Sh BUGS +The choice of an appropriate exit value is often ambiguous. diff --git a/static/netbsd/man3/tgmath.3 b/static/netbsd/man3/tgmath.3 new file mode 100644 index 00000000..299a955a --- /dev/null +++ b/static/netbsd/man3/tgmath.3 @@ -0,0 +1,154 @@ +.\" $NetBSD: tgmath.3,v 1.9 2014/03/18 18:20:39 riastradh Exp $ +.\" +.\" Copyright (c) 2004 Stefan Farfeleder +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man3/tgmath.3,v 1.3 2007/12/15 02:40:10 das Exp $ +.\" +.Dd December 14, 2010 +.Dt TGMATH 3 +.Os +.Sh NAME +.Nm tgmath +.Nd "type-generic macros" +.Sh SYNOPSIS +.In tgmath.h +.Sh DESCRIPTION +The header +.In tgmath.h +provides type-generic macros +for +.In math.h +and +.In complex.h +functions that have +.Vt float +(suffixed with +.Sy f ) , +.Vt double , +and +.Vt "long double" +(suffixed with +.Sy l ) +versions. +The arguments that vary across the three functions and have type +.Vt float , double , +and +.Vt "long double" , +respectively, are called +.Em "generic arguments" . +.Pp +The following rules describe which function is actually called if a +type-generic macro is invoked. +If any generic argument has type +.Vt "long double" +or +.Vt "long double complex" , +the +.Vt "long double" +function is called. +Else, if any generic argument has type +.Vt double , "double complex" , +or an integer type, the +.Vt double +version is invoked. +Otherwise, the macro expands to the +.Vt float +implementation. +.Pp +For the macros in the following table, both real and complex functions +exist. +The real functions are prototyped in +.In math.h +and the complex equivalents in +.In complex.h . +The complex function is called if any of the generic arguments is a +complex value. +Otherwise, the real equivalent is called. +.Bl -column -offset indent \ +"COMPLEX FUNCTION" "COMPLEX FUNCTION" "COMPLEX FUNCTION" +.It Sy Macro Ta Sy Real function Ta Sy Complex function +.It Fn acos Ta Xr acos 3 Ta Xr cacos 3 +.It Fn asin Ta Xr asin 3 Ta Xr casin 3 +.It Fn atan Ta Xr atan 3 Ta Xr catan 3 +.It Fn acosh Ta Xr acosh 3 Ta Xr cacosh 3 +.It Fn asinh Ta Xr asinh 3 Ta Xr casinh 3 +.It Fn atanh Ta Xr atanh 3 Ta Xr catanh 3 +.It Fn cos Ta Xr cos 3 Ta Xr ccos 3 +.It Fn sin Ta Xr sin 3 Ta Xr csin 3 +.It Fn tan Ta Xr tan 3 Ta Xr ctan 3 +.It Fn cosh Ta Xr cosh 3 Ta Xr ccosh 3 +.It Fn sinh Ta Xr sinh 3 Ta Xr csinh 3 +.It Fn tanh Ta Xr tanh 3 Ta Xr ctanh 3 +.It Fn exp Ta Xr exp 3 Ta Xr cexp 3 +.It Fn log Ta Xr log 3 Ta Xr clog 3 +.It Fn pow Ta Xr pow 3 Ta Xr cpow 3 +.It Fn sqrt Ta Xr sqrt 3 Ta Xr csqrt 3 +.It Fn fabs Ta Xr fabs 3 Ta Xr cabs 3 +.El +.Pp +No complex functions exist for the following macros, so passing a +complex value to a generic argument invokes undefined behaviour: +.Bl -column -offset indent ".Fn nexttoward" ".Fn nexttoward" ".Fn nexttoward" +.It Xr atan2 3 Ta Fn fma Ta Fn llround Ta Xr remainder 3 +.It Xr cbrt 3 Ta Xr fmax 3 Ta Xr log10 3 Ta Fn remquo +.It Xr ceil 3 Ta Xr fmin 3 Ta Xr log1p 3 Ta Xr rint 3 +.It Xr copysign 3 Ta Xr fmod 3 Ta Xr log2 3 Ta Xr round 3 +.It Xr erf 3 Ta Xr frexp 3 Ta Xr logb 3 Ta Xr scalbn 3 +.It Xr erfc 3 Ta Xr hypot 3 Ta Xr lrint 3 Ta Fn tgamma +.It Xr exp2 3 Ta Xr ilogb 3 Ta Fn lround Ta Xr trunc 3 +.It Xr expm1 3 Ta Xr ldexp 3 Ta Xr nextafter 3 +.It Xr fdim 3 Ta Xr lgamma 3 Ta +.It Xr floor 3 Ta Xr llrint 3 Ta +.El +.Pp +The following macros always expand to a complex function: +.Bl -column -offset indent ".Fn cimag" ".Fn cimag" ".Fn cimag" ".Fn cimag" ".Fn cimag" +.It Xr carg 3 Ta Xr cimag 3 Ta Xr conj 3 Ta Fn cproj Ta Xr creal 3 +.El +.Pp +This header includes +.In complex.h +and +.In math.h . +.Sh STANDARDS +The header +.In tgmath.h +conforms to +.St -isoC-99 . +.Sh AUTHORS +.An Matt Thomas Aq Mt matt@3am-software.com +.Sh BUGS +The header +.In tgmath.h +cannot be implemented with strictly conforming C code and needs +special compiler support. +The current implementation only works for +.Tn GCC . +.Pp +Many of the functions mentioned here are not prototyped in +.In math.h +or +.In complex.h +as they are not yet implemented. diff --git a/static/netbsd/man3/timeradd.3 b/static/netbsd/man3/timeradd.3 new file mode 100644 index 00000000..d64a9cdf --- /dev/null +++ b/static/netbsd/man3/timeradd.3 @@ -0,0 +1,144 @@ +.\" $NetBSD: timeradd.3,v 1.10 2021/02/23 16:47:04 rillig Exp $ +.\" +.\" Copyright (c) 2009 Jukka Ruohonen +.\" Copyright (c) 1999 Kelly Yancey +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the author nor the names of any co-contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY JOHN BIRRELL AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man3/timeradd.3,v 1.3 2003/09/08 19:57:19 ru Exp $ +.\" +.Dd June 7, 2010 +.Dt TIMERADD 3 +.Os +.Sh NAME +.Nm timeradd +.Nd operations on time structure +.Sh SYNOPSIS +.In sys/time.h +.Ft void +.Fn timeradd "struct timeval *a" "struct timeval *b" "struct timeval *res" +.Ft void +.Fn timersub "struct timeval *a" "struct timeval *b" "struct timeval *res" +.Ft void +.Fn timerclear "struct timeval *tv" +.Ft int +.Fn timerisset "struct timeval *tv" +.Ft int +.Fn timercmp "struct timeval *a" "struct timeval *b" CMP +.Ft void +.Fn timespecadd "struct timespec *a" \ +"struct timespec *b" "struct timespec *res" +.Ft void +.Fn timespecsub "struct timespec *a" \ +"struct timespec *b" "struct timespec *res" +.Ft void +.Fn timespecclear "struct timespec *ts" +.Ft int +.Fn timespecisset "struct timespec *ts" +.Ft int +.Fn timespeccmp "const struct timespec *a" "const struct timespec *b" CMP +.Sh DESCRIPTION +These macros are provided for manipulating the +.Fa timeval +and +.Fa timespec +structures described in +.Xr timeval 3 . +.Pp +The +.Fn timeradd +and +.Fn timespecadd +macros add the time information stored in +.Fa a +to +.Fa b , +storing the result in +.Fa res . +With +.Fn timeradd +the results are simplified such that the value of +.Fa res->tv_usec +is always less than 1,000,000 (1 second). +With +.Fn timespecadd +the +.Fa res->tv_nsec +member of +.Fa struct timespec +is always less than 1,000,000,000. +.Pp +The +.Fn timersub +and +.Fn timespecsub +macros subtract the time information stored in +.Fa b +from +.Fa a +and store the resulting structure +in +.Fa res . +.Pp +The +.Fn timerclear +and +.Fn timespecclear +macros initialize the structures +to midnight (0 hour) January 1st, 1970 (the Epoch). +In other words, they set the members of the structure to zero. +.Pp +The +.Fn timerisset +and +.Fn timespecisset +macros return true if the input structure +is set to any time value other than the Epoch. +.Pp +The +.Fn timercmp +and +.Fn timespeccmp +macros compare +.Fa a +to +.Fa b +using the comparison operator given in +.Fa CMP . +The result of the comparison is returned. +.Sh SEE ALSO +.Xr timeval 3 +.Sh HISTORY +The +.Fn timeradd +family of macros first appeared in +.Nx 1.1 . +These were later ported to +.Fx 2.2.6 . +The +.Fn timespec +family of macros first appeared in +.Nx 1.2 . diff --git a/static/netbsd/man3/timeval.3 b/static/netbsd/man3/timeval.3 new file mode 100644 index 00000000..4817faf9 --- /dev/null +++ b/static/netbsd/man3/timeval.3 @@ -0,0 +1,189 @@ +.\" $NetBSD: timeval.3,v 1.12 2011/04/12 08:39:26 jruoho Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 12, 2011 +.Dt TIMEVAL 3 +.Os +.Sh NAME +.Nm timeval , +.Nm timespec , +.Nm itimerval , +.Nm itimerspec , +.Nm bintime +.Nd time structures +.Sh SYNOPSIS +.In sys/time.h +.Ft void +.Fn TIMEVAL_TO_TIMESPEC "struct timeval *tv" "struct timespec *ts" +.Ft void +.Fn TIMESPEC_TO_TIMEVAL "struct timeval *tv" "struct timespec *ts" +.Sh DESCRIPTION +The +.In sys/time.h +header, included by +.In time.h , +defines various structures related to time and timers. +.Bl -enum -offset 1n +.It +The following structure is used by +.Xr gettimeofday 2 , +among others: +.Bd -literal -offset indent +struct timeval { + time_t tv_sec; + suseconds_t tv_usec; +}; +.Ed +.Pp +The +.Va tv_sec +member represents the elapsed time, in whole seconds. +The +.Va tv_usec +member captures rest of the elapsed time, +represented as the number of microseconds. +.It +The following structure is used by +.Xr nanosleep 2 , +among others: +.Bd -literal -offset indent +struct timespec { + time_t tv_sec; + long tv_nsec; +}; +.Ed +.Pp +The +.Va tv_sec +member is again the elapsed time in whole seconds. +The +.Va tv_nsec +member represents the rest of the elapsed time in nanoseconds. +.Pp +A microsecond is equal to one millionth of a second, +1000 nanoseconds, or 1/1000 milliseconds. +To ease the conversions, the macros +.Fn TIMEVAL_TO_TIMESPEC +and +.Fn TIMESPEC_TO_TIMEVAL +can be used to convert between +.Em struct timeval +and +.Em struct timespec . +.It +The following structure is used by +.Xr setitimer 2 , +among others: +.Bd -literal -offset indent +struct itimerval { + struct timeval it_interval; + struct timeval it_value; +}; +.Ed +.It +The following structure is used by +.Xr timer_settime 2 , +among others: +.Bd -literal -offset indent +struct itimerspec { + struct timespec it_interval; + struct timespec it_value; +}; +.Ed +.Pp +Both +.Em struct itimerval +and +.Em struct itimerspec +are used to specify when a timer expires. +Generally, +.Va it_interval +specifies the period between successive timer expirations. +A value zero implies that the alarm will fire only once. +If +.Va it_value +is non-zero, it indicates the time left to the next timer expiration. +A value zero implies that the timer is disabled. +.It +The following structure is used by +.Xr bintime 9 , +among others: +.Bd -literal -offset indent +struct bintime { + time_t sec; + uint64_t frac; +}; +.Ed +.Pp +The +.Va sec +member specifies the time in seconds and +.Va frac +represents a 64-bit fraction of seconds. +The +.Va struct bintime +is meant to be used in the kernel only. +It is further described in +.Xr timecounter 9 . +.El +.Sh EXAMPLES +It can be stressed that the traditional +.Tn UNIX +.Va timeval +and +.Va timespec +structures represent elapsed time, measured by the system clock +(see +.Xr hz 9 ) . +The following sketch implements a function suitable +for use in a context where the +.Va timespec +structure is required for a conditional timeout: +.Bd -literal -offset indent +static void +example(struct timespec *spec, time_t minutes) +{ + struct timeval elapsed; + + (void)gettimeofday(&elapsed, NULL); + + _DIAGASSERT(spec != NULL); + TIMEVAL_TO_TIMESPEC(&elapsed, spec); + + /* Add the offset for timeout in minutes. */ + spec->tv_sec = spec->tv_sec + minutes * 60; +} +.Ed +.Pp +A better alternative would use the more precise +.Xr clock_gettime 2 . +.Sh SEE ALSO +.Xr timeradd 3 , +.Xr tm 3 , +.Xr bintime_add 9 diff --git a/static/netbsd/man3/tm.3 b/static/netbsd/man3/tm.3 new file mode 100644 index 00000000..ad3afe79 --- /dev/null +++ b/static/netbsd/man3/tm.3 @@ -0,0 +1,112 @@ +.\" $NetBSD: tm.3,v 1.7 2024/10/13 01:30:45 riastradh Exp $ +.\" +.\" Copyright (c) 2011 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 14, 2011 +.Dt TM 3 +.Os +.Sh NAME +.Nm tm +.Nd time structure +.Sh SYNOPSIS +.In time.h +.Sh DESCRIPTION +The +.In time.h +header defines the +.Vt tm +structure that contains calendar dates and time broken down into components. +The following standards-compliant fields are present: +.Bl -column -offset indent \ +"Type" "Field " "Months since January 1 " "Range " +.It Sy Type Ta Sy Field Ta Sy Represents Ta Sy Range +.It Vt int Ta Va tm_sec Ta Seconds Ta [0, 60] +.It Vt int Ta Va tm_min Ta Minutes Ta [0, 59] +.It Vt int Ta Va tm_hour Ta Hours since midnight Ta [0, 23] +.It Vt int Ta Va tm_mday Ta Day of the month Ta [1, 31] +.It Vt int Ta Va tm_mon Ta Months since January Ta [0, 11] +.It Vt int Ta Va tm_year Ta Years since 1900 Ta +.It Vt int Ta Va tm_wday Ta Days since Sunday Ta [0, 6] +.It Vt int Ta Va tm_yday Ta Days since January 1 Ta [0, 365] +.It Vt int Ta Va tm_isdt Ta Positive if daylight savings Ta >= 0 +.El +.Pp +The +.Vt tm +structure is used by various common library routines such as +.Xr mktime 3 , +.Xr localtime 3 , +and +.Xr strptime 3 . +All fields described above are defined in the +.St -p1003.1-2008 +standard. +.Ss NetBSD Extensions +In addition, the following NetBSD-specific fields are available: +.Bl -column -offset indent \ +"Type " "Field " "Months since January 1" +.It Sy Type Ta Sy Field Ta Sy Represents +.It Vt long Ta Va tm_gmtoff Ta Offset from UTC in seconds +.It Vt "const char *" Ta Va tm_zone Ta Timezone abbreviation +.El +.Pp +The +.Va tm_zone +and +.Va tm_gmtoff +fields exist, and are filled in by applicable library routines, +only if arrangements to do so were made when the library containing +these functions was created. +There is no guarantee that these fields will continue to exist +in this form in future releases of +. Nx . +.Pp +The +.Fa tm_gmtoff +field denotes the offset (in seconds) of the time represented +from UTC, with positive values indicating east +of the Prime Meridian. +The +.Vt tm_zone +field will become invalid and point to freed storage if the corresponding +.Va "struct tm" +was returned by +.Xr localtime_rz 3 +and the +.Ft "const timezone_t" +.Fa tz +argument has been freed by +.Xr tzfree 3 . +.Sh SEE ALSO +.Xr asctime 3 , +.Xr offtime 3 , +.Xr timeval 3 , +.Xr wcsftime 3 +.Sh STANDARDS +The +.Vt tm +structure conforms to +.St -p1003.1-2008 +with respect to the described standard structure members. diff --git a/static/netbsd/man3/tree.3 b/static/netbsd/man3/tree.3 new file mode 100644 index 00000000..f4908111 --- /dev/null +++ b/static/netbsd/man3/tree.3 @@ -0,0 +1,610 @@ +.\" $NetBSD: tree.3,v 1.14 2019/05/24 21:32:05 wiz Exp $ +.\" $OpenBSD: tree.3,v 1.23 2011/07/09 08:43:01 jmc Exp $ +.\"/* +.\" * Copyright 2002 Niels Provos +.\" * All rights reserved. +.\" * +.\" * Redistribution and use in source and binary forms, with or without +.\" * modification, are permitted provided that the following conditions +.\" * are met: +.\" * 1. Redistributions of source code must retain the above copyright +.\" * notice, this list of conditions and the following disclaimer. +.\" * 2. Redistributions in binary form must reproduce the above copyright +.\" * notice, this list of conditions and the following disclaimer in the +.\" * documentation and/or other materials provided with the distribution. +.\" * +.\" * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" */ +.Dd May 25, 2019 +.Dt TREE 3 +.Os +.Sh NAME +.Nm SPLAY_PROTOTYPE , +.Nm SPLAY_GENERATE , +.Nm SPLAY_ENTRY , +.Nm SPLAY_HEAD , +.Nm SPLAY_INITIALIZER , +.Nm SPLAY_ROOT , +.Nm SPLAY_EMPTY , +.Nm SPLAY_NEXT , +.Nm SPLAY_MIN , +.Nm SPLAY_MAX , +.Nm SPLAY_FIND , +.Nm SPLAY_LEFT , +.Nm SPLAY_RIGHT , +.Nm SPLAY_FOREACH , +.Nm SPLAY_INIT , +.Nm SPLAY_INSERT , +.Nm SPLAY_REMOVE , +.Nm RB_PROTOTYPE , +.Nm RB_PROTOTYPE_STATIC , +.Nm RB_GENERATE , +.Nm RB_GENERATE_STATIC , +.Nm RB_ENTRY , +.Nm RB_HEAD , +.Nm RB_INITIALIZER , +.Nm RB_ROOT , +.Nm RB_EMPTY , +.Nm RB_NEXT , +.Nm RB_PREV , +.Nm RB_MIN , +.Nm RB_MAX , +.Nm RB_FIND , +.Nm RB_NFIND , +.Nm RB_LEFT , +.Nm RB_RIGHT , +.Nm RB_PARENT , +.Nm RB_FOREACH , +.Nm RB_FOREACH_SAFE , +.Nm RB_FOREACH_REVERSE , +.Nm RB_FOREACH_REVERSE_SAFE , +.Nm RB_INIT , +.Nm RB_INSERT , +.Nm RB_REMOVE +.Nd implementations of splay and red-black trees +.Sh SYNOPSIS +.In sys/tree.h +.Fn SPLAY_PROTOTYPE "NAME" "TYPE" "FIELD" "CMP" +.Fn SPLAY_GENERATE "NAME" "TYPE" "FIELD" "CMP" +.Fn SPLAY_ENTRY "TYPE" +.Fn SPLAY_HEAD "HEADNAME" "TYPE" +.Ft "struct TYPE *" +.Fn SPLAY_INITIALIZER "SPLAY_HEAD *head" +.Fn SPLAY_ROOT "SPLAY_HEAD *head" +.Ft "int" +.Fn SPLAY_EMPTY "SPLAY_HEAD *head" +.Ft "struct TYPE *" +.Fn SPLAY_NEXT "NAME" "SPLAY_HEAD *head" "struct TYPE *elm" +.Ft "struct TYPE *" +.Fn SPLAY_MIN "NAME" "SPLAY_HEAD *head" +.Ft "struct TYPE *" +.Fn SPLAY_MAX "NAME" "SPLAY_HEAD *head" +.Ft "struct TYPE *" +.Fn SPLAY_FIND "NAME" "SPLAY_HEAD *head" "struct TYPE *elm" +.Ft "struct TYPE *" +.Fn SPLAY_LEFT "struct TYPE *elm" "SPLAY_ENTRY NAME" +.Ft "struct TYPE *" +.Fn SPLAY_RIGHT "struct TYPE *elm" "SPLAY_ENTRY NAME" +.Fn SPLAY_FOREACH "VARNAME" "NAME" "SPLAY_HEAD *head" +.Ft void +.Fn SPLAY_INIT "SPLAY_HEAD *head" +.Ft "struct TYPE *" +.Fn SPLAY_INSERT "NAME" "SPLAY_HEAD *head" "struct TYPE *elm" +.Ft "struct TYPE *" +.Fn SPLAY_REMOVE "NAME" "SPLAY_HEAD *head" "struct TYPE *elm" +.Pp +.Fn RB_PROTOTYPE "NAME" "TYPE" "FIELD" "CMP" +.Fn RB_PROTOTYPE_STATIC "NAME" "TYPE" "FIELD" "CMP" +.Fn RB_GENERATE "NAME" "TYPE" "FIELD" "CMP" +.Fn RB_GENERATE_STATIC "NAME" "TYPE" "FIELD" "CMP" +.Fn RB_ENTRY "TYPE" +.Fn RB_HEAD "HEADNAME" "TYPE" +.Fn RB_INITIALIZER "RB_HEAD *head" +.Ft "struct TYPE *" +.Fn RB_ROOT "RB_HEAD *head" +.Ft "int" +.Fn RB_EMPTY "RB_HEAD *head" +.Ft "struct TYPE *" +.Fn RB_NEXT "NAME" "RB_HEAD *head" "struct TYPE *elm" +.Ft "struct TYPE *" +.Fn RB_PREV "NAME" "RB_HEAD *head" "struct TYPE *elm" +.Ft "struct TYPE *" +.Fn RB_MIN "NAME" "RB_HEAD *head" +.Ft "struct TYPE *" +.Fn RB_MAX "NAME" "RB_HEAD *head" +.Ft "struct TYPE *" +.Fn RB_FIND "NAME" "RB_HEAD *head" "struct TYPE *elm" +.Ft "struct TYPE *" +.Fn RB_NFIND "NAME" "RB_HEAD *head" "struct TYPE *elm" +.Ft "struct TYPE *" +.Fn RB_LEFT "struct TYPE *elm" "RB_ENTRY NAME" +.Ft "struct TYPE *" +.Fn RB_RIGHT "struct TYPE *elm" "RB_ENTRY NAME" +.Ft "struct TYPE *" +.Fn RB_PARENT "struct TYPE *elm" "RB_ENTRY NAME" +.Fn RB_FOREACH "VARNAME" "NAME" "RB_HEAD *head" +.Fn RB_FOREACH_SAFE "VARNAME" "NAME" "RB_HEAD *head" "TEMP_VARNAME" +.Fn RB_FOREACH_REVERSE "VARNAME" "NAME" "RB_HEAD *head" +.Fn RB_FOREACH_REVERSE_SAFE "VARNAME" "NAME" "RB_HEAD *head" "TEMP_VARNAME" +.Ft void +.Fn RB_INIT "RB_HEAD *head" +.Ft "struct TYPE *" +.Fn RB_INSERT "NAME" "RB_HEAD *head" "struct TYPE *elm" +.Ft "struct TYPE *" +.Fn RB_REMOVE "NAME" "RB_HEAD *head" "struct TYPE *elm" +.Sh DESCRIPTION +.Bf -symbolic +This is a legacy interface; for new code, +.Xr rbtree 3 +is preferred. +.Ef +.Pp +These macros define data structures for different types of trees: +splay trees and red-black trees. +.Pp +In the macro definitions, +.Fa TYPE +is the name tag of a user defined structure that must contain a field named +.Fa FIELD , +of type +.Li SPLAY_ENTRY +or +.Li RB_ENTRY . +The argument +.Fa HEADNAME +is the name tag of a user defined structure that must be declared +using the macros +.Fn SPLAY_HEAD +or +.Fn RB_HEAD . +The argument +.Fa NAME +has to be a unique name prefix for every tree that is defined. +.Pp +The function prototypes are declared with +.Li SPLAY_PROTOTYPE , +.Li RB_PROTOTYPE , +or +.Li RB_PROTOTYPE_STATIC . +The function bodies are generated with +.Li SPLAY_GENERATE , +.Li RB_GENERATE , +or +.Li RB_GENERATE_STATIC . +See the examples below for further explanation of how these macros are used. +.Sh SPLAY TREES +A splay tree is a self-organizing data structure. +Every operation on the tree causes a splay to happen. +The splay moves the requested node to the root of the tree and partly +rebalances it. +.Pp +This has the benefit that request locality causes faster lookups as +the requested nodes move to the top of the tree. +On the other hand, every lookup causes memory writes. +.Pp +The Balance Theorem bounds the total access time for m operations +and n inserts on an initially empty tree as O((m + n)lg n). +The amortized cost for a sequence of m accesses to a splay tree is O(lg n). +.Pp +A splay tree is headed by a structure defined by the +.Fn SPLAY_HEAD +macro. +A +.Fa SPLAY_HEAD +structure is declared as follows: +.Bd -literal -offset indent +SPLAY_HEAD(HEADNAME, TYPE) head; +.Ed +.Pp +where +.Fa HEADNAME +is the name of the structure to be defined, and struct +.Fa TYPE +is the type of the elements to be inserted into the tree. +.Pp +The +.Fn SPLAY_ENTRY +macro declares a structure that allows elements to be connected in the tree. +.Pp +In order to use the functions that manipulate the tree structure, +their prototypes need to be declared with the +.Fn SPLAY_PROTOTYPE +macro, +where +.Fa NAME +is a unique identifier for this particular tree. +The +.Fa TYPE +argument is the type of the structure that is being managed +by the tree. +The +.Fa FIELD +argument is the name of the element defined by +.Fn SPLAY_ENTRY . +.Pp +The function bodies are generated with the +.Fn SPLAY_GENERATE +macro. +It takes the same arguments as the +.Fn SPLAY_PROTOTYPE +macro, but should be used only once. +.Pp +Finally, +the +.Fa CMP +argument is the name of a function used to compare tree nodes +with each other. +The function takes two arguments of type +.Fa "struct TYPE *" . +If the first argument is smaller than the second, the function returns a +value smaller than zero. +If they are equal, the function returns zero. +Otherwise, it should return a value greater than zero. +The compare function defines the order of the tree elements. +.Pp +The +.Fn SPLAY_INIT +macro initializes the tree referenced by +.Fa head . +.Pp +The splay tree can also be initialized statically by using the +.Fn SPLAY_INITIALIZER +macro like this: +.Bd -literal -offset indent +SPLAY_HEAD(HEADNAME, TYPE) head = SPLAY_INITIALIZER(&head); +.Ed +.Pp +The +.Fn SPLAY_INSERT +macro inserts the new element +.Fa elm +into the tree. +Upon success, +.Dv NULL +is returned. +If a matching element already exists in the tree, the insertion is +aborted, and a pointer to the existing element is returned. +.Pp +The +.Fn SPLAY_REMOVE +macro removes the element +.Fa elm +from the tree pointed by +.Fa head . +Upon success, a pointer to the removed element is returned. +.Dv NULL +is returned if +.Fa elm +is not present in the tree. +.Pp +The +.Fn SPLAY_FIND +macro can be used to find a particular element in the tree. +.Bd -literal -offset indent +struct TYPE find, *res; +find.key = 30; +res = SPLAY_FIND(NAME, &head, &find); +.Ed +.Pp +The +.Fn SPLAY_ROOT , +.Fn SPLAY_MIN , +.Fn SPLAY_MAX , +and +.Fn SPLAY_NEXT +macros can be used to traverse the tree: +.Bd -literal -offset indent +for (np = SPLAY_MIN(NAME, &head); np != NULL; np = SPLAY_NEXT(NAME, &head, np)) +.Ed +.Pp +Or, for simplicity, one can use the +.Fn SPLAY_FOREACH +macro: +.Bd -literal -offset indent +SPLAY_FOREACH(np, NAME, &head) +.Ed +.Pp +The +.Fn SPLAY_EMPTY +macro should be used to check whether a splay tree is empty. +.Sh RED-BLACK TREES +A red-black tree is a binary search tree with the node color as an +extra attribute. +It fulfills a set of conditions: +.Pp +.Bl -enum -compact -offset indent +.It +every search path from the root to a leaf consists of the same number of +black nodes, +.It +each red node (except for the root) has a black parent, +.It +each leaf node is black. +.El +.Pp +Every operation on a red-black tree is bounded as O(lg n). +The maximum height of a red-black tree is 2lg (n+1). +.Pp +A red-black tree is headed by a structure defined by the +.Fn RB_HEAD +macro. +A +.Fa RB_HEAD +structure is declared as follows: +.Bd -literal -offset indent +RB_HEAD(HEADNAME, TYPE) head; +.Ed +.Pp +where +.Fa HEADNAME +is the name of the structure to be defined, and struct +.Fa TYPE +is the type of the elements to be inserted into the tree. +.Pp +The +.Fn RB_ENTRY +macro declares a structure that allows elements to be connected in the tree. +.Pp +In order to use the functions that manipulate the tree structure, +their prototypes need to be declared with the +.Fn RB_PROTOTYPE +or +.Fn RB_PROTOTYPE_STATIC +macros, +where +.Fa NAME +is a unique identifier for this particular tree. +The +.Fa TYPE +argument is the type of the structure that is being managed +by the tree. +The +.Fa FIELD +argument is the name of the element defined by +.Fn RB_ENTRY . +.Pp +The function bodies are generated with the +.Fn RB_GENERATE +or +.Fn RB_GENERATE_STATIC +macros. +These macros take the same arguments as the +.Fn RB_PROTOTYPE +and +.Fn RB_PROTOTYPE_STATIC +macros, but should be used only once. +.Pp +Finally, +the +.Fa CMP +argument is the name of a function used to compare trees' nodes +with each other. +The function takes two arguments of type +.Fa "struct TYPE *" . +If the first argument is smaller than the second, the function returns a +value smaller than zero. +If they are equal, the function returns zero. +Otherwise, it should return a value greater than zero. +The compare function defines the order of the tree elements. +.Pp +The +.Fn RB_INIT +macro initializes the tree referenced by +.Fa head . +.Pp +The red-black tree can also be initialized statically by using the +.Fn RB_INITIALIZER +macro like this: +.Bd -literal -offset indent +RB_HEAD(HEADNAME, TYPE) head = RB_INITIALIZER(&head); +.Ed +.Pp +The +.Fn RB_INSERT +macro inserts the new element +.Fa elm +into the tree. +Upon success, +.Dv NULL +is returned. +If a matching element already exists in the tree, the insertion is +aborted, and a pointer to the existing element is returned. +.Pp +The +.Fn RB_REMOVE +macro removes the element +.Fa elm +from the tree pointed to by +.Fa head . +The element must be present in that tree. +.Fn RB_REMOVE +returns +.Fa elm . +.Pp +The +.Fn RB_FIND +macro can be used to find a particular element in the tree. +and +.Fn RB_NFIND +macros can be used to find a particular element in the tree. +.Fn RB_FIND +finds the node with the same key as +.Fa elm . +.Fn RB_NFIND +finds the first node greater than or equal to the search key. +.Bd -literal -offset indent +struct TYPE find, *res; +find.key = 30; +res = RB_FIND(NAME, &head, &find); +.Ed +.Pp +The +.Fn RB_ROOT , +.Fn RB_MIN , +.Fn RB_MAX , +.Fn RB_NEXT , +and +.Fn RB_PREV +macros can be used to traverse the tree: +.Bd -literal -offset indent +for (np = RB_MIN(NAME, &head); np != NULL; np = RB_NEXT(NAME, &head, np)) +.Ed +.Pp +Or, for simplicity, one can use the +.Fn RB_FOREACH +or +.Fn RB_FOREACH_REVERSE +macros: +.Bd -literal -offset indent +RB_FOREACH(np, NAME, &head) +.Ed +.Pp +The macros +.Fn RB_FOREACH_SAFE +and +.Fn RB_FOREACH_REVERSE_SAFE +traverse the tree referenced by head +in a forward or reverse direction respectively, +assigning each element in turn to np. +However, unlike their unsafe counterparts, +they permit both the removal of np +as well as freeing it from within the loop safely +without interfering with the traversal. +.Pp +The +.Fn RB_EMPTY +macro should be used to check whether a red-black tree is empty. +.Sh EXAMPLES +The following example demonstrates how to declare a red-black tree +holding integers. +Values are inserted into it and the contents of the tree are printed +in order. +Lastly, the internal structure of the tree is printed. +.Bd -literal -offset 3n +#include +#include +#include +#include + +struct node { + RB_ENTRY(node) entry; + int i; +}; + +int +intcmp(struct node *e1, struct node *e2) +{ + return (e1->i < e2->i ? -1 : e1->i > e2->i); +} + +RB_HEAD(inttree, node) head = RB_INITIALIZER(&head); +RB_GENERATE(inttree, node, entry, intcmp) + +int testdata[] = { + 20, 16, 17, 13, 3, 6, 1, 8, 2, 4, 10, 19, 5, 9, 12, 15, 18, + 7, 11, 14 +}; + +void +print_tree(struct node *n) +{ + struct node *left, *right; + + if (n == NULL) { + printf("nil"); + return; + } + left = RB_LEFT(n, entry); + right = RB_RIGHT(n, entry); + if (left == NULL && right == NULL) + printf("%d", n->i); + else { + printf("%d(", n->i); + print_tree(left); + printf(","); + print_tree(right); + printf(")"); + } +} + +int +main() +{ + int i; + struct node *n; + + for (i = 0; i < sizeof(testdata) / sizeof(testdata[0]); i++) { + if ((n = malloc(sizeof(struct node))) == NULL) + err(1, NULL); + n->i = testdata[i]; + RB_INSERT(inttree, &head, n); + } + + RB_FOREACH(n, inttree, &head) { + printf("%d\en", n->i); + } + print_tree(RB_ROOT(&head)); + printf("\en"); + return (0); +} +.Ed +.Sh NOTES +Some of these macros or functions perform no error checking, +and invalid usage leads to undefined behaviour. +In the case of macros or functions that expect their arguments +to be elements that are present in the tree, passing an element +that is not present in the tree is invalid. +.Pp +Trying to free a tree in the following way is a common error: +.Bd -literal -offset indent +SPLAY_FOREACH(var, NAME, &head) { + SPLAY_REMOVE(NAME, &head, var); + free(var); +} +free(head); +.Ed +.Pp +Since +.Va var +is free'd, the +.Fn FOREACH +macro refers to a pointer that may have been reallocated already. +Proper code needs a second variable. +.Bd -literal -offset indent +for (var = SPLAY_MIN(NAME, &head); var != NULL; var = nxt) { + nxt = SPLAY_NEXT(NAME, &head, var); + SPLAY_REMOVE(NAME, &head, var); + free(var); +} +.Ed +.\".Pp +.\"Both +.\".Fn RB_INSERT +.\"and +.\".Fn SPLAY_INSERT +.\"return +.\".Dv NULL +.\"if the element was inserted in the tree successfully, otherwise they +.\"return a pointer to the element with the colliding key. +.\".Pp +.\"Accordingly, +.\".Fn RB_REMOVE +.\"and +.\".Fn SPLAY_REMOVE +.\"return the pointer to the removed element, otherwise they return +.\".Dv NULL +.\"to indicate an error. +.Sh SEE ALSO +.Xr rbtree 3 +.Sh AUTHORS +The author of the tree macros is +.An Niels Provos . diff --git a/static/netbsd/man3/typeof.3 b/static/netbsd/man3/typeof.3 new file mode 100644 index 00000000..d23030bc --- /dev/null +++ b/static/netbsd/man3/typeof.3 @@ -0,0 +1,63 @@ +.\" $NetBSD: typeof.3,v 1.2 2010/12/19 08:10:09 jruoho Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 19, 2010 +.Dt TYPEOF 3 +.Os +.Sh NAME +.Nm typeof +.Nd GNU extension for type of an expression +.Sh SYNOPSIS +.Ft type +.Fn typeof "expression" +.Sh DESCRIPTION +The +.Fn typeof +construct can be used to obtain the type of an expression. +The syntax is comparable to that of +.Fn sizeof , +but semantically +.Fn typeof +operates like a type name defined with +.Em typedef . +.Sh EXAMPLES +The following is a typical example of a type-generic macro: +.Bd -literal -offset indent +#define MAX(a, b) ({ \\ + typeof(a) _a = (a); \\ + typeof(b) _b = (b); \\ + _a > _b ? _a : _b; \\ +}) +.Ed +.Sh SEE ALSO +.Xr gcc 1 , +.Xr __alignof__ 3 , +.Xr attribute 3 , +.Xr offsetof 3 +.Sh CAVEATS +The +.Fn typeof +construct is a non-standard, compiler-specific extension. diff --git a/static/netbsd/man3/types.3 b/static/netbsd/man3/types.3 new file mode 100644 index 00000000..df205b69 --- /dev/null +++ b/static/netbsd/man3/types.3 @@ -0,0 +1,223 @@ +.\" $NetBSD: types.3,v 1.7 2020/06/08 17:28:10 sevan Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jukka Ruohonen. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" Copyright (c) 1980, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)types.5 8.1 (Berkeley) 6/5/93 +.\" +.Dd April 10, 2011 +.Dt TYPES 3 +.Os +.Sh NAME +.Nm types +.Nd standard system data types +.Sh SYNOPSIS +.In sys/types.h +.Sh DESCRIPTION +The +.In sys/types.h +header contains the common data types used in the system. +Although these are meant to be used within the kernel, +most of the system data types are accessible also to user code. +A companion header +.In sys/param.h , +typically used in the kernel, +includes +.In sys/types.h +and provides additional types as well as other facilities (see +.Xr param 3 ) . +.Ss Standard Types +The following standards-compliant system data types are defined: +.Bl -column -offset indent \ +"suseconds_t " "process and process group IDs " "clock_settime(3) " +.It Sy Type Ta Sy Typical use Ta Sy Example +.It Va blkcnt_t Ta file block counts Ta Xr stat 2 +.It Va blksize_t Ta block sizes Ta Xr stat 2 +.It Va clock_t Ta system clock ticks Ta Xr clock 3 +.It Va clockid_t Ta clock IDs Ta Xr clock_settime 2 +.It Va dev_t Ta device IDs Ta Xr devname 3 +.It Va fsblkcnt_t Ta file system block counts Ta - +.It Va fsfilcnt_t Ta file system file counts Ta - +.It Va gid_t Ta group IDs Ta Xr getgid 2 +.It Va id_t Ta general identifier Ta Xr pset 3 +.It Va ino_t Ta file serial numbers Ta Xr fs 5 +.It Va key_t Ta interprocess communication Ta Xr ftok 3 +.It Va mode_t Ta file attributes Ta Xr stat 2 +.It Va nlink_t Ta link counts Ta Xr stat 2 +.It Va off_t Ta file sizes Ta Xr fseek 3 +.It Va pid_t Ta process and process group IDs Ta Xr getpid 2 +.It Va size_t Ta size of objects Ta Xr stddef 3 +.It Va ssize_t Ta count of bytes Ta Xr write 2 +.It Va suseconds_t Ta microseconds Ta Xr gettimeofday 2 +.It Va time_t Ta time in seconds Ta Xr time 3 +.It Va timer_t Ta timer IDs Ta Xr timer_create 2 +.\" +.\" XXX: Following are undefined in NetBSD at the time of writing: +.\" +.\".It Va trace_attr_t Ta trace stream attributes Ta - +.\".It Va trace_event_id_t Ta trace event type Ta - +.\".It Va trace_event_set_t Ta trace event type set Ta - +.\".It Va trace_id_t Ta trace stream ID Ta - +.It Va uid_t Ta user IDs Ta Xr setuid 2 +.It Va useconds_t Ta time in microseconds Ta Xr usleep 3 +.El +.Pp +In addition, when included in user applications, +.In sys/types.h +includes +.In pthread.h , +and thus it defines also the types used in the +.Tn POSIX +Threads Library, +.Xr pthread 3 . +.Pp +Each described type may vary across machines and operating systems. +Only the following properties are guaranteed by the +.St -p1003.1-2001 +standard: +.Bl -enum -offset indent +.It +The type +.Em ssize_t +is capable of storing integer values at least in the range [\-1, +.Dv SSIZE_MAX ] . +.It +The type +.Em useconds_t +is an unsigned integer capable of storing +values at least in the range [0, 1000000]. +.It +The type +.Em suseconds_t +is a signed integer capable of storing +values at least in the range [\-1, 1000000]. +.It +The +.Em time_t +and +.Em clock_t +types are either integers or real-floating types. +.It +The following types are integers: +.Em gid_t , +.Em id_t , +.Em mode_t , +.Em nlink_t , +and +.Em uid_t . +.It +The following types are signed integers: +.Em blkcnt_t , +.Em blksize_t , +.Em off_t , +.Em pid_t , +and +.Em ssize_t . +.It +The following types are unsigned integers: +.Em fsblkcnt_t , +.Em fsfilcnt_t , +.Em ino_t , +and +.Em size_t . +.El +.Ss NetBSD-specific Types +In addition to the standard types, +.In sys/types.h +defines some data types specific to +.Nx . +These are mostly used in the kernel. +A portable implementation should not rely +on these types to be available in other systems. +Examples include: +.Bl -column -offset indent \ +"suseconds_t " "synonym for uint64_t " "getdevmajor(3) " +.It Sy Type Ta Sy Typical use Ta Sy Example +.It Va cpuid_t Ta CPU IDs Ta Xr cpuset 3 +.It Va daddr_t Ta disk address Ta Xr buffercache 9 +.It Va devmajor_t Ta major device number Ta Xr getdevmajor 3 +.It Va lwp_t Ta typedef of Va struct lwp Ta Xr kthread 9 +.It Va u_quad_t Ta synonym for Va uint64_t Ta Xr strtouq 3 +.El +.Pp +It can be noted that the standard +.Dq C99 types +described in +.Xr stdint 3 +are preferred to the older fixed size integer types prefixed with an +.Dq u_ +(in other words, +.Va uint32_t +should be used instead of +.Va u_int32_t ) . +.Sh SEE ALSO +.Xr param 3 , +.Xr stdbool 3 , +.Xr stddef 3 , +.Xr stdint 3 , +.Xr stdlib 3 , +.Xr unistd 3 +.Sh STANDARDS +The +.In sys/types.h +header conforms to +.St -p1003.1-2001 +with respect to the described standard types. +.Sh HISTORY +The +.In sys/types.h +header first appeared in +.At v7 . +In the current form the header appeared in +.Nx 0.9 . diff --git a/static/netbsd/man3/uchar.3 b/static/netbsd/man3/uchar.3 new file mode 100644 index 00000000..1a2a70ad --- /dev/null +++ b/static/netbsd/man3/uchar.3 @@ -0,0 +1,151 @@ +.\" $NetBSD: uchar.3,v 1.2 2024/08/15 21:19:45 riastradh Exp $ +.\" +.\" Copyright (c) 2024 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 15, 2024 +.Dt UCHAR 3 +.Os +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh NAME +.Nm uchar +.Nd Unicode utilities +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh SYNOPSIS +.In uchar.h +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh DESCRIPTION +The +.In uchar.h +header file declares types and functions for manipulating Unicode code +units. +.\"""""""""""""""""""""""""""""""""""""" +.Ss Types +.Bl -tag -width ".Vt char32_t" +.It Vt char8_t +(C23) +Unsigned integer type for UTF-8 code units. +.Pp +Same type as +.Vt unsigned char . +.It Vt char16_t +Unsigned integer type for UTF-16 code units. +.Pp +Same type as +.Vt uint_least16_t +from +.In stdint.h . +May represent both surrogate code points, i.e., code points in the +interval [0xd800,0xdfff], and Unicode scalar values in the Basic +Multilingual Plane, which are the 16-bit code points other than +surrogate code points. +.It Vt char32_t +Unsigned integer type for UTF-32 code units. +.Pp +Same type as +.Vt uint_least32_t +from +.In stdint.h . +Can represent all Unicode scalar values, not just those in the Basic +Multilingual Plane. +Intended to represent only Unicode scalar values, not surrogate code +points. +.It Vt mbstate_t +Opaque multibyte conversion state. +.Pp +Same type as in +.Vt stddef.h +and +.Vt wchar.h . +.It Vt size_t +Unsigned integer type to represent array sizes. +.Pp +Same type as in +.Vt stddef.h , +.Vt stdint.h , +and +.Vt sys/types.h . +.El +.\"""""""""""""""""""""""""""""""""""""" +.Ss Functions +The +.In uchar.h +header file declares the functions +.Xr mbrtoc8 3 , +.Xr c8rtomb 3 , +.Xr mbrtoc16 3 , +.Xr c16rtomb 3 , +.Xr mbrtoc32 3 , +and +.Xr c32rtomb 3 +for conversion between multibyte sequences and UTF-8/UTF-16/UTF-32 code +units. +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh SEE ALSO +.Xr c8rtomb 3 , +.Xr c16rtomb 3 , +.Xr c32rtomb 3 , +.Xr mbrtoc8 3 , +.Xr mbrtoc16 3 , +.Xr mbrtoc32 3 +.Rs +.%B The Unicode Standard +.%O Version 15.0 \(em Core Specification +.%Q The Unicode Consortium +.%D September 2022 +.%U https://www.unicode.org/versions/Unicode15.0.0/UnicodeStandard-15.0.pdf +.Re +.Rs +.%A P. Hoffman +.%A F. Yergeau +.%T UTF-16, an encoding of ISO 10646 +.%R RFC 2781 +.%D February 2000 +.%I Internet Engineering Task Force +.%U https://datatracker.ietf.org/doc/html/rfc2781 +.Re +.Rs +.%A F. Yergeau +.%T UTF-8, a transformation format of ISO 10646 +.%R RFC 3629 +.%D November 2003 +.%I Internet Engineering Task Force +.%U https://datatracker.ietf.org/doc/html/rfc3629 +.Re +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh STANDARDS +The +.In uchar.h +header file conforms to +.St -isoC-2011 +.\" .St -isoC-2023 +.\" .\" XXX PR misc/58600: man pages lack C17, C23, C++98, C++03, C++11, C++17, C++20, C++23 citation syntax +and +.St -p1003.1-2024 . +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh HISTORY +The +.In uchar.h +header file first appeared in +.Nx 11.0 . diff --git a/static/netbsd/man3/unistd.3 b/static/netbsd/man3/unistd.3 new file mode 100644 index 00000000..e632027a --- /dev/null +++ b/static/netbsd/man3/unistd.3 @@ -0,0 +1,109 @@ +.\" $NetBSD: unistd.3,v 1.4 2011/08/09 18:11:38 jruoho Exp $ +.\" +.\" Copyright (c) 2011 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 9, 2011 +.Dt UNISTD 3 +.Os +.Sh NAME +.Nm unistd +.Nd standard symbolic constants and types +.Sh SYNOPSIS +.In unistd.h +.Sh DESCRIPTION +The +.In unistd.h +header forms the basis of the Portable Operating System Interface for Unix +.Pq Tn POSIX +.Tn API . +It includes definitions for numerous functions, symbolic constants, and types. +Among these are: +.Bl -bullet -offset indent +.It +The implementation-defined +.Dv NULL +pointer constant. +.It +Types such as +.Vt size_t , +.Vt ssize_t , +.Vt pid_t , +and +.Vt intptr_t . +.It +Various limits and other symbolic constants described in +.Xr pathconf 2 +and +.Xr sysconf 3 . +.It +Prototypes for several important system calls and library routines such as +.Xr chown 2 , +.Xr dup 2 , +.Xr execl 3 , +.Xr fork 2 , +.Xr pipe 2 , +.Xr rmdir 2 , +.Xr setuid 2 , +and +.Xr write 2 . +.It +The symbolic constant +.Dv _POSIX_VERSION +that defines the version of the +.Tn POSIX +standard to which the implementation conforms. +.It +Various other +.Dv _POSIX +-prefixed symbolic constants that indicate whether +the system implements some optional part of the standard. +Examples include such constants as +.Dv _POSIX_IPV6 +for +.Xr inet6 4 +functionality and +.Dv _POSIX_ASYNCHRONOUS_IO +for +.Xr aio 3 . +.El +.Sh SEE ALSO +.Xr limits 3 , +.Xr stddef 3 , +.Xr stdint 3 , +.Xr stdlib 3 , +.Xr types 3 +.Sh STANDARDS +The +.In unistd.h +header conforms to +.St -p1003.1-2001 . +.\" +.\" XXX: fill this. +.\" +.\".Sh HISTORY +.\" A +.\" .In unistd.h +.\" header first appeared in +.\" ??? diff --git a/static/netbsd/man3lua/Makefile b/static/netbsd/man3lua/Makefile new file mode 100644 index 00000000..2a6b184d --- /dev/null +++ b/static/netbsd/man3lua/Makefile @@ -0,0 +1,4 @@ +MAN = $(wildcard *.3lua) + +include ../../mandoc.mk + diff --git a/static/netbsd/man3lua/bozohttpd.3lua b/static/netbsd/man3lua/bozohttpd.3lua new file mode 100644 index 00000000..643a131e --- /dev/null +++ b/static/netbsd/man3lua/bozohttpd.3lua @@ -0,0 +1,94 @@ +.\" $NetBSD: bozohttpd.3lua,v 1.4 2023/03/01 21:06:41 nia Exp $ +.\" +.\" Copyright (c) 2018 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 6, 2018 +.Dt BOZOHTTPD 3lua +.Os +.Sh NAME +.Nm bozohttpd +.Nd provides access to +.Xr libbozohttpd 3 +functionality from Lua +.Sh SYNOPSIS +.Cd "local bozo = require 'bozohttpd'" +.Pp +.Bl -tag -width XXXX -compact +.It Dv instance = bozo.new() +.It Dv bozo.init_httpd(instance) +.It Dv prefs = bozo.init_prefs() +.It Dv bozo.set_pref(instance, prefs, name, value) +.It Dv bozo.get_pref(prefs, name) +.It Dv bozo.setup(instance, prefs, host, root) +.It Dv bozo.dynamic_mime(instance, one, two, three, four) +.It Dv bozo.ssl_set_opts(instance, one, two) +.It Dv bozo.cgi_setbin(instance, bin) +.It Dv bozo.cgi_map(instance, 1, 2) +.It Dv req = bozo.read_request(instance) +.It Dv bozo.process_request(req) +.It Dv bozo.clean_request(req) +.El +.Sh DESCRIPTION +The +.Nm +Lua binding provides access to functionality available in +.Xr libbozohttpd 3 . +.Sh EXAMPLES +The following example code demonstrates the process of instantiating an instance +of +.Nm +as a background daemon. +The instance is set to serve files from +.Pa /var/www +for the hostname www.example.com on TCP port 8080. +.Bd -literal +local bozo = require 'bozohttpd' +myhttpd = bozo.new() +bozo.init_httpd(myhttpd) +prefs = bozo.init_prefs() +bozo.set_pref(myhttpd, prefs, "port number", "8080") +bozo.set_pref(myhttpd, prefs, "background", 1) +bozo.setup(myhttpd, prefs, "www.example.com", "/var/www") +req = bozo.read_request(myhttpd) +bozo.process_request(req) +bozo.clean_request(req) +.Ed +.Sh SEE ALSO +.Xr lua 1 , +.Xr luac 1 , +.Xr libbozohttpd 3 , +.Xr intro 3lua +.Sh HISTORY +.Nm +Lua binding first appeared in +.Nx 9.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +Lua binding was written by +.An Alistair Crooks Aq Mt agc@NetBSD.org . +.Sh BUGS +This manual needs more description of the available functionality. diff --git a/static/netbsd/man3lua/gpio.3lua b/static/netbsd/man3lua/gpio.3lua new file mode 100644 index 00000000..cf012bf6 --- /dev/null +++ b/static/netbsd/man3lua/gpio.3lua @@ -0,0 +1,178 @@ +.\" $NetBSD: gpio.3lua,v 1.5 2016/06/11 15:17:34 abhinav Exp $ +.\" +.\" Copyright (c) 2013, 2014 Marc Balmer . +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" +.Dd January 7, 2014 +.Dt GPIO 3lua +.Os +.Sh NAME +.Nm gpio +.Nd access +.Xr gpio 4 +pins from Lua +.Sh SYNOPSIS +.Cd "local gpio = require 'gpio'" +.Pp +.Bl -tag -width XXXX -compact +.It Dv gpiodev = gpio.open(path) +.It Dv pins = gpio.info(gpiodev) +.It Dv gpio.close(gpiodev) +.It Dv gpio.set(gpiodev, pin, flags) +.It Dv gpio.unset(gpiodev, pin) +.It Dv state = gpio.read(gpiodev, pin) +.It Dv oldstate = gpio.write(gpiodev, pin, state) +.It Dv gpio.toggle(gpiodev, pin) +.It Dv gpio.attach(gpiodev, driver, offset, mask [, flags]) +.El +.Sh DESCRIPTION +The +.Nm +Lua binding provides access to a +.Xr gpio 4 +device using the +.Xr ioctl 2 +interface. +.Pp +.Bl -tag -width XXXX -compact +.It Dv gpiodev = gpio.open(path) +Open the gpio device and return an object to access its pins. +.Pp +.It Dv pins = gpio.info(gpiodev) +Returns the number of pins. +As with all remaining functions, this can also be called using the : +notation, i.e. as +.Em gpiodev:info() . +.Pp +.It Dv gpio.close(gpiodev) +Close the gpio device. +.Pp +.It Dv gpio.set(gpiodev, pin, flags) +Set gpio pin flags. +Note that the pin number in this and all remaining functions is zero based and +not one based, this to avoid confusion with tools like +.Xr gpioctl 8 +which also number pins starting at zero. +The following flags are defined: +.Pp +.Bl -tag -width XXXX -compact +.It Dv gpio.PIN_INPUT +Pin is an input. +.Pp +.It Dv gpio.PIN_OUTPUT +Pin is an output. +.Pp +.It Dv gpio.PIN_INOUT +Pin is birectional. +.Pp +.It Dv gpio.PIN_OPENDRAIN +Pin is an open-drain output. +.Pp +.It Dv gpio.PIN_PUSHPULL +Pin is a push-pull output. +.Pp +.It Dv gpio.PIN_TRISTATE +Pin is tri-state (output disabled). +.Pp +.It Dv gpio.PIN_PULLUP +Pin has an internal pull-up enabled. +.Pp +.It Dv gpio.PIN_PULLDOWN +Pin has an internal pull-down enabled. +.Pp +.It Dv gpio.PIN_INVIN +Invert input. +.Pp +.It Dv gpio.PIN_INVOUT +Invert output. +.Pp +.It Dv gpio.PIN_USER +Pin accessible by users. +.Pp +.It Dv gpio.PIN_PULSATE +Pulsate pin at a hardware set frequency. +.Pp +.It Dv gpio.PIN_SET +Pin is set. +.El +.Pp +.It Dv gpio.unset(gpiodev, pin) +Unset gpio pin. +.Pp +.It Dv stat = gpio.read(gpiodev, pin) +Read the current pin state. +.Pp +.It Dv oldstate = gpio.write(gpiodev, pin, state) +Write the pin state returning the old state. +The following states are defined: +.Pp +.Bl -tag -width XXXX -compact +.It Dv gpio.PIN_LOW +Pin is in the low state. +.Pp +.It Dv gpio.PIN_HIGH +Pin is in the high state. +.El +.Pp +.It Dv gpio.toggle(gpiodev, pin) +Toggle pin state. +.Pp +.It Dv gpio.attach(gpiodev, driver, offset, mask [, flags]) +Attach a device driver with offset, mask, and optional flags at a pin. +.El +.Sh EXAMPLES +The following example code opens +.Pa /dev/gpio0 +and prints all pin values: +.Bd -literal +local gpio = require 'gpio' + +gpiodev = gpio.open('/dev/gpio0') + +local npins = gpiodev:info() + +for n = 1, npins do + print('pin ' .. n .. ': ' .. gpiodev:read(n - 1)) +end +.Ed +.Sh SEE ALSO +.Xr lua 1 , +.Xr luac 1 , +.Xr intro 3lua , +.Xr gpio 4 +.Sh HISTORY +A +.Nm +manual appeared in +.Nx 7.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +Lua binding was written by +.An Marc Balmer Aq Mt mbalmer@NetBSD.org . diff --git a/static/netbsd/man3lua/intro.3lua b/static/netbsd/man3lua/intro.3lua new file mode 100644 index 00000000..6e72ca27 --- /dev/null +++ b/static/netbsd/man3lua/intro.3lua @@ -0,0 +1,85 @@ +.\" $NetBSD: intro.3lua,v 1.10 2022/11/23 19:20:34 christos Exp $ +.\" +.\" Copyright (c) 2013, 2016 Marc Balmer . +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" +.Dd November 23, 2022 +.Dt INTRO 3lua +.Os +.Sh NAME +.Nm intro +.Nd introduction to the Lua modules +.Sh DESCRIPTION +This section provides an overview of the Lua modules, their +functions, error returns and other common definitions and concepts. +.Pp +The Lua modules provided by +.Nx +are: +.Pp +.Bl -tag -width syslog -compact +.It Em bozohttpd +Access +.Xr libbozohttpd 3 +functionality. +.It Em gpio +Access +.Xr gpio 4 +pins. +.It Em libm +Access +.Xr math 3 +functionality. +.It Em netpgp +Access +.Xr libnetpgp 3 +functionality. +.It Em sqlite +Access +.Xr sqlite3 1 +files. +.It Em syslog +Access +.Xr syslog 3 +functionality. +.El +.Sh SEE ALSO +.Xr lua 1 , +.Xr luac 1 , +.Xr bozohttpd 3lua , +.Xr gpio 3lua , +.Xr libm 3lua , +.Xr netpgp 3lua , +.Xr sqlite 3lua , +.Xr syslog 3lua , +.Xr intro 9lua +.Sh HISTORY +An +.Nm +manual for Lua modules appeared in +.Nx 7.0 . diff --git a/static/netbsd/man3lua/libm.3lua b/static/netbsd/man3lua/libm.3lua new file mode 100644 index 00000000..093b4c4b --- /dev/null +++ b/static/netbsd/man3lua/libm.3lua @@ -0,0 +1,151 @@ +.\" +.\" Copyright (c) 2022 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Phillip Rulon +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 2, 2022 +.Dt LIBM 3lua +.Os +.Sh NAME +.Nm libm +.Nd Lua interface to the +.Xr math 3 +library +.Sh SYNOPSIS +.Cd "local lm = require 'libm'" +.Sh DESCRIPTION +The +.Nm +Lua binding provides access to the +.Xr math 3 +library. If these functions are given an argument outside the domain +of the function the return value will be NaN. This can be checked with +lm.isnan(). +.Pp +Many of these functions have native equivalents in the Lua math library. +Others, like +.Xr round 3 , +.Xr cbrt 3 , +and the hyperbolic trigonometry functions, are not provided without an +auxiliary module. The functions that are redundant are provided for +completeness. +.Pp +Since these functions map quite closely to the functions in the math +library, detailed information about their behavior can be found in the +man pages for each function in section 3 of the manual. +.Ss List of Functions +.Bl -column "copysignX" "gammaX3XX" "inverse trigonometric funcX" +.It Sy Name Ta Sy Man page Ta Sy Description Ta +.It lm.acos Ta Xr acos 3 Ta inverse trigonometric function Ta +.It lm.acosh Ta Xr acosh 3 Ta inverse hyperbolic function Ta +.It lm.asin Ta Xr asin 3 Ta inverse trigonometric function Ta +.It lm.asinh Ta Xr asinh 3 Ta inverse hyperbolic function Ta +.It lm.atan Ta Xr atan 3 Ta inverse trigonometric function Ta +.It lm.atanh Ta Xr atanh 3 Ta inverse hyperbolic function Ta +.It lm.atan2 Ta Xr atan2 3 Ta inverse trigonometric function Ta +.It lm.cbrt Ta Xr sqrt 3 Ta cube root Ta +.It lm.ceil Ta Xr ceil 3 Ta integer no less than Ta +.It lm.copysign Ta Xr copysign 3 Ta copy sign bit Ta +.It lm.cos Ta Xr cos 3 Ta trigonometric function Ta +.It lm.cosh Ta Xr cosh 3 Ta hyperbolic function Ta +.It lm.erf Ta Xr erf 3 Ta error function Ta +.It lm.erfc Ta Xr erf 3 Ta complementary error function Ta +.It lm.exp Ta Xr exp 3 Ta base e exponential Ta +.It lm.exp2 Ta Xr exp2 3 Ta base 2 exponential Ta +.It lm.expm1 Ta Xr expm1 3 Ta exp(x)\-1 Ta +.It lm.fabs Ta Xr fabs 3 Ta absolute value Ta +.It lm.fdim Ta Xr erf 3 Ta positive difference Ta +.It lm.finite Ta Xr finite 3 Ta test for finity Ta +.It lm.floor Ta Xr floor 3 Ta integer no greater than Ta +.It lm.fma Ta Xr fmod 3 Ta fused multiply-add Ta +.It lm.fmax Ta Xr fmax 3 Ta maximum Ta +.It lm.fmin Ta Xr fmin 3 Ta minimum Ta +.It lm.fmod Ta Xr fmod 3 Ta remainder Ta +.It lm.hypot Ta Xr hypot 3 Ta Euclidean distance Ta +.It lm.ilogb Ta Xr ilogb 3 Ta exponent extraction Ta +.It lm.isinf Ta Xr isinf 3 Ta test for infinity Ta +.It lm.isnan Ta Xr isnan 3 Ta test for not-a-number Ta +.It lm.j0 Ta Xr j0 3 Ta Bessel function Ta +.It lm.j1 Ta Xr j0 3 Ta Bessel function Ta +.It lm.jn Ta Xr j0 3 Ta Bessel function Ta +.It lm.lgamma Ta Xr lgamma 3 Ta log gamma function Ta +.It lm.log Ta Xr log 3 Ta natural logarithm Ta +.It lm.log10 Ta Xr log 3 Ta logarithm to base 10 Ta +.It lm.log1p Ta Xr log 3 Ta log(1+x) Ta +.It lm.nan Ta Xr nan 3 Ta return quiet \*(Na Ta +.It lm.nextafter Ta Xr nextafter 3 Ta next representable number Ta +.It lm.pow Ta Xr pow 3 Ta exponential x**y Ta +.It lm.remainder Ta Xr remainder 3 Ta remainder Ta +.It lm.rint Ta Xr rint 3 Ta round to nearest integer Ta +.It lm.scalbn Ta Xr scalbn 3 Ta exponent adjustment Ta +.It lm.sin Ta Xr sin 3 Ta trigonometric function Ta +.It lm.sinh Ta Xr sinh 3 Ta hyperbolic function Ta +.It lm.sqrt Ta Xr sqrt 3 Ta square root Ta +.It lm.tan Ta Xr tan 3 Ta trigonometric function Ta +.It lm.tanh Ta Xr tanh 3 Ta hyperbolic function Ta +.It lm.trunc Ta Xr trunc 3 Ta nearest integral value Ta +.It lm.y0 Ta Xr j0 3 Ta Bessel function Ta +.It lm.y1 Ta Xr j0 3 Ta Bessel function Ta +.It lm.yn Ta Xr j0 3 Ta Bessel function Ta +.El +.Ss List of Defined Values +.Bl -column "M_2_SQRTPIXX" "1.12837916709551257390XX" "2/sqrt(pi)XXX" +.It Sy Name Ta Sy Value Ta Sy Description +.It lm.M_E 2.7182818284590452354 e +.It lm.M_LOG2E 1.4426950408889634074 log 2e +.It lm.M_LOG10E 0.43429448190325182765 log 10e +.It lm.M_LN2 0.69314718055994530942 log e2 +.It lm.M_LN10 2.30258509299404568402 log e10 +.It lm.M_PI 3.14159265358979323846 pi +.It lm.M_PI_2 1.57079632679489661923 pi/2 +.It lm.M_PI_4 0.78539816339744830962 pi/4 +.It lm.M_1_PI 0.31830988618379067154 1/pi +.It lm.M_2_PI 0.63661977236758134308 2/pi +.It lm.M_2_SQRTPI 1.12837916709551257390 2/sqrt(pi) +.It lm.M_SQRT2 1.41421356237309504880 sqrt(2) +.It lm.M_SQRT1_2 0.70710678118654752440 1/sqrt(2) +.El +.Sh NOTES +The functions finite, isfinite, isinf, and isnan return integers in +the math library, the results are converted to lua boolean values by +this interface. +.Sh BUGS +The single precision float, and long double data types, implemented in +several of the libm routines, are not supported by this interface. +.Pp +The math library has a long development history, but if a bug exists +there, it will certainly exist in this interface as well. +.Sh HISTORY +A +.Nm +Lua binding appeared in +.Nx 9.4 . +.Sh AUTHORS +.An -nosplit +The +.Nm +Lua binding was written by +.An Phillip Rulon . diff --git a/static/netbsd/man3lua/netpgp.3lua b/static/netbsd/man3lua/netpgp.3lua new file mode 100644 index 00000000..0bea23c2 --- /dev/null +++ b/static/netbsd/man3lua/netpgp.3lua @@ -0,0 +1,89 @@ +.\" $NetBSD: netpgp.3lua,v 1.4 2023/03/01 21:07:21 nia Exp $ +.\" +.\" Copyright (c) 2018 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 30, 2018 +.Dt NETPGP 3lua +.Os +.Sh NAME +.Nm netpgp +.Nd provides access to +.Xr libnetpgp 3 +functionality from Lua +.Sh SYNOPSIS +.Cd "local netpgp = require 'netpgp'" +.Pp +.Bl -tag -width XXXX -compact +.It Dv instance = netpgp.new() +.It Dv netpgp.homedir(instance, homedir) +.It Dv netpgp.init(instance) +.It Dv netpgp.encrypt_file(instance, file, output, armour) +.It Dv netpgp.decrypt_file(instance, file, output, armour) +.It Dv netpgp.sign_file(instance, file, output, armour, detached) +.It Dv netpgp.clearsign_file(instance, file, output, armour, detached) +.It Dv netpgp.verify_file(instance, file, armour) +.It Dv netpgp.verify_cat_file(instance, file, output, armour) +.It Dv netpgp.list_packets(instance, file, armour) +.It Dv netpgp.setvar(instance, name, value) +.It Dv netpgp.getvar(instance, name, value) +.El +.Sh DESCRIPTION +The +.Nm +Lua binding provides access to functionality available in +.Xr libnetpgp 3 . +.Sh EXAMPLES +The following example code demonstrates the process of encrypting, decrypting, +signing, and verifying a file, in a single script. +.Bd -literal +local netpgp = require 'netpgp' +btc = netpgp.new() +netpgp.setvar(btc, "need seckey", 1) +netpgp.init(btc) + +netpgp.encrypt_file(btc, "scratch", "scratch.gpg", "armoured") +netpgp.decrypt_file(btc, "scratch.gpg", "itch", "armoured") +netpgp.sign_file(btc, "scratch", "scratch.asc", "armoured", "detached") +netpgp.verify_file(btc, "scratch.asc", "armoured") +.Ed +.Sh SEE ALSO +.Xr lua 1 , +.Xr luac 1 , +.Xr libnetpgp 3 , +.Xr intro 3lua +.Sh HISTORY +.Nm +Lua binding first appeared in +.Nx 9.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +Lua binding was written by +.An Alistair Crooks . +.Sh BUGS +This binding currently only provides a subset of the functionality available in +.Xr libnetpgp 3 . +This manual needs more description of the available functionality. diff --git a/static/netbsd/man3lua/sqlite.3lua b/static/netbsd/man3lua/sqlite.3lua new file mode 100644 index 00000000..cfaf9ece --- /dev/null +++ b/static/netbsd/man3lua/sqlite.3lua @@ -0,0 +1,334 @@ +.\" $NetBSD: sqlite.3lua,v 1.4 2014/01/06 09:30:26 wiz Exp $ +.\" +.\" Copyright (c) 2013 Marc Balmer . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" +.Dd October 28, 2013 +.Dt SQLITE 3lua +.Os +.Sh NAME +.Nm sqlite +.Nd access +SQLite3 files from Lua +.Sh SYNOPSIS +.Cd "local sqlite = require 'sqlite'" +.Pp +.Bl -tag -width XXXX -compact +.\" +.\" GENERAL FUNCTIONS +.\" +.It Dv err = sqlite.initialize() +.It Dv sqlite.shutdown() +.It Dv db, err = sqlite.open(file [, flags]) +.It Dv version = sqlite.libversion() +.It Dv version = sqlite.libversion_number() +.It Dv id = sqlite.sourceid() +.\" +.\" DATABASE FUNCTIONS +.\" +.Pp +.It Dv err = sqlite.close(db) +.It Dv stmt, err = sqlite.prepare(db, sql) +.It Dv err = sqlite.exec(db, sql) +.It Dv err = sqlite.errcode(db) +.It Dv msg = sqlite.errmsg(db) +.It Dv res = sqlite.get_autocommit(db) +.It Dv res = sqlite.changes(db) +.\" +.\" STATEMENT FUNCTIONS +.\" +.Pp +.It Dv err = sqlite.bind(stmt, pidx, value) +.It Dv count = sqlite.bind_parameter_count(stmt) +.It Dv pidx = sqlite.bind_parameter_index(stmt, name) +.It Dv name = sqlite.bind_parameter_name(stmt, pidx) +.It Dv err = sqlite.step(stmt) +.It Dv value = sqlite.column(stmt, cidx) +.It Dv sqlite.reset(stmt) +.It Dv sqlite.clear_bindings(stmt) +.It Dv sqlite.finalize(stmt) +.It Dv name = sqlite.column_name(stmt, cidx) +.It Dv count = sqlite.column_count(stmt) +.El +.Sh DESCRIPTION +The +.Nm +Lua binding provides access to SQLite3 files. +.Sh GENERAL FUNCTIONS +.Bl -tag -width XXXX -compact +.It Dv err = sqlite.initialize() +Initialize the SQLite3 library. +Workstation applications using SQLite normally do not need to invoke this +function. +.Pp +.It Dv sqlite.shutdown() +Deallocate any resources that were allocated by +.Fn sqlite.initialize . +Workstation applications using SQLite normally do not need to invoke this +function. +.Pp +.It Dv db, err = sqlite.open(file [, flags]) +Open a database, optionally passing flags. +When called without flags, the database will be opened for reading and +writing and it will be created if it does not yet exist. +The following flags are defined: +.Pp +.Bl -tag -width XXXX -compact +.It Dv sqlite.OPEN_READONLY +The database is opened in read-only mode. +If the database does not already exist, an error is returned. +.Pp +.It Dv sqlite.OPEN_READWRITE +The database is opened for reading and writing if possible, or reading only if +the file is write protected by the operating system. +In either case the database must already exist, otherwise an error is returned. +.Pp +.It Dv sqlite.OPEN_CREATE +The database is opened for reading and writing, and is created if it does not +already exist. +.El +.Pp +.It Dv version = sqlite.libversion() +Return the SQLite3 library version number as a string. +.Pp +.It Dv version = sqlite.libversion_number() +Return the SQLite3 library version number as a number. +.Pp +.It Dv id = sqlite.sourceid() +Return the SQLite3 library source id as a string. +.El +.Sh DATABASE FUNCTIONS +Database functions operate on database objects returned by +.Fn sqlite.open . +.Pp +.Bl -tag -width XXXX -compact +.It Dv err = sqlite.close(db) +Close an open database. +Like with all remaining database functions, this function can also be called +using the Lua "colon" syntactic sugar as +.Em db:close() . +.Pp +.It Dv stmt, err = sqlite.prepare(db, sql) +Return a prepared statement. +.Pp +.It Dv err = sqlite.exec(db, sql) +Directly execute an SQL statement. +Be careful when creating SQL on the fly (SQL injection attacks). +.Pp +.It Dv err = sqlite.errcode(db) +Return the numeric error code. +.Pp +.It Dv msg = sqlite.errmsg(db) +Return the error message as a string. +.Pp +.It Dv res = sqlite.get_autocommit(db) +Return the autocommit flag. +.Pp +.It Dv res = sqlite.changes(db) +This function returns the number of database rows that were changed or inserted +or deleted by the most recently completed SQL statement on the database. +.El +.Sh STATEMENT FUNCTIONS +.Bl -tag -width XXXX -compact +.It Dv err = sqlite.bind(stmt, pidx, value) +Bind +.Ar value +to the parameter +.Ar pidx +in the prepared statement +.Ar stmt . +.Pp +.It Dv count = sqlite.bind_parameter_count(stmt) +Return the number of parameters in the prepared statement +.Ar stmt . +.Pp +.It Dv pidx = sqlite.bind_parameter_index(stmt, name) +Return the parameter index for +.Ar name +in the prepared statement +.Ar stmt . +.Pp +.It Dv name = sqlite.bind_parameter_name(stmt, pidx) +Return the parameter name for the parameter index +.Ar pidx +in the prepared statement +.Ar stmt . +.Pp +.It Dv err = sqlite.step(stmt) +Execute prepared statement +.Ar stmt . +.Pp +.It Dv value = sqlite.column(stmt, cidx) +Return the value at column +.Ar cidx +in the prepared statement +.Ar stmt . +.Pp +.It Dv sqlite.reset(stmt) +The +.Fn sqlite.reset +function is called to reset a prepared statement object back +to its initial state, ready to be re-executed. +.Pp +.It Dv sqlite.clear_bindings(stmt) +Contrary to the intuition of many, +.Fn sqlite.reset +does not reset the bindings on a prepared statement. +Use this routine to reset all host parameters to +.Dv NULL . +.Pp +.It Dv sqlite.finalize(stmt) +The +.Fn sqlite.finalize +function is called to delete a prepared statement. +.Pp +.It Dv name = sqlite.column_name(stmt, cidx) +Return the name assigned to a particular column in the result set of a SELECT +statement. +.Pp +.It Dv count = sqlite.column_count(stmt) +Return the number of columns in the result set returned by the prepared +statement +.Ar stmt . +This routine returns 0 if +.Ar stmt +is an SQL statement that does not return data (for example an UPDATE). +.El +.Sh ERROR CODES +Most functions return an error code, the following error codes +are defined: +.Pp +.Bl -tag -width XXXX -compact +.It Dv sqlite.OK +Successful result. +.Pp +.It Dv sqlite.ERROR +SQL error or missing database. +.Pp +.It Dv sqlite.INTERNAL +Internal logic error in SQLite. +.Pp +.It Dv sqlite.PERM +Access permission denied. +.Pp +.It Dv sqlite.ABORT +Callback routine requested an abort. +.Pp +.It Dv sqlite.BUSY +The database file is locked. +.Pp +.It Dv sqlite.LOCKED +A table in the database is locked. +.Pp +.It Dv sqlite.NOMEM +Out of memory. +.Pp +.It Dv sqlite.READONLY +Attempt to write a readonly database. +.Pp +.It Dv sqlite.INTERRUPT +Operation terminated by +.Fn sqlite3_interrupt . +.Pp +.It Dv sqlite.IOERR +Some kind of disk I/O error occurred. +.Pp +.It Dv sqlite.CORRUPT +The database disk image is malformed. +.Pp +.It Dv sqlite.NOTFOUND +Unknown opcode in +.Fn sqlite3_file_control . +.Pp +.It Dv sqlite.FULL +Insertion failed because database is full. +.Pp +.It Dv sqlite.CANTOPEN +Unable to open the database file. +.Pp +.It Dv sqlite.PROTOCOL +Database lock protocol error. +.Pp +.It Dv sqlite.EMPTY +Database is empty. +.Pp +.It Dv sqlite.SCHEMA +The database schema changed. +.Pp +.It Dv sqlite.TOOBIG +String or BLOB exceeds size limit. +.Pp +.It Dv sqlite.CONSTRAINT +Abort due to constraint violation. +.Pp +.It Dv sqlite.MISMATCH +Data type mismatch. +.Pp +.It Dv sqlite.MISUSE +Library used incorrectly. +.Pp +.It Dv sqlite.NOLFS +Uses OS features not supported on host. +.Pp +.It Dv sqlite.AUTH +Authorization denied. +.Pp +.It Dv sqlite.FORMAT +Auxiliary database format error. +.Pp +.It Dv sqlite.RANGE +2nd parameter to +.Fn sqlite.bind +out of range. +.Pp +.It Dv sqlite.NOTADB +File opened that is not a database file. +.Pp +.It Dv sqlite.ROW +.Fn sqlite.step +has another row ready. +.Pp +.It Dv sqlite.DONE +.Fn sqlite.step +has finished executing. +.El +.Sh SEE ALSO +.Xr lua 1 , +.Xr luac 1 , +.Xr sqlite3 1 , +.Xr intro 3lua +.Sh HISTORY +An +.Nm +manual appeared in +.Nx 7.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +Lua binding was written by +.An Marc Balmer Aq Mt mbalmer@NetBSD.org . diff --git a/static/netbsd/man3lua/syslog.3lua b/static/netbsd/man3lua/syslog.3lua new file mode 100644 index 00000000..47fef2e5 --- /dev/null +++ b/static/netbsd/man3lua/syslog.3lua @@ -0,0 +1,217 @@ +.\" $NetBSD: syslog.3lua,v 1.4 2022/10/15 21:53:21 andvar Exp $ +.\" +.\" Copyright (c) 2013, 2014 Marc Balmer . +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" +.Dd January 7, 2014 +.Dt SYSLOG 3lua +.Os +.Sh NAME +.Nm syslog +.Nd access +.Xr syslog 3 +functionality from Lua +.Sh SYNOPSIS +.Cd "local syslog = require 'syslog'" +.Pp +.Bl -tag -width XXXX -compact +.It Dv syslog.openlog(ident, logopt, facility) +.It Dv syslog.syslog(priority, message) +.It Dv syslog.closelog() +.It Dv oldmask = syslog.setlogmask(maskpri) +.El +.Sh DESCRIPTION +The +.Nm +Lua binding provides access to the +.Xr syslog 3 +functionality. +.Pp +.Bl -tag -width XXXX -compact +.Pp +.It Dv syslog.openlog(ident, logopt, facility) +The syslog.openlog() function provides for more specialized processing of the +messages sent by syslog.syslog(). +The parameter +.Ar ident +is a string that will be prepended to every message. +The +.Ar logopt +argument is a bit field specifying logging options, which is formed +by adding one or more of the following values: +.Pp +.Bl -tag -width XXXX -compact +.It Dv syslog.LOG_CONS +If +.Fn syslog.syslog +cannot pass the message to syslogd(8) it will attempt to write the +message to the console (``/dev/console''). +.Pp +.It Dv syslog.LOG_NDELAY +Open the connection to syslogd(8) immediately. +Normally the open is delayed until the first message is logged. +Useful for programs that need to manage the order in which file descriptors are +allocated. +.Pp +.It Dv syslog.LOG_PERROR +Write the message to standard error output as well to the system log. +.Pp +.It Dv syslog.LOG_PID +Log the process id with each message: useful for identifying instantiations of +daemons. +(This PID is placed within brackets between the ident and the message.) +.El +.Pp +The facility parameter encodes a default facility to be assigned to all +messages that do not have an explicit facility encoded: +.Pp +.Bl -tag -width XXXX -compact +.It Dv syslog.LOG_AUTH +The authorization system: login(1), su(1), getty(8), etc. +.Pp +.It Dv syslog.LOG_AUTHPRIV +The same as LOG_AUTH, but logged to a file readable only by selected +individuals. +.Pp +.It Dv syslog.LOG_CRON +The cron daemon: cron(8). +.Pp +.It Dv syslog.LOG_DAEMON +System daemons, such as routed(8), that are not provided for explicitly by other +facilities. +.Pp +.It Dv syslog.LOG_FTP +The file transfer protocol daemon: ftpd(8). +.Pp +.It Dv syslog.LOG_KERN +Messages generated by the kernel. +These cannot be generated by any user processes. +.Pp +.It Dv syslog.LOG_LPR +The line printer spooling system: lpr(1), lpc(8), lpd(8), etc. +.Pp +.It Dv syslog.LOG_MAIL +The mail system. +.Pp +.It Dv syslog.LOG_NEWS +The network news system. +.Pp +.It Dv syslog.LOG_SYSLOG +Messages generated internally by syslogd(8). +.Pp +.It Dv syslog.LOG_USER +Messages generated by random user processes. +This is the default facility identifier if none is specified. +.Pp +.It Dv syslog.LOG_UUCP +The uucp system. +.Pp +.It Dv syslog.LOG_LOCAL0 +Reserved for local use. +Similarly for syslog.LOG_LOCAL1 through syslog.LOG_LOCAL7 +.El +.Pp +.It Dv syslog.syslog(priority, message) +The +.Fn syslog +function writes +.Ar message +to the system message logger. +The message is then written to the system console, log files, logged-in +users, or forwarded to other machines as appropriate (see syslogd(8)). +.Pp +The +.Ar message +is tagged with +.Ar priority . +Priorities are encoded as a +.Ar facility +and a +.Ar level . +The facility describes the part of the system generating the message. +The level is selected from the following ordered (high to low) list: +.Pp +.Bl -tag -width XXXX -compact +.It Dv syslog.LOG_EMERG +A panic condition. +This is normally broadcast to all users. +.Pp +.It Dv syslog.LOG_ALERT +A condition that should be corrected immediately, such as a corrupted system +database. +.Pp +.It Dv syslog.LOG_CRIT +Critical conditions, e.g., hard device errors. +.Pp +.It Dv syslog.LOG_ERR +Errors. +.Pp +.It Dv syslog.LOG_WARNING +Warning messages. +.Pp +.It Dv syslog.LOG_NOTICE +Conditions that are not error conditions, but should possibly be handled +specially. +.Pp +.It Dv syslog.LOG_INFO +Informational messages. +.Pp +.It Dv syslog.LOG_DEBUG +Messages that contain information normally of use only when debugging a program. +.El +.Pp +.It Dv syslog.closelog() +The +.Fn syslog.closelog +function can be used to close the log file. +.Pp +.It Dv oldmask = syslog.setlogmask(maskpri) +The +.Fn setlogmask +function sets the log priority mask to maskpri and returns the previous mask. +Calls to +.Fn syslog +with a priority not set in maskpri are rejected. +.El +.Sh SEE ALSO +.Xr lua 1 , +.Xr luac 1 , +.Xr syslog 3 , +.Xr intro 3lua , +.Xr syslogd 8 +.Sh HISTORY +A +.Nm +Lua binding manual appeared in +.Nx 7.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +Lua binding was written by +.An Marc Balmer Aq Mt mbalmer@NetBSD.org . diff --git a/static/netbsd/man4/Makefile b/static/netbsd/man4/Makefile new file mode 100644 index 00000000..6f8d3b57 --- /dev/null +++ b/static/netbsd/man4/Makefile @@ -0,0 +1,36 @@ +MAN = $(wildcard *.4) +SUBDIRS = man4.acorn32 \ + man4.alpha \ + man4.amiga \ + man4.arc \ + man4.atari \ + man4.cobalt \ + man4.dreamcast \ + man4.emips \ + man4.evbarm \ + man4.evbmips \ + man4.evbppc \ + man4.hp300 \ + man4.hpcarm \ + man4.hpcmips \ + man4.hpcsh \ + man4.hppa \ + man4.i386 \ + man4.luna68k \ + man4.mac68k \ + man4.macppc \ + man4.mvme68k \ + man4.pmax \ + man4.prep \ + man4.sandpoint \ + man4.sgimips \ + man4.sparc \ + man4.sparc64 \ + man4.sun2 \ + man4.sun3 \ + man4.vax \ + man4.x68k \ + man4.x86 + +include ../../mandoc.mk + diff --git a/static/netbsd/man4/aac.4 b/static/netbsd/man4/aac.4 new file mode 100644 index 00000000..9d8a8674 --- /dev/null +++ b/static/netbsd/man4/aac.4 @@ -0,0 +1,105 @@ +.\" $NetBSD: aac.4,v 1.15 2016/06/01 01:33:10 pgoyette Exp $ +.\" +.\" Copyright (c) 2000 Scott Long +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" from FreeBSD: aac.4,v 1.18 2001/09/27 21:52:42 scottl Exp +.Dd June 1, 2016 +.Dt AAC 4 +.Os +.Sh NAME +.Nm aac +.Nd Adaptec AdvancedRAID Controller driver +.Sh SYNOPSIS +.Cd "aac* at pci? dev ? function ?" +.Cd "ld* at aac? unit ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the Adaptec AAC family of SCSI +and SATA RAID controllers. +These controllers support RAID 0, 1, 5, 10, and volume sets. +They have four channels in the add-in version +or 1-2 channels in the motherboard integrated version, +and are most often found rebadged by Dell, Hewlett-Packard or IBM. +Supported controllers include: +.Pp +.Bl -bullet -compact +.It +Adaptec AAC-364 +.It +Adaptec SCSI RAID 2120S +.It +Adaptec SCSI RAID 2200S +.It +Adaptec SATA RAID 2410SA +.It +Adaptec SATA RAID 3405 +.It +Adaptec SCSI RAID 5400S +.It +Dell PERC 2/Si +.It +Dell PERC 2/QC +.It +Dell PERC 3/Di +.It +Dell PERC 3/Si +.It +Dell PERC 320/DC +.It +Dell CERC SATA RAID 1.5/6ch +.It +HP NetRAID 4M +.It +HP ML110 G2 (Adaptec SATA RAID 2610SA) +.It +IBM ServeRAID 8k +.El +.Pp +Access to RAID containers is available via the +.Nm ld +device driver. +Individual drives cannot be accessed unless they are part of a container +or volume set, and non-fixed disks cannot be accessed. +Containers can be configured by using the on-board BIOS utility of +the card. +.Sh DIAGNOSTICS +The adapter can send status and alert messages asynchronously to the driver. +These messages are printed on the system console. +.Sh SEE ALSO +.Xr intro 4 , +.Xr ld 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 1.6 , +and was based on the +.Fx +driver of the same name. +.Sh BUGS +This driver is not compatible with controllers that have version 1.x firmware. +The firmware version is the same as the kernel version printed in the BIOS +POST and driver attach messages. diff --git a/static/netbsd/man4/ac97.4 b/static/netbsd/man4/ac97.4 new file mode 100644 index 00000000..b8c5fe60 --- /dev/null +++ b/static/netbsd/man4/ac97.4 @@ -0,0 +1,78 @@ +.\" $NetBSD: ac97.4,v 1.2 2005/06/22 04:19:09 kent Exp $ +.\" $OpenBSD: ac97.4,v 1.12 2003/02/18 07:54:53 jmc Exp $ +.\" +.\" Copyright (c) 1999, 2000 Constantine Sapuntzakis +.\" +.\" Author: Constantine Sapuntzakis +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of the author may not be used to endorse or promote +.\" products derived from this software without specific prior written +.\" permission. +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS +.\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE +.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +.\" OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +.\" BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +.\" LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE +.\" USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH +.\" DAMAGE. +.\" +.Dd October 7, 1999 +.Dt AC97 4 +.Os +.Sh NAME +.Nm ac97 +.Nd generic AC97 codec driver +.Sh DESCRIPTION +AC97 codecs contain the analog-to-digital (A/D), digital-to-analog +(D/A), and mixing circuitry of many modern sound cards. +AC97 codecs, for the most part, do not talk to host busses like the PCI bus +directly. +Instead, they communicate through an interface chip, called +the host controller. +The Ensoniq AudioPCI 97 (see +.Xr eap 4 ) +is an example of such a host controller. +.Pp +Unlike many drivers, the +.Nm +driver does not appear in the configuration file. +Instead, the driver is automatically attached by the drivers that require it. +.Sh SEE ALSO +.Xr auacer 4 , +.Xr auich 4 , +.Xr auixp 4 , +.Xr autri 4 , +.Xr auvia 4 , +.Xr clcs 4 , +.Xr clct 4 , +.Xr eap 4 , +.Xr emuxki 4 , +.Xr esa 4 , +.Xr esm 4 , +.Xr fms 4 , +.Xr neo 4 , +.\" .Xr repulse 4 , +.Xr yds 4 +.Sh BUGS +The +.Nm +driver does not keep track of the current user settings and instead +relies on the hardware to do this. +.Pp +The +.Nm +driver could do more to detect mixer channels that don't work and cull +them from the list. diff --git a/static/netbsd/man4/acardide.4 b/static/netbsd/man4/acardide.4 new file mode 100644 index 00000000..10e42fd2 --- /dev/null +++ b/static/netbsd/man4/acardide.4 @@ -0,0 +1,69 @@ +.\" $NetBSD: acardide.4,v 1.4 2009/10/19 18:41:08 bouyer Exp $ +.\" +.\" Copyright (c) 2003 Manuel Bouyer. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 24, 2003 +.Dt ACARDIDE 4 +.Os +.Sh NAME +.Nm acardide +.Nd acard IDE disk controllers driver +.Sh SYNOPSIS +.Cd "acardide* at pci? dev ? function ? flags 0x0000" +.Sh DESCRIPTION +The +.Nm +driver supports the following IDE controllers: +.Bl -item -offset indent +.It +Acard ATP850U Ultra33 +.It +Acard ATP860 Ultra66 +.It +Acard ATP860-A Ultra66 +.It +Acard ATP865-A Ultra100 +.El +.Pp +It provides the interface with the hardware for the +.Xr ata 4 +driver. +.Pp +The 0x0002 flag forces the +.Nm +driver to disable DMA on chipsets for which DMA would normally be +enabled. +This can be used as a debugging aid, or to work around +problems where the IDE controller is wired up to the system incorrectly. +.Sh SEE ALSO +.Xr ata 4 , +.Xr atapi 4 , +.Xr intro 4 , +.Xr pci 4 , +.Xr pciide 4 , +.Xr wd 4 , +.Xr wdc 4 +.Sh BUGS +The timings used for the PIO and DMA modes for controllers listed above +are for a PCI bus running at 30 or 33 MHz. +This driver may not work properly on overclocked systems. diff --git a/static/netbsd/man4/aceride.4 b/static/netbsd/man4/aceride.4 new file mode 100644 index 00000000..4dd68a3d --- /dev/null +++ b/static/netbsd/man4/aceride.4 @@ -0,0 +1,58 @@ +.\" $NetBSD: aceride.4,v 1.3 2009/10/19 18:41:08 bouyer Exp $ +.\" +.\" Copyright (c) 2003 Manuel Bouyer. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 8, 2003 +.Dt ACERIDE 4 +.Os +.Sh NAME +.Nm aceride +.Nd PCI IDE disk controllers driver +.Sh SYNOPSIS +.Cd "aceride* at pci? dev ? function ? flags 0x0000" +.Sh DESCRIPTION +The +.Nm +driver supports the Acer Labs M5229 IDE controllers, and provides the +interface with the hardware for the +.Xr ata 4 +driver. +.Pp +The 0x0002 flag forces the +.Nm +driver to disable DMA on chipsets for which DMA would normally be +enabled. +This can be used as a debugging aid, or to work around +problems where the IDE controller is wired up to the system incorrectly. +.Sh SEE ALSO +.Xr ata 4 , +.Xr atapi 4 , +.Xr intro 4 , +.Xr pci 4 , +.Xr pciide 4 , +.Xr wd 4 , +.Xr wdc 4 +.Sh BUGS +The timings used for the PIO and DMA modes for controllers listed above +are for a PCI bus running at 30 or 33 MHz. +This driver may not work properly on overclocked systems. diff --git a/static/netbsd/man4/acphy.4 b/static/netbsd/man4/acphy.4 new file mode 100644 index 00000000..6ce7e010 --- /dev/null +++ b/static/netbsd/man4/acphy.4 @@ -0,0 +1,58 @@ +.\" $NetBSD: acphy.4,v 1.4 2018/08/31 18:27:47 sevan Exp $ +.\" +.\" Copyright 2001 Wasabi Systems, Inc. +.\" All rights reserved. +.\" +.\" Written by Jason R. Thorpe for Wasabi Systems, Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed for the NetBSD Project by +.\" Wasabi Systems, Inc. +.\" 4. The name of Wasabi Systems, Inc. may not be used to endorse +.\" or promote products derived from this software without specific prior +.\" written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL WASABI SYSTEMS, INC +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 31, 2018 +.Dt ACPHY 4 +.Os +.Sh NAME +.Nm acphy +.Nd "Driver for Altima AC101, AC101L and AMD Am79c874 10/100 Ethernet PHYs" +.Sh SYNOPSIS +.Cd "acphy* at mii? phy ?" +.Sh DESCRIPTION +The +.Nm +driver supports the Altima AC101, AC101L and AMD Am79c874 NetPHY-1LP +10/100 Ethernet PHYs. +These PHYs are often found on low-power Ethernet interfaces, such as MiniPCI +interfaces found in laptops and embedded systems. +.Pp +The AMD 79c874 is a work-alike (most likely an OEM of the core) of the +Altima part. +.Sh SEE ALSO +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr mii 4 , +.Xr ifconfig 8 diff --git a/static/netbsd/man4/acpi.4 b/static/netbsd/man4/acpi.4 new file mode 100644 index 00000000..8e07254f --- /dev/null +++ b/static/netbsd/man4/acpi.4 @@ -0,0 +1,573 @@ +.\" $NetBSD: acpi.4,v 1.89 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 2002, 2004, 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 5, 2020 +.Dt ACPI 4 +.Os +.Sh NAME +.Nm acpi +.Nd Advanced Configuration and Power Interface +.Sh SYNOPSIS +.Cd acpi0 at mainbus0 +.Pp +.Cd options ACPI_DEBUG +.Cd options ACPIVERBOSE +.Cd options ACPI_ACTIVATE_DEV +.Cd options ACPI_DSDT_OVERRIDE +.Cd options ACPI_DSDT_FILE="" +.Cd options ACPI_BLACKLIST_YEAR=2000 +.Cd options ACPI__DIS_IS_BROKEN +.Sh DESCRIPTION +.Nx +provides machine-independent bus support for +Advanced Configuration and Power Interface (ACPI) +devices and includes several ACPI device drivers. +.Pp +The +.Nx +implementation of ACPI integrates Intel's ACPI Component Architecture +(ACPI-CA) for the OS-independent part. +The ACPI-CA provides OS-neutral ACPI functionalities such as ACPI BIOS +table support, +an ACPI event framework and an ACPI Machine Language (AML) interpreter. +.Pp +Options: +.Bl -tag -width ACPI_DSDT_FILE__filename_XX -offset 3n +.It Dv ACPI_DEBUG +Enable various debug facilities. +.It Dv ACPIVERBOSE +Enable verbose debug messages. +.It Dv ACPI_ACTIVATE_DEV +Determine if the ACPI driver should attempt to activate inactive devices. +The default is off. +.It Dv ACPI_DSDT_OVERRIDE +Force a given Differentiated System Description Table (DSDT) +instead of the version supplied by the BIOS. +Use +.Dv ACPI_DSDT_FILE +to specify a DSDT. +.It Dv ACPI_DSDT_FILE="filename" +If +.Dv ACPI_DSDT_FILE +is not specified, default to +.Dq dsdt.hex +in the build directory. +.It Dv ACPI_BLACKLIST_YEAR=2000 +Do not use ACPI with any BIOS made on or before the specified year. +.It Dv ACPI__DIS_IS_BROKEN +Do not call the ACPI "_DIS" method to disable interrupt links. +This may be required on specific +.Dq nForce4 +chipset systems, which hard hang when this method is called instead of +having it fail gracefully. +.El +.Sh SYSCTL SUPPORT +The following +.Xr sysctl 8 +variables are provided by the +.Nm +driver: +.Bl -tag -width "123456" -offset indent +.It Ic hw.acpi.root +The address of the ACPI root pointer in system memory. +.It Ic hw.acpi.sleep.state +The system sleep state. +.It Ic hw.acpi.sleep.states +A list of system sleep states that the machine supports. +The possible values are: +.Pp +.Bl -tag -width XS1X -offset indent -compact +.It S0 +fully running +.It S1 +power on suspend (CPU and hard disks are off) +.It S2 +similar to S3, usually not implemented +.It S3 +suspend-to-RAM +.It S4 +suspend-to-disk (not supported on +.Nx ) +.It S5 +power off +.El +.It Ic hw.acpi.sleep.beep +A boolean variable that controls whether the PC +speaker beeps upon resume. +Only available on i386 and amd64 architectures. +.It Ic hw.acpi.sleep.vbios +Defines the handling of the graphics card on i386 and amd64 architectures. +The supported values are: +.Bl -tag -width '2' -offset 2n +.It 0 +No attempt to reset the VGA controller will be made. +.It 1 +Call the VGA BIOS when still in real mode. +This can result in direct reboots. +In that case, use +.Sq 2 +or +.Ic vbetool post +from the +.Pa pkgsrc/sysutils/vbetool +package. +.It 2 +Call the VGA BIOS using the in-kernel x86 emulator. +.El +.Pp +If the system has problems in resuming from the S3 +state, experimenting with different values may provide a solution. +.It Ic hw.acpi.stat.gpe +The number of dispatched General Purpose Events (GPEs). +.It Ic hw.acpi.stat.sci +The number of System Control Interrupts (SCIs). +See +.Xr acpiec 4 +for a brief description of both GPEs and SCIs. +.It Ic hw.acpi.stat.fixed +The number of +.Dq fixed events . +.It Ic hw.acpi.stat.method +The number of AML methods executed by the interpreter. +.It Ic hw.acpi.power +This read-only node describes the ACPI power state of devices. +The values range from D0 +.Pq Dq on +to D3 +.Pq Dq off . +.It Ic hw.acpi.wake +This node represents devices that can wake the system from the S3 or +S4 sleep state. +By default, +.Xr acpibut 4 , +.Xr acpilid 4 , +and +.Xr pckbd 4 +are allowed to wake the system, provided that the devices are present and +the firmware supports wake-up capabilities for the devices. +.El +.Sh SUPPORTED DEVICES +.Nx +ACPI supports several machine-dependent and machine-independent devices, +some specific to ACPI and some configured via it. +.Ss Machine-independent devices +.Bl -tag -width "thinkpad(4) " -offset indent -compact +.It Xr acpiacad 4 +ACPI AC adapters. +.It Xr acpibat 4 +ACPI batteries. +.It Xr acpibut 4 +ACPI power and sleep buttons. +.It Xr acpicpu 4 +ACPI processors. +.It Xr acpidalb 4 +ACPI direction application launch buttons. +.It Xr acpiec 4 +ACPI embedded controllers. +.It Xr acpiecdt 4 +ACPI Embedded Controller Boot Resource Table (ECDT). +.It Xr acpifan 4 +ACPI fans. +.It Xr acpilid 4 +ACPI lid switches. +.It Xr acpipmtr 4 +ACPI power meters. +.It Xr acpismbus 4 +ACPI SMBus via control method interface (CMI). +.It Xr acpitz 4 +ACPI thermal zones. +.It Xr acpivga 4 +ACPI display adapter and output devices. +.It Xr acpiwmi 4 +ACPI support for Windows Management Instrumentation. +.It Xr acpiwdrt 4 +ACPI watchdogs. +.It Xr aibs 4 +ASUSTeK voltage, temperature and fan sensors. +.It Xr asus 4 +ASUS laptop hotkeys. +.It Xr attimer 4 +AT Timer. +.It Xr com 4 +NS8250-, NS16450-, and NS16550-based serial ports. +.It Xr fdc 4 +Floppy disk controllers. +.It Xr fujbp 4 +Fujitsu brightness and pointer. +.It Xr fujhk 4 +Fujitsu hotkeys. +.It Xr hpacel 4 +HP 3D DriveGuard accelerometer. +.It Xr hpet 4 +High Precision Event Timer (HPET). +.It Xr hpqlb 4 +HP Quick Launch Buttons. +.It Xr joy 4 +Joystick/Game port interface. +.It Xr lpt 4 +Standard ISA parallel port interface. +.It Xr mpu 4 +Roland MPU-401 (compatible) MIDI UART. +.It Xr pcppi 4 +AT-style speaker sound. +.It Xr sdhc 4 +SD Host Controller. +.It Xr thinkpad 4 +IBM/Lenovo ThinkPad laptop device driver. +.It Xr ug 4 +Abit uGuru Hardware monitor. +.It Xr vald 4 +Toshiba Libretto device. +.It Xr valz 4 +Toshiba Dynabook device. +.It Xr wb 4 +Winbond W83L518D Integrated Media Reader. +.It Xr wss 4 +Windows Sound System-compatible sound cards +.It Xr ym 4 +Yamaha OPL3-SA2 and OPL3-SA3 audio device driver. +.El +.Ss i386-dependent devices +.Bl -tag -width "thinkpad(4) " -offset indent -compact +.It Xr pckbc 4 +PC keyboard controllers. +.It Xr sony 4 +Sony Miscellaneous Controller +.It Xr spic 4 +Sony programmable I/O controller. +.El +.Sh DEBUGGING +Although the situation has become better over the years, +ACPI is typically prone to various errors, +ranging from blatant flaws in the firmware to bugs in the implementation. +Before anything else, it is a good practice to upgrade the BIOS +to the latest version available from the vendor. +.Pp +To ease the task of diagnosing and fixing different problems, the +ACPICA reference implementation provides a rich +facility of different debugging methods. +In +.Nx +these are generally only available if the kernel has been compiled with the +.Dv ACPI_DEBUG +option. +.Ss Verbose messages +The +.Dv ACPIVERBOSE +compile time option enables some verbose +debug messages printed during the system startup. +In a +.Dv MODULAR +(see +.Xr options 4 ) +system, the information can be printed also at runtime, +regardless of the presence of +.Dv ACPIVERBOSE . +To print the messages, +.Xr modload 8 +the +.Ic acpiverbose +module using the option +.Fl b Cm dump=true . +.Ss Custom DSDT +ACPI interprets bytecode known as ACPI Machine Language (AML), +provided by the BIOS as a memory image during the system bootstrap. +Most of the AML relevant to +.Nm +is implemented in the so-called +Differentiated System Descriptor Table (DSDT). +.Nx +provides support for overriding the default DSDT supplied by the BIOS. +.Pp +The following steps can be used to override the DSDT: +.Bl -enum -offset indent +.It +Dump the raw DSDT with +.Xr acpidump 8 . +.It +Disassemble the table with +.Xr iasl 8 . +.It +Modify the disassembled table. +.It +Compile the table with +.Xr iasl 8 +using the option +.Fl tc . +.It +Either copy the +.Pq Pa *.hex +file to +.Bd -literal -offset indent +src/sys/dev/acpi/acpica/Osd/custom_dsdt.hex +.Ed +.Pp +or use the option +.Bd -literal -offset indent +ACPI_DSDT_FILE="/some/directory/custom_dsdt.hex" +.Ed +.Pp +in the kernel configuration file. +.It +Define +.Dv ACPI_DSDT_OVERRIDE +in the kernel configuration file and rebuild. +.El +.Ss Debugger +The ACPICA interpreter provides its own debugger for low-level debugging. +It can be used to display internal data structures and namespace objects, +and to debug the execution of control methods. +Single step and breakpoint functionality are available. +In +.Nx +this is integrated to the in-kernel +.Xr ddb 4 . +In order to enter the ACPICA debugger from +.Xr ddb 4 , +use the command +.Ic call +with the argument +.Ic acpi_osd_debugger . +.Ss Debug Output +.Nx +provides three +.Xr sysctl 8 +variables that control the debug output at runtime. +The +.Ic hw.acpi.debug.layer +variable limits the output to a specific ACPI layer and the +.Ic hw.acpi.debug.level +variable controls the debug level. +Both +.Xr sysctl 8 +variables are string literals. +The third variable is +.Ic hw.acpi.debug.object . +This is a boolean that controls whether debug messages internal to the +AML are enabled. +.Pp +For the first two variables, the possible values are: +.Bl -column -offset indent \ +"ACPI_RESOURCE_COMPONENT " "ACPI_RESOURCE_COMPONENT " +.It Sy LAYER Ta Sy LEVEL +.It Dv ACPI_DEBUG_NONE Ta Dv ACPI_DEBUG_NONE +.It Ta +.It Dv ACPI_UTILITIES Ta Dv ACPI_LV_INIT +.It Dv ACPI_HARDWARE Ta Dv ACPI_LV_DEBUG_OBJECT +.It Dv ACPI_EVENTS Ta Dv ACPI_LV_INFO +.It Dv ACPI_TABLES Ta Dv ACPI_LV_ALL_EXCEPTIONS No * +.It Dv ACPI_NAMESPACE Ta +.It Dv ACPI_PARSER Ta Dv ACPI_LV_INIT_NAMES +.It Dv ACPI_DISPATCHER Ta Dv ACPI_LV_PARSE +.It Dv ACPI_EXECUTER Ta Dv ACPI_LV_LOAD +.It Dv ACPI_RESOURCES Ta Dv ACPI_LV_DISPATCH +.It Dv ACPI_CA_DEBUGGER Ta Dv ACPI_LV_EXEC +.It Dv ACPI_OS_SERVICES Ta Dv ACPI_LV_NAMES +.It Dv ACPI_CA_DISASSEMBLER Ta Dv ACPI_LV_OPREGION +.It Dv ACPI_COMPILER Ta Dv ACPI_LV_BFIELD +.It Dv ACPI_TOOLS Ta Dv ACPI_LV_TABLES +.It Dv ACPI_EXAMPLE Ta Dv ACPI_LV_VALUES +.It Dv ACPI_DRIVER Ta Dv ACPI_LV_OBJECTS +.It Dv ACPI_ALL_COMPONENTS No * Ta Dv ACPI_LV_RESOURCES +.It Ta Dv ACPI_LV_USER_REQUESTS +.It Dv ACPI_BUS_COMPONENT Ta Dv ACPI_LV_PACKAGE +.It Dv ACPI_ACAD_COMPONENT Ta Dv ACPI_LV_VERBOSITY1 No * +.It Dv ACPI_BAT_COMPONENT Ta +.It Dv ACPI_BUTTON_COMPONENT Ta Dv ACPI_LV_ALLOCATIONS +.It Dv ACPI_EC_COMPONENT Ta Dv ACPI_LV_FUNCTIONS +.It Dv ACPI_LID_COMPONENT Ta Dv ACPI_LV_OPTIMIZATIONS +.It Dv ACPI_RESOURCE_COMPONENT Ta Dv ACPI_LV_VERBOSITY2 No * +.It Dv ACPI_TZ_COMPONENT Ta +.It Dv ACPI_DISPLAY_COMPONENT Ta +.It Dv ACPI_ALL_DRIVERS No * Ta Dv ACPI_LV_MUTEX +.It Ta Dv ACPI_LV_THREADS +.It Ta Dv ACPI_LV_IO +.It Ta Dv ACPI_LV_AML_INTERRUPTS +.It "* This is a compound" Ta Dv ACPI_LV_VERBOSITY3 No * +.It " constant, including" Ta +.It " all previous elements." Ta Dv ACPI_LV_AML_DISASSEMBLE +.It Ta Dv ACPI_LV_VERBOSE_INFO +.It Ta Dv ACPI_LV_FULL_TABLES +.It Ta Dv ACPI_LV_EVENTS +.It Ta Dv ACPI_LV_VERBOSE No * +.El +.Pp +In addition, there is +.Dv ACPI_DEBUG_DEFAULT +that is used by ACPICA as the default debug level. +It includes +.Dv ACPI_LV_INIT +and +.Dv ACPI_LV_DEBUG_OBJECT . +.Pp +The debug layer can be divided into two groups: +the first one is specific to the ACPICA +interpreter and the second one contains the internal ACPI +components of +.Nx . +The constant +.Dv ACPI_ALL_DRIVERS +includes all +.Nx +specific parts. +.Pp +The ACPICA interpreter uses several debug levels internally, +but the +.Nx +specific parts are typically limited to +.Dv ACPI_LV_DEBUG_OBJECT +and +.Dv ACPI_LV_INFO . +The debug output can be stopped by setting +.Ic hw.acpi.debug.level +to +.Dv ACPI_DEBUG_NONE . +.Ss Example +As an example, a driver may have defined the component it belongs to and +the name of the module: +.Bd -literal -offset indent +#define _COMPONENT ACPI_BUS_COMPONENT +ACPI_MODULE_NAME ("acpi_example") +.Ed +.Pp +The driver may also utilize the debug facility: +.Bd -literal -offset indent +ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Failed to evaluate _STA\\n")); +.Ed +.Pp +With these options the debug message from the +.Dv ACPI_DEBUG_PRINT +macro is only visible when +.Ic hw.acpi.debug.layer +is either +.Dv ACPI_BUS_COMPONENT +or a compound constant including it, and +.Ic hw.acpi.debug.level +is +.Dv ACPI_LV_INFO +or some constant that includes it. +Finally, it can be noted that the ACPI implementation uses the prefix +.Dv ACPI_DB , +whereas the debug level +.Xr sysctl 8 +variable is always specified with the prefix +.Dv ACPI_LV . +.Pp +Another example can be mentioned for the use of +.Ic hw.acpi.debug.object . +The following could appear in an ASL code: +.Bd -literal -offset indent +Method(_Q19, 0, NotSerialized) +{ + Store("_Q19 invoked", Debug) + Notify(ACAD, 0x80) +} +.Ed +.Pp +When +.Ic hw.acpi.debug.object +is set to 1, the message stored to the debug object +is printed every time the method is called by the interpreter. +.Sh FILES +.Bl -tag -width /dev/acpi +.It Pa /dev/acpi +.El +.Sh SEE ALSO +.Xr ioapic 4 , +.Xr acpidump 8 , +.Xr amldb 8 , +.Xr iasl 8 +.Rs +.%A Hewlett-Packard Corporation +.%A Intel Corporation +.%A Microsoft Corporation +.%A Phoenix Technologies Ltd. +.%A Toshiba Corporation +.%T Advanced Configuration and Power Interface Specification +.%N Revision 4.0 +.%D June 16, 2009 +.%U http://www.acpi.info/spec.htm +.Re +.Rs +.%A Intel Corporation +.%T ACPI Component Architecture, +.%T Programmer Reference, +.%T OS-Independent Subsystem, Debugger, and Utilities +.%N Revision 1.27 +.%D January 20, 2010 +.%U http://www.acpica.org/download/acpica-reference.pdf +.Re +.Rs +.%A Len Brown +.%T ACPI in Linux - Myths vs. Reality +.%D June 27-30, 2007 +.%O Proceedings of the Linux Symposium +.%P 65-74 +.%U http://www.linuxsymposium.org/archives/OLS/Reprints-2007/brown_1-Reprint.pdf +.Re +.Rs +.%A Joerg Sonnenberger +.%A Jared D. McNeill +.%T Sleeping Beauty - NetBSD on Modern Laptops +.%D February 3, 2008 +.%O Proceedings of AsiaBSDCon 2008 +.%P 127-134 +.%U https://2008.asiabsdcon.org/papers/P9A-paper.pdf +.Re +.Rs +.%A Takanori Watanabe +.%T ACPI Implementation on FreeBSD +.%I USENIX Association +.%B Proceedings of the FREENIX Track: 2002 USENIX Annual Technical Conference +.%P 121-131 +.%D June 10-15, 2002 +.%U https://www.usenix.org/legacy/event/usenix02/tech/freenix/full_papers/watanabe/watanabe.pdf +.Re +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 1.6 . +.Sh AUTHORS +.An -nosplit +Authors of the +.Nm +subsystem include +.An Charles M. Hannum , +.An Frank van der Linden , +.An Jared D. McNeill , +.An Jason R. Thorpe , +.An Joerg Sonnenberger , +and +.An Jukka Ruohonen , +among others. +.Sh BUGS +Most of the ACPI power management functionalities are not implemented. +.Pp +The +.Dv ACPI__DIS_IS_BROKEN +option should not be necessary. diff --git a/static/netbsd/man4/acpiacad.4 b/static/netbsd/man4/acpiacad.4 new file mode 100644 index 00000000..d86308e9 --- /dev/null +++ b/static/netbsd/man4/acpiacad.4 @@ -0,0 +1,58 @@ +.\" $NetBSD: acpiacad.4,v 1.6 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2002, 2004 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 11, 2007 +.Dt ACPIACAD 4 +.Os +.Sh NAME +.Nm acpiacad +.Nd ACPI AC Adapter +.Sh SYNOPSIS +.Cd "acpiacad* at acpi?" +.Sh DESCRIPTION +The +.Nm +driver supports ACPI AC Adapters. +.Pp +The status (connected or disconnected) can be monitored by the +.Xr envsys 4 +API or the +.Xr envstat 8 +command. +Actions against AC adapter online/offline events can be configured using the +.Xr powerd 8 +daemon. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr envsys 4 , +.Xr envstat 8 , +.Xr powerd 8 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 1.6 . diff --git a/static/netbsd/man4/acpibat.4 b/static/netbsd/man4/acpibat.4 new file mode 100644 index 00000000..9a438810 --- /dev/null +++ b/static/netbsd/man4/acpibat.4 @@ -0,0 +1,123 @@ +.\" $NetBSD: acpibat.4,v 1.9 2010/03/25 15:34:30 jruoho Exp $ +.\" +.\" Copyright (c) 2002, 2004, 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 17, 2010 +.Dt ACPIBAT 4 +.Os +.Sh NAME +.Nm acpibat +.Nd ACPI Battery +.Sh SYNOPSIS +.Cd "acpibat* at acpi?" +.Sh DESCRIPTION +The +.Nm +driver supports +.Tn ACPI +batteries. +.Pp +The battery status is made available through the +.Xr envsys 4 +.Tn API . +The battery information can be displayed also with the +.Xr envstat 8 +command: +.Bd -literal -offset 2n +$ envstat -d acpibat0 + Current CritMax WarnMax WarnMin CritMin Unit + present: ON +design voltage: 14.400 V + voltage: 16.267 V + design cap: 74.880 Wh + last full cap: 48.260 Wh + charge: 47.910 5.000% 0.414% Wh (99.27%) + charge rate: N/A +discharge rate: 16.641 W + charging: OFF + charge state: NORMAL +.Ed +.Pp +Depending on the battery, the unit of measurement is either watt-hour +.Tn Pq Wh +or ampere-hour +.Tn Pq Ah +for the capacity related information. +From these the +.Dq charge +is usually the most interesting value, +but it is possible to derive useful information also from the other values. +For example, when +.Xr acpiacad 4 +is disconnected, the +.Dq discharge rate +gives a coarse approximation of the current power consumption. +The ratio between the design capacity and the last full capacity +on the other hand reveals the overall +.Dq health +of deteriorating lithium-ion batteries. +.Sh EVENTS +The +.Nm +driver is able to send events to +.Xr powerd 8 +daemon when a capacity state has been changed. +The new state will be reported as the +.Em fourth +argument to the +.Pa /etc/powerd/scripts/sensor_battery +script. +If a custom capacity limit was set via +.Xr envstat 8 , +the +.Nm +driver will report a +.Em user-capacity +event to the same script when current capacity limit has been reached. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr envsys 4 , +.Xr envstat 8 , +.Xr powerd 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Nx 1.6 . +.Sh BUGS +The +.Tn ACPI +specifications make a distinction between +.Dq control method batteries +and +.Dq smart batteries . +The +.Nm +driver only supports control method batteries. +Furthermore, +.Nm +does not yet support some additional battery information introduced in the +.Tn ACPI 4.0 +standard. diff --git a/static/netbsd/man4/acpibut.4 b/static/netbsd/man4/acpibut.4 new file mode 100644 index 00000000..df20f37a --- /dev/null +++ b/static/netbsd/man4/acpibut.4 @@ -0,0 +1,59 @@ +.\" $NetBSD: acpibut.4,v 1.4 2010/04/25 07:12:10 jruoho Exp $ +.\" +.\" Copyright (c) 2002, 2004 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 25, 2010 +.Dt ACPIBUT 4 +.Os +.Sh NAME +.Nm acpibut +.Nd ACPI Button +.Sh SYNOPSIS +.Cd "acpibut* at acpi?" +.Sh DESCRIPTION +The +.Nm +driver supports two kinds of +.Tn ACPI +buttons: +.Bl -column -offset indent "Button " "/etc/powerd/scripts/power_button" +.It Sy Button Ta Sy Script +.It Li Power Ta Pa /etc/powerd/scripts/power_button +.It Li Sleep Ta Pa /etc/powerd/scripts/sleep_button +.El +.Pp +When a button is pressed, the +.Xr powerd 8 +daemon, if running, +will execute the corresponding script. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr powerd 8 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 1.6 . diff --git a/static/netbsd/man4/acpicpu.4 b/static/netbsd/man4/acpicpu.4 new file mode 100644 index 00000000..ada3e709 --- /dev/null +++ b/static/netbsd/man4/acpicpu.4 @@ -0,0 +1,365 @@ +.\" $NetBSD: acpicpu.4,v 1.37 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Neither the name of the author nor the names of any +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 31, 2018 +.Dt ACPICPU 4 +.Os +.Sh NAME +.Nm acpicpu +.Nd ACPI CPU +.Sh SYNOPSIS +.Cd "acpicpu* at cpu?" +.Sh DESCRIPTION +The +.Nm +device driver supports certain processor features that are +either only available via +.Tn ACPI +or that require +.Tn ACPI +to function properly. +Typically the +.Tn ACPI +processor functionality is grouped into so-called C-, P-, and T-states. +.Ss C-states +The processor power states, or C-states, +are low-power modes that can be used when the +.Tn CPU +is idle. +The idea is not new: already in the +.Tn 80486 +processor a specific instruction +.Pq Tn HLT +was used for this purpose. +This was later accompanied by a pair of other instructions +.Pq Tn MONITOR , MWAIT . +By default, +.Nx +may use either one; see the +.Ic machdep.idle-mechanism +.Xr sysctl 8 +variable. +.Tn ACPI +provides the latest amendment. +.Pp +The following C-states are typically available. +Additional processor or vendor specific +states (C4, ..., Cn) are handled internally by +.Nm . +.Bl -tag -width C1 -offset indent +.It Dv C0 +This is the normal state of a processor; the +.Tn CPU +is busy executing instructions. +.It Dv C1 +This is the state that is typically reached via the mentioned +.Tn x86 +instructions. +On a typical processor, +.Dv C1 +turns off the main internal +.Tn CPU +clock, leaving +.Tn APIC +running at full speed. +The +.Tn CPU +is free to temporarily leave the state to deal with important requests. +.It Dv C2 +The main difference between +.Dv C1 +and +.Dv C2 +lies in the internal hardware entry method of the processor. +While less power is expected to be consumed than in +.Dv C1 , +the bus interface unit is still running. +But depending on the processor, the local +.Tn APIC +timer may be stopped. +Like with +.Dv C1 , +entering and exiting the state are expected to be fast operations. +.It Dv C3 +This is the deepest conventional state. +Parts of the +.Tn CPU +are actively powered down. +The internal +.Tn CPU +clock is stopped. +The local +.Tn APIC +timer is stopped. +Depending on the processor, additional timers such as +.Xr x86/tsc 9 +may be stopped. +Processor caches may be flushed. +Entry and exit latencies are expected to be high; the +.Tn CPU +can no longer +.Dq quickly +respond to bus activity or other interruptions. +.El +.Pp +Each state has a latency associated with entry and exit. +The higher the state, the lower the power consumption, and +the higher the potential performance costs. +.Pp +The +.Nm +driver tries to balance the latency +constraints when choosing the appropriate state. +One of the checks involves bus master activity; +if such activity is detected, a lower state is used. +It is known that particularly +.Xr usb 4 +may cause high activity even when not in use. +If maximum power savings are desirable, +it may be necessary to use a custom kernel without +.Tn USB +support. +And generally: to save power with C-states, one should +avoid polling, both in userland and in the kernel. +.Ss P-states +The processor performance states, or P-states, are used to +control the clock frequencies and voltages of a +.Tn CPU . +Underneath the abstractions of +.Tn ACPI , +P-states are associated with such technologies as +.Dq SpeedStep +.Pq Intel , +.Dq PowerNow! +.Pq Tn AMD , +and +.Dq PowerSaver +.Pq VIA . +.Pp +The P0-state is always the highest operating +frequency supported by the processor. +The number of additional P-states may vary across processors and vendors. +Each higher numbered P-state represents lower +clock frequencies and hence lower power consumption. +Note that while +.Nm +always uses the exact frequencies internally, +the user-visible values reported by +.Tn ACPI +may be rounded or approximated by the vendor. +.Pp +Unlike conventional +.Tn CPU +frequency management, +.Tn ACPI +provides support for Dynamic Voltage and Frequency Scaling +.Pq Tn DVFS . +Among other things, +this means that the firmware may request the implementation to +dynamically scale the presently supported maximum or minimum clock frequency. +For example, if +.Xr acpiacad 4 +is disconnected, the maximum available frequency may be lowered. +By default, +the +.Nx +implementation may manipulate the frequencies +according to the notifications from the firmware. +.Ss T-states +Processor T-states, or +.Dq throttling states , +can be used to actively modulate the +time a processor is allowed to execute. +Outside the +.Tn ACPI +nomenclature, throttling and T-states may be known as +.Dq on-demand clock modulation +.Pq Tn ODCM . +.Pp +The concept of +.Dq duty cycle +is relevant to T-states. +It is generally defined to be a fraction of time that a system is in an +.Dq active +state. +The T0-state has always a duty cycle of 100 \&%, +and thus, comparable to the C0-state, the processor is fully active. +Each additional higher-numbered T-state indicates lower duty cycles. +At most eight T-states may be available, although also T-states use +.Tn DVFS . +.Pp +The duty cycle does not refer to the actual clock signal, +but to the time period in which the clock signal is allowed +to drive the processor chip. +For instance, if a T-state has a duty cycle of 75 \&%, the +.Tn CPU +runs at the same clock frequency and uses the same voltage, +but 25 \&% of the time the +.Tn CPU +is forced to idle. +Because of this, the use of T-states may +severely affect system performance. +.Pp +There are two typical situations for throttling: +power management and thermal control. +As a technique to save power, +T-states are largely an artifact from the past. +There was a short period in the x86 lineage when P-states +were not yet available and throttling was considered +as an option to modulate the processor power consumption. +The approach was however quickly abandoned. +In modern x86 systems P-states should be preferred in all circumstances. +It is also more beneficial to move from the C0-state +to deeper C-states than it is to actively force down the +duty cycle of a processor. +.Pp +But T-states have retained their use as a last line +of defense against critical thermal conditions. +Many x86 processors include a catastrophic shutdown detector. +When the processor core temperature reaches this factory defined trip-point, +the processor execution is halted without any software control. +Before this fatal condition, it is possible to use throttling +for a short period of time in order to force the temperatures to lower levels. +The thermal control modulation is typically started only when +the system is in the highest-power P-state and +a high temperature situation exists. +After the temperatures have returned to non-critical levels, +the modulation ceases. +.Ss System Control Variables +The +.Nm +driver uses the same +.Xr sysctl 8 +controls for P-states as the ones provided by +.Xr est 4 +and +.Xr powernow 4 . +Please note that future versions of +.Nm +may however remove these system control variables without further notice. +.Pp +In addition, the following two variables are available. +.Bl -tag -width "hw.acpi.cpu.dynamic" -offset indent +.It Ic hw.acpi.cpu.dynamic +A boolean that controls whether the states are allowed to change dynamically. +When enabled, C-, P-, and T-states may all change at runtime, and +.Nm +may also take actions based on requests from the firmware. +.It Ic hw.acpi.cpu.passive +A boolean that enables or disables automatic processor thermal management via +.Xr acpitz 4 . +.El +.Ss Statistics +The +.Nm +driver uses event counters to track the times +a processor has entered a given state. +It is possible to view the statistics by using +.Xr vmstat 1 +(with the +.Fl e +flag). +.Sh SEE ALSO +.Xr acpi 4 , +.Xr acpitz 4 , +.Xr est 4 , +.Xr odcm 4 , +.Xr powernow 4 , +.Xr cpu_idle 9 +.Rs +.%A Etienne Le Sueur +.%A Gernot Heiser +.%T Dynamic Voltage and Frequency Scaling: The Laws of Diminishing Returns +.%O Proceedings of the 2010 Workshop on \ +Power Aware Computing and Systems (HotPower'10) +.%D October, 2010 +.%U http://www.ertos.nicta.com.au/publications/papers/LeSueur_Heiser_10.pdf +.Re +.Rs +.%A David C. Snowdon +.%T Operating System Directed Power Management +.%O PhD Thesis +.%I School of Computer Science and Engineering, University of New South Wales +.%D March, 2010 +.%U http://ertos.nicta.com.au/publications/papers/Snowdon:phd.pdf +.Re +.Rs +.%A Microsoft Corporation +.%T Windows Native Processor Performance Control +.%N Version 1.1a +.%D November, 2002 +.%U http://msdn.microsoft.com/en-us/windows/hardware/gg463343 +.Re +.Rs +.%A Venkatesh Pallipadi +.%A Alexey Starikovskiy +.%T The Ondemand Governor. Past, Present, and Future +.%I Intel Open Source Technology Center +.%O Proceedings of the Linux Symposium +.%D July, 2006 +.%U https://www.kernel.org/doc/ols/2006/ols2006v2-pages-223-238.pdf +.Re +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 6.0 . +.Sh AUTHORS +.An Jukka Ruohonen +.Aq jruohonen@iki.fi +.Sh CAVEATS +At least the following caveats can be mentioned. +.Bl -bullet +.It +It is currently only safe to use +.Dv C1 +on +.Nx . +All other C-states are disabled by default. +.It +Processor thermal control (see +.Xr acpitz 4 ) +is not yet supported. +.It +Depending on the processor, changes in C-, P-, +and T-states may all skew timers and counters such as +.Xr x86/tsc 9 . +This is neither handled by +.Nm +nor by +.Xr est 4 +or +.Xr powernow 4 . +.It +There is currently neither a well-defined, machine-independent +.Tn API +for processor performance management nor a +.Dq governor +for different policies. +It is only possible to control the +.Tn CPU +frequencies from userland. +.El diff --git a/static/netbsd/man4/acpidalb.4 b/static/netbsd/man4/acpidalb.4 new file mode 100644 index 00000000..9e613409 --- /dev/null +++ b/static/netbsd/man4/acpidalb.4 @@ -0,0 +1,73 @@ +.\" $NetBSD: acpidalb.4,v 1.6 2010/04/08 08:42:40 jruoho Exp $ +.\" +.\" Copyright (c) 2008 Christoph Egger +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 18, 2008 +.Dt ACPIDALB 4 +.Os +.Sh NAME +.Nm acpidalb +.Nd Direct Application Launch Buttons +.Sh SYNOPSIS +.Cd "acpidalb* at acpi?" +.Sh DESCRIPTION +This driver provides support for +.Tn PNP0C32 +.Tn ACPI +hotkeys a.k.a. +.Dq The Direct Application Launch Buttons . +.Pp +These are recognized on startup from system-wake or at runtime. +Behaviour may differ from the standard specification in relation +to the +.Tn ACPI +implementation. +.Pp +The hotkeys are reported to the power management daemon as +.Em hotkey_button . +.Sh SEE ALSO +.Xr acpi 4 , +.Xr powerd 8 +.Pp +The +.Tn PNP0C32 +specification is described in: +.Rs +.%A Microsoft Corporation +.%D October 26, 2006 +.%T Direct Application Launch from System Startup on Windows Vista +.%U http://www.microsoft.com/whdc/system/vista/DirAppLaunch.mspx +.Re +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 5.0 . +.Sh AUTHORS +This driver was written for +.Nx +by +.An Christoph Egger . diff --git a/static/netbsd/man4/acpiec.4 b/static/netbsd/man4/acpiec.4 new file mode 100644 index 00000000..96b4aa06 --- /dev/null +++ b/static/netbsd/man4/acpiec.4 @@ -0,0 +1,123 @@ +.\" $NetBSD: acpiec.4,v 1.6 2010/02/27 20:39:42 snj Exp $ +.\" +.\" Copyright (c) 2002, 2004, 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd February 27, 2010 +.Dt ACPIEC 4 +.Os +.Sh NAME +.Nm acpiec +.Nd ACPI Embedded Controller +.Sh SYNOPSIS +.Cd "acpiec* at acpi?" +.Cd "acpiecdt* at acpi?" +.Sh DESCRIPTION +The +.Nm +driver supports ACPI Embedded Controllers. +.Pp +An ACPI Embedded Controller +.Pq Tn EC +is typically a small microprocessor that is responsible for various tasks +related to +.Tn ACPI . +The primary task is to handle +.Tn ACPI +specific interrupts, which are mapped to so-called +.Tn ACPI +General Purpose Events +.Pq Tn GPEs . +Other possible functions include embedded access to other buses such as the +.Xr iic 4 . +.Pp +The +.Tn ACPI +specific events range from user initiated events to events triggered by +the hardware. +When such an event occurs, typically either a System Management Interrupt +.Pq Tn SMI +or a System Control Interrupt +.Pq Tn SCI +is raised. +The latter is an active, visible, shareable, level interrupt. +On most Intel chipsets +.Tn SCI +is hardwired to the interrupt number 9. +The main task of an +.Tn EC +is to raise a system control interrupt. +.Pp +All GPEs generate SCIs. +A typical example of the internal wiring of +.Tn GPEs +could involve +.Xr gpio 4 : +when, e.g., the +.Tn AC +adapter is connected, a certain +.Tn GPIO +line becomes active, a given +.Tn GPE +is flagged, and a +.Tn SCI +interrupt is raised by the +.Tn EC , +leading to execution of +.Tn ACPI +machine code in order to locate the handler associated with the event. +A corresponding driver, +.Xr acpiacad 4 +in this case, will finally finish the processing of the event. +.Pp +Due to the reasons described above, majority of +.Tn ACPI +specific drivers are dysfunctional without +.Nm . +It is therefore recommended that +.Nm +is always enabled, +even though it may not be required on some older systems. +.Sh SEE ALSO +.Xr acpi 4 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 1.6 . +.Sh CAVEATS +Many machines depend on early attachment of +.Nm . +In such cases the information required by +.Nm +should be available as a separate and optional +Embedded Controller Descriptor Table +.Pq Tn ECDT . +If an +.Tn ECDT +is not available or early attachment can not be carried out due other reasons, +the initialization of the whole +.Xr acpi 4 +subsystem may be problematic. diff --git a/static/netbsd/man4/acpifan.4 b/static/netbsd/man4/acpifan.4 new file mode 100644 index 00000000..39326a5c --- /dev/null +++ b/static/netbsd/man4/acpifan.4 @@ -0,0 +1,75 @@ +.\" $NetBSD: acpifan.4,v 1.4 2019/04/11 17:46:32 kamil Exp $ +.\" +.\" Copyright (c) 2011 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Neither the name of the author nor the names of any +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 9, 2011 +.Dt ACPIFAN 4 +.Os +.Sh NAME +.Nm acpifan +.Nd ACPI Fan +.Sh SYNOPSIS +.Cd "acpifan* at acpi?" +.Sh DESCRIPTION +The +.Nm +device driver supports fans possibly exposed by the +.Tn BIOS . +Even if a system contains only one physical fan, multiple +.Nm +instances may be present. +In such cases each +.Nm +typically represents an +.Xr acpitz 4 +thermal zone, and the combined state of all +instances reveals the speed of the fan. +.Pp +The +.Nm +driver does not support controlling the fan. +The current state (on or off) is made available through the +.Xr envsys 4 +.Tn API +and the +.Xr envstat 8 +command. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr acpitz 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 6.0 . +.Sh AUTHORS +.An Jukka Ruohonen +.Aq jruohonen@iki.fi +.Sh BUGS +The +.Nm +driver does not yet support additional functionality introduced in the +.Tn ACPI +4.0 specification. diff --git a/static/netbsd/man4/acpihed.4 b/static/netbsd/man4/acpihed.4 new file mode 100644 index 00000000..7f6e677b --- /dev/null +++ b/static/netbsd/man4/acpihed.4 @@ -0,0 +1,72 @@ +.\" $NetBSD: acpihed.4,v 1.3 2024/10/10 09:05:45 rin Exp $ +.\" +.\" Copyright (c) 2024 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 18, 2024 +.Dt ACPIHED 4 +.Os +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh NAME +.Nm acpihed +.Nd ACPI Hardware Error Device +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh SYNOPSIS +.Cd "acpihed* at acpi?" +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh DESCRIPTION +Certain hardware error sources that can be queried by +.Xr apei 4 +notify an +.Tn ACPI +node with +.Tn PNP ID +.Ql PNP0C33 +when an error occurs. +The +.Nm +driver listens for these notifications and passes them on to +.Xr apei 4 +so it can report the error. +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh SEE ALSO +.Xr acpi 4 , +.Xr apei 4 +.Rs +.%B ACPI Specification 6.5 +.%O Chapter 18: ACPI Platform Error Interfaces (APEI) +.%U https://uefi.org/specs/ACPI/6.5/18_Platform_Error_Interfaces.html +.Re +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 10.1 . +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh AUTHORS +The +.Nm +driver was written by +.An Taylor R Campbell Aq Mt riastradh@NetBSD.org . diff --git a/static/netbsd/man4/acpilid.4 b/static/netbsd/man4/acpilid.4 new file mode 100644 index 00000000..86d0e1d9 --- /dev/null +++ b/static/netbsd/man4/acpilid.4 @@ -0,0 +1,94 @@ +.\" $NetBSD: acpilid.4,v 1.8 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 2002, 2004 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 9, 2011 +.Dt ACPILID 4 +.Os +.Sh NAME +.Nm acpilid +.Nd ACPI Lid Switch +.Sh SYNOPSIS +.Cd "acpilid* at acpi?" +.Sh DESCRIPTION +The +.Nm +driver supports +.Tn ACPI +.Dq lid switches . +The +.Xr powerd 8 +daemon can be used to control actions against +the events of opening or closing the lid. +The script used is +.Pa /etc/powerd/scripts/lid_switch , +and the events are either +.Em pressed +(the lid was closed) +or +.Em released +(the lid was opened). +.Sh EXAMPLES +The following example modifies the mentioned script in order to put the +system into +.Pq Tn S3 +sleep when the lid is closed: +.Bd -literal -offset indent +\&... + +case "${2}" in +pressed) + logger -p info "${0}: suspending..." + + # As in sleep_button, kill some daemons. + # + /etc/rc.d/dhcpcd stop + /etc/rc.d/network stop + /etc/rc.d/wpa_supplicant stop + + # Suspend. + # + if /sbin/sysctl hw.acpi.sleep.state >/dev/null 2>&1; then + /sbin/sysctl -w hw.acpi.sleep.state=3 + fi + + # Waking up. + # + /etc/rc.d/wpa_supplicant start + /etc/rc.d/network start + /etc/rc.d/dhcpcd start + +\&... +.Ed +.Sh SEE ALSO +.Xr acpi 4 , +.Xr powerd 8 , +.Xr sysmon_pswitch 9 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 1.6 . diff --git a/static/netbsd/man4/acpipmtr.4 b/static/netbsd/man4/acpipmtr.4 new file mode 100644 index 00000000..e4ece4cb --- /dev/null +++ b/static/netbsd/man4/acpipmtr.4 @@ -0,0 +1,66 @@ +.\" $NetBSD: acpipmtr.4,v 1.2 2019/05/24 16:02:08 ryoon Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Neither the name of the author nor the names of any +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 25, 2019 +.Dt ACPIPMTR 4 +.Os +.Sh NAME +.Nm acpipmtr +.Nd ACPI Power Meter +.Sh SYNOPSIS +.Cd "acpipmtr* at acpi?" +.Sh DESCRIPTION +The +.Nm +device driver provides support for +.Dq power meters . +These are sensors that approximate the current +power consumption of the system. +Alternatively, a power meter may measure also the power gain +when the system is connected to an external power supply. +.Pp +The available information (namely, the power consumption) +is made available through the +.Xr envsys 4 +.Tn API +and the +.Xr envstat 8 +command. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr acpibat 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 6.0 . +.Sh AUTHORS +.An Jukka Ruohonen +.Aq Mt jruohonen@iki.fi +.Sh CAVEATS +The +.Nm +driver is experimental. diff --git a/static/netbsd/man4/acpismbus.4 b/static/netbsd/man4/acpismbus.4 new file mode 100644 index 00000000..9bc3363e --- /dev/null +++ b/static/netbsd/man4/acpismbus.4 @@ -0,0 +1,82 @@ +.\" $NetBSD: acpismbus.4,v 1.2 2010/02/06 21:57:08 wiz Exp $ +.\" +.\" Copyright (c) 2009 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Paul Goyette +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd February 6, 2010 +.Dt ACPISMBUS 4 +.Os +.Sh NAME +.Nm acpismbus +.Nd ACPI SMBus Control Method Interface +.Sh SYNOPSIS +.Cd "acpismbus* at acpi?" +.Cd "iic* at acpismbus?" +.Sh DESCRIPTION +The +.Nm +driver supports instances of the ACPI SMBus Control Method Interface. +This enables i2c access to bus segments which might not otherwise be +accessible due to missing "native" driver support. +The SMBus Process Call protocol is not supported. +All other SMBus protocols are supported to the extent that the underlying +controller supports them. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr iic 4 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 6.0 . +.Sh BUGS +Although +.Nm +SMBus Alerts can be associated with individual devices, this +capability is ignored. +When an +.Nm +SMBus Alert is generated, all devices on the i2c bus segment which have +registered an interrupt routine are notified. +.Pp +The SMBus CMI protocol defines a method to provide a list of devices on an +i2c bus segment and their addresses. +The +.Nm +driver makes no attempt to retrieve or process this device list. +.Pp +There is currently no way to determine if the i2c controller managed by +an instance of the ACPI SMBus CMI can also be accessed using a native +device driver. +Therefore, the +.Nm +driver should not be enabled by default. +If both a native driver and the +.Nm +driver attempt to access the same i2c bus segment, the results are +undefined. diff --git a/static/netbsd/man4/acpitz.4 b/static/netbsd/man4/acpitz.4 new file mode 100644 index 00000000..249a6152 --- /dev/null +++ b/static/netbsd/man4/acpitz.4 @@ -0,0 +1,128 @@ +.\" $NetBSD: acpitz.4,v 1.14 2014/03/18 18:20:39 riastradh Exp $ +.\" +.\" Copyright (c) 2003, 2004, 2011 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 9, 2011 +.Dt ACPITZ 4 +.Os +.Sh NAME +.Nm acpitz +.Nd ACPI Thermal Zone +.Sh SYNOPSIS +.Cd "acpitz* at acpi?" +.Sh DESCRIPTION +The +.Nm +driver supports so-called +.Tn ACPI +.Dq Thermal Zones . +The temperature can be monitored by the +.Xr envsys 4 +API or the +.Xr envstat 8 +command. +.Pp +The distinction between +.Dq active +and +.Dq passive +cooling is central to the abstractions behind +.Nm . +These are inversely related to each other: +.Bl -enum -offset 2n +.It +Active cooling means that the system increases the power consumption of the +machine by performing active thermal management (for example, by turning on +a fan) in order to reduce the temperatures. +.It +Passive cooling means that the system reduces the power consumption of +devices at the cost of system performance (for example, by lowering the +.Tn CPU +frequencies) in order to reduce the temperatures. +.El +.Pp +Only active cooling is currently supported on +.Nx . +.Pp +It should be also noted that the internal +functioning of these cooling policies vary across machines. +On some machines the operating system may have little control over +the thermal zones as the firmware manages the thermal control internally, +whereas on other machines the policies may be exposed to the implementation +at their full extent. +.Sh EVENTS +The +.Nm +driver knows about the active cooling levels, the current +temperatures, and critical, hot, and passive temperature thresholds +(as supported by the hardware). +The driver is able to send events to +.Xr powerd 8 +when the sensor's state has changed. +When a Thermal Zone is either critical or +.Dq hot , +the +.Pa /etc/powerd/scripts/sensor_temperature +script will be invoked with a +.Em critical-over +event. +.Pp +The critical temperature is the threshold for system shutdown. +Depending on the hardware, the mainboard will take down the system +instantly and no event will have a chance to be sent. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr acpifan 4 , +.Xr envsys 4 , +.Xr envstat 8 , +.Xr powerd 8 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 2.0 . +.Sh AUTHORS +.An Jared D. McNeill Aq Mt jmcneill@invisible.ca +.Sh CAVEATS +While no pronounced bugs are known to exist, +several caveats can be mentioned: +.Bl -bullet +.It +Passive cooling is not implemented. +.It +There is no user-controllable way to switch between active and passive +cooling, although the specifications support such transforms on some machines. +.It +The +.Dq hot +temperature is a threshold in which the system ought to be put into +.Tn S4 +sleep. +This sleep state +.Pq Dq suspend to disk +is not supported on +.Nx . +.El diff --git a/static/netbsd/man4/acpivga.4 b/static/netbsd/man4/acpivga.4 new file mode 100644 index 00000000..805773d8 --- /dev/null +++ b/static/netbsd/man4/acpivga.4 @@ -0,0 +1,124 @@ +.\" $NetBSD: acpivga.4,v 1.3 2010/10/28 21:45:02 gsutre Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 28, 2010 +.Dt ACPIVGA 4 +.Os +.Sh NAME +.Nm acpivga +.Nd ACPI Display Adapter and Output Devices +.Sh SYNOPSIS +.Cd "acpivga* at acpi?" +.Cd "acpiout* at acpivga?" +.Sh DESCRIPTION +The +.Nm +driver provides generic support for brightness control and output switching, +through +.Tn ACPI +video extensions. +The +.Tn ACPI +specification requires that systems containing a built-in display adapter +implement these extensions in their +.Tn ACPI +BIOS. +.Pp +The driver handles brightness hotkeys and display switch hotkeys. +In addition, the following +.Xr sysctl 8 +read/write variables are provided (when hardware support is available): +.Bl -tag -width Ds +.It Va hw.acpi.acpivga0.bios_switch +BIOS output switching policy. +This boolean variable controls the behavior of the BIOS when a display +switch hotkey is pressed. +.Bl -tag -width xxx -compact +.It Sy 1 +the BIOS should automatically switch outputs, with no interaction from +.Nm . +.It Sy 0 +the BIOS should only notify +.Nm +of the desired output state changes. +.El +.It Va hw.acpi.acpiout0.brightness +Brightness level. +This integer variable typically ranges from 0 to 100, but any integer value +is accepted (the driver uses the closest brightness level supported by the +device). +.El +.Pp +Please note, however, that future versions of +.Nm +may remove these +.Xr sysctl 8 +variables without prior notice. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr vga 4 , +.Xr sysctl 8 +.Rs +.%A Microsoft Corporation +.%D December 4, 2001 +.%T Mobile System Displays and Windows +.%N Version 1.2c +.%U http://www.microsoft.com/whdc/archive/mobiledisplay.mspx +.Re +.Sh HISTORY +The +.Nm +driver appeared in +.Nx 6.0 . +.Sh AUTHORS +.An Gr\('egoire Sutre +.Aq gsutre@NetBSD.org +.Sh CAVEATS +The +.Nm +driver only supports PCI/PCI-X/PCI-E display adapters. +.Pp +Many +.Tn ACPI +BIOSes implement only part of the +.Tn ACPI +video extensions. +In particular, display output switching via these extensions often does not +work. +For this reason, +.Nm +enables +.Va hw.acpi.acpivga0.bios_switch +by default. +If the display switch hotkey does not work with this default setting, try +setting +.Va hw.acpi.acpivga0.bios_switch +to 0. +.Pp +Brightness level should be controlled via +.Xr wsconsctl 8 +instead of +.Xr sysctl 8 . diff --git a/static/netbsd/man4/acpivmgenid.4 b/static/netbsd/man4/acpivmgenid.4 new file mode 100644 index 00000000..db903550 --- /dev/null +++ b/static/netbsd/man4/acpivmgenid.4 @@ -0,0 +1,108 @@ +.\" $NetBSD: acpivmgenid.4,v 1.4 2024/10/10 09:05:45 rin Exp $ +.\" +.\" Copyright (c) 2024 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 26, 2024 +.Dt ACPIVMGENID 4 +.Os +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh NAME +.Nm acpivmgenid +.Nd ACPI Virtual Machine Generation ID +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh SYNOPSIS +.Cd "acpivmgenid* at acpi?" +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh DESCRIPTION +.Nm +provides a generation ID for virtual machines. +.Pp +When starting two otherwise identical virtual machines, whether from +the same clean image or by cloning snapshots or any other mechanism, +the VM host may choose a different generation ID. +Although this generation ID is not secret, it is incorporated into the +.Xr entropy 7 +pool (with a measure of zero entropy) so that the two virtual machines +will produce independent random output. +.Pp +If a live VM is cloned, the VM host may change the generation ID in one +or both of the clones and notify them through the +.Nm +device. +When this happens, +.Nx +will reseed system random number generators, so that output of +.Pa /dev/urandom +and +.Xr getentropy 3 +will be independent in the two clones, and the +.Xr sysctl 7 +variable +.Li kern.entropy.epoch +will advance to notify applications that they should reseed random +number generators from the system entropy pool. +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh SYSCTLS +The following +.Xr sysctl 7 +nodes are available: +.Bl -tag -width Li +.It Li "hw.acpivmgenid" Ns Va N Ns Li ".id" +The current 16-byte VM generation ID. +.It Li "hw.acpivmgenid" Ns Va N Ns Li ".paddr" +The physical address of the VM generation ID provided by the host. +.El +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh SEE ALSO +.Xr arc4random 3 , +.Xr getentropy 3 , +.Xr rnd 4 , +.Xr entropy 7 +.Rs +.%T Virtual Machine Generation ID +.%Q Microsoft +.%D 2018-08-01 +.%U http://go.microsoft.com/fwlink/?LinkId=260709 +.Re +.Rs +.%T Virtual Machine Generation ID Device +.%Q The QEMU Project Developers +.%U https://www.qemu.org/docs/master/specs/vmgenid.html +.Re +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 10.1 . +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh BUGS +Currently there is no cheaper way to detect VM generation ID changes +than to query sysctl. +(Applications deciding whether to reseed random number generators +should generally query +.Li kern.entropy.epoch , +not +.Li "hw.acpivmgenid" Ns Va N Ns Li ".id" . ) diff --git a/static/netbsd/man4/acpiwdrt.4 b/static/netbsd/man4/acpiwdrt.4 new file mode 100644 index 00000000..842b9d95 --- /dev/null +++ b/static/netbsd/man4/acpiwdrt.4 @@ -0,0 +1,62 @@ +.\" $NetBSD: acpiwdrt.4,v 1.4 2011/01/17 22:53:29 jruoho Exp $ +.\" +.\" Copyright (c) 2011 Jared D. McNeill +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Neither the name of the author nor the names of any +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 17, 2011 +.Dt ACPIWDRT 4 +.Os +.Sh NAME +.Nm acpiwdrt +.Nd ACPI Watchdog Timer +.Pq Tn WDRT +.Sh SYNOPSIS +.Cd "acpiwdrt* at acpi?" +.Sh DESCRIPTION +The +.Nm +driver provides support for watchdog timers specified in a so-called +.Tn ACPI +watchdog resource table +.Pq Tn WDRT . +The +.Nm +watchdog timer is configurable via the +.Xr wdogctl 8 +utility. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr wdogctl 8 +.Rs +.%A Microsoft Corporation +.%N Version 1.01 +.%D August 28, 2006 +.%T Watchdog Timer Hardware Requirements for Windows Server 2003 +.%U http://www.microsoft.com/whdc/system/sysinternals/watchdog.mspx +.Re +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 6.0 . diff --git a/static/netbsd/man4/acpiwmi.4 b/static/netbsd/man4/acpiwmi.4 new file mode 100644 index 00000000..858bce75 --- /dev/null +++ b/static/netbsd/man4/acpiwmi.4 @@ -0,0 +1,100 @@ +.\" $NetBSD: acpiwmi.4,v 1.9 2019/05/26 19:34:57 ryoon Exp $ +.\" +.\" Copyright (c) 2010 Jukka Ruohonen +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Neither the name of the author nor the names of any +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 27, 2019 +.Dt ACPIWMI 4 +.Os +.Sh NAME +.Nm acpiwmi +.Nd Windows Management Instrumentation support for +.Tn ACPI +.Sh SYNOPSIS +.Cd "acpiwmi* at acpi?" +.Cd "wmidell* at acpiwmibus?" +.Cd "wmieeepc* at acpiwmibus?" +.Cd "wmihp* at acpiwmibus?" +.Cd "wmimsi* at acpiwmibus?" +.Sh DESCRIPTION +The +.Nm +device driver provides an +.Tn ACPI +interface for Windows Management Instrumentation +.Pq Tn WMI . +The +.Tn ACPI +.Tn WMI +interface is typically used to support vendor +specific features found in various laptops. +.Pp +The following +.Tn WMI +mappings are supported: +.Bl -tag -width "wmidell " -offset indent +.It Sy wmidell +Dell laptops +.It Sy wmieeepc +Some models of Asus Eee PC +.It Sy wmihp +Hewlett-Packard laptops +.It Sy wmimsi +MSI laptops +.El +.Pp +The functionality varies from vendor to vendor. +Typically the interface is used for function and hotkey handling, +but additional features may be present. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr acpidalb 4 +.Rs +.%A Microsoft Corporation +.%D December 4, 2001 +.%T Windows Instrumentation: WMI and ACPI +.%U http://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx +.Re +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 6.0 . +.Sh AUTHORS +.An Jukka Ruohonen +.Aq Mt jruohonen@iki.fi +wrote +.Nm +and most of the mappings. +.Sh CAVEATS +While +.Tn WMI +should provide a certain degree of portability across laptop +models from a particular vendor, there is no guarantee that the mappings +are functional in all models. +.Pp +The +.Sy wmihp +driver may conflict with +.Xr hpqlb 4 . diff --git a/static/netbsd/man4/adb.4 b/static/netbsd/man4/adb.4 new file mode 100644 index 00000000..1a5ca75b --- /dev/null +++ b/static/netbsd/man4/adb.4 @@ -0,0 +1,265 @@ +.\" $NetBSD: adb.4,v 1.5 2020/05/15 09:21:59 kamil Exp $ +.\" +.\" Copyright (c) 2003 Alex Zepeda +.\" Copyright (c) 1997 Colin Wood +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by Alex Zepeda, and +.\" Colin Wood for the NetBSD Project. +.\" 4. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 31, 2018 +.Dt ADB 4 +.Os +.Sh NAME +.Nm adb +.Nd Apple Desktop Bus driver +.Sh SYNOPSIS +.Cd "adb* at obio?" +.Pp +.Cd "options MRG_ADB" +.Pp +.In machine/adbsys.h +.Sh DESCRIPTION +The Apple Desktop Bus +.Pq Tn ADB +is the single-master, multiple-slave, low-speed serial bus +interface used by Macintosh computers to connect input devices +such as keyboards, mice, trackpads, trackballs, and graphics tablets +to the machine. +.Nx +provides support for the Apple Desktop Bus as found on all supported +mac68k models, as well as macppc models with on-board +.Tn ADB +(PowerBooks and +.Dq Old World +models). +.Pp +The +.Nm +driver accesses the +.Tn ADB +controller using the so-called +.Dq HWDIRECT +method. +This method of access bypasses the Macintosh ROM and uses only +.Nx +routines for ADB access. +This is the only method supported on macppc and is the default for +mac68k systems. +.Pp +On mac68k systems there is an alternate method of accessing the +.Tn ADB +controller. +With the Macintosh ROM Glue +.Pq Tn MRG +method, the routines written for MacOS are used. +To enable this method of +.Tn ADB +access, uncomment the line: +.Pp +.Cd options MRG_ADB +.Pp +in your kernel configuration file. +.Pp +The +.Xr ioctl 2 +call is used to control the +.Tn ADB +event device. +The following is a list of available +.Xr ioctl 2 +commands: +.Bl -tag -width ADBIOC_GETREPEAT +.It Dv ADBIOC_DEVSINFO +Get +.Tn ADB +Device Info +.Pp +The +.Nm +event device will return an array of information containing an entry +for each device connected to the bus. +Each entry contains the current address, default address, and +handler ID for the corresponding +.Tn ADB +device. +.It Dv ADBIOC_GETREPEAT +Get Keyboard Repeat Info +.Pp +Returns a structure containing the current keyboard repeat delay +and keyboard repeat interval. +.It Dv ADBIOC_SETREPEAT +Set Keyboard Repeat Rate +.Pp +Sets the keyboard repeat delay and interval to the values specified +by +.Ar argp . +.It Dv ADBIOC_RESET +.Tn ADB +Reset +.Pp +Perform a reset of the +.Tn ADB +which will reinitialize all of the devices attached to the bus. +.It Dv ADBIOC_LISTENCMD +ADB Listen Command +.Pp +Send data to the register of the +.Tn ADB +device specified by +.Ar argp . +This command is not fully implemented at this time. +.El +.Sh SUPPORTED DEVICES +.Nx +includes support for the following +.Tn ADB +devices, sorted by driver name: +.Bl -tag -width akbd -offset indent +.It abtn +ADB mouse button? +.It aed +ADB event device +.It akbd +ADB keyboard +.It ams +ADB mouse +.It apm +APM emulation +.El +.Sh FILES +.Bl -tag -width /dev/adb -compact +.It Pa /dev/adb +The +.Tn ADB +event device. +.El +.Sh DIAGNOSTICS +.Bl -diag +.It aed0 at adb0 addr 0: ADB Event device +This is a normal autoconfiguration message noting the presence of the +.Nm +event device. +.It adb0 at obio0 offset 0x16000 irq 18: 2 targets +A standard autoconfiguration message indicating the initialization +of the +.Tn ADB +subsystem. +.It "adb: no devices found." +No +.Tn ADB +devices were found to be connected to the bus during autoconfiguration. +.It "adb: using %s series hardware support." +Indicates the class of +.Tn ADB +hardware support the machine uses. +.It "adb: hardware type unknown for this machine." +The +.Tn ADB +hardware in this machine is currently unsupported. +.It "adb: no ROM ADB driver in this kernel for this machine." +The kernel lacks the necessary Macintosh ROM Glue +.Pq Tn MRG +support for accessing the +.Tn ADB +hardware on this machine. +.It "adb: using serial console." +A serial console will be used for user input rather than the +.Tn ADB +event device. +.It "adb: %s at %d." +An +.Tn ADB +device of the type specified by +.Em %s +has been found at location +.Em %d . +.El +.Sh SEE ALSO +.Xr aed 4 , +.Xr akbd 4 , +.Xr ams 4 , +.Xr apm 4 +.Sh HISTORY +The +.Nm +interface first appeared in +.Nx 0.9 . +It has been under development ever since. +.Sh AUTHORS +.An -nosplit +.An "Bradley A. Grantham" +wrote the original +.Nm +driver, including the +.Tn MRG +support. +The hardware direct interface was written by +.An "John P. Wittkowski" . +The PowerManager interface was written by +.An "Takashi Hamada" . +.Sh BUGS +.Bl -bullet +.It +Not every class of +.Tn ADB +hardware is supported yet. +.It +The talk command is currently unimplemented. +.It +The listen command is not implemented yet. +.It +Not all multi-button mice are currently supported. +.It +Only mapped and relative-position +.Tn ADB +devices +.Pq i.e. keyboards and mice +are supported. +Thus absolute-position and other exotic devices will not work. +.It +Some of the diagnostic messages in this man page need to be updated. +.El +.Pp +Some mac68k machines contain so-called dirty ROM. +These machines are the: Mac SE/30, Mac II, Mac IIx, and Mac IIcx. +Machines with dirty ROM may experience trouble booting if the MRG code +is used, especially under the following conditions: +.Bl -bullet -compact -offset indent +.It +Both a keyboard and a mouse are not attached to the computer. +.It +An extended keyboard is attached to the computer. +.El +.Pp +On (some) machines with dirty ROM, the ROM indicates the presence of a +.Dq ghost +keyboard or mouse. +When this nonexistent device is probed for, the result is an infinite +loop. +This is believed to be triggered by the +.Nm +driver probing for extended mice, and non-EMP Logitech mice. diff --git a/static/netbsd/man4/adbbt.4 b/static/netbsd/man4/adbbt.4 new file mode 100644 index 00000000..e3154c08 --- /dev/null +++ b/static/netbsd/man4/adbbt.4 @@ -0,0 +1,50 @@ +.\" $NetBSD: adbbt.4,v 1.5 2009/03/09 19:24:28 joerg Exp $ +.\" +.\" Copyright (c) 2007 +.\" Michael Lorenz. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd May 14, 2007 +.Dt ADBBT 4 +.Os +.Sh NAME +.Nm adbbt +.Nd support for ADB hotkey devices found in some Apple laptops +.Sh SYNOPSIS +.Cd "adbbt* at nadb?" +.Cd "wskbd* at adbbt?" +.Sh DESCRIPTION +The +.Nm +driver handles all ADB hotkey devices within the +.Xr wscons 4 +framework. +So far it only translates button events back to their corresponding +function key codes. +.Sh SEE ALSO +.Xr nadb 4 , +.Xr wskbd 4 , +.Xr wsconsctl 8 +.Sh BUGS +Actually send hotkey events at least for the classes we can handle +like display brightness. diff --git a/static/netbsd/man4/adbkbd.4 b/static/netbsd/man4/adbkbd.4 new file mode 100644 index 00000000..28a2ef72 --- /dev/null +++ b/static/netbsd/man4/adbkbd.4 @@ -0,0 +1,62 @@ +.\" $NetBSD: adbkbd.4,v 1.4 2009/03/09 19:24:28 joerg Exp $ +.\" +.\" Copyright (c) 2007 +.\" Michael Lorenz. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd May 14, 2007 +.Dt ADBKBD 4 +.Os +.Sh NAME +.Nm adbkbd +.Nd support for ADB keyboards +.Sh SYNOPSIS +.Cd "adbkbd* at nadb?" +.Cd "wskbd* at adbkbd? console ? mux 1" +.Cd "wsmouse* at adbkbd?" +.Sh DESCRIPTION +The +.Nm +driver handles most ADB keyboards within the +.Xr wscons 4 +framework. +It also provides an interface to translate key strokes to mouse +button events. +.Pp +Which keys are translated to mouse button events can be configured +for each individual keyboard via +.Xr sysctl 8 : +.Bl -tag +.It Dv machdep.adbkbd0.middle +Controls which scan code is used for middle mouse button events. +Default is 103, which corresponds to F11. +.It Dv machdep.adbkbd0.right +Controls which scan code is used for right mouse button events. +Default is 111, which corresponds to F12. +.El +.Sh SEE ALSO +.Xr nadb 4 , +.Xr wskbd 4 , +.Xr wsmouse 4 , +.Xr wsconsctl 8 , +.Xr wskbd 9 diff --git a/static/netbsd/man4/adbms.4 b/static/netbsd/man4/adbms.4 new file mode 100644 index 00000000..9a51fcec --- /dev/null +++ b/static/netbsd/man4/adbms.4 @@ -0,0 +1,54 @@ +.\" $NetBSD: adbms.4,v 1.5 2009/03/09 19:24:28 joerg Exp $ +.\" +.\" Copyright (c) 2007 +.\" Michael Lorenz. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd May 14, 2007 +.Dt ADBMS 4 +.Os +.Sh NAME +.Nm adbms +.Nd support for ADB mice, trackballs, and touchpads +.Sh SYNOPSIS +.Cd "adbms* at nadb?" +.Cd "wsmouse* at adbms?" +.Sh DESCRIPTION +The +.Nm +driver handles most relative ADB pointing devices within the +.Xr wscons 4 +framework. +For touchpads it also provides support for translating tapping the +pad to mouse button events. +.Pp +Tapping support can be turned on or off on a per-device basis using +.Xr sysctl 8 : +.Bl -tag +.It Dv machdep.adbms0.tapping +0 disables tapping, 1 enables it. +.El +.Sh SEE ALSO +.Xr nadb 4 , +.Xr wsmouse 4 , +.Xr wsconsctl 8 diff --git a/static/netbsd/man4/adc.4 b/static/netbsd/man4/adc.4 new file mode 100644 index 00000000..2dbec6a1 --- /dev/null +++ b/static/netbsd/man4/adc.4 @@ -0,0 +1,50 @@ +.\" $NetBSD: adc.4,v 1.1 2003/10/21 01:38:27 uwe Exp $ +.\" +.\" Copyright (c) 2003 Valeriy E. Ushakov +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd October 21, 2003 +.Dt ADC 4 +.Os +.Sh NAME +.Nm adc +.Nd SuperH on-chip analog/digital converter +.Sh SYNOPSIS +.Cd "adc* at shb?" +.Sh DESCRIPTION +The +.Nm +driver provides support for a 10-bit successive-approximation A/D +converter with a selection of up to eight analog input channels. +ADC is an on-chip module found in some SuperH microprocessors (SH7709 +and others). +.Sh SEE ALSO +.Xr shb 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 2.0 . diff --git a/static/netbsd/man4/adm1026hm.4 b/static/netbsd/man4/adm1026hm.4 new file mode 100644 index 00000000..aebdd6d9 --- /dev/null +++ b/static/netbsd/man4/adm1026hm.4 @@ -0,0 +1,101 @@ +.\" $NetBSD: adm1026hm.4,v 1.4 2026/02/16 19:14:42 uwe Exp $ +.\" +.\" Copyright (c) 2015 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Julian Coleman. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd February 16, 2026 +.Dt ADM1026HM 4 +.Os +.Sh NAME +.Nm adm1026hm +.Nd Analog Devices ADM1026 complete thermal system management controller +.Sh SYNOPSIS +.Cd "adm1026hm* at iic? addr?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the Analog Devices ADM1026 hardware monitor. +The chip possesses 8 fan speed sensors, 3 temperature sensors, +and 17 voltage sensors. +The number of each sensor type configured by the driver depends on the +chip configuration. +.Pp +The values of the sensors are made available through the +.Xr envstat 8 +interface. +.Bl -column ".Li V3.3 standby" "mV DC" -offset indent +.It Sy Sensor Ta Sy Units Ta Sy Description +.It Li fan Ar N Ta RPM Ta Fan 0\^\(en7 +.It Li internal Ta C Ta Internal temperature +.It Li external Ar N Ta C Ta External temperature 1\(en2 +.It Li Vbatt Ta mV DC Ta Battery voltage +.It Li V3.3 standby Ta mV DC Ta 3.3V standby voltage +.It Li V3.3 main Ta mV DC Ta 3.3V main voltage +.It Li V5.0 Ta mV DC Ta 5.0V supply voltage +.It Li V+12 Ta mV DC Ta +12V supply voltage +.It Li V-12 Ta mV DC Ta \-12V supply voltage +.It Li V3.3 Ar N Ta mV DC Ta Analog in (3.3V reference) 0\^\(en5 +.It Li V2.5 Ar N Ta mV DC Ta Analog in (2.5V reference) 0\^\(en3 +.El +.Pp +Configurable limits for the sensors are also available via +.Xr envstat 8 . +Initial limit values are read from the chip. +Each temperature sensor has a high, therm and low limit, which are +mapped to +.Fa critmax , +.Fa warnmax +and +.Fa warnmin , +respectively. +Voltage sensors have high +.Pq Fa warnmax +and low +.Pq Fa warnmin +limits. +Fan sensors have a high limit mapped to +.Fa warnmin , +because the fan measurements are revolution intervals, so higher +numbers correlate to lower fan speeds. +.Sh SEE ALSO +.Xr iic 4 , +.Xr intro 4 , +.Xr envstat 8 +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Julian Coleman Aq Mt jcoleman@NetBSD.org . +.Sh BUGS +It's not possible to determine if either a sensor is not connected, +or the monitored device is producing no output. +Therefore, unconnected sensors will show outputs of 0. +.Pp +The +.Nm +driver does not support interrupt output nor the built-in EEPROM. diff --git a/static/netbsd/man4/admtemp.4 b/static/netbsd/man4/admtemp.4 new file mode 100644 index 00000000..f1eb105f --- /dev/null +++ b/static/netbsd/man4/admtemp.4 @@ -0,0 +1,86 @@ +.\" $NetBSD: admtemp.4,v 1.6 2016/01/03 21:58:17 jdc Exp $ +.\" +.\" $OpenBSD: admtemp.4,v 1.8 2007/05/31 19:19:48 jmc Exp $ +.\" +.\" Copyright (c) 2005 Theo de Raadt +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd December 31, 2015 +.Dt ADMTEMP 4 +.Os +.Sh NAME +.Nm admtemp +.Nd Analog Devices ADM1021 temperature sensor +.Sh SYNOPSIS +.Cd "admtemp* at iic? addr 0x18" +.Sh DESCRIPTION +The +.Nm +driver provides support for the Analog Devices ADM1021, +Analog Devices ADM1023, Analog Devices ADM1032, Genesys Logic GL523SM, +Global Mixed-mode Technology G781, Texas Instruments LM84, Maxim 1617, +Maxim 1617A, Philips Semiconductors NE1617A, and Xeon embedded temperature +sensors. +The device possesses internal and external temperature sensors, and +programmable low and high temperature limits, with a temperature range of +-65 to +127 degC and a resolution of 1 degC. +.Pp +On i386 machines, this driver also supports the Xeon embedded +I2C temperature probes. +In this case, however, only one temperature value is provided. +.Pp +Exceeding the temperature limits causes the device to assert an Alarm signal, +which can be used by other hardware to detect critical conditions. +.Pp +Some sensors differ from the ADM1021, MAX1617 and NE1617A: +.Bl -item -offset indent +.It +The ADM1021A, ADM1023, ADM1032, and G781 have a temperature range of 0 to ++127 degC and a resolution of 1 degC. +.It +The LM84 has no low temperature limits. +.It +The ADM1023, ADM1032, and G781 have extended precision remote temperature +sensors, with a range of 0 to +127.875 degC and a resolution of 0.125 degC. +.It +The ADM1032 and G781 have additional high temperature limits with a range of +0 to +127 degC and a resolution of 1 degC. +If these are exceeded, a separate Therm signal is asserted. +.El +.Pp +The sensor and limit values are made available through the +.Xr envstat 8 +interface. +For devices without additional high temperature limits, the limits that are +displayed and set are the critical limits. +For devices with additional high temperature limits, high and low temperature +warning limits and high temperature critical limits are displayed and can be +set. +.Sh SEE ALSO +.Xr iic 4 , +.Xr intro 4 , +.Xr envstat 8 +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Theo de Raadt Aq Mt deraadt@openbsd.org . +Extended precision temperatures, and limit display and setting were added by +.An Julian Coleman Aq Mt jdc@NetBSD.org . +.Sh BUGS +Limit sensors occasionally read as 0xff. +If this occurs, the +.Nm +driver will ignore that limit. diff --git a/static/netbsd/man4/adv.4 b/static/netbsd/man4/adv.4 new file mode 100644 index 00000000..f936773a --- /dev/null +++ b/static/netbsd/man4/adv.4 @@ -0,0 +1,157 @@ +.\" $NetBSD: adv.4,v 1.10 2012/10/13 15:28:34 njoly Exp $ +.\" +.\" Copyright (c) 1999 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 4, 1999 +.Dt ADV 4 +.Os +.Sh NAME +.Nm adv +.Nd ConnectCom Solutions AdvanSys SCSI adapter driver +.Sh SYNOPSIS +.Cd "adv* at pci? dev ? function ?" +.Cd "adv0 at isa? port ? irq ? drq ?" +.Cd "adv* at cardbus? function ?" +.Cd "scsibus* at adv?" +.Sh DESCRIPTION +The +.Nm +driver supports the following +.Tn AdvanSys +.Tn SCSI +host adapters +.\" .It Tn AdvanSys 1200[A,B] +.Ss PCI bus +Connectivity Products: +.Bl -tag -width "ABP510/5150" -offset indent -compact +.It ABP920 +Bus-Master PCI (16 CDB) +.It ABP930 +Bus-Master PCI (16 CDB) +(note 1) +.It ABP930U +Bus-Master PCI Ultra (16 CDB) +.It ABP930UA +Bus-Master PCI Ultra (16 CDB) +.It ABP960 +Bus-Master PCI MAC/PC (16 CDB) +(note 2) +.It ABP960U +Bus-Master PCI MAC/PC Ultra (16 CDB) +(note 2) +.El +.Pp +Notes: +.Bl -enum -compact +.It +This board has been sold by SIIG as the Fast SCSI Pro PCI. +.It +This board has been sold by Iomega as a Jaz Jet PCI adapter. +.El +.Pp +Single Channel Products: +.Bl -tag -width "ABP510/5150" -offset indent -compact +.It ABP940 +Bus-Master PCI (240 CDB) +.It ABP940U +Bus-Master PCI Ultra (240 CDB) +.It ABP970 +Bus-Master PCI MAC/PC (240 CDB) +.It ABP970U +Bus-Master PCI MAC/PC Ultra (240 CDB) +.It ABP940UW +Bus-Master PCI Ultra-Wide (240 CDB) +.El +.Pp +Multi Channel Products: +.Bl -tag -width "ABP510/5150" -offset indent -compact +.It ABP950 +Dual Channel Bus-Master PCI (240 CDB Per Channel) +.It ABP980 +Four Channel Bus-Master PCI (240 CDB Per Channel) +.It ABP980U +Four Channel Bus-Master PCI Ultra (240 CDB Per Channel) +.El +.Ss ISA bus +Connectivity Products: +.Bl -tag -width "ABP510/5150" -offset indent -compact +.It ABP510/5150 +Bus-Master ISA (240 CDB) (note 1) +.It ABP5140 +Bus-Master ISA (16 CDB) (note 1) (note 2) +.It ABP5142 +Bus-Master ISA with floppy (16 CDB) (note 3) +.El +.Pp +Notes: +.Bl -enum -compact +.It +This board has been shipped by +.Tn HP +with the 4020i +.Tn CD-R +drive. +The board has no +.Tn BIOS +so it cannot control a boot device, but +it can control any secondary +.Tn SCSI +device. +.It +This board has been sold by SIIG as the i540 SpeedMaster. +.It +This board has been sold by SIIG as the i542 SpeedMaster. +.El +.Pp +Single Channel Products: +.Bl -tag -width "ABP510/5150" -offset indent -compact +.It ABP542 +Bus-Master ISA with floppy (240 CDB) +.It ABP842 +Bus-Master VL (240 CDB) +.El +.Pp +Dual Channel Products: +.Bl -tag -width "ABP510/5150" -offset indent -compact +.It ABP852 +Dual Channel Bus-Master VL (240 CDB Per Channel) +.El +.Sh SEE ALSO +.Xr cd 4 , +.Xr ch 4 , +.Xr intro 4 , +.Xr isa 4 , +.Xr pci 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr st 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.4 . +.Sh AUTHORS +.An Baldassare Dante Profeta +.Aq dante@mclink.it diff --git a/static/netbsd/man4/adw.4 b/static/netbsd/man4/adw.4 new file mode 100644 index 00000000..c25f8a11 --- /dev/null +++ b/static/netbsd/man4/adw.4 @@ -0,0 +1,100 @@ +.\" $NetBSD: adw.4,v 1.8 2003/02/14 15:20:18 grant Exp $ +.\" +.\" Copyright (c) 1998, 1999, 2000 Baldassare Dante Profeta +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" +.Dd February 3, 2000 +.Dt ADW 4 +.Os +.Sh NAME +.Nm adw +.Nd ConnectCom Solutions AdvanSys PCI Ultra Wide SCSI host adapter driver +.Sh SYNOPSIS +.Cd "adw* at pci? dev ? function ?" +.Cd "scsibus* at adw?" +.Pp +.Cd "options FAILSAFE" +.Cd "options SCSI_ADW_WDTR_DISABLE=mask" +.Cd "options SCSI_ADW_SDTR_DISABLE=mask" +.Cd "options SCSI_ADW_TAGQ_DISABLE=mask" +.Sh DESCRIPTION +The +.Nm +driver provides support for the ADW (AdvanSys) ABP-940UW, ASB-3940UW, +ASB-3940U2W +.Tn SCSI +host adapters. +.Pp +The following kernel configuration options are available: +.Bl -ohang +.It Cd options FAILSAFE +Disables tagged command queuing, wide data transfers and synchronous +data transfers for all +.Tn SCSI +devices controlled by the +.Nm +driver. +By default, tagged command queuing, wide data transfers and +synchronous data transfers are used if the +.Tn SCSI +devices support them. +.Pp +The following options use a +.Em mask +to specify which SCSI peripherals the option applies to. +The +.Em mask +is a 16 bit bitfield value. Each bit corresponds to a peripheral ID. +The LSB (bit 0) corresponds to the peripheral with ID 0. +The MSB (bit 15) corresponds to the peripheral with ID 15. +The following features cannot be disabled for the host adapter, which by +default has ID 7. +.It Cd options SCSI_ADW_WDTR_DISABLE=mask +Disable +.Tn WIDE +data transfer for the peripherals specified by the mask value. +.It Cd options SCSI_ADW_SDTR_DISABLE=mask +Disable +.Tn SYNCHRONOUS +data transfer for the peripherals specified by the mask value. +.It Cd options SCSI_ADW_TAGQ_DISABLE=mask +Disable +.Tn TAGGED COMMAND QUEUING +for the peripherals specified by the mask value. +.El +.Sh SEE ALSO +.Xr cd 4 , +.Xr ch 4 , +.Xr intro 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr st 4 , +.Xr uk 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.4 . +.Sh AUTHORS +.An Baldassare Dante Profeta +.Aq dante@NetBSD.org . diff --git a/static/netbsd/man4/age.4 b/static/netbsd/man4/age.4 new file mode 100644 index 00000000..040c171e --- /dev/null +++ b/static/netbsd/man4/age.4 @@ -0,0 +1,91 @@ +.\" $NetBSD: age.4,v 1.4 2009/05/05 09:58:40 cegger Exp $ +.\" $OpenBSD: age.4,v 1.2 2009/01/16 06:03:44 jmc Exp $ +.\" +.\" Copyright (c) 2009 Kevin Lo +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd May 5, 2009 +.Dt AGE 4 +.Os +.Sh NAME +.Nm age +.Nd Attansic L1 10/100/Gigabit Ethernet device +.Sh SYNOPSIS +.Cd "age* at pci?" +.Cd "atphy* at mii?" +.Sh DESCRIPTION +The +.Nm +driver provides support for Ethernet interfaces based on the +Attansic L1 Ethernet chipset. +.Pp +The +.Nm +driver supports IPv4 receive IP/TCP/UDP checksum offload and VLAN +tag insertion and stripping. +.Pp +The following +.Ar media +types are supported: +.Pp +.Bl -tag -width autoselect -compact +.It Cm autoselect +Enable autoselection of the media type and options. +.It Cm 10baseT +Set 10Mbps operation. +.It Cm 100baseTX +Set 100Mbps (Fast Ethernet) operation. +.It Cm 1000baseT +Set 1000Mbps (Gigabit Ethernet) operation. +.El +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +To view a list of media types and options supported by the card, try +.Ic ifconfig Ao Ic device Ac Ic media . +For example, +.Ic ifconfig age0 media . +.Sh SEE ALSO +.Xr arp 4 , +.Xr atphy 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr netintro 4 , +.Xr pci 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Ox 4.5 . +It was then ported to +.Nx 5.1 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Pyun YongHyeon +for +.Fx , +ported to +.Ox +by +.An Kevin Lo +.Aq kevlo@OpenBSD.org +then ported to +.Nx +by +.An Christoph Egger +.Aq cegger@NetBSD.org . diff --git a/static/netbsd/man4/agp.4 b/static/netbsd/man4/agp.4 new file mode 100644 index 00000000..2a522341 --- /dev/null +++ b/static/netbsd/man4/agp.4 @@ -0,0 +1,246 @@ +.\" $NetBSD: agp.4,v 1.17 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Gregory McGarry. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 3, 2010 +.Dt AGP 4 +.Os +.Sh NAME +.Nm agp +.Nd accelerated graphics port driver +.Sh SYNOPSIS +.Cd "agp* at pchb?" +.Sh DESCRIPTION +The +.Nm +driver provides machine-independent support for the accelerated +graphics port (AGP) found on many PC-based and PCI systems. +The AGP specification was designed by Intel. +.Pp +The AGP chipset is positioned between the PCI-Host bridge and the +graphics accelerator to provide a high-performance dedicated graphics +bus for moving large amounts of data directly from host memory to the +graphics accelerator. +The specification currently supports a peak bandwidth of 528 MB/s. +AGP uses a Graphics Address Remapping Table (GART) to provide a +physically-contiguous view of scattered pages in host memory for +DMA transfers. +.Pp +The +.Nm +driver supports the following chipsets: +.Pp +.Bl -dash -compact -offset indent +.It +ALI M1541 host-to-AGP bridge +.It +AMD 751 and 761 host-to-AGP bridges +.It +Intel 82810, 82810-DC100, 82810E, and 82815 SVGA controllers +.It +SiS 5591 host-to-AGP bridge +.It +VIA +.El +.Pp +The +.Nm +driver also provides an interface to user processes for use by X +servers. +A user process communicates to the device initially by means of +.Xr ioctl 2 +calls. +The calls supported are: +.Bl -tag -width indent +.It Dv AGPIOC_INFO +Get AGP information, setting the members in the +.Em agp_info +structure as defined in : +.Bd -literal +typedef struct _agp_info { + agp_version version; /* version of the driver */ + uint32_t bridge_id; /* bridge vendor/device */ + uint32_t agp_mode; /* mode info of bridge */ + off_t aper_base; /* base of aperture */ + size_t aper_size; /* size of aperture */ + size_t pg_total; /* max pages (swap + system) */ + size_t pg_system; /* max pages (system) */ + size_t pg_used; /* current pages used */ +} agp_info; +.Ed +.It Dv AGPIOC_ACQUIRE +Acquire AGP. +.It Dv AGPIOC_RELEASE +Release AGP. +.It Dv AGPIOC_SETUP +Set up AGP, using the members in the +.Em agp_setup +structure as defined in : +.Bd -literal +typedef struct _agp_setup { + uint32_t agp_mode; /* mode info of bridge */ +} agp_setup; +.Ed +.It Dv AGPIOC_ALLOCATE +Allocate AGP space, using and setting the members in the +.Em agp_allocate +structure as defined in : +.Bd -literal +typedef struct _agp_allocate { + int key; /* tag of allocation */ + size_t pg_count; /* number of pages */ + uint32_t type; /* 0 == normal, other devspec */ + uint32_t physical; /* device specific (some devices + * need a phys address of the + * actual page behind the gatt + * table) */ +} agp_allocate; +.Ed +.It Dv AGPIOC_DEALLOCATE +Deallocate AGP space. +.It Dv AGPIOC_BIND +Bind AGP space, using the members in the +.Em agp_bind +structure as defined in : +.Bd -literal +typedef struct _agp_bind { + int key; /* tag of allocation */ + off_t pg_start; /* starting page to populate */ +} agp_bind; +.Ed +.It Dv AGPIOC_UNBIND +Unbind AGP space, using the members in the +.Em agp_unbind +structure as defined in : +.Bd -literal +typedef struct _agp_unbind { + int key; /* tag of allocation */ + uint32_t priority; /* priority for paging out */ +} agp_unbind; +.Ed +.El +.Sh FILES +.Bl -tag -width /dev/agpgart -compact +.It Pa /dev/agp? +AGP GART device special files +.It Pa /dev/agpgart +AGP GART device special file +.El +.Sh EXAMPLES +This short code fragment is an example of opening the AGP device +and performing some basic operations: +.Bd -literal +#include +#include +#include +#include +#include + +int +main(int argc, char **argv) +{ + int fd; + agp_info info; + agp_allocate alloc; + agp_setup setup; + agp_bind bind; + agp_unbind unbind; + + fd = open("/dev/agp0", O_RDWR); + if (fd < 0) + err(1, "open"); + + if (ioctl(fd, AGPIOC_INFO, &info) < 0) + err(2, "ioctl AGPIOC_INFO"); + + printf("version: %u.%u\\n", info.version.major, + info.version.minor); + + printf("id: %x\\n", info.bridge_id); + printf("mode: %x\\n", info.agp_mode); + printf("base: %x\\n", info.aper_base); + printf("size: %uM\\n", info.aper_size); + printf("total mem: %u\\n", info.pg_total); + printf("system mem: %u\\n", info.pg_system); + printf("used mem: %u\\n\\n", info.pg_used); + + setup.agp_mode = info.agp_mode; + + if (ioctl(fd, AGPIOC_SETUP, &setup) < 0) + err(3, "ioctl AGPIOC_SETUP"); + + if (ioctl(fd, AGPIOC_ACQUIRE, 0) < 0) + err(3, "ioctl AGPIOC_ACQUIRE"); + + alloc.type = 0; + alloc.pg_count = 64; + + if (ioctl(fd, AGPIOC_ALLOCATE, &alloc) < 0) + err(4, "ioctl AGPIOC_ALLOCATE"); + + printf("alloc key %d, paddr %x\\n", alloc.key, alloc.physical); + if (ioctl(fd, AGPIOC_INFO, &info) < 0) + err(5, "ioctl AGPIOC_INFO"); + + bind.key = alloc.key; + bind.pg_start = 0x1000; + + if (ioctl(fd, AGPIOC_BIND, &bind) < 0) + err(6, "ioctl AGPIOC_BIND"); + + printf("used mem now: %u\\n\\n", info.pg_used); + + unbind.key = alloc.key; + unbind.priority = 0; + + if (ioctl(fd, AGPIOC_UNBIND, &unbind) < 0) + err(6, "ioctl AGPIOC_BIND"); + + if (ioctl(fd, AGPIOC_DEALLOCATE, &alloc.key) < 0) + err(6, "ioctl AGPIOC_DEALLOCATE"); + + if (ioctl(fd, AGPIOC_RELEASE, 0) < 0) + err(7, "ioctl AGPIOC_RELEASE"); + + close(fd); + + printf("agp test successful\\n"); + + return 0; +} +.Ed +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr pci 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 4.1 . +It was adopted in +.Nx 1.6 . diff --git a/static/netbsd/man4/agr.4 b/static/netbsd/man4/agr.4 new file mode 100644 index 00000000..d3c98902 --- /dev/null +++ b/static/netbsd/man4/agr.4 @@ -0,0 +1,172 @@ +.\" $NetBSD: agr.4,v 1.12 2023/10/11 11:00:17 wiz Exp $ +.\" +.\" Copyright (c)2005, 2007 YAMAMOTO Takashi, +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" ------------------------------------------------------------ +.Dd February 23, 2010 +.Dt AGR 4 +.Os +.\" ------------------------------------------------------------ +.Sh NAME +.Nm agr +.Nd link aggregation pseudo network interface driver +.\" ------------------------------------------------------------ +.Sh SYNOPSIS +.Cd pseudo-device agr +.\" ------------------------------------------------------------ +.Sh DESCRIPTION +.Em The driver described in this manual page is obsolete +.Em and will be removed from a future version of the system. +.Pp +.Xr lagg 4 +.Em should be used instead. +.Pp +The +.Nm +driver provides link aggregation functionality (a.k.a. L2 trunking +or bonding). +.Pp +It supports the IEEE 802.3ad Link Aggregation Control Protocol +(LACP) and the Marker Protocol. +.Pp +The +.Nm +driver supports the following link specific flags for +.Xr ifconfig 8 : +.Bl -tag -width "-link0" +.It Cm link0 +Use the round-robin distribution algorithm. +Don't use it unless you're really sure, +because it violates the frame ordering rule. +.It Cm -link0 +Use the default distribution algorithm, which is based on the hash +of DA/SA, TCI, and, if available, some upper layer protocol +information like +.Xr ip 4 +DA/SA. +.It Cm link1 +Disable LACP. +Prevents any LACP or Marker messaging which leaves +the ports in the default static configuration. +Set this prior to adding ports. +.El +.\" ------------------------------------------------------------ +.Sh EXAMPLES +Create an +.Nm +interface, +.Sy agr0 , +and attach +.Sy re0 +and +.Sy re1 +to it. +In other words, aggregate +.Sy re0 +and +.Sy re1 +so that they can be used as a single interface, +.Sy agr0 . +The physical interfaces which are attached to the +.Nm +interface must not have any IP addresses, neither IPv4 nor IPv6. +.Bd -literal -offset indent + ifconfig re0 inet xxx.xxx.xxx.xxx delete + ifconfig re0 inet6 fe80::xxxx:xxxx:xxxx:xxxx delete + ifconfig re1 inet xxx.xxx.xxx.xxx delete + ifconfig re1 inet6 fe80::xxxx:xxxx:xxxx:xxxx delete + + ifconfig agr0 create + ifconfig agr0 agrport re0 + ifconfig agr0 agrport re1 +.Ed +.Pp +Destroy an interface created in the above example. +.Bd -literal -offset indent + ifconfig agr0 -agrport re0 + ifconfig agr0 -agrport re1 + ifconfig agr0 destroy +.Ed +.\" ------------------------------------------------------------ +.Sh SEE ALSO +.Xr lagg 4 , +.Xr ifconfig 8 +.\" ------------------------------------------------------------ +.Sh STANDARDS +IEEE 802.3ad Aggregation of Multiple Link Segments +.\" ------------------------------------------------------------ +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 4.0 +and was obsoleted in +.Nx 10.0 . +.Pp +The +.Nm +driver will be removed from +.Nx 11.0 . +.\" ------------------------------------------------------------ +.Sh AUTHORS +The +.Nm +driver was written by +.An YAMAMOTO Takashi . +.\" ------------------------------------------------------------ +.Sh BUGS +There is no way to configure LACP administrative variables, including +system and port priorities. +The current implementation of the +.Nm +driver always performs active-mode LACP and +uses 0x8000 as system and port priorities. +.Pp +The +.Nm +driver uses the MAC address of the first-added physical +interface as the MAC address of the +.Nm +interface itself. +Thus, removing the physical interface and using it for another purpose +can result in non-unique MAC addresses. +.Pp +The current implementation of the +.Nm +driver doesn't prevent unsafe operations like some ioctls against +underlying physical interfaces. +Such operations can result in unexpected behaviors, and are strongly +discouraged. +.Pp +There is no way to configure +.Nm +interfaces without attaching physical interfaces. +.Pp +Physical interfaces being added to the +.Nm +interface shouldn't have any addresses except for link level address. +Otherwise, the attempt will fail with +.Dv EBUSY . +Note that it includes an automatically assigned IPv6 link-local address. diff --git a/static/netbsd/man4/aha.4 b/static/netbsd/man4/aha.4 new file mode 100644 index 00000000..4a1d34d5 --- /dev/null +++ b/static/netbsd/man4/aha.4 @@ -0,0 +1,58 @@ +.\" $NetBSD: aha.4,v 1.12 2002/03/06 14:43:02 wiz Exp $ +.\" +.\" Copyright (c) 1994 James A. Jegers +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 29, 1994 +.Dt AHA 4 +.Os +.Sh NAME +.Nm aha +.Nd Adaptec 154x SCSI adapter driver +.Sh SYNOPSIS +.Cd "aha0 at isa? port 0x330 irq ? drq ?" +.Cd "aha* at isapnp?" +.Cd "aha* at mca? slot ?" +.Cd "scsibus* at aha?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the following +.Tn SCSI +adapters: +.Pp +.Bl -tag -width Dv -offset indent -compact +.It Tn Adaptec AHA-154xA +.It Tn Adaptec AHA-154xB +.It Tn Adaptec AHA-154xC +.It Tn Adaptec AHA-154xCF +.It Tn Buslogic BT-54x +.It Tn Adaptec AHA-1640 (MCA) +.El +.Sh SEE ALSO +.Xr cd 4 , +.Xr ch 4 , +.Xr intro 4 , +.Xr mca 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr st 4 diff --git a/static/netbsd/man4/ahb.4 b/static/netbsd/man4/ahb.4 new file mode 100644 index 00000000..8759aaca --- /dev/null +++ b/static/netbsd/man4/ahb.4 @@ -0,0 +1,52 @@ +.\" $NetBSD: ahb.4,v 1.9 2002/03/06 14:43:03 wiz Exp $ +.\" +.\" Copyright (c) 1994 James A. Jegers +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 29, 1994 +.Dt AHB 4 +.Os +.Sh NAME +.Nm ahb +.Nd Adaptec 1742 SCSI adapter driver +.Sh SYNOPSIS +.Cd "ahb0 at eisa? slot ? irq ?" +.Cd "scsibus* at ahb?" +.Sh DESCRIPTION +The +.Nm +driver implements support for the following card: +.Pp +.Bl -tag -width indent -offset indent -compact +.It Tn Adaptec +AHA-1742 +.Tn EISA +.Tn SCSI +adaptor +.El +.Sh SEE ALSO +.Xr cd 4 , +.Xr ch 4 , +.Xr intro 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr st 4 diff --git a/static/netbsd/man4/ahc.4 b/static/netbsd/man4/ahc.4 new file mode 100644 index 00000000..f570227f --- /dev/null +++ b/static/netbsd/man4/ahc.4 @@ -0,0 +1,402 @@ +.\" $NetBSD: ahc.4,v 1.36 2018/02/11 14:15:14 wiz Exp $ +.\" +.\" Copyright (c) 1995, 1996, 1997, 1998, 2000 +.\" Justin T. Gibbs. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man4/ahc.4,v 1.22 2000/02/14 16:40:58 gibbs Exp $ +.\" +.Dd July 16, 2007 +.Dt AHC 4 +.Os +.\".Os FreeBSD +.Sh NAME +.Nm ahc +.Nd Adaptec VL/EISA/PCI/CardBus SCSI host adapter driver +.Sh SYNOPSIS +.\" For one or more VL/EISA cards: +.\" .Cd device eisa +.\" .Cd device ahc +For VL cards: +.Cd "ahc0 at isa? port ? irq ?" +.Pp +For EISA cards: +.Cd "ahc* at eisa? slot ?" +.Pp +.\" For one or more PCI cards: +.\" .Cd device pci +.\" .Cd device ahc +For PCI cards: +.Cd "ahc* at pci? dev ? function ?" +.Pp +For CardBus cards: +.Cd "ahc* at cardbus? function ?" +.Pp +To allow PCI adapters to use memory mapped I/O if enabled: +.Cd options AHC_ALLOW_MEMIO +.Pp +Disable tagged queuing (avoids hangs on some hardware under load) +.Cd options AHC_NO_TAGS +.Pp +Change the default SCSI id for cards without a SEEPROM (default 7): +.Cd options AHC_CARDBUS_DEFAULT_SCSI_ID=integer +.Pp +.\" To configure one or more controllers to assume the target role: +.\" .Cd options AHC_TMODE_ENABLE +.\" .Pp +.\" For one or more SCSI buses: +.\" .Cd device scbus0 at ahc0 +For SCSI buses: +.Cd scsibus* at ahc? +.Sh DESCRIPTION +.\" This driver provides access to the SCSI bus(es) connected to Adaptec +.\" AIC7770, +.\" AIC7850, +.\" AIC7860, +.\" AIC7870, +.\" AIC7880, +.\" AIC7890, +.\" AIC7891, +.\" AIC7892, +.\" AIC7895, +.\" AIC7896, +.\" AIC7897 +.\" and +.\" AIC7899 +.\" host adapter chips. +.\" These chips are found on many motherboards as well as the following +.\" Adaptec SCSI controller cards: +.\" 274X(W), +.\" 274X(T), +.\" 284X, +.\" 2910, +.\" 2915, +.\" 2920C, +.\" 2930C, +.\" 2930U2, +.\" 2940, +.\" 2940U, +.\" 2940AU, +.\" 2940UW, +.\" 2940UW Dual, +.\" 2940UW Pro, +.\" 2940U2W, +.\" 2940U2B, +.\" 2950U2W, +.\" 2950U2B, +.\" 19160B, +.\" 29160, +.\" 29160B, +.\" 29160N, +.\" 3940, +.\" 3940U, +.\" 3940AU, +.\" 3940UW, +.\" 3940AUW, +.\" 3940U2W, +.\" 3950U2, +.\" 3960, +.\" 39160, +.\" 3985, +.\" and +.\" 4944UW . +The +.Nm +device driver supports SCSI controllers based on Adaptec AIC77xx +and AIC78xx SCSI host adapter chips found on many motherboards as well as +Adaptec SCSI controller cards. +.Pp +Driver features include support for twin and wide buses, +fast, ultra or ultra2 synchronous transfers depending on controller type, +.\" tagged queuing, SCB paging, and target mode. +tagged queuing and SCB paging. +.Pp +Memory mapped I/O can be enabled for PCI devices with the +.Dq Dv AHC_ALLOW_MEMIO +configuration option. +Memory mapped I/O is more efficient than the alternative, programmed I/O. +Most PCI BIOSes will map devices so that either technique for communicating +with the card is available. +In some cases, +usually when the PCI device is sitting behind a PCI->PCI bridge, +the BIOS may fail to properly initialize the chip for memory mapped I/O. +The typical symptom of this problem is a system hang if memory mapped I/O +is attempted. +Most modern motherboards perform the initialization correctly and work fine +with this option enabled. +.Pp +.\" Individual controllers may be configured to operate in the target role +.\" through the +.\" .Dq Dv AHC_TMODE_ENABLE +.\" configuration option. +.\" The value assigned to this option should be a bitmap +.\" of all units where target mode is desired. +.\" For example, a value of 0x25, would enable target mode on units 0, 2, and 5. +.\" .Pp +Per target configuration performed in the SCSI-Select menu, accessible at boot +in non-EISA models, +or through an EISA configuration utility for EISA models, +is honored by this driver. +This includes synchronous/asynchronous transfers, +maximum synchronous negotiation rate, +wide transfers, +disconnection, +the host adapter's SCSI ID, +and, +in the case of EISA Twin Channel controllers, +the primary channel selection. +For systems that store non-volatile settings in a system specific manner +rather than a serial EEPROM directly connected to the aic7xxx controller, +the BIOS must be enabled for the driver to access this information. +This restriction applies to all EISA and many motherboard configurations. +.Pp +Note that I/O addresses are determined automatically by the probe routines, +but care should be taken when using a 284x +.Pq VESA No local bus controller +in an EISA system. +The jumpers setting the I/O area for the 284x should match the EISA +slot into which the card is inserted to prevent conflicts with other +EISA cards. +.Pp +Performance and feature sets vary throughout the aic7xxx product line. +The following table provides a comparison of the different chips supported +by the +.Nm +driver. +Note that wide and twin channel features, although always supported +by a particular chip, may be disabled in a particular motherboard +or card design. +.Bl -column "aic7895c" "MIPS" "EISA/VL" "MaxSync" "MaxWidth" "SCBs" "2 3 4 5 6 7 8" +.It Sy Chip Ta Sy MIPS Ta Sy Bus Ta Sy MaxSync Ta Sy MaxWidth Ta Sy SCBs Ta Sy Features +.It aic7770 Ta 10 Ta EISA/VL Ta 10MHz Ta 16Bit Ta 4 Ta 1 +.It aic7850 Ta 10 Ta PCI/32 Ta 10MHz Ta 8Bit Ta 3 Ta "" +.It aic7860 Ta 10 Ta PCI/32 Ta 20MHz Ta 8Bit Ta 3 Ta "" +.It aic7870 Ta 10 Ta PCI/32 Ta 10MHz Ta 16Bit Ta 16 Ta "" +.It aic7880 Ta 10 Ta PCI/32 Ta 20MHz Ta 16Bit Ta 16 Ta "" +.It aic7890 Ta 20 Ta PCI/32 Ta 40MHz Ta 16Bit Ta 16 Ta 3 4 5 6 7 8 +.It aic7891 Ta 20 Ta PCI/64 Ta 40MHz Ta 16Bit Ta 16 Ta 3 4 5 6 7 8 +.It aic7892 Ta 20 Ta PCI/64 Ta 80MHz Ta 16Bit Ta 16 Ta 3 4 5 6 7 8 +.It aic7895 Ta 15 Ta PCI/32 Ta 20MHz Ta 16Bit Ta 16 Ta 2 3 4 5 +.It aic7895C Ta 15 Ta PCI/32 Ta 20MHz Ta 16Bit Ta 16 Ta 2 3 4 5 8 +.It aic7896 Ta 20 Ta PCI/32 Ta 40MHz Ta 16Bit Ta 16 Ta 2 3 4 5 6 7 8 +.It aic7897 Ta 20 Ta PCI/64 Ta 40MHz Ta 16Bit Ta 16 Ta 2 3 4 5 6 7 8 +.It aic7899 Ta 20 Ta PCI/64 Ta 80MHz Ta 16Bit Ta 16 Ta 2 3 4 5 6 7 8 +.El +.Bl -enum -compact +.It +Multiplexed Twin Channel Device - One controller servicing two buses. +.It +Multi-function Twin Channel Device - Two controllers on one chip. +.It +Command Channel Secondary DMA Engine - Allows scatter gather list and +SCB prefetch. +.It +64 Byte SCB Support - SCSI CDB is embedded in the SCB to eliminate an extra DMA. +.It +Block Move Instruction Support - Doubles the speed of certain sequencer +operations. +.It +.Sq Bayonet +style Scatter Gather Engine - Improves S/G prefetch performance. +.It +Queuing Registers - Allows queuing of new transactions without pausing the +sequencer. +.It +Multiple Target IDs - Allows the controller to respond to selection as a +target on multiple SCSI IDs. +.El +.Sh HARDWARE +Supported SCSI controllers include: +.Bl -item -offset indent +.It +Adaptec AHA-2742W EISA Fast Wide SCSI adapter +.It +Adaptec AHA-274xAT EISA dual channel Fast SCSI adapter +.It +Adaptec AHA-284x VL Fast SCSI adapter +.It +Adaptec AHA-2910 PCI Fast SCSI adapter (no SCSI BIOS) +.It +Adaptec AHA-2915 PCI Fast SCSI adapter (no SCSI BIOS) +.It +Adaptec AHA-2920C PCI Fast SCSI adapter +.Bl -item -offset indent +.It +Note: +Adaptec AHA-2920/A which use the Future Domain's chips are not supported +by this driver. +.El +.It +Adaptec AHA-2930C PCI Ultra SCSI adapter +.It +Adaptec AHA-2930U2 PCI Ultra2 Wide LVD SCSI adapter +.It +Adaptec AHA-2940 PCI Fast SCSI adapter +.It +Adaptec AHA-2940U PCI Ultra SCSI adapter +.It +Adaptec AHA-2940AU PCI Ultra SCSI adapter +.It +Adaptec AHA-2940UW PCI Ultra Wide SCSI adapter +.It +Adaptec AHA-2940UW Dual PCI dual channel Ultra Wide SCSI adapter +.It +Adaptec AHA-2940UW Pro PCI Ultra Wide SCSI adapter +.It +Adaptec AHA-2940U2W PCI Ultra2 Wide LVD SCSI adapter +.It +Adaptec AHA-2940U2B PCI Ultra2 Wide LVD SCSI adapter +.It +Adaptec AHA-2944W PCI Fast Wide Differential SCSI adapter +.It +Adaptec AHA-2944UW PCI Ultra Wide Differential SCSI adapter +.It +Adaptec AHA-2950U2W +.It +Adaptec AHA-2950U2B 64bit PCI Ultra2 Wide LVD SCSI adapter +.It +Adaptec AHA-19160B PCI Ultra160 Wide LVD SCSI adapter +.It +Adaptec ASC-29160 PCI Ultra160 Wide LVD SCSI adapter +.It +Adaptec AHA-29160N PCI Ultra160 Wide LVD SCSI adapter +.It +Adaptec AHA-29160B 64bit PCI Ultra160 Wide LVD SCSI adapter +.It +Adaptec AHA-3940 PCI dual channel Fast SCSI adapter +.It +Adaptec AHA-3940U PCI dual channel Ultra SCSI adapter +.It +Adaptec AHA-3940AU PCI dual channel Ultra SCSI adapter +.It +Adaptec AHA-3940UW PCI dual channel Ultra Wide SCSI adapter +.It +Adaptec AHA-3940AUW PCI dual channel Ultra Wide SCSI adapter +.It +Adaptec AHA-3940U2W PCI dual channel Ultra2 Wide LVD SCSI adapter +.It +Adaptec AHA-3950U2 64bit PCI dual channel Ultra2 Wide LVD SCSI adapter +.It +Adaptec AHA-3960 64bit PCI dual channel Ultra160 Wide LVD SCSI adapter +.It +Adaptec AHA-3985 PCI dual channel Fast SCSI RAID adapter +.It +Adaptec AHA-39160 64bit PCI dual channel Ultra160 Wide LVD SCSI adapter +.It +Adaptec AHA-4944UW PCI quad channel PCI Ultra Wide Differential SCSI adapter +.It +Other SCSI controllers based on the Adaptec AIC7770, AIC7850, +AIC7860, AIC7870, AIC7880, AIC7890, AIC7891, AIC7892, AIC7895, +AIC7896, AIC7897 and AIC7899 SCSI host adapter chips. +.El +.Sh SCSI CONTROL BLOCKS (SCBs) +Every transaction sent to a device on the SCSI bus is assigned a +.Sq SCSI Control Block +(SCB). +The SCB contains all of the information required by the controller +to process a transaction. +The chip feature table lists the number of SCBs that can be stored +in on-chip memory. +All chips with model numbers greater than or equal to 7870 allow +for the on chip SCB space to be augmented with external SRAM up to +a maximum of 255 SCBs. +Very few Adaptec controller configurations have external SRAM. +.Pp +If external SRAM is not available, SCBs are a limited resource. +Using the SCBs in a straight forward manner would only allow the driver to +handle as many concurrent transactions as there are physical SCBs. +To fully use the SCSI bus and the devices on it, +requires much more concurrency. +The solution to this problem is +.Em SCB Paging , +a concept similar to memory paging. +SCB paging takes advantage of the fact that devices usually disconnect +from the SCSI bus for long periods of time without talking to the +controller. +The SCBs for disconnected transactions are only of use to the +controller when the transfer is resumed. +When the host queues another transaction for the controller to +execute, the controller firmware will use a free SCB if one is +available. +Otherwise, the state of the most recently disconnected (and therefore +most likely to stay disconnected) SCB is saved, via DMA, to host +memory, and the local SCB reused to start the new transaction. +This allows the controller to queue up to +255 transactions regardless of the amount of SCB space. +Since the local SCB space serves as a cache for disconnected +transactions, the more SCB space available, the less host bus +traffic consumed saving and restoring SCB data. +.Sh SEE ALSO +.Xr aha 4 , +.Xr ahb 4 , +.Xr ahd 4 , +.Xr cd 4 , +.Xr ch 4 , +.Xr intro 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr st 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Fx 2.0 +and +.Nx 1.1 . +.Sh AUTHORS +The +.Nm +driver, the AIC7xxx sequencer-code assembler, +and the firmware running on the aic7xxx chips was written by +.An Justin T. Gibbs . +.Nx +porting is done by Stefan Grefen, Charles M. Hannum, +Michael Graff, Jason R. Thorpe, Pete Bentley, +Frank van der Linden and Noriyuki Soda. +.Sh BUGS +Some Quantum drives (at least the Empire 2100 and 1080s) will not run on an +AIC7870 Rev B in synchronous mode at 10MHz. +Controllers with this problem have a +42 MHz clock crystal on them and run slightly above 10MHz. +This confuses the drive and hangs the bus. +Setting a maximum synchronous negotiation rate of 8MHz in the SCSI-Select +utility will allow normal operation. +.Pp +.\" Although the Ultra2 and Ultra160 products have sufficient instruction +.\" ram space to support both the initiator and target roles concurrently, +.\" this configuration is disabled in favor of allowing the target role +.\" to respond on multiple target ids. +.\" A method for configuring dual +.\" role mode should be provided. +.\" .Pp +.\" Tagged Queuing is not supported in target mode. +.\" .Pp +.\" Reselection in target mode fails to function correctly on all high +.\" voltage differential boards as shipped by Adaptec. +.\" Information on +.\" how to modify HVD board to work correctly in target mode is available +.\" from Adaptec. +Target mode is not supported on +.Nx +version of this driver. diff --git a/static/netbsd/man4/ahcisata.4 b/static/netbsd/man4/ahcisata.4 new file mode 100644 index 00000000..c3827797 --- /dev/null +++ b/static/netbsd/man4/ahcisata.4 @@ -0,0 +1,69 @@ +.\" $NetBSD: ahcisata.4,v 1.7 2017/10/07 17:35:48 jdolecek Exp $ +.\" +.\" Copyright (c) 2006 Manuel Bouyer. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 7, 2017 +.Dt AHCISATA 4 +.Os +.Sh NAME +.Nm ahcisata +.Nd AHCI 1.0 and 1.1 compliant SATA controllers driver +.Sh SYNOPSIS +.Cd "ahcisata* at pci? dev ? function ? flags 0x0000" +.Sh DESCRIPTION +The +.Nm +driver supports SATA controllers compliant with the Serial ATA Advanced +Host Controller Interface Revision 1.0 or 1.1 specification, +and provides the interface to the hardware for the +.Xr ata 4 +driver. +.Pp +The +.Nm +driver will only attach if the controller has been put in AHCI mode by the +BIOS; if the controller is in pciide-compatible mode, it will be handled +by the appropriate driver +.Xr ( piixide 4 +for Intel AHCI controllers). +.Sh SEE ALSO +.Xr ata 4 , +.Xr atapi 4 , +.Xr intro 4 , +.Xr pci 4 , +.Xr pciide 4 , +.Xr wd 4 , +.Xr wdc 4 +.Rs +.%A Intel Corporation +.%T Serial ATA Advanced Host Controller Interface (AHCI) +.%N Revision 1.3 +.%D June 26, 2008 +.%U http://download.intel.com/technology/serialata/pdf/rev1_3.pdf +.Re +.Sh HISTORY +NCQ support was added +in +.Nx +on October 7, 2017 by +.An Jaromir Dolecek Aq Mt jdolecek@NetBSD.org . diff --git a/static/netbsd/man4/ahd.4 b/static/netbsd/man4/ahd.4 new file mode 100644 index 00000000..75869920 --- /dev/null +++ b/static/netbsd/man4/ahd.4 @@ -0,0 +1,194 @@ +.\" $NetBSD: ahd.4,v 1.6 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 1995, 1996, 1997, 1998, 2000 +.\" Justin T. Gibbs. All rights reserved. +.\" Copyright (c) 2002 +.\" Scott Long. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $FreeBSD: /repoman/r/ncvs/src/share/man/man4/ahd.4,v 1.5 2004/07/04 14:17:41 simon Exp $ +.\" +.Dd May 16, 2009 +.Dt AHD 4 +.Os +.Sh NAME +.Nm ahd +.Nd Adaptec PCI/PCI-X Ultra320 SCSI host adapter driver +.Sh SYNOPSIS +For one or more PCI/PCI-X cards: +.\".Bd -ragged -offset indent -compact +.Cd "ahd* at pci? dev ? function ?" +.Pp +To compile in debugging code: +.Bd -ragged -offset indent -compact +.Cd options AHD_DEBUG +.Cd options AHD_DEBUG_OPTS= +.Cd options AHD_REG_PRETTY_PRINT +.Ed +.Pp +.\" To configure one or more controllers to assume the target role: +.\" .Bd -ragged -offset indent -compact +.\" .Cd options AHD_TMODE_ENABLE= +.\" .Ed +.\" .Pp +.\" For one or more +.\" .Tn SCSI +.\" busses: +.\" .Bd -ragged -offset indent -compact +.\" .Cd device scbus +.\" .Ed +For +.Tn SCSI +busses: +.Cd scsibus* at ahd? +.Sh DESCRIPTION +This driver provides access to the +.Tn SCSI +bus(ses) connected to Adaptec +.Tn AIC79xx +host adapter chips. +.Pp +Driver features include support for narrow and wide busses, +fast, ultra, ultra2, ultra160, and ultra320 synchronous transfers, +packetized transfers, tagged queueing, +.\" 512 SCB's, and target mode. +and 512 SCBs. +.Pp +The +.Dv AHD_DEBUG_OPTS +option is used to control which diagnostic messages are printed to the +console when +.Dv AHD_DEBUG +is enabled. +Logically OR the following bits together: +.Bl -column -offset indent '0x0001' 'Function' +.It Em Value Ta Em Function +.It 0x0001 Ta Show miscellaneous information +.It 0x0002 Ta Show sense data +.It 0x0004 Ta Show Serial EEPROM contents +.It 0x0008 Ta Show bus termination settings +.It 0x0010 Ta Show host memory usage +.It 0x0020 Ta Show SCSI protocol messages +.It 0x0040 Ta Show mode pointer of the chip register window +.It 0x0080 Ta Show selection timeouts +.It 0x0100 Ta Show FIFO usage messages +.It 0x0200 Ta Show Queue Full status +.It 0x0400 Ta Show SCB queue status +.It 0x0800 Ta Show inbound packet information +.It 0x1000 Ta Show S/G list information +.It 0x2000 Ta Enable extra diagnostic code in the firmware +.El +.Pp +The +.Dv AHD_REG_PRETTY_PRINT +option compiles in support for human-readable bit definitions for each register +that is printed by the debugging code. +However, it also bloats the compiled +size of the driver by approximately 215KB. +.\" .Pp +.\" Individual controllers may be configured to operate in the target role +.\" through the +.\" .Dv AHD_TMODE_ENABLE +.\" configuration option. +.\" The value assigned to this option should be a bitmap +.\" of all units where target mode is desired. +.\" For example, a value of 0x25 would enable target mode on units 0, 2, and 5. +.\" Note that target mode is only supported for ultra160 speeds and below. +.\" .Pp +.\" Per target configuration performed in the +.\" .Tn SCSI-Select +.\" menu, accessible at boot, +.\" is honored by this driver. +.\" This includes synchronous/asynchronous transfers, +.\" maximum synchronous negotiation rate, wide transfers, disconnection, +.\" and the host adapter's +.\" .Tn SCSI +.\" ID. +.Sh HARDWARE +The +.Nm +driver supports the following: +.Pp +.Bl -bullet -compact +.It +Adaptec +.Tn AIC7901 +host adapter chip +.It +Adaptec +.Tn AIC7901A +host adapter chip +.It +Adaptec +.Tn AIC7902 +host adapter chip +.It +Adaptec +.Tn 29320 +host adapter +.It +Adaptec +.Tn 39320 +host adapter +.It +Many motherboards with on-board +.Tn SCSI +support +.El +.Sh SEE ALSO +.Xr ahc 4 , +.Xr cd 4 , +.Xr ch 4 , +.\" .Xr da 4 , +.Xr intro 4 , +.\" .Xr sa 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr ses 4 , +.Xr st 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 4.7 +and +.Nx 2.0 . +.Sh AUTHORS +The +.Nm +driver, the +.Tn AIC7xxx +sequencer-code assembler, +and the firmware running on the aic79xx chips was written by +.An Justin T. Gibbs . +.Nx +porting is done by Pascal Renauld, Frank van der Linden, +Jason Thorpe, and Allen Briggs. +This manual page is based on the +.Xr ahc 4 +manual page. +.\" .Sh BUGS +.\" The current generation of 79xx chips do not support target mode in Ultra320 +.\" mode. +.\" Target mode in general has not been well tested in this driver. diff --git a/static/netbsd/man4/aht20temp.4 b/static/netbsd/man4/aht20temp.4 new file mode 100644 index 00000000..abcf5567 --- /dev/null +++ b/static/netbsd/man4/aht20temp.4 @@ -0,0 +1,76 @@ +.\" $NetBSD: aht20temp.4,v 1.1 2022/11/17 19:20:05 brad Exp $ +.\" +.\" Copyright (c) 2022 Brad Spencer +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd November 15, 2022 +.Dt AHT20TEMP 4 +.Os +.Sh NAME +.Nm aht20temp +.Nd Driver for Guangzhou Aosong AHT20 sensor chip via I2C bus +.Sh SYNOPSIS +.Cd "aht20temp* at iic? addr 0x38" +.Sh DESCRIPTION +The +.Nm +driver provides measurements from the AHT20 humidity/temperature +sensors via the +.Xr envsys 4 +framework. +The +.Nm +.Ar addr +argument selects the address at the +.Xr iic 4 +bus. +The crc validity can be changed through +.Xr sysctl 8 +nodes. +.Sh SYSCTL VARIABLES +The following +.Xr sysctl 3 +variables are provided: +.Bl -tag -width indent +.It Li hw.aht20temp0.ignorecrc +If set, the crc calculation for %RH and temperature will be ignored. +.It Li hw.aht20temp0.debug +If the driver is compiled with +.Dv AHT20_DEBUG , +this node will appear and can be used to set the debugging level. +.It Li hw.aht20temp0.readattempts +To read %RH or temperature the chip requires that the command be sent, +then a delay must be observed before a read can be done to get the values +back. +The delays are documented in the datasheet for the chip. +The driver will attempt to read back the values readattempts number of +times. +The default is 10 which should be more than enough for most purposes. +.El +.Sh SEE ALSO +.Xr envsys 4 , +.Xr iic 4 , +.Xr envstat 8 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 10.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Brad Spencer Aq Mt brad@anduin.eldar.org . diff --git a/static/netbsd/man4/ai.4 b/static/netbsd/man4/ai.4 new file mode 100644 index 00000000..29007df3 --- /dev/null +++ b/static/netbsd/man4/ai.4 @@ -0,0 +1,65 @@ +.\" $NetBSD: ai.4,v 1.9 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 1999 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 4, 1999 +.Dt AI 4 +.Os +.Sh NAME +.Nm ai +.Nd +.Tn AT&T +.Tn StarLAN +.Tn Ethernet +interface driver +.Sh SYNOPSIS +.Cd "ai0 at isa? port 0x360 iomem 0xd0000 irq 7" +.Sh DESCRIPTION +The +.Nm +driver supports the following +.Tn ISA +bus NICs: +.Pp +.Bl -tag -width Dv -offset indent -compact +.It AT&T StarLAN 10 +.It AT&T StarLAN Fiber +.El +.Pp +These cards are based on the +.Tn Intel +82586 +.Tn Ethernet +controller chip. +.Sh SEE ALSO +.Xr ef 4 , +.Xr elmc 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr isa 4 , +.Xr ix 4 , +.Xr ifconfig 8 +.Sh AUTHORS +.An Rafal K. Boni diff --git a/static/netbsd/man4/aibs.4 b/static/netbsd/man4/aibs.4 new file mode 100644 index 00000000..2f496acc --- /dev/null +++ b/static/netbsd/man4/aibs.4 @@ -0,0 +1,235 @@ +.\" $NetBSD: aibs.4,v 1.10 2020/06/08 20:19:12 sevan Exp $ +.\" $OpenBSD: aibs.4,v 1.4 2009/07/30 06:30:45 jmc Exp $ +.\" +.\" Copyright (c) 2009 Constantine A. Murenin +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd June 8, 2020 +.Dt AIBS 4 +.Os +.Sh NAME +.Nm aibs +.Nd ASUSTeK AI Booster voltage, temperature, and fan sensor +.Sh SYNOPSIS +.Cd "aibs* at acpi?" +.Sh DESCRIPTION +The +.Nm +driver provides support for voltage, temperature, and fan sensors +available as an +.Tn ACPI +device on +.Tn ASUSTeK +motherboards. +The number of sensors of each type, +as well as the description of each sensor, +varies according to the motherboard. +.Pp +The driver supports an arbitrary set of sensors, +provides descriptions regarding what each sensor is used for, +and reports whether each sensor is within the specifications +as defined by the motherboard manufacturer through +.Tn ACPI . +.Pp +The +.Nm +driver supports +.Xr envsys 4 +sensor states as follows: +.Bl -bullet +.It +Voltage sensors can have a state of +.Sq valid , +.Sq critunder , +or +.Sq critover ; +temperature sensors can have a state of +.Sq valid , +.Sq warnover , +.Sq critover , +or +.Sq invalid ; +and fan sensors can have a state of +.Sq valid , +.Sq warnunder , +or +.Sq warnover . +.It +Temperature sensors that have a reading of 0 +are marked +.Sq invalid , +whereas all other sensors are always assumed valid. +.It +Voltage sensors have a lower and an upper limit, +.Sq critunder +and +.Sq critover , +temperature sensors have two upper limits, +.Sq warnover +and +.Sq critover , +whereas fan sensors may either have only the lower limit +.Sq warnunder , +or, depending on the vendor's +.Tn ACPI +implementation, one lower and one upper limit, +.Sq warnunder +and +.Sq warnover . +.El +.Pp +Sensor values and limits are made available through the +.Xr envsys 4 +interface, +and can be monitored with +.Xr envstat 8 . +For example, on an ASUS V3-P5G965 barebone: +.Bd -literal -offset 2n +$ envstat -d aibs0 + Current CritMax WarnMax WarnMin CritMin Unit + Vcore Voltage: 1.152 1.600 0.850 V + +3.3 Voltage: 3.312 3.630 2.970 V + +5 Voltage: 5.017 5.500 4.500 V + +12 Voltage: 12.302 13.800 10.200 V + CPU Temperature: 27.000 95.000 80.000 degC + MB Temperature: 58.000 95.000 60.000 degC + CPU FAN Speed: 878 7200 600 RPM +CHASSIS FAN Speed: 0 7200 700 RPM +.Ed +.Pp +Generally, sensors provided by the +.Nm +driver may also be supported by a variety of other drivers, +such as +.Xr lm 4 +or +.Xr itesio 4 . +The precise collection of +.Nm +sensors is comprised of the sensors +specifically utilised in the motherboard +design, which may be supported through +a combination of one or more physical hardware monitoring chips. +.Pp +The +.Nm +driver, however, provides the following advantages +when compared to the native hardware monitoring drivers: +.Bl -bullet +.It +Sensor values from +.Nm +are expected to be more reliable. +For example, voltage sensors in many hardware monitoring chips +can only sense voltage from 0 to 2 or 4 volts, and the excessive +voltage is removed by the resistors, which may vary with the motherboard +and with the voltage that is being sensed. +In +.Nm , +the required resistor factors are provided by +the motherboard manufacturer through +.Tn ACPI ; +in the native drivers, the resistor factors +are encoded into the driver based on the chip manufacturer's recommendations. +In essence, sensor values from +.Nm +are very likely to be identical to the readings from the +Hardware Monitor screen in the BIOS. +.It +Sensor descriptions from +.Nm +are more likely to match the markings on the motherboard. +.It +Sensor states are supported by +.Nm . +The state is reported based on the acceptable range of values +for each individual sensor as suggested by the motherboard manufacturer. +For example, the threshold for the CPU temperature sensor is likely +to be significantly higher than that for the chassis temperature sensor. +.It +Support for newer chips in +.Nm . +Newer chips may miss a native driver, +but should be supported through +.Nm +regardless. +.El +.Pp +As a result, sensor readings from the actual +native hardware monitoring drivers +are redundant when +.Nm +is present, and +may be ignored as appropriate. +Whereas on +some supported operating systems +the native drivers may have to be specifically disabled should +their presence be judged unnecessary, +on +others +the drivers like +.Xr lm 4 +are not probed provided that +.Xr acpi 4 +is configured and the system potentially supports +the hardware monitoring chip through +.Tn ACPI . +.Sh SEE ALSO +.Xr acpi 4 , +.Xr envsys 4 , +.Xr envstat 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 4.7 , +.Dx 2.4.1 +and +.Nx 6.0 . +An earlier version of the driver, named +.Nm aiboost , +first appeared in +.Fx 7.0 +and +.Nx 5.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written for +.Ox , +.Dx +BSD, and +.Nx +by +.An Constantine A. Murenin Aq Lk http://cnst.su/ , +Raouf Boutaba Research Group, +David R. Cheriton School of Computer Science, +University of Waterloo. +.An Jukka Ruohonen +.Aq jruohonen@iki.fi +later reworked and adjusted the driver to support new +.Tn ASUSTeK +motherboards. +The earlier version of the driver, +.Nm aiboost , +was written for +.Fx +by +.An Takanori Watanabe +and +adapted to +.Nx +by +.An Juan Romero Pardines . diff --git a/static/netbsd/man4/aic.4 b/static/netbsd/man4/aic.4 new file mode 100644 index 00000000..91c13192 --- /dev/null +++ b/static/netbsd/man4/aic.4 @@ -0,0 +1,79 @@ +.\" $NetBSD: aic.4,v 1.10 2002/03/05 15:10:44 wiz Exp $ +.\" +.\" Copyright (c) 1997 Jason R. Thorpe. All rights reserved. +.\" Copyright (c) 1994 James A. Jegers +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" +.Dd November 10, 1997 +.Dt AIC 4 +.Os +.Sh NAME +.Nm aic +.Nd Adaptec AIC-6260 and AIC-6360 SCSI driver +.Sh SYNOPSIS +.Cd "aic0 at isa? port 0x340 irq 12" +.Cd "aic* at isapnp?" +.Cd "aic* at pcmcia? function ?" +.Cd "scsibus* at aic?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the +.Tn Adaptec +AIC-6260 and AIC-6360 +.Tn SCSI +controller chips. +.Pp +The PCMCIA +.Tn SCSI +host adapters and many ISA cards do not include boot ROMs and therefore +cannot be used to connect the boot device. +.Sh HARDWARE +Cards supported by the +.Nm +driver include: +.Pp +.Bl -item -offset indent +.It +.Tn Adaptec +1502 ISA SCSI host adaptor +.It +.Tn Adaptec +152x ISA SCSI host adaptor +.It +.Tn Adaptec +AHA-1520B ISAPNP SCSI host adaptor +.It +.Tn Adaptec +APA-1460 PCMCIA SCSI host adaptor +.It +.Tn "Creative Labs" +SoundBlaster ISA SCSI host adaptor, and compatibles +.El +.Sh SEE ALSO +.Xr cd 4 , +.Xr ch 4 , +.Xr intro 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr st 4 diff --git a/static/netbsd/man4/akbd.4 b/static/netbsd/man4/akbd.4 new file mode 100644 index 00000000..308e7068 --- /dev/null +++ b/static/netbsd/man4/akbd.4 @@ -0,0 +1,189 @@ +.\" $NetBSD: akbd.4,v 1.5 2026/04/06 22:12:14 andvar Exp $ +.\" +.\" Copyright (c) 2003 Alex Zepeda +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by Alex Zepeda. +.\" 4. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 20, 2025 +.Dt AKBD 4 +.Os +. +.Sh NAME +. +.Nm akbd +.Nd Apple Desktop Bus keyboard driver for wscons +.Sh SYNOPSIS +.Cd "akbd* at obio?" +.Cd "wskbd* at akbd? console ?" +.Pp +.Cd "options ALTXBUTTONS" +.Cd "options CAPS_IS_CONTROL" +.Cd "options FORCE_FUNCTION_KEYS" +. +.Sh DESCRIPTION +. +This driver provides the +.Xr wscons 4 +driver with support for Apple Desktop Bus keyboards. +.Bl -tag -width Cd +. +.It Cd "options ALTXBUTTONS" +. +To map +.Sm off +.Ao Option Ac \&+ Aq 1 , +.Sm on +.Sm off +.Ao Option Ac \&+ Aq 2 , +.Sm on +.Sm off +.Ao Option Ac \&+ Aq 3 , +.Sm on +to mouse buttons 1, 2, and 3 +respectively. +. +.It Cd options CAPS_IS_CONTROL +. +On macppc systems it is possible to tweak the keyboard driver to treat +the caps lock key on an +.Tn ADB +keyboard as a control key. +This requires special remapping because of +.Tn ADB Ap s +strange emulation of a mechanically-locked key. +. +.It Cd options FORCE_FUNCTION_KEYS +. +On macppc PowerBooks, several function keys double as +.Dq hot keys +.Pq brightness, volume, eject +when the +.Aq \&Fn +modifier is held down. +Mac OS\~X likes to reprogram the keyboard controller to send hot key +events when +.Aq \&Fn +is +.Em not +held down and send function key events when it is. +With this option you can transform the non-keyboard +.Dq button +events back into function key events. +.El +. +.Ss Special Keys +. +To work around the limited number of buttons found on most +.Tn ADB +mice, the following key sequences trigger mouse button events: +.Pp +.Bl -dash -compact +.It +.Sm off +.Ao Option Ac \&+ Aq LeftArrow +.Sm on +will work as the middle mouse button. +.It +.Sm off +.Ao Option Ac \&+ Aq RightArrow +.Sm on +will work as the right mouse button. +.El +.Pp +On PowerBook (mac68k) models the following key sequences are also +significant: +.Pp +.Bl -dash -compact +.It +.Sm off +.Ao Option Ac \&+ Aq UpArrow +.Sm on +increase screen brightness. +.It +.Sm off +.Ao Option Ac \&+ Aq DownArrow +.Sm on +decrease screen brightness. +.El +. +.Ss Supported Hardware +. +.Nx +is known to support the following +.Tn ADB +keyboards: +.Pp +.Bl -bullet -offset indent -compact +.It +On-board keyboards on PowerBook models +.It +Apple Standard Keyboard +.It +Apple Keyboard II +.It +Apple Extended Keyboard +.It +Apple Extended Keyboard II +.It +Apple Adjustable Keyboard +.It +Most third-party +.Tn ADB +keyboards are supported +.El +. +.Sh SEE ALSO +. +.Xr xmodmap 1 , +.Xr adb 4 , +.Xr wscons 4 , +.Xr wskbd 4 , +.Xr wsconsctl 8 +. +.Sh BUGS +. +The number pad on extended keyboards does not send out the proper +key codes for many applications. +.Pp +The LEDs on extended keyboards are not functional under +.Nx . +.Pp +In X11 with the default key mapping, middle and right mouse button events will +hold +.Ql Meta_L +and this will clobber the intended mouse button. +.Aq Option +should be remapped with +.Xr xmodmap 1 +to the +.Aq Command +key: +.Bd -literal -offset indent +remove Mod4 = Super_L +remove Mod1 = Alt_L +add Mod1 = Super_L +.Ed diff --git a/static/netbsd/man4/alc.4 b/static/netbsd/man4/alc.4 new file mode 100644 index 00000000..460eef4c --- /dev/null +++ b/static/netbsd/man4/alc.4 @@ -0,0 +1,77 @@ +.\" $NetBSD: alc.4,v 1.6 2019/10/17 09:13:48 msaitoh Exp $ +.\" +.\" Copyright (c) 2009 Kevin Lo +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd October 16, 2019 +.Dt ALC 4 +.Os +.Sh NAME +.Nm alc +.Nd Atheros AR813x/AR815x/AR816x/AR817x Killer E2200/2400/2500 Ethernet device +.Sh SYNOPSIS +.Cd "alc* at pci?" +.Cd "atphy* at mii?" +.Sh DESCRIPTION +The +.Nm +driver provides support for Ethernet interfaces based on the +Atheros AR813x/AR815x/AR816x/AR817x Gigabit/Fast Ethernet chipsets and +Killer E2200/2400/2500 Ethernet chipsets. +.Pp +The following +.Ar media +types are supported: +.Pp +.Bl -tag -width autoselect -compact +.It Cm autoselect +Enable autoselection of the media type and options. +.It Cm 10baseT +Set 10Mbps operation. +.It Cm 100baseTX +Set 100Mbps (Fast Ethernet) operation. +.It Cm 1000baseT +Set 1000Mbps (Gigabit Ethernet) operation. +.El +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh SEE ALSO +.Xr arp 4 , +.Xr atphy 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr netintro 4 , +.Xr pci 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +device driver was written by +.An Pyun YongHyeon +and first appeared in +.Fx 8.0 . +It was ported to +.Ox 4.7 +by +.An Kevin Lo +and then ported to +.Nx 6.0 +by +.An Fire Crow . +.An Leonardo Taccari +ported the AR816x/AR817x support for +.Nm +from +.Fx 11.0 . diff --git a/static/netbsd/man4/ale.4 b/static/netbsd/man4/ale.4 new file mode 100644 index 00000000..e0392a84 --- /dev/null +++ b/static/netbsd/man4/ale.4 @@ -0,0 +1,93 @@ +.\" $NetBSD: ale.4,v 1.5 2012/11/29 00:12:21 jdf Exp $ +.\" $OpenBSD: ale.4,v 1.2 2009/02/25 03:15:50 deraadt Exp $ +.\" +.\" Copyright (c) 2009 Kevin Lo +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd May 5, 2009 +.Dt ALE 4 +.Os +.Sh NAME +.Nm ale +.Nd Atheros AR8121/AR8113/AR8114 10/100/Gigabit Ethernet device +.Sh SYNOPSIS +.Cd "ale* at pci?" +.Cd "atphy* at mii?" +.Sh DESCRIPTION +The +.Nm +driver provides support for Ethernet interfaces based on the +Atheros AR8121/AR8113/AR8114 Ethernet chipset, also known as +the Attansic L1E. +.Pp +The +.Nm +driver supports IPv4 receive IP/TCP/UDP checksum offload and VLAN +tag insertion and stripping. +.Pp +The following +.Ar media +types are supported: +.Pp +.Bl -tag -width autoselect -compact +.It Cm autoselect +Enable autoselection of the media type and options. +.It Cm 10baseT +Set 10Mbps operation. +.It Cm 100baseTX +Set 100Mbps (Fast Ethernet) operation. +.It Cm 1000baseT +Set 1000Mbps (Gigabit Ethernet) operation. +.El +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +To view a list of media types and options supported by the card, try +.Ic ifconfig Fl m Ao Ic device Ac . +For example, +.Ic ifconfig Fl m Ic ale0 . +.Sh SEE ALSO +.Xr arp 4 , +.Xr atphy 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr netintro 4 , +.Xr pci 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Ox 4.5 . +It was then ported to +.Nx 5.1 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Pyun YongHyeon +for +.Fx +and ported to +.Ox +by +.An Kevin Lo +.Aq kevlo@OpenBSD.org +then ported to +.Nx +by +.An Christoph Egger +.Aq cegger@NetBSD.org +and Kevin Lahey. diff --git a/static/netbsd/man4/alipm.4 b/static/netbsd/man4/alipm.4 new file mode 100644 index 00000000..ea0d4ee6 --- /dev/null +++ b/static/netbsd/man4/alipm.4 @@ -0,0 +1,52 @@ +.\" $NetBSD: alipm.4,v 1.4 2014/03/18 18:20:39 riastradh Exp $ +.\" +.\" $OpenBSD: alipm.4,v 1.5 2007/05/31 19:19:49 jmc Exp $ +.\" +.\" Copyright (c) 2005 Mark Kettenis +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd October 29, 2008 +.Dt ALIPM 4 +.Os +.Sh NAME +.Nm alipm +.Nd Acer Labs M7101 SMBus controller +.Sh SYNOPSIS +.Cd "alipm* at pci?" +.Cd "iic* at alipm?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the Acer Labs M7101 Power Management +controller. +Only the SMBus host interface is supported and can be used with the +.Xr iic 4 +framework. +.Sh SEE ALSO +.Xr iic 4 , +.Xr intro 4 , +.Xr pci 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 3.9 . +.Sh AUTHORS +The +.Nm +driver was written by +.An Mark Kettenis Aq Mt kettenis@openbsd.org . +.Sh BUGS +The driver doesn't support commands with a data buffer size of more +than 2 bytes. diff --git a/static/netbsd/man4/altmem.4 b/static/netbsd/man4/altmem.4 new file mode 100644 index 00000000..1c997ec6 --- /dev/null +++ b/static/netbsd/man4/altmem.4 @@ -0,0 +1,67 @@ +.\" $NetBSD: altmem.4,v 1.5 2014/03/18 18:20:39 riastradh Exp $ +.\" +.\" Copyright (c) 2009 Jared D. McNeill +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Neither the name of the author nor the names of any +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 11, 2009 +.Dt ALTMEM 4 +.Os +.Sh NAME +.Nm altmem +.Nd Alternative memory disk driver +.Sh SYNOPSIS +.Cd "altmem* at altmemdev?" +.Sh DESCRIPTION +The +.Nm +driver enables use of physical memory that is normally inaccessible by the +machine-dependent +.Xr pmap 9 +as a swap device. +.Pp +When an alternative memory disk device is present, this device is generally +preferred to hard disk-based swap space. +See the +.Xr swapctl 8 +and +.Xr fstab 5 +man pages for instructions on how to assign priorities to swap devices. +.Sh FILES +.Bl -tag -width /dev/raltmemXX -compact +.It Pa "/dev/altmem??" +block mode alternative memory disk devices. +.It Pa "/dev/raltmem??" +raw mode alternative memory disk devices. +.El +.Sh SEE ALSO +.Xr md 4 , +.Xr fstab 5 , +.Xr swapctl 8 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 6.0 . +.Sh AUTHORS +.An Jared D. McNeill Aq Mt jmcneill@NetBSD.org diff --git a/static/netbsd/man4/altq.4 b/static/netbsd/man4/altq.4 new file mode 100644 index 00000000..62e95c4c --- /dev/null +++ b/static/netbsd/man4/altq.4 @@ -0,0 +1,97 @@ +.\" $NetBSD: altq.4,v 1.9 2026/03/07 15:51:38 christos Exp $ +.\" +.\" Copyright (c) 2011 Jukka Ruohonen +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +.\" OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +.\" LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +.\" OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 7, 2026 +.Dt ALTQ 4 +.Os +.Sh NAME +.Nm altq +.Nd alternate queuing framework +.Sh SYNOPSIS +.Cd options ALTQ +.Cd options ALTQ_BLUE +.Cd options ALTQ_CBQ +.Cd options ALTQ_CDNR +.Cd options ALTQ_FIFOQ +.Cd options ALTQ_FLOWVALVE +.Cd options ALTQ_HFSC +.Cd options ALTQ_LOCALQ +.Cd options ALTQ_PRIQ +.Cd options ALTQ_RED +.Cd options ALTQ_RIO +.Cd options ALTQ_WFQ +.Sh DESCRIPTION +The +.Nm +system is a framework which provides several disciplines for queuing outgoing +network packets. +While traffic shaping is perhaps the most prominent example, +.Nm +provides also other measures related to QoS. +The framework has been integrated to the +.Xr pf 4 +packet filter since +.Nx 4.0 . +.Pp +At the implementation level +.Nm +modifies the interface packet queues. +Therefore the driver modifications described in +.Xr altq 9 +are required in order to use a certain network card with +.Nm . +.Sh FILES +.Bd -literal +/dev/altq +.Ed +.Sh SEE ALSO +.Xr pf 4 , +.Xr altq.conf 5 , +.Xr altqd 8 , +.Xr altq 9 +.Rs +.%A Kenjiro Cho +.%T Fitting theory into reality in the ALTQ case +.%D March, 2004 +.%C Taipei, Taiwan +.%O Asia BSD conference +.%U https://www.iijlab.net/~kjc/papers/fittingtheory.pdf +.Re +.Sh HISTORY +The +.Nm +system first appeared in March 1997 and found its home in the KAME project +.Lk ( https://www.kame.net ) . +It was imported into +.Nx 1.6 . +.Sh CAVEATS +Please note that you must compile +.Xr pf 4 +in the kernel, using the PF +.Xr module 7 +alongside +.Nm +built in the kernel will not work. diff --git a/static/netbsd/man4/am2315temp.4 b/static/netbsd/man4/am2315temp.4 new file mode 100644 index 00000000..6a4c58d4 --- /dev/null +++ b/static/netbsd/man4/am2315temp.4 @@ -0,0 +1,97 @@ +.\" $NetBSD: am2315temp.4,v 1.2 2017/12/29 14:47:09 wiz Exp $ +.\" +.\" Copyright (c) 2017 Brad Spencer +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd December 28, 2017 +.Dt AM2315TEMP 4 +.Os +.Sh NAME +.Nm am2315temp +.Nd Driver for Aosong AM2315 sensor chip via I2C bus +.Sh SYNOPSIS +.Cd "am2315temp* at iic? addr 0x5c" +.Sh DESCRIPTION +The +.Nm +driver provides measurements from the AM2315 humidity/temperature +sensors via the +.Xr envsys 4 +framework. +The +.Nm +.Ar addr +argument selects the address at the +.Xr iic 4 +bus. +The AM2315 has limits on how often the measurements can be read. +Adjustments to the number of times to take reading before considering +it valid, and the number of ticks to wait between readings can be +changed through +.Xr sysctl 8 +nodes. +.Pp +There are other oddities about the AM2315 that should be mentioned. +The datasheet says that the device should read no more often then +every 2 seconds, further, it also implies that a measurement is not +performed until the device is 1) awake 2) has been asked for a +measurement. +From observation, it has been noted that it is possible +to ask for measurements more often than every 2 seconds, and actually +get something that looks to be valid. +It may, in fact, be valid, but +it has also been noted that the measurements do not appear to change. +This implies that a measurement was done, and then returned time and +time again. +It has also been noticed that if measurements are taken +very close to every 2 seconds, that sometimes the device will return a +I2C error on a read. +If this happens a lot, increase hw.am2315temp0.readticks a bit. +.Sh SYSCTL VARIABLES +The following +.Xr sysctl 3 +variables are provided: +.Bl -tag -width indent +.It hw.am2315temp0.readcount +The number of times to take a reading before considering it valid. +This defaults to 2. +.It hw.am2315temp0.readticks +The number of ticks to wait in between readings. +The default is 100. +.It hw.am2315temp0.debug +If the driver is compiled with +.Dv AM2315_DEBUG , +this node will appear and can be used to set the debugging level. +.El +.Sh SEE ALSO +.Xr envsys 4 , +.Xr iic 4 , +.Xr envstat 8 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 8.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Brad Spencer Aq Mt brad@anduin.eldar.org . +.Sh BUGS +The device does not appear to work with the +.Xr gpioiic 4 +bitbang controller. +When tried, reads would not error, but no data was returned. diff --git a/static/netbsd/man4/amdgpio.4 b/static/netbsd/man4/amdgpio.4 new file mode 100644 index 00000000..7cc3e441 --- /dev/null +++ b/static/netbsd/man4/amdgpio.4 @@ -0,0 +1,101 @@ +.\" $NetBSD: amdgpio.4,v 1.2 2025/02/26 17:23:49 uwe Exp $ +.\" +.\" Copyright (c) 2022 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Emmanuel Dreyfus. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd February 3, 2025 +.Dt AMDGPIO 4 +.Os +.Sh NAME +.Nm amdgpio +.Nd AMD GPIO Controller +.Sh SYNOPSIS +.Cd "amdgpio* at acpi?" +.Cd "gpio* at gpiobus?" +.Sh DESCRIPTION +.Nm +provides a +.Xr gpio 4 +interface for the following AMD chipsets: +.Pp +.Bl -item -offset indent -compact +.It +AMD Ryzen 7 5800U with Radeon Graphics +.It +AMD Ryzen 7 8840HS with Radeon 780M Graphics +.El +.Pp +The driver supports pin configuration flags +.Pp +.Bl -item -offset indent -compact +.It +.Dv GPIO_PIN_INPUT +.It +.Dv GPIO_PIN_OUTPUT +.It +.Dv GPIO_PIN_INOUT +.It +.Dv GPIO_PIN_ININ +.It +.Dv GPIO_PIN_PULLUP +.It +.Dv GPIO_PIN_PULLDOWN +.El +.Pp +and interrupt capabilies +.Pp +.Bl -item -offset indent -compact +.It +.Dv GPIO_INTR_POS_EDGE +.It +.Dv GPIO_INTR_NEG_EDGE +.It +.Dv GPIO_INTR_DOUBLE_EDGE +.It +.Dv GPIO_INTR_HIGH_LEVEL +.It +.Dv GPIO_INTR_LOW_LEVEL +.El +.Sh SEE ALSO +.Xr gpio 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 11.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver is derived from +.Xr qcomgpio 4 +and +.Ox Ap s +.Xr amdgpio 4 . +Man page was written by +.An Ryo ONODERA +.Aq Mt ryoon@NetBSD.org . diff --git a/static/netbsd/man4/amdpm.4 b/static/netbsd/man4/amdpm.4 new file mode 100644 index 00000000..093fc6a9 --- /dev/null +++ b/static/netbsd/man4/amdpm.4 @@ -0,0 +1,55 @@ +.\" $NetBSD: amdpm.4,v 1.8 2016/07/07 09:23:20 pgoyette Exp $ +.\" +.\" Copyright (c) 2002, 2006 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Enami Tsugutomo. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd July 7, 2016 +.Dt AMDPM 4 +.Os +.Sh NAME +.Nm amdpm +.Nd AMD768 Power Management Controller and AMD8111 System Management Controller +.Sh SYNOPSIS +.Cd "amdpm* at pci? dev ? function ?" +.Sh DESCRIPTION +The +.Nm +provides support for the AMD768 Power Management Controller +and for the AMD8111 System Management Controller. +.Sh SEE ALSO +.Xr iic 4 , +.Xr pci 4 , +.Xr rnd 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Nx 2.0 . +.Sh BUGS +Currently, this driver does not provide any power management capabilities. +It does, however, provide access to the SMBus via the System Management +Controller. diff --git a/static/netbsd/man4/amdtemp.4 b/static/netbsd/man4/amdtemp.4 new file mode 100644 index 00000000..cd2581df --- /dev/null +++ b/static/netbsd/man4/amdtemp.4 @@ -0,0 +1,88 @@ +.\" $NetBSD: amdtemp.4,v 1.12 2018/12/29 20:29:46 is Exp $ +.\"- +.\" Copyright (c) 2008 Christoph Egger +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man4/coretemp.4,v 1.4 2007/10/15 20:00:19 netchild Exp $ +.\" +.Dd January 28, 2018 +.Dt AMDTEMP 4 +.Os +.Sh NAME +.Nm amdtemp +.Nd AMD CPU on-die digital thermal sensor +.Sh SYNOPSIS +.Cd "amdtemp* at amdnb_miscbus?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the on-die digital thermal sensor present +on AMD K8, AMD Barcelona, AMD Phenom, AMD Griffin, AMD Fusion, +AMD Bobcat, and AMD Puma CPUs. +.Pp +These sensors were officially introduced in AMD K8 Revision F processors, +and provide 0.5\(deC accuracy. +Precision was improved in Revision G chips, +which provide two more bits for 0.25\(deC steppings. +Each core +has two temperature sensors, and there are up to two cores per CPU socket. +.Pp +AMD Barcelona, AMD Phenom, AMD Griffin, AMD Fusion, +AMD Bobcat, and AMD Puma provide 0.125\(degC +accuracy and provide one temperature sensor for each CPU socket. +.Pp +The +.Nm +driver reports temperatures through the +.Xr envsys 4 +API. +.Bl -column "CPUN sensor0" "Units" "Typical Use" -offset indent +.It Sy "Sensor" Ta Sy "Units" Ta Sy "Typical Use" +.It CPU Ns Em N No sensor0 Ta \(*mK Ta cpu Ns Em N No temperature +.El +.Sh SEE ALSO +.Xr envsys 4 , +.Xr envstat 8 , +.Xr powerd 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 4.4 +named +.Dq kate . +It was then ported to +.Nx 5.0 . +The driver has been renamed with support for newer AMD CPUs. +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Constantine A. Murenin Aq Mt cnst@openbsd.org +whilst at the University of Waterloo. +It was adapted to +.Nx +by +.An Christoph Egger . diff --git a/static/netbsd/man4/amhphy.4 b/static/netbsd/man4/amhphy.4 new file mode 100644 index 00000000..85a8c62c --- /dev/null +++ b/static/netbsd/man4/amhphy.4 @@ -0,0 +1,53 @@ +.\" $NetBSD: amhphy.4,v 1.1 2001/08/25 04:11:05 thorpej Exp $ +.\" +.\" Copyright 2001 Wasabi Systems, Inc. +.\" All rights reserved. +.\" +.\" Written by Jason R. Thorpe for Wasabi Systems, Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed for the NetBSD Project by +.\" Wasabi Systems, Inc. +.\" 4. The name of Wasabi Systems, Inc. may not be used to endorse +.\" or promote products derived from this software without specific prior +.\" written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL WASABI SYSTEMS, INC +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 24, 2001 +.Dt AMHPHY 4 +.Os +.Sh NAME +.Nm amhphy +.Nd Driver for the AMD 79c901 10BASE-T PHY +.Sh SYNOPSIS +.Cd "amhphy* at mii? phy ?" +.Sh DESCRIPTION +The +.Nm +driver supports the 10BASE-T portion of the AMD 79c901 HomePNA/10BASE-T +PHY. +.Sh SEE ALSO +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr mii 4 , +.Xr ifconfig 8 diff --git a/static/netbsd/man4/amr.4 b/static/netbsd/man4/amr.4 new file mode 100644 index 00000000..27448706 --- /dev/null +++ b/static/netbsd/man4/amr.4 @@ -0,0 +1,179 @@ +.\" $NetBSD: amr.4,v 1.15 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 2000 Jeroen Ruigrok van der Werven +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $FreeBSD: /repoman/r/ncvs/src/share/man/man4/amr.4,v 1.16 2003/03/26 01:34:23 keramida Exp $ +.\" +.Dd July 23, 2006 +.Dt AMR 4 +.Os +.Sh NAME +.Nm amr +.Nd AMI MegaRAID PCI-SCSI RAID driver +.Sh SYNOPSIS +.Cd "amr* at pci? dev ? function ?" +.Cd scsibus* at amr? +.Sh DESCRIPTION +The +.Nm +driver provides support for LSI (formerly American Megatrends) MegaRAID +Express, Elite and Enterprise family RAID controllers for SCSI and SATA, +including models relabeled and sold by Dell, Hewlett-Packard, and Intel. +Supported controllers include: +.Pp +.Bl -bullet -compact +.It +MegaRAID 320-1 +.It +MegaRAID 320-2 +.It +MegaRAID Series 418 +.It +MegaRAID Enterprise 1200 (Series 428) +.It +MegaRAID Enterprise 1300 (Series 434) +.It +MegaRAID Enterprise 1400 (Series 438) +.It +MegaRAID Enterprise 1500 (Series 467) +.It +MegaRAID Enterprise 1600 (Series 471) +.It +MegaRAID Elite 1500 (Series 467) +.It +MegaRAID Elite 1600 (Series 493) +.It +MegaRAID Express 100 (Series 466WS) +.It +MegaRAID Express 200 (Series 466) +.It +MegaRAID Express 300 (Series 490) +.It +LSI MegaRAID SCSI 320-0X, 320-2X, 320-4X +.It +LSI MegaRAID SCSI 320-1E, 320-2E +.It +LSI MegaRAID SATA 300-6x, 300-8x +.It +Dell PERC +.It +Dell PERC 2/SC +.It +Dell PERC 2/DC +.It +Dell PERC 4/Di +.It +Dell PERC 4/SC +.It +Dell PERC 4e/Si +.It +HP NetRAID-1/Si +.It +HP NetRAID-3/Si +.It +HP Embedded NetRAID +.It +Intel SRCU42X +.It +Intel SRCU42E +.It +Intel SRMOBU42E +.It +Intel SRCS28X +.El +.Sh DIAGNOSTICS +.Ss Driver initialisation/shutdown phase +.Bl -diag +.It amr%d: memory window not available +.It amr%d: I/O window not available +.Pp +The PCI BIOS did not allocate resources necessary for the correct operation of +the controller. +The driver cannot attach to this controller. +.It amr%d: busmaster bit not set, enabling +.Pp +The PCI BIOS did not enable busmaster DMA, +which is required for the correct operation of the controller. +The driver has enabled this bit and initialisation will proceed. +.It amr%d: can't allocate register window +.It amr%d: can't allocate interrupt +.It amr%d: can't set up interrupt +.It amr%d: can't allocate parent DMA tag +.It amr%d: can't allocate buffer DMA tag +.It amr%d: can't allocate scatter/gather DMA tag +.It amr%d: can't allocate s/g table +.It amr%d: can't allocate mailbox tag +.It amr%d: can't allocate mailbox memory +.Pp +A resource allocation error occurred while initialising the driver; +initialisation has failed and the driver will not attach to this controller. +.It amr%d: can't obtain configuration data from controller +.It amr%d: can't obtain product data from controller +.Pp +The driver was unable to obtain vital configuration data from the controller. +Initialisation has failed and the driver will not attach to this controller. +.It amr%d: can't establish configuration hook +.It amr%d: can't scan controller for drives +.Pp +The scan for logical drives managed by the controller failed. +No drives will be attached. +.It amr%d: device_add_child failed +.It amr%d: bus_generic_attach returned %d +.Pp +Creation of the logical drive instances failed; +attachment of one or more logical drives may have been aborted. +.It amr%d: flushing cache... +.Pp +The controller cache is being flushed prior to shutdown or detach. +.El +.Ss Operational diagnostics +.Bl -diag +.It amr%d: I/O beyond end of unit (%u,%d > %u) +.Pp +A partitioning error or disk corruption has caused an I/O request +beyond the end of the logical drive. +This may also occur if FlexRAID Virtual Sizing is enabled and +an I/O operation is attempted on a portion of the virtual drive +beyond the actual capacity available. +.It amr%d: polled command timeout +.Pp +An initialisation command timed out. +The initialisation process may fail as a result. +.It amr%d: bad slot %d completed +.Pp +The controller reported completion of a command that the driver did not issue. +This may result in data corruption, +and suggests a hardware or firmware problem with the system or controller. +.It amr%d: I/O error - %x +.Pp +An I/O error has occurred. +.El +.Sh SEE ALSO +.Xr cd 4 , +.Xr ch 4 , +.Xr intro 4 , +.Xr pci 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr st 4 , +.Xr amrctl 8 diff --git a/static/netbsd/man4/ams.4 b/static/netbsd/man4/ams.4 new file mode 100644 index 00000000..b0ba86a3 --- /dev/null +++ b/static/netbsd/man4/ams.4 @@ -0,0 +1,80 @@ +.\" $NetBSD: ams.4,v 1.1 2003/09/26 19:15:16 mbw Exp $ +.\" +.\" Copyright (c) 2003 Alex Zepeda +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by Alex Zepeda. +.\" 4. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd September 21, 2003 +.Dt AMS 4 +.Os +.Sh NAME +.Nm ams +.Nd Apple Desktop Bus mouse driver for wscons +.Sh SYNOPSIS +.Cd "ams* at obio?" +.Cd "wsmouse* at ams?" +.Sh DESCRIPTION +This driver provides the +.Xr wscons 4 +driver with support for Apple Desktop Bus mice. +.Sh SUPPORTED HARDWARE +.Nx +is known to support the following +.Tn ADB +mice: +.Bl -bullet -offset indent +.It +On-board trackpads and trackballs in PowerBook models +.It +Apple Desktop Bus Mouse +.It +Apple Desktop Bus Mouse II +.It +Interex ADB Mouse +.It +Logitech TrackMan +.It +Logitech MouseMan +.It +Microspeed Mouse Deluxe +.It +Mouse Systems A3 Mouse +.It +Most third-party ADB mice, trackballs, and trackpads are supported +.El +.Sh DIAGNOSTICS +.Bl -diag -compact +.It ams0 at adb0 addr 3: 1-button, 100 dpi mouse +This is a typical autoconfiguration message noting the presence of the +.Nm +mouse. +.El +.Sh SEE ALSO +.Xr adb 4 , +.Xr wscons 4 , +.Xr wsmouse 4 , +.Xr wsconsctl 8 diff --git a/static/netbsd/man4/an.4 b/static/netbsd/man4/an.4 new file mode 100644 index 00000000..4d74aa31 --- /dev/null +++ b/static/netbsd/man4/an.4 @@ -0,0 +1,144 @@ +.\" $NetBSD: an.4,v 1.13 2014/03/18 18:20:39 riastradh Exp $ +.\" +.\" Copyright (c) 1997, 1998, 1999 +.\" Bill Paul . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by Bill Paul. +.\" 4. Neither the name of the author nor the names of any co-contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man4/an.4,v 1.6 2000/11/17 11:43:59 ru Exp $ +.\" +.Dd December 13, 2000 +.Dt AN 4 +.Os +.Sh NAME +.Nm an +.Nd +Aironet 4500/4800 and Cisco 340/350 series wireless network driver +.Sh SYNOPSIS +.Cd "an* at pcmcia? function ?" +.Cd "an* at pci? dev ? function ?" +.Cd "an* at isapnp?" +.Sh DESCRIPTION +The +.Nm +driver provides support for Aironet Communications 4500/4800 +and Cisco Aironet 340/350 series +wireless network adapters. +This includes the ISA, PCI and PCMCIA +varieties. +The 4500 series adapters operate at 1 and 2Mbps while +the 4800 series and 340/350 series can operate at 1, 2, 5.5 and 11Mbps. +The ISA, PCI +and PCMCIA devices are all based on the same core PCMCIA modules +and all have the same programming interface, however unlike the +Lucent WaveLAN/IEEE cards, the ISA and PCI cards appear to the +host as normal ISA and PCI devices and do not require any PCMCIA +support. +.Pp +The PCMCIA Aironet cards require PCMCIA support. +ISA cards can either be configured to use ISA Plug and Play +or to use a particular I/O address and IRQ +by properly setting the DIP switches on the board. +(The default switch setting is for plug and play.) +The +.Nm +driver has Plug and Play support and will work in either configuration, +however when using a hard-wired I/O address and IRQ, the driver +configuration and the NIC's switch settings must agree. +PCI cards +require no switch settings of any kind and will be automatically +probed and attached. +.Pp +All host/device interaction with the Aironet cards is via programmed I/O. +The Aironet devices support 802.11 and 802.3 frames, power management, +BSS (infrastructure) and IBSS (ad-hoc) operation modes. +The +.Nm +driver encapsulates all IP and ARP traffic as 802.11 frames, however +it can receive either 802.11 or 802.3 frames. +Transmit speed is selectable between 1Mbps, 2Mbps, 5.5Mbps, 11Mbps, or +.Dq auto +(the NIC automatically chooses the best speed). +.Pp +By default, the +.Nm +driver configures the Aironet card to join an access point with an SSID +of null string. +For ad-hoc mode, in which +stations can communicate among each other without the aid of an access +point, the driver must be set using +.Xr ifconfig 8 . +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 +and +.Xr ifmedia 4 . +.Sh HARDWARE +Cards supported by the +.Nm +driver include: +.Pp +.Bl -item -offset indent +.It +Aironet 4500 Series +.It +Aironet 4800 Series +.It +Cisco Aironet 340 Series +.It +Cisco Aironet 350 Series +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "an%d: init failed" +The Aironet card failed to come ready after an initialization command was +issued. +.It "an%d: failed to allocate %d bytes on NIC" +The driver was unable to allocate memory for transmit frames in the +NIC's on-board RAM. +.It "an%d: device timeout" +The Aironet card failed to generate an interrupt to acknowledge a transmit +command. +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr ifmedia 4 , +.Xr netintro 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 4.0 , +and then in +.Nx 1.6 . +.Sh AUTHORS +The +.Nm +driver was written by +.An Bill Paul Aq Mt wpaul@ee.columbia.edu . diff --git a/static/netbsd/man4/apei.4 b/static/netbsd/man4/apei.4 new file mode 100644 index 00000000..dd85ae88 --- /dev/null +++ b/static/netbsd/man4/apei.4 @@ -0,0 +1,133 @@ +.\" $NetBSD: apei.4,v 1.3 2024/10/10 09:05:45 rin Exp $ +.\" +.\" Copyright (c) 2024 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 18, 2024 +.Dt APEI 4 +.Os +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh NAME +.Nm apei +.Nd ACPI Platform Error Interfaces +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh SYNOPSIS +.Cd "apei* at apeibus?" +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh DESCRIPTION +.Nm +reports hardware errors discovered through +.Tn APEI , +the +.Tn ACPI +Platform Error Interfaces. +.Pp +.Nm +also supports injecting errors. +.\" .Nm +.\" also supports reading/writing/clearing error records in a persistent +.\" firmware store (XXX not yet: nothing uses the ERST). +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh DIAGNOSTICS +When the hardware detects an error and reports it to +.Nm , +it will print information about the error to the console. +.Pp +Example of a correctable memory error, automatically corrected by the +system, with no further intervention needed: +.Bd -literal +apei0: error source 1 reported hardware error: severity=corrected nentries=1 status=0x12 +apei0: error source 1 entry 0: SectionType={0xa5bc1114,0x6f64,0x4ede,0xb8b8,{0x3e,0x83,0xed,0x7c,0x83,0xb1}} (memory error) +apei0: error source 1 entry 0: ErrorSeverity=2 (corrected) +apei0: error source 1 entry 0: Revision=0x201 +apei0: error source 1 entry 0: Flags=0x1 +apei0: error source 1 entry 0: FruText=CorrectedErr +apei0: error source 1 entry 0: MemoryErrorType=8 (PARITY_ERROR) +.Pp +Example of a fatal uncorrectable memory error: +.Bd -literal +apei0: error source 0 reported hardware error: severity=fatal nentries=1 status=0x11 +apei0: error source 0 entry 0: SectionType={0xa5bc1114,0x6f64,0x4ede,0xb8b8,{0x3e,0x83,0xed,0x7c,0x83,0xb1}} (memory error) +apei0: error source 0 entry 0: ErrorSeverity=1 (fatal) +apei0: error source 0 entry 0: Revision=0x201 +apei0: error source 0 entry 0: Flags=0x1 +apei0: error source 0 entry 0: FruText=UncorrectedErr +apei0: error source 0 entry 0: ErrorStatus=0x400 +apei0: error source 0 entry 0: Node=0x0 +apei0: error source 0 entry 0: Module=0x0 +apei0: error source 0 entry 0: Device=0x0 +panic: fatal hardware error +.Ed +.Pp +Details of the hardware error sources can be dumped with +.Xr acpidump 8 . +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh SEE ALSO +.Xr acpi 4 , +.Xr acpihed 4 , +.Xr acpidump 8 +.Rs +.%B ACPI Specification 6.5 +.%O Chapter 18: ACPI Platform Error Interfaces (APEI) +.%U https://uefi.org/specs/ACPI/6.5/18_Platform_Error_Interfaces.html +.Re +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 10.1 . +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh AUTHORS +The +.Nm +driver was written by +.An Taylor R Campbell Aq Mt riastradh@NetBSD.org . +.\""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +.Sh BUGS +No sysctl interface to read BERT after boot. +.Pp +No simple sysctl interface to inject errors with EINJ, or any way to +inject errors at physical addresses in pages allocated for testing. +Perhaps there should be a separate kernel module for that. +.Pp +Nothing reads, writes, or clears ERST. +.Nx +could use it to store dmesg or other diagnostic information on panic. +.Pp +Many hardware error source types in the HEST are missing, such as +.Tn PCIe +errors. +.Pp +.Nm +is not wired to any machine-dependent machine check exception +notifications. +.Pp +No formal log format or sysctl/device interface that programs can +reliably act on. +.Pp +.Nx +makes no attempt to recover from uncorrectable but recoverable errors, +such as discarding a clean cached page where an uncorrectable memory +error has occurred. diff --git a/static/netbsd/man4/aps.4 b/static/netbsd/man4/aps.4 new file mode 100644 index 00000000..425867bf --- /dev/null +++ b/static/netbsd/man4/aps.4 @@ -0,0 +1,85 @@ +.\" $NetBSD: aps.4,v 1.8 2014/03/18 18:20:39 riastradh Exp $ +.\" $OpenBSD: aps.4,v 1.7 2007/05/31 19:19:49 jmc Exp $ +.\" +.\" Copyright (c) 2005 Jonathan Gray +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd July 13, 2011 +.Dt APS 4 +.Os +.Sh NAME +.Nm aps +.Nd ThinkPad Active Protection System accelerometer +.Sh SYNOPSIS +.Cd "aps0 at isa? port 0x1600" +.Sh DESCRIPTION +The +.Nm +driver provides support for several sensors found in some ThinkPad laptops. +.Pp +The sensors currently exposed via the +.Xr envsys 4 +interface are: +.Bl -column "Sensor " "Units " "Typical" -offset indent +.It Sy "Sensor " Ta Sy "Units " Ta Sy "Typical Use" +.It Li "x-acceleration" Ta "integer" Ta "X-axis acceleration" +.It Li "y-acceleration" Ta "integer" Ta "Y-axis acceleration" +.It Li "x-variable" Ta "integer" Ta "Weighted X acceleration?" +.It Li "y-variable" Ta "integer" Ta "Weighted Y acceleration?" +.It Li "temperature 1" Ta "degC" Ta "Unknown temperature" +.It Li "temperature 2" Ta "degC" Ta "Unknown temperature" +.It Li "keyboard active" Ta "boolean" Ta "Keyboard activity" +.It Li "mouse active" Ta "boolean" Ta "Mouse activity" +.It Li "lid open" Ta "boolean" Ta "Lid state" +.El +.Sh SEE ALSO +.Xr envsys 4 , +.Xr hpacel 4 , +.Xr thinkpad 4 , +.Xr envstat 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 3.8 +and was then ported to +.Nx +5.0. +.Sh AUTHORS +The +.Nm +driver was written by +.An Jonathan Gray Aq Mt jsg@openbsd.org . +.Sh CAVEATS +Few issues can be mentioned. +.Bl -bullet +.It +The +.Nm +driver does not maintain state and subsequently does not take +evasive action when it thinks the hard drive is in danger. +Possible actions would include spinning down the hard drive +in case excessive tremor is detected by the sensors. +.It +The Y axis on X40 and possibly other models seems to be inverted. +It is unknown how to distinguish between different versions of the +accelerometer to compensate for this in the driver at this time. +.It +The sensor values are refreshed every 0.5 seconds. +Because no protection measures are taken, +this is unnecessary and may have a negative effect on battery life. +.It +As IBM provides no documentation, it is not known what all the available +sensors are used for. +.El diff --git a/static/netbsd/man4/aq.4 b/static/netbsd/man4/aq.4 new file mode 100644 index 00000000..2004ac01 --- /dev/null +++ b/static/netbsd/man4/aq.4 @@ -0,0 +1,105 @@ +.\" $NetBSD: aq.4,v 1.6 2024/02/07 04:20:26 msaitoh Exp $ +.\" +.\" Copyright (c) 2020 Ryo Shimizu +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, +.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING +.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 14, 2023 +.Dt AQ 4 +.Os +.Sh NAME +.Nm aq +.Nd Aquantia AQC multigigabit Network driver +.Sh SYNOPSIS +.Cd "aq* at pci? dev ? function ?" +.Sh DESCRIPTION +The +.Nm +driver supports Aquantia AQC series controllers. +Supported controllers include: +.Pp +.Bl -bullet -compact +.It +AQC100 10 Gigabit Network Adapter +.It +AQC107 10 Gigabit Network Adapter +.It +AQC108 5 Gigabit Network Adapter +.It +AQC109 2.5 Gigabit Network Adapter +.It +AQC111 5 Gigabit Network Adapter +.It +AQC112 2.5 Gigabit Network Adapter +.It +AQC100S 10 Gigabit Network Adapter +.It +AQC107S 10 Gigabit Network Adapter +.It +AQC108S 5 Gigabit Network Adapter +.It +AQC109S 2.5 Gigabit Network Adapter +.It +AQC111S 5 Gigabit Network Adapter +.It +AQC112S 2.5 Gigabit Network Adapter +.It +AQC113DEV 10 Gigabit Network Adapter +.It +AQC113 10 Gigabit Network Adapter +.It +AQC113C 10 Gigabit Network Adapter +.It +AQC113CA 10 Gigabit Network Adapter +.It +AQC113CS 10 Gigabit Network Adapter +.It +AQC114CS 5 Gigabit Network Adapter +.It +AQC115C 2.5 Gigabit Network Adapter +.It +AQC116C Gigabit Network Adapter +.It +D100 10 Gigabit Network Adapter +.It +D107 10 Gigabit Network Adapter +.It +D108 5 Gigabit Network Adapter +.It +D109 2.5 Gigabit Network Adapter +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr ifmedia 4 , +.Xr netintro 4 , +.Xr pci 4 , +.Xr vlan 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 9.1 , +and is based on the +.Fx +driver of the same name, but has been drastically rewritten by Ryo Shimizu. diff --git a/static/netbsd/man4/arcmsr.4 b/static/netbsd/man4/arcmsr.4 new file mode 100644 index 00000000..1d810cc6 --- /dev/null +++ b/static/netbsd/man4/arcmsr.4 @@ -0,0 +1,161 @@ +.\" $NetBSD: arcmsr.4,v 1.8 2009/05/18 13:57:54 wiz Exp $ +.\" $OpenBSD: arc.4,v 1.10 2007/11/04 08:18:17 dlg Exp $ +.\" +.\" Copyright (c) 2007, 2008 Juan Romero Pardines +.\" Copyright (c) 2006 David Gwynne +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" TORTIOUS ACTION, ARISING OUT OF +.\" PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd March 3, 2008 +.Dt ARCMSR 4 +.Os +.Sh NAME +.Nm arcmsr +.Nd Areca Technology Corporation SATA/SAS RAID controller +.Sh SYNOPSIS +.Cd "arcmsr* at pci? dev ? function ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the PCI-X and PCI Express RAID controllers from +Areca Technology Corporation: +.Pp +.Bl -dash -offset indent -compact +.It +ARC-1110 PCI-X 4 Port SATA RAID Controller +.It +ARC-1110ML PCI-X 4 Port SATA RAID Controller +.It +ARC-1120 PCI-X 8 Port SATA RAID Controller +.It +ARC-1120ML PCI-X 8 Port SATA RAID Controller +.It +ARC-1130 PCI-X 12 Port SATA RAID Controller +.It +ARC-1130ML PCI-X 12 Port SATA RAID Controller +.It +ARC-1160 PCI-X 16 Port SATA RAID Controller +.It +ARC-1160ML PCI-X 16 Port SATA RAID Controller +.It +ARC-1170 PCI-X 24 Port SATA RAID Controller +.It +ARC-1200 Rev A PCI Express 2 Port SATA RAID Controller +.It +ARC-1202 PCI Express 2 Port SATA RAID Controller +.It +ARC-1210 PCI Express 4 Port SATA RAID Controller +.It +ARC-1220 PCI Express 8 Port SATA RAID Controller +.It +ARC-1230 PCI Express 12 Port SATA RAID Controller +.It +ARC-1230ML PCI Express 12 Port SATA RAID Controller +.It +ARC-1231ML PCI Express 12 Port SATA RAID Controller +.It +ARC-1260 PCI Express 16 Port SATA RAID Controller +.It +ARC-1260ML PCI Express 16 Port SATA RAID Controller +.It +ARC-1261ML PCI Express 16 Port SATA RAID Controller +.It +ARC-1280 PCI Express 24 Port SATA RAID Controller +.It +ARC-1280ML PCI Express 24 Port SATA RAID Controller +.It +ARC-1680 PCI Express 8 Port SAS RAID Controller +.It +ARC-1680LP PCI Express 8 Port SAS RAID Controller +.It +ARC-1680i PCI Express 8 Port SAS RAID Controller +.It +ARC-1680x PCI Express 8 Port SAS RAID Controller +.It +ARC-1681 PCI-X 8 Port SAS RAID Controller +.El +.Pp +These controllers support RAID levels 0, 1, 1E, 3, 5, 6, and JBOD +using either SAS or SATA II drives. +.Pp +.Nm +supports management and monitoring of the controller through the +.Xr bioctl 8 +and +.Xr envstat 8 +commands. +.Pp +Please note, however, that to use some features that require special +privileges, such as creating/removing hot-spares, pass-through disks +or RAID volumes will require to have the +.Em password +disabled in the firmware; otherwise a +.Em Permission denied +error will be reported by +.Xr bioctl 8 . +.Pp +When a RAID 1 or 1+0 volume is created, either through the +.Xr bioctl 8 +command or controller's firmware, the volume won't be accessible until +the initialization is done. +A way to get access to the +.Xr sd 4 +device that corresponds to that volume without rebooting, is to issue +the following command (once the initialization is finished): +.Bd -literal +$ scsictl scsibus0 scan any any +.Ed +.Pp +The +.Nm +driver will also report to the kernel log buffer any error that might +appear when handling firmware commands, such as used by the +.Xr bioctl 8 +command. +.Sh EVENTS +The +.Nm +driver is able to send events to +.Xr powerd 8 +if a volume or any drive connected to the volume is not online. +The +.Em state-changed +event will be sent to the +.Pa /etc/powerd/scripts/sensor_drive +script when such condition happens. +.Sh SEE ALSO +.Xr intro 4 , +.Xr pci 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr bioctl 8 , +.Xr envstat 8 , +.Xr powerd 8 , +.Xr scsictl 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 5.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was originally written for +.Ox +by +.An David Gwynne . +It was ported to +.Nx +and extended by +.An Juan Romero Pardines . diff --git a/static/netbsd/man4/arcofi.4 b/static/netbsd/man4/arcofi.4 new file mode 100644 index 00000000..5831b778 --- /dev/null +++ b/static/netbsd/man4/arcofi.4 @@ -0,0 +1,102 @@ +.\" $NetBSD: arcofi.4,v 1.2 2014/08/25 13:22:20 wiz Exp $ +.\" $OpenBSD: arcofi.4,v 1.4 2011/12/27 10:28:35 jmc Exp $ +.\" +.\" +.\" Copyright (c) 2011 Miodrag Vallat. +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd August 25, 2014 +.Dt ARCOFI 4 +.Os +.Sh NAME +.Nm arcofi +.Nd Siemens PSB2160 audio codec +.Sh SYNOPSIS +.Cd "arcofi* at dio?" +.\" .Cd "arcofi* at gsc?" +.Cd "audio* at audiobus?" +.Sh DESCRIPTION +The +.Nm +driver supports the HP +.Dq Audio1 +audio devices, based upon the Siemens PSB2160 +.Dq ARCOFI +codec, to implement the audio device interface described in +.Xr audio 4 . +.Pp +This device is found onboard HP 9000 workstations models 425e, 705 and 710. +.Pp +The +.Nm +is limited to a phone-quality mono, 8000 Hz sound. +.Ss AUDIOCTL SETTINGS +The following encodings are supported: +.Pp +.Bl -tag -width AUDIO_ENCODING_SLINEAR_BE -offset indent -compact +.It Li AUDIO_ENCODING_ULAW +.It Li AUDIO_ENCODING_ALAW +.It Li AUDIO_ENCODING_SLINEAR_BE +Natively supported. +.Pp +.It Li AUDIO_ENCODING_SLINEAR +.It Li AUDIO_ENCODING_SLINEAR_LE +.It Li AUDIO_ENCODING_ULINEAR_LE +.It Li AUDIO_ENCODING_ULINEAR_BE +Software converted to +.Li AUDIO_ENCODING_SLINEAR_BE +encoding. +.El +.Ss MIXERCTL SETTINGS +The +.Nm +has three audio ports: +.Pp +.Bl -tag -width "outputs.lineXXX" -offset indent -compact +.It Cm inputs.line +The +.Sq line in +jack connector. +.It Cm outputs.line +The +.Sq line out +jack connector. +.It Cm outputs.speaker +The built-in speaker. +.El +.Pp +Each port has a volume control, and can be muted. +.Pp +The +.Cm outputs.line +and +.Cm outputs.speaker +volume settings are tied to the same hardware setting. +.Sh SEE ALSO +.Xr audioctl 1 , +.Xr mixerctl 1 , +.Xr ioctl 2 , +.Xr audio 4 , +.Xr dio 4 , +.\" .Xr gsc 4 , +.Xr intro 4 +.Sh HISTORY +The +.Nm +driver was written for +.Ox +and first appeared in +.Ox 5.1 , +and was ported to +.Nx . diff --git a/static/netbsd/man4/aria.4 b/static/netbsd/man4/aria.4 new file mode 100644 index 00000000..8e14e972 --- /dev/null +++ b/static/netbsd/man4/aria.4 @@ -0,0 +1,72 @@ +.\" $NetBSD: aria.4,v 1.10 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 1999 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Roland C. Dowdeswell. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 22, 2005 +.Dt ARIA 4 +.Os +.Sh NAME +.Nm aria +.Nd Sierra's Aria chipset audio device driver +.Sh SYNOPSIS +.Cd "aria0 at isa? port 0xPPP irq I" +.Cd "aria0 at isa? port 0xPPP irq I flags 1" +.Cd "audio* at audiobus?" +.Sh DESCRIPTION +The +.Nm +driver provides support for Sierra's Aria chipset, +which is the basis of such cards as the Prometheus Aria 16, the +Genoa AudioBahn 16 Pro, and some Diamond Sonic Sounds (Rev A5 and +Rev B2). +.Pp +The Sierra Aria chipset is full-duplex and is capable of 8- and +16- bit audio sample recording and playback at 7875 Hz, 11025 Hz, +15750 Hz, 22050 Hz, 31500 Hz, and 44100 Hz. +.Pp +Valid I/O addresses are 0x280, 0x290, 0x2A0, and 0x2B0. +The IRQ may be set to 10, 11, or 12. +.Pp +The flags setting is necessary for +the Prometheus Aria 16, as it needs to be specially +configured at each cold boot by twiddling with the +joystick port. +.Sh SEE ALSO +.Xr audio 4 , +.Xr isa 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.4 . +.Sh BUGS +DMA is not yet supported. +.Pp +The flags option should not be necessary. +.Pp +It is necessary to configure the port and irq. diff --git a/static/netbsd/man4/artsata.4 b/static/netbsd/man4/artsata.4 new file mode 100644 index 00000000..97372b20 --- /dev/null +++ b/static/netbsd/man4/artsata.4 @@ -0,0 +1,62 @@ +.\" $NetBSD: artsata.4,v 1.5 2009/10/19 18:41:08 bouyer Exp $ +.\" +.\" Copyright (c) 2003 Manuel Bouyer. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd February 12, 2005 +.Dt ARTSATA 4 +.Os +.Sh NAME +.Nm artsata +.Nd Intel i31244 Serial ATA disk controller driver +.Sh SYNOPSIS +.Cd "artsata* at pci? dev ? function ? flags 0x0000" +.Cd "options PCIIDE_I31244_DISABLEDMA" +.Sh DESCRIPTION +The +.Nm +driver supports the Intel i31244 Serial ATA and controllers, +and provides the interface with the hardware for the +.Xr ata 4 +driver. +.Pp +The 0x0002 flag forces the +.Nm +driver to disable DMA on chipsets for which DMA would normally be +enabled. +This can be used as a debugging aid, or to work around +problems where the SATA controller is wired up to the system incorrectly. +.Sh SEE ALSO +.Xr ata 4 , +.Xr atapi 4 , +.Xr intro 4 , +.Xr pci 4 , +.Xr pciide 4 , +.Xr wd 4 , +.Xr wdc 4 +.Sh BUGS +Early samples of the Intel i31244 Serial ATA controller revision 0 had a +bug affecting DMA data transfers. +Full production samples have been fixed, but have the same revision number. +The +.Dv PCIIDE_I31244_DISABLEDMA +option can be used to disable DMA on the buggy revisions. diff --git a/static/netbsd/man4/ast.4 b/static/netbsd/man4/ast.4 new file mode 100644 index 00000000..39e1f577 --- /dev/null +++ b/static/netbsd/man4/ast.4 @@ -0,0 +1,92 @@ +.\" $NetBSD: ast.4,v 1.12 2004/05/11 22:42:47 wiz Exp $ +.\" +.\" Copyright (c) 1990, 1991 The Regents of the University of California. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to Berkeley by +.\" the Systems Programming Group of the University of Utah Computer +.\" Science Department. +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" from: @(#)dca.4 5.2 (Berkeley) 3/27/91 +.\" from: Id: com.4,v 1.1 1993/08/06 11:19:07 cgd Exp +.\" +.Dd March 30, 1994 +.Dt AST 4 +.Os +.Sh NAME +.Nm ast +.Nd +multiplexing serial communications interface +.Sh SYNOPSIS +.Cd "ast0 at isa? port 0x1a0 irq 5" +.Cd "com2 at ast? slave ?" +.Cd "com3 at ast? slave ?" +.Cd "com4 at ast? slave ?" +.Cd "com5 at ast? slave ?" +.Sh DESCRIPTION +The +.Nm ast +driver provides support for boards that multiplex together up to four +.Tn EIA +.Tn RS-232C +.Pf ( Tn CCITT +.Tn V.28 ) +communications interfaces. +Apparently the original maker of hardware +using this multiplexing protocol was AST. +.Pp +Each +.Nm +device is the master device for up to four +.Nm com +devices. +The kernel configuration specifies these +.Nm com +devices as slave devices of the +.Nm +device, as shown in the synopsis. +The slave ID given for each +.Nm com +device determines which bit in the interrupt multiplexing register is +tested to find interrupts for that device. +The +.Tn port +specification for the +.Nm +device is used to compute the base addresses for the +.Nm com +subdevices and the port for the interrupt multiplexing register. +.Sh FILES +.Bl -tag -width Pa +.It Pa /dev/tty0? +.El +.Sh SEE ALSO +.Xr com 4 +.Sh HISTORY +The +.Nm +driver was written by Roland McGrath and placed into the public +domain. diff --git a/static/netbsd/man4/asus.4 b/static/netbsd/man4/asus.4 new file mode 100644 index 00000000..2d4bb51f --- /dev/null +++ b/static/netbsd/man4/asus.4 @@ -0,0 +1,77 @@ +.\" $NetBSD: asus.4,v 1.3 2014/07/18 11:14:18 njoly Exp $ +.\" +.\" Copyright (c) 2008 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd July 13, 2014 +.Dt ASUS 4 +.Os +.Sh NAME +.Nm asus +.Nd ASUS hotkeys +.Sh SYNOPSIS +.Cd "asus* at acpi?" +.Sh DESCRIPTION +The +.Nm +driver provides support for hotkeys available in various ASUS laptops and +netbooks (Eee PC series included). +.Pp +The following hotkeys are directly handled by +.Nm : +.Bl -tag -width pcdisplay -offset indent +.It \&Fn + F3 +Decrease LCD brightness +.It \&Fn + F4 +Increase LCD brightness +.It \&Fn + F5 +Switch between LCD and external video output +.It \&Fn + F7 +Toggle audio +.It \&Fn + F8 +Volume down +.It \&Fn + F9 +Volume up +.El +.Sh SEE ALSO +.Xr acpi 4 , +.Xr powerd 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Nx 5.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +device driver was written by +.An Jared D. McNeill . +This man page was written by +.An Leonardo Taccari . +.Sh BUGS +At the moment +.Nm +does not handle +Fn + F6 (Task manager). diff --git a/static/netbsd/man4/ata.4 b/static/netbsd/man4/ata.4 new file mode 100644 index 00000000..a3174628 --- /dev/null +++ b/static/netbsd/man4/ata.4 @@ -0,0 +1,54 @@ +.\" $NetBSD: ata.4,v 1.6 2017/04/23 14:34:22 jdolecek Exp $ +.\" +.\" Copyright (c) 2003 Manuel Bouyer. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 23, 2017 +.Dt ATA 4 +.Os +.Sh NAME +.Nm ata , +.Nm atabus +.Nd AT attachment (ATA) bus driver +.Sh SYNOPSIS +.Cd "atabus* at wdc? channel ?" +.Cd "atabus* at pciide? channel ?" +.Cd "atabus* at ahcisata? channel ?" +.Cd "atabus* at mvsata? channel ?" +.Cd "atabus* at siisata? channel ?" +.Sh DESCRIPTION +The +.Nm +driver provides basic low-level functions for the +.Xr wd 4 +and +.Xr atapi 4 +drivers, for hardware which provides direct access to the ATA registers. +.Sh SEE ALSO +.Xr ahcisata 4 , +.Xr atapi 4 , +.Xr intro 4 , +.Xr mvsata 4 , +.Xr pciide 4 , +.Xr siisata 4 , +.Xr wd 4 , +.Xr wdc 4 diff --git a/static/netbsd/man4/atalk.4 b/static/netbsd/man4/atalk.4 new file mode 100644 index 00000000..895d63c1 --- /dev/null +++ b/static/netbsd/man4/atalk.4 @@ -0,0 +1,183 @@ +.\" $NetBSD: atalk.4,v 1.20 2021/02/26 11:12:45 nia Exp $ +.\" +.\" This file is derived from the atalk.4 man page in the Netatalk 1.4b2 +.\" distribution. That distribution is covered by the following copyright: +.\" +.\" Copyright (c) 1990,1996 Regents of The University of Michigan. +.\" All Rights Reserved. +.\" +.\" Permission to use, copy, modify, and distribute this software and +.\" its documentation for any purpose and without fee is hereby granted, +.\" provided that the above copyright notice appears in all copies and +.\" that both that copyright notice and this permission notice appear +.\" in supporting documentation, and that the name of The University +.\" of Michigan not be used in advertising or publicity pertaining to +.\" distribution of the software without specific, written prior +.\" permission. This software is supplied as is without expressed or +.\" implied warranties of any kind. +.\" +.\" This product includes software developed by the University of +.\" California, Berkeley and its contributors. +.\" +.\" Research Systems Unix Group +.\" The University of Michigan +.\" c/o Wesley Craig +.\" 535 W. William Street +.\" Ann Arbor, Michigan +.\" +1-313-764-2278 +.\" netatalk@umich.edu +.\" +.Dd February 26, 2021 +.Dt ATALK 4 +.Os +.Sh NAME +.Nm atalk +.Nd AppleTalk Protocol Family +.Sh SYNOPSIS +.In sys/types.h +.In netatalk/at.h +.Sh DESCRIPTION +The +.Tn AppleTalk +Protocol Family provides presentation layer support for the AppleTalk +Datagram Delivery Protocol (DDP), using the SOCK_DGRAM socket type. +In addition, access to in-kernel AppleTalk routing tables and network +interface configurations is provided. +.Pp +The AppleTalk Protocol Suite provides support for five kinds of +physical media: LocalTalk (230kbps wire-or'd serial), Ethernet, +FDDI, Token Ring, and asynchronous serial connections (using either +AppleTalk Remote Access +.Pq Tn ARA +or +.Tn PPP +). +Currently, +.Nx Ns 's +AppleTalk implementation supports Ethernet. +.Pp +AppleTalk packets are encapsulated on the Ethernet using the EtherTalk +Link Access Protocol (ELAP). +Local network address resolution is +handled using the AppleTalk Address Resolution Protocol (AARP). +Neither of these protocols is exposed to user-mode applications. +.Sh ADDRESSING +AppleTalk addresses are three byte quantities, stored in network +byte order. +The include file +.In netatalk/at.h +defines the AppleTalk address format. +.Pp +Sockets in the AppleTalk protocol family use the following address +structure: +.Bd -literal -offset indent +struct sockaddr_at { + uint8_t sat_len; + sa_family_t sat_family; + uint8_t sat_port; + struct at_addr sat_addr; + union { + struct netrange r_netrange; + char r_zero[8]; + } sat_range; +}; +.Ed +.Pp +The port of a socket may be set with +.Xr bind 2 . +The node for +.Xr bind 2 +must always be +.Dv ATADDR_ANYNODE : +.Dq this node . +The net +.\"may +must +be +.Dv ATADDR_ANYNET . +.\"or +.\".Dv ATADDR_LATENET . +.Dv ATADDR_ANYNET +corresponds to the machine's +.Dq primary +address (the first configured). +.\".Dv ATADDR_LATENET +.\"causes the address in outgoing packets to be determined when a packet +.\"is sent, i.e. determined late. +.\".Dv ATADDR_LATENET +.\"is equivalent to opening one socket for each network interface. +The port of a socket and +.\"either +the primary address +.\"or +.\".Dv ATADDR_LATENET +are returned with +.Xr getsockname 2 . +.Sh PROTOCOLS +The AppleTalk protocol family comprises the +.Tn DDP +datagram delivery protocol, +AppleTalk Data Stream Protocol +.Pq Tn ADSP , +AppleTalk Echo Protocol +.Pq Tn AEP , +AppleTalk Filing Protocol +.Pq Tn AFP , +AppleTalk Session Protocol +.Pq Tn ASP , +AppleTalk Transaction Protocol +.Pq Tn ATP , +Name Binding Protocol +.Pq Tn NBP , +Printer Access Protocol +.Pq Tn PAP , +and Zone Information Protocol +.Pq Tn ZIP . +.Pp +.Tn DDP +is implemented in the kernel as +.Dv SOCK_DGRAM +sockets in the +.Dv AF_APPLETALK +address family. +.Nx +implements all other +.Tn AppleTalk +protocols using the +.Tn Netatalk +package. +.Tn Netatalk +implements all functions except for +.Tn ADSP +and an +.Tn AFP +client. +.Tn AEP , +.Tn NBP , +and +.Tn ZIP +services are provided by the +.Tn atalkd +daemon. +.Tn ASP +and +.Tn ATP +services are provided by a user library. +.Tn PAP +and +.Tn AFP +services are provided by user programs and daemons. +.Sh SEE ALSO +.\" .BR ddp (4P), +.\" .BR atp (3N), +.\" .BR asp (3N), +.Xr bind 2 , +.Xr getsockname 2 , +.Xr options 4 +.\" .Xr atalkd 8 +.Rs +.%B Inside AppleTalk, second edition +.%A Gursharan S. Sidhu +.%A Richard F. Andrews +.%A Alan B. Oppenheimer +.Re diff --git a/static/netbsd/man4/ataraid.4 b/static/netbsd/man4/ataraid.4 new file mode 100644 index 00000000..6d94ef3e --- /dev/null +++ b/static/netbsd/man4/ataraid.4 @@ -0,0 +1,94 @@ +.\" $NetBSD: ataraid.4,v 1.15 2013/08/06 17:33:29 snj Exp $ +.\" +.\" Copyright (c) 2005 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Allen K. Briggs. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd September 16, 2008 +.Dt ATARAID 4 +.Os +.Sh NAME +.Nm ataraid +.Nd software BIOS RAID +.Sh SYNOPSIS +.Cd "pseudo-device ataraid" +.Cd "ld* at ataraid? vendtype ? unit ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for BIOS-based software RAID controllers. +These are devices which have some simple support for several basic +RAID levels (often RAID 0 and RAID 1), but which require software +support to actually perform the RAID function. +The BIOS support is largely just to create and recognize the array +so that it may be a boot device. +.Pp +The driver currently supports RAID formats from: +.Bl -bullet -offset indent -compact +.It +Adaptec HostRAID (found in Intel 6300ESB) +.It +Intel MatrixRAID +.It +JMicron RAID +.It +nVidia MediaShield +.It +Promise FastTrak +.It +Via V-RAID (found in many VIA-based motherboards) +.El +.Pp +Status of the logical disk, as well as the disks associated with it, +can be viewed through the +.Xr bioctl 8 +utility. +.Sh SEE ALSO +.Xr ld 4 , +.Xr bioctl 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 2.0 . +.Sh AUTHORS +The +.Nm +driver was originally adapted from +.Fx +by +.An Jason Thorpe +.Aq thorpej@NetBSD.org . +.Sh BUGS +Not all features of the software RAID are currently recognized or +supported. +For example, the Adaptec support doesn't recognize when a RAID 1 +should be in a +.Dq building +state, and it does not do the right thing. +.Pp +At least part of the reason for this is that the publicly-available +information on these formats is quite limited. diff --git a/static/netbsd/man4/ate.4 b/static/netbsd/man4/ate.4 new file mode 100644 index 00000000..d248f854 --- /dev/null +++ b/static/netbsd/man4/ate.4 @@ -0,0 +1,75 @@ +.\" $NetBSD: ate.4,v 1.8 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 1999 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 5, 2002 +.Dt ATE 4 +.Os +.Sh NAME +.Nm ate +.Nd +.Tn Fujitsu +MB86965A based +.Tn Allied-Telesis +Ethernet cards driver +.Sh SYNOPSIS +.Cd "ate0 at isa? port 0x2a0 irq ?" +.Cd "ate* at mca? slot ?" +.Sh DESCRIPTION +The +.Nm +driver supports +.Tn Allied-Telesis +.Tn ISA +and +.Tn MCA +bus +.Tn Ethernet +adapters based on the +.Tn Fujitsu +MB86965A +.Tn Ethernet +controller. +Supported boards include: +.Pp +.Bl -tag -width xxxx -offset indent +.It Tn Allied-Telesis AT1700T/AT1700BT/AT1700FT/AT1700AT +.It Tn Allied-Telesis AT1720T/AT1720BT/AT1720FT/AT1720AT +.It Tn Allied-Telesis RE2001/RE2003/RE2005/RE2009 +.El +.Sh SEE ALSO +.Xr fmv 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr isa 4 , +.Xr mbe 4 , +.Xr mca 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 1.4 . diff --git a/static/netbsd/man4/ath.4 b/static/netbsd/man4/ath.4 new file mode 100644 index 00000000..15170d6a --- /dev/null +++ b/static/netbsd/man4/ath.4 @@ -0,0 +1,307 @@ +.\" $NetBSD: ath.4,v 1.34 2019/05/27 02:23:16 maya Exp $ +.\" +.\" Copyright (c) 2002, 2003 Sam Leffler, Errno Consulting +.\" All rights reserved. +.\"" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer, +.\" without modification. +.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer +.\" similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any +.\" redistribution must be conditioned upon including a substantially +.\" similar Disclaimer requirement for further binary redistribution. +.\" 3. Neither the names of the above-listed copyright holders nor the names +.\" of any contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" NO WARRANTY +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +.\" LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY +.\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +.\" THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, +.\" OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER +.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGES. +.\" +.\" +.\" Note: This man page was taken by Perry Metzger almost entirely +.\" from the "ath" and "ath_hal" man pages in FreeBSD. I claim no +.\" copyright because there was nearly no original work performed in +.\" doing so. Maintainers should check the FreeBSD originals for +.\" updates against the following two revisions and incorporate them +.\" if needed: +.\" +.\" $FreeBSD: /repoman/r/ncvs/src/share/man/man4/ath.4,v 1.16 2004/02/18 08:30:08 maxim Exp $ +.\" parts from $FreeBSD: /repoman/r/ncvs/src/share/man/man4/ath_hal.4,v 1.7 2004/01/07 20:49:51 blackend Exp $ +.\" +.Dd May 27, 2019 +.Dt ATH 4 +.Os +.Sh NAME +.Nm ath +.Nd Atheros IEEE 802.11 driver +.Sh SYNOPSIS +.Cd "ath* at pci? dev ? function ?" +.Cd "ath* at cardbus? function ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for wireless network adapters based on +the Atheros AR2413, AR2417, AR5210, AR5211, AR5212, AR5213, AR5413, +AR5416, AR5424, AR9160, AR9280, and AR9285 chips. +Chip-specific support is provided by the Atheros Hardware Access Layer +(HAL). +.Pp +Supported features include 802.11 and 802.3 frames, power management, BSS, +IBSS, and host-based access point operation modes. +All host/device interaction is via DMA. +.Pp +The +.Nm +driver encapsulates all IP and ARP traffic as 802.11 frames, however +it can receive either 802.11 or 802.3 frames. +Transmit speed and operating mode is selectable +depending on your hardware. +.Pp +AR5210-based devices support 802.11a operation with transmit speeds +of 6 Mbps, 9 Mbps, 12 Mbps, 18 Mbps, 24 Mbps, 36 Mbps, 48 Mbps, and 54 Mbps. +.Pp +AR5211-based devices support 802.11a and 802.11b operation with transmit +speeds as above for 802.11a operation and +1Mbps, 2Mbps, 5.5 Mbps and 11Mbps for 802.11b operation. +.Pp +AR5212-based and AR5213-based devices support 802.11a, 802.11b, and +802.11g operation with transmit speeds appropriate to each. +.Pp +All chips also support an Atheros Turbo Mode (TM) that operates in the +802.11a frequency range with 2x the transmit speeds. +(This mode is, however, only interoperable with other Atheros-based devices.) +.Pp +The actual transmit speed used is dependent on signal quality and the +.Dq rate control +algorithm employed by the driver. +All chips support WEP encryption. +.Pp +By default, the +.Nm +driver configures the card for BSS operation (aka infrastructure +mode). +This mode requires the use of an access point (base station). +.Pp +The +.Nm +driver also supports the standard IBSS point-to-point mode +where stations can communicate amongst themselves without the +aid of an access point. +.Pp +The driver may also be configured to operate in hostap mode. +In this mode a host may function as an access point (base station). +Access points are different than operating in IBSS mode. +They operate in BSS mode. +They allow for easier roaming and bridge all Ethernet traffic such +that machines connected via an access point appear to be on the local +Ethernet segment. +.Pp +The mode of operation is chosen by specifying the appropriate mediaopt +value to ifconfig. +The +.Fl m +flag to ifconfig will list the available options. +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Pp +Devices supported by the +.Nm +driver come in either CardBus or mini-PCI packages. +Wireless cards in CardBus slots may be inserted and ejected on the fly. +.Pp +The following cards are among those supported by the +.Nm +driver: +.Pp +.Bl -column -compact "Samsung SWL-5200N" "AR5212" "CardBus" "a/b/g" +.It Em "Card Chip Bus Standard" +.It 3Com 3CRPAG175 AR5212 CardBus a/b/g +.It Airlink AWLH4030 AR5212 PCI b/g +.It Aztech WL830PC AR5212 CardBus b/g +.It Belkin F6D3000 AR5212 PCI a/b/g +.It D-Link DWL-A520 AR5210 PCI a +.It D-Link DWL-A650 AR5210 CardBus a +.It D-Link DWL-AB650 AR5211 CardBus a/b +.It D-Link DWL-AG520 AR5212 PCI a/b/g +.It D-Link DWL-AG650 AR5212 CardBus a/b/g +.It D-Link DWL-AG660 AR521? CardBus a/b/g +.It D-Link DWL-G520 AR5212 PCI b/g +.It D-Link DWL-G650B AR5212 CardBus b/g +.It Elecom LD-WL54 AR5211 CardBus a +.It Elecom LD-WL54AG AR5212 CardBus a/b/g +.It Fujitsu E5454 AR5212 CardBus a/b/g +.It Fujitsu E5454 AR5212 CardBus a/b/g +.It Fujitsu FMV-JW481 AR5212 CardBus a/b/g +.It HP NC4000 AR5212 PCI a/b/g +.It I/O Data WN-A54 AR5212 CardBus a +.It I/O Data WN-AB AR5212 CardBus a/b +.It I/O Data WN-AG AR5212 CardBus a/b/g +.It Linksys WMP55AG AR5212 PCI a/b/g +.It Linksys WPC51AB AR5211 CardBus a/b +.It Linksys WPC55AG AR5212 CardBus a/b/g +.It NEC PA-WL/54AG AR5212 CardBus a/b/g +.It Netgear WAB501 AR5211 CardBus a/b +.It Netgear WAG311 AR5212 PCI a/b/g +.It Netgear WAG511 AR5212 CardBus a/b/g +.It Netgear WG311 AR5212 PCI b/g +.It Netgear WG511T AR5212 CardBus b/g +.It Orinoco 8470WD AR5212 CardBus a/b/g +.It Orinoco 8480 AR5212 CardBus a/b/g +.It Planex GW-NS54AG AR5212 CardBus a/b/g +.It Proxim Skyline 4030 AR5210 CardBus a +.It Proxim Skyline 4032 AR5210 PCI a +.It Samsung SWL-5200N AR5212 CardBus a/b/g +.It SMC SMC2735W AR5210 CardBus a +.It Sony PCWA-C300S AR5212 CardBus b/g +.It Sony PCWA-C500 AR5210 CardBus a +.It Sony PCWA-C700 AR5212 CardBus a/b +.It Ubiquiti SRC AR5213 CardBus a/b/g +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "ath%d: unable to attach hardware; HAL status %u" +The Atheros Hardware Access Layer was unable to configure the hardware +as requested. +The status code is explained in the HAL include file +.Pa contrib/sys/dev/ic/athhal.h . +.It "ath%d: failed to allocate descriptors: %d" +The driver was unable to allocate contiguous memory for the transmit +and receive descriptors. +This usually indicates system memory is scarce and/or fragmented. +.It "ath%d: unable to setup a data xmit queue!" +The request to the HAL to setup the transmit queue for normal +data frames failed. +This should not happen. +.It "ath%d: unable to setup a beacon xmit queue!" +The request to the HAL to setup the transmit queue for 802.11 beacon frames +failed. +This should not happen. +.It "ath%d: 802.11 address: %s" +The MAC address programmed in the EEPROM is displayed. +.It "ath%d: hardware error; resetting" +An unrecoverable error in the hardware occurred. +Errors of this sort include unrecoverable DMA errors. +The driver will reset the hardware and continue. +.It "ath%d: rx FIFO overrun; resetting" +The receive FIFO in the hardware overflowed before the data could be +transferred to the host. +This typically occurs because the hardware ran short of receive +descriptors and had no place to transfer received data. +The driver will reset the hardware and continue. +.It "ath%d: unable to reset hardware; hal status %u" +The Atheros Hardware Access Layer was unable to reset the hardware +as requested. +The status code is explained in the HAL include file +.Pa sys/external/isc/atheros_hal/dist/ah.h . +This should not happen. +.It "ath%d: unable to start recv logic" +The driver was unable to restart frame reception. +This should not happen. +.It "ath%d: device timeout" +A frame dispatched to the hardware for transmission did not complete in time. +The driver will reset the hardware and continue. +This should not happen. +.It "ath%d: bogus xmit rate 0x%x" +An invalid transmit rate was specified for an outgoing frame. +The frame is discarded. +This should not happen. +.It "ath%d: ath_chan_set: unable to reset channel %u (%u MHz)" +The Atheros Hardware Access Layer was unable to reset the hardware +when switching channels during scanning. +This should not happen. +.It "ath%d: unable to allocate channel table" +The driver was unable to allocate memory for the table used to hold +the set of available channels. +.It "ath%d: unable to collect channel list from hal" +A problem occurred while querying the HAL to find the set of available +channels for the device. +This should not happen. +.It "ath%d: %s: %dM -> %dM (%d ok, %d err, %d retr)" +The driver's rate control algorithm changed the current rate for transmitting +frames. +This message is temporarily enabled for normal use to help in diagnosing +and improving the rate control algorithm. +The message indicates the new and old transmit rates and the statistics +it used to decide on this change. +.It "ath%d: failed to enable memory mapping" +The driver was unable to enable memory-mapped I/O to the PCI device registers. +This should not happen. +.It "ath%d: failed to enable bus mastering" +The driver was unable to enable the device as a PCI bus master for doing DMA. +This should not happen. +.It "ath%d: cannot map register space" +The driver was unable to map the device registers into the host address space. +This should not happen. +.It "ath%d: could not map interrupt" +The driver was unable to allocate an IRQ for the device interrupt. +This should not happen. +.It "ath%d: could not establish interrupt" +The driver was unable to install the device interrupt handler. +This should not happen. +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr cardbus 4 , +.Xr ifmedia 4 , +.Xr netintro 4 , +.Xr pci 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 5.2 . +It was ported to +.Nx 2.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was originally written by +.An Sam Leffler , +and was ported to +.Nx +by +.An David Young . +.Sh CAVEATS +Different regulatory domains have different default channels for adhoc +mode. +See +.Xr ifconfig 8 +for information on how to change the channel. +Different regulatory domains may not be able to communicate with each +other with 802.11a as different regulatory domains do not necessarily +have overlapping channels. +.Pp +Revision A1 of the D-LINK DWL-G520 and DWL-G650 are based on an +Intersil PrismGT chip and are not supported by this driver. +.Pp +Revision v2 of the Netgear WG311 is based on a Texas Instruments ACX111 +and is not supported by this driver. +.Pp +Revision v3 of the Netgear WG311 is based on a Marvell Libertas +88W8335 and is not supported by this driver. +.Sh BUGS +Performance in lossy environments is suboptimal. +The algorithm used to select the rate for transmitted packets is +very simplistic. +There is no software retransmit; only hardware retransmit is used. +Contributors are encouraged to replace the existing rate control algorithm +with a better one (hint: all the information needed is available to the driver). +.Pp +The driver does not fully enable power-save operation of the chip; +consequently power use is suboptimal. diff --git a/static/netbsd/man4/athn.4 b/static/netbsd/man4/athn.4 new file mode 100644 index 00000000..3cfde70a --- /dev/null +++ b/static/netbsd/man4/athn.4 @@ -0,0 +1,251 @@ +.\" $NetBSD: athn.4,v 1.7 2014/05/06 07:29:30 martin Exp $ +.\" $OpenBSD: athn.4,v 1.21 2012/09/17 11:04:24 sthen Exp $ +.\" +.\" Copyright (c) 2009 Damien Bergamini . +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd July 31, 2013 +.Dt ATHN 4 +.Os +.Sh NAME +.Nm athn +.Nd Atheros IEEE 802.11a/g/n wireless network device +.Sh SYNOPSIS +.Cd "athn* at cardbus?" +.Cd "athn* at pci?" +.Cd "athn* at uhub? port ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for a wide variety of +Atheros 802.11n devices, ranging from the AR5008 up to the AR9287. +.Pp +The AR5008 (codenamed Owl) is the first generation of +Atheros 802.11n solutions. +It consists of two chips, a MAC/Baseband Processor and a Radio-on-a-Chip. +The MAC/Baseband Processor can be an AR5416 (PCI and CardBus form factors) +or an AR5418 (PCIe Mini Card form factor). +The radio can be an AR2122, AR2133, AR5122 or an AR5133 chip. +The AR2122 chip operates in the 2GHz spectrum and supports up to 2 +transmit paths and 2 receiver paths (2T2R). +The AR2133 chip operates in the 2GHz spectrum and supports up to 3 +transmit paths and 3 receiver paths (3T3R). +The AR5122 chip operates in the 2GHz and 5GHz spectra and supports +up to 2 transmit paths and 2 receiver paths (2T2R). +The AR5133 chip operates in the 2GHz and 5GHz spectra and supports +up to 3 transmit paths and 3 receiver paths (3T3R). +.Pp +The AR9001 (codenamed Sowl) is a Mini-PCI 802.11n solution. +It consists of two chips, an AR9160 MAC/Baseband Processor and an +AR9103 or AR9106 Radio-on-a-Chip. +The AR9103 chip operates in the 2GHz spectrum and supports up to 3 +transmit paths and 3 receiver paths (3T3R). +The AR9106 chip operates in the 2GHz and 5GHz spectra and supports +up to 3 transmit paths and 3 receiver paths (3T3R). +.Pp +The AR9220, AR9223 and AR9280 (codenamed Merlin) are the +first generation of +Atheros single-chip 802.11n solutions. +The AR9220 and AR9223 exist in PCI and Mini-PCI form factors. +The AR9280 exists in PCIe Mini Card (XB92), half Mini Card (HB92) +and USB 2.0 (AR9280+AR7010) form factors. +The AR9220 and AR9280 operate in the 2GHz and 5GHz spectra and +support 2 transmit paths and 2 receiver paths (2T2R). +The AR9223 operates in the 2GHz spectrum and supports 2 +transmit paths and 2 receiver paths (2T2R). +.Pp +The AR9281 is a single-chip PCIe 802.11n solution. +It exists in PCIe Mini Card (XB91) and half Mini Card (HB91) form +factors. +It operates in the 2GHz spectrum and supports 1 transmit path and +2 receiver paths (1T2R). +.Pp +The AR9285 (codenamed Kite) is a single-chip PCIe 802.11n solution that +targets the value PC market. +It exists in PCIe half Mini Card (HB95) form factor only. +It operates in the 2GHz spectrum and supports a single stream (1T1R). +It can be combined with the AR3011 chip to form a combo WiFi/Bluetooth +device (WB195). +.Pp +The AR9271 is a single-chip USB 2.0 802.11n solution. +It operates in the 2GHz spectrum and supports a single stream (1T1R). +.Pp +The AR2427 is a single-chip PCIe 802.11b/g solution similar to the other +AR9280 solutions but with 802.11n capabilities removed. +It exists in PCIe Mini Card form factor only. +It operates in the 2GHz spectrum. +.Pp +The AR9227 and AR9287 are single-chip 802.11n solutions that +target mid-tier PCs. +The AR9227 exists in PCI and Mini-PCI form factors. +The AR9287 exists in PCIe half Mini Card (HB97) +and USB 2.0 (AR9287+AR7010) form factors. +They operate in the 2GHz spectrum and support 2 transmit paths and 2 +receiver paths (2T2R). +.Pp +The following table summarizes the supported chips and their capabilities. +.Bl -column "AR9001-3NX2 (AR9160+AR9106)" "2GHz/5GHz" "3x3:3" "PCI/CardBus" -offset 6n +.It Em Chipset Ta Em Spectrum Ta Em TxR:S Ta Em Bus +.It "AR5008-2NG (AR5416+AR2122)" Ta 2GHz Ta 2x2:2 Ta PCI/CardBus +.It "AR5008-3NG (AR5416+AR2133)" Ta 2GHz Ta 3x3:2 Ta PCI/CardBus +.It "AR5008-2NX (AR5416+AR5122)" Ta 2GHz/5GHz Ta 2x2:2 Ta PCI/CardBus +.It "AR5008-3NX (AR5416+AR5133)" Ta 2GHz/5GHz Ta 3x3:2 Ta PCI/CardBus +.It "AR5008E-2NG (AR5418+AR2122)" Ta 2GHz Ta 2x2:2 Ta PCIe +.It "AR5008E-3NG (AR5418+AR2133)" Ta 2GHz Ta 3x3:2 Ta PCIe +.It "AR5008E-2NX (AR5418+AR5122)" Ta 2GHz/5GHz Ta 2x2:2 Ta PCIe +.It "AR5008E-3NX (AR5418+AR5133)" Ta 2GHz/5GHz Ta 3x3:2 Ta PCIe +.It "AR9001-2NG (AR9160+AR9103)" Ta 2GHz Ta 2x2:2 Ta PCI +.It "AR9001-3NG (AR9160+AR9103)" Ta 2GHz Ta 3x3:2 Ta PCI +.It "AR9001-3NX2 (AR9160+AR9106)" Ta 2GHz/5GHz Ta 3x3:2 Ta PCI +.It "AR9220" Ta 2GHz/5GHz Ta 2x2:2 Ta PCI +.It "AR9223" Ta 2GHz Ta 2x2:2 Ta PCI +.It "AR9280" Ta 2GHz/5GHz Ta 2x2:2 Ta PCIe +.It "AR9280+AR7010" Ta 2GHz/5GHz Ta 2x2:2 Ta USB 2.0 +.It "AR9281" Ta 2GHz Ta 1x2:2 Ta PCIe +.It "AR9285" Ta 2GHz Ta 1x1:1 Ta PCIe +.It "AR9271" Ta 2GHz Ta 1x1:1 Ta USB 2.0 +.It "AR2427" Ta 2GHz Ta 1x1:1 Ta PCIe +.It "AR9227" Ta 2GHz Ta 2x2:2 Ta PCI +.It "AR9287" Ta 2GHz Ta 2x2:2 Ta PCIe +.It "AR9287+AR7010" Ta 2GHz Ta 2x2:2 Ta USB 2.0 +.El +.Pp +These are the modes the +.Nm +driver can operate in: +.Bl -tag -width "IBSS-masterXX" +.It BSS mode +Also known as +.Em infrastructure +mode, this is used when associating with an access point, through +which all traffic passes. +This mode is the default. +.It Host AP +In this mode the driver acts as an access point (base station) +for other cards. +.It monitor mode +In this mode the driver is able to receive packets without +associating with an access point. +This disables the internal receive filter and enables the card to +capture packets from networks which it wouldn't normally have access to, +or to scan for access points. +.El +.Pp +The +.Nm +driver can be configured to use +Wired Equivalent Privacy (WEP) or +Wi-Fi Protected Access (WPA-PSK and WPA2-PSK). +WPA is the de facto encryption standard for wireless networks. +It is strongly recommended that WEP +not be used as the sole mechanism +to secure wireless communication, +due to serious weaknesses in it. +The +.Nm +driver relies on the software 802.11 stack for both encryption and decryption +of data frames. +.\" driver offloads encryption and decryption to the hardware for the WEP40, +.\" WEP104, TKIP(+MIC) and CCMP ciphers. +.Pp +The transmit speed is user-selectable or can be adapted automatically by the +driver depending on the number of hardware transmission retries. +.Sh FILES +For USB devices, the driver needs at least version 1.1 of the following +firmware files, which are loaded when an interface is attached: +.Pp +.Bl -tag -width Ds -offset indent -compact +.It /libdata/firmware/athn-ar7010 +.It /libdata/firmware/athn-ar7010-11 +.It /libdata/firmware/athn-ar9271 +.El +.\".Pp +.\"A prepackaged version of the firmware can be installed using +.\".Xr fw_update 1 . +.Sh EXAMPLES +The following +.Xr ifconfig.if 5 +example configures athn0 to join whatever network is available on boot, +using WEP key +.Dq 0x1deadbeef1 , +channel 11, obtaining an IP address using DHCP: +.Bd -literal -offset indent +dhcp NONE NONE NONE nwkey 0x1deadbeef1 chan 11 +.Ed +.Pp +The following +.Xr ifconfig.if 5 +example creates a host-based access point on boot: +.Bd -literal -offset indent +inet 192.168.1.1 255.255.255.0 NONE media autoselect \e + mediaopt hostap nwid my_net chan 11 +.Ed +.Pp +Join an existing BSS network, +.Dq my_net : +.Bd -literal -offset indent +# ifconfig athn0 192.168.1.1 netmask 0xffffff00 nwid my_net +.Ed +.Sh DIAGNOSTICS +.Bl -diag +.It "athn%d: device timeout" +A frame dispatched to the hardware for transmission did not complete in time. +The driver will reset the hardware. +This should not happen. +.It "athn%d: radio is disabled by hardware switch" +The radio transmitter is off and thus no packet can go out. +The driver will reset the hardware. +Make sure the laptop radio switch is on. +.It "athn%d: radio switch turned off" +The radio switch has been turned off while the interface was up and running. +The driver will turn the interface down. +.It "athn%d: error %d, could not read firmware %s" +For some reason, the driver was unable to read the firmware file from the +filesystem. +The file might be missing or corrupted. +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr cardbus 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr netintro 4 , +.Xr pci 4 , +.Xr usb 4 , +.Xr ifconfig.if 5 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 4.7 . +Support for USB 2.0 devices first appeared in +.Ox 4.9 . +It was later ported to +.Nx 7.0 . +.Sh AUTHORS +The +.Nm +driver was written by +.An Damien Bergamini Aq Mt damien@openbsd.org +based on source code licensed under the ISC released in 2008 by +Atheros Communications for Linux. +.Sh CAVEATS +The +.Nm +driver does not support any of the 802.11n capabilities offered by +the adapters. +Additional work is required in +.Xr ieee80211 9 +before those features can be supported. diff --git a/static/netbsd/man4/atphy.4 b/static/netbsd/man4/atphy.4 new file mode 100644 index 00000000..c0f4d2e9 --- /dev/null +++ b/static/netbsd/man4/atphy.4 @@ -0,0 +1,37 @@ +.\" $NetBSD: atphy.4,v 1.3 2015/01/18 15:30:03 christos Exp $ +.\" $OpenBSD: atphy.4,v 1.1 2008/09/26 21:39:34 brad Exp $ +.\" +.\" Copyright (c) 2008 Brad Smith +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd January 18, 2015 +.Dt ATPHY 4 +.Os +.Sh NAME +.Nm atphy +.Nd Attansic Technology F1 10/100/1000 Ethernet PHY +.Sh SYNOPSIS +.Cd "atphy* at mii?" +.Sh DESCRIPTION +The +.Nm +driver supports the Attansic Technology F1 10/100/1000 Ethernet PHY. +.Sh SEE ALSO +.Xr age 4 , +.Xr alc 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr lii 4 , +.Xr mii 4 , +.Xr ifconfig 8 diff --git a/static/netbsd/man4/atppc.4 b/static/netbsd/man4/atppc.4 new file mode 100644 index 00000000..d21be36f --- /dev/null +++ b/static/netbsd/man4/atppc.4 @@ -0,0 +1,115 @@ +.\" $NetBSD: atppc.4,v 1.16 2018/08/31 19:36:28 sevan Exp $ +.\" +.\" Copyright (c) 1998, 1999, Nicolas Souchu +.\" Copyright (c) 2003, 2004 Gary Thorpe +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd August 31, 2018 +.Dt ATPPC 4 +.Os +.Sh NAME +.Nm atppc +.Nd driver for AT-style parallel port chip sets +.Sh SYNOPSIS +.Cd "atppc* at acpi?" +.Cd "atppc* at isa? port 0x378 irq 7 drq 3 flags 0x00" +.Cd "atppc* at isapnp?" +.Cd "atppc* at ofisa?" +.Cd "atppc* at pnpbios? index ?" +.Cd "atppc* at puc? port ?" +.Cd options ATPPC_VERBOSE +.Cd options ATPPC_DEBUG +.Sh DESCRIPTION +.Nm +supports parallel ports and provides the low level support needed +by higher level drivers such as +.Xr ppbus 4 . +This driver attaches where the traditional +.Nx +.Xr lpt 4 +driver would ordinarily. +It provides the data transport and chip set manipulation needed by +higher driver layers, such as +.Xr ppbus 4 +and +.Xr lpt 4 . +This driver is designed to be one of many possible implementations +supporting machine independent parallel device support via +.Xr ppbus 4 . +.Ss IEEE 1284 support +.Nm +is intended to provide to data-link like services to higher level +IEEE 1284 device drivers (such as +.Xr ppbus 4 ) . +.Nm +does not directly support IEEE 1284 features such as mode negotiation +but rather provides the necessary infrastructure to allow a higher +level driver to provide these services. +.Pp +.Nm +does provide chip set manipulation, device handshakes (where +appropriate), low-level error detection, and data transfer. +.Ss Supported data transfer modes +.Nm +supports the following data transfer modes: Centronics Compatible +(Standard), Nibble, Byte (PS2), Fast Centronics, ECP, and EPP. +Standard and Fast Centronics modes are write only, Nibble and Byte +modes are read only, and ECP and EPP modes are bidirectional. +.\" .Sh FILES +.\" .Sh EXAMPLES +.Sh SEE ALSO +.Xr acpi 4 , +.Xr i386/pnpbios 4 , +.Xr isa 4 , +.Xr isapnp 4 , +.Xr lpt 4 , +.Xr ofisa 4 , +.Xr ppbus 4 , +.Xr puc 4 +.Sh HISTORY +The +.Nm +driver is based on the +.Nm ppc +driver, which originally appeared in +.Fx . +The driver was ported over in +.Nx 2.0 . +.Sh AUTHORS +This manual page is based on the +.Fx +.Nm ppc +manual page. +The information has been updated for the +.Nx +port by +.An "Gary Thorpe" . +.Sh BUGS +The +.Fx +driver includes support for some specific chip sets, specifically +detection of some non-standard device I/O locations on the ISA bus. +This support was not ported over to the +.Nx +version of the driver yet. diff --git a/static/netbsd/man4/attimer.4 b/static/netbsd/man4/attimer.4 new file mode 100644 index 00000000..1ff95235 --- /dev/null +++ b/static/netbsd/man4/attimer.4 @@ -0,0 +1,55 @@ +.\" $NetBSD: attimer.4,v 1.4 2009/03/09 19:24:28 joerg Exp $ +.\" +.\" Copyright (c) 2005 The NetBSD Foundation. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 22, 2005 +.Dt ATTIMER 4 +.Os +.Sh NAME +.Nm attimer +.Nd AT Timer (8253) driver +.Sh SYNOPSIS +.Cd "attimer* at acpi?" +.Cd "attimer0 at isa?" +.Sh DESCRIPTION +The +.Nm +driver handles the so-called AT Timer device, initially found as chip +model 8253. +It is used as the main counter for the clock on the i386 port, +but also offers control over the pitch of the PC speaker. +.Pp +The +.Nm +driver currently only implements the access to the ISA register +.Dq TIMER1 +which controls the pitch of the PC speaker, +and should be configured along with +.Xr pcppi 4 +to be of any actual use. +.Sh SEE ALSO +.Xr acpi 4 , +.Xr isa 4 , +.Xr pcppi 4 diff --git a/static/netbsd/man4/atu.4 b/static/netbsd/man4/atu.4 new file mode 100644 index 00000000..bf3c8bfc --- /dev/null +++ b/static/netbsd/man4/atu.4 @@ -0,0 +1,115 @@ +.\" $NetBSD: atu.4,v 1.2 2005/01/24 09:04:12 wiz Exp $ +.\" $OpenBSD: atu.4,v 1.9 2005/01/06 01:02:13 jmc Exp $ +.\" +.\" Copyright (c) 1997, 1998, 1999 +.\" Bill Paul . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by Bill Paul. +.\" 4. Neither the name of the author nor the names of any co-contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 23, 2005 +.Dt ATU 4 +.Os +.Sh NAME +.Nm atu +.Nd Atmel at76c50x 802.11B wireless network interfaces +.Sh SYNOPSIS +.Cd "atu* at uhub? port ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for wireless network adapters based around +the Atmel at76c503, at76c503a, at76c505, and at76c505a USB chipsets. +.Pp +Supported features include 802.11 and 802.3 frames, power management, BSS, +IBSS, ad-hoc, and host-based access point mode. +.Pp +The +.Nm +driver encapsulates all IP and ARP traffic as 802.11 frames, however +it can receive either 802.11 or 802.3 frames. +Transmit speed is selectable between 1Mbps fixed, 2Mbps fixed, 2Mbps +with auto fallback, 5.5Mbps, 8Mbps, or 11Mbps depending on your hardware. +.Pp +Four different radio chipsets are used along with the device, each +requiring a different firmware. +.Pp +By default, the +.Nm +driver configures the card for BSS operation (aka infrastructure +mode). +This mode requires the use of an access point (base station). +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Pp +The following devices are among those supported by the +.Nm +driver: +.Pp +.Bl -tag -width Ds -offset indent -compact +.It Tn Acer Peripherals AWL400 +.It Tn AcerP AWL-300 +.It Tn Aincomm AWU2000B +.It Tn Atmel 2662W-V4 +.It Tn Atmel BW002 +.It Tn Atmel DWL-120 +.It Tn Atmel WL-1330 +.It Tn Belkin F5D6050 +.It Tn Geowave GW-US11S +.It Tn Linksys WUSB11 +.It Tn Linksys WUSB11-V28 +.It Tn Ovislink AirLive +.It Tn SMC 2662W-AR +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr netintro 4 , +.Xr usb 4 , +.Xr ifconfig 8 , +.Xr wiconfig 8 +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Daan Vreeken +and ported to +.Ox +by +.An Theo de Raadt +and +.An David Gwynne . +The +.Ox +driver was then ported to +.Nx +by +.An Jesse Off +.Aq joff@NetBSD.org . diff --git a/static/netbsd/man4/atw.4 b/static/netbsd/man4/atw.4 new file mode 100644 index 00000000..4030e7d0 --- /dev/null +++ b/static/netbsd/man4/atw.4 @@ -0,0 +1,197 @@ +.\" $NetBSD: atw.4,v 1.14 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 2003 +.\" David Young . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY David Young AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL David Young +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $Id: atw.4,v 1.14 2024/09/07 20:33:53 rillig Exp $ +.\" +.Dd June 5, 2004 +.Dt ATW 4 +.Os +.Sh NAME +.Nm atw +.Nd ADMtek ADM8211 802.11 wireless network driver +.Sh SYNOPSIS +.Cd "atw* at cardbus? function ?" +.Cd "atw* at pci? dev ? function ?" +.Sh DESCRIPTION +The +.Nm +driver supports PCI/CardBus 802.11b wireless adapters based on the +ADMtek ADM8211. +.Pp +The ADM8211 is a bus-mastering 802.11 Media Access Controller (MAC) +which is derived from ADMtek's Tulip clones (see +.Xr tlp 4 ) . +It supports contention-free traffic (with an 802.11 Point Coordinator), +64/128-bit WEP encryption, and 802.11 power-saving. +The ADM8211 integrates an RF3000 baseband processor (BBP) by RF +Microdevices. +.Pp +In a typical application, the ADM8211 is coupled with an RF front-end +by RFMD and a Silicon Laboratories Si4126 RF/IF synthesizer. +.Pp +With the ADM8211, the division of labor between the host and NIC +is different than with firmware-based NICs such as +.Xr an 4 , +.Xr awi 4 , +and +.Xr wi 4 . +The ADM8211 is still responsible for real-time 802.11 functions +such as sending ACK/RTS/CTS/ATIM frames, sending beacons, and +answering CF polls from the access point, but the host takes +responsibility for providing 802.11 functions such as scanning, +association, and authentication. +The host is also responsible for programming both the BBP and the +RF/IF synthesizer. +.Pp +.Nm +contains incomplete support for the ADM8211's WEP encryption/decryption +engine. +.Nm +does not yet support hardware WEP decryption, however, it will use +the ADM8211's crypto engine to encrypt transmitted frames. +Documentation from ADMtek claims that, in addition to the 4 128-bit +shared WEP keys, the ADM8211 will store WEP key pairs for up to 20 +peers. +The documentation provides no details, hence +.Nm +does not support the 20 key-pairs. +.Pp +The ADM8211 operates in 802.11 infrastructure mode (with an access +point) and in 802.11 ad hoc mode (without an access point) at 1, +2, 5.5, and 11Mbps. +ADMtek says that the ADM8211 cannot operate as an access point. +.Pp +The operating mode is selected using the +.Xr ifconfig 8 +utility. +For more information on configuring this device, see +.Xr ifconfig 8 +and +.Xr ifmedia 4 . +.Sh HARDWARE +Cards supported by the +.Nm +driver include: +.Pp +.Bl -item -offset indent -compact +.It +D-Link DWL-650 Rev. ?? CardBus card +.It +D-Link DWL-520 Rev. C1 PCI card +.It +LanReady WP2000 PCI card +.It +TrendNet TEW-221PC CardBus card +.It +Xterasys XN2511B PCI card +.It +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "atw0: failed to tune channel %d" +The driver failed to tune the radio to a new channel. +The radio remains tuned to the old channel. +.It "atw0: atw_si4136_write wrote %08x, SYNCTL still busy" +The driver waited 100ms without seeing an indication that the +ADM8211 had finished writing a register on the Si4126 RF/IF +synthesizer. +.It "atw0: device timeout" +The ADM8211 failed to generate an interrupt to acknowledge a transmit +command. +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr cardbus 4 , +.Xr ifmedia 4 , +.Xr netintro 4 , +.Xr pci 4 , +.Xr ifconfig 8 +.Rs +.%T ADMtek +.%U http://www.admtek.com.tw +.Re +.Rs +.%T Silicon Laboratories +.%U https://www.silabs.com +.Re +.Rs +.%T RF Microdevices +.%U http://www.rfmd.com +.Re +.Sh HISTORY +The +.Nm +device driver first appeared in +.Nx 2.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An David Young +.Aq dyoung@NetBSD.org . +For features which the ADM8211 has in common with the DECchip 21x4x, +code was liberally borrowed from +.Xr tlp 4 +by +.An Jason Thorpe +.Aq thorpej@NetBSD.org . +.Sh BUGS +The author does not fully understand what processing the duration +fields for the PLCP header and the 802.11 header undergo before +they are applied to a transmitted frame. +If the duration fields in transmitted frames are incorrect, the +performance of your network may suffer. +.Pp +The driver does not provide rate control when the media type is +set to autoselect. +.Pp +The driver lets you change to hostap mode, but it does not work +and it probably never will. +.Pp +The driver will sometimes complain that it cannot re-tune the radio +because the transmit process has not gone idle. +The author is investigating. +.Pp +Many features are still missing, especially WEP decryption and +802.11 power-saving. +.Pp +The ad hoc mode has not been rigorously tested. +IBSSs with the same SSID may not coalesce, but this should not +matter for most applications. +.Pp +The driver is untested in the ad-hoc demo mode of Lucent WaveLAN +cards. +.Pp +The ADM8211 supports 802.11 power-saving, however, +.Nm +does not support it yet. +For time-bounded service, the ADM8211 will interoperate with an +access point which implements the 802.11 Point Coordination Function, +however, this is also not supported. +.Pp +Combinations of an ADM8211 with either an Intersil or a Marvell RF +front-end are not supported. diff --git a/static/netbsd/man4/auacer.4 b/static/netbsd/man4/auacer.4 new file mode 100644 index 00000000..372392c9 --- /dev/null +++ b/static/netbsd/man4/auacer.4 @@ -0,0 +1,54 @@ +.\" $NetBSD: auacer.4,v 1.4 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2004 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Lennart Augustsson. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 22, 2005 +.Dt AUACER 4 +.Os +.Sh NAME +.Nm auacer +.Nd Acer Labs I/O Controller Hub integrated AC'97 audio device driver +.Sh SYNOPSIS +.Cd "auacer* at pci? dev ? function ?" +.Cd "audio* at audiobus?" +.Sh DESCRIPTION +The +.Nm +device driver supports the M5455 integrated AC'97 audio controller +of some Acer Labs I/O Controller Hub. +.Sh SEE ALSO +.Xr ac97 4 , +.Xr audio 4 , +.Xr pci 4 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Nx 3.0 . +.Sh BUGS +No input supported (yet). diff --git a/static/netbsd/man4/aubtfwl.4 b/static/netbsd/man4/aubtfwl.4 new file mode 100644 index 00000000..93d8462f --- /dev/null +++ b/static/netbsd/man4/aubtfwl.4 @@ -0,0 +1,78 @@ +.\" $NetBSD: aubtfwl.4,v 1.5 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 2012 The NetBSD Foundation +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 9, 2013 +.Dt AUBTFWL 4 +.Os +.Sh NAME +.Nm aubtfwl +.Nd Atheros AR3011/AR3012 Firmware Loader +.Sh SYNOPSIS +.Cd "aubtfwl* at uhub?" +.Sh DESCRIPTION +The +.Nm +driver manages automatic loading of firmware on the Atheros AR3011 +and AR3012 Bluetooth chipsets. +The firmware files should be obtained and placed in a +.Pa ubt/ +directory in the search path of the +.Xr firmload 9 +kernel subsystem. +Upon attachment, the +.Nm +driver will load the necessary firmware files and the device will detach +and reattach as a generic Bluetooth device using the +.Xr ubt 4 +driver. +.Pp +For AR3011 chipsets, you will need the +.Pa ath3k-1.fw +firmware file in +.Pa ubt/ , +and for AR3012 chipsets, the files +.Pa ar3k/AthrBT_*.dfu +and +.Pa ar3k/ramps_*.dfu +in +.Pa ubt/ar3k/ . +.Pp +The firmware files can be obtained from the Linux firmware +git repository at +.Lk https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git . +.Sh FILES +.Bl -bullet +.It +.Pa ath3k-1.fw +.It +.Pa ar3k/AthrBT_*.dfu +.It +.Pa ar3k/ramps_*.dfu +.El +.Sh SEE ALSO +.Xr bluetooth 4 , +.Xr ubt 4 , +.Xr uhub 4 , +.Xr firmload 9 diff --git a/static/netbsd/man4/audio.4 b/static/netbsd/man4/audio.4 new file mode 100644 index 00000000..ccd93a42 --- /dev/null +++ b/static/netbsd/man4/audio.4 @@ -0,0 +1,835 @@ +.\" $NetBSD: audio.4,v 1.106 2024/05/27 02:39:15 nia Exp $ +.\" +.\" Copyright (c) 1996 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by John T. Kohl. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 27, 2024 +.Dt AUDIO 4 +.Os +.Sh NAME +.Nm audio +.Nd device-independent audio driver layer +.Sh SYNOPSIS +.In sys/audioio.h +.Sh DESCRIPTION +The +.Nm +driver provides support for various audio peripherals. +It provides a uniform programming interface layer above different +underlying audio hardware drivers. +The audio layer provides full-duplex operation if the +underlying hardware configuration supports it. +.Pp +There are four device files available for audio operation: +.Pa /dev/audio , +.Pa /dev/sound , +.Pa /dev/audioctl , +and +.Pa /dev/mixer . +.Pp +.Pa /dev/audio +and +.Pa /dev/sound +are used for recording or playback of digital samples. +.Pp +.Pa /dev/mixer +is used to manipulate volume, recording source, or other audio mixer +functions. +.Pp +.Pa /dev/audioctl +accepts the same +.Xr ioctl 2 +operations as +.Pa /dev/sound , +but no other operations. +It can be opened at any time and can be used to manipulate the +audio device while it is in use. +.Sh SAMPLING DEVICES +When +.Pa /dev/audio +is opened, it automatically sets the track to manipulate +monaural 8-bit mu-law 8000Hz. +When +.Pa /dev/sound +is opened, it maintains the audio format and pause/unpause +state of the most recently opened track. +In all other respects +.Pa /dev/audio +and +.Pa /dev/sound +are identical. +.Pp +On a full-duplex device, reads and writes may operate concurrently +without interference. +.Pp +On a half-duplex device, if there are any recording descriptors already, +opening with write mode will fail. +Similarly, if there are any playback descriptors already, +opening with read mode will fail. +If both playback and recording are requested on a half-duplex device, +it will be treated as playback mode. +.Pp +On either type of device, opening with write mode will start in playback mode, +opening with read mode will start in recording mode. +.Pp +If the playback mode is paused then silence is +played instead of the provided samples, and if recording is paused then +the process blocks in +.Xr read 2 +until recording is unpaused. +.Pp +If a writing process does not call +.Xr write 2 +frequently enough to provide samples at the pace the hardware +consumes them silence is inserted. +If a reading process does not call +.Xr read 2 +frequently enough, it will simply miss samples. +.Pp +The audio driver supports track multiplexing. +All sampling devices can be opened at any time without interference. +For playback, all tracks opened simultaneously are mixed, +even if their specified format is different. +For recording, recorded data is distributed to all opened tracks, +even if their specified format is different. +To achieve this, the audio driver has a small efficient encoding converter, +a channel mixer, and a frequency converter. +The frequency conversion adapts the simplest way +(interpolation method for upward, and simple thinning method for downward) +due to restrictions in kernel resources and processing time. +It will work well in most cases but don't expect excessive quality. +.Pp +The audio device is normally accessed with +.Xr read 2 +or +.Xr write 2 +calls, but it can also be mapped into user memory with +.Xr mmap 2 . +Once the device has been mapped it can no longer be accessed +by read or write; all access is by reading and writing to +the mapped memory. +The mmap'ped buffer appears as a block of memory of size +.Va buffersize +(as available via +.Dv AUDIO_GETINFO +or +.Dv AUDIO_GETBUFINFO ) . +The audio driver will continuously move data from this buffer +from/to the mixing buffer, wrapping around at the end of the buffer. +To find out where the hardware is currently accessing data in the buffer the +.Dv AUDIO_GETIOFFS +and +.Dv AUDIO_GETOOFFS +calls can be used. +Note that +.Xr mmap 2 +no longer maps hardware buffers directly. +Now it is achieved by emulation, so don't expect significant improvements +over normal +.Xr write 2 . +For historical reasons, only encodings that are not set +.Dv AUDIO_ENCODINGFLAG_EMULATED +are able to +.Xr mmap 2 . +.Pp +The audio device, like most devices, can be used in +.Xr select 2 , +can be set in non-blocking mode and can be set (with a +.Dv FIOASYNC +ioctl) to send a +.Dv SIGIO +when I/O is possible. +The mixer device can be set to generate a +.Dv SIGIO +whenever a mixer value is changed. +.Pp +The following +.Xr ioctl 2 +commands are supported on the sample devices: +.Bl -tag -width indent +.It Dv AUDIO_FLUSH +This command stops all playback and recording, clears all queued +buffers, resets error counters on this track, +and restarts recording and playback as +appropriate for the current sampling mode. +.It Dv AUDIO_PERROR (int) +.It Dv AUDIO_RERROR (int) +This command fetches the count of dropped output (input) +bytes into its integer argument. +There is no information regarding when in the sample stream +they were dropped. +.It Dv AUDIO_WSEEK (u_long) +This command fetches the count of bytes that are queued ahead of the +first sample in the most recent sample block written into its integer argument. +.It Dv AUDIO_DRAIN +This command suspends the calling process until all queued playback +samples have been played. +.It Dv AUDIO_GETDEV (audio_device_t) +This command fetches the current hardware device information into the +.Vt audio_device_t +argument. +.Bd -literal +typedef struct audio_device { + char name[MAX_AUDIO_DEV_LEN]; + char version[MAX_AUDIO_DEV_LEN]; + char config[MAX_AUDIO_DEV_LEN]; +} audio_device_t; +.Ed +.It Dv AUDIO_GETENC (audio_encoding_t) +This command is used iteratively to fetch sample encoding names and +format IDs into the input/output audio_encoding_t argument. +The encoding returned by the command is the user-accessible encoding, +not the hardware-supported encoding. +.Bd -literal +typedef struct audio_encoding { + int index; /* input: nth encoding */ + char name[MAX_AUDIO_DEV_LEN]; /* name of encoding */ + int encoding; /* value for encoding parameter */ + int precision; /* value for precision parameter */ + int flags; +#define AUDIO_ENCODINGFLAG_EMULATED 1 /* software emulation mode */ +} audio_encoding_t; +.Ed +.Pp +To query +all the supported encodings, start with an index field of 0 and +continue with successive encodings (1, 2, ...) until the command returns +an error. +.It Dv AUDIO_GETFD (int) +This command is obsolete. +.It Dv AUDIO_SETFD (int) +This command is obsolete. +.It Dv AUDIO_GETPROPS (int) +This command gets a bit set of hardware properties. +If the hardware +has a certain property the corresponding bit is set, otherwise it is not. +The properties can have the following values: +.Pp +.Bl -tag -width AUDIO_PROP_INDEPENDENT -compact +.It Dv AUDIO_PROP_FULLDUPLEX +the device admits full duplex operation. +.It Dv AUDIO_PROP_MMAP +the device can be used with +.Xr mmap 2 . +.It Dv AUDIO_PROP_INDEPENDENT +the device can set the playing and recording encoding parameters +independently. +.It Dv AUDIO_PROP_PLAYBACK +the device is capable of audio playback. +.It Dv AUDIO_PROP_CAPTURE +the device is capable of audio capture. +.El +.It Dv AUDIO_GETIOFFS (audio_offset_t) +.It Dv AUDIO_GETOOFFS (audio_offset_t) +This command fetches the current offset in the input(output) buffer where +the track mixer will be putting(getting) data. +It mostly useful when the device buffer is available in user space via the +.Xr mmap 2 +call. +The information is returned in the +.Vt audio_offset_t +structure. +.Bd -literal +typedef struct audio_offset { + u_int samples; /* Total number of bytes transferred */ + u_int deltablks; /* Blocks transferred since last checked */ + u_int offset; /* Physical transfer offset in buffer */ +} audio_offset_t; +.Ed +.It Dv AUDIO_GETINFO (audio_info_t) +.It Dv AUDIO_GETBUFINFO (audio_info_t) +.It Dv AUDIO_SETINFO (audio_info_t) +Get or set audio information as encoded in the audio_info structure. +For historical reasons, the audio_info structure has three different +layer's parameters: track, track mixer, and hardware rich mixer. +.Bd -literal +typedef struct audio_info { + struct audio_prinfo play; /* info for play (output) side */ + struct audio_prinfo record; /* info for record (input) side */ + u_int monitor_gain; /* input to output mix [HWmixer] */ + /* BSD extensions */ + u_int blocksize; /* read/write block size [track] */ + u_int hiwat; /* output high water mark [track] */ + u_int lowat; /* output low water mark [track] */ + u_int _ispare1; + u_int mode; /* current operation mode [track] */ +#define AUMODE_PLAY 0x01 +#define AUMODE_RECORD 0x02 +#define AUMODE_PLAY_ALL 0x04 /* Not used anymore */ +} audio_info_t; +.Ed +.Pp +When setting the current state with +.Dv AUDIO_SETINFO , +the audio_info structure should first be initialized with +.Li AUDIO_INITINFO(&info) +and then the particular values to be changed should be set. +This allows the audio driver to only set those things that you wish +to change and eliminates the need to query the device with +.Dv AUDIO_GETINFO +or +.Dv AUDIO_GETBUFINFO +first. +.Pp +The +.Va mode +field indicates current operation mode, either one of +.Dv AUMODE_PLAY +or +.Dv AUMODE_RECORD . +These two flags can not be changed once this descriptor is opened. +For playback mode, the obsolete +.Dv AUMODE_PLAY_ALL +flag can be set but has no effect. +.Pp +.Va hiwat +and +.Va lowat +are used to control write behavior. +Writes to the audio devices will queue up blocks until the high-water +mark is reached, at which point any more write calls will block +until the queue is drained to the low-water mark. +.Va hiwat +and +.Va lowat +set those high- and low-water marks (in audio blocks). +The default for +.Va hiwat +is the maximum value and for +.Va lowat +75% of +.Va hiwat . +.Pp +.Va blocksize +sets the current audio blocksize. +The generic audio driver layer and the hardware driver have the +opportunity to adjust this block size to get it within +implementation-required limits. +Normally the +.Va blocksize +is calculated to correspond to the value of the +.Em hw.audioX.blk_ms +sysctl and is recalculated when the encoding parameters change. +If the descriptor is opened for read only, +.Va blocksize +indicates the blocksize for the recording track. +Otherwise, +.Va blocksize +indicates the blocksize for the playback track. +.Bd -literal +struct audio_prinfo { + u_int sample_rate; /* sample rate in samples/s [track] */ + u_int channels; /* number of channels, usually 1 or 2 [track] */ + u_int precision; /* number of bits/sample [track] */ + u_int encoding; /* data encoding (AUDIO_ENCODING_* below) [track] */ + u_int gain; /* volume level [HWmixer] */ + u_int port; /* selected I/O port [HWmixer] */ + u_long seek; /* BSD extension [track] */ + u_int avail_ports; /* available I/O ports [HWmixer] */ + u_int buffer_size; /* total size audio buffer [track] */ + u_int _ispare[1]; + u_int samples; /* number of samples [track] */ + u_int eof; /* End Of File (zero-size writes) counter [track] */ + u_char pause; /* non-zero if paused, zero to resume [track] */ + u_char error; /* non-zero if underflow/overflow occurred [track] */ + u_char waiting; /* non-zero if another process hangs in open [track] */ + u_char balance; /* stereo channel balance [HWmixer] */ + u_char cspare[2]; + u_char open; /* non-zero if currently open [trackmixer] */ + u_char active; /* non-zero if I/O is currently active [trackmixer] */ +}; +.Ed +.Pp +Note: many hardware audio drivers require identical playback and +recording sample rates, sample encodings, and channel counts. +The playing information is always set last and will prevail on such hardware. +If the hardware can handle different settings the +.Dv AUDIO_PROP_INDEPENDENT +property is set. +.Pp +The encoding parameter can have the following values: +.Pp +.Bl -tag -width AUDIO_ENCODING_SLINEAR_BE -compact +.It Dv AUDIO_ENCODING_ULAW +mu-law encoding, 8 bits/sample +.It Dv AUDIO_ENCODING_ALAW +A-law encoding, 8 bits/sample +.It Dv AUDIO_ENCODING_SLINEAR +two's complement signed linear encoding with the platform byte order +.It Dv AUDIO_ENCODING_ULINEAR +unsigned linear encoding +with the platform byte order +.It Dv AUDIO_ENCODING_ADPCM +ADPCM encoding, 8 bits/sample +.It Dv AUDIO_ENCODING_SLINEAR_LE +two's complement signed linear encoding with little endian byte order +.It Dv AUDIO_ENCODING_SLINEAR_BE +two's complement signed linear encoding with big endian byte order +.It Dv AUDIO_ENCODING_ULINEAR_LE +unsigned linear encoding with little endian byte order +.It Dv AUDIO_ENCODING_ULINEAR_BE +unsigned linear encoding with big endian byte order +.It Dv AUDIO_ENCODING_AC3 +Dolby Digital AC3 +.El +.Pp +The +.Nm +driver accepts the following formats. +.Va encoding +and +.Va precision +are one of the values obtained by +.Dv AUDIO_GETENC , +regardless of formats supported by underlying driver. +.Va frequency +ranges from 1000Hz to 192000Hz, +regardless of frequency (ranges) supported by underlying driver. +.Va channels +depends your underlying driver. +If the underlying driver only supports monaural (1 channel) +or stereo (2 channels), you can specify 1 or 2 regardless of +number of channels supported by underlying driver. +If the underlying driver supports three or more channels, you can specify +the number of channels supported by the underlying driver or fewer. +.Pp +The +.Va gain , +.Va port +and +.Va balance +settings provide simple shortcuts to the richer mixer +interface described below and are not obtained by +.Dv AUDIO_GETBUFINFO . +The gain should be in the range +.Bq Dv AUDIO_MIN_GAIN , Dv AUDIO_MAX_GAIN +and the balance in the range +.Bq Dv AUDIO_LEFT_BALANCE , Dv AUDIO_RIGHT_BALANCE +with the normal setting at +.Dv AUDIO_MID_BALANCE . +.Pp +The input port should be a combination of: +.Pp +.Bl -tag -width AUDIO_MICROPHONE -compact +.It Dv AUDIO_MICROPHONE +to select microphone input. +.It Dv AUDIO_LINE_IN +to select line input. +.It Dv AUDIO_CD +to select CD input. +.El +.Pp +The output port should be a combination of: +.Pp +.Bl -tag -width AUDIO_HEADPHONE -compact +.It Dv AUDIO_SPEAKER +to select speaker output. +.It Dv AUDIO_HEADPHONE +to select headphone output. +.It Dv AUDIO_LINE_OUT +to select line output. +.El +.Pp +The available ports can be found in +.Va avail_ports +.Dv ( AUDIO_GETBUFINFO +only). +.Pp +.Va buffer_size +is the total size of the audio buffer. +The buffer size divided by the +.Va blocksize +gives the maximum value for +.Va hiwat . +Currently the +.Va buffer_size +can only be read and not set. +.Pp +The +.Va seek +and +.Va samples +fields are only used by +.Dv AUDIO_GETINFO +and +.Dv AUDIO_GETBUFINFO . +.Va seek +represents the count of +bytes pending; +.Va samples +represents the total number of bytes recorded or played, less those +that were dropped due to inadequate consumption/production rates. +.Pp +.Va pause +returns the current pause/unpause state for recording or playback. +For +.Dv AUDIO_SETINFO , +if the pause value is specified it will either pause +or unpause the particular direction. +.It Dv AUDIO_QUERYFORMAT (audio_format_query_t) +This command enumerates formats supported by the hardware. +Similarly to +.Dv AUDIO_GETENC , +to query all the supported formats, +start with an index field of 0 and continue with successive formats +(1, 2, ...) until the command returns an error. +.Bd -literal +typedef struct audio_format_query { + u_int index; + struct audio_format fmt; +} audio_format_query_t; +.Ed +.It Dv AUDIO_GETFORMAT (audio_info_t) +This command fetches the current hardware format. +Only the following members in audio_info_t are used. +Members which are not listed here or belong in invalid direction are +filled by \-1. +.Bl -bullet +.It +mode +.It +play.encoding +.It +play.precision +.It +play.channels +.It +play.sample_rate +.It +record.encoding +.It +record.precision +.It +record.channels +.It +record.sample_rate +.El +.Pp +.Va mode +indicates which direction is valid. +.It Dv AUDIO_SETFORMAT (audio_info_t) +This command sets the hardware format. +It will fail if there are any opened descriptors. +So obviously, it must be issued on +.Pa /dev/audioctl . +Similarly to +.Dv AUDIO_GETFORMAT , +only above members in audio_info_t are used. +Members which is not listed or belong in invalid direction are ignored. +The parameters can be chosen from the choices obtained by +.Dv AUDIO_QUERYFORMAT . +.It Dv AUDIO_GETCHAN (int) +This command is obsolete. +.It Dv AUDIO_SETCHAN (int) +This command is obsolete. +.El +.Sh MIXER DEVICE +The mixer device, +.Pa /dev/mixer , +may be manipulated with +.Xr ioctl 2 +but does not support +.Xr read 2 +or +.Xr write 2 . +It supports the following +.Xr ioctl 2 +commands: +.Bl -tag -width indent +.It Dv AUDIO_GETDEV (audio_device_t) +This command is the same as described above for the sampling devices. +.It Dv AUDIO_MIXER_READ (mixer_ctrl_t) +.It Dv AUDIO_MIXER_WRITE (mixer_ctrl_t) +These commands read the current mixer state or set new mixer state for +the specified device +.Va dev . +.Va type +identifies which type of value is supplied in the +.Vt mixer_ctrl_t +argument. +.Bd -literal +#define AUDIO_MIXER_CLASS 0 +#define AUDIO_MIXER_ENUM 1 +#define AUDIO_MIXER_SET 2 +#define AUDIO_MIXER_VALUE 3 +typedef struct mixer_ctrl { + int dev; /* input: nth device */ + int type; + union { + int ord; /* enum */ + int mask; /* set */ + mixer_level_t value; /* value */ + } un; +} mixer_ctrl_t; + +#define AUDIO_MIN_GAIN 0 +#define AUDIO_MAX_GAIN 255 +typedef struct mixer_level { + int num_channels; + u_char level[8]; /* [num_channels] */ +} mixer_level_t; +#define AUDIO_MIXER_LEVEL_MONO 0 +#define AUDIO_MIXER_LEVEL_LEFT 0 +#define AUDIO_MIXER_LEVEL_RIGHT 1 +.Ed +.Pp +For a mixer value, the +.Va value +field specifies both the number of channels and the values for each +channel. +If the channel count does not match the current channel count, the +attempt to change the setting may fail (depending on the hardware +device driver implementation). +Audio levels may be adjusted in increments of the +.Dv delta +value returned by +.Dv AUDIO_MIXER_DEVINFO . +This field is optional for hardware drivers to specify - devices with a +delta of 0 may allow arbitrary adjustment of levels. +.Pp +For an enumeration value, the +.Va ord +field should be set to one of the possible values as returned by a prior +.Dv AUDIO_MIXER_DEVINFO +command. +.Pp +The type +.Dv AUDIO_MIXER_CLASS +is only used for classifying particular mixer device +types and is not used for +.Dv AUDIO_MIXER_READ +or +.Dv AUDIO_MIXER_WRITE . +.It Dv AUDIO_MIXER_DEVINFO (mixer_devinfo_t) +This command is used iteratively to fetch audio mixer device information +into the input/output +.Vt mixer_devinfo_t +argument. +To query all the supported devices, start with an index field of +0 and continue with successive devices (1, 2, ...) until the +command returns an error. +.Bd -literal +typedef struct mixer_devinfo { + int index; /* input: nth mixer device */ + audio_mixer_name_t label; + int type; + int mixer_class; + int next, prev; +#define AUDIO_MIXER_LAST -1 + union { + struct audio_mixer_enum { + int num_mem; + struct { + audio_mixer_name_t label; + int ord; + } member[32]; + } e; + struct audio_mixer_set { + int num_mem; + struct { + audio_mixer_name_t label; + int mask; + } member[32]; + } s; + struct audio_mixer_value { + audio_mixer_name_t units; + int num_channels; + int delta; + } v; + } un; +} mixer_devinfo_t; +.Ed +.Pp +The +.Va label +field identifies the name of this particular mixer control. +The +.Va index +field may be used as the +.Va dev +field in +.Dv AUDIO_MIXER_READ +and +.Dv AUDIO_MIXER_WRITE +commands. +The +.Va type +field identifies the type of this mixer control. +Enumeration types are typically used for on/off style controls (e.g., a +mute control) or for input/output device selection (e.g., select +recording input source from CD, line in, or microphone). +Set types are similar to enumeration types but any combination +of the mask bits can be used. +.Pp +The +.Va mixer_class +field identifies what class of control this is. +The +.Pq arbitrary +value set by the hardware driver may be determined by examining the +.Va mixer_class +field of the class itself, a mixer of type +.Dv AUDIO_MIXER_CLASS . +For example, a mixer controlling the input gain on the line in circuit +would have a +.Va mixer_class +that matches an input class device with the name +.Dq inputs +.Dv ( AudioCinputs ) , +and would have a +.Va label +of +.Dq line +.Dv ( AudioNline ) . +Mixer controls which control audio circuitry for a particular audio +source (e.g., line-in, CD in, DAC output) are collected under the input class, +while those which control all audio sources (e.g., master volume, +equalization controls) are under the output class. +Hardware devices capable of recording typically also have a record class, +for controls that only affect recording, and also a monitor class. +.Pp +The +.Va next +and +.Va prev +may be used by the hardware device driver to provide hints for the next +and previous devices in a related set (for example, the line in level +control would have the line in mute as its +.Dq next +value). +If there is no relevant next or previous value, +.Dv AUDIO_MIXER_LAST +is specified. +.Pp +For +.Dv AUDIO_MIXER_ENUM +mixer control types, +the enumeration values and their corresponding names are filled in. +For example, a mute control would return appropriate values paired with +.Dv AudioNon +and +.Dv AudioNoff . +For +.Dv AUDIO_MIXER_VALUE +and +.Dv AUDIO_MIXER_SET +mixer control types, the channel count is +returned; the units name specifies what the level controls (typical +values are +.Dv AudioNvolume , +.Dv AudioNtreble , +.Dv AudioNbass ) . +.\" For AUDIO_MIXER_SET mixer control types, what is what? +.El +.Pp +By convention, all the mixer devices can be distinguished from other +mixer controls because they use a name from one of the +.Dv AudioC* +string values. +.Sh FILES +.Bl -tag -width /dev/audioctl -compact +.It Pa /dev/audio +.It Pa /dev/audioctl +.It Pa /dev/sound +.It Pa /dev/mixer +.El +.Sh SEE ALSO +.Xr audiocfg 1 , +.Xr audioctl 1 , +.Xr audioplay 1 , +.Xr audiorecord 1 , +.Xr mixerctl 1 , +.Xr ioctl 2 , +.Xr ossaudio 3 , +.Xr acorn32/vidcaudio 4 , +.\" .Xr amiga/aucc 4 , +.\" .Xr amiga/melody 4 , +.Xr arcofi 4 , +.Xr aria 4 , +.Xr auacer 4 , +.Xr audiocs 4 , +.Xr auich 4 , +.Xr auixp 4 , +.\" .Xr ausoc 4 , +.Xr autri 4 , +.Xr auvia 4 , +.Xr bba 4 , +.Xr btsco 4 , +.Xr clcs 4 , +.Xr clct 4 , +.Xr cmpci 4 , +.Xr dreamcast/aica 4 , +.Xr eap 4 , +.Xr emuxki 4 , +.Xr esa 4 , +.Xr esm 4 , +.Xr eso 4 , +.Xr ess 4 , +.\" .Xr evbarm/aaci 4 , +.\" .Xr evbarm/digfilt 4 , +.\" .Xr evbarm/pxaacu 4 , +.\" .Xr evbarm/udassio 4 , +.Xr fms 4 , +.Xr gcscaudio 4 , +.Xr gus 4 , +.Xr guspnp 4 , +.Xr hdafg 4 , +.Xr hdaudio 4 , +.Xr hppa/harmony 4 , +.Xr macppc/awacs 4 , +.Xr macppc/snapper 4 , +.Xr midi 4 , +.Xr neo 4 , +.Xr pad 4 , +.Xr pas 4 , +.\" .Xr paud 4 , +.Xr radio 4 , +.\" .Xr repluse 4 , +.Xr sb 4 , +.Xr sgimips/haltwo 4 , +.Xr sgimips/mavb 4 , +.Xr sparc/audioamd 4 , +.Xr sparc/dbri 4 , +.Xr sv 4 , +.\" .Xr toccata 4 , +.Xr uaudio 4 , +.\" .Xr vaudio 4 , +.\" .Xr vcaudio 4 , +.\" .Xr vraiu 4 , +.\" .Xr vsaudio 4 , +.Xr wss 4 , +.Xr x68k/vs 4 , +.Xr yds 4 , +.Xr ym 4 +.\" .Xr zaudio 4 +.Sh HISTORY +Support for virtual channels and mixing first appeared in +.Nx 8.0 . +.Sh BUGS +If the device is used in +.Xr mmap 2 +it is currently always mapped for writing (playing) due to VM system weirdness. diff --git a/static/netbsd/man4/audiocs.4 b/static/netbsd/man4/audiocs.4 new file mode 100644 index 00000000..f3d0277b --- /dev/null +++ b/static/netbsd/man4/audiocs.4 @@ -0,0 +1,51 @@ +.\" $NetBSD: audiocs.4,v 1.5 2005/06/22 04:30:08 kent Exp $ +.\" +.\" Copyright (c) 2002 Valeriy E. Ushakov +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Neither the name of the author nor the names of any +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 22, 2005 +.Dt AUDIOCS 4 +.Os +.Sh NAME +.Nm audiocs +.Nd Crystal Semiconductor CS4231 audio device driver +.Sh SYNOPSIS +.Cd "audiocs0 at sbus0 slot ? offset ?" +.Cd "audiocs0 at ebus?" +.Cd "audio* at audiobus?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the CS4231 audio devices on the EBus and +SBus buses in sparc and sparc64 machines. +.Sh SEE ALSO +.Xr audio 4 , +.Xr ebus 4 , +.Xr sbus 4 +.Sh BUGS +Mixer +.Dq outputs +class +.Dv ( AudioCoutputs ) +is not yet supported. diff --git a/static/netbsd/man4/aue.4 b/static/netbsd/man4/aue.4 new file mode 100644 index 00000000..a6ac0597 --- /dev/null +++ b/static/netbsd/man4/aue.4 @@ -0,0 +1,171 @@ +.\" $NetBSD: aue.4,v 1.23 2019/08/30 09:24:19 wiz Exp $ +.\" +.\" Copyright (c) 1997, 1998, 1999 +.\" Bill Paul . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by Bill Paul. +.\" 4. Neither the name of the author nor the names of any co-contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" FreeBSD: src/share/man/man4/aue.4,v 1.2 2000/01/07 22:18:47 wpaul Exp +.\" +.Dd August 24, 2019 +.Dt AUE 4 +.Os +.Sh NAME +.Nm aue +.Nd ADMtek AN986 and AN8511 Pegasus USB Ethernet driver +.Sh SYNOPSIS +.Cd "aue* at uhub?" +.Cd "ukphy* at mii?" +.Sh HARDWARE +The +.Nm +driver supports the following adapters: +.Pp +.Bl -tag -width Dv -offset indent -compact +.It Tn @Home USB 10/100 +.It Tn Abocom DSB650TX +.It Tn Billionton Systems USB100 +.It Tn Compaq HNE-200 +.It Tn Corega FEther USB-TX +.It Tn Corega FEther USB-TXS +.It Tn D-Link DSB-650 +.It Tn D-Link DSB-650TX +.It Tn D-Link DSB-650TX-PNA +.It Tn I/O DATA USB ET/TX +.It Tn I/O DATA USB ET/TXS +.It Tn I/O DATA ETX-US2 +.It Tn Hawking UF100 +.It Tn Kingston KNU101TX +.It Tn LinkSys USB100TX +.It Tn LinkSys USB100H1 +.It Tn LinkSys USB10TA +.It Tn Melco Inc. LU-ATX +.It Tn Microsoft MN110 +.It Tn SOHOware NUB100 +.It Tn SMC 2202USB +.It Tn SMC 2206USB/ETH +.El +.Sh DESCRIPTION +The +.Nm +driver provides support for USB +.Tn Ethernet +adapters based on the ADMtek AN986 Pegasus and AN8511 Pegasus II chipsets. +.Pp +The Pegasus contains a 10/100 +.Tn Ethernet +MAC with MII interface and is designed to work with both +.Tn Ethernet +and HomePNA transceivers. +Although designed to interface with 100Mbps peripherals, the existing +USB standard specifies a maximum transfer speed of 12Mbps. +Users should therefore not expect to actually +achieve 100Mbps speeds with these devices. +.Pp +The Pegasus supports a 64-bit multicast hash table, single perfect +filter entry for the station address and promiscuous mode. +Packets are +received and transmitted over separate USB bulk transfer endpoints. +.Pp +The +.Nm +driver supports the following media types: +.Bl -tag -width xxxxxxxxxxxxxxxxxxxx +.It autoselect +Enable automatic selection of the media type and options. +The user can manually override the automatically selected mode by +adding media options to the +.Pa /etc/rc.conf +file. +.It 10baseT/UTP +Set 10Mbps operation. +The +.Ar mediaopt +option can also be used to enable +.Ar full-duplex +operation. +Not specifying +.Ar full duplex +implies +.Ar half-duplex +mode. +.It 100baseTX +Set 100Mbps (fast +.Tn Ethernet ) +operation. +The +.Ar mediaopt +option can also be used to enable +.Ar full-duplex +operation. +Not specifying +.Ar full duplex +implies +.Ar half-duplex +mode. +.El +.Pp +The +.Nm +driver supports the following media options: +.Bl -tag -width xxxxxxxxxxxxxxxxxxxx +.It full-duplex +Force full duplex operation. +The interface will operate in half duplex mode +if this media option is not specified. +.El +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh DIAGNOSTICS +See +.Xr usbnet 4 +for diagnostics. +.Sh SEE ALSO +.Xr arp 4 , +.Xr netintro 4 , +.Xr usb 4 , +.Xr usbnet 4 , +.Xr ifconfig 8 +.Rs +.%T ADMtek AN986 data sheet +.%U http://www.admtek.com.tw +.Re +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 4.0 , +and in +.Nx 1.5 . +.Sh AUTHORS +The +.Nm +driver was written by +.An Bill Paul +.Aq wpaul@ee.columbia.edu . diff --git a/static/netbsd/man4/auich.4 b/static/netbsd/man4/auich.4 new file mode 100644 index 00000000..fd4040bd --- /dev/null +++ b/static/netbsd/man4/auich.4 @@ -0,0 +1,80 @@ +.\" $NetBSD: auich.4,v 1.25 2016/10/16 05:26:20 wiz Exp $ +.\" +.\" Copyright (c) 2000 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jason R. Thorpe. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 13, 2016 +.Dt AUICH 4 +.Os +.Sh NAME +.Nm auich +.Nd Intel I/O Controller Hub integrated AC'97 audio device driver +.Sh SYNOPSIS +.Cd "auich* at pci? dev ? function ?" +.Cd "audio* at audiobus?" +.Sh DESCRIPTION +The +.Nm +device driver supports the integrated AC'97 audio controller +of the Intel I/O Controller Hub. +Supported chipsets include the i82801AA (ICH), i82801AB (ICH0), +i82801BA (ICH2), i82440MX, i82801CA (ICH3), i82801DB (ICH4), i82801EB (ICH5), +i82801FB (ICH6), i82801GB/GR (ICH7), and Intel 6300ESB. +The driver also supports SiS 7012, nForce MCP, nForce2 MCP-T, +nForce3 MCP-T, nForce3 250 MCP-T, nForce4, and AMD 8111. +.Pp +The driver provides the following +.Xr sysctl 8 +read/write variable (when hardware support is available): +.Bl -tag -width Ds +.It Va hw.auich0.ac97rate +Link rate of the device in Hz. +The driver automatically measures and +calculates the correct rate so you usually don't need to change +this. +There is, however, a chance that the driver miscalculates the +rate especially on an emulated hardware, resulting in an incorrect +playback pitch. +When this happens you need to manually set this +variable to the correct value. +Try +.Li 48000 +if you don't know the correct value as it is the default link rate. +.Sh SEE ALSO +.Xr ac97 4 , +.Xr audio 4 , +.Xr pci 4 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.6 . +.Sh BUGS +The +.Sq microphone +input DMA channel is not currently supported. diff --git a/static/netbsd/man4/auixp.4 b/static/netbsd/man4/auixp.4 new file mode 100644 index 00000000..bd23dcd3 --- /dev/null +++ b/static/netbsd/man4/auixp.4 @@ -0,0 +1,64 @@ +.\" $NetBSD: auixp.4,v 1.5 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2004, 2005 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Reinoud Zandijk. +.\" +.\" Manual page template from auich.4 by Jason Thorpe +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 22, 2005 +.Dt AUIXP 4 +.Os +.Sh NAME +.Nm auixp +.Nd ATI IXP series integrated AC'97 audio device driver +.Sh SYNOPSIS +.Cd "auixp* at pci? dev ? function ?" +.Cd "audio* at audiobus?" +.Sh DESCRIPTION +The +.Nm +device driver supports the integrated AC'97 audio controller +of the ATP IXP series I/O controller hub. +Supported models include all the chips that have IXP-200 base +functionality for codec communication and DAC/ADC DMA support. +.Sh SEE ALSO +.Xr ac97 4 , +.Xr audio 4 , +.Xr pci 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 2.1 . +.Sh BUGS +The +.Sq SPDIF +support is still rudimentary and not supported other than through the codec. +.Sq Quadrophonic +and +.Sq Dolby 5.1 +audio are supported but untested. diff --git a/static/netbsd/man4/autri.4 b/static/netbsd/man4/autri.4 new file mode 100644 index 00000000..9c02ad52 --- /dev/null +++ b/static/netbsd/man4/autri.4 @@ -0,0 +1,50 @@ +.\" $NetBSD: autri.4,v 1.3 2005/06/22 04:19:09 kent Exp $ +.\" +.\" Copyright (c) 2001 SOMEYA Yoshihiko and KUROSAWA Takahiro. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 22, 2005 +.Dt AUTRI 4 +.Os +.Sh NAME +.Nm autri +.Nd Trident 4DWAVE-DX/NX, SiS 7018, ALi M5451 audio device driver +.Sh SYNOPSIS +.Cd "autri* at pci? dev ? function ?" +.Cd "audio* at audiobus?" +.Cd "midi* at autri?" +.Sh DESCRIPTION +The +.Nm +device driver supports the AC'97 audio controller found in +Trident 4DWAVE-DX/NX, SiS 7018 and ALi M5451. +.Sh SEE ALSO +.Xr ac97 4 , +.Xr audio 4 , +.Xr midi 4 , +.Xr pci 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.6 . diff --git a/static/netbsd/man4/auvia.4 b/static/netbsd/man4/auvia.4 new file mode 100644 index 00000000..2b7a27e2 --- /dev/null +++ b/static/netbsd/man4/auvia.4 @@ -0,0 +1,53 @@ +.\" $NetBSD: auvia.4,v 1.8 2009/10/22 23:10:22 tsarna Exp $ +.\" +.\" Copyright (c) 2000 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Tyler C. Sarna +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 22, 2005 +.Dt AUVIA 4 +.Os +.Sh NAME +.Nm auvia +.Nd VIA VT82C686A/VT8233/VT8235/VT8237 integrated AC'97 audio device driver +.Sh SYNOPSIS +.Cd "auvia* at pci? dev ? function ?" +.Cd "audio* at audiobus?" +.Sh DESCRIPTION +The +.Nm +device driver supports the integrated AC'97 audio controller +of the VIA Technologies VT82C686A/VT8233/VT8235/VT8237 Southbridge +chip found on some motherboards. +.Sh SEE ALSO +.Xr ac97 4 , +.Xr audio 4 , +.Xr pci 4 +.Sh HISTORY +The +.Nm +driver was originally written by Tyler C. Sarna for +.Nx 1.5 . diff --git a/static/netbsd/man4/auvitek.4 b/static/netbsd/man4/auvitek.4 new file mode 100644 index 00000000..71af862c --- /dev/null +++ b/static/netbsd/man4/auvitek.4 @@ -0,0 +1,102 @@ +.\" $NetBSD: auvitek.4,v 1.6 2011/08/30 07:23:05 jruoho Exp $ +.\" +.\" Copyright (c) 2010, 2011 Jared D. McNeill +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Neither the name of the author nor the names of any +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 30, 2011 +.Dt AUVITEK 4 +.Os +.Sh NAME +.Nm auvitek +.Nd Auvitek AU0828 video capture device driver +.Sh SYNOPSIS +.Cd "auvitek* at uhub?" +.Cd "dtv* at dtvbus?" +.Cd "video* at videobus?" +.Cd "uaudio* at auvitek?" +.Cd "audio* at uaudio?" +.Sh DESCRIPTION +The +.Nm +driver provides support for +.Tn USB +video capture devices based on the Auvitek AU0828 bridge. +This hybrid analog/digital device requires a hi-speed USB host controller +(such as +.Xr ehci 4 ) +to function properly. +.Pp +For +.Nm +devices with analog audio capture interfaces, the +.Xr uaudio 4 +device driver provides access to the audio stream. +Application software can find a +.Xr video 4 +device's +.Xr audio 4 +device by comparing the +.Dv VIDIOC_QUERYCAP +.Va bus_info +field with the audio device's +.Dv AUDIO_GETDEV +.Va config +field. +.Pp +The following cards are supported by the +.Nm +driver: +.Pp +.Bl -column -offset indent \ +"Hauppauge WinTV-HVR-950Q " \ +" " \ +" " +.It Sy "Device" Ta Sy "Decoder" Ta Sy "Tuner" +.It "Hauppauge WinTV-HVR-850" Ta Xr au8522 4 Ta Xr xc5k 4 +.It "Hauppauge WinTV-HVR-950Q" Ta Xr au8522 4 Ta Xr xc5k 4 +.El +.Pp +Cards with an XC5000 tuner require the firmware provided by the +.Pa pkgsrc/sysutils/xc5k-firmware +package to function properly. +.Sh SEE ALSO +.Xr audio 4 , +.Xr dtv 4 , +.Xr dtviic 4 , +.Xr ehci 4 , +.Xr uaudio 4 , +.Xr video 4 +.Pp +.Pa pkgsrc/sysutils/xc5k-firmware +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 6.0 . +.Sh AUTHORS +The +.Nm +driver was written by +.An Jared D. McNeill +.Aq jmcneill@NetBSD.org . diff --git a/static/netbsd/man4/awi.4 b/static/netbsd/man4/awi.4 new file mode 100644 index 00000000..faf4f674 --- /dev/null +++ b/static/netbsd/man4/awi.4 @@ -0,0 +1,186 @@ +.\" $NetBSD: awi.4,v 1.28 2010/01/15 19:24:49 joerg Exp $ +.\" +.\" Copyright (c) 1999,2000,2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Bill Sommerfeld +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.Dd January 2, 2006 +.Dt AWI 4 +.Os +.Sh NAME +.Nm awi +.Nd +AMD PCnetMobile IEEE 802.11 PCMCIA wireless network driver +.Sh SYNOPSIS +.Cd "awi* at pcmcia? function ?" +.Sh DESCRIPTION +The +.Nm +driver supports various IEEE 802.11 wireless cards +that run AMD PCnetMobile firmware based on the AMD 79c930 controller +with the Intersil (formerly Harris) PRISM radio chipset. +It provides access to 32kb of memory shared between the controller +and the host. +All host/device interaction is accomplished via this shared memory, which +can be accessed either via PCMCIA or I/O memory spaces. +The +.Nm +driver encapsulates all IP and ARP traffic in 802.11 frames. +.Pp +The driver works both in infrastructure mode and in ad-hoc (independent +BSS) mode. +.Pp +In infrastructure mode, it communicates with an Access Point, +which serves as a link-layer bridge between an Ethernet segment and +the wireless network. +An access point also provides roaming capability, +which allows a wireless node to move between access points. +.Pp +In ad-hoc mode, the device communicates peer to peer. +Although it is more efficient to communicate between wireless nodes, +the coverage is limited spatially due to the lack of roaming capability. +.Pp +In addition to these two modes in the IEEE 802.11 specification, the +.Nm +driver also supports a variant of ad-hoc mode outside of the spec for +DS radio cards. +This makes it possible to communicate with the WaveLAN ad-hoc mode of +.Xr wi 4 +driver. +The NWID has no effect in this mode. +.Pp +Another mode added to the +.Nm +driver can be used with old Melco access points with 2Mbps cards. +This mode actually uses the IEEE 802.11 ad-hoc mode with encapsulation of +raw Ethernet packets (including headers) in 802.11 frames. +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 +and +.Xr ifmedia 4 . +.Sh HARDWARE +Cards supported by the +.Nm +driver include: +.Pp +.Bl -tag -width BayStack_650x -offset indent -compact +.It BayStack 650 +1Mbps Frequency Hopping PCCARD adapter +.It BayStack 660 +2Mbps Direct Sequence PCCARD adapter +.It Icom SL-200 +2Mbps Direct Sequence PCCARD adapter +.It Melco WLI-PCM +2Mbps Direct Sequence PCCARD adapter +.It NEL SSMagic +2Mbps Direct Sequence PCCARD adapter +.It Netwave AirSurfer Plus +1Mbps Frequency Hopping PCCARD adapter +.It Netwave AirSurfer Pro +2Mbps Direct Sequence PCCARD adapter +.It Nokia C020 WLAN +2Mbps Direct Sequence PCCARD adapter +.It Farallon SkyLINE +2Mbps Direct Sequence PCCARD adapter +.It Zoom Air Model 4000 +.El +.Pp +The original Xircom Netwave AirSurfer is supported by the +.Xr cnw 4 +driver, and the PRISM-II cards are supported by the +.Xr wi 4 +driver. +.Sh MEDIA SELECTION +In addition to default +.Em Auto +media type, +the DS cards support +.Em DS1 +and +.Em DS2 +media types, while the FH cards support the +.Em FH1 +media type. +For each media type, the +.Em adhoc +mediaopt can be used to indicate to the driver to operate in ad-hoc mode. +The +.Em flag0 +mediaopt +should be used only with old access points, which operate in IBSS mode. +For DS radio cards, the +.Em adhoc,flag0 +mediaopt can be used for +.Xr wi 4 +compatible WaveLAN ad-hoc mode. +.Sh DIAGNOSTICS +.Bl -diag +.It "awi0: no suitable CIS info found" +The device cannot be mapped due to a resource conflict. +Or, the device failed to initialize its firmware. +.It "awi0: failed to complete selftest (%s)" +The device failed to complete its self test. +In some circumstances, resetting device after power on fails. +Re-inserting the card or setting the interface up and then down again +(using +.Xr ifconfig 8 ) +may also be helpful. +.It "awi0: transmit timeout" +The device failed to generate an interrupt to acknowledge a +transmitted packet. +.It "awi0: failed to lock interrupt" +The system was unable to obtain the lock to access shared memory. +.It "awi0: command %d failed %x" +The device failed to complete the request from the system. +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr cnw 4 , +.Xr ifmedia 4 , +.Xr netintro 4 , +.Xr pcmcia 4 , +.Xr wi 4 , +.Xr ifconfig 8 , +.Xr wiconfig 8 +.Rs +.%T Am79C930 PCnet Mobile Single-Chip Wireless LAN Media Access Controller +.%U http://www.amd.com +.Re +.Sh HISTORY +The +.Nm +device driver first appeared in +.Nx 1.5 . +.Sh AUTHORS +The initial version of the +.Nm +driver was written by +.An Bill Sommerfeld +.Aq sommerfeld@NetBSD.org . +It was then completely rewritten to support cards with the DS phy and +ad-hoc mode by +.An Atsushi Onoe +.Aq onoe@NetBSD.org . diff --git a/static/netbsd/man4/axe.4 b/static/netbsd/man4/axe.4 new file mode 100644 index 00000000..4ff417a8 --- /dev/null +++ b/static/netbsd/man4/axe.4 @@ -0,0 +1,205 @@ +.\" $NetBSD: axe.4,v 1.17 2019/08/30 09:22:17 wiz Exp $ +.\" +.\" Copyright (c) 2003-2004 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Lennart Augustsson. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" Copyright (c) 1997, 1998, 1999, 2000-2003 +.\" Bill Paul . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by Bill Paul. +.\" 4. Neither the name of the author nor the names of any co-contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" $FreeBSD: /repoman/r/ncvs/src/share/man/man4/axe.4,v 1.3 2003/05/29 21:28:35 ru Exp $ +.\" $OpenBSD: axe.4,v 1.37 2009/11/08 20:25:29 jasper Exp $ +.\" +.Dd August 24, 2019 +.Dt AXE 4 +.Os +.Sh NAME +.Nm axe +.Nd ASIX Electronics AX88172/AX88178/AX88772 10/100/Gigabit USB Ethernet device +.Sh SYNOPSIS +.Cd "axe* at uhub?" +.Cd "ukphy* at mii?" +.Sh HARDWARE +The +.Nm +driver supports the following adapters: +.Pp +.Bl -tag -width Dv -offset indent -compact +.It Apple USB Ethernet Adapter A1277 +.It ATEN UC-210T +.It BAFO BF-320 +.It Billionton Systems USB2AR +.It Buffalo(MELCO) LUA-U2-GT +.It Buffalo(MELCO) LUA-U2-KTX +.It Buffalo(MELCO) LUA3-U2-ATX +.It Corega FEther USB2-TX +.It D-Link DUB-E100 +.It Good Way GWUSB2E +.It Hawking UF200 +.It Intellinet USB 2.0 to Ethernet (rev A) +.It IO-Data ETG-US2 +.It JVC MP-PRX1 +.It Konig CMP-NWUSB20 +.It Level One USB-0200 +.It Linksys USB200M +.It Linksys USB1000 +.It Logitec LAN-GTJ/U2 +.It Logitec LAN-TXU2C +.It Logitec LAN-TXU2H3A +.It Netgear FA120 +.It Nintendo Wii USB Lan Ethernet Adapter RVL-015 +.It OQO model 01+ Ethernet +.It Planex UE-200TX-G +.It Sitecom LN-029 +.It SMC 2209USB/ETH +.It SnapPort USB 2.0 LAN Adapter +.It ST Lab USB 2.0 Fast Ethernet +.It Surecom EP-1427X-2 +.It System TALKS SGC-X2UL +.It TRENDnet TU2-ET100 +.It Z-TEK ZK-R01-2 +.El +.Sh DESCRIPTION +The +.Nm +driver provides support for USB +.Tn Ethernet +adapters based on the ASIX Electronics AX88172, AX88178, AX88772, AX88772A, +AX88772B USB 2.0 chipsets. +.Pp +The chip contains a 10/100 +.Tn Ethernet +MAC with MII interface and is designed to work with both +.Tn Ethernet +and HomePNA transceivers. +The AX88172 and AX88772 contain 10/100 Ethernet MACs with MII interfaces. +The AX88178 contains a 10/100/1000 Gigabit +.Tn Ethernet +MAC with a GMII/MII interface. +The chip also supports USB 2.0, thereby accommodating 100 Mb/s data rates. +.Pp +The +.Nm +driver supports the following media types: +.Bl -tag -width xxxxxxxxxxxxxxxxxxxx +.It autoselect +Enable automatic selection of the media type and options. +.It 10baseT/UTP +Set 10Mbps operation. +The +.Ar mediaopt +option can also be used to enable +.Ar full-duplex +operation. +Not specifying +.Ar full duplex +implies +.Ar half-duplex +mode. +.It 100baseTX +Set 100Mbps (fast +.Tn Ethernet ) +operation. +The +.Ar mediaopt +option can also be used to enable +.Ar full-duplex +operation. +Not specifying +.Ar full duplex +implies +.Ar half-duplex +mode. +.It 1000baseT +Set 1000Mbps (Gigabit +.Tn Ethernet ) +operation (AX88178 only). +.El +.Pp +The +.Nm +driver supports the following media options: +.Bl -tag -width xxxxxxxxxxxxxxxxxxxx +.It full-duplex +Force full duplex operation. +The interface will operate in half duplex mode +if this media option is not specified. +.El +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh DIAGNOSTICS +See +.Xr usbnet 4 +for diagnostics. +.Sh SEE ALSO +.Xr arp 4 , +.Xr ifmedia 4 , +.Xr netintro 4 , +.Xr usb 4 , +.Xr usbnet 4 , +.Xr ifconfig 8 +.Rs +.%T ASIX AX88172 data sheet +.%U http://www.asix.com.tw +.Re +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx +and was ported to +.Nx 3.0 . +It replaces the +.Nx +uax driver. diff --git a/static/netbsd/man4/axen.4 b/static/netbsd/man4/axen.4 new file mode 100644 index 00000000..960c0647 --- /dev/null +++ b/static/netbsd/man4/axen.4 @@ -0,0 +1,95 @@ +.\" $NetBSD: axen.4,v 1.9 2019/08/30 09:22:17 wiz Exp $ +.\" $OpenBSD: axen.4,v 1.2 2013/10/07 07:18:36 jmc Exp $ +.\" +.\" Copyright (c) 2013 Yojiro UO +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd August 24, 2019 +.Dt AXEN 4 +.Os +.Sh NAME +.Nm axen +.Nd ASIX Electronics AX88178a/AX88179 10/100/Gigabit USB Ethernet device +.Sh SYNOPSIS +.Cd "axen* at uhub? port ?" +.Cd "rgephy* at mii?" +.Sh DESCRIPTION +The +.Nm +driver provides support for USB Ethernet adapters based on the ASIX +Electronics AX88178a USB 2.0 and AX88179 USB 3.0 chipsets +including the following: +.Pp +.Bl -tag -width Ds -offset indent -compact +.It Buffalo LUA4-U3-AGT +.It D-Link DUB-1312 +.It Kurotoshiko GbE-USB3.0 +.It Kurotoshiko GbE-USB3.0S2 +.It Logitec LAN-GTJU3 +.It Logitec LAN-GTJU3H3 +.It Shanghai Donya DN-84327 +.El +.Pp +The +.Nm +driver supports the following media types: +.Bl -tag -width "autoselect" +.It autoselect +Enable autoselection of the media type and options (this is the default). +The user can manually override the autoselected mode by adding media +options to the appropriate +.Xr ifconfig.if 5 +file. +.It 10baseT +Set 10Mbps operation. +.It 100baseTX +Set 100Mbps (Fast Ethernet) operation. +.It 1000baseT +Set 1000Mbps (Gigabit Ethernet) operation. +.El +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh DIAGNOSTICS +See +.Xr usbnet 4 +for diagnostics. +.Sh SEE ALSO +.Xr arp 4 , +.Xr mii 4 , +.Xr netintro 4 , +.Xr rgephy 4 , +.Xr usb 4 , +.Xr usbnet 4 , +.Xr ifconfig.if 5 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Ox 5.4 +and in +.Nx 7.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Yojiro UO Aq Mt yuo@nui.org +for +.Ox +and ported to +.Nx +by +.An NONAKA Kimihiro Aq Mt nonaka@NetBSD.org . diff --git a/static/netbsd/man4/az.4 b/static/netbsd/man4/az.4 new file mode 100644 index 00000000..687f78c6 --- /dev/null +++ b/static/netbsd/man4/az.4 @@ -0,0 +1,76 @@ +.\" $NetBSD: az.4,v 1.7 2018/08/31 19:36:28 sevan Exp $ +.\" $RuOBSD: az.4,v 1.3 2001/10/26 05:38:43 form Exp $ +.\" $OpenBSD: az.4,v 1.1 2001/12/05 10:58:54 mickey Exp $ +.\" +.\" Copyright (c) 2001 Vladimir Popov +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 31, 2018 +.Dt AZ 4 +.Os +.Sh NAME +.Nm az +.Nd Aztech/PackardBell radio card device driver +.Sh SYNOPSIS +.Cd "az0 at isa? port 0x350" +.Cd "az1 at isa? port 0x358" +.Cd "radio* at az?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the Aztech/PackardBell radio cards. +.Pp +The Aztech/PackardBell cards are stereo FM tuners that allow tuning +in the 87.5-108.0 MHz range. +They are capable of reporting signal status (tuned/not tuned, stereo/mono +signal) and forcing audio output to mono. +.Pp +The Aztech cards use only one I/O port. +The I/O port is set by the driver to the value specified in the configuration +file. +The I/O port must be one of +0x350 and 0x358. +.Sh SEE ALSO +.Xr isa 4 , +.Xr radio 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Ox 3.0 +and +.Nx 1.6 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An "Vladimir Popov" +and +.An "Maxim Tsyplakov" . +The man page was written by +.An "Vladimir Popov" . +.Sh BUGS +It is impossible to determine to which frequency the card is tuned. +Thus, the driver will report an internally stored value even if it is not +correct (changed by some program that uses direct port access). diff --git a/static/netbsd/man4/battery_pmu.4 b/static/netbsd/man4/battery_pmu.4 new file mode 100644 index 00000000..44badf16 --- /dev/null +++ b/static/netbsd/man4/battery_pmu.4 @@ -0,0 +1,53 @@ +.\" $NetBSD: battery_pmu.4,v 1.5 2009/05/18 14:41:41 wiz Exp $ +.\" +.\" Copyright (c) 2007 +.\" Michael Lorenz. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd May 18, 2009 +.Dt BATTERY_PMU 4 +.Os +.Sh NAME +.Nm battery_pmu +.Nd support for batteries and sensors in PCI-based Apple Powerbooks +.Sh SYNOPSIS +.Cd "battery* at pmu?" +.Sh DESCRIPTION +The +.Nm +driver provides support for batteries and hardware sensors found +in first generation PCI-based PowerBooks (i.e. Apple Powerbook +2400, 3400 and 3500 (also known as Original PowerBook G3). +Currently it only exports a few sensors via the +.Xr envsys 4 +interface, including battery charge, voltage, CPU and battery +temperature and AC power availability. +.Sh SEE ALSO +.Xr envsys 4 , +.Xr pmu 4 , +.Xr envstat 8 +.Sh BUGS +There is no APM emulation right now and the battery current sensor +may return misleading or wrong data. +This driver is considered preliminary and may be replaced at some +point. diff --git a/static/netbsd/man4/bba.4 b/static/netbsd/man4/bba.4 new file mode 100644 index 00000000..753888f8 --- /dev/null +++ b/static/netbsd/man4/bba.4 @@ -0,0 +1,55 @@ +.\" $NetBSD: bba.4,v 1.7 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2000 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 22, 2005 +.Dt BBA 4 +.Os +.Sh NAME +.Nm bba +.Nd IOASIC Baseboard Audio device driver +.Sh SYNOPSIS +.Cd "bba0 at ioasic? offset ?" +.Cd "audio* at audiobus?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the IOASIC baseboard audio found on +DEC 3000/300, 3000/500 +.Ns ( Nx Ns /alpha ) +and DEC Personal DECstation +.Ns ( Nx Ns /pmax ) +systems. The baseboard +audio driver is based on the AMD 79c30 ISDN and audio interface. The +interface is only capable of playing and recording 8kHz mu-law audio. +.Sh SEE ALSO +.Xr audio 4 , +.Xr ioasic 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.5 . +The name for the driver was adopted from the same driver in ULTRIX. diff --git a/static/netbsd/man4/bce.4 b/static/netbsd/man4/bce.4 new file mode 100644 index 00000000..634d8253 --- /dev/null +++ b/static/netbsd/man4/bce.4 @@ -0,0 +1,61 @@ +.\" $NetBSD: bce.4,v 1.6 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2003 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Thomas Klausner. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 29, 2006 +.Dt BCE 4 +.Os +.Sh NAME +.Nm bce +.Nd Broadcom BCM4401 Ethernet device driver +.Sh SYNOPSIS +.Cd "bce* at pci? dev ? function ?" +.Sh DESCRIPTION +The +.Nm +provides support for the Broadcom BCM4401 10/100 Ethernet card. +Other cards from the 440x series may also be supported. +.Sh SEE ALSO +.Xr bge 4 , +.Xr mii 4 , +.Xr ukphy 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Nx 1.6.2 . +.Sh AUTHORS +.An Cliff Wright +.Aq cliff@snipe444.org +.Sh BUGS +There is no VLAN support. +.Pp +There is no flow control support. +.Pp +Multicast is not using the packet filter and is in +the accept all multicast mode. diff --git a/static/netbsd/man4/bcsp.4 b/static/netbsd/man4/bcsp.4 new file mode 100644 index 00000000..5bce00d7 --- /dev/null +++ b/static/netbsd/man4/bcsp.4 @@ -0,0 +1,69 @@ +.\" $NetBSD: bcsp.4,v 1.7 2014/03/18 18:20:39 riastradh Exp $ +.\" +.\" Copyright (c) 2007 KIYOHARA Takashi +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, +.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 23, 2009 +.Dt BCSP 4 +.Os +.Sh NAME +.Nm bcsp +.Nd BlueCore Serial Protocol driver +.Sh SYNOPSIS +.Cd pseudo-device bcsp +.Sh DESCRIPTION +The +.Nm +driver provides a +.Xr tty 4 +line discipline to send and receive BlueCore Serial Protocol packets over +a serial line, as described in the +.Qq BlueCore Serial Protocol Pq BCSP +specification. +.Pp +Moreover, the +.Nm +supports BCSP Link Establishment Protocol, as described in the +.Qq BCSP Link Establishment Protocol +specification. +.Pp +The +.Xr btattach 8 +program is used to configure the tty line and create the +.Nm +driver instance. +.Sh SEE ALSO +.Xr bluetooth 4 , +.Xr btuart 4 , +.Xr btattach 8 +.Sh HISTORY +The +.Nm +device appeared in +.Nx 5.0 . +.Sh AUTHORS +.An KIYOHARA Takashi Aq Mt kiyohara@kk.iij4u.or.jp +.Sh BUGS +.Nm +does not support configuration for baud rate yet. diff --git a/static/netbsd/man4/be.4 b/static/netbsd/man4/be.4 new file mode 100644 index 00000000..7057ab11 --- /dev/null +++ b/static/netbsd/man4/be.4 @@ -0,0 +1,83 @@ +.\" $NetBSD: be.4,v 1.1 2004/03/31 07:20:48 mrg Exp $ +.\" +.\" Copyright (c) 1998 Jason L. Wright (jason@thought.net) +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, +.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" from: OpenBSD: be.4,v 1.13 2003/06/02 18:51:34 jason Exp +.\" +.Dd March 31, 2004 +.Dt BE 4 +.Os +.Sh NAME +.Nm be +.Nd SPARC Fast Ethernet interface +.Sh SYNOPSIS +.Cd "qec* at sbus? slot ? offset ?" +.Cd "be* at qec?" +.Sh DESCRIPTION +The +.Nm +interface provides access to the 10Mb/s and 100Mb/s (half duplex only) +Ethernet networks. +The +.Nm +is found on the Sun 10/100 Mbit Ethernet boards +(Sun part number SUNW,501-2450). +.Pp +Each of the host's network addresses +is specified at boot time with an +.Dv SIOCSIFADDR +.Xr ioctl 2 . +The +.Nm +interface employs the address resolution protocol described in +.Xr arp 4 +to dynamically map between Internet and Ethernet addresses on the local +network. +.Pp +The +.Nm +is not capable of link autonegotiation, so a media type must be specified +with +.Xr ifconfig 8 . +The supported media types are: +.Bl -tag -width xxxxxxxxxx -offset indent +.It media 100baseTX +Use 100Mbps, half duplex +.It media 10baseT +Use 10Mbps, half duplex +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr ifmedia 4 , +.Xr inet 4 , +.Xr intro 4 , +.Xr netintro 4 , +.Xr sbus 4 , +.Xr ifconfig 8 +.Sh HISTORY +Support for the +.Nm +first appeared in +.Nx 1.4 . diff --git a/static/netbsd/man4/bge.4 b/static/netbsd/man4/bge.4 new file mode 100644 index 00000000..9ffb4e04 --- /dev/null +++ b/static/netbsd/man4/bge.4 @@ -0,0 +1,254 @@ +.\" $NetBSD: bge.4,v 1.18 2024/06/06 21:26:12 andvar Exp $ +.\" +.\" Copyright (c) 2003 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Matthias Scheler . +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 15, 2019 +.Dt BGE 4 +.Os +.Sh NAME +.Nm bge +.Nd Broadcom BCM57xx/BCM590x 10/100/Gigabit Ethernet driver +.Sh SYNOPSIS +.Cd "bge* at pci? dev ? function ?" +.Pp +Configuration of PHYs may also be necessary. +See +.Xr mii 4 . +.Sh DESCRIPTION +The +.Nm +driver provides support for various NICs based on the Broadcom BCM570x, +571x, 572x, 575x, 576x, 578x, 5776x and 5778x Gigabit Ethernet controller +chips and the 590x and 5779x Fast Ethernet controller chips, +including the following: +.Pp +.Bl -bullet -compact +.It +3Com 3c996-T (10/100/1000baseT) +.It +3Com 3c996-SX (1000baseSX) +.It +3Com 3c996B-T (10/100/1000baseT) +.It +Allied-Telesis AT-2972LX10/LC +.It +Apple Thunderbolt to Gigabit Ethernet adapter A1433 (10/100/1000baseT) +.It +Dell PowerEdge 1750 integrated BCM5704C NIC (10/100/1000baseT) +.It +Dell PowerEdge 2550 integrated BCM5700 NIC (10/100/1000baseT) +.It +Dell PowerEdge 2650 integrated BCM5703 NIC (10/100/1000baseT) +.It +Fujitsu PRIMEPOWER 250/450 LAN (10/100/1000baseT) +.It +Fujitsu PW0G8GE1U (1000baseSX) +.It +Fujitsu PW0G8GE2U (10/100/1000baseT) +.It +Fujitsu PW008GE4 (1000baseSX) +.It +Fujitsu PW008GE5 (10/100/1000baseT) +.It +Fujitsu PW008QG1U (10/100/1000baseT) +.It +HP ProLiant NC320T PCI-E Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC320m PCI-E Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC331T PCI-E Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC332T PCI-E Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC370F PCI-X Gigabit NIC (1000baseSX) +.It +HP ProLiant NC370T PCI-X Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC1020 PCI Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC6770 PCI-X Gigabit NIC (1000baseSX) +.It +HP ProLiant NC7760 embedded PCI Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC7770 PCI-X Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC7771 PCI-X Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC7780 embedded PCI-X Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC7781 embedded PCI-X Gigabit NIC (10/100/1000baseT) +.It +HP ProLiant NC7782 embedded PCI-X Gigabit NIC (10/100/1000baseT) +.It +IBM ThinkPad T43/T43p integrated BCM5751M NIC (10/100/1000baseT) +.It +IBM xSeries 235 integrated BCM5703X NIC (10/100/1000baseT) +.It +IBM xSeries 305 integrated BCM5703X NIC (10/100/1000baseT) +.It +Netgear GA302T (10/100/1000baseT) +.It +SysKonnect SK-9D21 (10/100/1000baseT) +.It +SysKonnect SK-9D41 (1000baseSX) +.El +.Pp +The +.Nm +driver supports IPv4 IP, TCP, and UDP checksum offload for receive, +IP checksum offload for transmit, VLAN tag insertion and stripping, +as well as a 256-bit multicast hash filter. +The BCM5717, BCM5718, BCM5723, BCM5754, BCM5755, BCM5761, BCM5762, BCM5764, +BCM5784, BCM5785, BCM5787 and BCM577xx chips also support IPv6 receive TCP/UDP +checksum offload. +The +.Nm +driver supports this feature of the chip. +See +.Xr ifconfig 8 +for information on how to enable this feature. +.Pp +The BCM5700, BCM5701, BCM5702, BCM5703, BCM5704, BCM5714, BCM5717, BCM5719, +BCM5720, BCM5762, BCM5780, BCM57765 and BCM57766 also support jumbo frames, +which can be configured via the interface MTU setting. +Selecting an MTU larger than 1500 bytes with the +.Xr ifconfig 8 +utility configures the adapter to receive and transmit Jumbo frames. +.Pp +The level of interrupt mitigation for received packets can be adjusted +with the +.Li hw.bge.rx_lvl +.Xr sysctl 8 +control. +A value of 1 yields a +.Nm +interrupt for every two full-sized Ethernet frames. +Each increment of the value will, roughly, halve receive interrupt rate, +up to a maximum of 5, which interrupts about every 30 to 40 full-sized +TCP segments. +.Pp +The +.Nm +driver supports the following media types: +.Bl -tag -width 1000baseSX +.It Cm autoselect +Enable autoselection of the media type and options. +The user can manually override +the autoselected mode by adding media options to the appropriate +.Xr ifconfig.if 5 +file. +.It Cm 10baseT +Set 10Mbps operation. +The +.Xr ifconfig 8 +.Ic mediaopt +option can also be used to select either +.Cm full-duplex +or +.Cm half-duplex +modes. +.It Cm 100baseTX +Set 100Mbps (Fast Ethernet) operation. +The +.Xr ifconfig 8 +.Ic mediaopt +option can also be used to select either +.Cm full-duplex +or +.Cm half-duplex +modes. +.It Cm 1000baseT +Set 1000baseT operation over twisted pair. +Both +.Cm full-duplex +and +.Cm half-duplex +modes are supported. +.It Cm 1000baseSX +Set 1000Mbps (Gigabit Ethernet) operation. +Both +.Cm full-duplex +and +.Cm half-duplex +modes are supported. +.El +.Pp +The +.Nm +driver supports the following media options: +.Bl -tag -width full-duplex +.It Cm full-duplex +Force full duplex operation. +.It Cm half-duplex +Force half duplex operation. +.El +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh DIAGNOSTICS +.Bl -diag +.It "bge%d: can't find mem space" +A fatal initialization error has occurred. +.It "bge%d: couldn't map interrupt" +A fatal initialization error has occurred. +.It "bge%d: watchdog timeout -- resetting" +The device has stopped responding to the network, or there is a problem with +the network connection (cable). +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr brgphy 4 , +.Xr ifmedia 4 , +.Xr mii 4 , +.Xr netintro 4 , +.Xr pci 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 1.6.1 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Bill Paul +.Aq wpaul@windriver.com +for +.Fx +and ported to +.Nx +by +.An Frank van der Linden +.Aq fvdl@wasabisystems.com , +.An Jason R. Thorpe +.Aq thorpej@wasabisystems.com +and +.An Jonathan Stone +.Aq jonathan@dsg.stanford.edu . diff --git a/static/netbsd/man4/bha.4 b/static/netbsd/man4/bha.4 new file mode 100644 index 00000000..cbbee27e --- /dev/null +++ b/static/netbsd/man4/bha.4 @@ -0,0 +1,75 @@ +.\" $NetBSD: bha.4,v 1.13 2002/03/06 14:43:03 wiz Exp $ +.\" +.\" Copyright (c) 1994 James A. Jegers +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 29, 1994 +.Dt BHA 4 +.Os +.Sh NAME +.Nm bha , +.Nm bt +.Nd Buslogic SCSI adapter driver +.Sh SYNOPSIS +.Cd "bha0 at isa? port 0x330 irq ? drq ?" +.Cd "bha* at eisa? slot ?" +.Cd "bha* at pci? dev ? function ?" +.Cd "scsibus* at bha?" +.Sh DESCRIPTION +The +.Nm bha +driver supports the following +.Tn Buslogic +.Tn SCSI +adapters: +.Pp +.Bl -tag -width indent -offset indent -compact +.It Tn Buslogic ISA BT-445 +.It Tn Buslogic EISA BT-74x +.It Tn Buslogic PCI BT-9[45][68] +.El +.Sh SEE ALSO +.Xr cd 4 , +.Xr ch 4 , +.Xr intro 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr st 4 +.Sh HISTORY +In +.Nx 1.2 +and earlier, this driver was named +.Nm bt +but was renamed to +.Nm bha +in later releases. +.Sh BUGS +The +.Tn Buslogic +BT-930 is not supported in this driver. +.Pp +The +.Tn Buslogic +BT-445S has a problem in early hardware and firmware revisions +which prevents proper operation on a system with more than 16MB of RAM. +Hardware revision D and firmware revision 3.37 should be considered minimum +requirements for using this board on systems configured in this manner. diff --git a/static/netbsd/man4/bio.4 b/static/netbsd/man4/bio.4 new file mode 100644 index 00000000..94b04563 --- /dev/null +++ b/static/netbsd/man4/bio.4 @@ -0,0 +1,235 @@ +.\" $NetBSD: bio.4,v 1.18 2019/05/09 07:12:38 cnst Exp $ +.\" $OpenBSD: bio.4,v 1.19 2006/09/20 22:22:37 jmc Exp $ +.\" +.\" Copyright (c) 2002 Niklas Hallqvist +.\" Copyright (c) 2006 Marco Peereboom +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, +.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 9, 2019 +.Dt BIO 4 +.Os +.Sh NAME +.Nm bio +.Nd Block IO ioctl tunnel pseudo-device +.Sh SYNOPSIS +.Cd "pseudo-device bio" +.Pp +.In dev/biovar.h +.Sh DESCRIPTION +The +.Nm +driver provides userland applications +.Xr ioctl 2 +access to devices otherwise not found as +.Pa /dev +nodes. +The +.Pa /dev/bio +device node operates by delegating ioctl +calls to a requested device driver. +Only drivers which have registered with the +.Nm +device can be accessed via this interface. +.Pp +The following device drivers register with +.Nm +for volume management: +.Pp +.Bl -tag -width ataraid(4)XX -offset indent -compact +.\" .It Xr ami 4 +.\" American Megatrends Inc. MegaRAID PATA/SATA/SCSI RAID controller +.It Xr arcmsr 4 +Areca Technology Corporation SATA RAID controller +.It Xr ataraid 4 +Software BIOS RAID +.It Xr cac 4 +Compaq RAID array controller +.It Xr ciss 4 +Compaq Smart ARRAY 5/6 SAS/SATA/SCSI RAID controller +.It Xr mfi 4 +LSI Logic & Dell MegaRAID SAS RAID controller +.It Xr mfii 4 +LSI Logic MegaRAID SAS Fusion RAID controller +.It Xr mpii 4 +LSI Logic Fusion-MPT Message Passing Interface II +.It Xr mpt 4 +LSI Fusion-MPT RAID controller +.El +.Pp +The following ioctl calls apply to the +.Nm bio +device: +.Bl -tag -width BIOCCAPABILITIES +.It Dv BIOCLOCATE +Locate a named device and give back a cookie to the application +for subsequent ioctl calls. +The cookie is used to tunnel further ioctls to the right device. +.It Dv BIOCINQ +Retrieve number of volumes and physical disks for a specific device. +.It Dv BIOCDISK +Retrieve detailed information for the specified physical disk. +Information returned can include status, size, channel, target, lun, +vendor name, serial number, and processor device (ses). +.\" or safte +.It Dv BIOCDISK_NOVOL +Is just the same as +.Dv BIOCDISK +but doesn't require the disks to be in volume sets, so this +applies to any physical disk connected to the controller. +.Pp +Note: this ioctl might not be supported on all hardware. +It is a +.Nx +extension of +.Nm . +It is supported by +.Xr arcmsr 4 , +.Xr ciss 4 , +and +.Xr mpt 4 . +It is also supported by +.Xr cac 4 , +but handled exactly the same as +.Dv BIOCDISK . +.It Dv BIOCVOL +Retrieve detailed information for the specified volume. +Information returned can include status, size, RAID level, number of disks, +device name association (sd?) and vendor name. +.It Dv BIOCALARM +Control the alarm beeper on the device. +Supported states are: disable alarm, enable alarm, silence alarm, status and +test alarm. +.Pp +Note: These options might not be supported on all hardware. +It is supported by +.Xr arcmsr 4 , +.Xr mfi 4 , +and +.Xr mfii 4 . +.It Dv BIOCBLINK +Blink an LED of the specified physical disk. +Supported blink states are: blink LED, unblink LED and blink alarm LED. +.Pp +Note: This option is only supported if the disk is governed by +.Xr ses 4 +.\" or +.\" .Xr safte 4 +and the hardware supports hardware blinking. +It is supported by +.Xr ciss 4 , +.Xr mfi 4 , +and +.Xr mfii 4 . +.It Dv BIOCSETSTATE +Alter the state of specified physical disk. +Supported states are: create/remove hot-spare, create/remove pass through +disk, start/stop consistency check in a volume, online disk and offline disk, +and a manual rebuild kick-off designation. +.Pp +Note: These options might not be supported on all hardware. +Some of these options are supported by +.Xr arcmsr 4 , +.Xr mfi 4 , +and +.Xr mfii 4 . +.Pp +Online, offline and hotspare designations are supported by +.Xr mfi 4 +and +.Xr mfii 4 , +plus a rebuild designation is supported by +.Xr mfii 4 ; +all four of these state options are the original states from +.Ox , +the other options, including hotspare unmarking, being +.Nx +extensions of +.Nm . +.Pp +Hotspare, pass through and consistency check options are supported by +.Xr arcmsr 4 . +.It Dv BIOCVOLOPS +For operations in volume sets. +It's able to create and remove a volume +set in a supported RAID controller. +.Pp +Note: this ioctl might not be supported on all hardware. +It is a +.Nx +extension of +.Nm , +and is supported by +.Xr arcmsr 4 . +.El +.Pp +The +.Xr bioctl 8 +utility can be used to perform the above controls from the userland. +Additionally, since +.Dv BIOCVOL +volume status is normally duplicated into +.Xr sysmon_envsys 9 +sensors of +.Dv ENVSYS_DRIVE +type, it is also available through +.Xr envsys 4 , +and can be monitored with +.Xr envstat 8 +and +.Xr powerd 8 . +.Sh FILES +.Bl -tag -width Ds -compact +.It Pa /dev/bio +ioctl tunnel device +.It Pa /etc/powerd/scripts/sensor_drive +powerd script for drive sensors +.El +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr envsys 4 , +.Xr bioctl 8 , +.Xr envstat 8 , +.Xr powerd 8 , +.Xr sysmon_envsys 9 +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 3.2 +and +.Nx 4.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Niklas Hallqvist Aq Mt niklas@openbsd.org . +The API was written by +.An Marco Peereboom Aq Mt marco@openbsd.org +and was extended even more for +.Nx +by +.An Juan Romero Pardines Aq Mt xtraeme@netbsd.org . diff --git a/static/netbsd/man4/bktr.4 b/static/netbsd/man4/bktr.4 new file mode 100644 index 00000000..40eac3c4 --- /dev/null +++ b/static/netbsd/man4/bktr.4 @@ -0,0 +1,499 @@ +.\" $NetBSD: bktr.4,v 1.19 2018/08/31 19:36:28 sevan Exp $ +.\" +.\" Copyright (c) 2000, 2001, 2002, 2003, 2004, 2005 Thomas Klausner +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. The name of the author may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 30, 2011 +.Dt BKTR 4 +.Os +.Sh NAME +.Nm bktr +.Nd Brooktree 848 compatible TV card driver +.Sh SYNOPSIS +.Cd "bktr* at pci? dev ? function ?" +.Cd radio* at bktr? +.Pp +.In dev/ic/bt8xx.h +.Pp +.Cd options BKTR_OVERRIDE_CARD=n +.Cd options BKTR_OVERRIDE_TUNER=n +.Cd options BKTR_OVERRIDE_DBX=n +.Cd options BKTR_OVERRIDE_MSP=n +.Cd options BKTR_SYSTEM_DEFAULT=n +.Cd options BKTR_USE_PLL +.Cd options BKTR_GPIO_ACCESS +.Cd options BKTR_NO_MSP_RESET +.\" The following options have no effect: +.\" .Cd options BKTR_430_FX_MODE +.\" .Cd options BKTR_SIS_VIA_MODE +.Sh DESCRIPTION +This driver supports video capture (frame grabber) and TV tuner cards +based on the +.Tn Brooktree +.Tn Bt848 , +.Tn Bt848A , +.Tn Bt849A , +.Tn Bt878 , +and +.Tn Bt879 +chips. +.Pp +Note that +.Nm +is not part of the +.Xr dtv 4 +framework. +.Pp +Supported cards include most cards by +.Tn AVerMedia , +.Tn Hauppauge , +.Tn Leadtek , +.Tn Miro , +.Tn Pinnacle , +.Tn Pixelview , +.Tn Terratec , +and some other companies, especially all cards based on the +.Tn Brooktree +.Tn Bt848 , +.Tn Bt848A , +.Tn Bt849A , +.Tn Bt878 , +or +.Tn Bt879 +chips. +A notable exception are the +.Tn ATI +.Tn All-in-Wonder +cards. +.Pp +The following kernel configuration options are available: +.Bl -ohang +.It Cd options BKTR_OVERRIDE_CARD=n +If the card is not recognized correctly by the auto-detection routine, +it can be overridden by setting this option to the appropriate +value. +The following values are allowed: +.Bl -tag -width 2n -compact +.It 1 +Pinnacle Systems (Miro) TV, +.It 2 +Hauppauge WinCast/TV, +.It 3 +STB TV/PCI, +.It 4 +Intel Smart Video III and Videologic Captivator PCI, +.It 5 +IMS TV Turbo, +.It 6 +AVerMedia TV/FM, +.It 7 +MMAC Osprey, +.It 8 +NEC PK-UG-X017, +.It 9 +I/O DATA GV-BCTV2/PCI, +.It 10 +Animation Technologies FlyVideo, +.It 11 +Zoltrix TV, +.It 12 +KISS TV/FM PCI, +.It 13 +Video Highway Xtreme, +.It 14 +Askey/Dynalink Magic TView, +.It 15 +Leadtek WinFast TV 2000/VC100, +.It 16 +TerraTec TerraTV+, +and +.It 17 +TerraTec TValue. +.El +.It Cd options BKTR_OVERRIDE_TUNER=n +If the TV tuner is not recognized correctly by the auto-detection +routine, it can be overridden by setting this option to the +appropriate value. +Known values are: +.Bl -tag -width 2n -compact +.It 1 +Temic NTSC, +.It 2 +Temic PAL, +.It 3 +Temic SECAM, +.It 4 +Philips NTSC, +.It 5 +Philips PAL, +.It 6 +Philips SECAM, +.It 7 +Temic PAL I, +.It 8 +Philips PAL I, +.It 9 +Philips FR1236 NTSC FM, +.It 10 +Philips FR1216 PAL FM, +.It 11 +Philips FR1236 SECAM FM, +.It 12 +ALPS TSCH5 NTSC FM, +and +.It 13 +ALPS TSBH1 NTSC. +.El +.It Cd options BKTR_OVERRIDE_DBX=n +To override detection of the BTSC (dbx) chip, set this to +.Em 1 +if you have one, or +.Em 0 +if not. +.It Cd options BKTR_OVERRIDE_MSP=n +To override detection of the MSP 34xx chip, set this to +.Em 1 +if you have one, or +.Em 0 +if not. +.It Cd options BKTR_SYSTEM_DEFAULT=n +If this option is set to +.Em BROOKTREE_PAL +default to PAL, else to NTSC. +.It Cd options BKTR_USE_PLL +Default to PLL instead of XTAL. +.It Cd options BKTR_GPIO_ACCESS +Use +.Fn ioctl Ns s +for direct GPIO access. +.It Cd options BKTR_NO_MSP_RESET +Skip the MSP reset. +This option is handy if you initialize the MSP audio in another +operating system first and then do a soft reboot. +.\" The following options have no effect: +.\" .It Cd options BKTR_430_FX_MODE +.\" .It Cd options BKTR_SIS_VIA_MODE +.El +.Sh VIDEO CAPTURE INTERFACE +The video capture interface to +.Nm +is accessed through the +.Pa /dev/bktrN +devices. +The following +.Xr ioctl 2 +commands are supported on the Brooktree848 video capture interface: +.Bl -tag -width Ds +.It Dv METEORSFMT Fa "unsigned long *" +This command sets the video format, also sometimes referred to as the +video norm. +The supported formats are: +.Pp +.Bl -tag -compact -width 28n +.It Dv METEOR_FMT_NTSC +NTSC +.It Dv METEOR_FMT_PAL +PAL +.It Dv METEOR_FMT_SECAM +SECAM +.It Dv METEOR_FMT_AUTOMODE +hardware default +.El +.It Dv METEORGFMT Fa "unsigned long *" +This command retrieves the current video format to the +.Vt unsigned long * +argument. +.It Dv METEORSETGEO Fa "struct meteor_geomet *" +This command sets the video properties that affect the bit size of +a frame through the +.Vt meteor_geomet * +argument. +.Bd -literal +struct meteor_geomet { + u_short rows; /* height in pixels*/ + u_short columns; /* width in pixels */ + u_short frames; + u_long oformat; +} +.Ed +.Pp +The +.Va frames +field is the number of frames to buffer. +Currently only 1 frame is supported for most operations. +.Pp +The +.Va oformat +field is a bit-field describing the output pixel format +type and which video fields to capture. +The following are supported pixel format types: + .Pp +.Bl -tag -compact -width 28n +.It Dv METEOR_GEO_RGB16 +16-bit RGB +.It Dv METEOR_GEO_RGB24 +24-bit RGB in 32 bits +.It Dv METEOR_GEO_YUV_PACKED +16-bit 4:2:2 YUV +.It Dv METEOR_GEO_YUV_PLANAR +16-bit 4:2:2 YUV +.It Dv METEOR_GEO_YUV_UNSIGNED +unsigned UV +.It Dv METEOR_GEO_YUV_422 +.It Dv METEOR_GEO_YUV_12 +.It Dv METEOR_GEO_YUV_9 +.El +.Pp +The following are supported field capture modes: +.Pp +.Bl -tag -compact -width 28n +.It Dv METEOR_GEO_ODD_ONLY +only odd fields +.It Dv METEOR_GEO_EVEN_ONLY +only even fields +.El +.Pp +By default, frames will consist of both the odd and even fields. +.It Dv METEORGSUPPIXFMT Fa "struct meteor_pixfmt *" +This command is used interactively to fetch descriptions of supported +output pixel formats into the +.Vt meteor_pixfmt * +argument. +.Bd -literal +struct meteor_pixfmt { + u_int index; + METEOR_PIXTYPE type; + u_int Bpp; /* bytes per pixel */ + u_long masks[3]; /* YUV bit masks */ + unsigned swap_bytes :1; + unsigned swap_shorts:1; +}; +.Ed +.Pp +To query all the supported formats, start with an index field of 0 and +continue with successive encodings (1, 2, ...) until the command returns +an error. +.It Dv METEORSACTPIXFMT Fa "int *" +This command sets the active pixel format. +The +.Vt int * +argument is the index of the pixel format as returned by +.Dv METEORGSUPPIXFMT . +.It Dv METEORGACTPIXFMT Fa "int *" +This command fetches the active pixel format index into the +.Vt int * +argument. +.It Dv METEORSINPUT Fa "unsigned long *" +This command sets the input port of the Brooktree848 device. +The following are supported input ports: +.Pp +.Bl -tag -compact -width 28n +.It Dv METEOR_INPUT_DEV0 +composite (RCA) +.It Dv METEOR_INPUT_DEV1 +tuner +.It Dv METEOR_INPUT_DEV2 +composite S-video +.It Dv METEOR_INPUT_DEV3 +mystery device +.It Dv METEOR_INPUT_DEV_RGB +rgb meteor +.It Dv METEOR_INPUT_DEV_SVIDEO +S-Video +.El +.Pp +Not all devices built with Brooktree848 chips support the +full list of input ports. +.It Dv METEORGINPUT Fa "unsigned long *" +This command retrieves the current input port to the +.Vt unsigned long * +argument. +.It Dv METEORSFPS Fa "unsigned short *" +This command sets the number of frames to grab each second. +Valid frame rates are integers from 0 to 30. +.It Dv METEORGFPS Fa "unsigned short *" +This command fetches the number of frames to grab each second into the +.Vt unsigned short * +argument. +.It Dv METEORCAPTUR Fa "int *" +This command controls capturing of video data. +The following are valid arguments: +.Pp +.Bl -tag -compact -width 28n +.It Dv METEOR_CAP_SINGLE +capture one frame +.It Dv METEOR_CAP_CONTINOUS +continuously capture +.It Dv METEOR_CAP_STOP_CONT +stop continuous capture +.El +.It Dv METEORSSIGNAL Fa "unsigned int *" +This command controls the signal emission properties of +.Nm . +If the +.Vt unsigned int * +argument is a valid signal, then that signal will be emitted +when either a frame or field capture has completed. +To select between frame or field signalling, the following arguments +are used: +.Pp +.Bl -tag -compact -width 28n +.It Dv METEOR_SIG_FRAME +signal every frame +.It Dv METEOR_SIG_FIELD +signal every field +.El +.Pp +By default, signals will be generated for every frame. +Generation of signals is terminated with the +.Dv METEOR_SIG_MODE_MASK +argument. +.El +.Sh TUNER INTERFACE +Most cards supported by this driver feature a hardware television tuner +on the I2C bus. +The tuner interface to +.Nm +is accessed through the +.Pa /dev/tunerN +devices. +The following +.Xr ioctl 2 +commands are supported on the tuner interface: +.Bl -tag -width Ds +.It Dv TVTUNER_SETTYPE Fa "unsigned int *" +This command sets the tuner's TV channel set, also sometimes called the TV +channel band. +This setting is used to calculate the proper tuning frequencies. +The desired channel set must be selected before attempting to set the tuner +channel or frequency. +The following is a list of valid channel sets: +.Pp +.Bl -tag -compact -width 28n +.It Dv CHNLSET_NABCST +North America broadcast +.It Dv CHNLSET_CABLEIRC +North America IRC cable +.It Dv CHNLSET_CABLEHRC +North America HRC cable +.It Dv CHNLSET_WEUROPE +Western Europe +.It Dv CHNLSET_JPNBCST +Japan broadcast +.It Dv CHNLSET_JPNCABLE +Japan cable +.It Dv CHNLSET_XUSSR +Russia +.It Dv CHNLSET_AUSTRALIA +Australia +.It Dv CHNLSET_FRANCE +France +.El +.It Dv TVTUNER_GETTYPE Fa "unsigned int *" +This command fetches the tuner's current channel set to the +.Vt unsigned int * +argument. +.It Dv TVTUNER_SETCHNL Fa "unsigned int *" +This command sets the tuner's frequency to a specified channel in the +current channel set. +.It Dv TVTUNER_GETCHNL Fa "unsigned int *" +This command fetches the last selected channel. +Note that it is not necessarily the current channel. +In particular, changing the tuner's frequency by a command other than +.Dv TVTUNER_SETCHNL +will not update this setting, and it defaults to 0 on driver +initialization. +.It Dv TVTUNER_SETFREQ Fa "unsigned int *" +This command sets the tuner's frequency to 1/16th the value of the +.Vt unsigned int * +argument, in MHz. +Note that the current channelset is used to determine frequency +offsets when this command is executed. +.It Dv TVTUNER_GETFREQ Fa "unsigned int *" +This command fetches the tuner's current frequency to the +.Vt unsigned int * +argument. +Note that this value is 16 times the actual tuner frequency, in MHz. +.It Dv BT848_SAUDIO Fa "int *" +This command controls the audio input port and mute state. +The following is a list of valid arguments: +.Pp +.Bl -tag -compact -width 18n +.It Dv AUDIO_TUNER +tuner audio port +.It Dv AUDIO_EXTERN +external audio port +.It Dv AUDIO_INTERN +internal audio port +.It Dv AUDIO_MUTE +mute audio +.It Dv AUDIO_UNMUTE +unmute audio +.El +.It Dv BT848_GAUDIO Fa "int *" +This command fetches the audio input and mute state bits to the +.Vt int * +argument. +.El +.Sh FILES +.Bl -tag -width /dev/tuner* -compact +.It Pa /dev/bktr* +.Nm +driver interface device +.It Pa /dev/tuner* +.Nm +tuner interface device +.It Pa /dev/vbi* +teletext interface device +.El +.Sh SEE ALSO +.Xr options 4 , +.Xr pci 4 , +.Xr radio 4 , +.Pa pkgsrc/audio/xmradio , +.Pa pkgsrc/multimedia/ffmpeg , +.Pa pkgsrc/multimedia/fxtv +.Sh HISTORY +The +.Nm +driver appeared in +.Fx 2.2 +and +.Nx 1.5 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was originally written by +.An "Amancio Hasty" +for +.Fx +and is now maintained by +.An "Roger Hardiman" . +.Nx +porting was done by +.An "Bernd Ernesti" , +.An "Berndt Josef Wulf" , +.An "Matthias Scheler" , +and +.An "Thomas Klausner" . diff --git a/static/netbsd/man4/bluetooth.4 b/static/netbsd/man4/bluetooth.4 new file mode 100644 index 00000000..70886d42 --- /dev/null +++ b/static/netbsd/man4/bluetooth.4 @@ -0,0 +1,428 @@ +.\" $NetBSD: bluetooth.4,v 1.22 2018/02/11 14:15:14 wiz Exp $ +.\" +.\" Copyright (c) 2006 Itronix Inc. +.\" All rights reserved. +.\" +.\" Written by Iain Hibbert for Itronix Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of Itronix Inc. may not be used to endorse +.\" or promote products derived from this software without specific +.\" prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY ITRONIX INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ITRONIX INC. BE LIABLE FOR ANY +.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +.\" ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" +.Dd November 20, 2010 +.Dt BLUETOOTH 4 +.Os +.Sh NAME +.Nm bluetooth +.Nd Bluetooth Protocol Family +.Sh SYNOPSIS +.In netbt/bluetooth.h +.In netbt/hci.h +.In netbt/l2cap.h +.In netbt/rfcomm.h +.Sh DESCRIPTION +The Bluetooth Protocol Family +.Sh ADDRESSING +Bluetooth Protocol Family sockets all use a +.Ar sockaddr_bt +structure which contains a Bluetooth Device Address (BDADDR). +This consists of a six byte string in least significant byte +first order. +.Bd -literal -offset indent +struct sockaddr_bt { + uint8_t bt_len; + sa_family_t bt_family; + bdaddr_t bt_bdaddr; + uint16_t bt_psm; + uint8_t bt_channel; +}; +.Ed +.Pp +The local address used by the socket can be set with +.Xr bind 2 . +.Sh PROTOCOLS +Protocols included are: +.Bl -tag -width XX +.It Cm BTPROTO_HCI +This gives raw access to the Host Controller Interface of local devices +using the HCI protocol as described in the Bluetooth Core Specification. +Any user may open an HCI socket but there are limitations on what +unprivileged users can send and receive. +The local address specified by +.Xr bind 2 +may be used to select the device that the socket will receive packets from. +If +.Dv BDADDR_ANY +is specified then the socket will receive packets from all +devices on the system. +.Xr connect 2 +may be used to create connections such that packets sent with +.Xr send 2 +will be delivered to the specified device, otherwise +.Xr sendto 2 +should be used. +.Pp +The +.Ar bt_psm +and +.Ar bt_channel +fields in the sockaddr_bt structure are ignored by HCI protocol code +and should be set to zero. +.Pp +HCI socket options: +.Bl -tag -width XX +.It Dv SO_HCI_EVT_FILTER Op Ar struct hci_filter +This filter controls which events will be received at the socket. +See +.In netbt/hci.h +for available events. +By default, Command_Complete and Command_Status +events only are enabled. +.It Dv SO_HCI_PKT_FILTER Op Ar struct hci_filter +This filter controls the type of packets that will be received at the +socket. +By default, Event packets only are enabled. +.It Dv SO_HCI_DIRECTION Op Ar int +When set, this enables control messages on packets received at the socket +indicating the direction of travel of the packet. +.El +.Pp +HCI +.Xr sysctl 8 +controls: +.Bl -tag -width XXX +.It Dv net.bluetooth.hci.sendspace +Default send buffer size for HCI sockets. +.It Dv net.bluetooth.hci.recvspace +Default receive buffer size for HCI sockets +.It Dv net.bluetooth.hci.acl_expiry +If set, this is the time in seconds after which unused ACL data connections +will be expired. +If zero, connections will not be closed. +.It Dv net.bluetooth.hci.memo_expiry +Time, in seconds, that the system will keep records of Bluetooth devices +in the vicinity after an Inquiry Response packet has been received. +This information is used for routing purposes. +.It Dv net.bluetooth.hci.eventq_max +The maximum number of packets on the low level Event queue. +.It Dv net.bluetooth.hci.aclrxq_max +The maximum number of packets on the low level ACL queue. +.It Dv net.bluetooth.hci.scorxq_max +The maximum number of packets on the low level SCO queue. +.El +.It Cm BTPROTO_L2CAP +L2CAP sockets give sequential packet access over channels to other Bluetooth +devices and make use of the +.Ar bt_psm +field in the +.Ar sockaddr_bt +structure to select the Protocol/Service Multiplexer to specify when making +connections. +If the special value of +.Dv L2CAP_PSM_ANY +is bound when the +.Xr listen 2 +call is made, the next available PSM from the dynamic range above 0x1001 +will be selected and may be discovered using the +.Xr getsockname 2 +call. +.Pp +L2CAP socket options: +.Bl -tag -width XXX +.It Dv SO_L2CAP_IMTU Op Ar uint16_t +Incoming MTU +.It Dv SO_L2CAP_OMTU Op Ar uint16_t +Outgoing MTU (read-only) +.It Dv SO_L2CAP_LM Op Ar int +Link Mode. +The following bits may be set: +.Pp +.Bl -tag -compact -width ".Dv L2CAP_LM_ENCRYPT" +.It Dv L2CAP_LM_AUTH +Request authentication +.Pq pairing . +.It Dv L2CAP_LM_ENCRYPT +Request encryption +.Pq includes auth . +.It Dv L2CAP_LM_SECURE +Request secured link +.Pq encryption, plus change link key . +.El +.Pp +Link mode settings will be applied to the baseband link during L2CAP +connection establishment. +If the L2CAP connection is already established, +.Dv EINPROGRESS +may be returned, and it is not possible to guarantee that data already queued +.Pq from either end +will not be delivered. +If the mode change fails, the L2CAP connection will be aborted. +.El +.Pp +L2CAP +.Xr sysctl 8 +controls: +.Bl -tag -width XXX +.It Dv net.bluetooth.l2cap.sendspace +Default send buffer size for L2CAP sockets. +.It Dv net.bluetooth.l2cap.recvspace +Default receive buffer size for L2CAP sockets. +.It Dv net.bluetooth.l2cap.rtx +Response Timeout eXpiry for L2CAP signals. +.It Dv net.bluetooth.l2cap.ertx +Extended Response Timeout eXpiry for L2CAP signals. +.El +.It Cm BTPROTO_RFCOMM +RFCOMM sockets provide streamed data over Bluetooth connection and make use of the +.Ar bt_psm , +and +.Ar bt_channel +fields in the +.Ar sockaddr_bt +structure. +The channel number must be between 1 and 30 inclusive except that if the +special value +.Dv RFCOMM_CHANNEL_ANY +is bound, when the +.Xr listen 2 +call is made, the first unused channel for the relevant bdaddr will be +allocated and may be discovered using the +.Xr getsockname 2 +call. +If no PSM is specified, a default value of +.Dv L2CAP_PSM_RFCOMM +(0x0003) will be used. +.Pp +RFCOMM socket options: +.Bl -tag -width XXX +.It Dv SO_RFCOMM_MTU Op Ar uint16_t +Maximum Frame Size to use for this link. +.It Dv SO_RFCOMM_LM Op Ar int +Link Mode. +The following bits may be set at any time: +.Pp +.Bl -tag -compact -width ".Dv RFCOMM_LM_ENCRYPT" +.It Dv RFCOMM_LM_AUTH +Request authentication +.Pq pairing . +.It Dv RFCOMM_LM_ENCRYPT +Request encryption +.Pq includes auth . +.It Dv RFCOMM_LM_SECURE +Request secured link +.Pq encryption, plus change link key . +.El +.Pp +Link mode settings will be applied to the baseband link during RFCOMM +connection establishment. +If the RFCOMM connection is already established, +.Dv EINPROGRESS +may be returned, and it is not possible to guarantee that data already queued +.Pq from either end +will not be delivered. +If the mode change fails, the RFCOMM connection will be aborted. +.El +.Pp +RFCOMM +.Xr sysctl 8 +controls: +.Bl -tag -width XXX +.It Dv net.bluetooth.rfcomm.sendspace +Default send buffer size for RFCOMM sockets. +.It Dv net.bluetooth.rfcomm.recvspace +Default receive buffer size for RFCOMM sockets. +.It Dv net.bluetooth.rfcomm.default_mtu +Maximum Frame Size (N1) +.It Dv net.bluetooth.ack_timeout +Acknowledgement Timer (T1) +.It Dv net.bluetooth.mcc_timeout +Response Timer for Multiplexer Control Channel (T2) +.El +.It Cm BTPROTO_SCO +SCO sockets provide sequential packet access to time sensitive data +channels over Bluetooth connections, typically used for audio data. +.Pp +SCO socket options: +.Bl -tag -width XXX +.It Dv SO_SCO_MTU Op Ar uint16_t +Maximum packet size for use on this link. +This is read-only and will be set by the protocol code when a connection is made. +Currently, due to limitations in the +.Xr ubt 4 +driver, the SCO protocol code will only accept packets with +exactly this size. +.It Dv SO_SCO_HANDLE Op Ar uint16_t +Connection handle for this link. +This is read-only and provided for informational purposes only. +.El +.Pp +SCO +.Xr sysctl 8 +controls: +.Bl -tag -width XXX +.It Dv net.bluetooth.sco.sendspace +Default send buffer size for SCO sockets. +.It Dv net.bluetooth.sco.recvspace +Default receive buffer size for SCO sockets. +.El +.El +.Sh INFORMATION +The following +.Xr ioctl 2 +calls may be used to manipulate Bluetooth devices. +The +.Xr ioctl 2 +must be made on +.Cm BTPROTO_HCI +sockets. +All of the requests take a +.Ar btreq +structure defined as follows as their parameter and unless otherwise +specified, use the +.Ar btr_name +field to identify the device. +.Bd -literal +struct btreq { + char btr_name[HCI_DEVNAME_SIZE]; /* device name */ + + union { + struct { + bdaddr_t btri_bdaddr; /* device bdaddr */ + uint16_t btri_flags; /* flags */ + uint16_t btri_num_cmd; /* # of free cmd buffers */ + uint16_t btri_num_acl; /* # of free ACL buffers */ + uint16_t btri_num_sco; /* # of free SCO buffers */ + uint16_t btri_acl_mtu; /* ACL mtu */ + uint16_t btri_sco_mtu; /* SCO mtu */ + uint16_t btri_link_policy; /* Link Policy */ + uint16_t btri_packet_type; /* Packet Type */ + uint16_t btri_max_acl; /* max ACL buffers */ + uint16_t btri_max_sco; /* max SCO buffers */ + } btri; + struct { + uint8_t btrf_page0[HCI_FEATURES_SIZE]; /* basic */ + uint8_t btrf_page1[HCI_FEATURES_SIZE]; /* extended page 1 */ + uint8_t btrf_page2[HCI_FEATURES_SIZE]; /* extended page 2 */ + } btrf; + struct bt_stats btrs; /* unit stats */ + } btru; +}; + +#define btr_flags btru.btri.btri_flags +#define btr_bdaddr btru.btri.btri_bdaddr +#define btr_num_cmd btru.btri.btri_num_cmd +#define btr_num_acl btru.btri.btri_num_acl +#define btr_num_sco btru.btri.btri_num_sco +#define btr_acl_mtu btru.btri.btri_acl_mtu +#define btr_sco_mtu btru.btri.btri_sco_mtu +#define btr_link_policy btru.btri.btri_link_policy +#define btr_packet_type btru.btri.btri_packet_type +#define btr_max_acl btru.btri.btri_max_acl +#define btr_max_sco btru.btri.btri_max_sco +#define btr_features0 btru.btrf.btrf_page0 +#define btr_features1 btru.btrf.btrf_page1 +#define btr_features2 btru.btrf.btrf_page2 +#define btr_stats btru.btrs + +/* btr_flags */ +#define BTF_UP (1<<0) /* unit is up */ +#define BTF_RUNNING (1<<1) /* unit is running */ +#define BTF_XMIT_CMD (1<<2) /* transmitting CMD packets */ +#define BTF_XMIT_ACL (1<<3) /* transmitting ACL packets */ +#define BTF_XMIT_SCO (1<<4) /* transmitting SCO packets */ +#define BTF_INIT_BDADDR (1<<5) /* waiting for bdaddr */ +#define BTF_INIT_BUFFER_SIZE (1<<6) /* waiting for buffer size */ +#define BTF_INIT_FEATURES (1<<7) /* waiting for features */ +#define BTF_NOOP_ON_RESET (1<<8) /* wait for No-op on reset */ +#define BTF_INIT_COMMANDS (1<<9) /* waiting for supported commands */ +#define BTF_MASTER (1<<10) /* request Master role */ + +struct bt_stats { + uint32_t err_tx; + uint32_t err_rx; + uint32_t cmd_tx; + uint32_t evt_rx; + uint32_t acl_tx; + uint32_t acl_rx; + uint32_t sco_tx; + uint32_t sco_rx; + uint32_t byte_tx; + uint32_t byte_rx; +}; + +.Ed +.Bl -tag -width SIOCGBTPOLICY +.It Dv SIOCGBTINFO +Get Bluetooth device Info. +Given the device name, fill in the +btreq structure including the address field for use with socket addressing +as above. +.It Dv SIOCGBTINFOA +Get Bluetooth device Info from Address. +Given the device address, fill in the +btreq structure including the name field. +.It Dv SIOCNBTINFO +Next Bluetooth device Info. +If name field is empty, the first device will be returned. +Otherwise, the next device will be returned until no more devices are found +when the call will fail, with error +.Er ENXIO . +Thus, you can cycle through all devices in the system. +.It Dv SIOCSBTFLAGS +Set Bluetooth device Flags. +Not all flags are settable. +.It Dv SIOCGBTFEAT +Get Bluetooth device Features. +This returns the cached basic (page 0) and extended (page 1 & 2) features. +.It Dv SIOCSBTPOLICY +Set Bluetooth device Link Policy. +Link Policy bits are defined in +.In netbt/hci.h , +though you can only set bits that the device supports. +.It Dv SIOCSBTPTYPE +Set Bluetooth device Packet Types. +You can only set packet types that the device supports. +.It Dv SIOCGBTSTATS +Read device statistics. +.It Dv SIOCZBTSTATS +Read device statistics, and zero them. +.El +.Pp +Only the super-user may change device configurations. +.Sh SEE ALSO +.Xr bind 2 , +.Xr getsockname 2 , +.Xr bluetooth 3 , +.Xr bcsp 4 , +.Xr bt3c 4 , +.Xr btbc 4 , +.Xr btuart 4 , +.Xr options 4 , +.Xr ubt 4 +.Sh HISTORY +The Bluetooth Protocol Stack was written for +.Nx 4.0 +by +.An Iain Hibbert +under the sponsorship of Itronix, Inc. diff --git a/static/netbsd/man4/bmtphy.4 b/static/netbsd/man4/bmtphy.4 new file mode 100644 index 00000000..e940df90 --- /dev/null +++ b/static/netbsd/man4/bmtphy.4 @@ -0,0 +1,54 @@ +.\" $NetBSD: bmtphy.4,v 1.4 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 1998, 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jason R. Thorpe of the Numerical Aerospace Simulation Facility, +.\" NASA Ames Research Center. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 17, 2005 +.Dt BMTPHY 4 +.Os +.Sh NAME +.Nm bmtphy +.Nd Driver for Broadcom BCM5201 and BCM5202 +.Dq Mini-Theta +Ethernet PHYs and their derivatives +.Sh SYNOPSIS +.Cd "bmtphy* at mii? phy ?" +.Sh DESCRIPTION +The +.Nm +driver supports the Broadcom BCM5201 and BCM5202 10/100 Ethernet PHYs +and their derivatives such as BCM5214, BCM5221, BCM5222, and BCM4401. +It also supports the internal PHY on the 3Com 3c905C 10/100 Ethernet +interface, and the internal PHY on some 3Com 3c905B 10/100 Ethernet +interfaces. +.Sh SEE ALSO +.Xr ex 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr mii 4 , +.Xr ifconfig 8 diff --git a/static/netbsd/man4/bmx280thp.4 b/static/netbsd/man4/bmx280thp.4 new file mode 100644 index 00000000..5e2ce67f --- /dev/null +++ b/static/netbsd/man4/bmx280thp.4 @@ -0,0 +1,110 @@ +.\" $NetBSD: bmx280thp.4,v 1.5 2022/12/03 01:04:42 brad Exp $ +.\" +.\" Copyright (c) 2022 Brad Spencer +.\" +.\" Permission to use, copy, modify, and distribute this software for any +.\" purpose with or without fee is hereby granted, provided that the above +.\" copyright notice and this permission notice appear in all copies. +.\" +.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +.\" +.Dd November 19, 2022 +.Dt BMX280THP 4 +.Os +.Sh NAME +.Nm bmx280thp +.Nd Driver for Bosch BMP280/BME280 sensor chip via I2C bus +.Sh SYNOPSIS +.Cd "bmx280thp* at iic? addr 0x76" +.Cd "bmx280thp* at iic? addr 0x77" + +.Cd "bmx280thp* at spi? slave 0" +.Cd "bmx280thp* at spi? slave 1" +.Sh DESCRIPTION +The +.Nm +driver provides measurements from the BMP280 and BME280 temperature, +humidity and barometric pressure sensors via the +.Xr envsys 4 +framework. +The +.Nm +.Ar addr +argument selects the address at the +.Xr iic 4 +bus and the +.Nm +.Ar slave +argument selects which chip select will be used on the +.Xr spi 4 +bus. +The precision of the measurement which is related to the over +sampling performed on the measurement can be changed through +.Xr sysctl 8 +nodes. +.Sh SYSCTL VARIABLES +The following +.Xr sysctl 3 +variables are provided: +.Bl -tag -width indent +.It Li hw.bmx280thp0.osrs_t +.It Li hw.bmx280thp0.osrs_p +.It Li hw.bmx280thp0.osrs_h +These control oversampling of temperature, pressure and humidity. +The valid values are 1, 2, 4, 8, and 16 times oversample. +Humidity is only available if the chip is a BME280. +.It Li hw.bmx280thp0.irr_samples +IRR is a filter that can be used to reduce the noise in the +measurement. +The value values are 1 (or off), 2, 5, 11 and 22 samples +to reach >= 75% of the step response. +.It Li hw.bmx280thp0.waitfactor.t +.It Li hw.bmx280thp0.waitfactor.p +.It Li hw.bmx280thp0.waitfactor.h +These control the wait multiplication factor for a measurement cycle. +This factor is different for temperature, pressure and humidity and +is based upon the values of osrs_t, osrs_p and osrs_h. +If the chip does not return the correct measurements for a given +over sampling then the wait factors can be adjusted to allow more +time for the measurement to complete successfully. +.It Li hw.bmx280thp0.debug +.It Li hw.bmx280thp0.dump_calibration +If the driver is compiled with +.Dv BMX280_DEBUG , +these nodes will appear and can be used to set the debugging level and +provide the calibration constants, upon refresh, that are stored in the +chip. +Since the constants are fixed, this is a boolean node and will +reset back to false once one dump has been performed. +.It Li hw.bmx280thp0.readattempts +A status register tells the driver if the chip is busy with a measurement. +This status register must be polled and readattempts is the number of times +that this poll will be performed. +The default is 25 which should be more than enough for most purposes. +.El +.Sh SEE ALSO +.Xr envsys 4 , +.Xr iic 4 , +.Xr spi 4 , +.Xr envstat 8 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 10.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Brad Spencer Aq Mt brad@anduin.eldar.org . +.Sh BUGS +The driver does not support the continuous read mode that the BMP280 +and BME280 has. diff --git a/static/netbsd/man4/bnx.4 b/static/netbsd/man4/bnx.4 new file mode 100644 index 00000000..c29b93cd --- /dev/null +++ b/static/netbsd/man4/bnx.4 @@ -0,0 +1,195 @@ +.\" $NetBSD: bnx.4,v 1.4 2019/03/27 04:40:02 msaitoh Exp $ +.\" $OpenBSD: bnx.4,v 1.13 2006/12/15 16:12:52 reyk Exp $ +.\" +.\" Copyright (c) 2006 Broadcom Corporation +.\" David Christensen . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of Broadcom Corporation nor the name of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written consent. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS' +.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" +.\" $FreeBSD: /repoman/r/ncvs/src/share/man/man4/bce.4,v 1.2 2006/04/10 20:12:17 brueffer Exp $ +.\" +.Dd March 27, 2019 +.Dt BNX 4 +.Os +.Sh NAME +.Nm bnx +.Nd Broadcom NetXtreme II 10/100/1000 Ethernet device +.Sh SYNOPSIS +.Cd "bnx* at pci?" +.Cd "brgphy* at mii?" +.Sh DESCRIPTION +The +.Nm +driver supports Broadcom's NetXtreme II product family, such as the +BCM5706 PCI-X and BCM5708-BCM5709-BCM5716 PCIe Ethernet controllers, +which includes the following: +.Pp +.Bl -bullet -compact +.It +Dell PowerEdge 1950 integrated BCM5708 NIC (10/100/1000baseT) +.It +Dell PowerEdge 2950 integrated BCM5708 NIC (10/100/1000baseT) +.It +Dell PowerEdge M710 integrated BCM5709S NIC (1000baseSX) +.It +Dell PowerEdge R710 integrated BCM5709 NIC +.It +HP NC370F PCI-X Multifunction Gigabit server adapter (1000baseSX) +.It +HP NC370T PCI-X Multifunction Gigabit server adapter (10/100/1000baseT) +.It +HP NC370i Multifunction Gigabit Server Adapter +.It +HP NC371i Multifunction Gigabit Server Adapter +.It +HP NC373F PCIe Multifunction Gigabit server adapter (1000baseSX) +.It +HP NC373T PCIe Multifunction Gigabit server adapter (10/100/1000baseT) +.It +HP NC373i PCIe Multifunction Gigabit embedded server adapter (10/100/1000baseT) +.It +HP NC373m Multifunction Gigabit Server Adapter +.It +HP NC374m PCIe Multifunction Gigabit embedded server adapter (10/100/1000baseT) +.It +HP NC380T PCIe Dual Port Multifunction Gigabit server adapter (10/100/1000baseT) +.It +HP NC382T PCIe Dual Port server adapter (10/100/1000baseT) +.It +HP NC382i DP Multifunction Gigabit Server Adapter +.It +HP NC382m DP 1GbE Multifunction BL-c Adapter +.It +IBM xSeries 3550 integrated BCM5708 NIC (10/100/1000baseT) +.It +IBM xSeries 3650 integrated BCM5708 NIC (10/100/1000baseT) +.El +.Pp +The NetXtreme II product family is composed of various Converged NIC (or CNIC) +Ethernet controllers which support a TCP Offload Engine (TOE), +Remote DMA (RDMA), and iSCSI acceleration, +in addition to standard L2 Ethernet traffic, +all on the same controller. +The following features are supported in the +.Nm +driver under +.Nx : +.Bd -literal -offset indent +IPv4 receive IP/TCP/UDP checksum offload +Jumbo frames (up to 9022 bytes) +VLAN tag insertion +Interrupt coalescing +10/100/1000Mbps operation in full-duplex mode +10/100Mbps operation in half-duplex mode +.Ed +.Pp +The +.Nm +driver supports the following media types: +.Bl -tag -width ".Cm 10baseT/UTP" +.It Cm autoselect +Enable autoselection of the media type and options. +The user can manually override +the autoselected mode via +.Xr ifconfig 8 . +.It Cm 10baseT/UTP +Set 10Mbps operation. +The +.Xr ifconfig 8 +.Ic mediaopt +option can also be used to select either +.Cm full-duplex +or +.Cm half-duplex +modes. +.It Cm 100baseTX +Set 100Mbps (Fast Ethernet) operation. +The +.Xr ifconfig 8 +.Ic mediaopt +option can also be used to select either +.Cm full-duplex +or +.Cm half-duplex +modes. +.It Cm 1000baseTX +Set 1000baseTX operation over twisted pair. +Only +.Cm full-duplex +mode is supported. +.It Cm 1000baseSX +Set 1000Mbps (Gigabit Ethernet) operation. +Both +.Cm full-duplex +and +.Cm half-duplex +modes are supported. +.It Cm 2500baseSX +Set 2500Mbps operation. +Only +.Cm full-duplex +mode is supported. +.El +.Pp +The +.Nm +driver supports the following media options: +.Bl -tag -width ".Cm full-duplex" +.It Cm full-duplex +Force full duplex operation. +.It Cm half-duplex +Force half duplex operation. +.El +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh SEE ALSO +.Xr arp 4 , +.Xr brgphy 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr mii 4 , +.Xr netintro 4 , +.Xr pci 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +driver was written by +.An David Christensen Aq Mt davidch@broadcom.com +in +.Fx , +where it is called +.Nm bce . +And it's ported to +.Ox +by +.An Brad Smith Aq Mt brad@openbsd.org . +It's ported to +.Nx +by Quentin Garnier. +The +.Nm +device driver first appeared in +.Nx 4.0 . diff --git a/static/netbsd/man4/boca.4 b/static/netbsd/man4/boca.4 new file mode 100644 index 00000000..5d0bc5fa --- /dev/null +++ b/static/netbsd/man4/boca.4 @@ -0,0 +1,130 @@ +.\" $NetBSD: boca.4,v 1.5 2003/08/07 10:31:01 agc Exp $ +.\" +.\" Copyright (c) 1990, 1991 The Regents of the University of California. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to Berkeley by +.\" the Systems Programming Group of the University of Utah Computer +.\" Science Department. +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" from: @(#)dca.4 5.2 (Berkeley) 3/27/91 +.\" from: Id: com.4,v 1.1 1993/08/06 11:19:07 cgd Exp +.\" +.Dd January 3, 1995 +.Dt BOCA 4 +.Os +.Sh NAME +.Nm boca +.Nd +multiplexing serial communications interface +.Sh SYNOPSIS +For 4-port BB1004 boards: +.Pp +.Cd "boca0 at isa? port 0x100 irq 5" +.Cd "com2 at boca? slave ?" +.Cd "com3 at boca? slave ?" +.Cd "com4 at boca? slave ?" +.Cd "com5 at boca? slave ?" +.Pp +For 8-port BB1008 boards: +.Pp +.Cd "boca0 at isa? port 0x100 irq 5" +.Cd "com2 at boca? slave ?" +.Cd "com3 at boca? slave ?" +.Cd "com4 at boca? slave ?" +.Cd "com5 at boca? slave ?" +.Cd "com6 at boca? slave ?" +.Cd "com7 at boca? slave ?" +.Cd "com8 at boca? slave ?" +.Cd "com9 at boca? slave ?" +.Pp +For 16-port BB2016 boards: +.Pp +.Cd "boca0 at isa? port 0x100 irq 5" +.Cd "com2 at boca? slave ?" +.Cd "com3 at boca? slave ?" +.Cd "com4 at boca? slave ?" +.Cd "com5 at boca? slave ?" +.Cd "com6 at boca? slave ?" +.Cd "com7 at boca? slave ?" +.Cd "com8 at boca? slave ?" +.Cd "com9 at boca? slave ?" +.Cd "boca1 at isa? port 0x140 irq 5" +.Cd "com10 at boca? slave ?" +.Cd "com11 at boca? slave ?" +.Cd "com12 at boca? slave ?" +.Cd "com13 at boca? slave ?" +.Cd "com14 at boca? slave ?" +.Cd "com15 at boca? slave ?" +.Cd "com16 at boca? slave ?" +.Cd "com17 at boca? slave ?" +.Pp +(The BB2016 is functionally equivalent to two BB1008 boards, +and is configured as such.) +.Sh DESCRIPTION +The +.Nm boca +driver provides support for BOCA Research BB1004, BB1008 and BB2016 +boards that multiplex together up to four, eight or sixteen +.Tn EIA +.Tn RS-232C +.Pf ( Tn CCITT +.Tn V.28 ) +communications interfaces. +.Pp +Each +.Nm +device is the master device for up to eight +.Nm com +devices. The kernel configuration specifies these +.Nm com +devices as slave devices of the +.Nm +device, as shown in the synopsis. The slave ID given for each +.Nm com +device determines which bit in the interrupt multiplexing register is +tested to find interrupts for that device. +The +.Tn port +specification for the +.Nm +device is used to compute the base addresses for the +.Nm com +subdevices and the port for the interrupt multiplexing register. +.Sh FILES +.Bl -tag -width Pa +.It Pa /dev/tty?? +.El +.Sh SEE ALSO +.Xr com 4 +.Sh HISTORY +The +.Nm +driver was written by Charles Hannum, based on the +.Nm ast +driver and source code from David Muir Sharnoff. David wishes to +acknowledge the assistance of Jason Venner in determining how to use +the BOCA boards. diff --git a/static/netbsd/man4/bochsfb.4 b/static/netbsd/man4/bochsfb.4 new file mode 100644 index 00000000..bc8e6bd8 --- /dev/null +++ b/static/netbsd/man4/bochsfb.4 @@ -0,0 +1,80 @@ +.\" $NetBSD: bochsfb.4,v 1.2 2026/02/06 02:08:15 uwe Exp $ +.\" +.\" Copyright (c) 2025 +.\" The NetBSD Foundation, Inc. All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jiaxun Yang. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd March 2, 2025 +.Dt BOCHSFB 4 +.Os +.Sh NAME +.Nm bochsfb +.Nd Bochs Display Interface framebuffer +.Sh SYNOPSIS +.Cd "bochsfb* at pci?" +.Cd "wsdisplay* at bochsfb?" +.Ss Options +.Cd options BOCHSFB_DEFAULT_WIDTH= Ns Ar integer +.Cd options BOCHSFB_DEFAULT_HEIGHT= Ns Ar integer +.Sh DESCRIPTION +The +.Nm +driver provides support for graphics devices implementing the Bochs VBE +DISPI interface, including the Bochs reference VGA implementation, and the +QEMU StdVGA device. +It programs the linear framebuffer through the DISPI registers and makes it +available through +.Xr wsdisplay 4 +as a console or +.Xr wsfb 4 +compatible framebuffer. +.Pp +When a memory-mapped DISPI bar with an EDID block is present, +.Nm +uses the preferred mode reported by the display. +Devices without EDID support +.Pq such as virtio-vga +fall back to a 1024x768 +32-bit mode. +If no MMIO bar is available, the driver accesses the DISPI registers via the +legacy VGA I/O ports. +.Sh SEE ALSO +.Xr intro 4 , +.Xr pci 4 , +.Xr vga 4 , +.Xr wscons 4 , +.Xr wsdisplay 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 12.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Jiaxun Yang Aq Mt jiaxun.yang@flygoat.com . diff --git a/static/netbsd/man4/bpf.4 b/static/netbsd/man4/bpf.4 new file mode 100644 index 00000000..3a629849 --- /dev/null +++ b/static/netbsd/man4/bpf.4 @@ -0,0 +1,890 @@ +.\" -*- nroff -*- +.\" +.\" $NetBSD: bpf.4,v 1.73 2023/02/11 18:03:25 uwe Exp $ +.\" +.\" Copyright (c) 1990, 1991, 1992, 1993, 1994 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that: (1) source code distributions +.\" retain the above copyright notice and this paragraph in its entirety, (2) +.\" distributions including binary code include the above copyright notice and +.\" this paragraph in its entirety in the documentation or other materials +.\" provided with the distribution, and (3) all advertising materials mentioning +.\" features or use of this software display the following acknowledgement: +.\" ``This product includes software developed by the University of California, +.\" Lawrence Berkeley Laboratory and its contributors.'' Neither the name of +.\" the University nor the names of its contributors may be used to endorse +.\" or promote products derived from this software without specific prior +.\" written permission. +.\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED +.\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF +.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +.\" +.\" This document is derived in part from the enet man page (enet.4) +.\" distributed with 4.3BSD Unix. +.\" +.Dd November 30, 2022 +.Dt BPF 4 +.Os +.Sh NAME +.Nm bpf +.Nd Berkeley Packet Filter raw network interface +.Sh SYNOPSIS +.Cd "pseudo-device bpfilter" +.Sh DESCRIPTION +The Berkeley Packet Filter +provides a raw interface to data link layers in a protocol +independent fashion. +All packets on the network, even those destined for other hosts, +are accessible through this mechanism. +.Pp +The packet filter appears as a character special device, +.Pa /dev/bpf . +After opening the device, the file descriptor must be bound to a +specific network interface with the +.Dv BIOCSETIF +ioctl. +A given interface can be shared by multiple listeners, and the filter +underlying each descriptor will see an identical packet stream. +.Pp +Associated with each open instance of a +.Nm +file is a user-settable packet filter. +Whenever a packet is received by an interface, +all file descriptors listening on that interface apply their filter. +Each descriptor that accepts the packet receives its own copy. +.Pp +Reads from these files return the next group of packets +that have matched the filter. +To improve performance, the buffer passed to read must be +the same size as the buffers used internally by +.Nm . +This size is returned by the +.Dv BIOCGBLEN +ioctl (see below), and can be set with +.Dv BIOCSBLEN . +Note that an individual packet larger than this size is necessarily +truncated. +.Pp +Since packet data is in network byte order, applications should use the +.Xr byteorder 3 +macros to extract multi-byte values. +.Pp +A packet can be sent out on the network by writing to a +.Nm +file descriptor. +The writes are unbuffered, meaning only one packet can be processed per write. +Currently, only writes to Ethernet-based (including Wi-Fi), SLIP and loopback +links are supported. +.Sh IOCTLS +The +.Xr ioctl 2 +command codes below are defined in +.In net/bpf.h . +All commands require these includes: +.Bd -literal -offset indent +#include +#include +#include +#include +.Ed +.Pp +Additionally, +.Dv BIOCGETIF +and +.Dv BIOCSETIF +require +.Pa . +.Pp +The (third) argument to the +.Xr ioctl 2 +should be a pointer to the type indicated. +.Bl -tag -width Dv +.It Dv BIOCGBLEN Pq Vt u_int +Returns the required buffer length for reads on +.Nm +files. +.It Dv BIOCSBLEN Pq Vt u_int +Sets the buffer length for reads on +.Nm +files. +The buffer must be set before the file is attached to an interface with +.Dv BIOCSETIF . +If the requested buffer size cannot be accommodated, the closest +allowable size will be set and returned in the argument. +A read call will result in +.Er EINVAL +if it is passed a buffer that is not this size. +.It Dv BIOCGDLT Pq Vt u_int +Returns the type of the data link layer underlying the attached interface. +.Er EINVAL +is returned if no interface has been specified. +The device types, prefixed with +.Ql DLT_ , +are defined in +.In net/bpf.h . +.It Dv BIOCGDLTLIST Pq Vt struct bpf_dltlist +Returns an array of the available types of the data link layer +underlying the attached interface: +.Bd -literal -offset indent +struct bpf_dltlist { + u_int bfl_len; + u_int *bfl_list; +}; +.Ed +.Pp +The available types are returned in the array pointed to by the +.Fa bfl_list +field while their length in +.Vt u_int +is supplied to the +.Fa bfl_len +field. +.Er ENOMEM +is returned if there is not enough buffer space and +.Er EFAULT +is returned if a bad address is encountered. +The +.Fa bfl_len +field is modified on return to indicate the actual length in u_int +of the array returned. +If +.Fa bfl_list +is +.Dv NULL , +the +.Fa bfl_len +field is set to indicate the required length of an array in +.Vt u_int . +.It Dv BIOCSDLT Pq Vt u_int +Changes the type of the data link layer underlying the attached interface. +.Er EINVAL +is returned if no interface has been specified or the specified +type is not available for the interface. +.It Dv BIOCPROMISC +Forces the interface into promiscuous mode. +All packets, not just those destined for the local host, are processed. +Since more than one file can be listening on a given interface, +a listener that opened its interface non-promiscuously may receive +packets promiscuously. +This problem can be remedied with an appropriate filter. +.Pp +The interface remains in promiscuous mode until all files listening +promiscuously are closed. +.It Dv BIOCFLUSH +Flushes the buffer of incoming packets, +and resets the statistics that are returned by +.Dv BIOCGSTATS . +.It Dv BIOCGETIF Pq Vt struct ifreq +Returns the name of the hardware interface that the file is listening on. +The name is returned in the +.Fa ifr_name +field of +.Vt ifreq . +All other fields are undefined. +.It Dv BIOCSETIF Pq Vt struct ifreq +Sets the hardware interface associated with the file. +This command must be performed before any packets can be read. +The device is indicated by name using the +.Fa ifr_name +field of the +.Vt ifreq . +Additionally, performs the actions of +.Dv BIOCFLUSH . +.It Dv BIOCSRTIMEOUT , BIOCGRTIMEOUT Pq Vt struct timeval +Sets or gets the +.Dq Em read timeout +parameter. +The +.Vt timeval +specifies the length of time to wait before timing +out on a read request. +This parameter is initialized to zero by +.Xr open 2 , +indicating no timeout. +.It Dv BIOCGSTATS Pq Vt struct bpf_stat +Returns the following structure of packet statistics: +.Bd -literal -offset indent +struct bpf_stat { + uint64_t bs_recv; + uint64_t bs_drop; + uint64_t bs_capt; + uint64_t bs_padding[13]; +}; +.Ed +.Pp +The fields are: +.Bl -tag -width Fa -offset indent +.It Fa bs_recv +the number of packets received by the descriptor since opened or reset +.Pq including any buffered since the last read call ; +.It Fa bs_drop +the number of packets which were accepted by the filter but dropped by the +kernel because of buffer overflows +.Po +i.e., the application's reads aren't keeping up with the packet traffic +.Pc ; +and +.It Fa bs_capt +the number of packets accepted by the filter. +.El +.It Dv BIOCIMMEDIATE Pq Vt u_int +Enables or disables +.Dq Em immediate mode , +based on the truth value of the argument. +When immediate mode is enabled, reads return immediately upon packet +reception. +Otherwise, a read will block until either the kernel buffer +becomes full or a timeout occurs. +This is useful for programs like +.Xr rarpd 8 , +which must respond to messages in real time. +The default for a new file is off. +.It Dv BIOCLOCK Pq Dv NULL +Set the locked flag on the bpf descriptor. +This prevents the execution of ioctl commands which could change the +underlying operating parameters of the device. +.It Dv BIOCSETF Pq Vt struct bpf_program +Sets the filter program used by the kernel to discard uninteresting +packets. +An array of instructions and its length are passed in using the following structure: +.Bd -literal -offset indent +struct bpf_program { + u_int bf_len; + struct bpf_insn *bf_insns; +}; +.Ed +.Pp +The filter program is pointed to by the +.Fa bf_insns +field while its length in units of +.Vt struct bpf_insn +is given by the +.Fa bf_len +field. +Also, the actions of +.Dv BIOCFLUSH +are performed. +.Pp +See section +.Sx FILTER MACHINE +for an explanation of the filter language. +.It Dv BIOCSETWF Pq Vt struct bpf_program +Sets the write filter program used by the kernel to control what type +of packets can be written to the interface. +See the +.Dv BIOCSETF +command for more information on the bpf filter program. +.It Dv BIOCVERSION Pq Vt struct bpf_version +Returns the major and minor version numbers of the filter language currently +recognized by the kernel. +Before installing a filter, applications must check +that the current version is compatible with the running kernel. +Version numbers are compatible if the major numbers match and the +application minor is less than or equal to the kernel minor. +The kernel version number is returned in the following structure: +.Bd -literal -offset indent +struct bpf_version { + u_short bv_major; + u_short bv_minor; +}; +.Ed +.Pp +The current version numbers are given by +.Dv BPF_MAJOR_VERSION +and +.Dv BPF_MINOR_VERSION +from +.In net/bpf.h . +An incompatible filter +may result in undefined behavior +.Po +most likely, an error returned by +.Xr ioctl 2 +or haphazard packet matching +.Pc . +.It Dv BIOCSRSIG , BIOCGRSIG Pq Vt u_int +Sets or gets the receive signal. +This signal will be sent to the process or process group specified by +.Dv FIOSETOWN . +It defaults to +.Dv SIGIO . +.It Dv BIOCGHDRCMPLT , BIOCSHDRCMPLT Pq Vt u_int +Sets or gets the status of the +.Dq header complete +flag. +Set to zero if the link level source address should be filled in +automatically by the interface output routine. +Set to one if the link level source address will be written, +as provided, to the wire. +This flag is initialized to zero by default. +.It Dv BIOCGSEESENT , BIOCSSEESENT Pq Vt u_int +These commands are obsolete but left for compatibility. +Use +.Dv BIOCSDIRECTION +and +.Dv BIOCGDIRECTION +instead. +Set or get the flag determining whether locally generated packets on the +interface should be returned by BPF. +Set to zero to see only incoming packets on the interface. +Set to one to see packets originating locally and remotely on the interface. +This flag is initialized to one by default. +.It Dv BIOCSDIRECTION , BIOCGDIRECTION Pq Vt u_int +Set or get the setting determining whether incoming, outgoing, or all packets +on the interface should be returned by BPF. +Set to +.Dv BPF_D_IN +to see only incoming packets on the interface. +Set to +.Dv BPF_D_INOUT +to see packets originating locally and remotely on the interface. +Set to +.Dv BPF_D_OUT +to see only outgoing packets on the interface. +This setting is initialized to +.Dv BPF_D_INOUT +by default. +.It Dv BIOCFEEDBACK , BIOCSFEEDBACK , BIOCGFEEDBACK Pq Vt u_int +Set (or get) +.Dq packet feedback mode . +This allows injected packets to be fed back as input to the interface when +output via the interface is successful. +The first name is meant for +.Fx +compatibility, the two others follow the Get/Set convention. +.\"When +.\".Dv BPF_D_INOUT +.\"direction is set, injected +Injected +outgoing packets are not returned by BPF to avoid +duplication. +This flag is initialized to zero by default. +.El +.Sh STANDARD IOCTLS +.Nm +supports several standard +.Xr ioctl 2 Ap s +which allow the user to do async and/or non-blocking I/O to an open +.Nm bpf +file descriptor. +.Bl -tag -width Dv +.It Dv FIONREAD Pq Vt int +Returns the number of bytes that are immediately available for reading. +.It Dv FIONBIO Pq Vt int +Set or clear non-blocking I/O. +If arg is non-zero, then doing a +.Xr read 2 +when no data is available will return \-1 and +.Va errno +will be set to +.Er EAGAIN . +If arg is zero, non-blocking I/O is disabled. +Note: setting this +overrides the timeout set by +.Dv BIOCSRTIMEOUT . +.It Dv FIOASYNC Pq Vt int +Enable or disable async I/O. +When enabled (arg is non-zero), the process or process group specified by +.Dv FIOSETOWN +will start receiving +.Dv SIGIO Ap s +when packets arrive. +Note that you must do an +.Dv FIOSETOWN +in order for this to take effect, as +the system will not default this for you. +The signal may be changed via +.Dv BIOCSRSIG . +.It Dv FIOSETOWN , FIOGETOWN Pq Vt int +Set or get the process or process group (if negative) that should receive +.Dv SIGIO +when packets are available. +The signal may be changed using +.Dv BIOCSRSIG +(see above). +.El +.Sh BPF HEADER +The following structure is prepended to each packet returned by +.Xr read 2 : +.Bd -literal -offset indent +struct bpf_hdr { + struct bpf_timeval bh_tstamp; + uint32_t bh_caplen; + uint32_t bh_datalen; + uint16_t bh_hdrlen; +}; +.Ed +.Pp +The fields, whose values are stored in host order, are: +.Bl -tag -width Fa -offset indent +.It Fa bh_tstamp +The time at which the packet was processed by the packet filter. +This structure differs from the standard +.Vt struct timeval +in that both members are of type +.Vt long . +.It Fa bh_caplen +The length of the captured portion of the packet. +This is the minimum of +the truncation amount specified by the filter and the length of the packet. +.It Fa bh_datalen +The length of the packet off the wire. +This value is independent of the truncation amount specified by the filter. +.It Fa bh_hdrlen +The length of the BPF header, which may not be equal to +.Li sizeof(struct bpf_hdr) . +.El +.Pp +The +.Fa bh_hdrlen +field exists to account for +padding between the header and the link level protocol. +The purpose here is to guarantee proper alignment of the packet +data structures, which is required on alignment sensitive +architectures and improves performance on many other architectures. +The packet filter ensures that the +.Vt bpf_hdr +and the +.Em network layer +header will be word aligned. +Suitable precautions must be taken when accessing the link layer +protocol fields on alignment restricted machines. +.Po +This isn't a problem on an Ethernet, since +the type field is a short falling on an even offset, +and the addresses are probably accessed in a bytewise fashion +.Pc . +.Pp +Additionally, individual packets are padded so that each starts +on a word boundary. +This requires that an application +has some knowledge of how to get from packet to packet. +The macro +.Dv BPF_WORDALIGN +is defined in +.In net/bpf.h +to facilitate this process. +It rounds up its argument +to the nearest word aligned value +.Po +where a word is +.Dv BPF_ALIGNMENT +bytes wide +.Pc . +.Pp +For example, if +.Va p +points to the start of a packet, this expression +will advance it to the next packet: +.Pp +.Dl p = (char *)p + BPF_WORDALIGN(p->bh_hdrlen + p->bh_caplen) +.Pp +For the alignment mechanisms to work properly, the +buffer passed to +.Xr read 2 +must itself be word aligned. +.Xr malloc 3 +will always return an aligned buffer. +.Sh FILTER MACHINE +A filter program is an array of instructions, with all branches +.Em forwardly directed , +terminated by a +.Em return +instruction. +Each instruction performs some action on the pseudo-machine state, +which consists of an accumulator, index register, scratch memory store, +and implicit program counter. +.Pp +The following structure defines the instruction format: +.Bd -literal -offset indent +struct bpf_insn { + uint16_t code; + u_char jt; + u_char jf; + uint32_t k; +}; +.Ed +.Pp +The +.Fa k +field is used in different ways by different instructions, +and the +.Fa jt +and +.Fa jf +fields are used as offsets +by the branch instructions. +The opcodes are encoded in a semi-hierarchical fashion. +There are eight classes of instructions: +.Dv BPF_LD , +.Dv BPF_LDX , +.Dv BPF_ST , +.Dv BPF_STX , +.Dv BPF_ALU , +.Dv BPF_JMP , +.Dv BPF_RET , +and +.Dv BPF_MISC . +Various other mode and +operator bits are +.Em or Ap d +into the class to give the actual instructions. +The classes and modes are defined in +.In net/bpf.h . +.Pp +Below are the semantics for each defined BPF instruction. +We use the convention that +.Ar A +is the accumulator, +.Ar X +is the index register, +.Ar P +packet data, and +.Ar M +scratch memory store. +.Sm off +.Ar P Li \&[ Ar i Li \&: Ar n\^ Li \&] +.Sm on +gives the data at byte offset +.Ar i +in the packet, +interpreted as a word +.Ar ( n No = 4 ) , +unsigned halfword +.Ar ( n No = 2 ) , +or unsigned byte +.Ar ( n No = 1 ) . +.Sm off +.Ar M\^ Li \&[ Ar i\^ Li \&] +.Sm on +gives the +.Ar i Ap th +word in the scratch memory store, which is only +addressed in word units. +The memory store is indexed from 0 to +.Dv BPF_MEMWORDS Ns Li \&-1 . +.Fa k , +.Fa jt , +and +.Fa jf +are the corresponding fields in the +instruction definition. +.Ar len +refers to the length of the packet. +.Bl -tag -width indent +.It Sy BPF_LD +These instructions copy a value into the accumulator. +The type of the source operand is specified by an +.Dq addressing mode +and can be a constant +.Sy ( BPF_IMM ) , +packet data at a fixed offset +.Sy ( BPF_ABS ) , +packet data at a variable offset +.Sy ( BPF_IND ) , +the packet length +.Sy ( BPF_LEN ) , +or a word in the scratch memory store +.Sy ( BPF_MEM ) . +For +.Sy BPF_IND +and +.Sy BPF_ABS , +the data size must be specified as a word +.Sy ( BPF_W ) , +halfword +.Sy ( BPF_H ) , +or byte +.Sy ( BPF_B ) . +Arithmetic overflow when calculating a variable offset terminates +the filter program and the packet is ignored. +The semantics of all the recognized +.Sy BPF_LD +instructions follow. +.\" to make all instruction tables align nicely, use common max width +.ds max-insn .Sy BPF_LDX + BPF_W + BPF_WWW +.\" +.Bl -column "\*[max-insn]" -offset indent +.It Sy BPF_LD + BPF_W + BPF_ABS Ta A \[<-] P[k:4] +.It Sy BPF_LD + BPF_H + BPF_ABS Ta A \[<-] P[k:2] +.It Sy BPF_LD + BPF_B + BPF_ABS Ta A \[<-] P[k:1] +.It Sy BPF_LD + BPF_W + BPF_IND Ta A \[<-] P[X+k:4] +.It Sy BPF_LD + BPF_H + BPF_IND Ta A \[<-] P[X+k:2] +.It Sy BPF_LD + BPF_B + BPF_IND Ta A \[<-] P[X+k:1] +.It Sy BPF_LD + BPF_W + BPF_LEN Ta A \[<-] len +.It Sy BPF_LD + BPF_IMM Ta A \[<-] k +.It Sy BPF_LD + BPF_MEM Ta A \[<-] M[k] +.El +.It Sy BPF_LDX +These instructions load a value into the index register. +Note that the addressing modes are more restricted than those of +the accumulator loads, but they include +.Sy BPF_MSH , +a hack for efficiently loading the IP header length. +.Bl -column "\*[max-insn]" -offset indent +.It Sy BPF_LDX + BPF_W + BPF_IMM Ta X \[<-] k +.It Sy BPF_LDX + BPF_W + BPF_MEM Ta X \[<-] M[k] +.It Sy BPF_LDX + BPF_W + BPF_LEN Ta X \[<-] len +.It Sy BPF_LDX + BPF_B + BPF_MSH Ta X \[<-] 4*(P[k:1]&0xf) +.El +.It Sy BPF_ST +This instruction stores the accumulator into the scratch memory. +We do not need an addressing mode since there is only one possibility +for the destination. +.Bl -column "\*[max-insn]" -offset indent +.It Sy BPF_ST Ta M[k] \[<-] A +.El +.It Sy BPF_STX +This instruction stores the index register in the scratch memory store. +.Bl -column "\*[max-insn]" -offset indent +.It Sy BPF_STX Ta M[k] \[<-] X +.El +.It Sy BPF_ALU +The alu instructions perform operations between the accumulator and +index register or constant, and store the result back in the accumulator. +For binary operations, a source mode is required +.Sy ( BPF_K +or +.Sy BPF_X ) . +.Bl -column "\*[max-insn]" -offset indent +.It Sy BPF_ALU + BPF_ADD + BPF_K Ta A \[<-] A + k +.It Sy BPF_ALU + BPF_SUB + BPF_K Ta A \[<-] A \- k +.It Sy BPF_ALU + BPF_MUL + BPF_K Ta A \[<-] A * k +.It Sy BPF_ALU + BPF_DIV + BPF_K Ta A \[<-] A / k +.It Sy BPF_ALU + BPF_AND + BPF_K Ta A \[<-] A & k +.It Sy BPF_ALU + BPF_OR + BPF_K Ta A \[<-] A | k +.It Sy BPF_ALU + BPF_LSH + BPF_K Ta A \[<-] A \[<<] k +.It Sy BPF_ALU + BPF_RSH + BPF_K Ta A \[<-] A \[>>] k +.It Sy BPF_ALU + BPF_ADD + BPF_X Ta A \[<-] A + X +.It Sy BPF_ALU + BPF_SUB + BPF_X Ta A \[<-] A \- X +.It Sy BPF_ALU + BPF_MUL + BPF_X Ta A \[<-] A * X +.It Sy BPF_ALU + BPF_DIV + BPF_X Ta A \[<-] A / X +.It Sy BPF_ALU + BPF_AND + BPF_X Ta A \[<-] A & X +.It Sy BPF_ALU + BPF_OR + BPF_X Ta A \[<-] A | X +.It Sy BPF_ALU + BPF_LSH + BPF_X Ta A \[<-] A \[<<] X +.It Sy BPF_ALU + BPF_RSH + BPF_X Ta A \[<-] A \[>>] X +.It Sy BPF_ALU + BPF_NEG Ta A \[<-] \-A +.El +.It Sy BPF_JMP +The jump instructions alter flow of control. +Conditional jumps compare the accumulator against a constant +.Sy ( BPF_K ) +or the index register +.Sy ( BPF_X ) . +If the result is true (or non-zero), +the true branch is taken, otherwise the false branch is taken. +Jump offsets are encoded in 8 bits so the longest jump is 256 instructions. +However, the jump always +.Sy ( BPF_JA ) +opcode uses the 32 bit +.Fa k +field as the offset, allowing arbitrarily distant destinations. +All conditionals use unsigned comparison conventions. +.Bl -column "\*[max-insn]" -offset indent +.It Sy BPF_JMP + BPF_JA Ta pc += k +.It Sy BPF_JMP + BPF_JGT + BPF_K Ta "pc += (A > k) ? jt : jf" +.It Sy BPF_JMP + BPF_JGE + BPF_K Ta "pc += (A \*[Ge] k) ? jt : jf" +.It Sy BPF_JMP + BPF_JEQ + BPF_K Ta "pc += (A == k) ? jt : jf" +.It Sy BPF_JMP + BPF_JSET + BPF_K Ta "pc += (A & k) ? jt : jf" +.It Sy BPF_JMP + BPF_JGT + BPF_X Ta "pc += (A > X) ? jt : jf" +.It Sy BPF_JMP + BPF_JGE + BPF_X Ta "pc += (A \*[Ge] X) ? jt : jf" +.It Sy BPF_JMP + BPF_JEQ + BPF_X Ta "pc += (A == X) ? jt : jf" +.It Sy BPF_JMP + BPF_JSET + BPF_X Ta "pc += (A & X) ? jt : jf" +.El +.It Sy BPF_RET +The return instructions terminate the filter program and specify the amount +of packet to accept +.Pq i.e., they return the truncation amount . +A return value of zero indicates that the packet should be ignored. +The return value is either a constant +.Sy ( BPF_K ) +or the accumulator +.Sy ( BPF_A ) . +.Bl -column "\*[max-insn]" -offset indent +.It Sy BPF_RET + BPF_A Ta accept A bytes +.It Sy BPF_RET + BPF_K Ta accept k bytes +.El +.It Sy BPF_MISC +The miscellaneous category was created for anything that doesn't +fit into the above classes, and for any new instructions that might need to +be added. +Currently, these are the register transfer instructions +that copy the index register to the accumulator or vice versa. +.Bl -column "\*[max-insn]" -offset indent +.It Sy BPF_MISC + BPF_TAX Ta X \[<-] A +.It Sy BPF_MISC + BPF_TXA Ta A \[<-] X +.El +.Pp +Also, two instructions to call a +.Dq Em coprocessor +if initialized by the kernel component. +There is no coprocessor by default. +.Bl -column "\*[max-insn]" -offset indent +.It Sy BPF_MISC + BPF_COP Ta A \[<-] funcs[k](...) +.It Sy BPF_MISC + BPF_COPX Ta A \[<-] funcs[X](...) +.El +.Pp +If the coprocessor is not set or the function index is out of range, these +instructions will abort the program and return zero. +.El +.Pp +The BPF interface provides the following macros to facilitate +array initializers: +.Bd -unfilled -offset indent +.Fn BPF_STMT opcode operand +.Fn BPF_JUMP opcode operand true_offset false_offset +.Ed +.Sh SYSCTLS +The following sysctls are available when +.Nm +is enabled: +.Bl -tag -width ".Li net.bpf.maxbufsize" +.It Li net.bpf.maxbufsize +Sets the maximum buffer size available for +.Nm +peers. +.It Li net.bpf.stats +Shows +.Nm +statistics. +They can be retrieved with the +.Xr netstat 1 +utility. +.It Li net.bpf.peers +Shows the current +.Nm +peers. +This is only available to the super user and can also be retrieved with the +.Xr netstat 1 +utility. +.El +.Pp +On architectures with +.Xr bpfjit 4 +support, the additional sysctl is available: +.Bl -tag -width ".Li net.bpf.jit" +.It Li net.bpf.jit +Toggle +.Em just-in-time +compilation of new filter programs. +In order to enable just-in-time compilation, +the bpfjit kernel module must be loaded. +Changing a value of this sysctl doesn't affect +existing filter programs. +.El +.Sh FILES +.Pa /dev/bpf +.Sh EXAMPLES +The following filter is taken from the Reverse ARP Daemon. +It accepts only Reverse ARP requests. +.Bd -literal -offset indent +struct bpf_insn insns[] = { + BPF_STMT(BPF_LD+BPF_H+BPF_ABS, 12), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, ETHERTYPE_REVARP, 0, 3), + BPF_STMT(BPF_LD+BPF_H+BPF_ABS, 20), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, REVARP_REQUEST, 0, 1), + BPF_STMT(BPF_RET+BPF_K, sizeof(struct ether_arp) + + sizeof(struct ether_header)), + BPF_STMT(BPF_RET+BPF_K, 0), +}; +.Ed +.Pp +This filter accepts only IP packets between host 128.3.112.15 and +128.3.112.35. +.Bd -literal -offset indent +struct bpf_insn insns[] = { + BPF_STMT(BPF_LD+BPF_H+BPF_ABS, 12), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, ETHERTYPE_IP, 0, 8), + BPF_STMT(BPF_LD+BPF_W+BPF_ABS, 26), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0x8003700f, 0, 2), + BPF_STMT(BPF_LD+BPF_W+BPF_ABS, 30), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0x80037023, 3, 4), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0x80037023, 0, 3), + BPF_STMT(BPF_LD+BPF_W+BPF_ABS, 30), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 0x8003700f, 0, 1), + BPF_STMT(BPF_RET+BPF_K, (u_int)-1), + BPF_STMT(BPF_RET+BPF_K, 0), +}; +.Ed +.Pp +Finally, this filter returns only TCP finger packets. +We must parse the IP header to reach the TCP header. +The +.Sy BPF_JSET +instruction checks that the IP fragment offset is 0 so we are sure +that we have a TCP header. +.Bd -literal -offset indent +struct bpf_insn insns[] = { + BPF_STMT(BPF_LD+BPF_H+BPF_ABS, 12), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, ETHERTYPE_IP, 0, 10), + BPF_STMT(BPF_LD+BPF_B+BPF_ABS, 23), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, IPPROTO_TCP, 0, 8), + BPF_STMT(BPF_LD+BPF_H+BPF_ABS, 20), + BPF_JUMP(BPF_JMP+BPF_JSET+BPF_K, 0x1fff, 6, 0), + BPF_STMT(BPF_LDX+BPF_B+BPF_MSH, 14), + BPF_STMT(BPF_LD+BPF_H+BPF_IND, 14), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 79, 2, 0), + BPF_STMT(BPF_LD+BPF_H+BPF_IND, 16), + BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, 79, 0, 1), + BPF_STMT(BPF_RET+BPF_K, (u_int)-1), + BPF_STMT(BPF_RET+BPF_K, 0), +}; +.Ed +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr read 2 , +.Xr select 2 , +.Xr signal 3 , +.Xr bpfjit 4 , +.Xr tcpdump 8 +.Rs +.%T "The BSD Packet Filter: A New Architecture for User-level Packet Capture" +.%A S. McCanne +.%A V. Jacobson +.%J Proceedings of the 1993 Winter USENIX +.%C Technical Conference, San Diego, CA +.Re +.Sh HISTORY +The Enet packet filter was created in 1980 by Mike Accetta and +Rick Rashid at Carnegie-Mellon University. +Jeffrey Mogul, at Stanford, ported the code to BSD and continued +its development from 1983 on. +Since then, it has evolved into the ULTRIX Packet Filter +at DEC, a STREAMS NIT module under SunOS 4.1, and BPF. +.Sh AUTHORS +.An -nosplit +.An Steven McCanne , +of Lawrence Berkeley Laboratory, implemented BPF in Summer 1990. +The design was in collaboration with +.An Van Jacobson , +also of Lawrence Berkeley Laboratory. +.Sh BUGS +The read buffer must be of a fixed size +.Po +returned by the +.Dv BIOCGBLEN +ioctl +.Pc . +.Pp +A file that does not request promiscuous mode may receive promiscuously +received packets as a side effect of another file requesting this +mode on the same hardware interface. +This could be fixed in the kernel with additional processing overhead. +However, we favor the model where +all files must assume that the interface is promiscuous, and if +so desired, must use a filter to reject foreign packets. +.\" .Pp +.\" Under SunOS, if a BPF application reads more than 2^31 bytes of +.\" data, read will fail in +.\" .Er EINVAL . +.\" You can either fix the bug in SunOS, +.\" or lseek to 0 when read fails for this reason. +.Pp +.Dq Em Immediate mode +and the +.Dq Em read timeout +are misguided features. +This functionality can be emulated with non-blocking mode and +.Xr select 2 . diff --git a/static/netbsd/man4/bpfjit.4 b/static/netbsd/man4/bpfjit.4 new file mode 100644 index 00000000..c73a14fb --- /dev/null +++ b/static/netbsd/man4/bpfjit.4 @@ -0,0 +1,116 @@ +.\" -*- nroff -*- +.\" +.\" $NetBSD: bpfjit.4,v 1.3 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 2014 Alexander Nasonov. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in +.\" the documentation and/or other materials provided with the +.\" distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd July 24, 2014 +.Dt BPFJIT 4 +.Os +.Sh NAME +.Nm bpfjit +.Nd Just-In-Time compiler for Berkeley Packet Filter +.Sh SYNOPSIS +.Cd "options BPFJIT" +.Cd "options SLJIT" +.Sh DESCRIPTION +The +.Nm +kernel interface adds +.Sy Just-In-Time +compilation of filter programs sent to a +.Xr bpf 4 +device. +Instead of being interpreted for every packet, +these filter programs are compiled into native code +and the code is being executed for every packet. +.Pp +The implementation of +.Nm +is based on the +.Sy Stack-Less Just-In-Time +library, or +.Nm sljit +for short. +The library supports multiple platforms including +.Bl -bullet -offset indent -compact +.It +AMD-x86 64 +.It +ARM 32 (ARM-v5, ARM-v7 and Thumb2 instruction sets) +.It +Intel-x86 32 +.It +MIPS 32 (III, R1) +.It +MIPS 64 (III, R1) +.It +PowerPC 32 +.It +PowerPC 64 +.It +SPARC 32 +.El +.Pp +.Nm +supports all architectures listed above. +.Pp +.Nm +is also available as a module in modular kernels. +.Sh SYSCTLS +The following sysctl is available when +.Nm +is enabled: +.Bl -tag -width "XnetXbpfXjitXX" +.It Li net.bpf.jit +Toggle +.Sy Just-In-Time +compilation of new filter programs. +Changing a value of this sysctl doesn't affect +existing filter programs. +.El +.Sh SEE ALSO +.Xr bpf 4 , +.Xr modload 8 +.Pp +.Lk https://zherczeg.github.io/sljit/ sljit library +.Sh HISTORY +The +.Nm +interface first appeared in +.Nx 7.0 . +.Sh AUTHORS +The +.Nm +code was written by +.An Alexander Nasonov Aq Mt alnsn@NetBSD.org . +.Pp +The +.Nm sljit +library was written by +.An Zoltan Herczeg Aq Mt hzmester@freemail.hu . diff --git a/static/netbsd/man4/brgphy.4 b/static/netbsd/man4/brgphy.4 new file mode 100644 index 00000000..40f526a6 --- /dev/null +++ b/static/netbsd/man4/brgphy.4 @@ -0,0 +1,49 @@ +.\" $NetBSD: brgphy.4,v 1.4 2026/03/21 02:18:25 gutteridge Exp $ +.\" +.\" Copyright (c) 1998, 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jason R. Thorpe of the Numerical Aerospace Simulation Facility, +.\" NASA Ames Research Center. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 10, 2010 +.Dt BRGPHY 4 +.Os +.Sh NAME +.Nm brgphy +.Nd Driver for Broadcom BCM5400 and BCM5700 series Gigabit Ethernet PHYs +.Sh SYNOPSIS +.Cd "brgphy* at mii? phy ?" +.Sh DESCRIPTION +The +.Nm +driver supports the Broadcom BCM5400-family and BCM5700-family +Gigabit Ethernet PHYs. +These PHYs are found on a variety of Gigabit Ethernet interfaces. +.Sh SEE ALSO +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr mii 4 , +.Xr ifconfig 8 diff --git a/static/netbsd/man4/bridge.4 b/static/netbsd/man4/bridge.4 new file mode 100644 index 00000000..cd1b1cf7 --- /dev/null +++ b/static/netbsd/man4/bridge.4 @@ -0,0 +1,142 @@ +.\" $NetBSD: bridge.4,v 1.14 2020/09/27 15:42:48 roy Exp $ +.\" +.\" Copyright 2001 Wasabi Systems, Inc. +.\" All rights reserved. +.\" +.\" Written by Jason R. Thorpe for Wasabi Systems, Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed for the NetBSD Project by +.\" Wasabi Systems, Inc. +.\" 4. The name of Wasabi Systems, Inc. may not be used to endorse +.\" or promote products derived from this software without specific prior +.\" written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL WASABI SYSTEMS, INC +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd September 27, 2020 +.Dt BRIDGE 4 +.Os +.Sh NAME +.Nm bridge +.Nd network bridge device +.Sh SYNOPSIS +.Cd "pseudo-device bridge" +.Sh DESCRIPTION +The +.Nm +driver creates a logical link between two or more IEEE 802 networks +that use the same (or +.Dq similar enough ) +framing format. +For example, it is possible to bridge Ethernet and 802.11 networks together, +but it is not possible to bridge Ethernet and Token Ring together. +.Pp +To use +.Nm bridge , +the administrator must first create the interface and configure +the bridge parameters. +The bridge is created using the +.Xr ifconfig 8 +.Cm create +subcommand. +The learning and forwarding behavior and other parameters of a +bridge are configured by the +.Xr brconfig 8 +utility. +.Pp +A bridge can be used to provide several services, such as a simple +802.11-to-Ethernet bridge for wireless hosts, and traffic isolation. +.Pp +A bridge works like a switch, forwarding traffic from one interface +to another. +Multicast and broadcast packets are always forwarded to all +interfaces that are part of the bridge. +For unicast traffic, the bridge learns which MAC addresses are associated +with which interfaces and will forward the traffic selectively. +.Pp +The +.Nm +driver implements the IEEE 802.1D Spanning Tree protocol (STP). +Spanning Tree is used to detect and remove loops in a network topology. +.Pp +When filtering is enabled, bridged packets will pass through the filter +inbound on the originating interface and outbound on the appropriate +interfaces. +ARP and REVARP packets are forwarded without being filtered and others +that are not IP nor IPv6 packets are not forwarded when filtering is +enabled. +.Pp +Note that packets to and from the bridging host will be seen by the +filter on the interface with the appropriate address configured as well +as on the interface on which the packet arrives or departs. +.Pp +The +.Nm +driver will enable passing of VLAN tagged packets automatically if the underlying +interfaces support it. +This is to facilitate XEN network configurations with +.Xr xennet 4 . +.Pp +It is not possible to assign an IP address directly to the +.Nm +interface. +Instead, assign an IP address to a +.Xr vether 4 +interface which can be added to the bridge. +.Sh SEE ALSO +.Xr l2tp 4 , +.Xr options 4 , +.Xr xennet 4 , +.Xr vether 4 , +.Xr brconfig 8 , +.Xr ipf 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 1.6 . +.Sh AUTHORS +.An -nosplit +The +.Nm bridge +driver was originally written by +.An Jason L. Wright +.Aq jason@thought.net +as part of an undergraduate independent study at the University of +North Carolina at Greensboro. +.Pp +This version of the +.Nm +driver has been heavily modified from the original version by +.An Jason R. Thorpe +.Aq thorpej@wasabisystems.com . +.Sh BUGS +The +.Nm +driver currently supports only Ethernet and Ethernet-like (e.g. 802.11) +network devices, with exactly the same interface MTU size as the bridge device. +.Pp +The +.Nm +driver currently does not support snooping via +.Xr bpf 4 . diff --git a/static/netbsd/man4/bt3c.4 b/static/netbsd/man4/bt3c.4 new file mode 100644 index 00000000..2113f289 --- /dev/null +++ b/static/netbsd/man4/bt3c.4 @@ -0,0 +1,86 @@ +.\" $NetBSD: bt3c.4,v 1.5 2012/10/10 18:14:14 njoly Exp $ +.\" +.\" Copyright (c) 2006 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Iain Hibbert. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 14, 2006 +.Dt BT3C 4 +.Os +.Sh NAME +.Nm bt3c +.Nd 3Com Bluetooth PC Card driver +.Sh SYNOPSIS +.Cd "bt3c* at pcmcia? function ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the 3Com Bluetooth PC Card, model 3CRWB6096, to +the Bluetooth protocol stack. +.Sh FIRMWARE +This card needs firmware loaded before it will work. Due to copyright restrictions +we cannot distribute the firmware with NetBSD, but if you have the card then you +should have received a CD with the drivers on, or you may download the latest +version from the 3Com website. Create a directory named +.Nm +in the search path of the +.Xr firmload 9 +kernel subsystem. Now, extract the driver archive and find the firmware file +called +.Nm "BT3CPCC.bin" , +and place this file in the newly created directory. The firmware will be loaded +automatically as needed. +.Sh DIAGNOSTICS +.Bl -tag -width XXX -compact +.It "bt3c%d: Cannot open firmware" +This will be printed to the console if the device cannot open the firmware file +as described above. +.Pp +.It "bt3c%d: Antenna In" +.It "bt3c%d: Antenna Out" +If the kernel is compiled with the +.Dv DIAGNOSTIC +option, these messages will be produced on the console when the card antenna +position is changed. +.Pp +.It "bt3c%d: sleeping" +.It "bt3c%d: waking up" +These messages will be produced when the card is enabled or disabled due to +power change events. +.El +.Sh SEE ALSO +.Xr bluetooth 4 , +.Xr pcmcia 4 , +.Xr firmload 9 +.Sh HISTORY +This +.Nm +device driver was written by +.An "Iain Hibbert" +using +.Fx +and BlueZ drivers as a reference. It first appeared in +.Nx 4.0 . diff --git a/static/netbsd/man4/btbc.4 b/static/netbsd/man4/btbc.4 new file mode 100644 index 00000000..b2a64060 --- /dev/null +++ b/static/netbsd/man4/btbc.4 @@ -0,0 +1,51 @@ +.\" $NetBSD: btbc.4,v 1.6 2012/10/10 18:14:14 njoly Exp $ +.\" +.\" Copyright (c) 2007 KIYOHARA Takashi +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, +.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 19, 2007 +.Dt BTBC 4 +.Os +.Sh NAME +.Nm btbc +.Nd AnyCom BlueCard driver +.Sh SYNOPSIS +.Cd "btbc* at pcmcia? function ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the AnyCom BlueCard (LSE041, LSE039, LSE139) +to the Bluetooth protocol stack. +.Sh SEE ALSO +.Xr bluetooth 4 , +.Xr pcmcia 4 +.Sh HISTORY +This +.Nm +device driver was written by +.An "KIYOHARA Takashi" +using +Linux bluecard_cs driver as a reference. +It first appeared in +.Nx 4.0 . diff --git a/static/netbsd/man4/bthidev.4 b/static/netbsd/man4/bthidev.4 new file mode 100644 index 00000000..ec7a3c53 --- /dev/null +++ b/static/netbsd/man4/bthidev.4 @@ -0,0 +1,118 @@ +.\" $NetBSD: bthidev.4,v 1.9 2007/12/02 19:59:11 wiz Exp $ +.\" +.\" Copyright (c) 2006 Itronix Inc. +.\" All rights reserved. +.\" +.\" Written by Iain Hibbert for Itronix Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of Itronix Inc. may not be used to endorse +.\" or promote products derived from this software without specific +.\" prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY ITRONIX INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ITRONIX INC. BE LIABLE FOR ANY +.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +.\" ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 10, 2007 +.Dt BTHIDEV 4 +.Os +.Sh NAME +.Nm bthidev +.Nd Bluetooth Human Interface Device support +.Sh SYNOPSIS +.Cd "bthidev* at bthub?" +.Pp +.Cd "btkbd* at bthidev? reportid ?" +.Cd "btms* at bthidev? reportid ?" +.Sh DESCRIPTION +The +.Nm +driver handles all Bluetooth Human Interface Devices. +Each HID device can have several components, e.g., a keyboard and +a mouse. +These components use different report identifiers to +distinguish which component data is coming from. +The +.Nm +driver may have several children attached that handle particular +components and dispatches data to them based on the report id. +.Pp +Normally, Bluetooth HIDs will be attached using the +.Xr btdevctl 8 +program. +The following properties are used by the +.Nm +driver during autoconfiguration: +.Bl -tag -width interrupt_psmXX +.It local-bdaddr +Local device address. +.It remote-bdaddr +Remote device address. +.It service-name +The +.Nm +driver matches the +.Sq HID +service. +.It control-psm +This, if set, will indicate the PSM to use for the Control channel. +If not set, +.Dv L2CAP_PSM_HID_CNTL +will be used. +.It interrupt-psm +This, if set, will indicate the PSM to use for the Interrupt channel. +If not set, +.Dv L2CAP_PSM_HID_INTR +will be used. +.It descriptor +This required binary blob is the HID descriptor containing information about +reports the device will produce, and obtained via SDP. +.It reconnect +If this boolean value is set, and is true, then the +.Nm +driver will initiate reconnections to the remote device when no +connection is present. +.It link-mode +This optional string represents the link mode of the baseband link, and +may be one of +.Sq auth , +.Sq encrypt , +or +.Sq secure . +.El +.Pp +When the +.Nm +driver has configured its children, it will initiate a connection +to the remote device. +If this fails and the reconnect flag is not set, it will then wait for +the device to initiate the connection. +.Sh SEE ALSO +.Xr bluetooth 4 , +.Xr bthub 4 , +.Xr btkbd 4 , +.Xr btms 4 , +.Xr btdevctl 8 +.Sh HISTORY +The +.Nm +driver was written by +.An Iain Hibbert +under the sponsorship of Itronix, Inc. and first appeared in +.Nx 4.0 . diff --git a/static/netbsd/man4/bthub.4 b/static/netbsd/man4/bthub.4 new file mode 100644 index 00000000..33121746 --- /dev/null +++ b/static/netbsd/man4/bthub.4 @@ -0,0 +1,118 @@ +.\" $NetBSD: bthub.4,v 1.8 2010/10/17 11:45:36 plunky Exp $ +.\" +.\" Copyright (c) 2006 Itronix Inc. +.\" All rights reserved. +.\" +.\" Written by Iain Hibbert for Itronix Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of Itronix Inc. may not be used to endorse +.\" or promote products derived from this software without specific +.\" prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY ITRONIX INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ITRONIX INC. BE LIABLE FOR ANY +.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +.\" ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 17, 2010 +.Dt BTHUB 4 +.Os +.Sh NAME +.Nm bthub +.Nd Bluetooth Remote Device Hub +.Sh SYNOPSIS +.Cd "bthub* at bcsp?" +.Cd "bthub* at bt3c?" +.Cd "bthub* at btbc?" +.Cd "bthub* at btuart?" +.Cd "bthub* at sbt?" +.Cd "bthub* at ubt?" +.Pp +.Cd "bthidev* at bthub?" +.Cd "btmagic* at bthub?" +.Cd "btsco* at bthub?" +.Sh DESCRIPTION +The +.Nm +device is used to attach remote Bluetooth devices to the system, and +will attach to Bluetooth controllers as they are enabled. +.Sh CONFIGURATION +Normally, Bluetooth Remote Devices will be configured on the +.Nm +using the +.Xr btdevctl 8 +program, which passes a +.Xr proplib 3 +dictionary to the control file +.Pa /dev/bthub +with the +.Dv BTDEV_ATTACH +and +.Dv BTDEV_DETACH +.Xr ioctl 2 +commands. +.Pp +The following properties are used by +.Nm : +.Pp +.Bl -tag +.It local-bdaddr +Local +.Dv BD_ADDR . +This required property should be a six byte data blob. +.It remote-bdaddr +Remote +.Dv BD_ADDR . +This required property should be a six byte data blob. +.It service-name +Service name. +This required property should be a string indicating the +service to configure, and may be one of the following: +.Pp +.Bl -tag -compact +.It HF +Handsfree, see +.Xr btsco 4 . +.It HID +Human Interface Device, see +.Xr bthidev 4 . +.It HSET +Headset, see +.Xr btsco 4 . +.El +.El +.Pp +Properties used by the configured device are listed in the appropriate +device manual page. +.Sh FILES +.Bl -tag -compact +.It Pa /dev/bthub +.El +.Sh SEE ALSO +.Xr bluetooth 4 , +.Xr bthidev 4 , +.Xr btmagic 4 , +.Xr btsco 4 , +.Xr btdevctl 8 +.Sh HISTORY +The +.Nm +driver was written by +.An Iain Hibbert +under the sponsorship of Itronix, Inc. and first appeared in +.Nx 4.0 . diff --git a/static/netbsd/man4/btkbd.4 b/static/netbsd/man4/btkbd.4 new file mode 100644 index 00000000..53aa4f65 --- /dev/null +++ b/static/netbsd/man4/btkbd.4 @@ -0,0 +1,77 @@ +.\" $NetBSD: btkbd.4,v 1.5 2009/05/17 06:46:46 wiz Exp $ +.\" +.\" Copyright (c) 2006 Itronix Inc. +.\" All rights reserved. +.\" +.\" Written by Iain Hibbert for Itronix Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of Itronix Inc. may not be used to endorse +.\" or promote products derived from this software without specific +.\" prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY ITRONIX INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ITRONIX INC. BE LIABLE FOR ANY +.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +.\" ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" +.Dd May 16, 2009 +.Dt BTKBD 4 +.Os +.Sh NAME +.Nm btkbd +.Nd Bluetooth keyboard support +.Sh SYNOPSIS +.Cd "btkbd* at bthidev? reportid ?" +.Cd "wskbd* at btkbd? console ?" +.Pp +.Cd "options BTKBD_REPEAT" +.Cd "options BTKBD_LAYOUT=XXX" +.Sh DESCRIPTION +The +.Nm +driver provides support for Bluetooth wireless keyboards. +.Pp +Bluetooth keyboards are configured using the +.Xr btdevctl 8 +program, and provide system access through the +.Xr wscons 4 +driver. +.Sh SEE ALSO +.Xr bluetooth 4 , +.Xr bthidev 4 , +.Xr wskbd 4 , +.Xr btdevctl 8 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 4.0 +and was written by +.An Iain Hibbert +under the sponsorship of Itronix, Inc. +.Sh BUGS +Due to the configuration and connection requirements, Bluetooth keyboards +cannot be used until +.Nx +is fully booted. +.Pp +Bluetooth keyboards cannot be the +.Nx +system console. diff --git a/static/netbsd/man4/btmagic.4 b/static/netbsd/man4/btmagic.4 new file mode 100644 index 00000000..fe747a67 --- /dev/null +++ b/static/netbsd/man4/btmagic.4 @@ -0,0 +1,146 @@ +.\" $NetBSD: btmagic.4,v 1.6 2015/07/03 22:18:02 wiz Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Iain Hibbert. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd July 4, 2015 +.Dt BTMAGIC 4 +.Os +.Sh NAME +.Nm btmagic +.Nd Apple Magic Mouse and Apple Magic Trackpad +.Sh SYNOPSIS +.Cd "btmagic* at bthub?" +.Cd "wsmouse* at btmagic?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the +.Tn Bluetooth +.Dq Magic Mouse +and +.Dq Magic Trackpad +from +.Tn Apple, Inc . +As remote devices cannot be discovered by autoconfig, configuring +a mouse is normally carried out with the +.Xr btdevctl 8 +program. +.Pp +The Magic Mouse and Magic Trackpad use the standard +.Tn USB +Human Interface Device protocol to communicate, but do not provide a +proper HID Descriptor, and require specific initializations to enable +the proprietary touch reports. +.Pp +The Magic Mouse provides basic mouse functionality with two buttons, +and the +.Nm +driver additionally interprets the touch reports to emulate a middle +mouse button when more than one firm touch is detected during a click +event, plus horizontal and vertical scrolling for touch movements +greater than a certain distance. +The mouse has a base resolution of 1300dpi, which the driver scales +by default to a less sensitive 650dpi, but this is adjustable with +.Xr sysctl 8 +along with the pressure needed to discern a firm touch, the minimum +distance necessary to trigger scrolling and the additional downscale +factor applied to scroll movements. +.Pp +The Magic Trackpad provides multi touch functionality and one button. +The +.Nm +driver emulates 3 buttons by splitting the area at the bottom of the +device in 3 equal zones and detects finger presence in one of these zones +when the button is pressed. +In addition, a tap in any area of the trackpad is interpreted as a left click. +The timeout for tap detection defaults to 100ms +and is adjustable with +.Xr sysctl 8 . +.Pp +Pointer movement is reported for single-touch +movements over the device, and scroll is reported for multi-touch movements. +.Pp +The trackpad has a base resolution of 1300dpi, which the driver scales +by default to a less sensitive 650dpi, but this is adjustable with +.Xr sysctl 8 +along with the additional downscale factor applied to scroll movements. +.Pp +.Nm +interfaces to the system as usual through the +.Xr wsmouse 4 +driver, and the following properties are used during autoconfiguration: +.Bl -tag -width ".It remote-bdaddr" +.It vendor-id +Must be 0x05ac. +.It product-id +Must be 0x030d or 0x030e. +.It local-bdaddr +Local device address. +.It remote-bdaddr +Remote device address. +.It link-mode +This optional string represents the link mode of the baseband link, and +may be one of +.Sq auth , +.Sq encrypt , +or +.Sq secure . +.El +.Pp +When the +.Nm +driver has configured, it will attempt to open a connection to the mouse +and, if this fails or the connection is lost, will wait for the +mouse to initiate connections. +The Magic Mouse requires connections to be authenticated, and +should accept a PIN of +.Sq 0000 +during the pairing process. +.Sh SEE ALSO +.Xr bluetooth 4 , +.Xr bthub 4 , +.Xr wsmouse 4 , +.Xr btdevctl 8 , +.Xr sysctl 8 +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Iain Hibbert +with reference to the +.Tn Linux +driver written by +.An Michael Poole . +.An Manuel Bouyer +added Magic Trackpad support, with reference to the +.Tn Linux +driver written by +.An Michael Poole +and +.An Chase Douglas . diff --git a/static/netbsd/man4/btms.4 b/static/netbsd/man4/btms.4 new file mode 100644 index 00000000..4c216989 --- /dev/null +++ b/static/netbsd/man4/btms.4 @@ -0,0 +1,64 @@ +.\" $NetBSD: btms.4,v 1.3 2006/12/23 06:58:20 wiz Exp $ +.\" +.\" Copyright (c) 2006 Itronix Inc. +.\" All rights reserved. +.\" +.\" Written by Iain Hibbert for Itronix Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of Itronix Inc. may not be used to endorse +.\" or promote products derived from this software without specific +.\" prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY ITRONIX INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ITRONIX INC. BE LIABLE FOR ANY +.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +.\" ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 12, 2006 +.Dt BTMS 4 +.Os +.Sh NAME +.Nm btms +.Nd Bluetooth mouse support +.Sh SYNOPSIS +.Cd "btms* at bthidev? reportid ?" +.Cd "wsmouse* at btms?" +.Sh DESCRIPTION +The +.Nm +driver provides support for Bluetooth wireless mice. +.Pp +Bluetooth mice must be configured with the +.Xr btdevctl 8 +program and provide system access through the +.Xr wscons 4 +driver. +.Sh SEE ALSO +.Xr bluetooth 4 , +.Xr bthidev 4 , +.Xr wsmouse 4 , +.Xr btdevctl 8 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 4.0 +and was written by +.An Iain Hibbert +under the sponsorship of Itronix, Inc. diff --git a/static/netbsd/man4/btsco.4 b/static/netbsd/man4/btsco.4 new file mode 100644 index 00000000..fdfd017d --- /dev/null +++ b/static/netbsd/man4/btsco.4 @@ -0,0 +1,142 @@ +.\" $NetBSD: btsco.4,v 1.13 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 2006 Itronix Inc. +.\" All rights reserved. +.\" +.\" Written by Iain Hibbert for Itronix Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name of Itronix Inc. may not be used to endorse +.\" or promote products derived from this software without specific +.\" prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY ITRONIX INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ITRONIX INC. BE LIABLE FOR ANY +.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +.\" ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 29, 2014 +.Dt BTSCO 4 +.Os +.Sh NAME +.Nm btsco +.Nd Bluetooth SCO Audio +.Sh SYNOPSIS +.Cd "btsco* at bthub?" +.Cd "audio* at audiobus?" +.Sh DESCRIPTION +The +.Nm +driver provides support for Bluetooth SCO (Synchronous connection-oriented) +Audio devices through the +.Xr audio 4 +driver. +.Pp +The +.Nm +driver must be configured at run time with the +.Xr btdevctl 8 +program. +The following properties are used by the +.Nm +driver during autoconfiguration: +.Pp +.Bl -tag -width listenXX +.It local-bdaddr +Local device address. +.It remote-bdaddr +Remote device address. +.It service-name +The +.Nm +driver matches the +.Sq HF +and +.Sq HSET +services. +For the +.Sq HF +service, the +.Nm +device will, on +.Xr open 2 , +listen for incoming connections from the remote device. +Otherwise, +.Nm +will attempt to initiate a connection to the remote device. +.It rfcomm-channel +This integer value is not used directly, but will be stored and +passed via the +.Dv BTSCO_INFO +ioctl as below: +.El +.Pp +SCO connections require a baseband connection between the two devices before +they can be created. +The +.Nm +driver does not create this, but can provide information to facilitate +an application setting up a control channel prior to use, via the +.Dv BTSCO_INFO +.Xr ioctl 2 +call on the mixer device, which returns a +.Ar btsco_info +structure as follows: +.Bd -literal +#include + +struct btsco_info { + bdaddr_t laddr; /* controller bdaddr */ + bdaddr_t raddr; /* headset bdaddr */ + uint8_t channel; /* RFCOMM channel */ + int vgs; /* mixer index speaker */ + int vgm; /* mixer index mic */ +}; + +#define BTSCO_INFO _IOR('b', 16, struct btsco_info) +.Ed +.Pp +The +.Nm +driver can be configured to act in Connect or Listen mode. +In Connect mode, the +.Nm +driver will initiate a connection to the remote device on an +.Xr open 2 +call, whereas in Listen mode, +.Xr open 2 +will block until the remote device initiates the connection. +.Sh SEE ALSO +.Xr bthset 1 , +.Xr ioctl 2 , +.Xr audio 4 , +.Xr bluetooth 4 , +.Xr bthub 4 , +.Xr btdevctl 8 +.Sh HISTORY +The +.Nm +driver +was written for +.Nx 4.0 +by +.An Iain Hibbert +under the sponsorship of Itronix, Inc. +.Sh BUGS +.Nm +takes no notice of the HCI Voice Setting in the Bluetooth controller, and this +must be 0x0060 (the default) as alternate values are currently unsupported. diff --git a/static/netbsd/man4/btuart.4 b/static/netbsd/man4/btuart.4 new file mode 100644 index 00000000..d668a61d --- /dev/null +++ b/static/netbsd/man4/btuart.4 @@ -0,0 +1,64 @@ +.\" $NetBSD: btuart.4,v 1.11 2014/03/18 18:20:39 riastradh Exp $ +.\" +.\" Copyright (c) 2007 KIYOHARA Takashi +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, +.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 23, 2009 +.Dt BTUART 4 +.Os +.Sh NAME +.Nm btuart +.Nd Bluetooth HCI UART driver +.Sh SYNOPSIS +.Cd pseudo-device btuart +.Sh DESCRIPTION +The +.Nm +driver provides a +.Xr tty 4 +line discipline to send and receive Bluetooth packets over a serial +line, as described in the +.Qo +Bluetooth Host Controller Interface +.Bq Transport Layer +specification, Vol 4 part A. +.Qc +.Pp +The +.Xr btattach 8 +program is used to configure the tty line and create the +.Nm +driver instance. +.Sh SEE ALSO +.Xr bcsp 4 , +.Xr bluetooth 4 , +.Xr btattach 8 +.Sh HISTORY +The +.Nm +driver was written with reference to the BlueZ drivers +for Linux, and first appeared in +.Nx 5.0 . +.Sh AUTHORS +.An KIYOHARA Takashi Aq Mt kiyohara@kk.iij4u.or.jp diff --git a/static/netbsd/man4/bwfm.4 b/static/netbsd/man4/bwfm.4 new file mode 100644 index 00000000..8dd7eaff --- /dev/null +++ b/static/netbsd/man4/bwfm.4 @@ -0,0 +1,59 @@ +.\" $NetBSD: bwfm.4,v 1.4 2019/09/01 08:04:48 maya Exp $ +.\" +.\" Copyright (c) 2017 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd September 1, 2019 +.Dt BWFM 4 +.Os +.Sh NAME +.Nm bwfm +.Nd Broadcom and Cypress wireless network driver +.Sh SYNOPSIS +.Cd "bwfm* at uhub? port ?" +.Cd "bwfm* at pci? dev ? function ?" +.Cd "bwfm* at sdmmc?" +.Sh DESCRIPTION +The +.Nm +driver provides support for Broadcom and Cypress FullMAC network adapters. +.Sh SEE ALSO +.Xr bwi 4 , +.\".Xr ifconfig 4 , +.Xr ifmedia 4 , +.Xr usb 4 , +.Xr ifconfig.if 5 , +.Xr wpa_supplicant 8 +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Patrick Wildt +.Aq Mt patrick@blueri.se +and ported to +.Nx +by +.An Jared D. McNeill +.Aq Mt jmcneill@NetBSD.org . diff --git a/static/netbsd/man4/bwi.4 b/static/netbsd/man4/bwi.4 new file mode 100644 index 00000000..faf8c58a --- /dev/null +++ b/static/netbsd/man4/bwi.4 @@ -0,0 +1,136 @@ +.\" $NetBSD: bwi.4,v 1.16 2025/08/24 09:58:05 hgutch Exp $ +.\" +.\" Copyright (c) 2007 The DragonFly Project. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in +.\" the documentation and/or other materials provided with the +.\" distribution. +.\" 3. Neither the name of The DragonFly Project nor the names of its +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific, prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $DragonFly: src/share/man/man4/bwi.4,v 1.10 2008/07/26 16:25:40 swildner Exp $ +.\" +.Dd January 18, 2025 +.Dt BWI 4 +.Os +.Sh NAME +.Nm bwi +.Nd Broadcom BCM430x/4318 IEEE 802.11b/g wireless network driver +.Sh SYNOPSIS +.Cd "bwi* at pci? dev ? function ?" +.Cd "bwi* at cardbus? function ?" +.Cd "bwi* at sdmmc?" +.Sh DESCRIPTION +The +.Nm +driver provides support for Broadcom BCM430x/4318 wireless network adapters. +For more information on configuring this device, see +.Xr ifconfig 8 . +.Ss MIB Variables +The following per-interface variables are implemented in the +.Va hw.bwi Ns Em X +branch of the +.Xr sysctl 3 +MIB. +.Bl -tag -width ".Va txpwr_calib" +.It Va debug +Debug flags. +.It Va dwell_time +Channel dwell time during scan (msec). +.It Va fw_version +Firmware version. +.It Va led_idle +Number of ticks before LED enters idle state. +.It Va led_blink +Allow LED to blink. +.It Va txpwr_calib +Enable software TX power calibration. +.El +.Sh HARDWARE +The following cards are among those supported by the +.Nm +driver: +.Pp +.Bl -column -offset 6n -compact "Apple AirPort Extreme" "BCM4318" "Mini PCI" "b/g" +.It Em "Card Chip Bus Standard" +.It Apple AirPort Extreme b/g +.It Buffalo WLI-CB-G54 BCM4306 CardBus b/g +.It Buffalo WLI3-CB-G54L BCM4318 CardBus b/g +.It Buffalo WLI-PCI-G54S BCM4306 PCI b/g +.It Dell Wireless 1370 BCM4318 Mini PCI b/g +.It Dell Wireless 1470 BCM4318 Mini PCI b/g +.It Dell Truemobile 1400 BCM4309 Mini PCI b/g +.It Dell Latitude D505 BCM4306 PCI b/g +.It Nintendo Wii WLAN BCM4318 SDIO b/g +.El +.Sh FILES +The firmware for the adapter is not shipped with +.Nx +and must be obtained separately. +An archive with firmware files that are known to work can be found at: +.Bd -literal -offset indent +.Lk https://leaf.dragonflybsd.org/~sephe/bwi/v3.tbz +.Ed +.Pp +The firmware files conventionally reside in +.Pa /libdata/firmware/bwi +and will be loaded when the interface is brought up. +.Em Note : +the v3 subdirectory in the above firmware archive should exist +in the firmware folder. +The full list of paths checked for firmware can be found in the +.Va hw.firmware.path +.Xr sysctl 3 +node. +.Sh SEE ALSO +.Xr arp 4 , +.Xr cardbus 4 , +.Xr ifmedia 4 , +.Xr pci 4 , +.Xr ifconfig 8 , +.Xr sysctl 8 , +.Xr wiconfig 8 , +.Xr wpa_supplicant 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 6.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Sepherosa Ziehau +for Dragonfly BSD. +It was ported to +.Nx +by +.An Taylor R. Campbell Aq Mt riastradh@NetBSD.org . +.Pp +The hardware specification was reverse engineered by the people at +.Lk https://bcm-specs.sipsolutions.net/ . +Thanks go also to johill and mb on the #bcm-specs channel. +.Sh BUGS +BCM4306 and BCM4309 chips do not work properly on channel 1, 2, and 3. diff --git a/static/netbsd/man4/cac.4 b/static/netbsd/man4/cac.4 new file mode 100644 index 00000000..584c54f1 --- /dev/null +++ b/static/netbsd/man4/cac.4 @@ -0,0 +1,96 @@ +.\" $NetBSD: cac.4,v 1.14 2019/05/08 07:44:28 cnst Exp $ +.\" +.\" Copyright (c) 2000 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Andrew Doran. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 8, 2019 +.Dt CAC 4 +.Os +.Sh NAME +.Nm cac +.Nd +.Tn Compaq array controller driver +.Sh SYNOPSIS +.Cd "cac* at eisa? slot ?" +.Cd "cac* at pci? dev ? function ?" +.Sh DESCRIPTION +The +.Nm +driver provides basic message passing and DMA support for Compaq array +controllers. +Disk arrays are supported by the +.Nm ld +driver. +Monitoring of volume status is supported through the +.Xr bioctl 8 +and +.Xr envstat 8 +utilities, as well as the +.Xr powerd 8 +monitoring daemon. +.Sh HARDWARE +The +.Nm +driver provides support for the following controllers: +.Pp +.Bl -tag -width Dv -offset indent -compact +.It Tn Compaq Integrated Array +.It Tn Compaq IAES +.It Tn Compaq IDA +.It Tn Compaq IDA-2 +.It Tn Compaq RAID LC2 +.It Tn Compaq Smart Array 221 +.It Tn Compaq Smart Array 3100ES +.It Tn Compaq Smart Array 3200 +.It Tn Compaq Smart Array 4200 +.It Tn Compaq Smart Array 4250ES +.It Tn Compaq Smart Array 431 +.It Tn Compaq SMART +.It Tn Compaq SMART-2/E +.It Tn Compaq SMART-2/P +.It Tn Compaq SMART-2DH +.It Tn Compaq SMART-2SL +.El +.Sh SEE ALSO +.Xr bio 4 , +.Xr envsys 4 , +.Xr intro 4 , +.Xr ld 4 , +.Xr bioctl 8 , +.Xr envstat 8 , +.Xr powerd 8 +.Sh HISTORY +The +.Nm cac +driver first appeared in +.Nx 1.5 . +Support for volume monitoring through +.Xr bio 4 +and +.Xr envsys 4 +was added in +.Nx 5.0 . diff --git a/static/netbsd/man4/can.4 b/static/netbsd/man4/can.4 new file mode 100644 index 00000000..af00d4ad --- /dev/null +++ b/static/netbsd/man4/can.4 @@ -0,0 +1,106 @@ +.\" $NetBSD: can.4,v 1.3 2017/05/29 08:41:57 wiz Exp $ +.\" +.\" Copyright (c) 2017 Manuel Bouyer. +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 18, 2017 +.Dt CAN 4 +.Os +.Sh NAME +.Nm CAN +.Nd CAN Protocol +.Sh SYNOPSIS +.In sys/socket.h +.In netcan/can.h +.Ft int +.Fn socket AF_CAN SOCK_RAW CAN_RAW +.Sh DESCRIPTION +.Nm +is the network layer protocol used on top of CAN bus networks. +At this time only the +.Dv SOCK_RAW +socket type is supported. +This protocol layer is intended to be compatible with the Linux SocketCAN implementation. +.Ss ADDRESSING +A CAN frame consists of a 11 bits (standard frame format) or 29 bits +(extended frame format) identifier, followed by up to 8 data bytes. +The interpretation of the identifier is application-dependent, the CAN +standard itself doesn't define an addressing. +.Pp +The +.Nm +layer uses a 32bits identifier. +The 3 upper bits are used as control flags. +The extended frame format is selected by setting the +.Dv CAN_EFF_FLAG +control bit. +.Pp +The socket address is defined as +.Bd -literal +struct sockaddr_can { + u_int8_t can_len; + sa_family_t can_family; + int can_ifindex; + union { + /* transport protocol class address information */ + struct { canid_t rx_id, tx_id; } tp; + /* reserved for future CAN protocols address information */ + } can_addr; +}; +.Ed +For CAN raw sockets, the 32bits identifier is part of the message data. +The can_addr field of the sockaddr structure is not used. +.Ss MESSAGE +Raw CAN sockets use fixed-length messages defined as follow: +.Bd -literal +struct can_frame { + canid_t can_id; /* ID + EFF/RTR/ERR flags */ + uint8_t can_dlc; /* frame payload length in byte (0 .. CAN_MAX_DLEN) */ + uint8_t __pad; + uint8_t __res0; + uint8_t __res1; + uint8_t data[CAN_MAX_DLEN] __aligned(8); +}; +.Ed +The lower 11 bits (for standard frames) or 29 bits (for extended frames) are +used as the on-wire identifier. +The +.Dv CAN_EFF_FLAG +bit is set in can_id for extended frames. +The +.Dv CAN_RTR_FLAG +bit is set in can_id for remote transmission request frames. +.Sh SEE ALSO +.Xr socket 2 , +.Xr canloop 4 , +.Xr netintro 4 , +.Xr canconfig 8 , +.Pa /usr/include/netcan/can.h +.Pp +.Lk https://en.wikipedia.org/wiki/SocketCAN "SocketCAN - Wikipedia" +.Lk https://www.kernel.org/doc/Documentation/networking/can.txt "Readme file for the Controller Area Network Protocol Family" +.Sh HISTORY +The +.Nm +protocol appeared in +.Nx 8.0 . +.Sh BUGS +.Dv CANFD +and error frames are not implemented. diff --git a/static/netbsd/man4/canloop.4 b/static/netbsd/man4/canloop.4 new file mode 100644 index 00000000..06fe8f3d --- /dev/null +++ b/static/netbsd/man4/canloop.4 @@ -0,0 +1,54 @@ +.\" $NetBSD: canloop.4,v 1.3 2017/05/29 08:42:33 wiz Exp $ +.\" +.\" Copyright (c) 2017 Manuel Bouyer. +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 18, 2017 +.Dt CANLOOP 4 +.Os +.Sh NAME +.Nm canloop +.Nd software loopback CAN network interface +.Sh SYNOPSIS +.Cd "pseudo-device canloop" +.Sh DESCRIPTION +The +.Nm canloop +pseudo interface is a loopback interface for the CAN layer. +It can be used as destination by a CAN application, when no CAN +hardware is available. +Other sockets bound to the same +.Nm canloop +interface (or not bound to any interface) will receive the frames. +.Pp +.Nm canloop +interfaces can be created by using the +.Xr ifconfig 8 +.Cm create +command. +.Sh SEE ALSO +.Xr can 4 , +.Xr intro 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +device appeared in +.Nx 8.0 . diff --git a/static/netbsd/man4/cardbus.4 b/static/netbsd/man4/cardbus.4 new file mode 100644 index 00000000..6f349c8b --- /dev/null +++ b/static/netbsd/man4/cardbus.4 @@ -0,0 +1,199 @@ +.\" $NetBSD: cardbus.4,v 1.40 2021/03/11 16:43:01 nia Exp $ +.\" +.\" Copyright (c) 1999-2006 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Lennart Augustsson. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 31, 2014 +.Dt CARDBUS 4 +.Os +.Sh NAME +.Nm cardbus , +.Nm cardslot , +.Nm cbb +.Nd CardBus driver +.Sh SYNOPSIS +.Cd "cbb* at pci? dev? function ?" +.Cd "cardslot* at cbb?" +.Cd "cardbus* at cardslot?" +.Cd "pcmcia* at cardslot?" +.Cd "XX* at cardbus? function ?" +.Sh DESCRIPTION +.Nx +provides machine-independent bus support and +drivers for CardBus devices. +.Pp +The +.Cm cbb +device represents the CardBus controller. +Each controller has a number +of slots, represented by the +.Cm cardslot +devices. +A slot can have either a CardBus card or a +.Tn PCMCIA +card, which are attached with the +.Cm cardbus +or +.Cm pcmcia +devices, respectively. +.Sh SUPPORTED DEVICES +.Nx +includes the following machine-independent CardBus +drivers, sorted by function and driver name: +.Ss Network interfaces +.Bl -tag -width siisata(4) -offset indent -compact +.It Xr ath 4 +Atheros 5210/5211/5212 802.11 +.It Xr atw 4 +ADMtek ADM8211 (802.11) +.It Xr bwi 4 +Broadcom BCM430x/4318 (802.11) +.It Xr ex 4 +3Com 3c575TX and 3c575BTX +.It Xr fxp 4 +Intel i8255x +.It Xr ral 4 +Ralink Technology RT25x0 (802.11) +.It Xr re 4 +RealTek 8139C+/8169/8169S/8110S +.It Xr rtk 4 +Realtek 8129/8139 +.It Xr rtw 4 +Realtek 8180L (802.11) +.It Xr tlp 4 +DECchip 21143 +.El +.Ss Serial interfaces +.Bl -tag -width siisata(4) -offset indent -compact +.It Xr com 4 +Modems and serial cards +.El +.Ss SCSI controllers +.Bl -tag -width siisata(4) -offset indent -compact +.It Xr adv 4 +AdvanSys 1200[A,B], 9xx[U,UA] +.It Xr ahc 4 +Adaptec ADP-1480 +.It Xr njs 4 +Workbit NinjaSCSI-32 +.El +.Ss USB controllers +.Bl -tag -width siisata(4) -offset indent -compact +.It Xr ehci 4 +Enhanced Host Controller (2.0) +.It Xr ohci 4 +Open Host Controller +.It Xr uhci 4 +Universal Host Controller +.El +.Ss IEEE1394 controllers +.Bl -tag -width siisata(4) -offset indent -compact +.It Xr fwohci 4 +OHCI controller +.El +.Ss SD/MMC/SDIO controllers +.Bl -tag -width siisata(4) -offset indent -compact +.It Xr sdhc 4 +SD Host Controller +.El +.Ss Disk and tape controllers +.Bl -tag -width siisata(4) -offset indent -compact +.It Xr njata 4 +Workbit NinjaATA-32 +.It Xr siisata 4 +Silicon Image SATA-II controllers +.El +.Sh DIAGNOSTICS +.Nm cbb +devices may not be properly handled by the system BIOS on i386-family +systems. +If, on an i386-family system, the +.Nm cbb +driver reports +.Dl cbb0: NOT USED because of unconfigured interrupt +then enabling +.Bl -item -offset indent -compact +.It +.Cd options PCI_ADDR_FIXUP +.It +.Cd options PCI_BUS_FIXUP +.It +.Cd options PCI_INTR_FIXUP +.El +or (if ACPI is in use) +.Bl -item -offset indent -compact +.It +.Cd options PCI_INTR_FIXUP_DISABLED +.El +in the kernel configuration might be of use. +.Sh SEE ALSO +.Xr options 4 , +.Xr pci 4 , +.Xr pcmcia 4 , +.Xr cardbus 9 +.Sh HISTORY +The +.Nm +driver appeared in +.Nx 1.5 . +.Sh BUGS +.Ss Memory space conflicts +.Nx +maps memory on Cardbus (and therefore PCMCIA cards behind Cardbus) in +order to access the cards (including reading CIS tuples on PCMCIA +cards) and access the devices using the +.Tn RBUS +abstraction. +When the mapping does not work, PCMCIA cards are typically ignored on +insert, and Cardbus cards are recognized but nonfunctional. +On i386, the kernel has a heuristic to choose a memory address for +mapping, defaulting to 1 GB, but choosing 0.5 GB on machines with less +than 192 MB RAM and 2 GB on machines with more than 1 GB of RAM. +The intent is to use an address that is larger than available RAM, but +low enough to work; some systems seem to have trouble with +addresses requiring more than 20 address lines. +On i386, the following kernel configuration line disables the +heuristics and forces Cardbus +memory space to be mapped at 512M; this value makes Cardbus support +(including PCMCIA attachment under a cbb) work on some notebook +models, including the IBM Thinkpad 600E (2645-4AU) and the Compaq +ARMADA M700: +.Pp +.Cd options RBUS_MIN_START="0x20000000" +.Ss PCMCIA addressing choice +By default, on i386 and amd64, the kernel uses +.Dv RBUS_IO_BASE +as 0x4000 and +.Dv RBUS_IO_SIZE +as 0x2000. +On some machines, this fails, due to a requirement that these +addresses fit within 12 bits. +The following kernel options have been reported as helpful: +.Pp +.Cd options RBUS_IO_BASE="0xa00" +.Pp +.Cd options RBUS_IO_SIZE="0x00ff" diff --git a/static/netbsd/man4/carp.4 b/static/netbsd/man4/carp.4 new file mode 100644 index 00000000..50e72920 --- /dev/null +++ b/static/netbsd/man4/carp.4 @@ -0,0 +1,209 @@ +.\" $NetBSD: carp.4,v 1.8 2020/10/12 15:18:48 roy Exp $ +.\" $OpenBSD: carp.4,v 1.19 2005/08/09 09:52:12 jmc Exp $ +.\" +.\" Copyright (c) 2003, Ryan McBride. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd October 12, 2020 +.Dt CARP 4 +.Os +.Sh NAME +.Nm carp +.Nd Common Address Redundancy Protocol +.Sh SYNOPSIS +.Cd pseudo-device carp +.Sh DESCRIPTION +The +.Nm +interface is a pseudo-device which implements and controls the +CARP protocol. +.Nm +allows multiple hosts on the same local network to share a set of IP addresses. +Its primary purpose is to ensure that these +addresses are always available, but in some configurations +.Nm +can also provide load balancing functionality. +.Pp +A +.Nm +interface can be created at runtime using the +.Ic ifconfig carp Ns Ar N Ic create +command. +.Pp +To use +.Nm , +the administrator needs to configure at minimum a common virtual host ID and +virtual host IP address on each machine which is to take part in the virtual +group. +Additional parameters can also be set on a per-interface basis: +.Cm advbase +and +.Cm advskew , +which are used to control how frequently the host sends advertisements when it +is the master for a virtual host, and +.Cm pass +which is used to authenticate carp advertisements. +Finally +.Cm carpdev +is used to specify which interface the +.Nm +device attaches to. +If unspecified, the kernel attempts to set carpdev by looking for +another interface with the same subnet. +These configurations can be done using +.Xr ifconfig 8 , +or through the +.Dv SIOCSVH +ioctl. +.Pp +Additionally, there are a number of global parameters which can be set using +.Xr sysctl 8 : +.Bl -tag -width xxxxxxxxxxxxxxxxxxxxxxxxxx +.It net.inet.carp.allow +Accept incoming +.Nm +packets. +Enabled by default. +.It net.inet.carp.preempt +Allow virtual hosts to preempt each other. +It is also used to failover +.Nm +interfaces as a group. +When the option is enabled and one of the +.Nm +enabled physical interfaces +goes down, advskew is changed to 240 on all +.Nm +interfaces. +See also the first example. +Disabled by default. +.It net.inet.carp.log +Log bad +.Nm +packets. +Disabled by default. +.It net.inet.carp.arpbalance +Balance local traffic using ARP. +Disabled by default. +.El +.Sh EXAMPLES +For firewalls and routers with multiple interfaces, it is desirable to +failover all of the +.Nm +interfaces together, when one of the physical interfaces goes down. +This is achieved by the preempt option. +Enable it on both host A and B: +.Pp +.Dl # sysctl -w net.inet.carp.preempt=1 +.Pp +Assume that host A is the preferred master and 192.168.1.x/24 is +configured on one physical interface and 192.168.2.y/24 on another. +This is the setup for host A: +.Bd -literal -offset indent +# ifconfig carp0 create +# ifconfig carp0 vhid 1 pass mekmitasdigoat 192.168.1.1 \e + netmask 255.255.255.0 +# ifconfig carp1 create +# ifconfig carp1 vhid 2 pass mekmitasdigoat 192.168.2.1 \e + netmask 255.255.255.0 +.Ed +.Pp +The setup for host B is identical, but it has a higher advskew: +.Bd -literal -offset indent +# ifconfig carp0 create +# ifconfig carp0 vhid 1 advskew 100 pass mekmitasdigoat \e + 192.168.1.1 netmask 255.255.255.0 +# ifconfig carp1 create +# ifconfig carp1 vhid 2 advskew 100 pass mekmitasdigoat \e + 192.168.2.1 netmask 255.255.255.0 +.Ed +.Pp +Because of the preempt option, when one of the physical interfaces of +host A fails, advskew is adjusted to 240 on all its +.Nm +interfaces. +This will cause host B to preempt on both interfaces instead of +just the failed one. +.Pp +In order to set up an ARP balanced virtual host, it is necessary to configure +one virtual host for each physical host which would respond to ARP requests +and thus handle the traffic. +In the following example, two virtual hosts are configured on two hosts to +provide balancing and failover for the IP address 192.168.1.10. +.Pp +First the +.Nm +interfaces on Host A are configured. +The +.Cm advskew +of 100 on the second virtual host means that its advertisements will be sent +out slightly less frequently. +.Bd -literal -offset indent +# ifconfig carp0 create +# ifconfig carp0 vhid 1 pass mekmitasdigoat 192.168.1.10 \e + netmask 255.255.255.0 +# ifconfig carp1 create +# ifconfig carp1 vhid 2 advskew 100 pass mekmitasdigoat \e + 192.168.1.10 netmask 255.255.255.0 +.Ed +.Pp +The configuration for host B is identical, except the skew is on +virtual host 1 rather than virtual host 2. +.Bd -literal -offset indent +# ifconfig carp0 create +# ifconfig carp0 vhid 1 advskew 100 pass mekmitasdigoat \e + 192.168.1.10 netmask 255.255.255.0 +# ifconfig carp1 create +# ifconfig carp1 vhid 2 pass mekmitasdigoat 192.168.1.10 \e + netmask 255.255.255.0 +.Ed +.Pp +Finally, the ARP balancing feature must be enabled on both hosts: +.Pp +.Dl # sysctl -w net.inet.carp.arpbalance=1 +.Pp +When the hosts receive an ARP request for 192.168.1.10, the source IP address +of the request is used to compute which virtual host should answer the request. +The host which is master of the selected virtual host will reply to the +request, the other(s) will ignore it. +.Pp +This way, locally connected systems will receive different ARP replies and +subsequent IP traffic will be balanced among the hosts. +If one of the hosts fails, the other will take over the virtual MAC address, +and begin answering ARP requests on its behalf. +.Pp +Note: ARP balancing only works on the local network segment. +It cannot balance traffic that crosses a router, because the router +itself will always be balanced to the same virtual host. +.Sh SEE ALSO +.Xr netstat 1 , +.Xr sysctl 3 , +.Xr arp 4 , +.Xr arp 8 , +.Xr ifconfig 8 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +device first appeared in +.Ox 3.5 . diff --git a/static/netbsd/man4/cas.4 b/static/netbsd/man4/cas.4 new file mode 100644 index 00000000..d0cd141a --- /dev/null +++ b/static/netbsd/man4/cas.4 @@ -0,0 +1,109 @@ +.\" $NetBSD: cas.4,v 1.5 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 2010 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 25, 2019 +.Dt CAS 4 +.Os +.Sh NAME +.Nm cas +.Nd Cassini/Cassini+ (GigaSwift) Ethernet device driver +.Sh SYNOPSIS +.Cd "cas* at pci? dev ? function ?" +.Pp +Configuration of PHYs may also be necessary. +See +.Xr mii 4 . +.Sh DESCRIPTION +The +.Nm +driver provides support for the Sun Cassini and Cassini+ (GigaSwift) and the +National Semiconductor Saturn Ethernet hardware found in Sun UltraSPARC machines +and Sun GigaSwift PCI cards. +.Pp +Cards supported by this driver include: +.Bl -bullet -compact +.It +Sun GigaSwift Ethernet 1.0 MMF (Cassini Kuheen) +(part no.\& 501-5524) +.It +Sun GigaSwift Ethernet 1.0 UTP (Cassini) +(part no.\& 501-5902) +.It +Sun GigaSwift Ethernet UTP (GCS) +(part no.\& 501-6719) +.It +Sun Quad GigaSwift Ethernet UTP (QGE) +(part no.\& 501-6522) +.It +Sun Quad GigaSwift Ethernet PCI-X (QGE-X) +(part no.\& 501-6738) +.El +.Sh SEE ALSO +.Xr brgphy 4 , +.Xr gentbi 4 , +.Xr gphyter 4 , +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr mii 4 , +.Xr ifconfig 8 +.Rs +.%T "Cassini+ ASIC Specification" +.%A Sun Microsystems +.%U https://web.archive.org/web/20090701014334/http://www.sun.com/processors/manuals/cs_plus.pdf +.Re +.Sh HISTORY +The +.Nm +driver first appeared in +.Ox 4.1 . +.Nx +support was added in +.Nx 6.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written for +.Ox +by +.An Mark Kettenis +.Aq kettenis@openbsd.org , +based on the +.Xr gem 4 +driver, and ported to +.Nx +by +.An Julian Coleman +.Aq jdc@NetBSD.org . +.Sh BUGS +The +.Nm +driver does not support any of the advanced features of the Cassini chip. +.Pp +On the SX fibre variants of the hardware, the link may stay down if media +options apart from +.Dv autoselect +are chosen. diff --git a/static/netbsd/man4/ccd.4 b/static/netbsd/man4/ccd.4 new file mode 100644 index 00000000..89292b2c --- /dev/null +++ b/static/netbsd/man4/ccd.4 @@ -0,0 +1,161 @@ +.\" $NetBSD: ccd.4,v 1.32 2014/10/27 16:20:48 wiz Exp $ +.\" +.\" Copyright (c) 1996, 1997 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jason R. Thorpe. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" Copyright (c) 1994 Jason Downs. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS +.\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, +.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +.\" CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd November 30, 2013 +.Dt CCD 4 +.Os +.Sh NAME +.Nm ccd +.Nd Concatenated disk driver +.Sh SYNOPSIS +.Cd pseudo-device ccd +.Sh DESCRIPTION +The +.Nm +driver provides the capability of combining one or more disks/partitions +into one virtual disk. +.Pp +This document assumes that you're familiar with how to generate kernels, +how to properly configure disks and pseudo-devices in a kernel +configuration file, and how to partition disks. +.Pp +Note that the +.Sq raw +partitions of the disks +.Pa must not +be combined. +Each component partition should be offset at least one cylinder +from the beginning of the component disk. +This avoids potential conflicts between the component disk's +disklabel and the +.Nm Ns 's +disklabel. +The kernel will only allow component partitions of type +.Dv FS_CCD . +But for now, it allows partition of all types since some port +lacks support of an on-disk BSD disklabel. +The partition of +.Dv FS_UNUSED +may be rejected because device driver of component disk will refuse it. +.Pp +In order to compile in support for the +.Nm , +you must add a line similar +to the following to your kernel configuration file: +.Bd -unfilled -offset indent +pseudo-device ccd # concatenated disk devices +.Ed +.Pp +The +.Nm Ns s +are allocated dynamically as needed. +.Pp +A +.Nm +may be either serially concatenated or interleaved. +To serially concatenate the partitions, specify the interleave factor of 0. +.Pp +If a +.Nm +is interleaved correctly, a +.Dq striping +effect is achieved, which can increase performance. +.\" The optimum interleave factor is typically the size of a track, +.\" see +.\" .Dq sectors/track +.\" value in +.\" .Xr disklabel 8 +.\" output. +Since the interleave factor is expressed in units of +.Dv DEV_BSIZE , +one must account for sector sizes other than +.Dv DEV_BSIZE +in order to calculate the correct interleave. +The kernel will not allow an interleave factor less than the size +of the largest component sector divided by +.Dv DEV_BSIZE . +.Pp +Note that best performance is achieved if all component disks have the same +geometry and size. +Optimum striping cannot occur with different disk types. +.Pp +Also note that the total size of concatenated disk may vary depending on +the interleave factor even if the exact same components are concatenated. +And an old on-disk disklabel may be read after interleave factor change. +As a result, the disklabel may contain wrong partition geometry and +will cause an error when doing I/O near the end of concatenated disk. +.Pp +There is a run-time utility that is used for configuring +.Nm Ns s . +See +.Xr ccdconfig 8 +for more information. +.Sh WARNINGS +If just one (or more) of the disks in a non-mirrored +.Nm +fails, the entire file system will be lost. +.Sh FILES +.Bl -tag -width /dev/XXrXccdX -compact +.It Pa /dev/{,r}ccd* +.Nm +device special files. +.El +.Sh SEE ALSO +.Xr config 1 , +.Xr ccdconfig 8 , +.Xr fsck 8 , +.Xr MAKEDEV 8 , +.Xr mount 8 , +.Xr newfs 8 +.Sh HISTORY +The concatenated disk driver was originally written at the University of Utah. diff --git a/static/netbsd/man4/cd.4 b/static/netbsd/man4/cd.4 new file mode 100644 index 00000000..d19f6b2a --- /dev/null +++ b/static/netbsd/man4/cd.4 @@ -0,0 +1,409 @@ +.\" $NetBSD: cd.4,v 1.20 2012/06/23 20:29:06 wiz Exp $ +.\" +.\" Copyright (c) 1996 +.\" Julian Elischer . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd June 23, 2012 +.Dt CD 4 +.Os +.Sh NAME +.Nm cd +.Nd SCSI and ATAPI CD-ROM driver +.Sh SYNOPSIS +.Cd "cd* at scsibus? target ? lun ?" +.Cd "cd1 at scsibus0 target 4 lun 0" +.Cd "cd* at atapibus? drive ? flags 0x0000" +.Sh DESCRIPTION +The +.Nm cd +driver provides support for a Small Computer Systems Interface +.Pq Tn SCSI +bus and Advanced Technology Attachment Packet Interface +.Pq Tn ATAPI +Compact Disc-Read Only Memory +.Pq Tn CD-ROM +drive. +In an attempt to look like a regular disk, the +.Nm +driver synthesizes a partition table, with one partition covering the entire +.Tn CD-ROM . +It is possible to modify this partition table using +.Xr disklabel 8 , +but it will only last until the +.Tn CD-ROM +is unmounted. +In general the interfaces are similar to those described by +.Xr wd 4 +and +.Xr sd 4 . +.Pp +As the +.Tn SCSI +adapter is probed during boot, the +.Tn SCSI +bus is scanned for devices. +Any devices found which answer as `Read-only' +type devices will be `attached' to the +.Nm +driver. +.Pp +For the use of flags with ATAPI devices, see +.Xr wd 4 . +.Pp +The system utility +.Xr disklabel 8 +may be used to read the synthesized +disk label +structure, which will contain correct figures for the size of the +.Tn CD-ROM +should that information be required. +.Sh KERNEL CONFIGURATION +Any number of +.Tn CD-ROM +devices may be attached to the system regardless of system +configuration as all resources are dynamically allocated. +.Sh IOCTLS +The following +.Xr ioctl 2 +calls which apply to +.Tn SCSI +.Tn CD-ROM +drives are defined +in the header files +.In sys/cdio.h +and +.In sys/disklabel.h . +.Pp +.Bl -tag -width CDIOCREADSUBCHANNEL +.It Dv DIOCGDINFO +.It Dv DIOCSDINFO +.Pq Li "struct disklabel" +Read or write the in-core copy of the disklabel for the +drive. +The disklabel is initialized with information +read from the +.Tn SCSI +inquiry commands, and should be the same as +the information printed at boot. +This structure is defined in +.Xr disklabel 5 . +.\".It Dv CDIOCCAPABILITY +.\".Pq Li "struct ioc_capability" +.\"Retrieve information from the drive on what features it supports. +.\"The information is returned in the following structure: +.\".Bd -literal -offset indent +.\"struct ioc_capability { +.\" u_long play_function; +.\"#define CDDOPLAYTRK 0x00000001 +.\" /* Can play tracks/index */ +.\"#define CDDOPLAYMSF 0x00000002 +.\" /* Can play msf to msf */ +.\"#define CDDOPLAYBLOCKS 0x00000004 +.\" /* Can play range of blocks */ +.\"#define CDDOPAUSE 0x00000100 +.\" /* Output can be paused */ +.\"#define CDDORESUME 0x00000200 +.\" /* Output can be resumed */ +.\"#define CDDORESET 0x00000400 +.\" /* Drive can be completely reset */ +.\"#define CDDOSTART 0x00000800 +.\" /* Audio can be started */ +.\"#define CDDOSTOP 0x00001000 +.\" /* Audio can be stopped */ +.\"#define CDDOPITCH 0x00002000 +.\" /* Audio pitch can be changed */ +.\" +.\" u_long routing_function; +.\"#define CDREADVOLUME 0x00000001 +.\" /* Volume settings can be read */ +.\"#define CDSETVOLUME 0x00000002 +.\" /* Volume settings can be set */ +.\"#define CDSETMONO 0x00000100 +.\" /* Output can be set to mono */ +.\"#define CDSETSTEREO 0x00000200 +.\" /* Output can be set to stereo (def) */ +.\"#define CDSETLEFT 0x00000400 +.\" /* Output can be set to left only */ +.\"#define CDSETRIGHT 0x00000800 +.\" /* Output can be set to right only */ +.\"#define CDSETMUTE 0x00001000 +.\" /* Output can be muted */ +.\"#define CDSETPATCH 0x00008000 +.\" /* Direct routing control allowed */ +.\" +.\" u_long special_function; +.\"#define CDDOEJECT 0x00000001 +.\" /* The tray can be opened */ +.\"#define CDDOCLOSE 0x00000002 +.\" /* The tray can be closed */ +.\"#define CDDOLOCK 0x00000004 +.\" /* The tray can be locked */ +.\"#define CDREADHEADER 0x00000100 +.\" /* Can read Table of Contents */ +.\"#define CDREADENTRIES 0x00000200 +.\" /* Can read TOC Entries */ +.\"#define CDREADSUBQ 0x00000200 +.\" /* Can read Subchannel info */ +.\"#define CDREADRW 0x00000400 +.\" /* Can read subcodes R-W */ +.\"#define CDHASDEBUG 0x00004000 +.\" /* The tray has dynamic debugging */ +.\"}; +.\".Ed +.It Dv CDIOCPLAYTRACKS +.Pq Li "struct ioc_play_track" +Start audio playback given a track address and length. +The structure is defined as follows: +.Bd -literal -offset indent +struct ioc_play_track +{ + u_char start_track; + u_char start_index; + u_char end_track; + u_char end_index; +}; +.Ed +.It Dv CDIOCPLAYBLOCKS +.Pq Li "struct ioc_play_blocks" +Start audio playback given a block address and length. +The structure is defined as follows: +.Bd -literal -offset indent +struct ioc_play_blocks +{ + int blk; + int len; +}; +.Ed +.It Dv CDIOCPLAYMSF +.Pq Li "struct ioc_play_msf" +Start audio playback given a `minutes-seconds-frames' address and length. +The structure is defined as follows: +.Bd -literal -offset indent +struct ioc_play_msf +{ + u_char start_m; + u_char start_s; + u_char start_f; + u_char end_m; + u_char end_s; + u_char end_f; +}; +.Ed +.It Dv CDIOCREADSUBCHANNEL +.Pq Li "struct ioc_read_subchannel" +Read information from the subchannel at the location specified by this +structure: +.Bd -literal -offset indent +struct ioc_read_subchannel { + u_char address_format; +#define CD_LBA_FORMAT 1 +#define CD_MSF_FORMAT 2 + u_char data_format; +#define CD_SUBQ_DATA 0 +#define CD_CURRENT_POSITION 1 +#define CD_MEDIA_CATALOG 2 +#define CD_TRACK_INFO 3 + u_char track; + int data_len; + struct cd_sub_channel_info *data; +}; +.Ed +.It Dv CDIOREADTOCHEADER +.Pq Li "struct ioc_toc_header" +Return summary information about the table of contents for the mounted +.Tn CD-ROM . +The information is returned into the following structure: +.Bd -literal -offset indent +struct ioc_toc_header { + u_short len; + u_char starting_track; + u_char ending_track; +}; +.Ed +.It Dv CDIOREADTOCENTRYS +.Pq Li "struct ioc_read_toc_entry" +Return information from the table of contents entries mentioned. +(Yes, this command name is misspelled). +The argument structure is defined as follows: +.Bd -literal -offset indent +struct ioc_read_toc_entry { + u_char address_format; + u_char starting_track; + u_short data_len; + struct cd_toc_entry *data; +}; +.Ed +The requested data is written into an area of size +.Li data_len +and pointed to by +.Li data . +.It Dv CDIOCSETPATCH +.Pq Li "struct ioc_patch" +Attach various audio channels to various output channels. +The argument structure is defined thusly: +.Bd -literal -offset indent +struct ioc_patch { + u_char patch[4]; + /* one for each channel */ +}; +.Ed +.It Dv CDIOCGETVOL +.It Dv CDIOCSETVOL +.Pq Li "struct ioc_vol" +Get (set) information about the volume settings of the output channels. +The argument structure is as follows: +.Bd -literal -offset indent +struct ioc_vol +{ + u_char vol[4]; + /* one for each channel */ +}; +.Ed +.It Dv CDIOCSETMONO +Patch all output channels to all source channels. +.It Dv CDIOCSETSTEREO +Patch left source channel to the left output channel and the right +source channel to the right output channel. +.It Dv CDIOCSETMUTE +Mute output without changing the volume settings. +.It Dv CDIOCSETLEFT +.It Dv CDIOCSETRIGHT +Attach both output channels to the left (right) source channel. +.It Dv CDIOCSETDEBUG +.It Dv CDIOCCLRDEBUG +Turn on (off) debugging for the appropriate device. +.It Dv CDIOCPAUSE +.It Dv CDIOCRESUME +Pause (resume) audio play, without resetting the location of the read-head. +.It Dv CDIOCRESET +Reset the drive. +.It Dv CDIOCSTART +.It Dv CDIOCSTOP +Tell the drive to spin-up (-down) the +.Tn CD-ROM . +.It Dv CDIOCALLOW +.It Dv CDIOCPREVENT +Tell the drive to allow (prevent) manual ejection of the +.Tn CD-ROM +disc. +Not all drives support this feature. +.It Dv CDIOCEJECT +Eject the +.Tn CD-ROM . +.It Dv CDIOCLOADUNLOAD +Cause the ATAPI changer to load or unload discs. +.It Dv CDIOCCLOSE +Tell the drive to close its door and load the media. +Not all drives support this feature. +.It Dv DIOCTUR +Test unit ready - to allow userland to silently check for presence of media. +.\" +.\".It Dv CDIOCPITCH +.\".Pq Li "struct ioc_pitch" +.\"For drives that support it, this command instructs the drive to play +.\"the audio at a faster or slower rate than normal. +.\"Values of +.\".Li speed +.\"between -32767 and -1 result in slower playback; a zero value +.\"indicates normal speed; and values from 1 to 32767 give faster playback. +.\"Drives with less than 16 bits of resolution will silently +.\"ignore less-significant bits. +.\"The structure is defined thusly: +.\".Bd -literal -offset indent +.\"struct ioc_pitch +.\"{ +.\" short speed; +.\"}; +.\".Ed +.El +.Pp +In addition the general +.Xr scsi 4 +ioctls may be used with the +.Nm +driver, if used against the `whole disk' partition (i.e. +.Pa /dev/rcd0d +for the bebox and i386 port, +.Pa /dev/rcd0c +for all other ports). +.Sh NOTES +When a +.Tn CD-ROM +is changed in a drive controlled by the +.Nm +driver, then the act of changing the media will invalidate the +disklabel and information held within the kernel. +To stop corruption, all accesses to the device will be discarded +until there are no more open file descriptors referencing the device. +During this period, all new open attempts will be rejected. +When no more open file descriptors reference the device, the first +next open will load a new set of parameters (including disklabel) +for the drive. +.Pp +The audio code in the +.Nm +driver only support +.Tn SCSI-2 +standard audio commands. +Because many +.Tn CD-ROM +manufacturers have not followed the standard, there are many +.Tn CD-ROM +drives for which audio will not work. +Some work is planned to support some of the more common `broken' +.Tn CD-ROM +drives; however, this is not yet under way. +.Sh FILES +.Bl -tag -width /dev/rcd[0-9][a-h] -compact +.It Pa /dev/cd[0-9][a-h] +block mode +.Tn CD-ROM +devices +.It Pa /dev/rcd[0-9][a-h] +raw mode +.Tn CD-ROM +devices +.El +.Sh DIAGNOSTICS +None. +.Sh SEE ALSO +.Xr intro 4 , +.Xr scsi 4 , +.Xr sd 4 , +.Xr wd 4 , +.Xr disklabel 5 , +.Xr disklabel 8 +.Sh HISTORY +The +.Nm +driver appeared in +.Tn 386BSD 0.1 . +.Sh BUGS +The names of the structures used for the third argument to +.Fn ioctl +were poorly chosen, and a number of spelling errors have survived in +the names of the +.Fn ioctl +commands. diff --git a/static/netbsd/man4/cdce.4 b/static/netbsd/man4/cdce.4 new file mode 100644 index 00000000..fafa9b5f --- /dev/null +++ b/static/netbsd/man4/cdce.4 @@ -0,0 +1,145 @@ +.\" $NetBSD: cdce.4,v 1.19 2023/11/05 17:52:09 mrg Exp $ +.\" +.\" Copyright (c) 2004 Daniel Hartmeier +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" +.\" - Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" - Redistributions in binary form must reproduce the above +.\" copyright notice, this list of conditions and the following +.\" disclaimer in the documentation and/or other materials provided +.\" with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +.\" CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 5, 2023 +.Dt CDCE 4 +.Os +.Sh NAME +.Nm cdce +.Nd USB Communication Device Class Ethernet driver +.Sh SYNOPSIS +.Cd "cdce* at uhub? port ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for USB Host-to-Host (aka USB-to-USB) bridges +and USB-to-Ethernet adapters based on the USB Communication Device Class (CDC) +and Ethernet subclass, +including the following: +.Pp +.Bl -bullet -compact +.It +Acer Labs USB 2.0 Data Link +.It +Anker A7611 +.It +Club 3D Adapter LAN-Adapter (CAC-1420) +.It +DIEWU USB-DW8152 +.It +G.Mate YP3X00 +.It +Huawei E5573s-320s +.It +Motorola USBNET +.It +NetChip EthernetGadget +.It +Prolific PL-2501 +.It +Realtek RTL8152B, RTL8156, and RTL8156B Ethernet controllers +.It +Sharp Zaurus +.El +.Pp +The USB bridge appears as a regular network interface on both sides, +transporting Ethernet frames. +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Pp +USB 1.x bridges support speeds of up to 12Mbps, USB 2.0 speeds of +up to 480Mbps, and USB 3.0 speeds of up to 5Gbps. +.Pp +Packets are +received and transmitted over separate USB bulk transfer endpoints. +.Pp +The +.Nm +driver does not support different media types or options. +.Sh DIAGNOSTICS +.Bl -diag +.It "cdce%d: no union descriptor" +The driver couldn't fetch an interface descriptor from the USB +device. +For a manually added USB vendor/product, the CDCE_NO_UNION flag +can be tried to work around the missing descriptor. +.It "cdce%d: no data interface" +.It "cdce%d: could not read endpoint descriptor" +.It "cdce%d: unexpected endpoint" +.It "cdce%d: could not find data bulk in/out" +For a manually added USB vendor/product, these errors indicate +that the bridge is not compatible with the driver. +.El +.Pp +Also see +.Xr usbnet 4 +for diagnostics. +.Sh SEE ALSO +.Xr arp 4 , +.Xr intro 4 , +.Xr netintro 4 , +.Xr usb 4 , +.Xr usbnet 4 , +.Xr ifconfig.if 5 , +.Xr ifconfig 8 +.Rs +.%T "Universal Serial Bus Class Definitions for Communication Devices" +.%U http://www.usb.org/developers/devclass_docs/usbcdc11.pdf +.Re +.Rs +.%T "Data sheet Prolific PL-2501 Host-to-Host Bridge/Network Controller" +.%U http://tech.prolific.com.tw/visitor/fcabdl.asp?fid=20679530 +.Re +.Sh HISTORY +The +.Nm +device driver first appeared in +.Ox 3.6 +and +.Nx 3.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Craig Boston Aq Mt craig@tobuj.gank.org +based on the +.Xr aue 4 +driver written by +.An Bill Paul Aq Mt wpaul@windriver.com +and ported to +.Ox +by +.An Daniel Hartmeier Aq Mt dhartmei@openbsd.org . +.Sh CAVEATS +Many USB devices notoriously fail to report their class and interfaces +correctly. +Undetected products might work flawlessly when their vendor and product IDs +are added to the driver manually. diff --git a/static/netbsd/man4/cec.4 b/static/netbsd/man4/cec.4 new file mode 100644 index 00000000..14a2dad2 --- /dev/null +++ b/static/netbsd/man4/cec.4 @@ -0,0 +1,70 @@ +.\" $NetBSD: cec.4,v 1.4 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2003 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Gregory McGarry. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 24, 2003 +.Dt CEC 4 +.Os +.Sh NAME +.Nm cec +.Nd IEEE488 GPIB controller boards +.Sh SYNOPSIS +.Cd "cec* at isa? port 0x2b8 irq 5 drq 1" +.Cd "gpib* at cec?" +.Sh DESCRIPTION +The +.Nm +driver supports GPIB (IEEE488) controller boards based on the NEC uPD7210 +GPIB controller chip. The following boards are supported: +.Pp +.Bl -dash -compact -offset indent +.It +Capital Equipment Corp. IEEE488 board +.It +Keithley GPIB boards +.El +.Pp +The following GPIB boards are similar and support should be +available reasonably easily: +.Pp +.Bl -dash -compact -offset indent +.It +HAMEG HO-80 IEEE488 board +.It +National Instruments PCII board +.It +Measurement Computing (Computer Boards) ISA GPIB boards +.El +.Sh SEE ALSO +.Xr gpib 4 , +.Xr isa 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Nx 2.0 . diff --git a/static/netbsd/man4/cfb.4 b/static/netbsd/man4/cfb.4 new file mode 100644 index 00000000..2e278833 --- /dev/null +++ b/static/netbsd/man4/cfb.4 @@ -0,0 +1,54 @@ +.\" $NetBSD: cfb.4,v 1.7 2017/08/27 20:42:55 wiz Exp $ +.\" +.\" Copyright (c) 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Gregory McGarry. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 22, 2017 +.Dt CFB 4 +.Os +.Sh NAME +.Nm cfb +.Nd +PMAG-B CX colour unaccelerated 2-D framebuffer +.Sh SYNOPSIS +.Cd "cfb* at tc? slot ? offset ?" +.Cd "wsdisplay* at cfb?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the PMAG-B CX colour framebuffer for the +TURBOchannel bus. +The PMAG-B is an 8 bpp colour framebuffer capable +of running at a resolution of 1024-by-864 at 60 Hz. +.Sh SEE ALSO +.Xr mfb 4 , +.Xr px 4 , +.Xr pxg 4 , +.Xr sfb 4 , +.Xr tc 4 , +.Xr tfb 4 , +.Xr wscons 4 diff --git a/static/netbsd/man4/cgd.4 b/static/netbsd/man4/cgd.4 new file mode 100644 index 00000000..31217d19 --- /dev/null +++ b/static/netbsd/man4/cgd.4 @@ -0,0 +1,324 @@ +.\" $NetBSD: cgd.4,v 1.25 2024/09/27 12:49:41 nia Exp $ +.\" +.\" Copyright (c) 2002, 2003 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Roland C. Dowdeswell. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd September 27, 2024 +.Dt CGD 4 +.Os +.Sh NAME +.Nm cgd +.Nd cryptographic disk driver +.Sh SYNOPSIS +.Cd pseudo-device cgd +.Sh DESCRIPTION +The +.Nm +driver, configured with the +.Xr cgdconfig 8 +tool, implements a logical disk device by encrypting or decrypting disk +sectors on their way to and from a physical backing disk or partition. +.Ss Security model +As long as you keep the key secret, +.Nm +keeps the content of the disk secret from a +.Em passive +adversary, such as a thief who steals your disk or a border patrol +agent who detains you and takes a snapshot of your laptop's disk while +you are crossing a border. +.Pp +.Nm +.Em does not +detect tampering by an +.Em active +adversary who can modify the content of the backing store, such as a +man-in-the-middle between you and an +.Tn iSCSI +target, or after the border patrol returns your laptop to you. +.Ss Ciphers +The following ciphers are supported: +.Bl -tag -width "abcd" +.It Li "adiantum" (key size: 256 bits) +The Adiantum tweakable wide-block cipher. +The Adiantum tweak for each disk sector is taken to be the +little-endian encoding of the disk sector number. +.Pp +Adiantum provides the best security by encrypting entire disk sectors +at a time (512 bytes), and generally provides the best performance on +machines without CPU support for accelerating +.Tn AES . +.It Li "aes-cbc" (key sizes: 128, 192, or 256 bits) +.Tn AES +in +.Tn CBC +mode. +The +.Tn CBC +initialization vector for each disk sector is chosen to be the +encryption under +.Tn AES +of the little-endian encoding of the disk sector number. +The default key length is 128 bits. +.Tn CBC +mode is expected to provide marginally better theoretical security than +.Tn XTS +mode. +.It Li "aes-xts" (key sizes: 256 or 512 bits) +.Tn AES +in +.Tn XTS +mode. +The +.Tn XTS +tweak for each disk sector is chosen to be the little-endian encoding +of the disk sector number. +.Tn AES-XTS +uses a 256-bit or 512-bit key, composed of a pair of +.Tn AES-128 +or +.Tn AES-256 +keys. +The default key length is 256, meaning +.Tn AES-128. +.Tn XTS +mode is expected to provide marginally better theoretical performance than +.Tn CBC +mode. +.El +.Ss Obsolete Ciphers +The following obsolete ciphers are supported for compatibility with +old disks. +.Pp +.Sy WARNING: +These obsolete ciphers are implemented without timing side channel +protection, so, for example, JavaScript code in a web browser that can +measure the timing of disk activity may be able to recover the secret +key. +These are also based on 64-bit block ciphers and are therefore unsafe +for disks much larger than a gigabyte. +You should not use these except where compatibility with old disks is +necessary. +.Bl -tag -width "abcd" +.It Li "3des-cbc" (key size: 192 bits) +.Tn 3DES +.Po +Triple +.Tn DES +with +.Tn EDE3 +.Pc +in +.Tn CBC +mode. +The +.Tn CBC +initialization vector for each disk sector is chosen to be the +encryption under +.Tn 3DES +of the little-endian encoding of the disk sector number. +.Pp +Note: Internally, the +.Sq parity bits +of the 192-bit key are ignored, so there are only 168 bits of key +material, and owing to generic attacks on 64-bit block ciphers and to +meet-in-the-middle attacks on compositions of ciphers as in +.Tn EDE3 +the security is much lower than one might expect even for a 168-bit +key. +.It Li "blowfish-cbc" (key sizes: 40, 48, 56, 64, ..., 432, 440, or 448 bits) +Blowfish in +.Tn CBC +mode. +The +.Tn CBC +initialization vector for each disk sector is chosen to be the +encryption under Blowfish of the little-endian encoding of the disk +sector number. +It is strongly encouraged that keys be at least 128 bits long. +There are no performance advantages of using shorter keys. +The default key length is 128 bits. +.El +.Ss IV Methods +A very early version of +.Nm +had a bug in the +.Tn CBC Ns -based +ciphers +.Li "aes-cbc" , +.Li "3des-cbc" , +and +.Li "blowfish-cbc" : +the +.Tn CBC +initialization vector was chosen to be the +.Em eight-fold +encryption under the block cipher of the little-endian encoding of the +disk sector number, which has no impact on security but reduces +performance. +For compatibility with such disks, the +.Sq IV method +must be set to +.Li encblkno8 . +Otherwise the +.Sq IV method +should always be +.Li encblkno1 . +The parameter is meaningless for +.Li adiantum +and +.Li aes-xts . +.Sh IOCTLS +A +.Nm +responds to all of the standard disk +.Xr ioctl 2 +calls defined in +.Xr sd 4 , +and also defines the following: +.Bl -tag -width CGDIOCSET +.It Dv CGDIOCSET +Configure the +.Nm . +This +.Xr ioctl 2 +sets up the encryption parameters and points the +.Nm +at the underlying disk. +.It Dv CGDIOCCLR +Unconfigure the +.Nm . +.It Dv CGDIOCGET +Get info about the +.Nm . +.El +.Pp +These +.Xr ioctl 2 Ns 's +and their associated data structures are defined in +.In dev/cgdvar.h +header. +.Sh WARNINGS +It goes without saying that if you forget the passphrase that you used +to configure a +.Nm , +then you have irrevocably lost all of the data on the disk. +Please ensure that you are using an appropriate backup strategy. +.Sh FILES +.Bl -tag -width indentxxxxxxxxxxx +.It /dev/{,r}cgd* +.Nm +device special files. +.El +.Sh SEE ALSO +.Xr config 1 , +.Xr ioctl 2 , +.Xr sd 4 , +.Xr cgdconfig 8 , +.Xr MAKEDEV 8 +.Rs +.%A Roland C. Dowdeswell +.%A John Ioannidis +.%T The CryptoGraphic Disk Driver +.%I USENIX Association +.%B Proceedings of the FREENIX Track: 2003 USENIX Annual Technical Conference +.%P 179-186 +.%D June 9-14, 2003 +.%U https://www.usenix.org/event/usenix03/tech/freenix03/full_papers/dowdeswell/dowdeswell.pdf +.Re +.Rs +.%A Paul Crowley +.%A Eric Biggers +.%T Adiantum: length-preserving encryption for entry-level processors +.%I International Association of Cryptologic Research +.%J Transactions on Symmetric Cryptology +.%V 2018 +.%N 4 +.%P 39-61 +.%U https://doi.org/10.13154/tosc.v2018.i4.39-61 +.Re +.Rs +.%T FIPS PUB 46-3: Data Encryption Standard (DES) +.%Q United States Department of Commerce +.%I National Institute of Standards and Technology +.%O withdrawn May 19, 2005 +.%D October 25, 1999 +.%U https://csrc.nist.gov/publications/detail/fips/46/3/archive/1999-10-25 +.Re +.Rs +.%T FIPS PUB 197: Advanced Encryption Standard (AES) +.%Q United States Department of Commerce +.%I National Institute of Standards and Technology +.%D November 2001 +.%U https://csrc.nist.gov/publications/detail/fips/197/final +.Re +.Rs +.%A Morris Dworkin +.%T Recommendation for Block Cipher Modes of Operation: Methods and Techniques +.%D December 2001 +.%Q United States Department of Commerce +.%I National Institute of Standards and Technology +.%O NIST Special Publication 800-38A +.%U https://csrc.nist.gov/publications/detail/sp/800-38a/final +.Re +.Rs +.%A Morris Dworkin +.%T Recommendation for Block Cipher Modes of Operation: the XTS-AES Mode for Confidentiality on Storage Devices +.%D January 2010 +.%Q United States Department of Commerce +.%I National Institute of Standards and Technology +.%O NIST Special Publication 800-38E +.%U https://csrc.nist.gov/publications/detail/sp/800-38e/final +.Re +.Rs +.%A Bruce Schneier +.%T The Blowfish Encryption Algorithm +.%O superseded by Twofish, superseded by Threefish +.%U https://www.schneier.com/academic/blowfish +.Re +.Rs +.%A Karthikeyan Bhargavan +.%A Ga\(:etan Leurent +.%T Sweet32: Birthday attacks on 64-bit block ciphers in TLS and OpenVPN +.%U https://sweet32.info +.Re +.Sh HISTORY +The +.Nm +driver was written by Roland C. Dowdeswell for +.Nx . +The +.Nm +driver originally appeared in +.Nx 2.0 . +The +.Li aes-xts +cipher was added in +.Nx 8.0 . +The +.Li adiantum +cipher was added in +.Nx 10.0 . diff --git a/static/netbsd/man4/ch.4 b/static/netbsd/man4/ch.4 new file mode 100644 index 00000000..65a11749 --- /dev/null +++ b/static/netbsd/man4/ch.4 @@ -0,0 +1,50 @@ +.\" $NetBSD: ch.4,v 1.3 2001/09/12 18:19:16 wiz Exp $ +.\" +.Dd June 10, 1998 +.Dt CH 4 +.Os +.Sh NAME +.Nm ch +.Nd SCSI media changer driver +.Sh SYNOPSIS +.Cd "ch* at scsibus? target ? lun ?" +.Sh DESCRIPTION +The +.Nm +driver is essentially an +.Xr ioctl 2 +interface to a robot on a +.Tn SCSI +bus - a device that will change media (e.g. tapes, CD-ROMs, etc) +in and out of drives for that media. +The +.Xr chio 1 +utility program uses this interface to manipulate such robots. +.Sh FILES +.Bl -tag -width /dev/rsdXXXXX -compact +.It Pa /dev/ch Ns Ar u +.Tn SCSI +bus media changer unit +.Ar u +.El +.Pa /usr/include/sys/chio.h +.Sh DIAGNOSTICS +.Bl -diag +.It "ch%d: waiting %d seconds for changer to settle..." +Some changers require a long time to settle out, +to do tape inventory, for instance. +.It "ch%d: offline" +The changer is not responding. +.It "ch%d: warning, READ ELEMENT STATUS avail != count" +.It "ch%d: could not sense element address page" +.It "ch%d: could not sense capabilities page" +.El +.Sh SEE ALSO +.Xr chio 1 , +.Xr ioctl 2 , +.Xr cd 4 , +.Xr intro 4 , +.Xr scsi 4 , +.Xr st 4 +.Sh AUTHORS +.An Jason R. Thorpe diff --git a/static/netbsd/man4/chipsfb.4 b/static/netbsd/man4/chipsfb.4 new file mode 100644 index 00000000..b53b0d65 --- /dev/null +++ b/static/netbsd/man4/chipsfb.4 @@ -0,0 +1,47 @@ +.\" $NetBSD: chipsfb.4,v 1.6 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 2007 Michael Lorenz +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd January 24, 2012 +.Dt CHIPSFB 4 +.Os +.Sh NAME +.Nm chipsfb +.Nd Chips & Technologies 6555x based graphics chips +.Sh SYNOPSIS +.Cd "chipsfb* at pci?" +.Cd "chipsfb* at ofbus?" +.Cd "wsdisplay* at chipsfb?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the C&T 65550 and 65554 graphics controllers. +Currently it depends on the firmware (usually Open Firmware) to set up the +framebuffer, but all graphics operations used by wsdisplay use the blitter. +.Sh SEE ALSO +.Xr wscons 4 , +.Xr wsdisplay 4 +.Sh BUGS +The driver has been tested on macppc and shark only. diff --git a/static/netbsd/man4/ciphy.4 b/static/netbsd/man4/ciphy.4 new file mode 100644 index 00000000..5701d43b --- /dev/null +++ b/static/netbsd/man4/ciphy.4 @@ -0,0 +1,56 @@ +.\" $NetBSD: ciphy.4,v 1.4 2022/10/26 22:09:37 andvar Exp $ +.\" +.\" Copyright (c) 2005 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Jaromir Dolecek. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd February 20, 2005 +.Dt CIPHY 4 +.Os +.Sh NAME +.Nm ciphy +.Nd Driver for Cicada 10/100/1000 copper Ethernet PHYs +.Sh SYNOPSIS +.Cd "ciphy* at mii? phy ?" +.Sh DESCRIPTION +The +.Nm +driver supports PHYs commonly integrated on VIA Networking Technologies +VT6122 Gigabit Ethernet adapters. +.Sh SEE ALSO +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr mii 4 , +.Xr ifconfig 8 +.Sh HISTORY +Driver is ported from +.Fx +and first appeared in +.Nx 3.0 . +.Sh AUTHORS +The driver was originally written by +.An Bill Paul +.Aq wpaul@windriver.com . diff --git a/static/netbsd/man4/cir.4 b/static/netbsd/man4/cir.4 new file mode 100644 index 00000000..8764050d --- /dev/null +++ b/static/netbsd/man4/cir.4 @@ -0,0 +1,53 @@ +.\" $NetBSD: cir.4,v 1.3 2010/12/29 13:48:22 jmcneill Exp $ +.\" +.\" Copyright (c) 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Lennart Augustsson. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 29, 2010 +.Dt CIR 4 +.Os +.Sh NAME +.Nm cir +.Nd Consumer IR (remote control) driver +.Sh SYNOPSIS +.Cd "cir* at irbus?" +.Sh DESCRIPTION +The +.Nm +provides access to consumer infrared devices such as remote +control receivers and transmitters. +.Sh SEE ALSO +.Xr irframe 4 +.\" .Xr smcc 4 +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 1.6 . +.Sh BUGS +This device is not yet functional. diff --git a/static/netbsd/man4/ciss.4 b/static/netbsd/man4/ciss.4 new file mode 100644 index 00000000..507c8a15 --- /dev/null +++ b/static/netbsd/man4/ciss.4 @@ -0,0 +1,188 @@ +.\" $NetBSD: ciss.4,v 1.11 2020/07/14 17:39:19 jdolecek Exp $ +.\" Jonathan Stone, 2006. +.\" +.\" derived from: +.\" $OpenBSD: ciss.4,v 1.4 2006/01/07 21:55:02 brad Exp $ +.\" Michael Shalayeff, 2005. Public Domain. +.\" +.Dd July 14, 2020 +.Dt CISS 4 +.Os +.Sh NAME +.Nm ciss +.Nd HP/Compaq Smart ARRAY 5/6 RAID controllers +.Sh SYNOPSIS +.Cd "ciss* at pci? function ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the CISS interface implemented by fifth +and later generations of the HP/Compaq Smart ARRAY family of +controllers. +.Pp +The +.Tn CISS +interface is defined in the document entitled +.Rs +.%Q Compaq Computer Corporation +.%T "CISS Command Interface for SCSI-3 Support Open Specification, Version 1.04, Valence Number 1" +.%D 2000/11/27 +.Re +.Pp +This driver supports several Compaq and HP controllers implementing +the CISS interface, including: +.Pp +.Bl -bullet -compact +.It +Compaq Smart Array 5300 version 1 +.It +Compaq Smart Array 5300 version 2 +.It +Compaq Smart Array 5i version 1 +.It +Compaq Smart Array 5i version 2 +.It +HP Smart Array 5312 +.It +HP Smart Array 6i +.It +HP Smart Array 641 +.It +HP Smart Array 642 +.It +HP Smart Array 6400 +.It +HP Smart Array 6400 EM +.It +HP Smart Array E200 +.It +HP Smart Array E200i +.It +HP Smart Array P400 +.It +HP Smart Array P400i +.It +HP Smart Array P410i +.It +HP Smart Array P600 +.It +HP Smart Array P800 +.It +HP Smart Array V100 +.It +HP Smart Array 1 through 14 +.It +HP Smart Array P700m +.It +HP Smart Array P212 +.It +HP Smart Array P410 +.It +HP Smart Array P410i +.It +HP Smart Array P411 +.It +HP Smart Array P822 +.It +HP Smart Array P712m +.It +HP Smart Array P222 +.It +HP Smart Array P420 +.It +HP Smart Array P421 +.It +HP Smart Array P822 +.It +HP Smart Array P420i +.It +HP Smart Array P220i +.It +HP Smart Array P721i +.It +HP Smart Array P430i +.It +HP Smart Array P830i +.It +HP Smart Array P430 +.It +HP Smart Array P431 +.It +HP Smart Array P830 +.It +HP Smart Array P731m +.It +HP Smart Array P230i +.It +HP Smart Array P530 +.It +HP Smart Array P531 +.It +HP Smart Array P244br +.It +HP Smart Array P741m +.It +HP Smart Array H240ar +.It +HP Smart Array H440ar +.It +HP Smart Array P840ar +.It +HP Smart Array P440 +.It +HP Smart Array P441 +.It +HP Smart Array P841 +.It +HP Smart Array H244br +.It +HP Smart Array H240 +.It +HP Smart Array H241 +.It +HP Smart Array P246br +.It +HP Smart Array P840 +.It +HP Smart Array P542d +.It +HP Smart Array P240nr +.It +HP Smart Array H240nr +.El +.Pp +These controllers support RAID 0, RAID 1, RAID 5, JBOD, +and superpositions of those configurations. +.Pp +Although the controllers are actual RAID controllers, +the +.Nm +driver makes them look just like SCSI controllers. +All RAID configuration must be done through the controllers' BIOSes. +.Pp +Hardware from previous generations of this product family may be +supported by the +.Xr cac 4 +driver. +.Sh SEE ALSO +.Xr bio 4 , +.Xr cac 4 , +.Xr intro 4 , +.Xr pci 4 , +.Xr scsi 4 , +.Xr sd 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 3.1 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Michael Shalayeff Aq Mt mickey@openbsd.org , +and ported to +.Nx +by +.An Tonnerre Lombard Aq Mt tonnerre@netbsd.org . diff --git a/static/netbsd/man4/clcs.4 b/static/netbsd/man4/clcs.4 new file mode 100644 index 00000000..1ff976e8 --- /dev/null +++ b/static/netbsd/man4/clcs.4 @@ -0,0 +1,60 @@ +.\" $NetBSD: clcs.4,v 1.6 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 1999 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Lennart Augustsson. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 2, 2006 +.Dt CLCS 4 +.Os +.Sh NAME +.Nm clcs +.Nd Cirrus Logic CS4280 audio device driver +.Sh SYNOPSIS +.Cd "clcs* at pci? dev ? function ?" +.Cd "audio* at audiobus?" +.Cd "midi* at clcs?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the Cirrus Logic CS4280 chip. +Partial support exists for the CS461x chips, but is disabled. +Instead, the +.Xr wss 4 +or +.Xr sb 4 +drivers should be used. +.Sh SEE ALSO +.Xr audio 4 , +.Xr midi 4 , +.Xr pci 4 , +.Xr sb 4 , +.Xr wss 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.5 . diff --git a/static/netbsd/man4/clct.4 b/static/netbsd/man4/clct.4 new file mode 100644 index 00000000..c8cc2f46 --- /dev/null +++ b/static/netbsd/man4/clct.4 @@ -0,0 +1,53 @@ +.\" $NetBSD: clct.4,v 1.6 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Tatoku Ogaito +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 22, 2005 +.Dt CLCT 4 +.Os +.Sh NAME +.Nm clct +.Nd Cirrus Logic CS4281 audio device driver +.Sh SYNOPSIS +.Cd "clct* at pci? dev ? function ?" +.Cd "audio* at audiobus?" +.\" .Cd "midi* at clct?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the Cirrus Logic CS4281 chip. +.Sh SEE ALSO +.Xr ac97 4 , +.Xr audio 4 , +.\" .Xr midi 4 , +.Xr pci 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.6 . diff --git a/static/netbsd/man4/clockctl.4 b/static/netbsd/man4/clockctl.4 new file mode 100644 index 00000000..10b6ea55 --- /dev/null +++ b/static/netbsd/man4/clockctl.4 @@ -0,0 +1,133 @@ +.\" $NetBSD: clockctl.4,v 1.8 2010/03/22 18:58:31 joerg Exp $ +.\" +.\" Copyright (c) 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Emmanuel Dreyfus. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd February 19, 2009 +.Dt CLOCKCTL 4 +.Os +.Sh NAME +.Nm clockctl +.Nd Clock subsystem user control +.Sh SYNOPSIS +.Cd pseudo-device clockctl +.Sh DESCRIPTION +The +.Nm +interface brings clock control to non-root users. +Any user with write access to +.Pa /dev/clockctl +will be able to perform operations such as +.Xr settimeofday 2 , +.Xr clock_settime 2 , +.Xr adjtime 2 , +or +.Xr ntp_adjtime 2 , +which are normally restricted to the super-user. +Using the +.Nm +pseudo-device, it is possible to run daemons such as +.Xr ntpd 8 +as non-privileged users, thus reducing the security exposure if a +compromise is found in such a daemon. +.Pp +The +.Nm +pseudo-device driver provides an +.Xr ioctl 2 +call for each privileged clock-related system call. +The system call stubs in C library will use the +.Xr ioctl 2 +on +.Pa /dev/clockctl +if the special file is present and accessible, or will revert to the +plain super-user-restricted system call if the special file is not accessible. +.Pp +The following +.Xr ioctl 2 +calls are defined in +.In sys/clockctl.h : +.Bl -tag -width CLOCKCTL +.It Dv CLOCKCTL_SETTIMEOFDAY +This will run the +.Xr settimeofday 2 +system call. +Argument should be a pointer to a +.Va struct clockctl_settimeofday : +.Bd -literal +struct clockctl_settimeofday { + const struct timeval *tv; + const void *tzp; +}; +.Ed +.It Dv CLOCKCTL_CLOCK_SETTIME +This will run the +.Xr clock_settime 2 +system call. +Argument should be a pointer to a +.Va struct clockctl_clock_settime : +.Bd -literal +struct clockctl_clock_settime { + clockid_t clock_id; + struct timespec *tp; +}; +.Ed +.It Dv CLOCKCTL_ADJTIME +This will run the +.Xr adjtime 2 +system call. +Argument should be a pointer to a +.Va struct clockctl_adjtime : +.Bd -literal +struct clockctl_adjtime { + const struct timeval *delta; + struct timeval *olddelta; +}; +.Ed +.It Dv CLOCKCTL_NTP_ADJTIME +This will run the +.Xr ntp_adjtime 2 +system call. +Argument should be a pointer to a +.Va struct clockctl_ntp_adjtime : +.Bd -literal +struct clockctl_ntp_adjtime { + struct timex *tp; +.\" Following member is commented out intentionally. +.\" register_t retval; +}; +.Ed +.El +.Sh SEE ALSO +.Xr adjtime 2 , +.Xr clock_settime 2 , +.Xr ioctl 2 , +.Xr settimeofday 2 +.Sh HISTORY +.Nm +appeared in +.Nx 1.6 . diff --git a/static/netbsd/man4/cmdide.4 b/static/netbsd/man4/cmdide.4 new file mode 100644 index 00000000..7e9a3d27 --- /dev/null +++ b/static/netbsd/man4/cmdide.4 @@ -0,0 +1,75 @@ +.\" $NetBSD: cmdide.4,v 1.4 2009/10/19 18:41:08 bouyer Exp $ +.\" +.\" Copyright (c) 2003 Manuel Bouyer. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd December 13, 2003 +.Dt CMDIDE 4 +.Os +.Sh NAME +.Nm cmdide +.Nd CMD Technology and Silicon Image IDE disk controllers driver +.Sh SYNOPSIS +.Cd "cmdide* at pci? dev ? function ? flags 0x0000" +.Cd "options PCIIDE_CMD064x_DISABLE" +.Cd "options PCIIDE_CMD0646U_ENABLEUDMA" +.Sh DESCRIPTION +The +.Nm +driver supports the CMD Technology PCI0640, PCI0643, PCI0646, PCI0648, PCI0649, +and Silicon Image 0680 IDE controllers, and provides the interface with the +hardware for the +.Xr ata 4 +driver. +.Pp +The 0x0002 flag forces the +.Nm +driver to disable DMA on chipsets for which DMA would normally be +enabled. +This can be used as a debugging aid, or to work around +problems where the IDE controller is wired up to the system incorrectly. +.Sh SEE ALSO +.Xr ata 4 , +.Xr atapi 4 , +.Xr intro 4 , +.Xr pci 4 , +.Xr pciide 4 , +.Xr wd 4 , +.Xr wdc 4 +.Sh BUGS +There's no way to reliably know if a PCI064x controller is enabled or not. +If the driver finds a PCI064x, it will assume it is enabled unless the +PCIIDE_CMD064x_DISABLE option is specified in the kernel config file. +This will be a problem only if the controller has been disabled in the BIOS +and another controller has been installed and uses the ISA legacy I/O ports +and interrupts. +.Pp +The PCI0646U controller is known to be buggy with Ultra-DMA transfers, so +Ultra-DMA is disabled by default for this controller. +To enable Ultra-DMA, use the PCIIDE_CMD0646U_ENABLEUDMA option. +Ultra-DMA can eventually be disabled on a per-drive basis with config +flags, see +.Xr wd 4 . +.Pp +The timings used for the PIO and DMA modes for controllers listed above +are for a PCI bus running at 30 or 33 MHz. +This driver may not work properly on overclocked systems. diff --git a/static/netbsd/man4/cmpci.4 b/static/netbsd/man4/cmpci.4 new file mode 100644 index 00000000..41dd836a --- /dev/null +++ b/static/netbsd/man4/cmpci.4 @@ -0,0 +1,129 @@ +.\" $NetBSD: cmpci.4,v 1.9 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 2000, 2001 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Takuya SHIOZAKI . +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by ITOH Yasufumi. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 22, 2005 +.Dt CMPCI 4 +.Os +.Sh NAME +.Nm cmpci +.Nd C-Media CMI8x38 audio device driver +.Sh SYNOPSIS +.Cd "cmpci* at pci? dev ? function ?" +.Cd "audio* at audiobus?" +.Cd "mpu* at cmpci?" +.Cd "opl* at cmpci? flags 1" +.Sh DESCRIPTION +The +.Nm +device driver supports C-Media CMI8x38 based sound cards. +.Pp +The device has +SPDIF input/output interfaces, +16bit CODEC with analog mixer, +OPL3 FM Synthesizer, +and MPU401 compatible MIDI I/O port interface. +.Sh MIXER DEVICE +The mixer device of +.Nm +driver can be accessed via +.Xr mixerctl 1 +command. +The complex structure is analyzed as follows. +.Bd -literal +SPDIF in ---------------------- +#1(coax)->|spdin1 | R ----------------------- +#2(opt)-->|spdin2 spdif.input |--*->--|spdin spdif.output |--> SPDIF + -->|spdout | | -->|playback | output + | ---------------------- | | ----------------------- + --------------------<------+-* + ---------<-------------------+-+---------------------------------- + | ------------------------ | | ----------------------- | + -->|legacy spdif.output. |--+-*-->|spdout | | + -->|wave playback | ----->|spdin spdif.monitor |---- | + | ------------------------ NC-|off | | | + ---------<-- spdif ----------------------- | | + -------+------- dac ------------ ----------------- v | +wave -->|playback.mode|---->|inputs.dac|-*->|inputs.dac.mute|->----- | +playback --------------- ------------ R ----------------- | + | | + ----------------- --------------------- |mix| | +FM synthesizer -->|inputs.fmsynth |--*->|inputs.fmsynth.mute|-->----- | + ----------------- R --------------------- *->-- +CD ---------------------- --------------------------- v +LINE-IN ->|inputs.{cd,line,aux}|-*>|inputs.{cd,line,aux}.mute|->----- +AUX ---------------------- R --------------------------- | | + ------------------ | | +PC-SPK -->| inputs.speaker |----------------------------------->| + | + ------------------ | | + ------------------- ------------ ----------------- |mix| +MIC --*-->|inputs.mic.preamp|->|inputs.mic|->|inputs.mic.mute|->| | + | ------------------- ------------ ----------------- ----- + | ------------ ----------------- | + --->|record.mic|-->| | v + ------------ | record.source |-->to ----------- + *R-->| (select, mix) | recording |outputs.*|--> + ----------------- ----------- SPK + (front) +.Ed +.Pp +Note the 2nd SPDIF input exists only on CMI8738/PCI-6ch versions. +.Sh MIXER EXAMPLES +Here are examples about wave playback and SPDIF input/output ports. +.Bl -tag -width 1n +.It Playback to speaker, SPDIF input to SPDIF output +.Dl mixerctl -w playback.mode=dac spdif.output=spdin spdif.monitor=off +.It Playback to SPDIF output, SPDIF input to speaker +.Dl mixerctl -w playback.mode=spdif spdif.output=playback spdif.output.playback=wave spdif.monitor=spdin +.It SPDIF input to both SPDIF output and speaker +.Dl mixerctl -w spdif.output=spdin spdif.monitor=spdin +.It Playback to both SPDIF output and speaker +.Dl mixerctl -w playback.mode=spdif spdif.output=playback spdif.output.playback=wave spdif.monitor=spdout +.It Mix playback and SPDIF input to speaker +.Dl mixerctl -w playback.mode=dac spdif.monitor=spdin +.El +.Sh SEE ALSO +.Xr mixerctl 1 , +.Xr audio 4 , +.Xr midi 4 , +.Xr mpu 4 , +.Xr opl 4 , +.Xr pci 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.5 . +.Sh BUGS +4ch/6ch playback is not yet available. +Joystick port is not supported. +.Pp +.Dv spdif.output.playback=legacy +does not seem to work properly. diff --git a/static/netbsd/man4/cms.4 b/static/netbsd/man4/cms.4 new file mode 100644 index 00000000..6aa15b67 --- /dev/null +++ b/static/netbsd/man4/cms.4 @@ -0,0 +1,61 @@ +.\" $NetBSD: cms.4,v 1.3 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2000 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 28, 2000 +.Dt CMS 4 +.Os +.Sh NAME +.Nm cms +.Nd Creative Music System device driver +.Sh SYNOPSIS +.Cd "cms0 at isa? port 0x220" +.Cd "midi* at cms?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the Creative Music System (C/MS). +These cards were developed by Creative Labs, the same people who +designed the SoundBlaster cards. Chips were available for the +SoundBlaster to make them compatible with CMS. +.Pp +The CMS cards are only capable of playing basic notes and noises, +making them suitable for playing midi, but not much else. The output +is stereo, but the +.Nm +driver doesn't support stereo control. The cards have external volume +control, line-output and speaker. +.Pp +The base I/O port address is usually jumper-selected to 0x220. Valid +jumper settings are for 0x210, 0x220, 0x230, 0x240, 0x250 and 0x260. +There are no interrupt settings. +.Sh SEE ALSO +.Xr isa 4 , +.Xr midi 4 +.Sh HISTORY +The +.Nm +device driver appeared in +.Nx 1.5 . diff --git a/static/netbsd/man4/cnw.4 b/static/netbsd/man4/cnw.4 new file mode 100644 index 00000000..5450e96b --- /dev/null +++ b/static/netbsd/man4/cnw.4 @@ -0,0 +1,112 @@ +.\" $NetBSD: cnw.4,v 1.13 2004/09/06 12:52:54 wiz Exp $ +.\" +.\" Copyright (c) 1997 Berkeley Software Design, Inc. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that this notice is retained, +.\" the conditions in the following notices are met, and terms applying +.\" to contributors in the following notices also apply to Berkeley +.\" Software Design, Inc. +.\" +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by +.\" Berkeley Software Design, Inc. +.\" 4. Neither the name of the Berkeley Software Design, Inc. nor the names +.\" of its contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY BERKELEY SOFTWARE DESIGN, INC. ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL BERKELEY SOFTWARE DESIGN, INC. BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" PAO2 Id: cnw.4,v 1.1.1.1 1997/12/11 14:46:23 itojun Exp +.\" +.Dd January 5, 1997 +.Dt CNW 4 +.Os +.Sh NAME +.Nm cnw +.Nd +.Tn Netwave AirSurfer wireless network driver +.Sh SYNOPSIS +.Cd "cnw* at pcmcia? function ?" +.Sh DESCRIPTION +The +.Nm cnw +interface provides access to a theoretical 1 Mb/s wireless Ethernet network +based on the Netwave AirSurfer Wireless LAN (formerly known as the Xircom +Netwave Wireless LAN). +.Pp +Note that the driver does not support newer devices +such as the Netwave AirSurfer +.Dq Plus , +or the BayStack 650/660. +These devices are supported by the +.Xr awi 4 +driver. +.Pp +Netwave devices are not compatible with IEEE 802.11 wireless networks. +Also note that there are Netwave devices with different wireless frequency, +depending on the radio band plan in each country. +.Pp +The card uses 36K of I/O memory mapped to the card. +.\"The card uses 32K of I/O memory mapped to the card along with either 16 I/O ports +.\"or 4K of additional I/O memory for access to command registers. +.\"The driver currently only supports the use of the additional 4K of I/O memory. +You may need to increase memory space available to the PCMCIA controller. +See +.Xr pcmcia 4 +for details. +.Pp +In use, the cards appear to achieve up to a 420Kb/s transfer rate, though +a transfer rate between 250Kb/s and 350Kb/s is typical. +.Pp +The card operates in the 2.4GHz frequency range and is subject to interference +from microwaves, IEEE 802.11 wireless network devices, as well as earth. +For example, it seems that IEEE 802.11 channel 14 conflicts with Netwave +.Pq US frequency . +They interfere with each other if they are both operated +in the same geographic region, causing weird packet loss. +You may be able to avoid the interference with IEEE 802.11 devices, +by changing the IEEE 802.11 channel. +.Sh HARDWARE +Cards supported by the +.Nm +driver include: +.Pp +.Bl -item -offset indent +.It +Xircom CreditCard Netwave +.It +NetWave AirSurfer +.El +.Sh DIAGNOSTICS +.Bl -diag +.It "cnw0: can't map memory" +Indicates that the driver was not able to allocate enough PCMCIA bus +address space into which to map the device. +See +.Xr pcmcia 4 +and increase memory available to the PCMCIA controller. +.El +.Sh SEE ALSO +.Xr arp 4 , +.Xr awi 4 , +.Xr inet 4 , +.Xr intro 4 , +.Xr pcmcia 4 , +.Xr cnwctl 8 diff --git a/static/netbsd/man4/com.4 b/static/netbsd/man4/com.4 new file mode 100644 index 00000000..b728ca89 --- /dev/null +++ b/static/netbsd/man4/com.4 @@ -0,0 +1,191 @@ +.\" $NetBSD: com.4,v 1.23 2017/05/21 09:12:19 wiz Exp $ +.\" +.\" Copyright (c) 1990, 1991 The Regents of the University of California. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to Berkeley by +.\" the Systems Programming Group of the University of Utah Computer +.\" Science Department. +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" from: @(#)dca.4 5.2 (Berkeley) 3/27/91 +.\" +.Dd March 4, 2017 +.Dt COM 4 +.Os +.Sh NAME +.Nm com +.Nd serial communications interface for +.Tn RS-232C +.Sh SYNOPSIS +.Cd "com0 at isa? port" \&"IO_COM1\&" irq 4 +.Cd "com1 at isa? port" \&"IO_COM2\&" irq 3 +.Cd "com* at acpi?" +.Cd "com* at cardbus?" +.Cd "com* at isapnp?" +.Cd "com* at mca? slot ?" +.Cd "com* at mhzc?" +.Cd "com* at ofisa?" +.Cd "com* at pcmcia?" +.Cd "com* at pcmcom?" +.Cd "com* at pnpbios? index ?" +.Cd "com* at puc? port ?" +.Cd "com* at xirc?" +.Cd options COM_HAYESP +.Cd options PPS_SYNC +.Cd options PPS_TRAILING_EDGE +.Cd options RND_COM +.Ss Amiga +.Cd "com* at clockport?" +.Ss Arm32 +.Cd "com0 at mainbus? base 0x00210fe0" +.Cd "com1 at mainbus? base 0x00210be0" +.Cd "com0 at pxaip?" +.Ss HP 9000/300 and 400 Series +.Cd "com* at dio? scode ?" +.Cd "com* at frodo? offset ?" +.Ss HP 9000/700 and 800 Series +.Cd "com* at dino?" +.Cd "com* at gsc?" +.Cd "com* at ssio?" +.Ss IBM PowerPC 4xx +.Cd "com* at opb?" +.Ss SPARC +.Cd "com* at ebus?" +.Cd "com* at obio0" +.Ss x68k +.Cd "com0 at intio0 addr 0xefff00 intr 240" +.Cd "com1 at intio0 addr 0xefff10 intr 241" +.Sh DESCRIPTION +The +.Nm +driver provides support for NS8250-, NS16450-, and NS16550-based +.Tn EIA +.Tn RS-232C +.Pf ( Tn CCITT +.Tn V.28 ) +communications interfaces. +The NS8250 and NS16450 have single character +buffers, and the NS16550 has a 16 character buffer. +.Pp +Input and output for each line may set to one of following baud rates; +50, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, +19200, 38400, 57600, or 115200, or any other baud rate which is a factor +of 115200. +.Pp +The ttyXX devices are traditional dial-in devices; the dtyXX devices are +used for dial-out. +(See +.Xr tty 4 . ) +.Pp +.Cd options COM_HAYESP +adds support for the Hayes ESP serial board. +.Pp +.Cd options PPS_SYNC +enables code to use the Data Carrier Detect (DCD) signal line for attachment +to an external precision clock source +.Po +e.g., +.Tn GPS , +.Tn CDMA +.Pc +which generates a Pulse Per Second (PPS) signal. +This is used by +.Xr ntpd 8 +to discipline the system clock, and more accurately count/measure time. +See +.Xr options 4 +for more discussion. +.Pp +With +.Cd options RND_COM +enabled, the +.Nm +driver can be used to collect entropy for the +.Xr rnd 4 +entropy pool. +The entropy is generated from interrupt randomness. +.Ss Arm32 specific +If +.Dq flags 1 +is specified, the +.Nm +driver will not set the +.Dv MCR_IENABLE +bit on the UART. +This is mainly for use on AST multiport boards, where the +.Dv MCR_IENABLE +bit is used to control whether or not the devices use a shared +interrupt. +.Sh FILES +.Bl -tag -width Pa -compact +.It Pa /dev/dty00 +.It Pa /dev/dty01 +.It Pa /dev/dty02 +.It Pa /dev/tty00 +.It Pa /dev/tty01 +.It Pa /dev/tty02 +.El +.Sh DIAGNOSTICS +.Bl -diag +.It com%d: %d silo overflows +The input +.Dq silo +has overflowed and incoming data has been lost. +.It com%d: weird interrupt: iir=%x +The device has generated an unexpected interrupt +with the code listed. +.El +.Sh SEE ALSO +.Xr acpi 4 , +.Xr ast 4 , +.Xr cardbus 4 , +.Xr i386/pnpbios 4 , +.Xr isa 4 , +.Xr isapnp 4 , +.Xr mca 4 , +.Xr mhzc 4 , +.Xr ofisa 4 , +.Xr options 4 , +.Xr pcmcia 4 , +.Xr pcmcom 4 , +.Xr puc 4 , +.Xr pxaip 4 , +.Xr rtfps 4 , +.Xr tty 4 , +.Xr xirc 4 , +.Xr ntpd 8 +.Sh HISTORY +The +.Nm +driver was originally derived from the HP9000/300 +.Ic dca +driver. +.Sh BUGS +Data loss is possible on busy systems with unbuffered UARTs at high speed. +.Pp +The name of this driver and the constants which define the locations +of the various serial ports are holdovers from +.Tn DOS . diff --git a/static/netbsd/man4/coram.4 b/static/netbsd/man4/coram.4 new file mode 100644 index 00000000..afa06a9c --- /dev/null +++ b/static/netbsd/man4/coram.4 @@ -0,0 +1,69 @@ +.\" $NetBSD: coram.4,v 1.2 2011/08/13 22:35:27 wiz Exp $ +.\" +.\" Copyright (c) 2011 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Thomas Klausner. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 13, 2011 +.Dt CORAM 4 +.Os +.Sh NAME +.Nm coram +.Nd digital video driver for Conexant CX23885 based cards +.Sh SYNOPSIS +.Cd "coram* at pci? dev ? function ?" +.Cd "iic* at coram?" +.Sh DESCRIPTION +The +.Nm +driver provides support for digital video cards based on the +Conexant CX23885 DTV interface chips. +.Pp +Supported cards include: +.Bl -bullet -offset indent +.It +Hauppauge WinTV HVR-1250 +.El +.Sh SEE ALSO +.Xr dtv 4 , +.Xr iic 4 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Nx 6.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Jonathan A. Kollasch +.Aq jakllsch@NetBSD.org +and +.An Jared D. McNeill +.Aq jmcneill@NetBSD.org . +.Sh BUGS +No support for analog capture and for IR receivers. diff --git a/static/netbsd/man4/crypto.4 b/static/netbsd/man4/crypto.4 new file mode 100644 index 00000000..bf4cd509 --- /dev/null +++ b/static/netbsd/man4/crypto.4 @@ -0,0 +1,663 @@ +.\" $NetBSD: crypto.4,v 1.26 2017/07/03 21:30:58 wiz Exp $ +.\" +.\" Copyright (c) 2008 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Coyote Point Systems, Inc. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" +.\" +.\" Copyright (c) 2004 +.\" Jonathan Stone . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY Jonathan Stone AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL Jonathan Stone OR THE VOICES IN HIS HEAD +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd January 27, 2014 +.Dt CRYPTO 4 +.Os +.Sh NAME +.Nm crypto , +.Nm swcrypto +.Nd user-mode access to hardware-accelerated cryptography +.Sh SYNOPSIS +.Cd "hifn* at pci? dev ? function ?" +.Cd "ubsec* at pci? dev ? function ?" +.Pp +.Cd pseudo-device crypto +.Cd pseudo-device swcrypto +.Pp +.In sys/ioctl.h +.In sys/time.h +.In crypto/cryptodev.h +.Sh DESCRIPTION +The +.Nm +driver gives user-mode applications access to hardware-accelerated +cryptographic transforms, as implemented by the +.Xr opencrypto 9 +in-kernel interface. +.Pp +The +.Cm swcrypto +driver is a software-only implementation of the +.Xr opencrypto 9 +interface, and must be included to use the interface without hardware +acceleration. +.Pp +The +.Pa /dev/crypto +special device provides an +.Xr ioctl 2 +based interface. +User-mode applications should open the special device, +then issue +.Xr ioctl 2 +calls on the descriptor. +User-mode access to +.Pa /dev/crypto +is generally controlled by three +.Xr sysctl 8 +variables, +.Ic kern.usercrypto , +.Ic kern.userasymcrypto , +and +.Ic kern.cryptodevallowsoft . +See +.Xr sysctl 7 +for additional details. +.Pp +The +.Nm +device provides two distinct modes of operation: one mode for +symmetric-keyed cryptographic requests, and a second mode for +both asymmetric-key (public-key/private-key) requests, and for +modular arithmetic (for Diffie-Hellman key exchange and other +cryptographic protocols). +The two modes are described separately below. +.Sh THEORY OF OPERATION +Regardless of whether symmetric-key or asymmetric-key operations are +to be performed, use of the device requires a basic series of steps: +.Pp +.Bl -enum +.It +Open a file descriptor for the device. +See +.Xr open 2 . +.It +If any symmetric operation will be performed, +create one session, with +.Dv CIOCGSESSION , +or multiple sessions, with +.Dv CIOCNGSESSION . +Most applications will require at least one symmetric session. +Since cipher and MAC keys are tied to sessions, many +applications will require more. +Asymmetric operations do not use sessions. +.It +Submit requests, synchronously with +.Dv CIOCCRYPT +(symmetric) +or +.Dv CIOCKEY +(asymmetric) +or asynchronously with +.Dv CIOCNCRYPTM +(symmetric) +or +.Dv CIOCNFKEYM +(asymmetric). +The asynchronous interface allows multiple requests to be submitted in one +call if the user so desires. +.It +If the asynchronous interface is used, wait for results with +.Xr select 2 +or +.Xr poll 2 , +then collect them with +.Dv CIOCNCRYPTRET +(a particular request) +or +.Dv CIOCNCRYPTRETM +(multiple requests). +.It +Destroy one session with +.Dv CIOCFSESSION +or many at once with +.Dv CIOCNFSESSION . +.It +Close the device with +.Xr close 2 . +.El +.Sh SYMMETRIC-KEY OPERATION +The symmetric-key operation mode provides a context-based API +to traditional symmetric-key encryption (or privacy) algorithms, +or to keyed and unkeyed one-way hash (HMAC and MAC) algorithms. +The symmetric-key mode also permits fused operation, +where the hardware performs both a privacy algorithm and an integrity-check +algorithm in a single pass over the data: either a fused +encrypt/HMAC-generate operation, or a fused HMAC-verify/decrypt operation. +.Pp +To use symmetric mode, you must first create a session specifying +the algorithm(s) and key(s) to use; then issue encrypt or decrypt +requests against the session. +.Ss Symmetric-key privacy algorithms +Contingent upon device drivers for installed cryptographic hardware +registering with +.Xr opencrypto 9 , +as providers of a given algorithm, some or all of the following +symmetric-key privacy algorithms may be available: +.Pp +.Bl -tag -compact -width CRYPTO_RIPEMD160_HMAC -offset indent +.It CRYPTO_DES_CBC +.It CRYPTO_3DES_CBC +.It CRYPTO_BLF_CBC +.It CRYPTO_CAST_CBC +.It CRYPTO_SKIPJACK_CBC +.It CRYPTO_AES_CBC +.It CRYPTO_ARC4 +.El +.Ss Integrity-check operations +Contingent upon hardware support, some or all of the following +keyed one-way hash algorithms may be available: +.Pp +.Bl -tag -compact -width CRYPTO_RIPEMD160_HMAC -offset indent +.It CRYPTO_RIPEMD160_HMAC +.It CRYPTO_MD5_KPDK +.It CRYPTO_SHA1_KPDK +.It CRYPTO_MD5_HMAC +.It CRYPTO_SHA1_HMAC +.It CRYPTO_SHA2_256_HMAC +.It CRYPTO_SHA2_384_HMAC +.It CRYPTO_SHA2_512_HMAC +.It CRYPTO_MD5 +.It CRYPTO_SHA1 +.El +.Pp +The +.Em CRYPTO_MD5 +and +.Em CRYPTO_SHA1 +algorithms are actually unkeyed, but should be requested +as symmetric-key hash algorithms with a zero-length key. +.Ss IOCTL Request Descriptions +.\" +.Bl -tag -width CIOCKEY +.\" +.It Dv CRIOGET Fa int *fd +This operation is deprecated and will be removed after +.Nx 5.0 . +It clones the fd argument to +.Xr ioctl 2 , +yielding a new file descriptor for the creation of sessions. +Because the device now clones on open, this operation is unnecessary. +.\" +.It Dv CIOCGSESSION Fa struct session_op *sessp +.Bd -literal +struct session_op { + u_int32_t cipher; /* e.g. CRYPTO_DES_CBC */ + u_int32_t mac; /* e.g. CRYPTO_MD5_HMAC */ + + u_int32_t keylen; /* cipher key */ + void * key; + int mackeylen; /* mac key */ + void * mackey; + + u_int32_t ses; /* returns: ses # */ +}; + +.Ed +Create a new cryptographic session on a file descriptor for the device; +that is, a persistent object specific to the chosen +privacy algorithm, integrity algorithm, and keys specified in +.Fa sessp . +The special value 0 for either privacy or integrity +is reserved to indicate that the indicated operation (privacy or integrity) +is not desired for this session. +.Pp +Multiple sessions may be bound to a single file descriptor. +The session ID returned in +.Fa sessp->ses +is supplied as a required field in the symmetric-operation structure +.Fa crypt_op +for future encryption or hashing requests. +.Pp +This implementation will never return a session ID of 0 for a successful +creation of a session, which is a +.Nx +extension. +.Pp +For non-zero symmetric-key privacy algorithms, the privacy algorithm +must be specified in +.Fa sessp->cipher , +the key length in +.Fa sessp->keylen , +and the key value in the octets addressed by +.Fa sessp->key . +.Pp +For keyed one-way hash algorithms, the one-way hash must be specified +in +.Fa sessp->mac , +the key length in +.Fa sessp->mackey , +and the key value in the octets addressed by +.Fa sessp->mackeylen . +.\" +.Pp +Support for a specific combination of fused privacy and +integrity-check algorithms depends on whether the underlying +hardware supports that combination. +Not all combinations are supported +by all hardware, even if the hardware supports each operation as a +stand-alone non-fused operation. +.It Dv CIOCNGSESSION Fa struct crypt_sgop *sgop +.Bd -literal +struct crypt_sgop { + size_t count; /* how many */ + struct session_n_op * sessions; /* where to get them */ +}; + +struct session_n_op { + u_int32_t cipher; /* e.g. CRYPTO_DES_CBC */ + u_int32_t mac; /* e.g. CRYPTO_MD5_HMAC */ + + u_int32_t keylen; /* cipher key */ + void * key; + u_int32_t mackeylen; /* mac key */ + void * mackey; + + u_int32_t ses; /* returns: session # */ + int status; +}; + +.Ed +Create one or more sessions. +Takes a counted array of +.Fa session_n_op +structures in +.Fa sgop . +For each requested session (array element n), the session number is returned in +.Fa sgop->sessions[n].ses +and the status for that session creation in +.Fa sgop->sessions[n].status . +.\" +.It Dv CIOCCRYPT Fa struct crypt_op *cr_op +.Bd -literal +struct crypt_op { + u_int32_t ses; + u_int16_t op; /* e.g. COP_ENCRYPT */ + u_int16_t flags; + u_int len; + void * src, *dst; + void * mac; /* must be large enough for result */ + void * iv; +}; + +.Ed +Request a symmetric-key (or hash) operation. +The file descriptor argument to +.Xr ioctl 2 +must have been bound to a valid session. +To encrypt, set +.Fa cr_op->op +to +.Dv COP_ENCRYPT . +To decrypt, set +.Fa cr_op->op +to +.Dv COP_DECRYPT . +The field +.Fa cr_op->len +supplies the length of the input buffer; the fields +.Fa cr_op->src , +.Fa cr_op->dst , +.Fa cr_op->mac , +.Fa cr_op->iv +supply the addresses of the input buffer, output buffer, +one-way hash, and initialization vector, respectively. +.It Dv CIOCNCRYPTM Fa struct crypt_mop *cr_mop +.Bd -literal +struct crypt_mop { + size_t count; /* how many */ + struct crypt_n_op * reqs; /* where to get them */ +}; + +struct crypt_n_op { + u_int32_t ses; + u_int16_t op; /* e.g. COP_ENCRYPT */ + u_int16_t flags; + u_int len; + + u_int32_t reqid; /* request id */ + int status; /* accepted or not */ + + void *opaque; /* opaque pointer ret to user */ + u_int32_t keylen; /* cipher key - optional */ + void * key; + u_int32_t mackeylen; /* mac key - optional */ + void * mackey; + + void * src, * dst; + void * mac; + void * iv; +}; + +.Ed +This is the asynchronous version of CIOCCRYPT, which allows multiple +symmetric-key (or hash) operations to be started (see CIOCRYPT +above for the details for each operation). +.Pp +The +.Fa cr_mop->count +field specifies the number of operations provided in the +cr_mop->reqs array. +.Pp +Each operation is assigned a unique request id returned in the +.Fa cr_mop->reqs[n].reqid +field. +.Pp +Each operation can accept an opaque value from the user to be passed back +to the user when the operation completes +(e.g., to track context for the request). +The opaque field is +.Fa cr_mop->reqs[n].opaque . +.Pp +If a problem occurs with starting any of the operations then that +operation's +.Fa cr_mop->reqs[n].status +field is filled with the error code. +The failure of an operation does not +prevent the other operations from being started. +.Pp +The +.Xr select 2 +or +.Xr poll 2 +functions must be used on the device file descriptor to detect that +some operation has completed; results are then retrieved with +.Dv CIOCNCRYPTRETM . +.Pp +The +.Fa key +and +.Fa mackey +fields of the +operation structure are currently unused. +They are intended for use to +immediately rekey an existing session before processing a new request. +.It Dv CIOCFSESSION Fa u_int32_t *ses_id +Destroys the /dev/crypto session associated with the file-descriptor +argument. +.It Dv CIOCNFSESSION Fa struct crypt_sfop *sfop +.Bd -literal +struct crypt_sfop { + size_t count; + u_int32_t *sesid; +}; + +.Ed +Destroys the +.Fa sfop->count +sessions specified by the +.Fa sfop +array of session identifiers. +.El +.\" +.Sh ASYMMETRIC-KEY OPERATION +.Ss Asymmetric-key algorithms +Contingent upon hardware support, the following asymmetric +(public-key/private-key; or key-exchange subroutine) operations may +also be available: +.Pp +.Bl -column "CRK_DH_COMPUTE_KEY" "Input parameter" "Output parameter" -offset indent -compact +.It Em "Algorithm" Ta "Input parameter" Ta "Output parameter" +.It Em " " Ta "Count" Ta "Count" +.It Dv CRK_MOD_EXP Ta 3 Ta 1 +.It Dv CRK_MOD_EXP_CRT Ta 6 Ta 1 +.It Dv CRK_MOD_ADD Ta 3 Ta 1 +.It Dv CRK_MOD_ADDINV Ta 2 Ta 1 +.It Dv CRK_MOD_SUB Ta 3 Ta 1 +.It Dv CRK_MOD_MULT Ta 3 Ta 1 +.It Dv CRK_MOD_MULTINV Ta 2 Ta 1 +.It Dv CRK_MOD Ta 2 Ta 1 +.It Dv CRK_DSA_SIGN Ta 5 Ta 2 +.It Dv CRK_DSA_VERIFY Ta 7 Ta 0 +.It Dv CRK_DH_COMPUTE_KEY Ta 3 Ta 1 +.El +.Pp +See below for discussion of the input and output parameter counts. +.Ss Asymmetric-key commands +.Bl -tag -width CIOCKEY +.It Dv CIOCASYMFEAT Fa int *feature_mask +Returns a bitmask of supported asymmetric-key operations. +Each of the above-listed asymmetric operations is present +if and only if the bit position numbered by the code for that operation +is set. +For example, +.Dv CRK_MOD_EXP +is available if and only if the bit +.Pq 1 << Dv CRK_MOD_EXP +is set. +.It Dv CIOCKEY Fa struct crypt_kop *kop +.Bd -literal +struct crypt_kop { + u_int crk_op; /* e.g. CRK_MOD_EXP */ + u_int crk_status; /* return status */ + u_short crk_iparams; /* # of input params */ + u_short crk_oparams; /* # of output params */ + u_int crk_pad1; + struct crparam crk_param[CRK_MAXPARAM]; +}; + +/* Bignum parameter, in packed bytes. */ +struct crparam { + void * crp_p; + u_int crp_nbits; +}; + +.Ed +Performs an asymmetric-key operation from the list above. +The specific operation is supplied in +.Fa kop->crk_op ; +final status for the operation is returned in +.Fa kop->crk_status . +The number of input arguments and the number of output arguments +is specified in +.Fa kop->crk_iparams +and +.Fa kop->crk_iparams , +respectively. +The field +.Fa crk_param[] +must be filled in with exactly +.Fa kop->crk_iparams + kop->crk_oparams +arguments, each encoded as a +.Fa struct crparam +(address, bitlength) pair. +.Pp +The semantics of these arguments are currently undocumented. +.It Dv CIOCNFKEYM Fa struct crypt_mkop *mkop +.Bd -literal +struct crypt_mkop { + size_t count; /* how many */ + struct crypt_n_op * reqs; /* where to get them */ +}; + +struct crypt_n_kop { + u_int crk_op; /* e.g. CRK_MOD_EXP */ + u_int crk_status; /* accepted or not */ + u_short crk_iparams; /* # of input params */ + u_short crk_oparams; /* # of output params */ + u_int32_t crk_reqid; /* request id */ + struct crparam crk_param[CRK_MAXPARAM]; + void *crk_opaque; /* opaque pointer ret to user */ +}; + +.Ed +This is the asynchronous version of +.Dv CIOCKEY , +which starts one or more key operations. +See +.Dv CIOCNCRYPTM +above and +.Dv CIOCNCRYPTRETM +below +for descriptions of the +.Fa mkop>count , +.Fa mkop>reqs , +.Fa mkop>reqs[n].crk_reqid , +.Fa mkop>reqs[n].crk_status , +and +.Fa mkop>reqs[n].crk_opaque +fields of the argument structure, and result retrieval. +.El +.Ss Asynchronous status commands +When requests are submitted with the +.Dv CIOCNCRYPTM +or +.Dv CIOCNFKEYM +commands, result retrieval is asynchronous +(the submit ioctls return immediately). +Use the +.Xr select 2 +or +.Xr poll 2 +functions to determine when the file descriptor has completed operations ready +to be retrieved. +.Bl -tag -width CIOCKEY +.It Dv CIOCNCRYPTRET Fa struct crypt_result *cres +.Bd -literal +struct crypt_result { + u_int32_t reqid; /* request ID */ + u_int32_t status; /* 0 if successful */ + void * opaque; /* pointer from user */ +}; + +.Ed +Check for the status of the request specified by +.Fa cres->reqid . +This requires a linear search through all completed requests and should +be used with extreme care if the number of requests pending on this +file descriptor may be large. +.Pp +The +.Fa cres->status +field is set as follows: +.Bl -tag -width EINPROGRESS +.It 0 +The request has completed, and its results have been copied out to +the original +.Fa crypt_n_op or +.Fa crypt_n_kop +structure used to start the request. +The copyout occurs during this ioctl, +so the calling process must be the process that started the request. +.It EINPROGRESS +The request has not yet completed. +.It EINVAL +The request was not found. +.El +.Pp +Other values indicate a problem during the processing of the request. +.It Dv CIOCNCRYPTRETM Fa struct cryptret_t *cret +.Bd -literal +struct cryptret { + size_t count; /* space for how many */ + struct crypt_result * results; /* where to put them */ +}; + +.Ed +Retrieve a number of completed requests. +This ioctl accepts a count and +an array (each array element is a +.Fa crypt_result_t +structure as used by +.Dv CIOCNCRYPTRET +above) and fills the array with up to +.Fa cret->count +results of completed requests. +.Pp +This ioctl fills in the +.Fa cret->results[n].reqid field , +so that the request which has completed +may be identified by the application. +Note that the results may include +requests submitted both as symmetric and asymmetric operations. +.El +.Sh SEE ALSO +.Xr hifn 4 , +.Xr ubsec 4 , +.Xr opencrypto 9 +.Sh HISTORY +The +.Nm +driver is derived from a version which appeared in +.Fx 4.8 , +which in turn is based on code which appeared in +.Ox 3.2 . +.Pp +The "new API" for asynchronous operation with multiple basic operations +per system call (the "N" ioctl variants) was contributed by Coyote Point +Systems, Inc. and first appeared in +.Nx 5.0 . +.Sh BUGS +Error checking and reporting is weak. +.Pp +The values specified for symmetric-key key sizes to +.Dv CIOCGSESSION +must exactly match the values expected by +.Xr opencrypto 9 . +The output buffer and MAC buffers supplied to +.Dv CIOCCRYPT +must follow whether privacy or integrity algorithms were specified for +session: if you request a +.No non- Ns Dv NULL +algorithm, you must supply a suitably-sized buffer. +.Pp +The scheme for passing arguments for asymmetric requests is baroque. +.Pp +The naming inconsistency between +.Dv CRIOGET +and the various +.Dv CIOC Ns \&* +names is an unfortunate historical artifact. diff --git a/static/netbsd/man4/cs.4 b/static/netbsd/man4/cs.4 new file mode 100644 index 00000000..5d9eef30 --- /dev/null +++ b/static/netbsd/man4/cs.4 @@ -0,0 +1,66 @@ +.\" $NetBSD: cs.4,v 1.9 2024/09/07 20:33:53 rillig Exp $ +.\" +.\" Copyright (c) 1999 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 4, 1999 +.Dt CS 4 +.Os +.Sh NAME +.Nm cs +.Nd +.Tn Cirrus Logic +Crystal CS89x0 +.Tn Ethernet driver +.Sh SYNOPSIS +.Cd "cs0 at isa? port 0x300 iomem ? irq ? drq ?" +.Cd "cs* at ofisa?" +.Cd "cs* at isapnp?" +.Cd "cs* at pcmcia? function ?" +.Cd "cs0 at mainbus0" +(PM/PPC port) +.Sh DESCRIPTION +The +.Nm +driver supports +.Tn Ethernet +interfaces based on the Cirrus Logic Crystal CS8900, 8920 and 8920M +.Tn ISA +bus +.Tn Ethernet +controllers. +.Sh SEE ALSO +.Xr ifmedia 4 , +.Xr intro 4 , +.Xr isa 4 , +.Xr ofisa 4 , +.Xr ifconfig 8 +.Pp +.Lk https://www.cirrus.com/ "Cirrus Logic" +.Sh HISTORY +The +.Nm +driver +appeared in +.Nx 1.4 . diff --git a/static/netbsd/man4/cs80bus.4 b/static/netbsd/man4/cs80bus.4 new file mode 100644 index 00000000..3f131c38 --- /dev/null +++ b/static/netbsd/man4/cs80bus.4 @@ -0,0 +1,54 @@ +.\" $NetBSD: cs80bus.4,v 1.4 2008/04/30 13:10:53 martin Exp $ +.\" +.\" Copyright (c) 2003 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Gregory McGarry. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 24, 2003 +.Dt CS80BUS 4 +.Os +.Sh NAME +.Nm cs80bus +.Nd support for CS80/SS80 on the IEEE488 GPIB +.Sh SYNOPSIS +.Cd "cs80bus* at gpib?" +.Sh DESCRIPTION +The +.Nm +driver supports devices on the IEEE488 GPIB which communicate +using the CS80/SS80 protocol. +These device are primarily block devices such as tapes +and disks drives commonly found on HP/Agilent equipment. +.Sh SEE ALSO +.Xr ct 4 , +.Xr gpib 4 , +.Xr mt 4 , +.Xr rd 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Nx 2.0 . diff --git a/static/netbsd/man4/cuda.4 b/static/netbsd/man4/cuda.4 new file mode 100644 index 00000000..ffe5e01e --- /dev/null +++ b/static/netbsd/man4/cuda.4 @@ -0,0 +1,51 @@ +.\" $NetBSD: cuda.4,v 1.5 2010/02/25 17:08:01 wiz Exp $ +.\" +.\" Copyright (c) 2007 +.\" Michael Lorenz. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd May 14, 2007 +.Dt CUDA 4 +.Os +.Sh NAME +.Nm cuda +.Nd support for CUDA microcontrollers found in many Power Macintosh and +compatible computers +.Sh SYNOPSIS +.Cd "cuda* at obio?" +.Cd "nadb* at cuda?" +.Cd "iic* at cuda?" +.Sh DESCRIPTION +The +.Nm +driver provides support for the CUDA microcontroller found in many Power +Macintosh and compatible computers, mostly Old World desktop machines. +CUDA controls the real time clock, ADB, power and on some machines an +.Xr iic 9 +bus. +.Sh SEE ALSO +.Xr iic 4 , +.Xr nadb 4 , +.Xr obio 4 , +.Xr pmu 4 , +.Xr sgsmix 4 diff --git a/static/netbsd/man4/cue.4 b/static/netbsd/man4/cue.4 new file mode 100644 index 00000000..e8e23a3e --- /dev/null +++ b/static/netbsd/man4/cue.4 @@ -0,0 +1,93 @@ +.\" $NetBSD: cue.4,v 1.11 2019/08/30 09:24:19 wiz Exp $ +.\" +.\" Copyright (c) 1997, 1998, 1999, 2000 +.\" Bill Paul . All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by Bill Paul. +.\" 4. Neither the name of the author nor the names of any co-contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +.\" THE POSSIBILITY OF SUCH DAMAGE. +.\" +.\" FreeBSD: src/share/man/man4/cue.4,v 1.1 2000/01/14 03:14:47 wpaul Exp +.\" +.Dd August 24, 2019 +.Dt CUE 4 +.Os +.Sh NAME +.Nm cue +.Nd CATC USB-EL1201A USB Ethernet driver +.Sh SYNOPSIS +.Cd "cue* at uhub?" +.Sh HARDWARE +The +.Nm +driver supports the following adapters: +.Pp +.Bl -tag -width Dv -offset indent -compact +.It Tn Belkin F5U111 +.It Tn CATC Netmate +.It Tn CATC Netmate II +.El +.Sh DESCRIPTION +The +.Nm +driver provides support for USB +.Tn Ethernet +adapters based on the Computer Access Technology Corporation's USB-EL1202A +chipset. +.Pp +The USB-EL1202A supports a 512-bit multicast hash filter, single perfect +filter entry for the station address and promiscuous mode. +Packets are +received and transmitted over separate USB bulk transfer endpoints. +.Pp +The CATC adapter supports only 10Mbps half-duplex mode, hence there are no +.Xr ifmedia 4 +modes to select. +.Pp +For more information on configuring this device, see +.Xr ifconfig 8 . +.Sh DIAGNOSTICS +See +.Xr usbnet 4 +for diagnostics. +.Sh SEE ALSO +.Xr arp 4 , +.Xr netintro 4 , +.Xr usb 4 , +.Xr usbnet 4 , +.Xr ifconfig 8 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Fx 4.0 , +and in +.Nx 1.5 . +.Sh AUTHORS +The +.Nm +driver was written by +.An Bill Paul Aq Mt wpaul@ee.columbia.edu . diff --git a/static/netbsd/man4/cxdtv.4 b/static/netbsd/man4/cxdtv.4 new file mode 100644 index 00000000..aa29012c --- /dev/null +++ b/static/netbsd/man4/cxdtv.4 @@ -0,0 +1,72 @@ +.\" $NetBSD: cxdtv.4,v 1.3 2011/08/13 22:22:00 wiz Exp $ +.\" +.\" Copyright (c) 2011 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Thomas Klausner. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd August 13, 2011 +.Dt CXDTV 4 +.Os +.Sh NAME +.Nm cxdtv +.Nd digital video driver for Conexant CX2388x based cards +.Sh SYNOPSIS +.Cd "cxdtv* at pci? dev ? function ?" +.Sh DESCRIPTION +The +.Nm +driver provides support for digital video cards based on the +Conexant CX23881, CX23882, CX23883, and CX23884 multimedia bridges. +.Pp +Supported cards include: +.Bl -bullet -offset indent +.It +ATI HDTV Wonder (digital-only) +.It +pcHDTV HD5500 +.El +.Sh SEE ALSO +.Xr dtv 4 +.Sh HISTORY +The +.Nm +device driver first appeared in +.Nx 6.0 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Jonathan A. Kollasch +.Aq jakllsch@NetBSD.org +and +.An Jared D. McNeill +.Aq jmcneill@NetBSD.org . +.Sh BUGS +The +.Nm +driver lacks support for analog video capture, analog audio capture, +FM tuning, and the IR receiver. diff --git a/static/netbsd/man4/cy.4 b/static/netbsd/man4/cy.4 new file mode 100644 index 00000000..d1eec516 --- /dev/null +++ b/static/netbsd/man4/cy.4 @@ -0,0 +1,91 @@ +.\" $NetBSD: cy.4,v 1.8 2001/09/12 18:19:17 wiz Exp $ +.\" +.\" Copyright (c) 1997 Jason R. Thorpe. All rights reserved. +.\" Copyright (c) 1993 Andrew Herbert. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. The name Andrew Herbert may not be used to endorse or promote products +.\" derived from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd November 10, 1997 +.Dt CY 4 +.Os +.Sh NAME +.Nm cy +.Nd +Cyclades Cyclom-{4, 8, 16, 32}Y asynchronous comms board serial device driver +.Sh SYNOPSIS +.Cd "cy0 at isa? iomem 0xd4000 irq 12" +.Cd "cy* at pci? dev ? function ?" +.Sh DESCRIPTION +This driver provides an interface to Cyclades Cyclom-4Y, Cyclom-8Y, +Cyclom-16Y, and Cyclom-32Y asynchronous multiport serial boards. These +boards are based around Cirrus Logic CD1400 communication controllers. +.Pp +The device minor numbers for this driver are encoded as follows: +.Pp +.Bd -literal + d c c p p p p p - bits in the minor device number + + bits meaning + ---- ------- + ppppp physical serial line (i.e. port) to use: + 0-3 on Cyclom-4Y + 0-7 on Cyclom-8Y + 0-15 on Cyclom-16Y + 0-31 on Cyclom-32Y + + cc card unit number; note this limits the driver to + four cards per system + + d set to use as a dial-out line +.Ed +.Sh FLOW CONTROL +The +.Nm +driver makes use of the CD1400's automatic CTS flow control. In addition, +the CD1400's automatic input flow control can be used. This requires the +kernel configuration option +.Em CY_HW_RTS +and a special cable that exchanges the RTS and DTR lines. +.Sh DIAGNOSTICS +.Bl -diag +.It "cy%d: port %d: can't allocate tty" +There is not enough memory to allocate tty data structures. +.It "cy%d: can't allocate input buffer" +There is not enough memory to allocate the data input buffer. +.El +.Pp +Additional debugging output can be enable with the kernel configuration +option +.Em CY_DEBUG . +Diagnostic counters may be enabled with the kernel configuration option +.Em CY_DEBUG1 . +.Sh SEE ALSO +.Xr termios 4 , +.Xr tty 4 +.Sh AUTHORS +The +.Nm +driver was written by Timmo Rossi. +.Sh BUGS +Support for the Cyclom-32Y has not been tested. diff --git a/static/netbsd/man4/cypide.4 b/static/netbsd/man4/cypide.4 new file mode 100644 index 00000000..9a9887f2 --- /dev/null +++ b/static/netbsd/man4/cypide.4 @@ -0,0 +1,58 @@ +.\" $NetBSD: cypide.4,v 1.3 2009/10/19 18:41:08 bouyer Exp $ +.\" +.\" Copyright (c) 2003 Manuel Bouyer. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd October 8, 2003 +.Dt CYPIDE 4 +.Os +.Sh NAME +.Nm cypide +.Nd Cypress IDE disk controllers driver +.Sh SYNOPSIS +.Cd "cypide* at pci? dev ? function ? flags 0x0000" +.Sh DESCRIPTION +The +.Nm +driver supports the Cypress 82C693 IDE controllers, and provides the +interface with the hardware for the +.Xr ata 4 +driver. +.Pp +The 0x0002 flag forces the +.Nm +driver to disable DMA on chipsets for which DMA would normally be +enabled. +This can be used as a debugging aid, or to work around +problems where the IDE controller is wired up to the system incorrectly. +.Sh SEE ALSO +.Xr ata 4 , +.Xr atapi 4 , +.Xr intro 4 , +.Xr pci 4 , +.Xr pciide 4 , +.Xr wd 4 , +.Xr wdc 4 +.Sh BUGS +The timings used for the PIO and DMA modes for controllers listed above +are for a PCI bus running at 30 or 33 MHz. +This driver may not work properly on overclocked systems. diff --git a/static/netbsd/man4/cz.4 b/static/netbsd/man4/cz.4 new file mode 100644 index 00000000..59b6c4fe --- /dev/null +++ b/static/netbsd/man4/cz.4 @@ -0,0 +1,128 @@ +.\" $NetBSD: cz.4,v 1.7 2014/03/18 18:20:39 riastradh Exp $ +.\" +.\" Copyright (c) 2000 Zembu Labs, Inc. +.\" All rights reserved. +.\" +.\" Author: Jason R. Thorpe +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by Zembu Labs, Inc. +.\" 4. Neither the name of Zembu Labs nor the names of its employees may +.\" be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY ZEMBU LABS, INC. ``AS IS'' AND ANY EXPRESS +.\" OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WAR- +.\" RANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DIS- +.\" CLAIMED. IN NO EVENT SHALL ZEMBU LABS BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd May 17, 2000 +.Dt CZ 4 +.Os +.Sh NAME +.Nm cz +.Nd Cyclades-Z series multi-port serial adapter device driver +.Sh SYNOPSIS +.Cd "cz* at pci? dev ? function ?" +.Sh DESCRIPTION +The +.Nm +device driver supports the Cyclades-Z series of multi-port serial adapters. +The Cyclades-Z is an intelligent serial controller comprising: +.Bl -bullet -offset indent +.It +PLX9060ES PCI bus interface +.It +Xilinx XC5204 FPGA +.It +IDT R3052 MIPS CPU +.El +.Pp +The MIPS CPU runs firmware provided by the device driver. Communication +with the MIPS is performed by modifying data structures located in board +local RAM or host RAM. +.Pp +The Cyclades-Z comes in three basic flavors: +.Bl -bullet -offset indent +.It +Cyclades-8Zo rev. 1 -- This is an older 8-port board with no FPGA. The +serial ports are provided by an octopus cable. +.It +Cyclades-8Zo rev. 2 -- This is the newer 8-port board. The serial ports +are provided by an octopus cable. +.It +Cyclades-Ze -- This is the expandable version of the Cyclades-Z. It uses +an HD-50 SCSI cable to connect the board to a 1U rack mountable serial +expansion box. Each box has 16 RJ45 serial ports, and up to 4 boxes may +be chained together, for a total of 64 ports. Boxes 3 and 4 require their +own external power supply, otherwise the firmware will refuse to start +(as it cannot communicate with the UARTs in those boxes). +.El +.Pp +The Cyclades-Z has several features to improve performance under +high serial I/O load: +.Bl -bullet -offset indent +.It +The board may operate in interrupt-driven mode or polled mode to reduce +interrupt load. +.It +Each channel has a large input and output buffer. +.It +Each channel may be programmed to generate an interrupt based on +reception of a specific character, e.g. a PPP End-Of-Frame character. +.It +The MIPS CPU on the board performs all flow-control handling. +.El +.Sh FILES +.Bl -tag -width Pa -compact +.It Pa /dev/ttyCZnnnn -- dial-in (normal) TTY device +.It Pa /dev/dtyCZnnnn -- dial-out TTY device +.El +.\" .Sh DIAGNOSTICS +.\" XXX too be done. +.Sh SEE ALSO +.Xr pci 4 , +.Xr termios 4 , +.Xr tty 4 +.Sh HISTORY +The +.Nm +driver first appeared in +.Nx 1.5 . +.Sh AUTHORS +The +.Nm +driver was written by +.An Jason R. Thorpe Aq Mt thorpej@zembu.com +and +.An Bill Studenmund Aq Mt wrstuden@zembu.com +of Zembu Labs, Inc. +.Sh BUGS +The +.Nm +driver does not currently implement communication via host RAM. While +this may improve performance by reducing the number of PCI memory +space read/write cycles, it is not straightforward to implement with +the current +.Xr bus_dma 9 +API. +.Pp +Interrupt mode has not been tested. +.Pp +There is no support for reading or writing the EEPROM connected to +the PLX PCI bus controller. diff --git a/static/netbsd/man4/dbcool.4 b/static/netbsd/man4/dbcool.4 new file mode 100644 index 00000000..51acdda7 --- /dev/null +++ b/static/netbsd/man4/dbcool.4 @@ -0,0 +1,264 @@ +.\" $NetBSD: dbcool.4,v 1.11 2016/06/09 22:05:38 abhinav Exp $ +.\" +.\" Copyright (c) 2008 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Paul Goyette. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd June 10, 2016 +.Dt DBCOOL 4 +.Os +.Sh NAME +.Nm dbcool , +.Nm adm1027 , +.Nm adm1030 , +.Nm adm1031 , +.Nm adt7463 , +.Nm adt7466 , +.Nm adt7467 , +.Nm adt7468 , +.Nm adt7473 , +.Nm adt7475 , +.Nm adt7476 , +.Nm adt7490 , +.Nm emc6d103s +.Nd dbCool(tm) family of environmental monitors and fan controllers +.Sh SYNOPSIS +.Cd "dbcool* at ki2c?" +.Cd "dbcool* at iic? addr 0x2e" +.Sh DESCRIPTION +The +.Nm +driver provides support for the +.Tn Analog Devices +dbCool and the +.Tn SMSC +EMC6D103S environmental monitor chips to be used with the +.Xr envsys 4 +API. +.Pp +These chips support up to fifteen sensors. +Not all of the following sensors are supported on all chips. +.Bl -column "Sensor" "Units" "Typical" -offset indent +.It Sy "Sensor" Ta Sy "Units" Ta Sy "Typical Use" +.It Li "l_temp" Ta "uK" Ta "local chip temperature" +.It Li "r1_temp" Ta "uK" Ta "CPU temperature" +.It Li "r2_temp" Ta "uK" Ta "GPU temperature" +.It Li "Vccp" Ta "uV DC" Ta "CPU Vcore" +.It Li "Vcc" Ta "uV DC" Ta "Chip's supply voltage" +.It Li "2.5V" Ta "uV DC" Ta "2.5V supply" +.It Li "5V" Ta "uV DC" Ta "5V supply" +.It Li "12V" Ta "uV DC" Ta "12V supply" +.It Li "Vtt" Ta "uV DC" Ta "PECI ref. voltage (2.25V ref, ADT7490 only)" +.It Li "Imon" Ta "uV DC" Ta "Current monitor (2.25V ref, ADT7490 only)" +.It Li "AIN1" Ta "uV DC" Ta "Analog In (2.25V ref, ADT7466 only)" +.It Li "AIN2" Ta "uV DC" Ta "Analog In (2.25V ref, ADT7466 only)" +.It Li "fan1" Ta "RPM" Ta "Chassis Fan" +.It Li "fan2" Ta "RPM" Ta "Chassis Fan" +.It Li "fan3" Ta "RPM" Ta "Chassis Fan" +.It Li "fan4" Ta "RPM" Ta "Chassis Fan" +.It Li "VID" Ta "(none)" Ta "CPU VID code (selected chips only)" +.El +.Pp +Each temperature and voltage sensor has programmable hardware +high- and low-limits; fan sensors have only a low-limit. +These limits can be set using the +.Xr envstat 8 +utility. +Due to hardware limitations, the minimum permissible value for the fan +speed low-limits is 83 RPM. +.Pp +Temperature sensors also have +.Em Tmin , +.Em Trange , +.Em Thyst , +and +.Em Ttherm +.Xr sysctl 8 +variables; these values are used by the fan speed controllers. +Their values are in units of degC, since this is the unit which is +programmed into the device registers. +.Pp +All members of the dbCool family support Pulse-Width Modulated (PWM) +fan speed control based on temperature thresholds - the fan will spin up +when its associated thermal sensor(s) exceeds its configured +.Em Tmin +value. +The fan will go faster as the temperature rises, and will slow down +as the temperature falls. +If the temperature exceeds the sensor's +.Em Ttherm +value, the THERM signal will be asserted, and if enabled the fan will +run at full speed. +The fan will be turned off when the sensor(s) that triggered it +reports a temperature which is at least +.Em Thyst +degrees below its +.Em Tmin +threshold. +.Pp +Each fan controller is programmable using the following +.Xr sysctl 8 +variables. +.Bd -literal -offset indent +hw.dbcool0.fan_ctl_0.behavior +hw.dbcool0.fan_ctl_0.min_duty +hw.dbcool0.fan_ctl_0.max_duty +hw.dbcool0.fan_ctl_0.cur_duty +.Ed +.Pp +The +.Em behavior +variable controls the selection of temperature sensors associated with +the fan controller. +When the associated temperature sensor reaches its +.Em Tmin +value, the fan controller starts the fan at its minimum duty cycle; +when the associated temperature sensor reaches its +.Em Ttherm +value and asserts the THERM signal (or if an external THERM signal is +asserted), the fan controller sets the fan speed to a 100% duty cycle. +Between these two settings, each temperature sensor is used to calculate +a duty cycle linearly based on the slope defined by the temperature sensor's +.Em range +variable. +When the associated temperature falls at least +.Em Thyst +degrees below its +.Em Tmin +value, the fan controller will turn off the fan. +(On the ADM1030, the +value for +.Em Thyst +is fixed at 5 degC.) +.Pp +Valid values for the +.Em behavior +variable are: +.Bd -literal -offset indent +local (not available on ADM1030) +remote1 +remote2 (not available on ADM1030) +local+remote2 (not available on ADM1030) +all-temps +full-speed (not available on ADM1030) +manual +disabled +.Ed +.Pp +When the +.Em behavior +variable is set to +.Dq manual , +the +.Em cur-duty +variable becomes user-writable and can be set to any value between 0 and +100 inclusive to control the fan's duty cycle manually. +In all other +.Em behavior +modes, the +.Em cur-duty +variable is read-only and updates are ignored. +.Pp +The +.Em min-duty +and +.Em max-duty +variables define the range over which the fan controller will manage the +fan's duty cycle. +On the ADM1030, these values are not separately controllable. +The +.Em max-duty +is fixed at 100%, and the +.Em cur-duty +variable is used to specify the minimum duty cycle when the fan +controller is running in automatic mode. +.Pp +Note that the duty-cycle value does not directly correspond to the fan's +speed. +That is, a 33% duty cycle does not mean that the fan runs at 33% +of its maximum speed; in actuality, a 33% duty cycle drives the +fan at a speed close to 50% of its maximum. +Fan speed correlates approximately to the square root of the duty +cycle. +.Sh EXAMPLES +The +.Xr envstat 8 +utility can be used to determine the sensors supported: +.Bd -literal -offset indent + Current CritMax WarnMax WarnMin CritMin Unit + l_temp: 44.250 degC +r1_temp: 41.250 degC +r2_temp: N/A + Vccp: 0.002 V + Vcc: 3.351 V + fan1: N/A + fan2: N/A + fan3: N/A + fan4: N/A +.Ed +.Pp +Using this information, the following commands in +.Pa /etc/envsys.conf +will set appropriate limits for CPU temperature and chip supply +voltage, and powerd will be notified if the limits are exceeded: +.Bd -literal -offset indent +dbcool0 { + sensor1 { + warning-max = 60C; + critical-max = 65C; + } + sensor4 { + critical-min = 3.1; + warning-min = 3.2; + critical-max = 3.5; + } +} +.Ed +.Sh SEE ALSO +.Xr envsys 4 , +.Xr iic 4 , +.Xr envstat 8 , +.Xr powerd 8 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +device appeared in +.Nx 5.0 . +.Sh BUGS +Although the sensor limit registers can be programmed, there is currently +no use of the dbCool chips' ability to generate an SMBus interrupt when the +limits are exceeded. +Limit checking and event generation are done in software, and are performed +only when the sensor values are polled and refreshed. +.Pp +The ADT7466 chip, although officially a member of the dbCool family, is +programmed quite differently. +The fan controllers on this chip are not currently implemented. +.Pp +The PECI (Processor Environment Control Interface) temperature sensors +and the associated PWM behavior modes on the ADT7490 are not currently +supported. diff --git a/static/netbsd/man4/ddb.4 b/static/netbsd/man4/ddb.4 new file mode 100644 index 00000000..d88f2aeb --- /dev/null +++ b/static/netbsd/man4/ddb.4 @@ -0,0 +1,1739 @@ +.\" $NetBSD: ddb.4,v 1.206 2026/03/21 16:44:03 uwe Exp $ +.\" +.\" Copyright (c) 1997 - 2019 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Luke Mewburn +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" --- +.\" This manual page was derived from a -man.old document which bore +.\" the following copyright message: +.\" --- +.\" +.\" Mach Operating System +.\" Copyright (c) 1991,1990 Carnegie Mellon University +.\" All Rights Reserved. +.\" +.\" Permission to use, copy, modify and distribute this software and its +.\" documentation is hereby granted, provided that both the copyright +.\" notice and this permission notice appear in all copies of the +.\" software, derivative works or modified versions, and any portions +.\" thereof, and that both notices appear in supporting documentation. +.\" +.\" CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" +.\" CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR +.\" ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. +.\" +.\" Carnegie Mellon requests users of this software to return to +.\" +.\" Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU +.\" School of Computer Science +.\" Carnegie Mellon University +.\" Pittsburgh PA 15213-3890 +.\" +.\" any improvements or extensions that they make and grant Carnegie Mellon +.\" the rights to redistribute these changes. +.\" +.Dd March 15, 2026 +.Dt DDB 4 +.Os +.Sh NAME +.Nm ddb +.Nd in-kernel debugger +.Sh SYNOPSIS +.Cd options DDB +.Pp +To enable history editing: +.Cd options DDB_HISTORY_SIZE=integer +.Pp +To disable entering +.\" XXX: hack; .Nm automatically introduces newline in SYNOPSIS +.Ic ddb +upon kernel panic: +.Cd options DDB_ONPANIC=0 +.Pp +To enable teeing all +.\" XXX: hack; .Nm automatically introduces newline in SYNOPSIS +.Ic ddb +output to the kernel msgbuf: +.Cd options DDB_TEE_MSGBUF=1 +.Pp +To specify commands which will be executed on each entry to +.Ic ddb : +.Cd options DDB_COMMANDONENTER="trace;show registers" +In this case, "trace" and then "show registers" will be executed automatically. +.Pp +To enable extended online help: +.Cd options DDB_VERBOSE_HELP . +.Sh DESCRIPTION +.Nm +is the in-kernel debugger. +It may be entered at any time via a special key sequence, and +optionally may be invoked when the kernel panics. +.Sh ENTERING THE DEBUGGER +Unless +.Dv DDB_ONPANIC +is set to 0, +.Nm +will be activated whenever the kernel would otherwise panic. +.Pp +.Nm +may also be activated from the console. +In general, sending a break on a serial console will activate +.Nm . +There are also key sequences for each port that will activate +.Nm +from the keyboard: +.Bl -tag -offset indent -width "xen domU" -compact +.It alpha +-- on PC style keyboards. +.It amd64 +-- +.It "" + on serial console. +.It amiga +-- +.It atari +-- +.It evbarm +-- on PC style keyboards. +.It "" + on serial console. +.It "" +Some models: ++++++ +(five plus signs) on serial console. +.It hp300 +- +.It hpcarm +-- +.It hpcmips +-- +.It hpcsh +-- +.It hppa +-- on PC style keyboards. +.It "" ++++++ +(five plus signs) on PDC console +.It "" + on serial console. +.It i386 +-- +.It "" + on serial console. +.It mac68k +-, or the Interrupt switch. +.It macppc +Some models: +-