From 4b6463d8c34966f78642ef938dfd11d24e453409 Mon Sep 17 00:00:00 2001 From: Lucas Holt Date: Mon, 25 Nov 2024 13:54:26 -0500 Subject: [PATCH] Clean up man pages. sync up some changes from freebsd since merge --- lib/libc/Makefile | 4 - lib/libc/gen/getentropy.c | 10 +- libexec/rc/rc.conf | 1 + libexec/rc/rc.d/ipfilter | 8 +- libexec/rtld-elf/arm/reloc.c | 7 +- sbin/ipf/libipf/load_hashnode.c | 23 +- sbin/ipf/libipf/load_poolnode.c | 27 +- share/man/man4/Makefile | 8 +- share/man/man4/adv.4 | 226 - share/man/man4/adw.4 | 104 - share/man/man4/aha.4 | 122 - share/man/man4/alc.4 | 6 +- share/man/man4/altq.4 | 2 +- share/man/man4/bktr.4 | 258 - share/man/man4/bt.4 | 174 - share/man/man4/cmx.4 | 126 - share/man/man4/cy.4 | 257 - share/man/man4/de.4 | 157 - share/man/man4/dpt.4 | 109 - share/man/man4/ed.4 | 407 - share/man/man4/ena.4 | 16 +- share/man/man4/geom_fox.4 | 223 - share/man/man4/hme.4 | 158 - share/man/man4/ice.4 | 5 +- share/man/man4/igc.4 | 15 - share/man/man4/{ixgbe.4 => ix.4} | 87 +- share/man/man4/ixl.4 | 7 +- share/man/man4/joy.4 | 119 - share/man/man4/liquidio.4 | 2 +- share/man/man4/man4.arm/cgem.4 | 298 - share/man/man4/man4.arm/npe.4 | 163 - share/man/man4/man4.i386/acpi_aiboost.4 | 102 - share/man/man4/man4.i386/acpi_asus.4 | 183 - share/man/man4/man4.i386/acpi_fujitsu.4 | 175 - share/man/man4/man4.i386/acpi_ibm.4 | 461 - share/man/man4/man4.i386/acpi_panasonic.4 | 178 - share/man/man4/man4.i386/acpi_sony.4 | 71 - share/man/man4/man4.i386/acpi_toshiba.4 | 128 - share/man/man4/man4.i386/aic.4 | 79 - share/man/man4/man4.i386/alpm.4 | 62 - share/man/man4/man4.i386/amdpm.4 | 72 - share/man/man4/man4.i386/ar.4 | 127 - share/man/man4/man4.i386/arl.4 | 115 - share/man/man4/man4.i386/cs.4 | 160 - share/man/man4/man4.i386/ct.4 | 162 - share/man/man4/man4.i386/ctau.4 | 125 - share/man/man4/man4.i386/cx.4 | 145 - share/man/man4/man4.i386/el.4 | 71 - share/man/man4/man4.i386/ep.4 | 209 - share/man/man4/man4.i386/ex.4 | 127 - share/man/man4/man4.i386/fe.4 | 326 - share/man/man4/man4.i386/ichwd.4 | 76 - share/man/man4/man4.i386/ie.4 | 148 - share/man/man4/man4.i386/io.4 | 69 - share/man/man4/man4.i386/linux.4 | 131 - share/man/man4/man4.i386/lnc.4 | 168 - share/man/man4/man4.i386/mcd.4 | 169 - share/man/man4/man4.i386/mse.4 | 379 - share/man/man4/man4.i386/ndis.4 | 151 - share/man/man4/man4.i386/oltr.4 | 88 - share/man/man4/man4.i386/padlock.4 | 97 - share/man/man4/man4.i386/pcf.4 | 72 - share/man/man4/man4.i386/ray.4 | 419 - share/man/man4/man4.i386/scd.4 | 74 - share/man/man4/man4.i386/snc.4 | 142 - share/man/man4/man4.i386/sr.4 | 164 - share/man/man4/man4.i386/streams.4 | 85 - share/man/man4/man4.i386/svr4.4 | 225 - share/man/man4/man4.i386/viapm.4 | 72 - share/man/man4/man4.i386/vx.4 | 136 - share/man/man4/man4.i386/wl.4 | 198 - share/man/man4/man4.powerpc/bm.4 | 93 - share/man/man4/man4.sparc64/Makefile | 24 - share/man/man4/man4.sparc64/Makefile.depend | 11 - share/man/man4/man4.sparc64/auxio.4 | 80 - share/man/man4/man4.sparc64/central.4 | 60 - share/man/man4/man4.sparc64/clkbrd.4 | 88 - share/man/man4/man4.sparc64/creator.4 | 88 - share/man/man4/man4.sparc64/ebus.4 | 122 - share/man/man4/man4.sparc64/eeprom.4 | 130 - share/man/man4/man4.sparc64/fhc.4 | 82 - share/man/man4/man4.sparc64/machfb.4 | 180 - share/man/man4/man4.sparc64/ofw_console.4 | 126 - share/man/man4/man4.sparc64/openfirm.4 | 300 - share/man/man4/man4.sparc64/openprom.4 | 240 - share/man/man4/man4.sparc64/rtc.4 | 88 - share/man/man4/man4.sparc64/sbus.4 | 79 - share/man/man4/man4.sparc64/snd_audiocs.4 | 87 - share/man/man4/meteor.4 | 873 - share/man/man4/mk48txx.4 | 225 - share/man/man4/nand.4 | 145 - share/man/man4/nandsim.4 | 93 - share/man/man4/ncr.4 | 82 - share/man/man4/ncv.4 | 131 - share/man/man4/netmap.4 | 2 +- share/man/man4/ng_bt3c.4 | 132 - share/man/man4/nsp.4 | 98 - share/man/man4/pcn.4 | 199 - share/man/man4/rc.4 | 125 - share/man/man4/rp.4 | 195 - share/man/man4/sf.4 | 217 - share/man/man4/sio.4 | 410 - share/man/man4/sn.4 | 115 - share/man/man4/stg.4 | 110 - share/man/man4/tl.4 | 193 - share/man/man4/trm.4 | 110 - share/man/man4/tx.4 | 128 - share/man/man4/txp.4 | 148 - share/man/man4/ubsec.4 | 132 - share/man/man4/ufm.4 | 85 - share/man/man4/vlan.4 | 2 +- share/man/man4/vpo.4 | 111 - share/man/man4/vt.4 | 10 +- share/man/man4/wb.4 | 204 - share/man/man4/wi.4 | 380 - share/man/man4/xe.4 | 176 - share/man/man5/nandfs.5 | 132 - share/man/man7/mailaddr.7 | 158 - share/man/man8/picobsd.8 | 666 - share/man/man9/cr_seeothergids.9 | 82 - share/man/man9/cr_seeotheruids.9 | 82 - share/man/man9/groupmember.9 | 6 +- share/man/man9/ithread.9 | 350 - share/man/man9/pbuf.9 | 132 - share/man/man9/timeout.9 | 961 - share/man/man9/vcount.9 | 73 - share/man/man9/vm_map_create.9 | 66 - share/man/man9/vm_page_hold.9 | 75 - share/timedef/ca_IT.ISO8859-15.src | 2 +- share/timedef/ca_IT.UTF-8.src | 2 +- sys/dev/e1000/e1000_82575.c | 40 +- sys/dev/e1000/if_em.c | 56 + sys/dev/gpio/gpiospi.c | 4 +- sys/dev/igc/if_igc.c | 61 +- sys/dev/igc/igc_regs.h | 2 + sys/dev/ixgbe/if_ix.c | 63 +- sys/dev/ixgbe/if_ixv.c | 23 +- sys/dev/ixgbe/ixgbe_82599.c | 11 + sys/dev/ixgbe/ixgbe_phy.c | 4 +- sys/dev/usb/serial/uftdi.c | 18 + sys/dev/usb/usbdevs | 18 + sys/fs/nfsserver/nfs_nfsdport.c | 6 +- sys/kern/kern_prot.c | 324 +- sys/kern/kern_umtx.c | 8 +- sys/kern/subr_sleepqueue.c | 3 +- sys/kern/vfs_export.c | 9 +- sys/net/dlt.h | 1 - sys/net/if.c | 1 + sys/net/if_bridge.c | 2 +- sys/net/radix_mpath.c | 326 - sys/net/radix_mpath.h | 64 - sys/net/route_var.h | 78 - sys/netgraph/atm/ng_atm.c | 1447 -- sys/netgraph/atm/ng_atm.h | 248 - sys/netgraph/ng_fec.c | 1362 -- sys/netgraph/ng_fec.h | 113 - sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c | 5 +- sys/rpc/rpcsec_gss/svc_rpcsec_gss.c | 2 +- sys/security/audit/audit.h | 2 +- sys/security/audit/audit_arg.c | 8 +- sys/sys/syscallsubr.h | 2 +- sys/sys/ucred.h | 37 +- .../tools/locale/etc/final-maps/map.Big5HKSCS | 18612 ---------------- tools/tools/locale/etc/final-maps/widths.txt | 160 + tools/tools/locale/tools/getwidths.c | 18 +- usr.bin/sed/main.c | 10 +- usr.bin/sed/tests/sed2_test.sh | 13 + usr.sbin/bhyve/pci_ahci.c | 146 +- 168 files changed, 1018 insertions(+), 41055 deletions(-) delete mode 100644 share/man/man4/adv.4 delete mode 100644 share/man/man4/adw.4 delete mode 100644 share/man/man4/aha.4 delete mode 100644 share/man/man4/bktr.4 delete mode 100644 share/man/man4/bt.4 delete mode 100644 share/man/man4/cmx.4 delete mode 100644 share/man/man4/cy.4 delete mode 100644 share/man/man4/de.4 delete mode 100644 share/man/man4/dpt.4 delete mode 100644 share/man/man4/ed.4 delete mode 100644 share/man/man4/geom_fox.4 delete mode 100644 share/man/man4/hme.4 rename share/man/man4/{ixgbe.4 => ix.4} (61%) delete mode 100644 share/man/man4/joy.4 delete mode 100644 share/man/man4/man4.arm/cgem.4 delete mode 100644 share/man/man4/man4.arm/npe.4 delete mode 100644 share/man/man4/man4.i386/acpi_aiboost.4 delete mode 100644 share/man/man4/man4.i386/acpi_asus.4 delete mode 100644 share/man/man4/man4.i386/acpi_fujitsu.4 delete mode 100644 share/man/man4/man4.i386/acpi_ibm.4 delete mode 100644 share/man/man4/man4.i386/acpi_panasonic.4 delete mode 100644 share/man/man4/man4.i386/acpi_sony.4 delete mode 100644 share/man/man4/man4.i386/acpi_toshiba.4 delete mode 100644 share/man/man4/man4.i386/aic.4 delete mode 100644 share/man/man4/man4.i386/alpm.4 delete mode 100644 share/man/man4/man4.i386/amdpm.4 delete mode 100644 share/man/man4/man4.i386/ar.4 delete mode 100644 share/man/man4/man4.i386/arl.4 delete mode 100644 share/man/man4/man4.i386/cs.4 delete mode 100644 share/man/man4/man4.i386/ct.4 delete mode 100644 share/man/man4/man4.i386/ctau.4 delete mode 100644 share/man/man4/man4.i386/cx.4 delete mode 100644 share/man/man4/man4.i386/el.4 delete mode 100644 share/man/man4/man4.i386/ep.4 delete mode 100644 share/man/man4/man4.i386/ex.4 delete mode 100644 share/man/man4/man4.i386/fe.4 delete mode 100644 share/man/man4/man4.i386/ichwd.4 delete mode 100644 share/man/man4/man4.i386/ie.4 delete mode 100644 share/man/man4/man4.i386/io.4 delete mode 100644 share/man/man4/man4.i386/linux.4 delete mode 100644 share/man/man4/man4.i386/lnc.4 delete mode 100644 share/man/man4/man4.i386/mcd.4 delete mode 100644 share/man/man4/man4.i386/mse.4 delete mode 100644 share/man/man4/man4.i386/ndis.4 delete mode 100644 share/man/man4/man4.i386/oltr.4 delete mode 100644 share/man/man4/man4.i386/padlock.4 delete mode 100644 share/man/man4/man4.i386/pcf.4 delete mode 100644 share/man/man4/man4.i386/ray.4 delete mode 100644 share/man/man4/man4.i386/scd.4 delete mode 100644 share/man/man4/man4.i386/snc.4 delete mode 100644 share/man/man4/man4.i386/sr.4 delete mode 100644 share/man/man4/man4.i386/streams.4 delete mode 100644 share/man/man4/man4.i386/svr4.4 delete mode 100644 share/man/man4/man4.i386/viapm.4 delete mode 100644 share/man/man4/man4.i386/vx.4 delete mode 100644 share/man/man4/man4.i386/wl.4 delete mode 100644 share/man/man4/man4.powerpc/bm.4 delete mode 100644 share/man/man4/man4.sparc64/Makefile delete mode 100644 share/man/man4/man4.sparc64/Makefile.depend delete mode 100644 share/man/man4/man4.sparc64/auxio.4 delete mode 100644 share/man/man4/man4.sparc64/central.4 delete mode 100644 share/man/man4/man4.sparc64/clkbrd.4 delete mode 100644 share/man/man4/man4.sparc64/creator.4 delete mode 100644 share/man/man4/man4.sparc64/ebus.4 delete mode 100644 share/man/man4/man4.sparc64/eeprom.4 delete mode 100644 share/man/man4/man4.sparc64/fhc.4 delete mode 100644 share/man/man4/man4.sparc64/machfb.4 delete mode 100644 share/man/man4/man4.sparc64/ofw_console.4 delete mode 100644 share/man/man4/man4.sparc64/openfirm.4 delete mode 100644 share/man/man4/man4.sparc64/openprom.4 delete mode 100644 share/man/man4/man4.sparc64/rtc.4 delete mode 100644 share/man/man4/man4.sparc64/sbus.4 delete mode 100644 share/man/man4/man4.sparc64/snd_audiocs.4 delete mode 100644 share/man/man4/meteor.4 delete mode 100644 share/man/man4/mk48txx.4 delete mode 100644 share/man/man4/nand.4 delete mode 100644 share/man/man4/nandsim.4 delete mode 100644 share/man/man4/ncr.4 delete mode 100644 share/man/man4/ncv.4 delete mode 100644 share/man/man4/ng_bt3c.4 delete mode 100644 share/man/man4/nsp.4 delete mode 100644 share/man/man4/pcn.4 delete mode 100644 share/man/man4/rc.4 delete mode 100644 share/man/man4/rp.4 delete mode 100644 share/man/man4/sf.4 delete mode 100644 share/man/man4/sio.4 delete mode 100644 share/man/man4/sn.4 delete mode 100644 share/man/man4/stg.4 delete mode 100644 share/man/man4/tl.4 delete mode 100644 share/man/man4/trm.4 delete mode 100644 share/man/man4/tx.4 delete mode 100644 share/man/man4/txp.4 delete mode 100644 share/man/man4/ubsec.4 delete mode 100644 share/man/man4/ufm.4 delete mode 100644 share/man/man4/vpo.4 delete mode 100644 share/man/man4/wb.4 delete mode 100644 share/man/man4/wi.4 delete mode 100644 share/man/man4/xe.4 delete mode 100644 share/man/man5/nandfs.5 delete mode 100644 share/man/man7/mailaddr.7 delete mode 100644 share/man/man8/picobsd.8 delete mode 100644 share/man/man9/cr_seeothergids.9 delete mode 100644 share/man/man9/cr_seeotheruids.9 delete mode 100644 share/man/man9/ithread.9 delete mode 100644 share/man/man9/pbuf.9 delete mode 100644 share/man/man9/timeout.9 delete mode 100644 share/man/man9/vcount.9 delete mode 100644 share/man/man9/vm_map_create.9 delete mode 100644 share/man/man9/vm_page_hold.9 delete mode 100644 sys/net/radix_mpath.c delete mode 100644 sys/net/radix_mpath.h delete mode 100644 sys/net/route_var.h delete mode 100644 sys/netgraph/atm/ng_atm.c delete mode 100644 sys/netgraph/atm/ng_atm.h delete mode 100644 sys/netgraph/ng_fec.c delete mode 100644 sys/netgraph/ng_fec.h delete mode 100644 tools/tools/locale/etc/final-maps/map.Big5HKSCS diff --git a/lib/libc/Makefile b/lib/libc/Makefile index 559e37af3d8..1bd135ea0b6 100644 --- a/lib/libc/Makefile +++ b/lib/libc/Makefile @@ -55,11 +55,7 @@ CFLAGS+=${CANCELPOINTS_CFLAGS} # Use a more efficient TLS model for libc since we can reasonably assume that # it will be loaded during program startup. -.if ${LIBC_ARCH} == "aarch64" || ${LIBC_ARCH} == "amd64" || \ - ${LIBC_ARCH} == "i386" || ${LIBC_ARCH} == "riscv" || \ - ${LIBC_ARCH:Mpowerpc*} != "" CFLAGS+= -ftls-model=initial-exec -.endif # # Link with static libcompiler_rt.a. diff --git a/lib/libc/gen/getentropy.c b/lib/libc/gen/getentropy.c index 44cb190f023..10e7a274958 100644 --- a/lib/libc/gen/getentropy.c +++ b/lib/libc/gen/getentropy.c @@ -125,11 +125,11 @@ getentropy(void *buf, size_t buflen) switch (errno) { case ECAPMODE: /* - * Kernel >= r331280 and < r337999 - * will return ECAPMODE when the - * caller is already in capability - * mode, fallback to traditional - * method in this case. + * Kernel >= r331280 (4948f7bf1153) + * and < r337999 (ed1fa01ac45a) will + * return ECAPMODE when the caller is + * already in capability mode; fallback + * to traditional method in this case. */ have_getrandom = false; continue; diff --git a/libexec/rc/rc.conf b/libexec/rc/rc.conf index b6546e39e29..d098edb2570 100644 --- a/libexec/rc/rc.conf +++ b/libexec/rc/rc.conf @@ -222,6 +222,7 @@ ipfilter_program="/sbin/ipf" # where the ipfilter program lives ipfilter_rules="/etc/ipf.rules" # rules definition file for ipfilter, see # /usr/src/contrib/ipfilter/rules for examples ipfilter_flags="" # additional flags for ipfilter +ipfilter_optionlist="" # optionlist for ipf(8) -T ippool_enable="NO" # Set to YES to enable ip filter pools ippool_program="/sbin/ippool" # where the ippool program lives ippool_rules="/etc/ippool.tables" # rules definition file for ippool diff --git a/libexec/rc/rc.d/ipfilter b/libexec/rc/rc.d/ipfilter index 816db50540f..de406f8e174 100755 --- a/libexec/rc/rc.d/ipfilter +++ b/libexec/rc/rc.d/ipfilter @@ -30,7 +30,13 @@ required_modules="ipl:ipfilter" ipfilter_start() { echo "Enabling ipfilter." - if ! ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then + if [ -n "${ifilter_optionlist}" ]; then + if ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then + ${ipfilter_program:-/sbin/ipf} -D + fi + ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" + ${ipfilter_program:-/sbin/ipf} -E + elif ! ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then ${ipfilter_program:-/sbin/ipf} -E fi ${ipfilter_program:-/sbin/ipf} -Fa diff --git a/libexec/rtld-elf/arm/reloc.c b/libexec/rtld-elf/arm/reloc.c index e2dc7f8c9eb..b62a62c5b11 100644 --- a/libexec/rtld-elf/arm/reloc.c +++ b/libexec/rtld-elf/arm/reloc.c @@ -322,10 +322,13 @@ reloc_nonplt_object(Obj_Entry *obj, const Elf_Rel *rel, SymCache *cache, return -1; tmp = (Elf_Addr)def->st_value + defobj->tlsoffset; - if (__predict_true(RELOC_ALIGNED_P(where))) + if (__predict_true(RELOC_ALIGNED_P(where))) { + tmp += *where; *where = tmp; - else + } else { + tmp += load_ptr(where); store_ptr(where, tmp); + } dbg("TLS_TPOFF32 %s in %s --> %p", obj->strtab + obj->symtab[symnum].st_name, obj->path, (void *)tmp); diff --git a/sbin/ipf/libipf/load_hashnode.c b/sbin/ipf/libipf/load_hashnode.c index 11525dc96e3..12b11687710 100644 --- a/sbin/ipf/libipf/load_hashnode.c +++ b/sbin/ipf/libipf/load_hashnode.c @@ -53,9 +53,28 @@ load_hashnode(int unit, char *name, iphtent_t *node, int ttl, if (err != 0) if (!(opts & OPT_DONOTHING)) { - char msg[80]; + char msg[255]; + char ipaddr[80], mask_msg[10], mask[8]; - snprintf(msg, sizeof(msg), "%s node from lookup hash table", what); + inet_ntop(ipe.ipe_family, + ipe.ipe_addr.vptr, ipaddr, + sizeof(ipaddr)); +#ifdef USE_INET6 + if (ipe.ipe_family == AF_INET) { +#endif + inet_ntop(ipe.ipe_family, + ipe.ipe_mask.vptr, mask, + sizeof(mask)); + mask_msg[0]='/'; + mask_msg[1]='\0'; + strlcat(mask_msg, mask, sizeof(mask_msg)); +#ifdef USE_INET6 + } else { + mask_msg[0]='\0'; + } +#endif + + snprintf(msg, sizeof(msg), "%s node from lookup hash table(%s) node(%s%s)", what, name, ipaddr, mask_msg); return (ipf_perror_fd(pool_fd(), iocfunc, msg)); } return (0); diff --git a/sbin/ipf/libipf/load_poolnode.c b/sbin/ipf/libipf/load_poolnode.c index 5c9fd838bfa..880a6cd1c68 100644 --- a/sbin/ipf/libipf/load_poolnode.c +++ b/sbin/ipf/libipf/load_poolnode.c @@ -52,11 +52,30 @@ load_poolnode(int role, char *name, ip_pool_node_t *node, int ttl, if (err != 0) { if ((opts & OPT_DONOTHING) == 0) { - char msg[80]; + char msg[255]; + char ipaddr[80], mask_msg[10], mask[8]; - snprintf(msg, sizeof(msg), "%s pool node(%s/", what, - inet_ntoa(pn.ipn_addr.adf_addr.in4)); - strcat(msg, inet_ntoa(pn.ipn_mask.adf_addr.in4)); + inet_ntop(pn.ipn_addr.adf_family, + pn.ipn_addr.adf_addr.vptr, ipaddr, + sizeof(ipaddr)); + +#ifdef USE_INET6 + if (pn.ipn_mask.adf_family == AF_INET) { +#endif + inet_ntop(pn.ipn_mask.adf_family, + pn.ipn_mask.adf_addr.vptr, mask, + sizeof(mask)); + mask_msg[0]='/'; + mask_msg[1]='\0'; + strlcat(mask_msg, mask, sizeof(mask_msg)); +#ifdef USE_INET6 + } else { + mask_msg[0]='\0'; + } +#endif + + snprintf(msg, sizeof(msg), "%s pool(%s) node(%s%s)", + what, name, ipaddr, mask_msg); return (ipf_perror_fd(pool_fd(), iocfunc, msg)); } } diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index b9bcdb899d2..fccea10af65 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -261,7 +261,7 @@ MAN= aac.4 \ iwnfw.4 \ iwlwifi.4 \ iwlwififw.4 \ - ixgbe.4 \ + ix.4 \ ixl.4 \ jedec_dimm.4 \ jme.4 \ @@ -717,9 +717,9 @@ MLINKS+=iwi.4 if_iwi.4 MLINKS+=iwlwifi.4 if_iwlwifi.4 MLINKS+=iwm.4 if_iwm.4 MLINKS+=iwn.4 if_iwn.4 -MLINKS+=ixgbe.4 ix.4 -MLINKS+=ixgbe.4 if_ix.4 -MLINKS+=ixgbe.4 if_ixgbe.4 +MLINKS+=ix.4 if_ix.4 +MLINKS+=ix.4 if_ixgbe.4 +MLINKS+=ix.4 ixgbe.4 MLINKS+=ixl.4 if_ixl.4 MLINKS+=iavf.4 if_iavf.4 MLINKS+=jme.4 if_jme.4 diff --git a/share/man/man4/adv.4 b/share/man/man4/adv.4 deleted file mode 100644 index cbab8a8bb1e..00000000000 --- a/share/man/man4/adv.4 +++ /dev/null @@ -1,226 +0,0 @@ -.\" -.\" Copyright (c) 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. 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$ -.\" -.Dd August 8, 2004 -.Dt ADV 4 -.Os -.Sh NAME -.Nm adv -.Nd Advansys ISA/VL/PCI Narrow 8bit SCSI Host adapter driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device scbus" -.Cd "device adv" -.Pp -For one or more VL/ISA cards: -.Cd "device isa" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.adv.0.at="isa" -.Pp -For one or more PCI cards: -.Cd "device pci" -.Ed -.Sh DESCRIPTION -This driver provides access to the narrow 8bit -.Tn SCSI -bus connected to the Advanced Systems Products, Inc. -.Tn ASC900 , -.Tn ASC1000 , -.Tn ASC1090 , -.Tn ASC1200 , -.Tn ASC3030 , -.Tn ASC3050 , -and -.Tn ASC3150 -host adapter chips. -The following tables list the AdvanSys products using these chips, -their bus attachment type, maximum sync rate, and the maximum number of -commands that can be handled by the adapter concurrently. -.Bd -ragged -offset indent -Connectivity Products: -.Bl -column "ABP510/5150 " "ISA PnP " "Floppy " "MaxSync " "Commands " "Footnotes " -.Em "Adapter" Ta Em "Bus" Ta Em "Floppy" Ta Em "MaxSync" Ta Em "Commands" Ta Em "Footnotes" -.It "ABP510/5150" Ta "ISA" Ta "\&No" Ta "10MHz" Ta "240" Ta "1" -.It "ABP5140" Ta "ISA PnP" Ta "\&No" Ta "10MHz" Ta "16" Ta "1, 3" -.It "ABP5142" Ta "ISA PnP" Ta "Yes" Ta "10MHz" Ta "16" Ta "4" -.It "ABP[3]902" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "16" Ta "" -.It "ABP3905" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "16" Ta "" -.It "ABP915" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "16" Ta "" -.It "ABP920" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "16" Ta "" -.It "ABP3922" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "16" Ta "" -.It "ABP3925" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "16" Ta "" -.It "ABP930" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "16" Ta "5" -.It "ABP930U" Ta "PCI" Ta "\&No" Ta "20MHz" Ta "16" Ta "" -.It "ABP930UA" Ta "PCI" Ta "\&No" Ta "20MHz" Ta "16" Ta "" -.It "ABP960" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "16" Ta "2" -.It "ABP960U" Ta "PCI" Ta "\&No" Ta "20MHz" Ta "16" Ta "2" -.El -.Pp -Footnotes: -.Bl -enum -compact -.It -This board has been shipped by HP with the 4020i CD-R drive. -The board has no BIOS so it cannot control a boot device, but -it can control any secondary SCSI device. -.It -This board has been sold by Iomega as a Jaz Jet PCI adapter. -.It -This board has been sold by SIIG as the i540 SpeedMaster. -.It -This board has been sold by SIIG as the i542 SpeedMaster. -.It -This board has been sold by SIIG as the Fast SCSI Pro PCI. -.El -.Ed -.Bd -ragged -offset indent -Single Channel Products: -.Bl -column "ABPX3X940UA " "PCI " "Floppy " "MaxSync " "Commands" -.Em "Adapter" Ta Em "Bus" Ta Em "Floppy" Ta Em "MaxSync" Ta Em "Commands" -.It "ABP542" Ta "ISA" Ta "Yes" Ta "10MHz" Ta "240" -.It "ABP842" Ta "VL" Ta "Yes" Ta "10MHz" Ta "240" -.It "ABP940" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "240" -.It "ABP[3]940UA" Ta "PCI" Ta "\&No" Ta "20MHz" Ta "240" -.It "ABP940U" Ta "PCI" Ta "\&No" Ta "20MHz" Ta "240" -.It "ABP3960UA" Ta "PCI" Ta "\&No" Ta "20MHz" Ta "240" -.It "ABP970" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "240" -.It "ABP970U" Ta "PCI" Ta "\&No" Ta "20MHz" Ta "240" -.El -.Ed -.Bd -ragged -offset indent -Multi Channel Products (Commands are per-channel): -.Bl -column "ABPX3X980UA " "PCI " "Floppy " "MaxSync " "Commands " "Channels" -.Em "Adapter" Ta Em "Bus" Ta Em "Floppy" Ta Em "MaxSync" Ta Em "Commands" Ta Em "Channels" -.It "ABP852" Ta "VL" Ta "Yes" Ta "10MHz" Ta "240" Ta "2" -.It "ABP950" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "240" Ta "2" -.It "ABP980" Ta "PCI" Ta "\&No" Ta "10MHz" Ta "240" Ta "4" -.It "ABP980U" Ta "PCI" Ta "\&No" Ta "20MHz" Ta "240" Ta "4" -.It "ABP[3]980UA" Ta "PCI" Ta "\&No" Ta "20MHz" Ta "16" Ta "4" -.El -.Ed -.Pp -For ISA or Vesa Local Bus adapters, one kernel hints entry is required -for every card to be attached by the system. -Specific values for the port address, irq and drq may be specified. -If unspecified, the driver will query the device for its current -settings and use those. -If the port address is unspecified, the driver will search for it at -one of the possible addresses. -Cards configured for ISA PNP addresses are found automatically. -The possible port addresses for these card are 0x110, 0x130, -0x150, 0x190, 0x210, 0x230, 0x250, and 0x330. -.Pp -Per target configuration performed in the -.Tn AdvanceWare -menu, which is accessible at boot, -is honored by this driver. -This includes synchronous/asynchronous transfers, -maximum synchronous negotiation rate, disconnection, tagged queueing, -and the host adapter's SCSI ID. -The global setting for the maximum number of tagged transactions allowed -per target is not honored as the CAM SCSI system will automatically determine -the maximum number of tags a device can receive as well as guarantee fair -resource allocation among devices. -.Sh HARDWARE -The -.Nm -driver supports the following SCSI controllers: -.Pp -.Bl -bullet -compact -.It -AdvanSys ABP510/5150 -.It -AdvanSys ABP5140 -.It -AdvanSys ABP5142 -.It -AdvanSys ABP902/3902 -.It -AdvanSys ABP3905 -.It -AdvanSys ABP915 -.It -AdvanSys ABP920 -.It -AdvanSys ABP3922 -.It -AdvanSys ABP3925 -.It -AdvanSys ABP930, ABP930U, ABP930UA -.It -AdvanSys ABP960, ABP960U -.It -AdvanSys ABP542 -.It -AdvanSys ABP842 -.It -AdvanSys ABP940 -.It -AdvanSys ABP940UA/3940UA -.It -AdvanSys ABP940U -.It -AdvanSys ABP3960UA -.It -AdvanSys ABP970, ABP970U -.It -AdvanSys ABP852 -.It -AdvanSys ABP950 -.It -AdvanSys ABP980, ABP980U -.It -AdvanSys ABP980UA/3980UA -.El -.Sh SEE ALSO -.Xr adw 4 , -.Xr aha 4 , -.Xr ahc 4 , -.Xr cd 4 , -.Xr da 4 , -.Xr sa 4 , -.Xr scsi 4 -.Sh HISTORY -The -.Nm -driver appeared in -.Fx 3.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was ported by -.An Justin T. Gibbs -from the Linux driver -written by -.An Bob Frey -of Advanced System Products, Inc. -Many thanks to AdvanSys for providing the original driver under a suitable -license for use in -.Fx . diff --git a/share/man/man4/adw.4 b/share/man/man4/adw.4 deleted file mode 100644 index f8424d572e1..00000000000 --- a/share/man/man4/adw.4 +++ /dev/null @@ -1,104 +0,0 @@ -.\" -.\" Copyright (c) 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. 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: stable/11/share/man/man4/adw.4 162404 2006-09-18 15:24:20Z ru $ -.\" -.Dd July 14, 2004 -.Dt ADW 4 -.Os -.Sh NAME -.Nm adw -.Nd Advansys PCI 16bit SCSI Host adapter driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device pci" -.Cd "device scbus" -.Cd "device adw" -.Ed -.Sh DESCRIPTION -This driver provides access to the 16bit -.Tn SCSI -bus connected to the Advanced Systems Products, Inc. -.Tn ASC3550 Ultra , -and -.Tn ASC38C0800 Ultra2 , -SCSI Host Adapter chips. -Both chips support, synchronous transfers -(20MHz and 40MHz max respectively), -16bit transfers, tagged queueing, -and up to 253 concurrent SCSI transactions. -.Pp -Per target configuration performed in the -.Tn AdvanceWare -menu, which is accessible at boot, -is honored by this driver. -This includes synchronous/asynchronous transfers, -maximum synchronous negotiation rate, wide transfers, disconnection, -tagged queueing, and the host adapter's SCSI ID. -The global setting for the maximum number of tagged transactions allowed -per target is not honored as the CAM SCSI system will automatically determine -the maximum number of tags a device can receive as well as guarantee fair -resource allocation among devices. -.Sh HARDWARE -The -.Nm -driver supports SCSI controllers including: -.Pp -.Bl -bullet -compact -.It -AdvanSys ABP940UW/ABP3940UW -.It -AdvanSys ABP950UW -.It -AdvanSys ABP970UW -.It -AdvanSys ABP3940U2W -.It -AdvanSys ABP3950U2W -.El -.Sh SEE ALSO -.Xr adv 4 , -.Xr cd 4 , -.Xr da 4 , -.Xr sa 4 , -.Xr scsi 4 -.Sh HISTORY -The -.Nm -driver appeared in -.Fx 3.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was ported by -.An Justin T. Gibbs -from the Linux driver written by -.An Bob Frey -of Advanced System Products, Inc. -Many thanks to AdvanSys for providing the original driver -under a suitable license for use in -.Fx . diff --git a/share/man/man4/aha.4 b/share/man/man4/aha.4 deleted file mode 100644 index 03bbeb47064..00000000000 --- a/share/man/man4/aha.4 +++ /dev/null @@ -1,122 +0,0 @@ -.\" -.\" Copyright (c) 1994 Wilko Bulte -.\" 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$ -.\" -.Dd July 4, 2004 -.Dt AHA 4 -.Os -.Sh NAME -.Nm aha -.Nd Adaptec SCSI host adapter driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device scbus" -.Cd "device aha" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -aha_load="YES" -.Ed -.Pp -In -.Pa /boot/device.hints : -.Cd hint.aha.0.at="isa" -.Sh DESCRIPTION -This driver provides access to the -.Tn SCSI -bus connected to the Adaptec AHA-154x SCSI host adapters. -x is 0 for controllers without a floppy drive and 2 for controllers -that have them. -.Pp -One device hint entry for every card to be attached by the system is -required. -Specific values for the port address, IRQ, and DRQ may be specified. -If wildcard values are used, the driver will query the device for its -current settings and use those. -If the port address -is a wildcard, the driver consults an internal table of possible port address -locations and attaches to the first unattached card it finds. -The possible -port addresses for this card are 0x330, 0x334, 0x230, 0x234, 0x130, and -0x134. -.Sh HARDWARE -The -.Nm -driver supports the following SCSI host adapters: -.Pp -.Bl -bullet -compact -.It -Adaptec AHA-154xB -.It -Adaptec AHA-154xC -.It -Adaptec AHA-154xCF -.It -Adaptec AHA-154xCP -.It -DTC 3290 SCSI controller in 1542 emulation mode -.It -Tekram SCSI controllers in 154x emulation mode -.El -.Sh SEE ALSO -.Xr ahc 4 , -.Xr aic 4 , -.Xr cd 4 , -.Xr da 4 , -.Xr sa 4 , -.Xr scsi 4 -.\" -.\" .Sh DIAGNOSTICS -.\" -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was ported by -.An M. Warner Losh -from the -.Nm bt -driver written by -.An Justin T. Gibbs . -.Sh BUGS -The AHA-154xA card does not support residuals on data transfers. -As a result, this card is no longer supported. -.Pp -There have been some reports that the AHA-154xB does not work well -under heavy load. -.Pp -The AHA-154xCP is a plug and play controller. -However, its resources are set using the on-board BIOS and cannot be -moved. -Failures to attached for this card are often caused when the resources -set in the BIOS conflict. diff --git a/share/man/man4/alc.4 b/share/man/man4/alc.4 index 47855865779..5ce5ce97d68 100644 --- a/share/man/man4/alc.4 +++ b/share/man/man4/alc.4 @@ -136,7 +136,11 @@ This tunable disables MSI support on the Ethernet hardware. The default value is 0. .It Va hw.alc.msix_disable This tunable disables MSI-X support on the Ethernet hardware. -The default value is 0. +The default value is 2, which means to enable or disable MSI-X based on the +card type; for "Killer" cards (E2x00) MSI-X will be disabled, while on other +cards it will be enabled. +Set this to 0 to force MSI-X to be enabled, or 1 to force it to be disabled +regardless of card type. .El .Sh SYSCTL VARIABLES The following variables are available as both diff --git a/share/man/man4/altq.4 b/share/man/man4/altq.4 index fc51b88e88b..b1d6f556dd4 100644 --- a/share/man/man4/altq.4 +++ b/share/man/man4/altq.4 @@ -144,7 +144,7 @@ They have been applied to the following hardware drivers: .Xr fxp 4 , .Xr gem 4 , .Xr igb 4 , -.Xr ixgbe 4 , +.Xr ix 4 , .Xr jme 4 , .Xr le 4 , .Xr liquidio 4 , diff --git a/share/man/man4/bktr.4 b/share/man/man4/bktr.4 deleted file mode 100644 index 43fd8d0f49d..00000000000 --- a/share/man/man4/bktr.4 +++ /dev/null @@ -1,258 +0,0 @@ -.\" -.\" $FreeBSD: stable/11/share/man/man4/bktr.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd January 18, 2006 -.Dt BKTR 4 -.Os -.Sh NAME -.Nm bktr -.Nd Brooktree Bt848/849/878/879 and Pinnacle PCTV video capture driver -.Sh SYNOPSIS -.Cd device bktr -.Pp -.Cd device iicbus -.Cd device iicbb -.Cd device smbus -.Sh DESCRIPTION -The -.Nm bktr -driver provides support for PCI -.Em video -capture and -.Em VBI -capture on low cost, high performance boards. -The driver is based on the Matrox Meteor driver and uses the same API. -The -.Nm -driver should support most video cards based on the -.Em "Brooktree Bt848/849/878/879 Video Capture Chip" . -Also supported are most -.Em "Pinnacle PCTV" -video cards. -Furthermore, the driver supports -.Em FM Radio -if the tuner supports it. -.Pp -The driver currently supports the following features: -.Bd -unfilled -offset indent -PCI to PCI dma transfer -clipping -yuv -rgb16 -rgb24 -rgb32 -.Ed -.Pp -On the supported cards, tuners and other components are interconnected -with an I2C bus. -The Brooktree848 chips act as a master device on the bus to control them. -Therefore, -.Xr iicbus 4 , -.Xr iicbb 4 -and -.Xr smbus 4 -controller declarations are mandatory to activate -.Nm -support. -.Pp -The following kernel parameters may be used to further configure the driver: -.Pp -.Em options "BROOKTREE_ALLOC_PAGES=xxx" -specifies the number of contiguous pages to allocate when successfully -probed. -The default number of pages allocated by the kernel is 216. -This means that there are (216*4096) bytes available for use. -.Bd -unfilled -.Cd options BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_PAL -.Cd options BROOKTREE_SYSTEM_DEFAULT=BROOKTREE_NTSC -.Ed -One of these options can be used to set the default video format for the driver. -This fixed random hangs and lockups with the VideoLogic Captivator PCI card. -.Pp -The following sysctls may be used to further configure the driver: -.Pp -.Em sysctl hw.bt848.card=nnnn -This can be used to override the card make which was detected at boot time. -.Ql nnnn -is set to an integer from 1 to 23 taken from the following table: -.Pp -.Bl -tag -compact -width 30n -.It MIRO -1 -.It HAUPPAUGE -2 -.It STB -3 -.It INTEL -4 -.It IMS_TURBO -5 -.It AVER_MEDIA -6 -.It OSPREY -7 -.It NEC_PK -8 -.It IO_GV -9 -.It FLYVIDEO -10 -.It ZOLTRIX -11 -.It KISS -12 -.It VIDEO_HIGHWAY_XTREME -13 -.It ASKEY_DYNALINK_MAGIC_TVIEW -14 -.It LEADTEK -15 -.It TERRATVPLUS -16 -.It IO_BCTV3 -17 -.It AOPEN_VA1000 -18 -.It PINNACLE_PCTV_RAVE -19 -.It PIXELVIEW_PLAYTV_PAK -20 -.It TERRATVALUE -21 -.It PIXELVIEW_PLAYTV_PRO_REV_4C -22 -.It Bt848_MAX -23 -.El -.Pp -.Em sysctl hw.bt848.tuner=nnnn -This can be used to override the tuner make which was detected at boot time. -.Ql nnnn -is set to an integer from 0 to 16 taken from the following table: -.Pp -.Bl -tag -compact -width 22n -.It NO_TUNER -0 -.It TEMIC_NTSC -1 -.It TEMIC_PAL -2 -.It TEMIC_SECAM -3 -.It PHILIPS_NTSC -4 -.It PHILIPS_PAL -5 -.It PHILIPS_SECAM -6 -.It TEMIC_PALI -7 -.It PHILIPS_PALI -8 -.It PHILIPS_FR1236_NTSC -9 /* These have FM Radio support */ -.It PHILIPS_FR1216_PAL -10 /* These have FM Radio support */ -.It PHILIPS_FR1236_SECAM -11 /* These have FM Radio support */ -.It ALPS_TSCH5 -12 -.It ALPS_TSBH1 -13 -.It MT2032 -14 -.It LG_TPI8PSB12P_PAL -15 -.It Bt848_MAX -16 -.El -.Sh HARDWARE -The -.Nm -driver supports video capture cards based on the -Brooktree Bt848/849/878/879 chips, as well as -Pinnacle PCTV cards, including: -.Pp -.Bl -bullet -compact -.It -AOpen VA1000 -.It -AVerMedia AVerTV Studio -.It -AVerMedia TF/FM-98 -.It -ATI TV Wonder VE -.It -Hauppauge WinCast/TV -.It -Hauppauge WinTV-Go-FM -.It -Hauppauge WinTV-pci -.It -Hauppauge WinTV-radio -.It -Intel Smart Video Recorder III -.It -KWORLD PCI TV Tuner -.It -Miro PC TV -.It -Pinnacle PCTV Pro -.It -Pinnacle PCTV Rave -.It -PixelView PlayTV PAK -.It -PixelView PlayTV Pro (rev 4C, 9D) -.It -SIGMA TV II -.It -STB TV PCI Television Tuner -.It -Super TV Tuner -.It -TerraTec TValue -.It -V-Stream XPERT TV-PVR 878 -.It -Video Highway XTreme -.It -VideoLogic Captivator PCI -.El -.Sh FILES -.Bl -tag -width /usr/share/examples/meteor -compact -.It Pa /usr/ports/multimedia/fxtv -A TV and Camera display program utilizing the bktr driver - requires that -.Em The X Window System -and -.Em The Ports Collection -also be installed. -.It Pa /usr/ports/audio/xmradio -An FM Radio Tuner for cards which have an FM Radio tuner fitted - requires that -.Em The X Window System -and -.Em The Ports Collection -also be installed. -It also requires -.Em Motif -or the -.Em lesstif -port. -.El -.Sh SEE ALSO -.Xr meteor 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 2.2 . -.Sh AUTHORS -.An -nosplit -This driver is based on the work of -.An Jim Lowe Aq Mt james@miller.cs.uwm.edu , -.An Mark Tinguely Aq Mt tinguely@plains.nodak.edu , -.An Amancio Hasty Aq Mt hasty@star-gate.com , -.An Roger Hardiman Aq Mt roger@FreeBSD.org -and a bunch of other people. -Support for Pinnacle PCTV Rave cards was added by -.An Branko Lankester Aq Mt branko@euro.net . diff --git a/share/man/man4/bt.4 b/share/man/man4/bt.4 deleted file mode 100644 index ebdebae2283..00000000000 --- a/share/man/man4/bt.4 +++ /dev/null @@ -1,174 +0,0 @@ -.\" -.\" Copyright (c) 1994 Jordan Hubbard -.\" 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$ -.\" -.Dd August 18, 2020 -.Dt BT 4 -.Os -.Sh NAME -.Nm bt -.Nd Buslogic/Mylex MultiMaster SCSI host adapter driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device isa" -.Cd "device scbus" -.Cd "device bt" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.bt.0.at="isa" -.Cd hint.bt.0.port="0x330" -.Ed -.Sh DEPRECATION NOTICE -This driver is scheduled for removal prior to the release of -.Fx 13.0 . -.Sh DESCRIPTION -This driver provides access to the -.Tn SCSI -bus connected to a Buslogic/Mylex MultiMaster or compatible controller: -.Bd -ragged -offset indent -MultiMaster "W" Series Host Adapters: -.Bl -column "BT-956CD " "ISA " "Commands " "Description" -.Em "Adapter" Ta Em "Bus" Ta Em "Commands" Ta Em "Description" -BT-948 PCI 192 Ultra SCSI-3 -BT-958 PCI 192 Wide Ultra SCSI-3 -BT-958D PCI 192 Wide Differential Ultra SCSI-3 -.El -.Pp -MultiMaster "C" Series Host Adapters: -.Bl -column "BT-956CD " "ISA " "Commands " "Description" -.Em "Adapter" Ta Em "Bus" Ta Em "Commands" Ta Em "Description" -BT-946C PCI 100 Fast SCSI-2 -BT-956C PCI 100 Wide Fast SCSI-2 -BT-956CD PCI 100 Wide Differential Fast SCSI-2 -BT-445C VLB 100 Fast SCSI-2 -BT-545C ISA 50 Fast SCSI-2 -BT-540CF ISA 50 Fast SCSI-2 -.El -.Pp -MultiMaster "S" Series Host Adapters: -.Bl -column "BT-956CD " "ISA " "Commands " "Description" -.Em "Adapter" Ta Em "Bus" Ta Em "Commands" Ta Em "Description" -BT-445S VLB 30 Fast SCSI-2 -BT-545S ISA 30 Fast SCSI-2 -BT-542D ISA 30 Differential Fast SCSI-2 -BT-542B ISA 30 SCSI-2 (542B revision H) -.El -.Pp -MultiMaster "A" Series Host Adapters: -.Bl -column "BT-956CD " "ISA " "Commands " "Description" -.Em "Adapter" Ta Em "Bus" Ta Em "Commands" Ta Em "Description" -BT-542B ISA 30 SCSI-2 (542B revisions A - G) -.El -.Ed -.Pp -Tagged queueing is supported on 'W' series adapters, 'C' series adapters -with firmware of rev 4.42 and higher, and 'S' series adapters with firmware -of rev 3.35 and higher. -.Pp -Boards with certain firmware revisions may lock up under heavy load to -certain devices, especially if tagged queueing is used. -Should you encounter -a problem with your adapter, contact Mylex technical support and ensure you -have the latest firmware for your controller. -.Sh HARDWARE -The -.Nm -driver supports the following BusLogic MultiMaster -.Dq W , -.Dq C , -.Dq S , -and -.Dq A -series and compatible SCSI host adapters: -.Pp -.Bl -bullet -compact -.It -BusLogic BT-445C -.It -BusLogic BT-445S -.It -BusLogic BT-540CF -.It -BusLogic BT-542B -.It -BusLogic BT-542B -.It -BusLogic BT-542D -.It -BusLogic BT-545C -.It -BusLogic BT-545S -.It -BusLogic/BusTek BT-640 -.It -BusLogic BT-946C -.It -BusLogic BT-948 -.It -BusLogic BT-956C -.It -BusLogic BT-956CD -.It -BusLogic BT-958 -.It -BusLogic BT-958D -.It -Storage Dimensions SDC3211B / SDC3211F -.El -.Sh SEE ALSO -.Xr cd 4 , -.Xr da 4 , -.Xr sa 4 , -.Xr scsi 4 -.Sh HISTORY -The -.Nm -driver first appeared in the -.Bx 386 -patch kit. -.Sh AUTHORS -.An -nosplit -.An Julian Elischer -wrote a driver for the Multimaster cards that appeared in the -.Bx 386 -patch kit. -The driver was rewritten by -.An Justin T. Gibbs -to take advantage of new board features and work with the CAM SCSI framework in -.Fx 3.0 . -.Pp -Special thanks to -.An Leonard N. Zubkoff -for writing such a complete and well documented Mylex/BusLogic MultiMaster -driver for Linux. -Support in this driver for the wide range of MultiMaster -controllers and firmware revisions, with their otherwise undocumented quirks, -would not have been possible without his efforts. diff --git a/share/man/man4/cmx.4 b/share/man/man4/cmx.4 deleted file mode 100644 index 0600bb2071a..00000000000 --- a/share/man/man4/cmx.4 +++ /dev/null @@ -1,126 +0,0 @@ -.\" -.\" Copyright (c) 2006-2007 Daniel Roethlisberger -.\" 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 unmodified, 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$ -.\" -.Dd July 7, 2007 -.Dt CMX 4 -.Os -.Sh NAME -.Nm cmx -.Nd Omnikey CardMan 4040 smartcard reader device driver -.Sh SYNOPSIS -.Cd device cmx -.Sh DEPRECATION NOTICE -This driver is scheduled for removal prior to the release of -.Fx 13.0 -.Sh DESCRIPTION -The -.Nm -driver provides support for the PCCARD based -.Em Omnikey CardMan 4040 -smartcard reader. -The driver provides a character device special file based -.Em Chip/Smart Card Interface Devices (CCID) -interface. -The driver implements what the vendor calls the -.Em Synchronous API -onto the smartcard reader device. -.Pp -Reading and writing is synchronous, meaning that a call to -.Xr write 2 -directly corresponds to a complete CCID command sent to the -device, while the following -.Xr read 2 -will return the complete answer from the reader. -There is no support for partial reads or writes. -There is no upper limit on -CCID request or response sizes, but the complete CCID request -must be sent to the driver in -.Xr write 2 -and the complete CCID response must fit into the buffer -supplied to -.Xr read 2 . -.Pp -Non-blocking I/O, -.Xr select 2 -and -.Xr poll 2 -are supported and work as expected. -An open file descriptor -will always be ready for writing, but only ready for reading -if the device indicates that it has data available. -.Sh FILES -.Bl -tag -width /usr/ports/security/openct -compact -.It Pa /dev/cmx\fBn\fP -Character device special file. -.It Pa /usr/ports/security/openct -OpenCT, a userspace smartcard daemon containing a -.Em CCID -driver which directly supports -.Nm -devices. -.\".It Pa /usr/ports/devel/pcsc-lite -.\"PC/SC-Lite, a userspace smartcard daemon. -.\".It Pa /usr/ports/devel/libccid -.\"libccid, a generic -.\".Em CCID -.\"driver for use by PC/SC-Lite to interface to -.\".Nm -.\"devices. -.El -.Sh COMPATIBILITY -Userland smartcard code written for the vendor's Linux drivers -should work with the -.Nm -driver without modification. -.Sh SEE ALSO -.Xr pccard 4 -.Sh HISTORY -The -.Nm cmx -driver first appeared in -.Fx 7.1 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Daniel Roethlisberger Aq Mt daniel@roe.ch , -originally based on the Linux driver v1.1.0 by -.An Omnikey GmbH Lk www.omnikey.com . -Early testing and bug fixes by -.An Marcin Cieslak Aq Mt saper@system.pl . -.Sh BUGS -.An -nosplit -The way the -.Nm -driver talks to the CardMan 4040 is a bit rough. -Due to the complete lack of hardware documentation other than vendor drivers -for other operating systems, the gory details of the device's -I/O registers are not understood very well. -There may be error conditions which can only be solved by physically -reinserting the reader. diff --git a/share/man/man4/cy.4 b/share/man/man4/cy.4 deleted file mode 100644 index 7f7b20e1487..00000000000 --- a/share/man/man4/cy.4 +++ /dev/null @@ -1,257 +0,0 @@ -.\" 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: com.4,v 1.1 1993/08/06 11:19:07 cgd Exp -.\" from: sio.4,v 1.16 1995/06/26 06:05:30 bde Exp $ -.\" $FreeBSD: stable/11/share/man/man4/cy.4 263142 2014-03-14 03:07:51Z eadler $ -.\" -.Dd May 24, 2004 -.Dt CY 4 -.Os -.Sh NAME -.Nm cy -.Nd Cyclades Cyclom-Y serial driver -.Sh SYNOPSIS -For one ISA card: -.Bd -ragged -offset indent -compact -.Cd "device cy" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.cy.0.at="isa" -.Cd hint.cy.0.irq="10" -.Cd hint.cy.0.maddr="0xd4000" -.Cd hint.cy.0.msize="0x2000" -.Ed -.Pp -For two ISA cards: -.Bd -ragged -offset indent -compact -.Cd "device cy" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.cy.0.at="isa" -.Cd hint.cy.0.irq="10" -.Cd hint.cy.0.maddr="0xd4000" -.Cd hint.cy.0.msize="0x2000" -.Cd hint.cy.1.at="isa" -.Cd hint.cy.1.irq="11" -.Cd hint.cy.1.maddr="0xd6000" -.Cd hint.cy.1.msize="0x2000" -.Ed -.Pp -For PCI cards: -.Bd -ragged -offset indent -compact -.Cd "device cy" -.Cd "options CY_PCI_FASTINTR" -.Pp -No lines are required in -.Pa /boot/device.hints -for PCI cards. -.Ed -.Pp -Minor numbering: -.Bd -literal -offset indent -compact -0b\fIMMMMMMMMMMMMMMMMxxxxxxxxOLIMMMMM\fR - call\fBO\fRut - \fBL\fRock - \fBI\fRnitial - \fBMMMMMMMMMMMMMMMM MMMMMM\fRinor -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for Cirrus Logic CD1400-based -.Tn EIA -.Tn RS-232C -.Pf ( Tn CCITT -.Tn V.24 ) -communications interfaces (ports) on Cyclades Cyclom-Y boards. -Each CD1400 provides 4 ports. -Cyclom-Y boards with various numbers of CD1400's are available. -This driver supports up to 8 CD1400's (32 ports) per board. -.Pp -Input and output for each line may set independently -to the following speeds: -50, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, -19200, 38400, 57600, or 115200 bps. -Other speeds of up to 150000 are supported by the termios interface -but not by the sgttyb compatibility interface. -The CD1400 is not fast enough to handle speeds above 115200 bps -effectively. -It can transmit on a single line at slightly more than 115200 bps, -but when 4 lines are active in both directions its limit is about -90000 bps on each line. -.\" XXX the following should be true for all serial drivers and -.\" should not be repeated in the man pages for all serial drivers. -.\" It was copied from sio.4. The only change was s/sio/cy/g. -.Pp -Serial ports controlled by the -.Nm -driver can be used for both `callin' and `callout'. -For each port there is a callin device and a callout device. -The minor number of the callout device is 128 higher -than that of the corresponding callin port. -The callin device is general purpose. -Processes opening it normally wait for carrier -and for the callout device to become inactive. -The callout device is used to steal the port from -processes waiting for carrier on the callin device. -Processes opening it do not wait for carrier -and put any processes waiting for carrier on the callin device into -a deeper sleep so that they do not conflict with the callout session. -The callout device is abused for handling programs that are supposed -to work on general ports and need to open the port without waiting -but are too stupid to do so. -.Pp -The -.Nm -driver also supports an initial-state and a lock-state control -device for each of the callin and the callout "data" devices. -The minor number of the initial-state device is 32 higher -than that of the corresponding data device. -The minor number of the lock-state device is 64 higher -than that of the corresponding data device. -The termios settings of a data device are copied -from those of the corresponding initial-state device -on first opens and are not inherited from previous opens. -Use -.Xr stty 1 -in the normal way on the initial-state devices to program -initial termios states suitable for your setup. -.Pp -The lock termios state acts as flags to disable changing -the termios state. -E.g., to lock a flag variable such as -CRTSCTS, use -.Em "stty crtscts" -on the lock-state device. -Speeds and special characters -may be locked by setting the corresponding value in the lock-state -device to any nonzero value. -.Pp -Correct programs talking to correctly wired external devices -work with almost arbitrary initial states and almost no locking, -but other setups may benefit from changing some of the default -initial state and locking the state. -In particular, the initial states for non (POSIX) standard flags -should be set to suit the devices attached and may need to be -locked to prevent buggy programs from changing them. -E.g., CRTSCTS should be locked on for devices that support -RTS/CTS handshaking at all times and off for devices that do not -support it at all. -CLOCAL should be locked on for devices -that do not support carrier. -HUPCL may be locked off if you do not -want to hang up for some reason. -In general, very bad things happen -if something is locked to the wrong state, and things should not -be locked for devices that support more than one setting. -The -CLOCAL flag on callin ports should be locked off for logins -to avoid certain security holes, but this needs to be done by -getty if the callin port is used for anything else. -.Ss Kernel Configuration Options -The -.Em CY_PCI_FASTINTR -option should be used to avoid suboptimal interrupt handling for -PCI Cyclades boards. -The PCI BIOS must be configured with the -.Nm -interrupt not shared with any other active device -for this option to work. -This option is not the default because it is currently harmful in -certain cases where it does not work. -.Sh FILES -.\" XXX more cloning: s/d/c/g and add a ? for the card number. -.Bl -tag -width /dev/ttyic?? -compact -.It Pa /dev/ttyc?? -for callin ports -.It Pa /dev/ttyic?? -.It Pa /dev/ttylc?? -corresponding callin initial-state and lock-state devices -.Pp -.\" XXX more cloning: s/a/c/g. No consistency :-(. -.It Pa /dev/cuac?? -for callout ports -.It Pa /dev/cuaic?? -.It Pa /dev/cualc?? -corresponding callout initial-state and lock-state devices -.El -.Pp -.Bl -tag -width /etc/rc.serial -compact -.It Pa /etc/rc.serial -examples of setting the initial-state and lock-state devices -.El -.Pp -The first question mark in these device names is short for the -card number -(a decimal number between 0 and 65535 inclusive). -The second question mark is short for the port number -(a letter in the range [0-9a-v]). -.Sh DIAGNOSTICS -.Bl -diag -.\" XXX back to s/sio/cy/g. -.It cy%d: silo overflow. -Problem in the interrupt handler. -.El -.Bl -diag -.It cy%d: interrupt-level buffer overflow. -Problem in the bottom half of the driver. -.El -.Bl -diag -.It cy%d: tty-level buffer overflow. -Problem in the application. -Input has arrived faster than the given module could process it -and some has been lost. -.El -.\" .Bl -diag -.\" .It sio%d: reduced fifo trigger level to %d. -.\" Attempting to avoid further silo overflows. -.\" .El -.Sh SEE ALSO -.Xr stty 1 , -.Xr termios 4 , -.Xr tty 4 , -.Xr comcontrol 8 , -.Xr pstat 8 -.Sh HISTORY -The -.Nm -driver is derived from the -.Nm sio -driver and the -.Nx -.Nm -driver and is -.Ud -.Sh BUGS -Serial consoles are not implemented. diff --git a/share/man/man4/de.4 b/share/man/man4/de.4 deleted file mode 100644 index 4f97523bdeb..00000000000 --- a/share/man/man4/de.4 +++ /dev/null @@ -1,157 +0,0 @@ -.\" -.\" Copyright (c) 1997 David E. O'Brien -.\" -.\" 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: stable/11/share/man/man4/de.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24, 2018 -.Dt DE 4 -.Os -.Sh NAME -.Nm de -.Nd "DEC DC21x4x Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device de" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_de_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for the Ethernet adapters based on the Digital -Equipment DC21x4x based self-contained Ethernet and Fast Ethernet -chips. -.Pp -The -.Nm -driver supports the following media types: -.Bl -tag -width xxxxxxxxxxxxxxx -.It autoselect -Enable autoselection of the media type and options -.It 10baseT/UTP -Set 10Mbps operation on the 10baseT port -.It 10base2/BNC -Set 10Mbps operation on the BNC port -.It 10base5/AUI -Set 10Mbps operation on the AUI port -.It 100baseTX -Set 100Mbps (Fast Ethernet) operation -.It 100baseFX -Set 100Mbps operation -.It 100baseT4 -Set 100Mbps operation (4-pair cat-3 cable) -.El -.Pp -The -.Nm -driver supports the following media options: -.Bl -tag -width xxxxxxxxxxxxxxx -.It full-duplex -Set full duplex operation -.El -.Pp -Note that the media types available depend on the particular card in use. -Some cards are explicitly programmed to a particular media type by a -setup utility and are not changeable. -.Pp -Use the -.Xr ifconfig 8 -command and in particular the -.Fl m -flag to list the supported media types for your particular card. -.Pp -The old -.Dq ifconfig linkN -method of configuration is not supported. -.Sh HARDWARE -Adapters supported by the -.Nm -driver include: -.Pp -.Bl -bullet -compact -.It -Adaptec ANA-6944/TX -.It -Cogent EM100FX and EM440TX -.It -Corega FastEther PCI-TX -.It -D-Link DFE-500TX -.It -DEC DE435, DEC DE450, and DEC DE500 -.It -ELECOM LD-PCI2T, LD-PCITS -.It -I-O DATA LA2/T-PCI -.It -SMC Etherpower 8432, 9332 and 9334 -.It -ZNYX ZX3xx -.El -.Sh DIAGNOSTICS -.Bl -diag -.It "de%d: waking device from sleep/snooze mode" -The 21041 and 21140A chips support suspending the operation of the card. -.It "de%d: error: desired IRQ of %d does not match device's actual IRQ of %d" -The device probe detected that the board is configured for a different -interrupt than the one specified in the kernel configuration file. -.It "de%d: not configured; limit of %d reached or exceeded" -There is a limit of 32 -.Nm -devices allowed in a single machine. -.It "de%d: not configured; 21040 pass 2.0 required (%d.%d found)" -.It "de%d: not configured; 21140 pass 1.1 required (%d.%d found)" -Certain revisions of the chipset are not supported by this driver. -.El -.Sh SEE ALSO -.Xr altq 4 , -.Xr arp 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh AUTHORS -.An -nosplit -The -.Nm -device driver was written by -.An Matt Thomas . -This manual page was written by -.An David E. O'Brien . diff --git a/share/man/man4/dpt.4 b/share/man/man4/dpt.4 deleted file mode 100644 index c687d185c01..00000000000 --- a/share/man/man4/dpt.4 +++ /dev/null @@ -1,109 +0,0 @@ -.\" -.\" Copyright (c) 1998 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. 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$ -.\" -.Dd November 13, 2014 -.Dt DPT 4 -.Os -.Sh NAME -.Nm dpt -.Nd DPT RAID Controller SCSI driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device scbus" -.Cd "device dpt" -.Pp -For one or more PCI cards: -.Cd "device pci" -.Pp -To allow PCI adapters to use memory mapped I/O if enabled: -.Cd options DPT_ALLOW_MEMIO -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -dpt_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver supports DPT RAID SCSI controllers. -.Pp -SmartRAID (PM3???) are "Enterprise" class cards, -and SmartCache (PM2???) cards are in the "Workstation" class. -The Gen 4 Smart Cache IV products were a re-issue of the Gen 3 utilizing -upgraded (and cheaper to produce) silicon. -The PM3334 (Smart RAID III) was not revamped as there was no upgraded silicon -(68040 processor) and it was using the best DPT made. -Note there has been customer confusion over the faster enterprise class card -supported by this driver being an older generation. -The Gen5 cards are supported by the -.Xr asr 4 -driver. -.Sh HARDWARE -The -.Nm -driver provides support for the following RAID adapters: -.Pp -.Bl -bullet -compact -.It -DPT Smart Cache Plus -.It -Smart Cache II (PM2?2?, PM2024/PM2124 [PCI]) (Gen2) -.It -Smart RAID II (PM3?2?, PM3021, PM3222) -.It -Smart Cache III (PM2?3?) -.It -Smart RAID III (PM3?3?, PM3334UW [PCI]) (Gen3) -.It -Smart Cache IV (PM2?4?, PM2044/PM2144 [PCI]) (Gen4) -.It -Smart RAID IV -.El -.Sh SEE ALSO -.Xr asr 4 , -.Xr cd 4 , -.Xr ch 4 , -.Xr da 4 , -.Xr sa 4 , -.Xr scsi 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 2.2.6 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Simon Shapiro -and ported to the CAM SCSI system by -.An Justin T. Gibbs . diff --git a/share/man/man4/ed.4 b/share/man/man4/ed.4 deleted file mode 100644 index 30646be9b53..00000000000 --- a/share/man/man4/ed.4 +++ /dev/null @@ -1,407 +0,0 @@ -.\" -.\" Copyright (c) 1994, David Greenman -.\" 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 David Greenman. -.\" 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 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$ -.\" -.Dd October 24, 2018 -.Dt ED 4 -.Os -.Sh NAME -.Nm ed -.Nd "NE-2000 and WD-80x3 Ethernet driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device miibus" -.Cd "device ed" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_ed_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for 8 and 16bit Ethernet cards that are based on -the National Semiconductor DS8390 and similar NICs manufactured by -other companies. -The -.Nm -driver also supports many PC Card chips which interface via MII to a PHY. -Axiom's AX88790, AX88190 and AX88190A; -DLink's DL10019 and DL10022; and -Tamarack's TC5299J chips all support internal or external MII/PHY combinations. -Realtek's PCI and ISA RTL80x9-based cards are also supported. -For these chipsets, autonegotiation and status reporting are supported. -.Pp -In addition to the standard port and IRQ specifications, the -.Nm -driver also supports a number of -.Cd flags -which can force 8/16bit mode, enable/disable multi-buffering, and select the default -interface type (AUI/BNC, and for cards with twisted pair, AUI/10BaseT). -.Pp -The -.Cd flags -are a bit field, and are summarized as follows: -.Bl -tag -width indent -.It Li 0x01 -Disable transceiver. -On those cards which support it, this flag causes the transceiver to -be disabled and the AUI connection to be used by default. -.It Li 0x02 -Force 8bit mode. -This flag forces the card to 8bit mode regardless of how the -card identifies itself. -This may be needed for some clones which incorrectly -identify themselves as 16bit, even though they only have an 8bit interface. -This flag takes precedence over force 16bit mode. -.It Li 0x04 -Force 16bit mode. -This flag forces the card to 16bit mode regardless of how the -card identifies itself. -This may be needed for some clones which incorrectly -identify themselves as 8bit, even though they have a 16bit ISA interface. -.It Li 0x08 -Disable transmitter multi-buffering. -This flag disables the use of multiple -transmit buffers and may be necessary in rare cases where packets are sent out -faster than a machine on the other end can handle (as evidenced by severe packet -lossage). -Some -.No ( non- Ns Fx -:-)) machines have terrible Ethernet performance -and simply cannot cope with 1100K+ data rates. -Use of this flag also provides -one more packet worth of receiver buffering, and on 8bit cards, this may help -reduce receiver lossage. -.El -.Pp -When using a 3c503 card, the AUI connection may be selected by specifying the -.Cm link2 -option to -.Xr ifconfig 8 -(BNC is the default). -.Sh HARDWARE -The -.Nm -driver supports the following Ethernet NICs: -.Pp -.Bl -bullet -compact -.It -3Com 3c503 Etherlink II -.Pq Cd "options ED_3C503" -.It -AR-P500 Ethernet -.It -Accton EN1644 (old model), EN1646 (old model), EN2203 (old model) (110pin) -(flags 0xd00000) -.It -Accton EN2212/EN2216/UE2216 -.It -Allied Telesis CentreCOM LA100-PCM_V2 -.It -AmbiCom 10BaseT card (8002, 8002T, 8010 and 8610) -.It -Bay Networks NETGEAR FA410TXC Fast Ethernet -.It -Belkin F5D5020 PC Card Fast Ethernet -.It -Billionton LM5LT-10B Ethernet/Modem PC Card -.It -Billionton LNT-10TB, LNT-10TN Ethernet PC Card -.It -Bromax iPort 10/100 Ethernet PC Card -.It -Bromax iPort 10 Ethernet PC Card -.It -Buffalo LPC2-CLT, LPC3-CLT, LPC3-CLX, LPC4-TX, LPC-CTX PC Card -.It -Buffalo LPC-CF-CLT CF Card -.It -CNet BC40 adapter -.It -Compex Net-A adapter -.It -Compex RL2000 -.It -Corega Ether PCC-T/EtherII PCC-T/FEther PCC-TXF/PCC-TXD PCC-T/Fether II TXD -.It -Corega LAPCCTXD (TC5299J) -.It -CyQ've ELA-010 -.It -DEC EtherWorks DE305 -.It -Danpex EN-6200P2 -.It -D-Link DE-660, DE-660+ -.It -D-Link IC-CARD/IC-CARD+ Ethernet -.It -ELECOM Laneed LD-CDL/TX, LD-CDF, LD-CDS, LD-10/100CD, LD-CDWA (DP83902A) -.It -Hawking PN652TX PC Card (AX88790) -.It -HP PC Lan+ 27247B and 27252A -.Pq Cd "options ED_HPP" -.It -IBM Creditcard Ethernet I/II -.It -I-O DATA ET2/T-PCI -.It -I-O DATA PCLATE -.It -Kingston KNE-PC2, CIO10T, KNE-PCM/x Ethernet -.It -KTI ET32P2 PCI -.It -Linksys EC2T/PCMPC100/PCM100, PCMLM56 -.It -Linksys EtherFast 10/100 PC Card, Combo PCMCIA Ethernet Card (PCMPC100 V2) -.It -MACNICA Ethernet ME1 for JEIDA -.It -MELCO LGY-PCI-TR -.It -MELCO LPC-T/LPC2-T/LPC2-CLT/LPC2-TX/LPC3-TX/LPC3-CLX -.It -NDC Ethernet Instant-Link -.It -National Semiconductor InfoMover NE4100 -.It -NetGear FA-410TX -.It -NetVin NV5000SC -.It -Network Everywhere Ethernet 10BaseT PC Card -.It -New Media LANSurfer 10+56 Ethernet/Modem -.It -New Media LANSurfer -.It -Novell NE1000/NE2000/NE2100 -.It -PLANEX ENW-8300-T -.It -PLANEX FNW-3600-T -.It -Psion 10/100 LANGLOBAL Combine iT -.It -RealTek 8019 -.It -RealTek 8029 -.It -Relia Combo-L/M-56k PC Card -.It -SMC Elite 16 WD8013 -.It -SMC Elite Ultra -.It -SMC WD8003E/WD8003EBT/WD8003S/WD8003SBT/WD8003W/WD8013EBT/WD8013W and clones -.It -SMC EZCard PC Card, 8040-TX, 8041-TX (AX88x90), 8041-TX V.2 (TC5299J) -.It -Socket LP-E, ES-1000 Ethernet/Serial, LP-E CF, LP-FE CF -.It -Surecom EtherPerfect EP-427 -.It -Surecom NE-34 -.It -TDK 3000/3400/5670 Fast Ethernet/Modem -.It -TDK LAK-CD031, Grey Cell GCS2000 Ethernet Card -.It -TDK DFL5610WS Ethernet/Modem PC Card -.It -Telecom Device SuperSocket RE450T -.It -Toshiba LANCT00A PC Card -.It -VIA VT86C926 -.It -Winbond W89C940 -.It -Winbond W89C940F -.El -.Pp -ISA, PCI and PC Card devices are supported. -.Pp -The -.Nm -driver does not support the following Ethernet NICs: -.Pp -.Bl -bullet -compact -.It -Mitsubishi LAN Adapter B8895 -.El -.Sh DIAGNOSTICS -.Bl -diag -.It "ed%d: failed to clear shared memory at %x - check configuration." -When the card was probed at system boot time, the -.Nm -driver found that it could not clear the card's shared memory. -This is most commonly -caused by a BIOS extension ROM being configured in the same address space as the -Ethernet card's shared memory. -Either find the offending card and change its BIOS -ROM to be at an address that does not conflict, or change the -settings in -.Xr device.hints 5 -that the card's shared memory is mapped at a -non-conflicting address. -.It "ed%d: Invalid irq configuration (%d) must be 2-5 for 3c503." -The IRQ number that was specified in the -.Xr device.hints 5 -file is not valid for the 3Com 3c503 card. -The 3c503 can only be assigned to IRQs 2 through 5. -.It "ed%d: Cannot find start of RAM." -.It "ed%d: Cannot find any RAM, start : %d, x = %d." -The probe of a Gateway card was unsuccessful in configuring the card's packet memory. -This likely indicates that the card was improperly recognized as a Gateway or that -the card is defective. -.It "ed: packets buffered, but transmitter idle." -Indicates a logic problem in the driver. -Should never happen. -.It "ed%d: device timeout" -Indicates that an expected transmitter interrupt did not occur. -Usually caused by an -interrupt conflict with another card on the ISA bus. -This condition could also be caused if the kernel is configured for a -different IRQ channel than the one the card is actually using. -If that is the case, you will have to either reconfigure the card -using a DOS utility or set the jumpers on the card appropriately. -.It "ed%d: NIC memory corrupt - invalid packet length %d." -Indicates that a packet was received with a packet length that was either larger than -the maximum size or smaller than the minimum size allowed by the IEEE 802.3 standard. -Usually -caused by a conflict with another card on the ISA bus, but in some cases may also -indicate faulty cabling. -.It "ed%d: remote transmit DMA failed to complete." -This indicates that a programmed I/O transfer to an NE1000 or NE2000 style card -has failed to properly complete. -Usually caused by the ISA bus speed being set -too fast. -.It "ed%d: Invalid irq configuration (%ld) must be %s for %s" -Indicates the device has a different IRQ than supported or expected. -.It "ed%d: Cannot locate my ports!" -The device is using a different I/O port than the driver knows about. -.It "ed%d: Cannot extract MAC address" -Attempts to get the MAC address failed. -.It "ed%d: Missing mii!" -Probing for an MII bus has failed. -This indicates a coding error in the PC Card attachment, because a PHY -is required for the chips that generate this error message. -.El -.Sh SEE ALSO -.Xr altq 4 , -.Xr arp 4 , -.Xr miibus 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr device.hints 5 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 1.0 . -.Sh AUTHORS -The -.Nm -device driver and this manual page were written by -.An David Greenman . -.Sh CAVEATS -Early revision DS8390 chips have problems. -They lock up whenever the receive -ring-buffer overflows. -They occasionally switch the byte order -of the length field in the packet ring header (several different causes -of this related to an off-by-one byte alignment) - resulting in -.Qq Li "NIC memory corrupt - invalid packet length" -messages. -The card is reset -whenever these problems occur, but otherwise there is no problem with -recovering from these conditions. -.Pp -The NIC memory access to 3Com and Novell cards is much slower than it is on -WD/SMC cards; it is less than 1MB/second on 8bit boards and less than 2MB/second -on the 16bit cards. -This can lead to ring-buffer overruns resulting in -dropped packets during heavy network traffic. -.Pp -The Mitsubishi B8895 PC Card uses a DP83902, but its ASIC part is -undocumented. -Neither the NE2000 nor the WD83x0 drivers work with this card. -.Sh BUGS -The -.Nm -driver is a bit too aggressive about resetting the card whenever any bad -packets are received. -As a result, it may throw out some good packets which -have been received but not yet transferred from the card to main memory. -.Pp -The -.Nm -driver is slow by today's standards. -.Pp -PC Card attachment supports the D-Link DMF650TX LAN/Modem card's Ethernet -port only at this time. -.Pp -Some devices supported by -.Nm -do not generate the link state change events used by -.Xr devd 8 -to start -.Xr dhclient 8 . -If you have problems with -.Xr dhclient 8 -not starting and the device is always attached to the network it may -be possible to work around this by changing -.Dq Li DHCP -to -.Dq Li SYNCDHCP -in the -.Va ifconfig_ed0 -entry in -.Pa /etc/rc.conf . diff --git a/share/man/man4/ena.4 b/share/man/man4/ena.4 index 4f3d0374546..fe91e1e6d1c 100644 --- a/share/man/man4/ena.4 +++ b/share/man/man4/ena.4 @@ -1,6 +1,6 @@ .\" SPDX-License-Identifier: BSD-2-Clause .\" -.\" Copyright (c) 2015-2023 Amazon.com, Inc. or its affiliates. +.\" Copyright (c) 2015-2024 Amazon.com, Inc. or its affiliates. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -137,17 +137,17 @@ This can further lead to OS instability, together with ENA driver reset and NVMe timeouts. If network performance is critical and memory capacity is sufficient, the 9k mbufs can be used. -.It Va hw.ena.force_large_llq_headers -Force the driver to use large LLQ headers (224 bytes). -The default is 0. +.It Va hw.ena.force_large_llq_header +Force the driver to use large (224 bytes) or regular (96 bytes) LLQ header size. +The default value is 2 and the recommended LLQ header size will be used. If the node value is set to 0, the regular size LLQ header will be used, which is 96B. In some cases, the packet header can be bigger than this (for example - IPv6 with multiple extensions). -In such a situation, the large LLQ headers should be used by setting this node -value to 1. -This will take effect only if the device supports both LLQ and large LLQ -headers. +In such a situation, the large LLQ header size which is 224B should be used, +and can be forced by setting this node value to 1. +Using large LLQ header size will take effect only if the device supports +both LLQ and large LLQ headers. Otherwise, it will fallback to the no LLQ mode or regular header size. .Pp Increasing LLQ header size reduces the size of the Tx queue by half, so it may diff --git a/share/man/man4/geom_fox.4 b/share/man/man4/geom_fox.4 deleted file mode 100644 index b08244a5021..00000000000 --- a/share/man/man4/geom_fox.4 +++ /dev/null @@ -1,223 +0,0 @@ -.\" -.\" Copyright (c) 2006 Wilko Bulte -.\" 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: stable/11/share/man/man4/geom_fox.4 332519 2018-04-16 00:12:03Z kevans $ -.\" -.Dd September 12, 2015 -.Dt GEOM_FOX 4 -.Os -.Sh NAME -.Nm geom_fox -.Nd "GEOM based basic disk multipathing" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "options GEOM_FOX" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -geom_fox_load="YES" -.Ed -.Sh DESCRIPTION -.Bf -symbolic -This driver is obsolete. -Users are advised to use -.Xr gmultipath 8 -instead. -This driver will be removed in -.Fx 12 . -.Ef -.Pp -The intent of the -.Nm -framework is to provide basic multipathing support to access direct -access devices. -Basic in the above sentence should be read as: -.Nm -only provides path failover functionality, not load balancing over -the available paths etc. -Using suitable hardware like SCSI or FibreChannel disks it is -possible to have multiple (typically 2) host bus adapters access -the same physical disk drive. -.Pp -Without a multipathing driver the -.Fx -kernel would probe the disks multiple times, resulting in the creation of -multiple -.Pa /dev -entries for the same underlying physical device. -A unique label written in the GEOM label area allows -.Nm -to detect multiple paths. -Using this information it creates a unique -.Pa da#.fox -device. -.Pp -The -.Nm -device is subsequently used by the -.Fx -kernel to access the disks. -Multiple physical access paths ensure that even in case of a path failure the -.Fx -kernel can continue to access the data. -.Pp -The -.Nm -driver will disallow write operations to the underlying devices once the -fox device has been opened for writing. -.Sh EXAMPLES -.Bl -bullet -compact -.It -.Nm -needs a label on the disk as follows in order to work properly: -.Bd -literal -"0123456789abcdef0123456789abcdef" -"GEOM::FOX <--unique--id-->" -.Ed -.Pp -For the unique ID 16 bytes are available. -The -.Dq Li GEOM::FOX -is the magic to mark a -.Nm -device. -.Pp -The actual labelling is accomplished by -.Bd -literal -echo "GEOM::FOX someid" | dd of=/dev/da2 conv=sync -.Ed -.Pp -For FibreChannel devices it is suggested to use the Node World Wide -Name (Node WWN) as this is guaranteed by the FibreChannel standard to -be worldwide unique. -The use of the Port WWN not recommended as each port of a given -device has a different WWN, thereby confusing things. -.Pp -The Node WWN can be obtained from a verbose boot as in for example -.Bd -literal -isp1: Target 1 (Loop 0x1) Port ID 0xe8 (role Target) Arrived - Port WWN 0x21000004cfc8aca2 - Node WWN 0x20000004cfc8aca2 -.Ed -.Pp -This Node WWN would then be used like so: -.Bd -literal -echo "GEOM::FOX 20000004cfc8aca2" | dd of=/dev/da2 conv=sync -.Ed -.Pp -For non-FibreChannel devices you could for example use the serial -number of the device. -Regardless of what you use, make sure the label is unique. -.Pp -Once the labelling has been performed and assuming the -.Nm -module is loaded the kernel will inform you that it has found a new -.Nm -device with a message similar to -.Bd -literal -Creating new fox (da2) -fox da2.fox lock 0xfffffc0000fdba20 -.Ed -.Pp -.It -To check which physical devices match a given -.Nm -device: -.Bd -literal -offset indent -# geom fox list -Geom name: da2.fox -Providers: -1. Name: da2.fox - Mediasize: 73407865344 (68G) - Sectorsize: 512 - Mode: r0w0e0 -Consumers: -1. Name: da2 - Mediasize: 73407865856 (68G) - Sectorsize: 512 - Mode: r0w0e0 -2. Name: da6 - Mediasize: 73407865856 (68G) - Sectorsize: 512 - Mode: r0w0e0 -.Ed -.Pp -.It -To check the status of the -.Nm -components: -.Bd -literal -# geom fox status - Name Status Components -da2.fox N/A da2 - da6 -.Ed -.El -.Sh SEE ALSO -.Xr GEOM 4 , -.Xr geom 8 , -.Xr gmultipath 8 -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Poul-Henning Kamp Aq Mt phk@FreeBSD.org . -This manual page was written by -.An Wilko Bulte Aq Mt wilko@FreeBSD.org . -.Sh CAVEATS -The -.Nm -driver depends on the underlying hardware drivers to do the right thing in case -of a path failure. -If for example a hardware driver continues to retry forever, -.Nm -is not able to re-initiate the I/O to an alternative physical path. -.Pp -You have to be very sure to provide a unique label for each of the -.Nm -devices. -Safety belts are not provided. -For FibreChannel devices it is suggested to use the Port WWN of the device. -The World Wide Name is guaranteed to be worldwide unique per the -FibreChannel standard. -.Sh BUGS -The -.Nm -framework has only seen light testing. -There definitely might be dragons here. -.Pp -The name -.Nm -is completely obscure. -Just remember that any sly fox has multiple exits from its hole. -.Pp -The examples provided are too FibreChannel-centric. diff --git a/share/man/man4/hme.4 b/share/man/man4/hme.4 deleted file mode 100644 index 0cc2aea1ff0..00000000000 --- a/share/man/man4/hme.4 +++ /dev/null @@ -1,158 +0,0 @@ -.\" $NetBSD: hme.4,v 1.4 2003/02/14 15:20:18 grant 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. -.\" -.\" $FreeBSD$ -.\" -.Dd February 12, 2020 -.Dt HME 4 -.Os -.Sh NAME -.Nm hme -.Nd "Sun Microelectronics STP2002-STQ Ethernet interfaces device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device miibus" -.Cd "device hme" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_hme_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver supports Sun Microelectronics STP2002-STQ -.Dq Happy Meal Ethernet -Fast Ethernet interfaces. -.Pp -All controllers supported by the -.Nm -driver have TCP checksum offload capability for both receive and transmit, -support for the reception and transmission of extended frames for -.Xr vlan 4 -and a 128-bit multicast hash filter. -.Sh HARDWARE -The -.Nm -driver supports the on-board Ethernet interfaces of many -Sun -.Tn UltraSPARC -workstation and server models. -.Pp -Cards supported by the -.Nm -driver include: -.Pp -.Bl -bullet -compact -.It -Sun PCI SunSwift Adapter -.Pq Dq SUNW,hme -.It -Sun SBus SunSwift Adapter -.Dq ( hme -and -.Dq SUNW,hme ) -.It -Sun PCI Sun100BaseT Adapter 2.0 -.Pq Dq SUNW,hme -.It -Sun SBus Sun100BaseT 2.0 -.Pq Dq SUNW,hme -.It -Sun PCI Quad FastEthernet Controller -.Pq Dq SUNW,qfe -.It -Sun SBus Quad FastEthernet Controller -.Pq Dq SUNW,qfe -.El -.Sh NOTES -On sparc64 the -.Nm -driver respects the -.Va local-mac-address? -system configuration variable which can be set in the Open Firmware boot -monitor using the -.Ic setenv -command or by -.Xr eeprom 8 . -If set to -.Dq Li false -(the default), the -.Nm -driver will use the system's default MAC address for all of its devices. -If set to -.Dq Li true , -the unique MAC address of each interface is used if present rather than -the system's default MAC address. -.Pp -Supported interfaces having their own MAC address include on-board versions -on boards equipped with more than one Ethernet interface and all add-on cards -except the single-port SBus versions. -.Sh SEE ALSO -.Xr altq 4 , -.Xr intro 4 , -.Xr miibus 4 , -.Xr netintro 4 , -.Xr vlan 4 , -.Xr eeprom 8 , -.Xr ifconfig 8 -.Rs -.%T "STP2002QFP Fast Ethernet, Parallel Port, SCSI (FEPS) User's Guide" -.%D April 1996 -.%A Sun Microelectronics -.%U http://mediacast.sun.com/users/Barton808/media/STP2002QFP-FEPs_UG.pdf -.Re -.Sh HISTORY -The -.Nm -driver first appeared in -.Nx 1.5 . -The first -.Fx -version to include it was -.Fx 5.0 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Paul Kranenburg Aq Mt pk@NetBSD.org . diff --git a/share/man/man4/ice.4 b/share/man/man4/ice.4 index da46c758479..63fdb244f3e 100644 --- a/share/man/man4/ice.4 +++ b/share/man/man4/ice.4 @@ -114,7 +114,10 @@ Update Utility for Intel Network Adapter 800 series; installed by the package. .El .Sh HARDWARE -Most adapters in the Intel Ethernet 800 Series with SFP28/QSFP28 cages +The +.Nm +driver supports the Intel Ethernet 800 series. +Most adapters in this series with SFP28/QSFP28 cages have firmware that requires that Intel qualified modules are used; these qualified modules are listed below. This qualification check cannot be disabled by the driver. diff --git a/share/man/man4/igc.4 b/share/man/man4/igc.4 index e3dc7da6571..12e252030f9 100644 --- a/share/man/man4/igc.4 +++ b/share/man/man4/igc.4 @@ -101,21 +101,6 @@ Disable or enable hardware stripping of CRC field. This is mostly useful on BMC/IPMI shared interfaces where stripping the CRC causes remote access over IPMI to fail. Default 0 (enabled). -.It Va hw.igc.rx_int_delay -This value delays the generation of receive interrupts in units -of 1.024 microseconds. -The default value is 0, since adapters may hang with this feature being -enabled. -.It Va hw.igc.rx_abs_int_delay -If hw.igc.rx_int_delay is non-zero, this tunable limits the -maximum delay in which a receive interrupt is generated. -.It Va hw.igc.tx_int_delay -This value delays the generation of transmit interrupts in units -of 1.024 microseconds. -The default value is 64. -.It Va hw.igc.tx_abs_int_delay -If hw.igc.tx_int_delay is non-zero, this tunable limits the -maximum delay in which a transmit interrupt is generated. .It Va hw.igc.sbp Show bad packets when in promiscuous mode. Default is false. diff --git a/share/man/man4/ixgbe.4 b/share/man/man4/ix.4 similarity index 61% rename from share/man/man4/ixgbe.4 rename to share/man/man4/ix.4 index b151d346639..418b6e1188a 100644 --- a/share/man/man4/ixgbe.4 +++ b/share/man/man4/ix.4 @@ -29,32 +29,31 @@ .\" .\" * Other names and brands may be claimed as the property of others. .\" -.Dd May 17, 2023 -.Dt IXGBE 4 +.Dd October 26, 2024 +.Dt IX 4 .Os .Sh NAME -.Nm ixgbe -.Nd "Intel(R) 10Gb Ethernet driver for the FreeBSD operating system" +.Nm ix +.Nd Intel 10Gb Ethernet driver .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your kernel configuration file: .Bd -ragged -offset indent .Cd "device iflib" -.Cd "device ixgbe" +.Cd "device ix" .Ed .Pp Alternatively, to load the driver as a module at boot time, place the following line in .Xr loader.conf 5 : .Bd -literal -offset indent -if_ixgbe_load="YES" +if_ix_load="YES" .Ed .Sh DESCRIPTION The .Nm -driver provides support for PCI 10Gb Ethernet adapters based on -the Intel 82598EB Intel(R) Network Connections. +driver provides support for Intel(R) 10Gb Ethernet PCIe adapters. The driver supports Jumbo Frames, MSIX, TSO, and RSS. .Pp For questions related to hardware requirements, @@ -74,25 +73,70 @@ For information on enabling VLANs, see .Sh HARDWARE The .Nm -driver supports the following cards: +driver supports Intel 10Gb Ethernet PCIe adapters, +including: .Pp .Bl -bullet -compact .It -Intel(R) 10 Gigabit XF SR/AF Dual Port Server Adapter +Intel(R) Ethernet X553 .It -Intel(R) 10 Gigabit XF SR/LR Server Adapter +Intel(R) Ethernet X552 .It -Intel(R) 82598EB 10 Gigabit AF Network Connection +Intel(R) Ethernet X550 .It -Intel(R) 82598EB 10 Gigabit AT CX4 Network Connection +Intel(R) Ethernet X540 Bypass +.It +Intel(R) Ethernet X540 +.It +Intel(R) Ethernet X520 Bypass (82599) +.It +Intel(R) Ethernet X520 (82599) +.It +Intel(R) 10 Gigabit Server Adapter (82598EB) +.El +.Sh LOADER TUNABLES +The +.Nm +driver supports the following loader tunables: +.Bl -tag -width "hw.ix.allow_unsupported_sfp" +.It Va hw.ix.max_interrupt_rate +Maximum interrupts per second. +.It Va hw.ix.flow_control +Default flow control used for all adapters. +.It Va hw.ix.advertise_speed +Default advertised speed for all adapters. +.It Va hw.ix.enable_msix +Enable Message Signalled Interrupts (MSI-X). +.It Va hw.ix.allow_unsupported_sfp +Allow unsupported small form-factor pluggable +.Pq SFP +modules. +Use at your own risk. +.It Va hw.ix.enable_fdir +Enable Flow Director. +Flow Director directs Ethernet packets to the core where the +packet consuming process, application, container, +or microservice is running. +.It Va hw.ix.enable_rss +Enable Receive-Side Scaling (RSS). +When RSS is enabled, all of the receive data processing for +a particular TCP connection is shared across multiple processors +or processor cores. +Without RSS, all of the processing is performed by a single +processor, resulting in inefficient system cache utilization. +This has no effect if your system has only one processing unit. +.It Va hw.ix.enable_aim +Enable Adaptive Interrupt Moderation (AIM). +Vary the interrupt rate over time based on the traffic for +that interrupt vector. .El .Sh DIAGNOSTICS .Bl -diag -.It "ixgbe%d: Unable to allocate bus resource: memory" +.It "ix%d: Unable to allocate bus resource: memory" A fatal initialization error has occurred. -.It "ixgbe%d: Unable to allocate bus resource: interrupt" +.It "ix%d: Unable to allocate bus resource: interrupt" A fatal initialization error has occurred. -.It "ixgbe%d: watchdog timeout -- resetting" +.It "ix%d: watchdog timeout -- resetting" The device has stopped responding to the network, or there is a problem with the network connection (cable). .El @@ -113,7 +157,8 @@ issue to .Xr ng_ether 4 , .Xr polling 4 , .Xr vlan 4 , -.Xr ifconfig 8 +.Xr ifconfig 8 , +.Xr sysctl 8 .Sh HISTORY The .Nm @@ -124,3 +169,11 @@ The .Nm driver was written by .An Intel Corporation Aq Mt freebsd@intel.com . +.Sh CAVEATS +Intel (R) Flow director support is not fully implemented in +.Fx +at this time and additional work is required +before those features can be supported. +.Pp +Enabling flow director may route traffic to the wrong RX queue of the NIC, +resulting in sub-optimal performance on the receive side. diff --git a/share/man/man4/ixl.4 b/share/man/man4/ixl.4 index 8397bd99a5e..fb9d519b22a 100644 --- a/share/man/man4/ixl.4 +++ b/share/man/man4/ixl.4 @@ -116,7 +116,10 @@ kernel; install the package for the latest driver. .El .Sh HARDWARE -Most adapters in the Intel Ethernet 700 Series with SFP+/SFP28/QSFP+ cages +The +.Nm +driver supports the Intel Ethernet 700 series. +Most adapters in this series with SFP+/SFP28/QSFP+ cages have firmware that requires that Intel qualified modules are used; these qualified modules are listed below. This qualification check cannot be disabled by the driver. @@ -209,7 +212,7 @@ When the driver is finding the last TX descriptor processed by the hardware, use a value written to memory by the hardware instead of scanning the descriptor ring for completed descriptors. Enabled by default; disable to mimic the TX behavior found in -.Xr ixgbe 4 . +.Xr ix 4 . .El .Sh SYSCTL PROCEDURES .Bl -tag -width indent diff --git a/share/man/man4/joy.4 b/share/man/man4/joy.4 deleted file mode 100644 index 2236398195a..00000000000 --- a/share/man/man4/joy.4 +++ /dev/null @@ -1,119 +0,0 @@ -.\" -.\" $FreeBSD: stable/11/share/man/man4/joy.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd January 23, 1995 -.Dt JOY 4 -.Os -.Sh NAME -.Nm joy -.Nd joystick device driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device joy" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -joy_load="YES" -.Ed -.Pp -In -.Pa /boot/device.hints : -.Cd hint.joy.0.at="isa" -.Cd hint.joy.0.port="0x201" -.Cd hint.joy.1.at="isa" -.Cd hint.joy.1.port="0x201" -.Pp -.In sys/joystick.h -.Sh DESCRIPTION -The joystick device driver allows applications to read the status of -the PC joystick. -.Pp -This device may be opened by only one process at a time. -.Pp -The joystick status is read from a structure via a read() -call. -The structure is defined in the header file as follows: -.Bd -literal -offset indent - struct joystick { - int x; /* x position */ - int y; /* y position */ - int b1; /* button 1 status */ - int b2; /* button 2 status */ - }; -.Ed -.Pp -Positions are typically in the range 0-2000. -.Ss One line perl example: -.Bd -literal -compact -perl -e 'open(JOY,"/dev/joy0")||die;while(1) -{sysread(JOY,$x,16);@j=unpack("iiii",$x);print "@j\\n";sleep(1);}' -.Ed -.Ss ioctl calls -Several ioctl() calls are also available. -They take an argument of -type int * -.Bl -tag -width JOY_SET_X_OFFSET -.It Dv JOY_SETTIMEOUT Fa int *limit -Set the time limit (in microseconds) for reading the joystick -status. -Setting a value -too small may prevent to get correct values for the positions (which -are then set to -2147483648), however this can be useful if one is -only interested by the buttons status. -.It Dv JOY_GETTIMEOUT Fa int *limit -Get the time limit (in microseconds) used for reading the joystick -status. -.It Dv JOY_SET_X_OFFSET Fa int *offset -Set the value to be added to the X position when reading the joystick -status. -.It Dv JOY_SET_Y_OFFSET Fa int *offset -Set the value to be added to the Y position when reading the joystick -status. -.It Dv JOY_GET_X_OFFSET Fa int *offset -Get the value which is added to the X position when reading the joystick -status. -.It Dv JOY_GET_Y_OFFSET Fa int *offset -Get the value which is added to the Y position when reading the joystick -status. -.El -.Sh TECHNICAL SPECIFICATIONS -The pinout of the DB-15 connector is as follow: -.Bd -literal - 1 XY1 (+5v) - 2 Switch 1 - 3 X1 (potentiometer #1) - 4 Switch 1 (GND) - 5 Switch 2 (GND) - 6 Y1 (potentiometer #2) - 7 Switch 2 - 8 N.C. - 9 XY2 (+5v) - 10 Switch 4 - 11 X2 (potentiometer #3) - 12 Switch 3&4 (GND) - 13 Y2 (potentiometer #4) - 14 Switch 3 - 15 N.C. -.Ed -.Pp -Pots are normally 0-150k variable resistors (0-100k sometimes), and -according to the IBM technical reference, the time is given by -Time = 24.2e-6s + 0.011e-6s * R/Ohms -.Sh FILES -.Bl -tag -width /dev/joy? -.It Pa /dev/joy? -joystick device files -.El -.Sh HISTORY -The -.Nm -driver appeared in -.Fx 2.0.5 . -.Sh AUTHORS -.An Jean-Marc Zucconi Aq Mt jmz@cabri.obs-besancon.fr diff --git a/share/man/man4/liquidio.4 b/share/man/man4/liquidio.4 index 8cbe3620f0a..6b5436f836e 100644 --- a/share/man/man4/liquidio.4 +++ b/share/man/man4/liquidio.4 @@ -34,7 +34,7 @@ .Os .Sh NAME .Nm liquidio -.Nd "Cavium 10Gb/25Gb Ethernet driver for the FreeBSD operating system" +.Nd Cavium 10Gb/25Gb Ethernet driver .Sh SYNOPSIS To compile this driver into the kernel, place the following line in your diff --git a/share/man/man4/man4.arm/cgem.4 b/share/man/man4/man4.arm/cgem.4 deleted file mode 100644 index 5d1464baf55..00000000000 --- a/share/man/man4/man4.arm/cgem.4 +++ /dev/null @@ -1,298 +0,0 @@ -.\" -.\" Copyright (c) 2014 Thomas Skibo -.\" 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 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: stable/11/share/man/man4/man4.arm/cgem.4 301591 2016-06-08 09:36:07Z trasz $ -.\" -.Dd August 26, 2014 -.Dt CGEM 4 -.Os -.Sh NAME -.Nm cgem -.Nd "Cadence GEM Gigabit Ethernet driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device ether" -.Cd "device miibus" -.Cd "device cgem" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for the Cadence GEM (Gigabit Ethernet MAC). -The Cadence GEM is used in some SoC (System on a Chip) devices such as -the Xilinx Zynq-7000 and the Atmel SAMA5D3. -.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 using -.Xr ifconfig 8 -or by adding media options to -.Xr rc.conf 5 . -.It Cm 10baseT/UTP -Set 10Mbps operation. -The -.Xr ifconfig 8 -.Cm 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 -.Cm mediaopt -option can also be used to select either -.Cm full-duplex -or -.Cm half-duplex -modes. -.It Cm 1000baseT -Set 1000Mbps (Gigabit Ethernet) operation over twisted pair. -The GEM supports 1000Mbps in -.Cm full-duplex -mode only. -.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 -The driver provides support for TCP/UDP/IP checksum offloading (although -disabled by default). -The device and driver also support 1536-byte frames for VLANs (vlanmtu). -.Sh SYSCTL VARIABLES -The following variables are available as both -.Xr sysctl 8 -variables and -.Xr loader 8 -tunables: -.Bl -tag -width "xxxxxxxx" -.It Va dev.cgem.%d.rxbufs -The number of receive buffers allocated to the hardware. -The default value is 256. -The maximum value is 511. -If this number is increased while the interface is UP, it will not -take effect until the next packet is received. -If this number is decreased while the interface is UP, buffers will -not be immediately removed from the receive buffer ring but the -number of buffers will decrease as packets are received until it -reaches the new value. -.It Va dev.cgem.%d.rxhangwar -This tunable enables a work-around to recover from receive hangs. -The default value is 1. -Set to 0 to disable the work-around. -.El -.Pp -The following read-only variables are available as -.Xr sysctl 8 -variables: -.Bl -tag -width "xxxxxxxx" -.It Va dev.cgem.%d._rxoverruns -This variable counts the number of receive packet buffer overrun interrupts. -.It Va dev.cgem.%d._rxnobufs -This variable counts the number of interrupts due to the GEM buffer ring -going empty. -.It Va dev.cgem.%d._rxdmamapfails -This variable is the number of times bus_dmamap_load_mbuf_sg(9) failed in -the receive path. -.It Va dev.cgem.%d._txfull -The number of times the GEM's transmit ring was full. -.It Va dev.cgem.%d._txdmamapfails -This variable is the number of times bus_dmamap_load_mbuf_sg(9) failed in -the transmit path. -.It Va dev.cgem.%d._txdefrags -This variable is the number of times the driver needed to call m_defrag(9) -because a packet queued for transmit had too many DMA segments. -.It Va dev.cgem.%d._txdefragfails -This variable is the number of times -.Xr m_defrag 9 -failed. -.It Va dev.cgem.%d.stats.* -The following variables are useful MAC counters supplied by the hardware: -.It Va dev.cgem.%d.stats.tx_bytes -A 64-bit counter of the number of bytes transmitted in frames without error. -.It Va dev.cgem.%d.stats.tx_frames -Counter of frames transmitted without error excluding pause frames. -.It Va dev.cgem.%d.stats.tx_frames_bcast -Counter of broadcast frames transmitted without error excluding -pause frames. -.It Va dev.cgem.%d.stats.tx_frames_multi -Counter of multicast frames transmitted without error excluding -pause frames. -.It Va dev.cgem.%d.stats.tx_frames_pause -Counter of pause frames transmitted without error. -.It Va dev.cgem.%d.stats.tx_frames_64b -Counter of 64 byte frames transmitted without error. -.It Va dev.cgem.%d.stats.tx_frames_65to127b -Counter of 65 to 127 byte frames transmitted without error. -.It Va dev.cgem.%d.stats.tx_frames_128to255b -Counter of 128 to 255 byte frames transmitted without error. -.It Va dev.cgem.%d.stats.tx_frames_256to511b -Counter of 256 to 511 byte frames transmitted without error. -.It Va dev.cgem.%d.stats.tx_frames_512to1023b -Counter of 512 to 1023 byte frames transmitted without error. -.It Va dev.cgem.%d.stats.tx_frames_1024to1536b -Counter of 1024 to 1536 byte frames transmitted without error. -.It Va dev.cgem.%d.stats.tx_under_runs -Counter of frames not transmitted due to a transmit underrun. -.It Va dev.cgem.%d.stats.tx_single_collisn -Counter of frames experiencing a single collision before being successfully -transmitted. -.It Va dev.cgem.%d.stats.tx_multi_collisn -Counter of frames experiencing between 2 and 15 collisions before -being successfully transmitted. -.It Va dev.cgem.%d.stats.tx_excsv_collisn -Counter of frames that failed to transmit because they experienced 16 -collisions. -.It Va dev.cgem.%d.stats.tx_late_collisn -Counter of frames that experienced a late collision. -.It Va dev.cgem.%d.stats.tx_deferred_frames -Counter of frames experiencing deferral due to carrier sense being -active on their first attempt at transmission. -.It Va dev.cgem.%d.stats.tx_carrier_sense_errs -Counter of frames transmitted where carrier sense was not seen during -transmission or where carrier sense was deasserted after being asserted -in a transmit frame without collision. -.It Va dev.cgem.%d.stats.rx_bytes -A 64-bit counter of bytes received without error excluding pause -frames. -.It Va dev.cgem.%d.stats.rx_frames -Counter of frames received without error excluding pause frames. -.It Va dev.cgem.%d.stats.rx_frames_bcast -Counter of broadcast frames receive without error excluding pause frames. -.It Va dev.cgem.%d.stats.rx_frames_multi -Counter of multicast frames receive without error excluding pause frames. -.It Va dev.cgem.%d.stats.rx_frames_pause -Counter of pause frames recevied without error. -.It Va dev.cgem.%d.stats.rx_frames_64b -Counter of 64-byte frames received without error. -.It Va dev.cgem.%d.stats.rx_frames_65to127b -Counter of 65 to 127 byte frames received without error. -.It Va dev.cgem.%d.stats.rx_frames_128to255b -Counter of 128 to 255 byte frames received without error. -.It Va dev.cgem.%d.stats.rx_frames_256to511b -Counter of 256 to 511 byte frames received without error. -.It Va dev.cgem.%d.stats.rx_frames_512to1023b -Counter of 512 to 1023 byte frames received without error. -.It Va dev.cgem.%d.stats.rx_frames_1024to1536b -Counter of 1024 to 1536 byte frames received without error. -.It Va dev.cgem.%d.stats.rx_frames_undersize -Counter of frames received less than 64 bytes in length that -do not also have either a CRC error or an alignment error. -.It Va dev.cgem.%d.stats.rx_frames_oversize -Counter of frames received exceeding 1536 bytes and do not also have either -a CRC error or an alignment error. -.It Va dev.cgem.%d.stats.rx_frames_jabber -Counter of frames received exceeding 1536 bytes and also have either a CRC -error, an alignment error, or a receive symbol error. -.It Va dev.cgem.%d.stats.rx_frames_fcs_errs -Counter of frames received with a bad CRC and are between 64 -and 1536 bytes. -.It Va dev.cgem.%d.stats.rx_frames_length_errs -Counter of frames received that are shorter than that extracted -from the length field. -.It Va dev.cgem.%d.stats.rx_symbol_errs -Counter of receive symbol errors. -.It Va dev.cgem.%d.stats.rx_align_errs -Counter of received frames that are not an integral number of bytes. -.It Va dev.cgem.%d.stats.rx_resource_errs -Counter of frames successfully receive by the MAC but could not be -copied to memory because no receive buffer was available. -.It Va dev.cgem.%d.stats.rx_overrun_errs -Counter of frames that are address recognized but were not copied -to memory due to a receive overrun. -.It Va dev.cgem.%d.stats.rx_frames_ip_hdr_csum_errs -Counter of frames discarded due to an incorrect IP header checksum when -checksum offloading is enabled. -.It Va dev.cgem.%d.stats.rx_frames_tcp_csum_errs -Counter of frames discarded due to an incorrect TCP checksum when -checksum offloading is enabled. -.It Va dev.cgem.%d.stats.rx_frames_udp_csum_errs -Counter of frames discarded due to an incorrect UDP checksum when -checksum offloading is enabled. -.El -.Sh SEE ALSO -.Xr miibus 4 , -.Xr ifconfig 8 -.Rs -.%T "Zynq-7000 SoC Technical Reference Manual (Xilinx doc UG585)" -.%U http://www.xilinx.com/support/documentation/user_guides/\:ug585-Zynq-7000-TRM.pdf -.Re -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 10.0 . -.Sh AUTHORS -The -.Nm -driver and this manual page was written by -.An Thomas Skibo Aq Mt thomasskibo@yahoo.com . -.Sh BUGS -The GEM can perform TCP/UDP/IP checksum offloading. -However, when transmit checksum offloading is enabled, the GEM generates and -replaces checksums for all packets it transmits. -In a system that is forwarding packets, the device could potentially correct -the checksum of packet that was corrupted in transit. -For this reason, checksum offloading is disabled by default but can be -enabled using ifconfig(8). -.Pp -When receive checksum offloading is enabled, the device will discard packets -with bad TCP/UDP/IP checksums. -The bad packets will not be counted in any -.Xr netstat 1 -statistics. -There are -.Xr sysctl 8 -variables that count -packets discarded by the hardware (see below). -.Pp -The GEM used in the Zynq-7000 has a bug such that the receiver can -potentially freeze up under a high load. -The issue is described in sec. 16.7 -"Known Issues" of the Zynq-7000 SoC Technical Reference Manual (Xilinx -UG585 v1.7). -The -.Nm -driver implements the work-around suggested in the manual. -If the bug does not exist in other versions of this device, the -work-around can be disabled by setting the dev.cgem.%d.rxhangwar -.Xr sysctl 8 -variable to 0. diff --git a/share/man/man4/man4.arm/npe.4 b/share/man/man4/man4.arm/npe.4 deleted file mode 100644 index 57f5d9df281..00000000000 --- a/share/man/man4/man4.arm/npe.4 +++ /dev/null @@ -1,163 +0,0 @@ -.\" -.\" Copyright (c) 2006 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. -.\" 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: stable/11/share/man/man4/man4.arm/npe.4 166476 2007-02-03 20:02:29Z brueffer $ -.\" -.Dd December 4, 2006 -.Dt NPE 4 arm -.Os -.Sh NAME -.Nm npe -.Nd "Intel XScale Network Processing Engine (NPE) Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device npe" -.Cd "device npe_fw" -.Cd "device firmware" -.Cd "device qmgr" -.Cd "device miibus" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for Ethernet adapters based on the Intel -XScale Network Processing Engine (NPE). -The NPE must be loaded with firmware that is typically distributed -with boards that have this part. -Otherwise the firmware may be obtained at no cost from the Intel web site. -.Pp -The -.Nm -driver supports the following media types: -.Bl -tag -width ".Cm full-duplex" -.It Cm autoselect -Enable autoselection of the media type and options. -.It Cm 10baseT/UTP -Set 10Mbps operation. -.It Cm 100baseTX -Set 100Mbps (Fast Ethernet) operation. -.El -.Pp -The -.Nm -driver supports the following media options: -.Bl -tag -width ".Cm full-duplex" -.It Cm full-duplex -Set full duplex operation. -.El -.Pp -The -.Nm -driver supports polled operation when the system is -configured with device polling support, -.Xr polling 4 . -Note that for multi-port configurations polling and interrupt-style -operation should not be combined as one of the hardware queues -is shared by all ports. -.Pp -For further information on configuring this device, see -.Xr ifconfig 8 . -.\".Pp -.\"The -.\".Nm -.\"driver supports reception and transmission of extended frames -.\"for -.\".Xr vlan 4 . -.\"This capability of -.\".Nm -.\"can be controlled by means of the -.\".Cm vlanmtu -.\"parameter -.\"to -.\".Xr ifconfig 8 . -.Sh HARDWARE -The adapters supported by the -.Nm -driver exist only on boards that have an XScale processor. -.Sh DIAGNOSTICS -.Bl -diag -.It "npe%d: unit %d not supported" -The unit is larger than the maximum number built into the driver. -This should not happen as -.Nm -devices are not really probed for; they are statically enumerated. -.It "npe%d: Cannot find my PHY." -The associated PHY did not appear while probing the MII bus. -The relationship between PHYs and NPEs is statically defined -in the driver and may require alterations to the driver for new boards. -.It "npe%d: unable to allocate memory for %s ... buffers" -There is not enough memory available for allocation. -The driver pre-allocated memory during attach so this should not happen. -.It "npe%d: remember to fix rx q setup" -See -.Sx BUGS -below. -.It "npe%d: free mbuf at entry %u" -An mbuf was unexpectedly found on the device queue; the index of -the queue entry is printed. -.It "npe%d: too many fragments %u" -A frame was dropped on transmit because it was too fragmented and -the logic to de-fragment failed. -This should not happen. -.It "npe%d: device timeout" -The device has stopped responding to the network, or there is a problem with -the network connection (cable). -.El -.Pp -Other diagnostics exist and are not listed here; -they should be self-explanatory. -.Sh SEE ALSO -.Xr altq 4 , -.Xr arp 4 , -.Xr miibus 4 , -.Xr netintro 4 , -.Xr polling 4 , -.Xr qmgr 4 , -.\".Xr vlan 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 6.3 . -.Sh CAVEATS -This driver has been tested only with dual-port boards using the IXP425 -such as the Gateworks Avila 2348. -Some changes to the driver may be required for other configurations. -.Sh BUGS -The hardware queues are not properly flushed when the interface -is marked down. -.Pp -The assignment of receive traffic classes to hardware queues -is presently incomplete. -Only the first 4 classes are assigned while there are 8 total. -The driver will print -.Dq Li "remember to fix rx q setup" -on startup as a reminder. -For the moment it is not a problem as all traffic arrives classified -with class 0. diff --git a/share/man/man4/man4.i386/acpi_aiboost.4 b/share/man/man4/man4.i386/acpi_aiboost.4 deleted file mode 100644 index f6d10faac03..00000000000 --- a/share/man/man4/man4.i386/acpi_aiboost.4 +++ /dev/null @@ -1,102 +0,0 @@ -.\" $NetBSD: aiboost.4,v 1.2 2007/03/14 07:10:51 wiz Exp $ -.\" -.\" Copyright (c) 2007 Takanori Watanabe -.\" Copyright (c) 2007 Juan Romero Pardines -.\" 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. -.\" -.\" $FreeBSD: src/share/man/man4/man4.i386/acpi_aiboost.4,v 1.3 2007/03/30 21:59:55 takawata Exp $ -.\" -.Dd March 14, 2007 -.Dt ACPI_AIBOOST 4 -.Os -.Sh NAME -.Nm acpi_aiboost -.Nd ASUS AI Booster hardware monitor -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device acpi_aiboost" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -acpi_aiboost_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for monitoring the hardware sensors in recent -.Tn ASUS -motherboards. -The driver uses ACPI as the backend to fetch sensor values and -descriptions and provides its data via the -.Xr sysctl 8 -interface, under dev.acpi_aiboost.0 namespace. -Descriptions for these values are set to sysctl description, -which can be see with sysctl -d. -.Pp -The -.Nm -driver typically has 7 sensors, depending on the motherboard and -chipset: -.Bl -column "Sensor" "Units" "Typical" -offset indent -.It Sy "Sensor" Ta Sy "Units" Ta Sy "Typical Use" -.It Li "CPU" Ta "uK" Ta "CPU Temperature" -.It Li "MB" Ta "uK" Ta "MB Temperature" -.It Li "VCC" Ta "uV DC" Ta "Core Voltage" -.It Li "+3.3V" Ta "uV DC" Ta "+3.3 Voltage" -.It Li "+5V" Ta "uV DC" Ta "+5 Voltage" -.It Li "+12V" Ta "uV DC" Ta "+12 Voltage" -.It Li "CPU" Ta "RPM" Ta "CPU Fan" -.El -.Sh SEE ALSO -.Xr acpi 4 , -.Xr sysctl.conf 5 -.Xr sysctl 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 7.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Takanori Watanabe . -This manual page was written by -.An Juan Romero Pardines , -who adapted the code for -.Nx , -and adopted back to FreeBSD by -.An Takanori Watanabe . -.Sh BUGS -It's possible to modify voltages via the ACPI methods in the DSDT, -but for now the driver only reports the sensors' values. -CPU Q-Fan is another thing that is typically specified in the ACPI -namespace, and in the future we should handle this feature (to -enable or disable automatic/manual fan mode). diff --git a/share/man/man4/man4.i386/acpi_asus.4 b/share/man/man4/man4.i386/acpi_asus.4 deleted file mode 100644 index 9217e3ec83f..00000000000 --- a/share/man/man4/man4.i386/acpi_asus.4 +++ /dev/null @@ -1,183 +0,0 @@ -.\" -.\" Copyright (c) 2004 Philip Paeps -.\" 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/man4.i386/acpi_asus.4,v 1.14 2007/06/02 21:10:01 philip Exp $ -.\" -.Dd June 2, 2007 -.Dt ACPI_ASUS 4 i386 -.Os -.Sh NAME -.Nm acpi_asus -.Nd Asus Laptop Extras -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device acpi_asus" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -acpi_asus_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for the extra ACPI-controlled gadgets, such as hotkeys -and leds, found on recent Asus (and Medion) laptops. -It allows one to use the -.Xr sysctl 8 -interface to manipulate the brightness of the LCD panel and the display output -state. -Hotkey events are passed to -.Xr devd 8 -for easy handling in userspace. -.Pp -Currently, the following Asus laptops are fully supported: -.Pp -.Bl -item -offset indent -compact -.It -xxN -.It -A1x -.It -A2x -.It -A3N -.It -A4D -.It -A6VM -.It -D1x -.It -J1x -.It -L2B -.It -L2D -.It -L2E -.It -L3C -.It -L3D -.It -L3H -.It -L4E -.It -L4R -.It -L5x -.It -L8x -.It -M1A -.It -M2E -.It -M6N -.It -M6R -.It -S1x -.It -S2x -.It -V6V -.It -W5A -.El -.Pp -Additionally, -.Nm -also supports the Asus-compatible -.Em ATK0100 -interface found in -.Em Samsung P30/P35 -laptops. -.Sh SYSCTL VARIABLES -The following sysctls are currently implemented: -.Bl -tag -width indent -.It Va hw.acpi.asus.lcd_brightness -Makes the LCD backlight brighter or dimmer (higher values are brighter). -.It Va hw.acpi.asus.lcd_backlight -Turns the LCD backlight on or off. -.It Va hw.acpi.asus.video_output -Sets the active display to use according to a bitwise OR of the following: -.Pp -.Bl -tag -width indent -compact -.It Li 0 -No display -.It Li 1 -LCD -.It Li 2 -CRT -.It Li 4 -TV-Out -.El -.Pp -Some models also support video switching via the generic -.Xr acpi_video 4 -driver. -Most models do not, however. -.El -.Pp -Defaults for these variables can be set in -.Xr sysctl.conf 5 , -which is parsed at boot-time. -.Sh SEE ALSO -.Xr acpi 4 , -.Xr acpi_video 4 , -.Xr sysctl.conf 5 , -.Xr sysctl 8 -.Rs -.%T The acpi4asus Project -.%O http://sourceforge.net/projects/acpi4asus/ -.Re -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 5.3 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver and this manual page were written by -.An Philip Paeps Aq philip@FreeBSD.org . -.Pp -Inspiration came from the -.Em acpi4asus project -started by -.An Julien Lerouge -which maintains a driver implementing this -functionality in the -.Tn Linux -kernel. diff --git a/share/man/man4/man4.i386/acpi_fujitsu.4 b/share/man/man4/man4.i386/acpi_fujitsu.4 deleted file mode 100644 index b696d38a624..00000000000 --- a/share/man/man4/man4.i386/acpi_fujitsu.4 +++ /dev/null @@ -1,175 +0,0 @@ -.\" -.\" Copyright (c) 2005 Philip Paeps -.\" 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/man4.i386/acpi_fujitsu.4,v 1.5 2006/04/01 11:21:00 brueffer Exp $ -.\" -.Dd March 20, 2005 -.Dt ACPI_FUJITSU 4 i386 -.Os -.Sh NAME -.Nm acpi_fujitsu -.Nd Fujitsu Laptop Extras -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device acpi_fujitsu" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -acpi_fujitsu_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver enables the ACPI-controlled buttons on Fujitsu notebooks. -The button events are sent to userspace via -.Xr devd 8 , -and a -.Xr sysctl 8 -interface is provided to simulate the hardware events. -.Pp -Using this driver, one can control the brightness of the display, the volume -of the speakers, and the internal (eraserhead) mouse pointer. -.Sh SYSCTL VARIABLES -These sysctls are currently implemented: -.Bl -tag -width indent -.It Va hw.acpi.fujitsu.lcd_brightness -Makes the LCD backlight brighter or dimmer. -.It Va hw.acpi.fujitsu.pointer_enable -Enables or disables the internal mouse pointer. -.It Va hw.acpi.fujitsu.volume -Controls the speaker volume. -.It Va hw.acpi.fujitsu.mute -Mutes the speakers. -.El -.Pp -Defaults for these sysctls can be set in -.Xr sysctl.conf 5 . -.Sh EXAMPLES -The following can be added to -.Xr devd.conf 5 -in order to pass button events to a -.Pa /usr/local/sbin/acpi_oem_exec.sh -script: -.Bd -literal -offset indent -notify 10 { - match "system" "ACPI"; - match "subsystem" "FUJITSU"; - action "/usr/local/sbin/acpi_oem_exec.sh $notify fujitsu"; -}; -.Ed -.Pp -A possible -.Pa /usr/local/sbin/acpi_oem_exec.sh -script might look like: -.Bd -literal -offset indent -#!/bin/sh -# -if [ "$1" = "" -o "$2" = "" ] -then - echo "usage: $0 notify oem_name" - exit 1 -fi -NOTIFY=`echo $1` -LOGGER="logger" -CALC="bc" -BC_PRECOMMANDS="scale=2" -ECHO="echo" -CUT="cut" -MAX_LCD_BRIGHTNESS=7 -MAX_VOLUME=16 -OEM=$2 -DISPLAY_PIPE=/tmp/acpi_${OEM}_display - -case ${NOTIFY} in - 0x00) - LEVEL=`sysctl -n hw.acpi.${OEM}.mute` - if [ "$LEVEL" = "1" ] - then - MESSAGE="volume muted" - else - MESSAGE="volume unmuted" - fi - ;; - 0x01) - LEVEL=`sysctl -n hw.acpi.${OEM}.pointer_enable` - if [ "$LEVEL" = "1" ] - then - MESSAGE="pointer enabled" - else - MESSAGE="pointer disabled" - fi - ;; - 0x02) - LEVEL=`sysctl -n hw.acpi.${OEM}.lcd_brightness` - PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; \\ - ${LEVEL} / ${MAX_LCD_BRIGHTNESS} * 100" |\\ - ${CALC} | ${CUT} -d . -f 1` - MESSAGE="brightness level ${PERCENT}%" - ;; - 0x03) - LEVEL=`sysctl -n hw.acpi.${OEM}.volume` - PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; \\ - ${LEVEL} / ${MAX_VOLUME} * 100" | \\ - ${CALC} | ${CUT} -d . -f 1` - MESSAGE="volume level ${PERCENT}%" - ;; - *) - ;; - esac - ${LOGGER} ${MESSAGE} - if [ -p ${DISPLAY_PIPE} ] - then - ${ECHO} ${MESSAGE} >> ${DISPLAY_PIPE} & - fi -exit 0 -.Ed -.Sh SEE ALSO -.Xr acpi 4 , -.Xr sysctl.conf 5 , -.Xr devd 8 , -.Xr sysctl 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 5.4 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Sean Bullington Aq shegget@gmail.com , -.An Anish Mistry Aq mistry.7@osu.edu , -and -.An Marc Santcroos Aq marks@ripe.net . -.Pp -This manual page was written by -.An Philip Paeps Aq philip@FreeBSD.org . diff --git a/share/man/man4/man4.i386/acpi_ibm.4 b/share/man/man4/man4.i386/acpi_ibm.4 deleted file mode 100644 index 0dab0b2897c..00000000000 --- a/share/man/man4/man4.i386/acpi_ibm.4 +++ /dev/null @@ -1,461 +0,0 @@ -.\" Copyright (c) 2005 Christian Brueffer -.\" Copyright (c) 2005 Markus Brueffer -.\" 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/man4.i386/acpi_ibm.4,v 1.15 2006/12/01 09:00:38 ru Exp $ -.\" -.Dd January 14, 2006 -.Dt ACPI_IBM 4 i386 -.Os -.Sh NAME -.Nm acpi_ibm -.Nd "ACPI extras driver for IBM laptops" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device acpi_ibm" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -acpi_ibm_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for hotkeys and other components of IBM laptops. -The main purpose of this driver is to provide an interface, -accessible via -.Xr sysctl 8 -and -.Xr devd 8 , -through which applications can determine the status of -various laptop components. -.Pp -While the -.Xr sysctl 8 -interface is enabled automatically after loading the driver, the -.Xr devd 8 -interface has to be enabled explicitly, as it may alter the default action of -certain keys. -This is done by setting the -.Va events -sysctl as described below. -Specifying which keys should generate events is done by setting a bitmask, -whereas each bit represents one key or key combination. -This bitmask, accessible via the -.Va eventmask -sysctl, is set to -.Va availmask -by default, a value representing all possible keypress events on the specific -ThinkPad model. -.Ss Xr devd 8 Ss Events -Hotkey events received by -.Xr devd 8 -provide the following information: -.Pp -.Bl -tag -width "subsystem" -offset indent -compact -.It system -.Qq Li ACPI -.It subsystem -.Qq Li IBM -.It type -The source of the event in the ACPI namespace. -The value depends on the model. -.It notify -Event code (see below). -.El -.Pp -Depending on the ThinkPad model, event codes may vary. -On a ThinkPad T41p these are as follows: -.Pp -.Bl -tag -width "subsystem" -offset indent -compact -.It Li 0x01 -Fn + F1 -.It Li 0x02 -Fn + F2 -.It Li 0x03 -Fn + F3 (LCD backlight) -.It Li 0x04 -Fn + F4 (Suspend to RAM) -.It Li 0x05 -Fn + F5 (Bluetooth) -.It Li 0x06 -Fn + F6 -.It Li 0x07 -Fn + F7 (Screen expand) -.It Li 0x08 -Fn + F8 -.It Li 0x09 -Fn + F9 -.It Li 0x0a -Fn + F10 -.It Li 0x0b -Fn + F11 -.It Li 0x0c -Fn + F12 (Suspend to disk) -.It Li 0x0d -Fn + Backspace -.It Li 0x0e -Fn + Insert -.It Li 0x0f -Fn + Delete -.It Li 0x10 -Fn + Home (Brightness up) -.It Li 0x11 -Fn + End (Brightness down) -.It Li 0x12 -Fn + PageUp (ThinkLight) -.It Li 0x13 -Fn + PageDown -.It Li 0x14 -Fn + Space (Zoom) -.It Li 0x15 -Volume Up -.It Li 0x16 -Volume Down -.It Li 0x17 -Mute -.It Li 0x18 -Access IBM Button -.El -.Ss Xr led 4 Ss Interface -The -.Nm -driver provides a -.Xr led 4 -interface for the ThinkLight. -The ThinkLight can be made to blink by writing -.Tn ASCII -strings to the -.Pa /dev/led/thinklight -device. -.Sh SYSCTL VARIABLES -The following sysctls are currently implemented: -.Bl -tag -width indent -.It Va dev.acpi_ibm.0.initialmask -(read-only) -Bitmask of ACPI events before the -.Nm -driver was loaded. -.It Va dev.acpi_ibm.0.availmask -(read-only) -Bitmask of all supported ACPI events. -.It Va dev.acpi_ibm.0.events -Enable ACPI events and set the -.Va eventmask -to -.Va availmask . -Without the -.Nm -driver being loaded, only the Fn+F4 button generates an ACPI event. -.It Va dev.acpi_ibm.0.eventmask -Sets the ACPI events which are reported to -.Xr devd 8 . -Fn+F3, Fn+F4 and Fn+F12 always generate ACPI events, regardless which value -.Va eventmask -has. -Depending on the ThinkPad model, the meaning of different bits in the -.Va eventmask -may vary. -On a ThinkPad T41p this is a bitwise OR of the following: -.Pp -.Bl -tag -width indent-two -compact -.It Li 1 -Fn + F1 -.It Li 2 -Fn + F2 -.It Li 4 -Fn + F3 (LCD backlight) -.It Li 8 -Fn + F4 (Suspend to RAM) -.It Li 16 -Fn + F5 (Bluetooth) -.It Li 32 -Fn + F6 -.It Li 64 -Fn + F7 (Screen expand) -.It Li 128 -Fn + F8 -.It Li 256 -Fn + F9 -.It Li 512 -Fn + F10 -.It Li 1024 -Fn + F11 -.It Li 2048 -Fn + F12 (Suspend to disk) -.It Li 4096 -Fn + Backspace -.It Li 8192 -Fn + Insert -.It Li 16384 -Fn + Delete -.It Li 32768 -Fn + Home (Brightness up) -.It Li 65536 -Fn + End (Brightness down) -.It Li 131072 -Fn + PageUp (ThinkLight) -.It Li 262144 -Fn + PageDown -.It Li 524288 -Fn + Space (Zoom) -.It Li 1048576 -Volume Up -.It Li 2097152 -Volume Down -.It Li 4194304 -Mute -.It Li 8388608 -Access IBM Button -.El -.It Va dev.acpi_ibm.0.hotkey -(read-only) -Status of several buttons. -Every time a button is pressed, the respecting bit is toggled. -It is a bitwise OR of the following: -.Pp -.Bl -tag -width indent-two -compact -.It Li 1 -Home Button -.It Li 2 -Search Button -.It Li 4 -Mail Button -.It Li 8 -Access IBM Button -.It Li 16 -Zoom -.It Li 32 -Wireless LAN Button -.It Li 64 -Video Button -.It Li 128 -Hibernate Button -.It Li 256 -ThinkLight Button -.It Li 512 -Screen Expand -.It Li 1024 -Brightness Up/Down Button -.It Li 2048 -Volume Up/Down/Mute Button -.El -.It Va dev.acpi_ibm.0.lcd_brightness -Current brightness level of the display. -.It Va dev.acpi_ibm.0.volume -Speaker volume. -.It Va dev.acpi_ibm.0.mute -Indicates, whether the speakers are muted or not. -.It Va dev.acpi_ibm.0.thinklight -Indicates, whether the ThinkLight keyboard light is activated or not. -.It Va dev.acpi_ibm.0.bluetooth -Toggle Bluetooth chip activity. -.It Va dev.acpi_ibm.0.wlan -(read-only) -Indicates whether the WLAN chip is active or not. -.It Va dev.acpi_ibm.0.fan -Indicates whether the fan is in automatic (1) or manual (0) mode. -Default is automatic mode. -This sysctl should be used with extreme precaution, since disabling automatic -fan control might overheat the ThinkPad and lead to permanent damage if the -.Va fan_level -is not set accordingly. -.It Va dev.acpi_ibm.0.fan_level -Indicates at what speed the fan should run when being in manual mode. -Values are ranging from 0 (off) to 7 (max). -The resulting speed differs from model to model. -On a T41p this is as follows: -.Pp -.Bl -tag -width indent-two -compact -.It Li 0 -off -.It Li 1, 2 -~3000 RPM -.It Li 3, 4, 5 -~3600 RPM -.It Li 6, 7 -~4300 RPM -.El -.It Va dev.acpi_ibm.0.fan_speed -(read-only) -Fan speed in rounds per minute. -A few older ThinkPads report the fan speed in levels ranging from 0 (off) -to 7 (max). -.It Va dev.acpi_ibm.0.thermal -(read-only) -Shows the readings of up to eight different temperature sensors. -Most ThinkPads include six or more temperature sensors but -only expose the CPU temperature through -.Xr acpi_thermal 4 . -Some ThinkPads have the below sensor layout which might vary depending on the -specific model: -.Pp -.Bl -enum -compact -.It -CPU -.It -Mini PCI Module -.It -HDD -.It -GPU -.It -Built-in battery -.It -UltraBay battery -.It -Built-in battery -.It -UltraBay battery -.El -.El -.Pp -Defaults for these sysctls can be set in -.Xr sysctl.conf 5 . -.Sh FILES -.Bl -tag -width ".Pa /dev/led/thinklight" -.It Pa /dev/led/thinklight -ThinkLight -.Xr led 4 -device node -.El -.Sh EXAMPLES -The following can be added to -.Xr devd.conf 5 -in order to pass button events to a -.Pa /usr/local/sbin/acpi_oem_exec.sh -script: -.Bd -literal -offset indent -notify 10 { - match "system" "ACPI"; - match "subsystem" "IBM"; - action "/usr/local/sbin/acpi_oem_exec.sh $notify ibm"; -}; -.Ed -.Pp -A possible -.Pa /usr/local/sbin/acpi_oem_exec.sh -script might look like: -.Bd -literal -offset indent -#!/bin/sh -# -if [ "$1" = "" -o "$2" = "" ] -then - echo "usage: $0 notify oem_name" - exit 1 -fi -NOTIFY=`echo $1` -LOGGER="logger" -CALC="bc" -BC_PRECOMMANDS="scale=2" -ECHO="echo" -CUT="cut" -MAX_LCD_BRIGHTNESS=7 -MAX_VOLUME=14 -OEM=$2 -DISPLAY_PIPE=/tmp/acpi_${OEM}_display - -case ${NOTIFY} in - 0x05) - LEVEL=`sysctl -n dev.acpi_${OEM}.0.bluetooth` - if [ "$LEVEL" = "1" ] - then - sysctl dev.acpi_${OEM}.0.bluetooth=0 - MESSAGE="bluetooth disabled" - else - sysctl dev.acpi_${OEM}.0.bluetooth=1 - MESSAGE="bluetooth enabled" - fi - ;; - 0x10|0x11) - LEVEL=`sysctl -n dev.acpi_${OEM}.0.lcd_brightness` - PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; \\ - ${LEVEL} / ${MAX_LCD_BRIGHTNESS} * 100" |\\ - ${CALC} | ${CUT} -d . -f 1` - MESSAGE="brightness level ${PERCENT}%" - ;; - 0x12) - LEVEL=`sysctl -n dev.acpi_${OEM}.0.thinklight` - if [ "$LEVEL" = "1" ] - then - MESSAGE="thinklight enabled" - else - MESSAGE="thinklight disabled" - fi - ;; - 0x15|0x16) - LEVEL=`sysctl -n dev.acpi_${OEM}.0.volume` - PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; \\ - ${LEVEL} / ${MAX_VOLUME} * 100" | \\ - ${CALC} | ${CUT} -d . -f 1` - MESSAGE="volume level ${PERCENT}%" - ;; - 0x17) - LEVEL=`sysctl -n dev.acpi_${OEM}.0.mute` - if [ "$LEVEL" = "1" ] - then - MESSAGE="volume muted" - else - MESSAGE="volume unmuted" - fi - ;; - *) - ;; -esac -${LOGGER} ${MESSAGE} -if [ -p ${DISPLAY_PIPE} ] -then - ${ECHO} ${MESSAGE} >> ${DISPLAY_PIPE} & -fi -exit 0 -.Ed -.Sh SEE ALSO -.Xr acpi 4 , -.Xr led 4 , -.Xr sysctl.conf 5 , -.Xr devd 8 , -.Xr sysctl 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 6.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Takanori Watanabe Aq takawata@FreeBSD.org -and later mostly rewritten by -.An Markus Brueffer Aq markus@FreeBSD.org . -This manual page was written by -.An Christian Brueffer Aq brueffer@FreeBSD.org -and -.An Markus Brueffer Aq markus@FreeBSD.org . diff --git a/share/man/man4/man4.i386/acpi_panasonic.4 b/share/man/man4/man4.i386/acpi_panasonic.4 deleted file mode 100644 index f6b9d5c1e02..00000000000 --- a/share/man/man4/man4.i386/acpi_panasonic.4 +++ /dev/null @@ -1,178 +0,0 @@ -.\" -.\" Copyright (c) 2004 OGAWA Takaya -.\" 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/man4.i386/acpi_panasonic.4,v 1.7 2006/04/01 11:21:00 brueffer Exp $ -.\" -.Dd July 11, 2004 -.Dt ACPI_PANASONIC 4 i386 -.Os -.Sh NAME -.Nm acpi_panasonic -.Nd "ACPI hotkey driver for Panasonic laptops" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device acpi_panasonic" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -acpi_panasonic_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver enables such hotkey facilities of various Panasonic laptops as -changing LCD brightness, controlling mixer volumes, entering sleep or -suspended state and so on. -On the following models it is reported to work: Let's note (or -Toughbook, outside Japan) CF-R1N, CF-R2A and CF-R3. -It may also work on other models as well. -.Pp -The driver consists of three functionalities. -The first is to detect hotkey events and take corresponding actions, -which include changing LCD luminance and speaker mute state. -The second role is to notify occurrences of the event by way of -.Xr devctl 4 -and eventually to -.Xr devd 8 . -The third and last is to provide a way to adjust LCD brightness and -sound mute state via -.Xr sysctl 8 . -.Ss Hotkeys -There are 9 hotkeys available on the supported hardwares: -.Pp -.Bl -tag -compact -offset indent -.It Sy Fn+F1 -Make LCD backlight darker. -.It Sy Fn+F2 -Make LCD backlight brighter. -.It Sy Fn+F3 -Switch video output between LCD and CRT. -Not supported by the -.Nm -driver. -.It Sy Fn+F4 -Toggle muting the speaker. -.It Sy Fn+F5 -Turn the mixer volume down. -.It Sy Fn+F6 -Turn the mixer volume up. -.It Sy Fn+F7 -Enter suspend-to-RAM state. -.It Sy Fn+F9 -Show battery status. -.It Sy Fn+F10 -Enter suspend-to-disk state. -.El -.Pp -Actions are automatically taken within the driver for -.Sy Fn+F1 , Fn+F2 -and -.Sy Fn+F4 . -For the other events such as -mixer control and showing battery status, -.Xr devd 8 -should take the role as described below. -.Ss Xr devd 8 Ss Events -When notified to -.Xr devd 8 , -the hotkey event provides the following information: -.Pp -.Bl -tag -compact -offset indent -.It system -.Qq Li ACPI -.It subsystem -.Qq Li Panasonic -.It type -The source of the event in ACPI namespace. -The value depends on the model but typically -.Qq Li \e_SB_.HKEY . -.It notify -Event code (see below). -.El -.Pp -Event codes to be generated are assigned as follows: -.Bl -tag -offset indent -.It 0x81-0x86, 0x89 -.Sy Fn+F -pressed. -0x81 corresponds to -.Sy Fn+F1 , -0x82 corresponds to -.Sy Fn+F2 , -and so on. -.It 0x01-0x07, 0x09, 0x1a -.Sy Fn+F -released. -0x01 corresponds to -.Sy Fn+F1 , -0x02 corresponds to -.Sy Fn+F2 , -and so on. -.El -.Sh SYSCTL VARIABLES -The following MIBs are available: -.Bl -tag -width indent -.It Va hw.acpi.panasonic.lcd_brightness_max -The maximum level of brightness. -The value is read only and -automatically set according to hardware model. -.It Va hw.acpi.panasonic.lcd_brightness_max -The minimum level of brightness. -The value is read only and -automatically set according to hardware model. -.It Va hw.acpi.panasonic.lcd_brightness -Current brightness level of the LCD (read-write). -The value ranges from -.Va hw.acpi.panasonic.lcd_brightness_min -to -.Va hw.acpi.panasonic.lcd_brightness_max . -.It Va hw.acpi.panasonic.sound_mute -A read-write boolean flag to control whether to mute the speaker. -The value 1 means to mute and 0 not. -.El -.Sh SEE ALSO -.Xr acpi 4 , -.Xr devd.conf 5 , -.Xr devd 8 , -.Xr sysctl 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 5.3 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver and this manual page were written by -.An OGAWA Takaya Aq t\-ogawa@triaez.kaisei.org -and -.An TAKAHASHI Yoshihiro Aq nyan@FreeBSD.org . diff --git a/share/man/man4/man4.i386/acpi_sony.4 b/share/man/man4/man4.i386/acpi_sony.4 deleted file mode 100644 index b62e3429db4..00000000000 --- a/share/man/man4/man4.i386/acpi_sony.4 +++ /dev/null @@ -1,71 +0,0 @@ -.\" Copyright (c) 2005 Christian Brueffer -.\" 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/man4.i386/acpi_sony.4,v 1.4 2006/11/01 03:45:24 kevlo Exp $ -.\" -.Dd September 14, 2005 -.Dt ACPI_SONY 4 i386 -.Os -.Sh NAME -.Nm acpi_sony -.Nd "ACPI notebook controller driver for Sony laptops" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device acpi_sony" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -acpi_sony_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for the notebook controller in Sony laptops. -.Sh SYSCTLS -The following sysctl is currently implemented: -.Bl -tag -width indent -.It Va dev.acpi_sony.0.brightness -Current brightness level of the display. -.It Va dev.acpi_sony.0.cdp -Turns the CD power on or off. -.El -.Sh SEE ALSO -.Xr acpi 4 , -.Xr sysctl 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 6.0 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Takanori Watanabe Aq takawata@FreeBSD.org . diff --git a/share/man/man4/man4.i386/acpi_toshiba.4 b/share/man/man4/man4.i386/acpi_toshiba.4 deleted file mode 100644 index 58758fc72b5..00000000000 --- a/share/man/man4/man4.i386/acpi_toshiba.4 +++ /dev/null @@ -1,128 +0,0 @@ -.\" -.\" Copyright (c) 2003 Philip Paeps -.\" 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/man4.i386/acpi_toshiba.4,v 1.7 2006/04/01 11:21:00 brueffer Exp $ -.\" -.Dd February 19, 2004 -.Dt ACPI_TOSHIBA 4 i386 -.Os -.Sh NAME -.Nm acpi_toshiba -.Nd Toshiba HCI interface -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device acpi_toshiba" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -acpi_toshiba_load="YES" -.Ed -.Sh DESCRIPTION -HCI is Toshiba's -.Em "Hardware Control Interface" -which is somewhat uniform across their models. -The -.Nm -driver allows the user to manipulate HCI-controlled hardware using a number of -.Xr sysctl 8 -variables. -.Sh SYSCTL VARIABLES -The following sysctls are currently implemented: -.Bl -tag -width indent -.It Va hw.acpi.toshiba.force_fan -Causes active cooling to be forcibly enabled -.Pq Ql 1 -or disabled -.Pq Ql 0 -regardless of the current temperature. -.It Va hw.acpi.toshiba.video_output -Sets the active display to use according to a bitwise OR of the following: -.Pp -.Bl -tag -width indent -compact -.It Li 0 -No display -.It Li 1 -LCD -.It Li 2 -CRT -.It Li 4 -TV-Out -.El -.Pp -Only some systems (i.e., the Libretto L5) support video switching via -this hardware-specific driver. -Use the -.Xr acpi_video 4 -driver for generic video output support. -.It Va hw.acpi.toshiba.lcd_brightness -Makes the LCD backlight brighter or dimmer (higher values are brighter). -.It Va hw.acpi.toshiba.lcd_backlight -Turns the LCD backlight on and off. -.It Va hw.acpi.toshiba.cpu_speed -Sets the CPU speed to the specified speed. -This provides functionality similar to the -.Va hw.acpi.cpu.throttle_state -variable. -Higher sysctl values mean lower CPU speeds. -.El -.Pp -Defaults for these variables can be set in -.Xr sysctl.conf 5 , -which is parsed at boot-time. -.Sh LOADER TUNABLES -The -.Va hw.acpi.toshiba.enable_fn_keys -tunable enables or disables the function keys on the keyboard. -Function keys are enabled by default. -.Pp -This behaviour can be changed at the -.Xr loader 8 -prompt or in -.Xr loader.conf 5 . -.Sh SEE ALSO -.Xr acpi 4 , -.Xr acpi_video 4 , -.Xr loader.conf 5 , -.Xr sysctl.conf 5 , -.Xr sysctl 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 5.1 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Hiroyuki Aizu Aq aizu@navi.org . -This manual page was written by -.An Philip Paeps Aq philip@FreeBSD.org . diff --git a/share/man/man4/man4.i386/aic.4 b/share/man/man4/man4.i386/aic.4 deleted file mode 100644 index a9f3772105c..00000000000 --- a/share/man/man4/man4.i386/aic.4 +++ /dev/null @@ -1,79 +0,0 @@ -.\" -.\" 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. -.\" -.\" $FreeBSD$ -.\" -.Dd November 8, 2003 -.Dt AIC 4 i386 -.Os -.Sh NAME -.Nm aic -.Nd Adaptec AIC-6260 and AIC-6360 SCSI driver -.Sh SYNOPSIS -.Cd "device aic" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.aic.0.at="isa" -.Sh DESCRIPTION -The -.Nm -driver provides support for the Adaptec AIC-6260 and AIC-6360 SCSI -controller chips. -Many systems that use these controller chips do not have a boot ROM -and therefore cannot be booted from. -.Sh HARDWARE -The adapters supported by the -.Nm -driver include: -.Pp -.Bl -bullet -compact -.It -Adaptec AHA-1505 (ISA) -.It -Adaptec AHA-1510A, AHA-1510B (ISA) -.It -Adaptec AHA-1520A, AHA-1520B (ISA) -.It -Adaptec AHA-1522A, AHA-1522B (ISA) -.It -Adaptec AHA-1535 (ISA) -.It -Creative Labs SoundBlaster SCSI host adapter (ISA) -.It -Adaptec AHA-1460, AHA-1460B, AHA-1460C, AHA-1460D (PC Card) -.El -.Sh SEE ALSO -.Xr aha 4 , -.Xr ahc 4 , -.Xr cd 4 , -.Xr ch 4 , -.Xr da 4 , -.Xr intro 4 , -.Xr sa 4 -.Sh BUGS -The driver does not work well with multiple devices on the SCSI bus. -The driver works well with devices like CDROMs and Tape drives. -The driver works not so well with disk drives. -The PC Card version appears to work better than the ISA version, but -that may be due to differing levels of testing of the devices. diff --git a/share/man/man4/man4.i386/alpm.4 b/share/man/man4/man4.i386/alpm.4 deleted file mode 100644 index c213baed45c..00000000000 --- a/share/man/man4/man4.i386/alpm.4 +++ /dev/null @@ -1,62 +0,0 @@ -.\" Copyright (c) 1999 Nicolas Souchu -.\" 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/man4.i386/alpm.4,v 1.16 2002/03/23 15:26:20 nsouch Exp $ -.\" -.Dd February 13, 1999 -.Dt ALPM 4 i386 -.Os -.Sh NAME -.Nm alpm -.Nd Acer Aladdin 15x3 Power Management controller driver -.Sh SYNOPSIS -.Cd device smbus -.Cd device smb -.Cd device alpm -.Sh DESCRIPTION -This driver provides access to the -.Tn Aladdin 15x3 Power Management Unit . -Currently, only smbus controller -function is implemented. -.Pp -The embedded SMBus controller of the Aladdin chipset may give you access -to the monitoring facilities of your mainboard. -See -.Xr smb 4 -for writing user code to fetch voltages, temperature and so on from the -monitoring chip of your mainboard. -.Sh SEE ALSO -.Xr smb 4 , -.Xr smbus 4 -.Sh HISTORY -The -.Nm -manual page first appeared in -.Fx 4.0 . -.Sh AUTHORS -This -manual page was written by -.An Nicolas Souchu Aq nsouch@FreeBSD.org -.Sh BUGS -Only polling mode is supported. diff --git a/share/man/man4/man4.i386/amdpm.4 b/share/man/man4/man4.i386/amdpm.4 deleted file mode 100644 index faf5416f380..00000000000 --- a/share/man/man4/man4.i386/amdpm.4 +++ /dev/null @@ -1,72 +0,0 @@ -.\" Copyright (c) 2001 Murray Stokely -.\" Copyright (c) 1999 Takanori Watanabe -.\" 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/man4.i386/amdpm.4,v 1.5 2005/12/31 16:32:27 brueffer Exp $ -.\" -.Dd December 31, 2005 -.Dt AMDPM 4 i386 -.Os -.Sh NAME -.Nm amdpm -.Nd AMD 756/766/768/8111 Power Management controller driver -.Sh SYNOPSIS -.Cd device smbus -.Cd device smb -.Cd device amdpm -.Sh DESCRIPTION -This driver provides access to -.Tn AMD 756/766/768/8111 Power management controllers . -Currently, only the SMBus 1.0 controller function is implemented. -The SMBus 2.0 functionality of the AMD 8111 controller is supported via the -.Xr amdsmb 4 -driver. -.Pp -The embedded SMBus controller of the AMD 756 chipset may give you access -to the monitoring facilities of your mainboard. -See -.Xr smb 4 -for writing user code to fetch voltages, temperature and so on from the -monitoring chip of your mainboard. -.Sh SEE ALSO -.Xr amdsmb 4 , -.Xr smb 4 , -.Xr smbus 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 4.5 . -.Sh AUTHORS -.An -nosplit -This driver was written by -.An "Matthew C. Forman" . -Based heavily on the -.Nm alpm -driver by -.An Nicolas Souchu . -This manual page was written by -.An Murray Stokely Aq murray@FreeBSD.org . -.Sh BUGS -Only polling mode is supported. diff --git a/share/man/man4/man4.i386/ar.4 b/share/man/man4/man4.i386/ar.4 deleted file mode 100644 index 4a208617820..00000000000 --- a/share/man/man4/man4.i386/ar.4 +++ /dev/null @@ -1,127 +0,0 @@ -.\" -.\" Copyright (c) 1995, 1999 John Hay. 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 Hay ``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 John Hay 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/man4.i386/ar.4,v 1.28 2005/01/21 08:36:38 ru Exp $ -.\" -.Dd November 19, 1995 -.Dt AR 4 i386 -.Os -.Sh NAME -.Nm ar -.Nd synchronous Digi/Arnet device driver -.Sh SYNOPSIS -.Cd "device ar0 at isa? port 0x300 irq 10 iomem 0xd0000" -.Cd "device ar1 at isa? port 0x310 irq 11 iomem 0xd0000" -.Pp -.Cd "device sppp" -.Sh DESCRIPTION -The -.Nm -driver supports the Digi/Arnet SYNC/570i ISA and PCI cards that is based on the -HD64570 chip. -Both the 2 and 4 port cards are supported and auto detected. -.Pp -The standard -.Fx -sppp code is used for the link level layer. -The -default protocol used is PPP. -The Cisco HDLC protocol can be used by -adding -.Ar link2 -to -.Xr ifconfig 8 . -.Pp -Alternately, the driver can be compiled to support -.Xr netgraph 4 -(see below). -.Sh NUMBERING -Only one line for each card is needed in the kernel configuration file. -The first card's ports will be installed from ar0. -The numbering of the -next card will continue where the first stopped, e.g.\& if the first card -is a two port card it will use ar0 and ar1. -The next card will then -start at ar2. -.Pp -The card only supports IRQ 3, 5, 7, 10, 11, 12 and 15. -.Pp -The iomem area is a 16Kb block and must start at a 16Kb boundary. -.Sh NETGRAPH SUPPORT -If the kernel is compiled with -.Dv "options NETGRAPH" -then the sppp and Cisco HDLC modes are disabled (and the sppp driver -is unneeded), and this driver functions as a -.Xr netgraph 4 -node with a single hook named -.Dv rawdata . -Connecting to this hook enables the transmission of raw HDLC frames. -The node will have the same name as the device with ``sync_'' -prepended, e.g., -.Dv sync_ar0 . -.Sh FILES -.Bl -tag -width /sys/i386/isa/ic/hd64570.h -compact -.It Pa /sys/i386/isa/ic/hd64570.h -.It Pa /sys/i386/isa/if_arregs.h -.It Pa /sys/i386/isa/if_ar.c -.It Pa /sys/i386/isa/if_ar.h -.It Pa /sys/pci/if_ar_p.c -.El -.Sh DIAGNOSTICS -.Bl -diag -.It "ar%d: Warning illegal interrupt %d." -The card cannot use the specified interrupt. -Choose a different one. -.El -.Sh SEE ALSO -.Xr cx 4 , -.Xr netgraph 4 , -.Xr netintro 4 , -.Xr sr 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 2.2 . -.Sh AUTHORS -.An -nosplit -The -.Nm -device driver was written by -.An John Hay Aq jhay@FreeBSD.org . -Netgraph support was added by -.An Julian Elischer Aq julian@FreeBSD.org . -.Sh BUGS -At the moment only the V.35 and X.21 interfaces are tested. -The others -may need tweaks to the clock selection code. -.Pp -The code can probably stand some optimizing. -.Pp -Please report bugs to -.Aq jhay@FreeBSD.org . diff --git a/share/man/man4/man4.i386/arl.4 b/share/man/man4/man4.i386/arl.4 deleted file mode 100644 index 99b61c79d96..00000000000 --- a/share/man/man4/man4.i386/arl.4 +++ /dev/null @@ -1,115 +0,0 @@ -.\" Copyright (c) 2004 -.\" Ivan Sharov . 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 Ivan Sharov. -.\" 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 Ivan Sharov 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 Ivan Sharov 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/man4.i386/arl.4,v 1.10 2005/11/18 10:52:23 ru Exp $ -.\" -.Dd July 16, 2005 -.Dt ARL 4 i386 -.Os -.Sh NAME -.Nm arl -.Nd "Aironet Arlan 655 wireless network adapter driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device arl" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_arl_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for Aironet Arlan 655 -wireless network adapters. -The Arlan 655 series adapters operate at 354kbps, 512kbps, 1Mbps and 2Mbps. -.Pp -The Aironet Arlan 655 devices support Aironet TMA, Aironet Non-TMA -and PSP operating modes. -.Pp -By default, the -.Nm -driver configures the Aironet Arlan 655 card for TMA operation. -.Pp -To set up Radio Network parameters, use -.Xr arlcontrol 8 . -.Sh SEE ALSO -.Xr arp 4 , -.Xr netintro 4 , -.Xr arlcontrol 8 , -.Xr ifconfig 8 -.Sh LIMITATIONS -When using -.Xr ifconfig 8 -for setting -.Va SSID -you must use a 4-byte even hexadecimal digit value and it must start with -00 or 02. -.Pp -You can change -.Va channel -for current -.Va country -only through -.Xr ifconfig 8 . -You must use -.Xr arlcontrol 8 -for changing -.Va country . -.Pp -Cannot change link-level address. -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 5.3 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was initially written by -.An Ivan Sharov Aq ivan.sharov@iname.com . -.Aq ran@styx.aic.net -wrote the -.Xr arlcontrol 8 -utility and added -.Xr ioctl 2 -support to the driver. -.An Stanislav Svirid Aq count@riss-telecom.ru -ported this driver to the new ISA architecture, merged some al driver changes, -fixed some bugs and made it a module. -.An Yuri Kurenkov Aq y.kurenkov@init.ru -wrote this manpage. diff --git a/share/man/man4/man4.i386/cs.4 b/share/man/man4/man4.i386/cs.4 deleted file mode 100644 index fd4d71348e2..00000000000 --- a/share/man/man4/man4.i386/cs.4 +++ /dev/null @@ -1,160 +0,0 @@ -.\" -.\" Copyright (c) 1998 Michael Smith -.\" 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: stable/11/share/man/man4/man4.i386/cs.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24 2018 -.Dt CS 4 i386 -.Os -.Sh NAME -.Nm cs -.Nd "Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device cs" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_cs_load="YES" -.Ed -.Pp -In -.Pa /boot/device.hints : -.Cd hint.cs.0.at="isa" -.Cd hint.cs.0.port="0x300" -.Cd hint.cs.0.irq="10" -.Cd hint.cs.0.maddr="0xd000" -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for ISA Ethernet adapters based on the -.Tn Crystal Semiconductor CS8900 -and -.Tn CS8920 -NICs. -These devices are used on the -.Tn IBM EtherJet ISA -adapters and in many embedded applications where the high integration, small -size and low cost of the CS89x0 family compensate for their drawbacks. -.Pp -The -.Nm -driver will obtain configuration parameters either from -.Pa /boot/device.hints -or from the card. -At least the I/O port number must be specified. -Other parameters specified in -.Pa /boot/device.hints -will be used if present; -the card may be soft-configured so these may be any valid -value. -Adapters based on the CS8920 normally offer PnP configuration and the driver -will detect the -.Tn IBM EtherJet -and the -.Tn CSC6040 -adapters automatically. -.Pp -Note that the CS8900 is limited to 4 IRQ values; these are normally implemented -as 5, 10, 11 and 12. -The CS8920 has no such limitation. -.Pp -Memory-mapped and DMA operation are not supported at this time. -.Pp -In addition to the ISA devices, the PC Card devices based on the CS889x0 -family are also supported. -The IBM EtherJet PCMCIA Card is the only known device based on this -chip. -The PC Card support does not need the above specific ISA hints to work. -The PC Card support may not work for 10base2 (thinnet) connections and may -bogusly claim to support 10base5 (there are no known cards that have an -AUI necessary for 10base5 support on their dongles). -.Sh DIAGNOSTICS -.Bl -diag -.It "cs%d: full/half duplex negotiation timeout" -The attempt to negotiate duplex settings with the hub timed out. -This may -indicate a cabling problem or a faulty or incompatible hub. -.It "cs%d: failed to enable " -The CS89x0 failed to select the nominated media, either because it is not -present or not operating correctly. -.It "cs%d: No EEPROM, assuming defaults" -The CS89x0 does not have an EEPROM, or the EEPROM is hopelessly damaged. -Operation -will only be successful if the configuration entry lists suitable values for -the adapter. -.It "cs%d: Invalid irq" -The IRQ specified in the configuration entry is not valid for the adapter. -.It "cs%d: Could not allocate memory for NIC" -There is a critical memory shortage. -The adapter will not function. -.It "cs%d: Adapter has no media" -The adapter is not configured for a specific media type. -The media type will have -to be manually set. -.It "This is a %s, but LDN %d is disabled" -The PnP probe code found a recognised adapter, but the adapter is disabled. -.It "failed to read pnp parms" -A PnP adapter was found, but configuration parameters for it could not be read. -.It "failed to pnp card parameters" -The parameters obtained via PnP were not accepted by the driver. -The adapter -may not function. -.El -.Sh SEE ALSO -.Xr arp 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh AUTHORS -.An -nosplit -The -.Nm -device driver was written by -.An Maxim Bolotin -and -.An Oleg Sharoiko . -This manpage was written by -.An Michael Smith . -.Sh CAVEATS -The CS89x0 family of adapters have a very small RAM buffer (4K). -This may -cause problems with extremely high network loads or bursty network traffic. -In particular, NFS operations should be limited to 1k read/write transactions -in order to avoid overruns. diff --git a/share/man/man4/man4.i386/ct.4 b/share/man/man4/man4.i386/ct.4 deleted file mode 100644 index 2960b3f6e96..00000000000 --- a/share/man/man4/man4.i386/ct.4 +++ /dev/null @@ -1,162 +0,0 @@ -.\" Copyright (c) 2003 Noriaki MITSUNAGA. All rights reserved. -.\" Copyright (c) 2003 Hideyuki KURASHINA. 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: stable/11/share/man/man4/man4.i386/ct.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd November 18, 2003 -.Dt CT 4 i386 -.Os -.Sh NAME -.Nm ct -.Nd "WD33C93[ABC] based CBUS SCSI host adapter driver" -.Sh SYNOPSIS -.Cd "device ct" -.Cd "device scbus" -.Pp -In -.Pa /boot/device.hints: -.Pp -For most PC-9801-55, -92 and compatibles: -.Cd hint.ct.0.at="isa" -.Pp -For ELECOM bus-master -.Tn SCSI -adapters: -.Cd hint.ct.0.at="isa" -.Cd hint.ct.0.flags="0x30000" -.Pp -For I-O DATA SC98 adapters: -.Cd hint.ct.0.at="isa" -.Cd hint.ct.0.flags="0x10000" -.Pp -For LOGITEC adapters: -.Cd hint.ct.0.at="isa" -.Cd hint.ct.0.flags="0x50000" -.Pp -For TEXA adapters: -.Cd hint.ct.0.at="isa" -.Cd hint.ct.0.flags="0x20000" -.Pp -For adapters with SMIT transfer mode to enable SMIT transfer: -.Cd hint.ct.0.at="isa" -.Cd hint.ct.0.flags="0x40000" -.Cd hint.ct.0.maddr="0xdc000" -.Pp -Flags meaning: -.Bl -tag -offset indent -compact -width 0x000000 -.It 0x00000 -DMA transfer mode for an NEC PC-9801-55, -92 (or -compatibles), ICM IF-2660, Midori-Denshi MDC-554NA, or -Logitec LHA-N151 -.It 0x10000 -DMA transfer mode for an I-O DATA SC-98II -.It 0x20000 -bus-master transfer mode for a TEXA HA-55BS2, its -successors, or Midori-Denshi MDC-926R -.It 0x30000 -bus-master transfer mode for an ELECOM bus-master SCSI -adapter -.It 0x40000 -SMIT transfer mode (for supported adapters only) -.It 0x50000 -bus-master transfer mode for a Logitec LHA-20x series, -ICM IF-2766, IF-2766ET, IF-2767 or IF-2769 -.El -.Sh DESCRIPTION -The -.Nm -driver provides access to the -.Tn SCSI -bus connected to a WD33C93[ABC] based host adapter. -.Sh HARDWARE -The -.Nm -driver supports the following adapters: -.Pp -.Bl -bullet -compact -.It -ELECOM bus-master -.Tn SCSI -adapters -.It -I-O DATA SC-98II -.It -ICM IF-2660, IF-2766, IF-2766ET, IF-2767 and IF-2769 -.It -Logitec LHA-N151 and LHA-20x series -.It -Midori-Denshi MDC-554NA and MDC-926R -.It -NEC PC-9801-55, 92 and compatibles -.It -SMIT transfer type -.Tn SCSI -host adapters -.It -TEXA HA-55BS2 and its later models -.El -.Sh SEE ALSO -.Xr cd 4 , -.Xr ch 4 , -.Xr ctau 4 , -.Xr da 4 , -.Xr intro 4 , -.Xr sa 4 , -.Xr scsi 4 -.Sh NOTES -Historically, the driver for the Cronyx Tau WAN adapters was -.Dq ct . -This device name was changed to -.Dq ctau -to avoid conflicts -with this pc98 -.Nm -driver. -The network device name for -.Xr ctau 4 -is -.Dq Li ct . -Please see -.Xr ctau 4 -for the details for that device. -.Sh HISTORY -The -.Nm -device driver has been developed for -.Nx Ns /pc98 -and ported for -.Fx . -It first appeared in -.Fx 4.4 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Naofumi HONDA . -.Pp -This manual page was written by -.An Noriaki MITSUNAGA Aq Mt non@FreeBSD.org -and -.An Hideyuki KURASHINA Aq Mt rushani@FreeBSD.org . diff --git a/share/man/man4/man4.i386/ctau.4 b/share/man/man4/man4.i386/ctau.4 deleted file mode 100644 index e42c63a553d..00000000000 --- a/share/man/man4/man4.i386/ctau.4 +++ /dev/null @@ -1,125 +0,0 @@ -.\" Copyright (c) 2004 Roman Kurakin -.\" Copyright (c) 2004 Cronyx Engineering -.\" All rights reserved. -.\" -.\" This software is distributed with NO WARRANTIES, not even the implied -.\" warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -.\" -.\" Authors grant any other persons or organisations a permission to use, -.\" modify and redistribute this software in source and binary forms, -.\" as long as this message is kept with the software, all derivative -.\" works or modified versions. -.\" -.\" Cronyx Id: ct.4,v 1.1.2.6 2004/06/21 17:56:40 rik Exp $ -.\" $FreeBSD: stable/11/share/man/man4/man4.i386/ctau.4 358804 2020-03-09 13:06:02Z emaste $ -.\" -.Dd March 2, 2020 -.Dt CTAU 4 i386 -.Os -.Sh NAME -.Nm ctau -.Nd driver for synchronous Cronyx Tau WAN adapters -.Sh SYNOPSIS -.Cd "device ctau" -.Pp -Additional options: -.Cd "device sppp" -.Cd "options NETGRAPH" -.Cd "options NETGRAPH_CRONYX" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.ctau.0.at="isa" -.Cd hint.ctau.0.port="0x240" -.Cd hint.ctau.0.irq="15" -.Cd hint.ctau.0.drq="7" -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -.Sh DESCRIPTION -The -.Nm -driver needs either -.Xr sppp 4 -or -.Xr netgraph 4 . -Which one to use is determined by the -.Dv NETGRAPH_CRONYX -option. -If this option is present in your kernel configuration file, the -.Nm -driver will be compiled with -.Xr netgraph 4 -support. -Otherwise, it will be compiled with -.Xr sppp 4 -support. -.Pp -The base I/O port address specified in -.Pa /boot/device.hints -must match the port address set by the jumpers on the board. -The DMA I/O channel and interrupt request numbers are configured -by software at adapter initialization. -Legal values are: -.Pp -.Bl -tag -compact -width Port: -.It Port : -0x200, 0x220, 0x240, 0x260, 0x280, 0x2a0, 0x2c0, 0x2e0, -0x300, 0x320, 0x340, 0x360, 0x380, 0x3a0, 0x3c0, 0x3e0 -.It IRQ : -3, 5, 7, 10, 11, 12, 15 -.It DMA : -5, 6, 7 -.El -.Pp -The -.Nm -driver supports autodetection. -As for all non-PNP hardware, using -autodetection could lead to some potential problems with other devices during -the hardware detection process. -It is always better to specify hardware resources manually. -.Pp -Refer to -.Xr sconfig 8 -for information about the -.Nm -adapter configuration. -.Sh HARDWARE -The -.Nm -driver supports the following cards: -.Pp -.Bl -bullet -compact -.It -Cronyx Tau (RS-232/V.35) -.It -Cronyx Tau/R (RS-530/RS-449) -.It -Cronyx Tau/E1 (fractional E1) -.It -Cronyx Tau/G703 (unframed E1) -.El -.Sh SEE ALSO -.Xr cp 4 , -.Xr cx 4 , -.Xr sppp 4 , -.Xr ifconfig 8 , -.Xr sconfig 8 , -.Xr spppcontrol 8 -.Sh HISTORY -The -.Nm -driver was added in -.Fx 5.3 -and -.Fx 4.10 . -The -.Nm -driver for previous versions of -.Fx -is available from -.Pa http://www.cronyx.ru/ . diff --git a/share/man/man4/man4.i386/cx.4 b/share/man/man4/man4.i386/cx.4 deleted file mode 100644 index e43f4d1229c..00000000000 --- a/share/man/man4/man4.i386/cx.4 +++ /dev/null @@ -1,145 +0,0 @@ -.\" Copyright (c) 2003-2004 Roman Kurakin -.\" Copyright (c) 2003-2004 Cronyx Engineering -.\" All rights reserved. -.\" -.\" This software is distributed with NO WARRANTIES, not even the implied -.\" warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -.\" -.\" Authors grant any other persons or organisations a permission to use, -.\" modify and redistribute this software in source and binary forms, -.\" as long as this message is kept with the software, all derivative -.\" works or modified versions. -.\" -.\" Cronyx Id: cx.4,v 1.1.2.6 2004/06/21 17:56:40 rik Exp $ -.\" $FreeBSD: stable/11/share/man/man4/man4.i386/cx.4 358804 2020-03-09 13:06:02Z emaste $ -.\" -.Dd March 2, 2020 -.Dt CX 4 i386 -.Os -.Sh NAME -.Nm cx -.Nd "driver for synchronous/asynchronous Cronyx Sigma WAN adapters" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device cx" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_cx_load="YES" -.Ed -.Pp -Additional options: -.Cd "device sppp" -.Cd "options NETGRAPH" -.Cd "options NETGRAPH_CRONYX" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.cx.0.at="isa" -.Cd hint.cx.0.port="0x240" -.Cd hint.cx.0.irq="15" -.Cd hint.cx.0.drq="7" -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -.Sh DESCRIPTION -The -.Nm -driver needs either -.Xr sppp 4 -or -.Xr netgraph 4 . -Which one to use is determined by the -.Dv NETGRAPH_CRONYX -option. -If this option is present in your kernel configuration file, the -.Nm -driver will be compiled with -.Xr netgraph 4 -support. -Otherwise, it will be compiled with -.Xr sppp 4 -support. -.Pp -The base I/O port address specified in -.Pa /boot/device.hints -must match the port address set by the jumpers on the board. -The DMA I/O channel and interrupt request numbers are configured -by software at adapter initialization. -Legal values are: -.Pp -.Bl -tag -compact -width Port: -.It Port : -0x240, 0x260, 0x280, 0x300, 0x320, 0x380 -.It IRQ : -3, 5, 7, 10, 11, 12, 15 -.It DMA : -5, 6, 7 -.El -.Pp -The -.Nm -driver supports autodetection. -As for all non-PNP hardware, using -autodetection could lead to some potential problems with other devices during -the hardware detection process. -It is always better to specify hardware resources manually. -.Pp -Refer to -.Xr sconfig 8 -for information about the -.Nm -adapter configuration. -.Sh HARDWARE -The -.Nm -driver supports the following cards: -.Pp -.Bl -bullet -compact -.It -Cronyx Sigma-22, Sigma-24 -.It -Cronyx Sigma-100 -.It -Cronyx Sigma-400, Sigma-401, Sigma-404, Sigma-410, Sigma-440 -.It -Cronyx Sigma-500 -.It -Cronyx Sigma-703 -.It -Cronyx Sigma-800, Sigma-801, Sigma-810, Sigma-840 -.El -.Sh SEE ALSO -.Xr cp 4 , -.Xr ctau 4 , -.Xr sppp 4 , -.Xr ifconfig 8 , -.Xr sconfig 8 , -.Xr spppcontrol 8 -.Sh HISTORY -The -.Nm -driver was updated in -.Fx 5.2 -and -.Fx 4.10 . -In most of the previous versions of -.Fx -the -.Nm -driver is out of date. -The -.Nm -driver for previous versions of -.Fx -is available from -.Pa http://www.cronyx.ru/ . diff --git a/share/man/man4/man4.i386/el.4 b/share/man/man4/man4.i386/el.4 deleted file mode 100644 index 2054f55aad1..00000000000 --- a/share/man/man4/man4.i386/el.4 +++ /dev/null @@ -1,71 +0,0 @@ -.\" -.\" 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. -.\" -.\" $FreeBSD: src/share/man/man4/man4.i386/el.4,v 1.19.2.1 2005/10/31 20:15:58 jhb Exp $ -.\" -.Dd September 5, 2004 -.Dt EL 4 i386 -.Os -.Sh NAME -.Nm el -.Nd Ethernet driver for 3Com Etherlink 3C501 devices -.Sh SYNOPSIS -.Cd "device el" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.el.0.at="isa" -.Cd hint.el.0.port="0x300" -.Cd hint.el.0.irq="9" -.Sh DESCRIPTION -.Bf -symbolic -This device driver is deprecated and will be removed in -.Fx 7.0 . -.Ef -.Pp -The -.Nm -interface provides support for the 3Com 3c501 8bit ISA Ethernet card. -The 3c501 card is known to be quite slow, and a different Ethernet card -should be used if possible. -However, they allow inexpensive access to 10 Mb/s Ethernet networks. -.Pp -The valid I/O ports are in the range 0x280-0x3f0. -.Sh HARDWARE -The -.Nm -driver supports the 3Com 3c501 8bit ISA Ethernet card. -.Sh SEE ALSO -.Xr ed 4 , -.Xr ep 4 , -.Xr ie 4 , -.Xr intro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh BUGS -The driver assumes the card is configured for the same IRQ as the kernel. -No probing or checking is done to determine if this is the case. -.Pp -Does not currently support DMA. -.Pp -Does not currently support multicasts. diff --git a/share/man/man4/man4.i386/ep.4 b/share/man/man4/man4.i386/ep.4 deleted file mode 100644 index 17b008dddd2..00000000000 --- a/share/man/man4/man4.i386/ep.4 +++ /dev/null @@ -1,209 +0,0 @@ -.\" -.\" Copyright (c) 1994 Herb Peyerl -.\" 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 Herb Peyerl -.\" 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$ -.\" -.Dd October 24, 2018 -.Dt EP 4 i386 -.Os -.Sh NAME -.Nm ep -.Nd "Ethernet driver for 3Com Etherlink III (3c5x9) interfaces" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device ep" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_ep_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -device driver supports network adapters based on the 3Com 3C5x9 Etherlink III -Parallel Tasking chipset. -.Pp -Various models of these cards come with a different assortment of -connectors: -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It AUI/DIX -Standard 15 pin connector, also known as 10base5 (thick-net) -.It 10Base2 -BNC, also known as thin-net -.It 10BaseT -UTP, also known as twisted pair -.El -.Pp -The default port to use is the port that has been selected with the -setup utility. -To override this, use the following media options with -.Xr ifconfig 8 -or in your -.Pa /etc/rc.conf -file. -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It 10base5/AUI -Use the AUI port. -.It 10base2/BNC -Use the BNC port. -.It 10baseT/UTP -Use the UTP port. -.El -.Sh HARDWARE -The -.Nm -driver supports Ethernet adapters based on the -3Com 3C5x9 Etherlink III Parallel Tasking chipset, including: -.Pp -.Bl -bullet -compact -.It -3Com 3C1 CF -.It -3Com 3C509-TP, 3C509-BNC, 3C509-Combo, 3C509-TPO, 3C509-TPC ISA -.It -3Com 3C509B-TP, 3C509B-BNC, 3C509B-Combo, 3C509B-TPO, 3C509B-TPC ISA -.It -3Com 3C562/3C563 PCMCIA -.It -3Com 3C574, 3C574TX, 3C574-TX, 3CCFE574BT, 3CXFE574BT, 3C3FE574BT PCMCIA -.It -3Com 3C589, 3C589B, 3C589C, 3C589D, 3CXE589DT PCMCIA -.It -3Com 3CCFEM556B, 3CCFEM556BI PCMCIA -.It -3Com 3CXE589EC, 3CCE589EC, 3CXE589ET, 3CCE589ET PCMCIA -.It -3Com Megahertz 3CCEM556, 3CXEM556, 3CCEM556B, 3CXEM556B, 3C3FEM556C PCMCIA -.It -3Com OfficeConnect 3CXSH572BT, 3CCSH572BT PCMCIA -.It -Farallon EtherWave and EtherMac PC Card (P/n 595/895 with BLUE arrow) -.El -.Sh NOTES -The 3c509 card has no jumpers to set the address. -3Com supplies software to set the address of the card in software. -To find the card on the ISA bus, the kernel performs a complex -scan operation at IO address 0x110. -Beware! -Avoid placing other cards at that address! -.Pp -Furthermore, the 3c509 should not be configured in EISA mode. -.Pp -Cards in PnP mode may conflict with other resources in the system. -Ensure your BIOS is configured correctly to exclude resources used by -the 3c509, especially IRQs, to avoid unpredictable behavior. -.Pp -Many different companies sold the 3Com PC Cards under their own private -label. -These cards also work. -.Pp -The Farallon EtherWave and EtherMac card came in two varieties. -The -.Nm -driver supports the 595 and 895 cards. -These cards have the blue arrow on the front along with a 3Com logo. -The Farallon 595a cards, which have a red arrow on the front, -are also called EtherWave and EtherMac. -They are supported by the -.Xr sn 4 -driver. -.Sh DIAGNOSTICS -.Bl -diag -.It "ep0: reset (status: %x)" -The driver has encountered a FIFO underrun or overrun. -The driver will reset the card and the packet will be lost. -This is not fatal. -.It "ep0: eeprom failed to come ready" -The eeprom failed to come ready. -This probably means the card is wedged. -.It "ep0: 3c509 in test mode. Erase pencil mark!" -This means that someone has scribbled with pencil -in the test area on the card. -Erase the pencil mark and reboot. -(This is not a joke). -.It "ep0: No I/O space?!" -The driver was unable to allocate the I/O space that it thinks -should be there. -Look for conflicts with other devices. -.It "ep0: No irq?!" -The driver could not allocate the interrupt it wanted. -Look for conflicts, although sharing interrupts for PC Card is normal. -.It "ep0: No connectors!" -The driver queried the hardware for what ethernet attachment were -present, but the hardware reported none that the driver recognized. -.It "ep0: Unable to get Ethernet address!" -The driver was unable to read the ethernet address from the EEPROM. -This is likely the result of the card being wedged. -.It "ep0: if_alloc() failed" -The driver was unable to allocate a ifnet structure. -This may happen in extremely low memory conditions. -.It "ep0: strange connector type in EEPROM: assuming AUI" -The driver does not know what to do with the information the EEPROM -has about connectors, so it is assuming the worst. -.It "ep0: unknown ID 0xXXXXXXXX" -The driver has found an ID that it believes it supports, but does not -have a specific identification string to present to the user. -.It "ep0: <%s> at port 0x%03x in EISA mode, ignored." -The 3C509 ISA card is in EISA mode. -The card will be ignored until it is taken out of EISA mode. -.It "ep0: <%s> at x0%03x in PnP mode" -This card appears to be in Plug and Play mode. -It should be probed as part of the plug and play phase of the ISA -probes. -.It "ep0: Invalid EEPROM checksum!" -The EEPROM has a bad checksum, so the driver is ignoring the card. -.It "ep0: bus_setup_intr() failed!" -The driver was unable to setup the interrupt handler. -This should never happen. -.El -.Sh SEE ALSO -.Xr altq 4 , -.Xr ed 4 , -.Xr intro 4 , -.Xr ng_ether 4 , -.Xr sn 4 , -.Xr vx 4 , -.Xr ifconfig 8 -.Sh STANDARDS -are great. -There is so many to choose from. diff --git a/share/man/man4/man4.i386/ex.4 b/share/man/man4/man4.i386/ex.4 deleted file mode 100644 index b4bf09439e5..00000000000 --- a/share/man/man4/man4.i386/ex.4 +++ /dev/null @@ -1,127 +0,0 @@ -.\" -.\" Copyright (c) 1997 David E. O'Brien -.\" -.\" 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: stable/11/share/man/man4/man4.i386/ex.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24, 2018 -.Dt EX 4 i386 -.Os -.Sh NAME -.Nm ex -.Nd "Ethernet device driver for the Intel EtherExpress Pro/10 and Pro/10+" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device ex" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_ex_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for Ethernet adapters based on the Intel -i82595 chip. -.Pp -On the ISA bus, the card will be searched for in the -I/O address range 0x200 - 0x3a0. -The IRQ will be read from the EEPROM on the card. -For correct operation Plug-N-Play support should be disabled. -.Pp -On the PC Card bus, the card will be automatically recognized and -configured. -.Sh HARDWARE -The -.Nm -driver supports the following Ethernet adapters: -.Pp -.Bl -bullet -compact -.It -Intel EtherExpress Pro/10 ISA -.It -Intel EtherExpress Pro/10+ ISA -.It -Olicom OC2220 Ethernet PC Card -.It -Olicom OC2232 Ethernet/Modem PC Card -.It -Silicom Ethernet LAN PC Card -.It -Silicom EtherSerial LAN PC Card -.El -.Sh DIAGNOSTICS -.Bl -diag -.It "ex%d: Intel EtherExpress Pro/10, address %6D, connector %s" -The device probe found an installed card, and was able to correctly install -the device driver. -.It "ex%d: WARNING: board's EEPROM is configured for IRQ %d, using %d" -The device probe detected that the board is configured for a different -interrupt than the one specified in the kernel configuration file. -.It "ex%d: invalid IRQ." -The device probe detected an invalid IRQ setting. -.El -.Sh SEE ALSO -.Xr arp 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 2.2 . -.Sh AUTHORS -.An -nosplit -The -.Nm -device driver was written by -.An Javier Mart\('in Rueda . -The PC Card attachment was written by -.An Mitsuru ISAWAKI -and -.An Warner Losh . -This manual page was written by -.An David E. O'Brien . -.Sh BUGS -Currently the driver does not support multicast. -.Pp -The Silicom EtherSerial card's serial port does not currently work. -The Olicom OC2232 PC Card should work with the -.Nm -driver, but is currently completely broken. diff --git a/share/man/man4/man4.i386/fe.4 b/share/man/man4/man4.i386/fe.4 deleted file mode 100644 index b21c0a3aeab..00000000000 --- a/share/man/man4/man4.i386/fe.4 +++ /dev/null @@ -1,326 +0,0 @@ -.\" All Rights Reserved, Copyright (C) Fujitsu Limited 1995 -.\" -.\" This document may be used, modified, copied, distributed, and sold, in -.\" both source and printed form provided that the above copyright, these -.\" terms and the following disclaimer are retained. The name of the author -.\" and/or the contributor may not be used to endorse or promote products -.\" derived from this software without specific prior written permission. -.\" -.\" THIS DOCUMENT IS PROVIDED BY THE AUTHOR AND THE CONTRIBUTOR ``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 THE CONTRIBUTOR 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 DOCUMENT, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" Contributed by M. Sekiguchi . -.\" for fe driver. -.\" -.\" $FreeBSD: stable/11/share/man/man4/man4.i386/fe.4 347962 2019-05-18 20:43:13Z brooks $ -.Dd October 24, 2018 -.Dt FE 4 i386 -.Os -.Sh NAME -.Nm fe -.Nd "Fujitsu MB86960A/MB86965A based Ethernet adapters" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device fe" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_fe_load="YES" -.Ed -.Pp -In -.Pa /boot/device.hints : -.Cd hint.fe.0.at="isa" -.Cd hint.fe.0.port="0x300" -.Cd hint.fe.0.flags="0x0" -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -is a network device driver -for Ethernet adapters based on Fujitsu MB86960A, MB86965A, -or other compatible chips. -.Pp -The driver provides automatic I/O port address configuration and -automatic IRQ configuration, -when used with suitable adapter hardware. -.Pp -The driver works with program I/O data transfer technique. -It gives a fair performance. -Shared memory is never used, even if the adapter has one. -.Pp -It currently works with Fujitsu FMV-180 series for ISA, -Allied-Telesis AT1700 series and RE2000 series for ISA, -and Fujitsu MBH10302 PC card. -.Ss Parameters -In the -.Pa /boot/device.hints -file, two parameters, -.Ar port -and -.Ar irq , -must be specified to reflect adapter hardware settings. -Another parameter -.Ar flags -can be specified to provide additional configuration as an option. -.Pp -The -.Ar port -parameter specifies a base I/O port address of the adapter. -It must match with the hardware setting of the adapter. -The -.Ar port -may be left unspecified by removing -.Dl hint.fe.0.port="..." -from the file. -In that case, the driver tries to detect the hardware setting -of the I/O address automatically. -This feature may not work with some adapter hardware. -.Pp -The -.Ar irq -parameter specifies an IRQ number used by the adapter. -It must match the hardware setting of the adapter. -.Ar Irq -may be left unspecified by removing -.Dl hint.fe.0.irq="..." -from the file. -in that case, the driver tries to detect -the hardware setting of the IRQ automatically. -This feature may not work on some adapters. -.Pp -The -.Ar flags -is a numeric value which consists of a combination of various device settings. -The following flags are defined in the current version. -To specify two or more settings for a device, -use a numeric sum of each flag value. -Flag bits not specified below are reserved and must be set to 0. -Actually, each bit is either just ignored by the driver, -or tested and used to control undocumented features of the driver. -Consult the source program for undocumented features. -.Bl -tag -width 8n -.It Li 0x007F -These flag bits are used -to initialize DLCR6 register of MB86960A/MB86965A chip, -when the -.Li 0x0080 -bit of the -.Ar flags -is set. -See below for more about DLCR6 override feature. -The -.Li 0x007F -flag bits must be 0 unless the -.Li 0x0080 -bit is set, -to maintain the compatibility with future versions of the driver. -.It Li 0x0080 -This flag overrides the default setting to the DLCR6 register -of MB86960A/MB86965A chip by a user supplied value, -which is taken from the lower 7 bits of the flag value. -This is a troubleshooting flag and should not be used -without understanding of the adapter hardware. -Consult the Fujitsu manual for more information -on DLCR6 settings. -.El -.Sh HARDWARE -Controllers and cards supported by the -.Nm -driver include: -.Pp -.Bl -bullet -compact -.It -Allied Telesis RE1000, RE1000Plus, ME1500 (110-pin) -.It -CONTEC C-NET(98)P2, C-NET (9N)E (110-pin), C-NET(9N)C (ExtCard) -.It -CONTEC C-NET(PC)C PC Card Ethernet -.It -Eagle Tech NE200T -.It -Eiger Labs EPX-10BT -.It -Fujitsu FMV-J182, FMV-J182A -.It -Fujitsu MB86960A, MB86965A -.It -Fujitsu MBH10303, MBH10302 PC Card Ethernet -.It -Fujitsu Towa LA501 Ethernet -.It -HITACHI HT-4840-11 PC Card Ethernet -.It -NextCom J Link NC5310 -.It -RATOC REX-5588, REX-9822, REX-4886, and REX-R280 -.It -RATOC REX-9880/9881/9882/9883 -.It -TDK LAC-98012, LAC-98013, LAC-98025, LAC-9N011 (110-pin) -.It -TDK LAK-CD011, LAK-CD021, LAK-CD021A, LAK-CD021BX -.It -Ungermann-Bass Access/PC N98C+(PC85152, PC85142), Access/NOTE -N98(PC86132) (110-pin) -.El -.Sh FEATURES SPECIFIC TO HARDWARE MODELS -The -.Nm -driver has some features and limitations -which depend on adapter hardware models. -The following is a summary of these dependencies. -.Ss Fujitsu FMV-180 series adapters -Both automatic IRQ detection and automatic I/O port address detection -is available with these adapters. -.Pp -Automatic I/O port address detection feature of -.Nm -works mostly fine for FMV-180 series. -It works even if there are two or more FMV-180s in a system. -However, some combination of other adapters may confuse the driver. -It is recommended to explicitly specify -.Ar port -when you experience some difficulties with hardware probe. -.Pp -Automatic IRQ detection feature of -.Nm -works reliably for FMV-180 series. -It is recommended to explicitly specify -.Ar irq -always for FMV-180. -The hardware setting of IRQ is read -from the configuration EEPROM on the adapter, -even when the kernel config file specifies an IRQ value. -The driver will generate a warning message, -if the IRQ setting specified in -.Pa /boot/device.hints -does not match one stored in EEPROM. -Then, it will use the value specified in the file. -(This behavior has been changed from the previous releases.) -.Ss Allied-Telesis AT1700 series and RE2000 series adapters -Automatic I/O port address detection -is available with Allied-Telesis AT1700 series and RE2000 series, -while it is less reliable than FMV-180 series. -Using the feature with Allied-Telesis adapters -is not recommended. -.Pp -Automatic IRQ detection is also available with some limitation. -The -.Nm -driver -tries to get IRQ setting from the configuration EEPROM on the board, -if -.Ar irq -is not specified in -.Pa /boot/device.hints . -Unfortunately, -AT1700 series and RE2000 series seems to have two types of models; -One type allows IRQ selection from 3/4/5/9, -while the other from 10/11/12/15. -Identification of the models are not well known. -Hence, automatic IRQ detection with Allied-Telesis adapters -may not be reliable. -Specify an exact IRQ number if any troubles are encountered. -.Pp -Differences between AT1700 series and RE2000 series -or minor models in those series are not recognized. -.Ss Fujitsu MBH10302 PC card -The -.Nm -driver supports Fujitsu MBH10302 and compatible PC cards. -It requires the PC card (PCMCIA) support package. -.Sh SEE ALSO -.Xr netstat 1 , -.Xr ed 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -driver appeared in -.Fx 2.0.5 . -.Sh AUTHORS, COPYRIGHT AND DISCLAIMER -The -.Nm -driver was originally written and contributed by -.An M. Sekiguchi Aq Mt seki@sysrap.cs.fujitsu.co.jp , -following the -.Nm ed -driver written by -.An David Greenman . -PC card support in -.Nm -is written by -.An Hidetoshi Kimura Aq Mt h-kimura@tokyo.se.fujitsu.co.jp . -This manual page was written by -.An M. Sekiguchi . -.Pp -.Em "All Rights Reserved, Copyright (C) Fujitsu Limited 1995" -.Pp -This document and the associated software may be used, modified, -copied, distributed, and sold, in both source and binary form provided -that the above copyright, these terms and the following disclaimer are -retained. -The name of the author and/or the contributor may not be -used to endorse or promote products derived from this document and the -associated software without specific prior written permission. -.Pp -THIS DOCUMENT AND THE ASSOCIATED SOFTWARE IS PROVIDED BY THE AUTHOR -AND THE CONTRIBUTOR -.Dq 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 THE -CONTRIBUTOR 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 -DOCUMENT AND THE ASSOCIATED SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. -.Sh BUGS -Following are major known bugs: -.Pp -Statistics on the number of collisions maintained by the -.Nm -driver is not accurate; -the -.Fl i -option of -.Xr netstat 1 -shows slightly less value than true number of collisions. -.Pp -More mbuf clusters are used than expected. -The packet receive routine has an intended violation -against the mbuf cluster allocation policy. -The unnecessarily allocated clusters are freed within short lifetime, -and it will not affect long term kernel memory usage. -.Pp -Although XNS and IPX support is included in the driver, -it has never been tested and it is expected to have a lot of bugs. diff --git a/share/man/man4/man4.i386/ichwd.4 b/share/man/man4/man4.i386/ichwd.4 deleted file mode 100644 index 5b0d873da79..00000000000 --- a/share/man/man4/man4.i386/ichwd.4 +++ /dev/null @@ -1,76 +0,0 @@ -.\"- -.\" Copyright (c) 2004 Dag-Erling Coïdan Smørgrav -.\" 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 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/man4.i386/ichwd.4,v 1.3 2004/08/29 11:19:35 des Exp $ -.\" -.Dd May 11, 2004 -.Dt ICHWD 4 i386 -.Os -.Sh NAME -.Nm ichwd -.Nd Intel ICH watchdog timer driver -.Sh SYNOPSIS -.Cd device ichwd -.Sh DESCRIPTION -This driver provides access to the watchdog timer (WDT) present on all -Intel ICH chipsets. -.Pp -The ICH WDT counts down in ticks of approximately 0.6 seconds; the -exact value depends on hardware quality and environmental factors. -Supported watchdog intervals range from 2 to 63 ticks. -.Pp -Note that on some ICH-based systems, the WDT may be present but -disabled, either in hardware or by the BIOS. -The -.Nm -driver attempts to detect this condition and will refuse to attach if -it believes the WDT is disabled. -.Sh SEE ALSO -.Xr watchdog 4 , -.Xr watchdog 8 , -.Xr watchdogd 8 , -.Xr watchdog 9 -.Rs -.%T Using the Intel ICH Family Watchdog Timer (WDT) -.%R Intel Application Note AP-725 -.%O Document Number 292273-001 -.Re -.Sh HISTORY -The -.Nm -driver appeared in -.Fx 5.3 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Wm. Daryl Hawkins Aq dhawkins@tamu.edu -and -.An Dag-Erling Sm\(/orgrav Aq des@FreeBSD.org . -This manual page was written by -.An Dag-Erling Sm\(/orgrav Aq des@FreeBSD.org . diff --git a/share/man/man4/man4.i386/ie.4 b/share/man/man4/man4.i386/ie.4 deleted file mode 100644 index aee973b8e66..00000000000 --- a/share/man/man4/man4.i386/ie.4 +++ /dev/null @@ -1,148 +0,0 @@ -.\" -.\" Copyright (c) 1994, Wilko Bulte -.\" 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: stable/11/share/man/man4/man4.i386/ie.4 320921 2017-07-12 20:10:53Z jhb $ -.\" -.Dd July 8, 2017 -.Dt IE 4 i386 -.Os -.Sh NAME -.Nm ie -.Nd "Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device ie" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_ie_load="YES" -.Ed -.Pp -In -.Pa /boot/device.hints : -.Cd hint.ie.0.at="isa" -.Cd hint.ie.0.port="0x300" -.Cd hint.ie.0.irq="5" -.Cd hint.ie.0.maddr="0xd0000" -.Sh DEPRECATION NOTICE -The -.Nm -driver will be removed in -.Fx 12.0 . -.Sh HARDWARE -The -.Nm -driver provides supports the following 8 and 16bit ISA Ethernet cards -that are based on the Intel i82586 chip: -.Pp -.Bl -bullet -compact -.It -3COM 3C507 -.It -AT&T EN100 -.It -AT&T Starlan 10 -.It -AT&T Starlan Fiber -.It -Intel EtherExpress 16 -.It -RACAL Interlan NI5210 -.El -.Sh DIAGNOSTICS -.Bl -diag -.It "ie%d: unknown board type code %d" -An i82586 chip was found, but the driver was unable to determine the actual -board type during the probe. -.It "ie%d: kernel configured maddr %x doesn't match board configured maddr %x" -The device probe detected a different maddr than the one specified in the -kernel configuration file. -.It "ie%d: can't find shared memory" -The device probe could not access the shared memory to determine its size. -.It "ie%d: kernel configured msize %d doesn't match board configured msize %d" -The device probe found a different size for the shared memory than the one -specified in the kernel configuration file. -.It "ie%d: kernel configured irq %d doesn't match board configured irq %d" -The device probe detected that the board is configured for a different -interrupt than the one specified in the kernel configuration file. -.It "ie%d: reset" -The Intel i82586 had to be reset by the driver. -.It "ie%d: transceiver problem" -The driver has detected a problem with the Ethernet transceiver. -This is -usually due to a loose or broken transceiver cable when using an external -transceiver. -When you experience this problem with an on-card transceiver -your card may be incorrectly jumpered for to use an external transceiver. -Worst case your on-board transceiver may be broken. -.It "ie%d: TDR detected an open %d clocks away" -The driver detected an open circuit in the Ethernet cable. -Check your -coax cable and terminator resistors. -.It "ie%d: TDR detected a short %d clocks away" -The driver detected a short circuit in the Ethernet cable. -Check your -coax cable and terminator resistors. -.It "ie%d: TDR returned unknown status %x" -The driver got an unknown status from the card during the Ethernet cable -test. -.It "ie%d: multicast address setup command failed" -The card could not be put into multicast mode. -.It "ie%d: configure command failed" -The card refused to respond correctly during configuration. -.It "ie%d: individual address setup command failed" -The programming of the Ethernet (MAC) address failed. -.El -.Sh SEE ALSO -.Xr arp 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh AUTHORS -.An -nosplit -The -.Nm -device driver was written by -.An Garrett A. Wollman , -based on code by -.An William F. Jolitz -and Lawrence Berkeley Laboratories. -.Tn 3C507 -support was written by -.An Charles M. Hannum . -This manual page was written by -.An Wilko C. Bulte . -.Sh CAVEATS -The Racal Interlan NI5210 comes in variants with 8 and 16 kbytes of -shared memory. -It is strongly advisable to use the 16 kbyte variant. -You can upgrade your 8 kbyte card to 16 kbyte by adding an additional -RAM chip. diff --git a/share/man/man4/man4.i386/io.4 b/share/man/man4/man4.i386/io.4 deleted file mode 100644 index b2b885ba2b5..00000000000 --- a/share/man/man4/man4.i386/io.4 +++ /dev/null @@ -1,69 +0,0 @@ -.\" -.\" Copyright (c) 1996 Joerg Wunsch -.\" -.\" All rights reserved. -.\" -.\" This program is free software. -.\" -.\" 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/man4/man4.i386/io.4,v 1.13 2004/10/03 13:14:20 simon Exp $ -.\" -.Dd October 3, 2004 -.Dt IO 4 i386 -.Os -.Sh NAME -.Nm io -.Nd I/O privilege file -.Sh SYNOPSIS -.Cd "device io" -.Sh DESCRIPTION -The special file -.Pa /dev/io -is a controlled security hole that allows a process to gain I/O -privileges -(which are normally reserved for kernel-internal code). -Any process that holds a file descriptor on -.Pa /dev/io -open will get its -.Em IOPL -bits in the flag register set, thus allowing it to perform direct -I/O operations. -This can be useful in order to write userland -programs that handle some hardware directly. -Note that even read-only access will grant the full I/O privileges. -.Pp -In addition to any file access permissions on -.Pa /dev/io , -the kernel enforces that only the super-user may open this device. -.Sh FILES -.Bl -tag -width Pa -compact -.It Pa /dev/io -.El -.Sh SEE ALSO -.Xr i386_get_ioperm 2 , -.Xr i386_set_ioperm 2 , -.Xr mem 4 -.Sh HISTORY -The -.Nm -file appeared in -.Fx 1.0 . diff --git a/share/man/man4/man4.i386/linux.4 b/share/man/man4/man4.i386/linux.4 deleted file mode 100644 index 1d85084f76a..00000000000 --- a/share/man/man4/man4.i386/linux.4 +++ /dev/null @@ -1,131 +0,0 @@ -.\" Copyright (c) 2000 Sheldon Hearn -.\" 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/man4.i386/linux.4,v 1.12 2006/09/18 15:24:19 ru Exp $ -.Dd June 18, 2006 -.Dt LINUX 4 i386 -.Os -.Sh NAME -.Nm linux -.Nd Linux ABI support -.Sh SYNOPSIS -To link Linux ABI support into the kernel: -.Cd "options COMPAT_LINUX" -.Pp -To load the Linux ABI support kernel module: -.Dl kldload linux -.Sh DESCRIPTION -The -.Nm -module provides limited -Linux ABI (application binary interface) compatibility -for userland applications. -The module provides the following significant facilities: -.Bl -bullet -.It -An image activator -for correctly branded -.Xr elf 5 -executable images -.It -Special signal handling for activated images -.It -Linux to native system call translation -.El -.Pp -It is important to note that the Linux ABI support -it not provided through an emulator. -Rather, a true (albeit limited) ABI implementation is provided. -.Pp -The following -.Xr sysctl 8 -tunable variables are available: -.Bl -tag -width compat.linux.oss_version -.It compat.linux.osname -Linux kernel operating system name. -.It compat.linux.osrelease -Linux kernel operating system release. -Changing this to something else is discouraged on non-development systems, -because it may change the way Linux programs work. -Recent versions of GNU libc are known to use different syscalls depending -on the value of this sysctl. -.It compat.linux.oss_version -Linux Open Sound System version. -.El -.Pp -The -.Nm -module can be linked into the kernel statically with the -.Dv COMPAT_LINUX -kernel configuration option -or loaded as required. -The following command will load the module -if it is neither linked into the kernel -nor already loaded as a module: -.Bd -literal -offset indent -if ! kldstat -v | grep -E 'linux(aout|elf)' > /dev/null; then - kldload linux > /dev/null 2>&1 -fi -.Ed -.Pp -Note that dynamically linked Linux executables -will require a suitable environment in -.Pa /compat/linux . -Specifically, the Linux run-time linker's hints files -should be correctly initialized. -For this reason, it is common to execute the following commands -to prepare the system to correctly run Linux executables: -.Bd -literal -offset indent -if [ -x /compat/linux/sbin/ldconfig ]; then - /compat/linux/sbin/ldconfig -r /compat/linux -fi -.Ed -.Pp -For information on loading the -.Nm -kernel loadable module automatically on system startup, -see -.Xr rc.conf 5 . -This information applies -regardless of whether the -.Nm -module is statically linked into the kernel -or loaded as a module. -.Sh FILES -.Bl -tag -width /compat/linux/proc -compact -.It Pa /compat/linux -minimal Linux run-time environment -.It Pa /compat/linux/proc -limited Linux process file system -.It Pa /compat/linux/sys -limited Linux system file system -.El -.Sh SEE ALSO -.Xr brandelf 1 , -.Xr elf 5 , -.Xr linprocfs 5 , -.Xr linsysfs 5 -.Sh HISTORY -Linux ABI support first appeared in -.Fx 2.1 . diff --git a/share/man/man4/man4.i386/lnc.4 b/share/man/man4/man4.i386/lnc.4 deleted file mode 100644 index 48bdbb11cc5..00000000000 --- a/share/man/man4/man4.i386/lnc.4 +++ /dev/null @@ -1,168 +0,0 @@ -.\" -.\" Copyright (c) 1997 David E. O'Brien -.\" -.\" 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/man4/man4.i386/lnc.4,v 1.25.2.2 2006/02/02 07:50:02 trhodes Exp $ -.\" -.Dd July 16, 2005 -.Dt LNC 4 i386 -.Os -.Sh NAME -.Nm lnc -.Nd "AMD Lance/PCnet Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device lnc" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_lnc_load="YES" -.Ed -.Pp -In -.Pa /boot/device.hints : -.Cd hint.lnc.0.at="isa" -.Cd hint.lnc.0.port="0x280" -.Cd hint.lnc.0.irq="10" -.Cd hint.lnc.0.drq="0" -.Sh DESCRIPTION -The -.Nm -driver provides support for the AMD family of Lance/PCnet Ethernet NICs -including the Am7990 and Am79C960. -.Sh HARDWARE -The -.Nm -driver supports the following adapters: -.Pp -.Bl -bullet -compact -.It -Diamond HomeFree -.It -Digital DEPCA -.It -Hewlett Packard Vectra 486/66XM -.It -Hewlett Packard Vectra XU -.It -Isolan AT 4141-0 (16 bit) -.It -Isolan BICC -.It -Isolink 4110 (8 bit) -.It -Novell NE2100 -.It -Novell NE32-VL -.El -.Pp -Also supported are adapters working with the -.Xr pcn 4 -driver. -The -.Nm -driver runs these in compatibility mode, thus the -.Xr pcn 4 -driver should be preferred. -.Sh DIAGNOSTICS -.Bl -diag -.It "lnc%d: Framing error" -A framing error occurred. -This means a CRC error also occurred. -This caused the driver to drop the packet that contained the framing error. -.It "lnc%d: Receive CRC error -The received Ethernet frame failed the CRC checksum. -This caused the driver to drop the packet that failed the checksum. -.It "lnc%d: Packet dropped, no mbufs" -The driver ran out of mbuf's. -This may suggest a resource problem. -.It "lnc%d: Couldn't allocate memory for NIC" -This is a fatal error. -The driver will not attach to the card under this -circumstance. -.It "lnc%d: Memory allocated above 16Mb limit" -ISA and ESIA cards require bounce buffers for DMA transfers above 16mb. -The Am7990 and Am79C960 only have 24 address lines and so can only access -the lower 16Mb of physical memory. -The -.Nm -driver assumes the memory it allocates is within the lower 16Mb range. -This is not a very valid assumption but there is nothing that can be done -about it yet. -For shared memory NICs this is not relevant. -.It "lnc%d: Device timeout -- Resetting" -The device has stopped responding to the network, or there is a problem with -the network connection (cable). -Make sure the network connection in use -is the same one the card is configured for. -.It "lnc%d: Transmit late collision -- Net error?" -.It "lnc%d: Loss of carrier during transmit -- Net error?" -.It "lnc%d: Transmit of packet failed after 16 attempts -- TDR = %d" -.It "lnc%d: Heartbeat error -- SQE test failed" -.It "lnc%d: Babble error - more than 1519 bytes transmitted" -.It "lnc%d: Missed packet -- no receive buffer" -.It "lnc%d: Memory error -- Resetting" -.It "lnc%d: Couldn't get mbuf for transmit packet -- Resetting" -.It "lnc%d: Receive buffer error" -.It "lnc%d: Receive overflow error" -.It "lnc%d: Receive interrupt with buffer still owned by controller -- Resetting" -.It "lnc%d: Receive interrupt but not start of packet -- Resetting" -.It "lnc%d: Start of packet found before end of previous in receive ring -- Resetting" -.It "lnc%d: End of received packet not found -- Resetting" -.It "lnc%d: Transmit interrupt with buffer still owned by controller -- Resetting" -.It "lnc%d: Transmit interrupt but not start of packet -- Resetting" -.It "lnc%d: Start of packet found before end of previous in transmit ring -- Resetting" -.It "lnc%d: End of transmitted packet not found -- Resetting" -.It "lnc%d: Transmit buffer error -- Resetting" -.It "lnc%d: Transmit underflow error -- Resetting" -.El -.Sh SEE ALSO -.Xr arp 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 2.2 . -.Sh AUTHORS -.An -nosplit -The -.Nm -device driver was written by -.An Paul Richards . -Support for the AMD PCHome phone-line based network added by -.An Robert Watson . -This manual page was written by -.An David E. O'Brien . -.Sh BUGS -This driver has the potential of being the most verbose of any of the -Ethernet device drivers. diff --git a/share/man/man4/man4.i386/mcd.4 b/share/man/man4/man4.i386/mcd.4 deleted file mode 100644 index 0a4e79117c3..00000000000 --- a/share/man/man4/man4.i386/mcd.4 +++ /dev/null @@ -1,169 +0,0 @@ -.\" -.\" Copyright (c) 1994 Keith E. Walker -.\" 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/man4.i386/mcd.4,v 1.24 2005/06/16 22:05:32 brueffer Exp $ -.\" -.Dd December 8, 1994 -.Dt MCD 4 i386 -.Os -.Sh NAME -.Nm mcd -.Nd Mitsumi CD-ROM driver -.Sh SYNOPSIS -.Cd "device mcd" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.mcd.0.at="isa" -.Cd hint.mcd.0.port="0x300" -.Cd hint.mcd.0.irq="10" -.Sh DESCRIPTION -The -.Nm -driver provides a data and audio interface to the Mitsumi-brand CD-ROM -player. -The CD-ROM player must be interfaced to the ISA bus through -one of the Mitsumi proprietary controller boards. -The controller -boards supported are the LU002S, LU005S, the FX001 and the quite -common FX001D. -.Pp -The -.Nm -driver responds to disk-specific -.Fn ioctl -commands, namely the -.Dv DIOCGDINFO , -.Dv DIOCGPART , -.Dv DIOCWDINFO , -and -.Dv DIOCSDINFO , -commands. -Other disk-specific -.Fn ioctl -commands will return an error. -.Pp -The -.Nm -driver also responds to special CD-ROM -.Fn ioctl -commands. -These commands -control the CD-ROM player's audio features. -The commands are: -.Pp -.Bl -tag -width CDIOCREADSUBCHANNEL -compact -offset indent -.It CDIOCREADSUBCHANNEL -get sub-channel information on current status of disc playing -.It CDIOCREADTOCHEADER -get table of contents header -.It CDIOCREADTOCENTRYS -gets all of the table of contents -.It CDIOCPLAYTRACKS -begins audio playing at location specified -.It CDIOCPLAYBLOCKS -fails with error -.Er EINVAL -.It CDIOCPLAYMSF -begins audio playing at location specified -.It CDIOCRESUME -resumes playing a previously paused disc -.It CDIOCPAUSE -pauses a playing disc -.It CDIOCSTART -begins playing a disc -.It CDIOCSTOP -stops a previously playing disc -.It CDIOCEJECT -opens the disc tray (there is no support for a corresponding un-eject -command). -.It CDIOCRESET -stops any play and resets the Mitsumi controller board -.It CDIOCSETDEBUG -cause the kernel to print debug messages to the console about the -.Nm -driver -.It CDIOCCLRDEBUG -cause the kernel to quit printing debug messages about the -.Nm -driver -.El -.Pp -The -.Fn ioctl -commands defined above are the only ones that the -.Nm -driver supports. -There are other CD-ROM related -.Fn ioctl -commands (such as -.Dv CDIOCSETVOL -and -.Dv CDIOCSETSTERIO ) -which are available -and may be supported by future versions of the driver. -.Sh FILES -.Bl -tag -width /dev/(r)mcd0a -compact -.It Pa /dev/(r)mcd0a -accesses -.Bx -partition on the disc. -Normally, there is only -one file system on a CD-ROM disc. -.It Pa /dev/(r)mcd0c -accesses raw device. -.El -.Sh NOTES -The character-mode devices for the -.Nm -driver should only be used for accessing the audio features of the -CD-ROM player as the performance on data is abysmal. -.Pp -The current version of the driver uses neither the DMA or IRQ -features of the interface board, although it has an interrupt handler -for any IRQ requests that are generated. -Until the DMA features are -supported, the only interrupts that the board generates are those that -are not supported by the driver anyway. -.Sh SEE ALSO -.In sys/cdio.h -.Sh HISTORY -An -.Nm -driver appeared in -.Fx 1.0 . -.Sh AUTHORS -.An -nosplit -The driver was written by -.An Holger Veit -(data part) and -.An Brian Moore -(audio part). -Changes were provided by -.An Gary Clark II , -.An Andrew A. Chernov , -and -.An Jordan K. Hubbard . diff --git a/share/man/man4/man4.i386/mse.4 b/share/man/man4/man4.i386/mse.4 deleted file mode 100644 index 8690f3ee31b..00000000000 --- a/share/man/man4/man4.i386/mse.4 +++ /dev/null @@ -1,379 +0,0 @@ -.\" Copyright 1992 by the University of Guelph -.\" -.\" Permission to use, copy and modify this -.\" software and its documentation for any purpose and without -.\" fee is hereby granted, provided that the above copyright -.\" notice appear in all copies and that both that copyright -.\" notice and this permission notice appear in supporting -.\" documentation. -.\" University of Guelph makes no representations about the suitability of -.\" this software for any purpose. It is provided "as is" -.\" without express or implied warranty. -.\" -.\" $FreeBSD$ -.\" -.Dd December 3, 1997 -.Dt MSE 4 i386 -.Os -.Sh NAME -.Nm mse -.Nd bus and InPort mice driver -.Sh SYNOPSIS -.\" .Cd "options MSE_XXX=N" -.Cd "device mse" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.mse.0.at="isa" -.Cd hint.mse.0.port="0x23c" -.Cd hint.mse.0.irq="5" -.Sh DESCRIPTION -The -.Nm -driver provides support for the bus mouse and the InPort mouse, which -are often collectively called ``bus'' mice, as these mice are sold with -an interface card which needs to be installed in an expansion bus slot. -The interface circuit may come on an integrated I/O card or as an option -on video cards. -.Pp -The bus and InPort mice have two or three buttons, -and a D-sub 9-pin male connector or a round DIN 9-pin -male connector. -.Pp -The primary port address of the bus and InPort mouse interface cards -is usually 0x23c. -Some cards may also be set to use the secondary port -address at 0x238. -The interface cards require a single IRQ, which may be -2, 3, 4 or 5. -Some cards may offer additional IRQs. -The port number and the IRQ number are configured by jumpers on the cards -or by software provided with the card. -.Pp -Frequency, or report rate, at which the device sends movement -and button state reports to the host system, may also be configurable on -some interface cards. -It may be 15, 30, 60 or 120Hz. -.Pp -The difference between the two types of the mice is not in mouse devices -(in fact they are exactly the same). -But in the circuit on the interface -cards. -This means that the device from a bus mouse package can be -connected to the interface card from an InPort mouse package, or vice -versa, provided that their connectors match. -.Ss Operation Levels -The -.Nm -driver has two levels of operation. -The current operation level can be set via an ioctl call. -.Pp -At the level zero the basic support is provided; the device driver will report -horizontal and vertical movement of the attached device -and state of up to three buttons in the format described below. -It is a subset of the MouseSystems protocol. -.Pp -.Bl -tag -width Byte_1 -compact -.It Byte 1 -.Bl -tag -width bit_7 -compact -.It bit 7 -Always one. -.It bit 6..3 -Always zero. -.It bit 2 -Left button status; cleared if pressed, otherwise set. -.It bit 1 -Middle button status; cleared if pressed, otherwise set. -Always one, -if the device does not have the middle button. -.It bit 0 -Right button status; cleared if pressed, otherwise set. -.El -.It Byte 2 -Horizontal movement count in two's compliment; -128 through 127. -.It Byte 3 -Vertical movement count in two's compliment; -128 through 127. -.It Byte 4 -Always zero. -.It Byte 5 -Always zero. -.El -.Pp -This is the default level of operation and the driver is initially -at this level when opened by the user program. -.Pp -At the operation level one (extended level), a data packet is encoded -in the standard format -.Dv MOUSE_PROTO_SYSMOUSE -as defined in -.Xr mouse 4 . -.Ss Acceleration -The -.Nm -driver can somewhat `accelerate' the movement of the pointing device. -The faster you move the device, the further the pointer -travels on the screen. -The driver has an internal variable which governs the effect of -the acceleration. -Its value can be modified via the driver flag -or via an ioctl call. -.Ss Device Number -The minor device number of the -.Nm -is made up of: -.Bd -literal -offset indent -minor = (`unit' << 1) | `non-blocking' -.Ed -.Pp -where `unit' is the device number (usually 0) and the `non-blocking' bit -is set to indicate ``do not block waiting for mouse input, -return immediately''. -The `non-blocking' bit should be set for \fIXFree86\fP, -therefore the minor device number usually used for \fIXFree86\fP is 1. -See -.Sx FILES -for device node names. -.Sh DRIVER CONFIGURATION -.\" .Ss Kernel Configuration Options -.Ss Driver Flags -The -.Nm -driver accepts the following driver flag. -Set it in the -kernel configuration file -(see -.Xr config 8 ) -or in the User Configuration Menu at -the boot time -(see -.Xr boot 8 ) . -.Bl -tag -width MOUSE -.It bit 4..7 ACCELERATION -This flag controls the amount of acceleration effect. -The smaller the value of this flag is, more sensitive the movement becomes. -The minimum value allowed, thus the value for the most sensitive setting, -is one. -Setting this flag to zero will completely disables the -acceleration effect. -.El -.Sh IOCTLS -There are a few -.Xr ioctl 2 -commands for mouse drivers. -These commands and related structures and constants are defined in -.In sys/mouse.h . -General description of the commands is given in -.Xr mouse 4 . -This section explains the features specific to the -.Nm -driver. -.Pp -.Bl -tag -width MOUSE -compact -.It Dv MOUSE_GETLEVEL Ar int *level -.It Dv MOUSE_SETLEVEL Ar int *level -These commands manipulate the operation level of the -.Nm -driver. -.Pp -.It Dv MOUSE_GETHWINFO Ar mousehw_t *hw -Returns the hardware information of the attached device in the following -structure. -Only the -.Dv iftype -field is guaranteed to be filled with the correct value by the current -version of the -.Nm -driver. -.Bd -literal -typedef struct mousehw { - int buttons; /* number of buttons */ - int iftype; /* I/F type */ - int type; /* mouse/track ball/pad... */ - int model; /* I/F dependent model ID */ - int hwid; /* I/F dependent hardware ID */ -} mousehw_t; -.Ed -.Pp -The -.Dv buttons -field holds the number of buttons on the device. -.Pp -The -.Dv iftype -is either -.Dv MOUSE_IF_BUS -or -.Dv MOUSE_IF_INPORT . -.Pp -The -.Dv type -may be -.Dv MOUSE_MOUSE , -.Dv MOUSE_TRACKBALL , -.Dv MOUSE_STICK , -.Dv MOUSE_PAD , -or -.Dv MOUSE_UNKNOWN . -.Pp -The -.Dv model -is always -.Dv MOUSE_MODEL_GENERIC -at the operation level 0. -It may be -.Dv MOUSE_MODEL_GENERIC -or one of -.Dv MOUSE_MODEL_XXX -constants at higher operation levels. -.Pp -The -.Dv hwid -is always 0. -.Pp -.It Dv MOUSE_GETMODE Ar mousemode_t *mode -The command gets the current operation parameters of the mouse -driver. -.Bd -literal -typedef struct mousemode { - int protocol; /* MOUSE_PROTO_XXX */ - int rate; /* report rate (per sec), -1 if unknown */ - int resolution; /* MOUSE_RES_XXX, -1 if unknown */ - int accelfactor; /* acceleration factor */ - int level; /* driver operation level */ - int packetsize; /* the length of the data packet */ - unsigned char syncmask[2]; /* sync. bits */ -} mousemode_t; -.Ed -.Pp -The -.Dv protocol -is either -.Dv MOUSE_PROTO_BUS -or -.Dv MOUSE_PROTO_INPORT -at the operation level zero. -.Dv MOUSE_PROTO_SYSMOUSE -at the operation level one. -.Pp -The -.Dv rate -is the status report rate (reports/sec) at which the device will send -movement report to the host computer. -As there is no standard to detect the current setting, -this field is always set to -1. -.Pp -The -.Dv resolution -is always set to -1. -.Pp -The -.Dv accelfactor -field holds a value to control acceleration feature -(see -.Sx Acceleration ) . -It is zero or greater. -If it is zero, acceleration is disabled. -.Pp -The -.Dv packetsize -field specifies the length of the data packet. -It depends on the -operation level. -.Pp -.Bl -tag -width level_0__ -compact -.It Em level 0 -5 bytes -.It Em level 1 -8 bytes -.El -.Pp -The array -.Dv syncmask -holds a bit mask and pattern to detect the first byte of the -data packet. -.Dv syncmask[0] -is the bit mask to be ANDed with a byte. -If the result is equal to -.Dv syncmask[1] , -the byte is likely to be the first byte of the data packet. -Note that this detection method is not 100% reliable, -thus, should be taken only as an advisory measure. -.Pp -Only -.Dv level -and -.Dv accelfactor -are modifiable by the -.Dv MOUSE_SETMODE -command. -Changing the other field does not cause error, but has no effect. -.Pp -.It Dv MOUSE_SETMODE Ar mousemode_t *mode -The command changes the current operation parameters of the mouse driver -as specified in -.Ar mode . -Only -.Dv level -and -.Dv accelfactor -may be modifiable. -Setting values in the other field does not generate -error and has no effect. -.Pp -.It Dv MOUSE_READDATA Ar mousedata_t *data -.It Dv MOUSE_READSTATE Ar mousedata_t *state -These commands are not supported by the -.Nm -driver. -.Pp -.It Dv MOUSE_GETSTATUS Ar mousestatus_t *status -The command returns the current state of buttons and -movement counts as described in -.Xr mouse 4 . -.El -.Sh FILES -.Bl -tag -width /dev/nmse0 -compact -.It Pa /dev/mse0 -`non-blocking' device node in the system without -.Em devfs , -`blocking' under -.Em devfs . -.It Pa /dev/nmse0 -`non-blocking' device node under -.Em devfs . -.El -.Sh EXAMPLES -.Dl "device mse" -.Pp -In -.Pa /boot/device.hints : -.Dl hint.mse.0.at="isa" -.Dl hint.mse.0.port="0x23c" -.Dl hint.mse.0.irq="5" -.Pp -Add the -.Nm -driver at the primary port address with the IRQ 5. -.Pp -.Dl "device mse" -.Pp -.Dl hint.mse.1.at="isa" -.Dl hint.mse.1.port="0x238" -.Dl hint.mse.1.irq="4" -.Dl hint.mse.1.flags="0x30" -.Pp -Define the -.Nm -driver at the secondary port address with the IRQ 4 and the acceleration -factor of 3. -.Sh SEE ALSO -.Xr ioctl 2 , -.Xr mouse 4 , -.Xr psm 4 , -.Xr sysmouse 4 , -.Xr moused 8 -.\".Sh HISTORY -.Sh CAVEATS -Some bus mouse interface cards generate interrupts at the fixed report rate -when enabled, whether or not the mouse state is changing. -The others generate interrupts only when the state is changing. diff --git a/share/man/man4/man4.i386/ndis.4 b/share/man/man4/man4.i386/ndis.4 deleted file mode 100644 index d3c8066016a..00000000000 --- a/share/man/man4/man4.i386/ndis.4 +++ /dev/null @@ -1,151 +0,0 @@ -.\" Copyright (c) 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: src/share/man/man4/man4.i386/ndis.4,v 1.13 2007/02/16 13:53:45 brueffer Exp $ -.\" -.Dd October 13, 2006 -.Dt NDIS 4 i386 -.Os -.Sh NAME -.Nm ndis -.Nd NDIS miniport driver wrapper -.Sh SYNOPSIS -.Cd "options NDISAPI" -.Cd "device ndis" -.Cd "device wlan" -.Sh DESCRIPTION -The -.Nm -driver is a wrapper designed to allow binary -.Tn Windows\[rg] -NDIS miniport -network drivers to be used with -.Fx . -The -.Nm -driver is provided in source code form and must be combined with -the -.Tn Windows\[rg] -driver supplied with your network adapter. -The -.Nm -driver uses the -.Nm ndisapi -kernel subsystem to relocate and link the -.Tn Windows\[rg] -binary so -that it can be used in conjunction with native code. -The -.Nm ndisapi -subsystem provides an interface between the NDIS API and the -.Fx -networking infrastructure. -The -.Tn Windows\[rg] -driver is essentially -fooled into thinking it is running on -.Tn Windows\[rg] . -Note that this -means the -.Nm -driver is only useful on x86 machines. -.Pp -To build a functional driver, the user must have a copy of the -driver distribution media for his or her card. -From this distribution, -the user must extract two files: the -.Pa .SYS -file containing the driver -binary code, and its companion -.Pa .INF -file, which contains the -definitions for driver-specific registry keys and other installation -data such as device identifiers. -These two files can be converted -into a kernel module file using the -.Xr ndisgen 8 -utility. -This file contains a binary image of the driver plus -registry key data. -When the -.Nm -driver loads, it will create -.Xr sysctl 3 -nodes for each registry key extracted from the -.Pa .INF -file. -.Pp -The -.Nm -driver is designed to support mainly Ethernet and wireless -network devices with PCI and PCMCIA bus attachments. -(Cardbus -devices are also supported as a subset of PCI.) -It can -support many different media types and speeds. -One limitation -however, is that there is no consistent way to learn if an -Ethernet device is operating in full or half duplex mode. -The NDIS API allows for a generic means for determining link -state and speed, but not the duplex setting. -There may be -driver-specific registry keys to control the media setting -which can be configured via the -.Xr sysctl 8 -command. -.Sh DIAGNOSTICS -.Bl -diag -.It "ndis%d: watchdog timeout" -A packet was queued for transmission and a transmit command was -issued, however the device failed to acknowledge the transmission -before a timeout expired. -.El -.Sh SEE ALSO -.Xr altq 4 , -.Xr arp 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 , -.Xr ndiscvt 8 , -.Xr ndisgen 8 -.Rs -.%T "NDIS 5.1 specification" -.%O http://www.microsoft.com -.Re -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 5.3 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Bill Paul Aq wpaul@windriver.com . diff --git a/share/man/man4/man4.i386/oltr.4 b/share/man/man4/man4.i386/oltr.4 deleted file mode 100644 index e95c1dcf874..00000000000 --- a/share/man/man4/man4.i386/oltr.4 +++ /dev/null @@ -1,88 +0,0 @@ -.\" Copyright (c) 2005 Christian Brueffer -.\" 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/man4.i386/oltr.4,v 1.2 2005/02/12 00:42:14 brueffer Exp $ -.\" -.Dd February 4, 2005 -.Dt OLTR 4 i386 -.Os -.Sh NAME -.Nm oltr -.Nd "Olicom Token Ring device driver" -.Sh SYNOPSIS -.Cd "device oltr" -.Cd "device token" -.Sh DESCRIPTION -The -.Nm -driver provides support for Olicom Token Ring adapters. -Only ISA and PCI based devices are supported. -.Sh HARDWARE -The -.Nm -driver supports the following ISA based Olicom Token Ring adapters: -.Pp -.Bl -bullet -compact -.It -Olicom OC-3115 -.It -Olicom ISA 16/4 Adapter (OC-3117) -.It -Olicom ISA 16/4 Adapter (OC-3118) -.El -.Pp -The following PCI based adapters are supported: -.Pp -.Bl -bullet -compact -.It -Olicom PCI 16/4 Adapter (OC-3136) -.It -Olicom PCI/II 16/4 Adapter (OC-3137) -.It -Olicom PCI 16/4 Adapter (OC-3139) -.It -Olicom RapidFire 3140 16/4 PCI Adapter (OC-3140) -.It -Olicom RapidFire 3141 Fiber Adapter (OC-3141) -.It -Olicom RapidFire 3540 100/16/4 Adapter (OC-3540) -.El -.Sh SEE ALSO -.Xr netintro 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 3.3 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Larry Lile . -This manual page was written by -.An -nosplit -.An Christian Brueffer Aq brueffer@FreeBSD.org -based on input provided by -.An Matthew N. Dodd Aq mdodd@FreeBSD.org . diff --git a/share/man/man4/man4.i386/padlock.4 b/share/man/man4/man4.i386/padlock.4 deleted file mode 100644 index 06b6382b054..00000000000 --- a/share/man/man4/man4.i386/padlock.4 +++ /dev/null @@ -1,97 +0,0 @@ -.\" Copyright (c) 2005 Christian Brueffer -.\" 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/man4.i386/padlock.4,v 1.8 2007/08/02 08:04:48 bz Exp $ -.\" -.Dd August 1, 2007 -.Dt PADLOCK 4 i386 -.Os -.Sh NAME -.Nm padlock -.Nd "driver for the cryptographic functions and RNG in VIA C3, C7 and Eden processors" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device crypto" -.Cd "device padlock" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -padlock_load="YES" -.Ed -.Sh DESCRIPTION -The C3 and Eden processor series from VIA include hardware acceleration for -AES. -The C7 series includes hardware acceleration for AES, SHA1, SHA256 and RSA. -All of the above processor series include a hardware random number generator. -.Pp -The -.Nm -driver registers itself to accelerate AES operations and, if available, HMAC/SHA1 -and HMAC/SHA256 for -.Xr crypto 4 . -It also registers itself to accelerate other HMAC algorithms, although -there is no hardware acceleration for those algorithms. -This is only needed so -.Nm -can work with -.Xr ipsec 4 . -.Pp -The hardware random number generator supplies data for the kernel -.Xr random 4 -subsystem. -.Sh SEE ALSO -.Xr crypt 3 , -.Xr crypto 4 , -.Xr intro 4 , -.Xr ipsec 4 , -.Xr random 4 , -.Xr crypto 9 -.Sh HISTORY -The -.Nm -driver first appeared in -.Ox . -The first -.Fx -release to include it was -.Fx 6.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver with AES encryption support was written by -.An Jason Wright Aq jason@OpenBSD.org . -It was ported to -.Fx -and then extended to support SHA1 and SHA256 -by -.An Pawel Jakub Dawidek Aq pjd@FreeBSD.org . -This manual page was written by -.An Christian Brueffer Aq brueffer@FreeBSD.org . diff --git a/share/man/man4/man4.i386/pcf.4 b/share/man/man4/man4.i386/pcf.4 deleted file mode 100644 index 76d79580bc8..00000000000 --- a/share/man/man4/man4.i386/pcf.4 +++ /dev/null @@ -1,72 +0,0 @@ -.\" Copyright (c) 1998, Nicolas Souchu -.\" 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/man4.i386/pcf.4,v 1.14 2001/10/13 09:08:37 yokota Exp $ -.\" -.Dd August 6, 1998 -.Dt PCF 4 i386 -.Os -.Sh NAME -.Nm pcf -.Nd Philips I2C bus controller -.Sh SYNOPSIS -.Cd "device pcf" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.pcf.0.at="isa" -.Cd hint.pcf.0.port="0x320" -.Cd hint.pcf.0.irq="5" -.Pp -For one or more iicbus busses: -.Cd "device iicbus" -.Sh DESCRIPTION -The -.Em pcf -driver provides support to the Philips PCF8584 I2C controller for the -.Xr iicbus 4 -system. -.Pp -The PCF8584 is an integrated circuit designed in CMOS technology which serves -as an interface between most standard parallel-bus -microcontrollers/microprocessors and the serial I2C-bus. -The PCF8584 -provides both master and slave functions. -Communication with I2C-bus is -carried out on a byte-wise basis using interrupt or polled handshake. -It -controls all the I2C-bus specific sequences, protocol, arbitration and timing. -The PCF8584 allows parallel-bus systems to communicate bidirectionally with -the I2C-bus. -.Sh SEE ALSO -.Xr iicbus 4 -.Sh HISTORY -The -.Nm -manual page first appeared in -.Fx 3.0 . -.Sh AUTHORS -This -manual page was written by -.An Nicolas Souchu . diff --git a/share/man/man4/man4.i386/ray.4 b/share/man/man4/man4.i386/ray.4 deleted file mode 100644 index d7c21634de4..00000000000 --- a/share/man/man4/man4.i386/ray.4 +++ /dev/null @@ -1,419 +0,0 @@ -.\" -.\" Copyright (C) 2000 -.\" Dr. Duncan McLennan Barclay, dmlb@ragnet.demon.co.uk. -.\" -.\" 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 DUNCAN BARCLAY 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 DUNCAN BARCLAY 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/man4.i386/ray.4,v 1.17 2005/11/18 10:52:23 ru Exp $ -.\" -.Dd July 16, 2005 -.Dt RAY 4 i386 -.Os -.Sh NAME -.Nm ray -.Nd "Raytheon Raylink/Webgear Aviator PCCard driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device ray" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_ray_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for -.Tn "Raytheon Raylink" -adapters (commonly available as -.Tn "Webgear Aviator" , -.Tn "Webgear Aviator Pro" -and -.Tn "Raylink PC Card" -devices.) -The core of the -.Tn Raylink -cards is a frequency hopping PHY with an -.Tn IEEE -802.11 -style MAC that interacts with the host using shared memory and mailboxes. -.Pp -The -.Nm -driver currently supports ad-hoc operation mode and the -.Tn Aviator -cards. -Infrastructure mode, interworking with -.Tn "Windows 2000" Ns / Ns Tn Linux Ns / Ns Nx , -.Tn "Raylink PC Cards" -and -.Tn "Aviator Pros" -is rudimentary and in active development. -The -.Nm -driver currently encapsulates all IP and ARP traffic as -.Tn Ethernet -2 frames within an -.Tn IEEE -802.11 -frame. -Other translations will be forthcoming as needed. -Transmit speed is -selectable between 0.5Mbps, 1Mbp , 1.5Mbps or 2Mbps all with auto fallback. -.Pp -By default, the -.Nm -driver configures the card for ad-hoc operation. -In this mode, -stations can communicate amongst each other without the aid of an access -point. -To join a managed service set, the driver must be set for infrastructure mode -using the -.Xr raycontrol 8 -utility. -.Pp -There are two known firmware versions; version 4 and version 5. -Version 4 firmware was shipped on the orignal -.Tn "Webgear Aviators" -Version 5 firmware is -used as part of the -.Tn "Windows 2000" -upgrade from -.Tn Webgear -and on the -.Tn "Aviator Pro" , -and -.Tn "Raylink PC Cards" -cards. -Version 4 is not likely to be 100% -.Tn IEEE -802.11 -compliant - version 5 should be. -.Pp -For more information on configuring this device, see -.Xr ifconfig 8 -and -.Xr raycontrol 8 . -.Sh DIAGNOSTICS -The following messages occur when there are problems -setting up the memory mapped buffers due to nits in -.Xr pccardd 8 . -.Bl -diag -.It "ray?: pccardd did not map CM - giving up" -See the -.Sx BUGS -section and contact the author for help enclosing a copy -of the output from -.Xr dmesg 8 . -This message only occurs on 3.x systems. -.It "ray?: fixing up CM ..." -.It "ray?: fixing up AM ..." -The driver is fixing up PCCard memory management after mis-configuration -by -.Xr pccardd 8 , -benign. -.El -.Pp -.Bl -diag -On 4.x and -current systems the following messages can occur when the -memory mapped buffers are set up. -.It "ray?: allocated common memory:" -.It ". start 0xd0000 count 0xc0000 flags 0x40" -Benign. -.It "ray?: allocated attribute memory:" -.It ". start 0xdc000 count 0x1000 flags 0x50" -Benign. -.It "ray?: allocated irq:" -.It ". start 0x9 count 0x1" -Benign. -.It "ray?: Cannot allocate attribute memory" -.It "ray?: Cannot allocate common memory" -.It "ray?: Cannot allocate irq" -.It "ray?: Failed to setup irq" -.It "ray?: CARD_SET_MEMORY_OFFSET returned 0x??" -.It "ray?: CARD_SET_RES_FLAGS returned 0x??" -See the -.Sx BUGS -section and contact the author for help enclosing a copy -of the output from -.Xr dmesg 8 -in your email. -.El -.Pp -.Bl -diag -If the kernel is booted with the verbose flag turned on then the -extra information is printed when the driver is probed. -These messages are also seen when the -.Dv RAY_DBG_BOOTPARAM -bit in the -.Dv RAY_DEBUG -option is turned on, as is the case for all existing -versions of the driver. -.It "ray?: memory start 0x???? count 0x???? flags 0x???? offset 0x????" -Description of memory map settings on entry to the driver. -.It "ray?: irq start 0x???? count 0x????" -Description of irq settings on entry to the driver (only on 4.1 and -above). -.El -.Pp -On start-up the driver will report hardware failures thus: -.Bl -diag -.It "ray?: card failed self test: status 0x??" -The card failed to come ready after it was plugged in to the PCCard -slot. -The most common cause of this message is incorrect PCCard memory -management (indicated by a status of 0xff or 0x55). -Bent cards might say that the receiver calibration failed. -If you are brave enough removing the -base of the case can resurrect cards (no warranties etc.). -.It "ray?: unsupported firmware version 0x??" -Self explanatory. -Contact the author for help enclosing a copy -of the output from -.Xr dmesg 8 . -.El -.Pp -The following messages are enabled using the -.Cm debug -option of -.Xr ifconfig 8 . -.Bl -diag -.It "ray?: cannot transmit - not running" -A packet was ready for transmission but the NIC is not connected to a -BSS. -May occur when removing the PCCard. -.It "ray?: cannot transmit - no network" -The wireless NIC has roamed from an access point and not connected with a new -one yet. -.It "ray?: cannot transmit - ECF busy" -The controller firmware was busy when a packet was about to be sent out. -It will be retried automatically. -.It "ray?: mbuf too long ??" -Should never happen, and if it does represents something wrong in the -generic Ethernet driver in the kernel. -.It "ray?: could not pullup ether" -Problem with re-aligning mbufs. -Very unlikely to happen. -.It "ray?: unknown framing type ??" -An impossible error - mail the author. -.It "ray?: could not translate packet" -An error occurred when trying to re-frame a packet for transmission. -.It "ray?: ECF busy, dropping packet" -The NIC was busy just before a packet was to be transmitted. -.It "ray?: tx completed but status is fail" -Typically associated with transmissions to out of range NICs. -.It "ray?: packet too big or too small" -A received packet was impossibly small or too large to fit into an mbuf. -.It "ray?: MGETHDR failed" -The driver could not get a mbuf to store a received packet into. -Try increasing -.Dv MAXUSERS -in your kernel configuration. -.It "ray?: MCLGET failed" -The driver could not get a mbuf to store a received packet into. -Try increasing -.Dv MAXUSERS -in your kernel configuration. -.It "ray?: bad length current 0x?? pktlen 0x??" -The lengths of a fragmented packet were inconsistent. -.It "ray?: bad rcs index 0x??" -The index of the buffer used for part of a fragmented packet is -outside of the usable range. -.It "ray?: header not version 0 fc0 0x??" -The received -.Tn IEEE -802.11 -packet had an unknown header type. -Represents link corruption or non standard nodes in the network. -.It "ray?: unknown packet fc0 0x??" -The received -.Tn IEEE -802.11 -packet type is unknown. -Represents link corruption or non standard nodes in the network. -.It "ray?: reserved DATA packet subtype 0x??" -The received -.Tn IEEE -802.11 -data packet has a reserved (i.e., not allowed) subtype. -Represents link corruption or non standard nodes in the network. -.It "ray?: MGT TODS/FROMDS wrong fc1 0x??" -The received -.Tn IEEE -802.11 -management packet had a malformed header. -Represents link corruption or non standard nodes in the network. -.It "ray?: unexpected MGT packet subtype 0x??" -The received -.Tn IEEE -802.11 -management packet was of a subtype that the NIC -should have processed. -Benign, but might represent buggy firmware. -.It "ray?: reserved MGT packet subtype 0x??" -The received -.Tn IEEE -802.11 -management packet has a reserved (i.e., not allowed) -subtype. -Represents link corruption or non standard nodes in the network. -.It "ray?: open system authentication request" -Self explanatory and for testing -.Tn "Aviator Pro" -interworking. -.It "ray?: authentication failed with status ??" -Self explanatory and currently represents a bug as the driver never -requests authentication. -.It "ray?: shared key authentication request" -Self explanatory and for testing -.Tn "Aviator Pro" -interworking. -.It "ray?: reserved authentication subtype 0x??" -An authentication request has been received for a reserved (i.e., not allowed) -subtype. -Represents link corruption or non standard nodes in the network. -.It "ray?: CTL TODS/FROMDS wrong fc1 0x??" -The received -.Tn IEEE -802.11 -management packet had a malformed header. -Represents link corruption or non standard nodes in the network. -.It "ray?: unexpected CTL packet subtype 0x??" -The received -.Tn IEEE -802.11 -control packet was of a subtype that the NIC -should have processed. -Benign, but might represent buggy firmware. -.It "ray?: reserved CTL packet subtype 0x??" -The received -.Tn IEEE -802.11 -control packet has a reserved (i.e., not allowed) -subtype. -Represents link corruption or non standard nodes in the network. -.It "ray?: bad ccs index 0x??" -The NIC has generated an interrupt with an incorrect control block. -.It "ray?: unexpected UPDATE_APM" -.It "ray?: unexpected TEST_MEM" -.It "ray?: unexpected SHUTDOWN" -.It "ray?: unexpected DUMP_MEM" -.It "ray?: unexpected START_TIMER" -The NIC has generated an interrupt signalling that -the indicated command has completed. -At present these commands are never -issued by the driver, so they represent firmware/hardware/driver bugs. -.It "ray?: unknown command 0x??" -The NIC has generated an interrupt for an unknown command completion. -Represents firmware/hardware/driver bugs. -.It "ray?: unexpected JAPAN_CALL_SIGNAL" -The NIC has generated an interrupt with a control block requesting -processing of a packet that is only ever used in Japanese RCR -certification tests. -Represents firmware/hardware/driver bugs unless you -are trying to certify the NICs in Japan (in which case you would have to -of modified the driver and this manual is out of date). -.It "ray?: spinning" -The controller firmware was busy when a command was about to be issued. -If the driver spins for too long then it will panic. -See the -.Sx BUGS -section for details. -.It "ray?: freeing free ccs 0x??" -Benign warning that may occur when the NIC is ejected. -.El -.Sh SEE ALSO -.Xr arp 4 , -.Xr netintro 4 , -.Xr ifconfig 8 , -.Xr pccardd 8 , -.Xr raycontrol 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 3.3 . -.Sh AUTHORS -.An -nosplit -Early versions of this -.Nm -driver were a port of the -.Nx -driver by -.An "Christian E. Hopps" . -The driver -was re-structured by -.An Duncan Barclay Aq dmlb@FreeBSD.org , -so that -.Xr dhclient 8 -would work. -.Sh BUGS -Infra-structure mode is not supported yet. -The driver is likely to panic if it is set into this mode. -Testers are encouraged to contact the -author. -.Pp -Currently -.Fx -has a small problem managing and setting up the correct memory maps. -However, this driver should reset the -memory maps correctly - it works around -.Xr pccardd 8 -(where it reads the CIS for common memory, sets it all up -and then throws it all away assuming the card is an -.Xr ed 4 -driver...). -Note that this could be dangerous (because it does not interact with -.Xr pccardd 8 ) -if you use other memory mapped cards at the same time or have -SCSI cards with on-board BIOS. -.Pp -More encapsulations and translations could be supported, but they have -little value unless someone can demonstrate that the -.Nm -cards will communicate with other manufacturers cards. -Version 4 and -firmware is not -.Tn IEEE -802.11 -compliant, but version 5 is. -.Pp -To communicate with -.Tn Windows -machines ensure that the -.Tn Windows -machine -creates the BSS/IBSS. -.Pp -The driver currently panics on some errors that it should recover from. -These will be removed RSN. diff --git a/share/man/man4/man4.i386/scd.4 b/share/man/man4/man4.i386/scd.4 deleted file mode 100644 index 605a1f82386..00000000000 --- a/share/man/man4/man4.i386/scd.4 +++ /dev/null @@ -1,74 +0,0 @@ -.\" -.\" Copyright (c) 1995 Jordan K. Hubbard -.\" 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/man4.i386/scd.4,v 1.22 2005/03/16 02:03:15 brueffer Exp $ -.\" -.Dd March 16, 2005 -.Dt SCD 4 i386 -.Os -.Sh NAME -.Nm scd -.Nd Sony CDU31/33 CD-ROM driver -.Sh SYNOPSIS -.Cd "device scd 1" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.scd.0.at="isa" -.Cd hint.scd.0.port="0x230" -.Sh DESCRIPTION -The -.Nm -driver provides a data interface to the Sony CDU31 and CDU33A CD-ROM -drives. -The drive must be hooked to a Sony proprietary interface -card or a compatible clone. -.Sh FILES -.Bl -tag -width /dev/[r]scd0a -compact -.It Pa /dev/[r]scd0a -accesses -.Bx -partition on the disc. -Normally, there is only -one file system on a CDROM disc. -.It Pa /dev/[r]scd0c -accesses the raw device. -.El -.Sh SEE ALSO -.Pa /sys/dev/scd/scd.c -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 2.0.5 . -.Sh AUTHORS -.An -nosplit -The driver was written by -.An Mikael Hybsch -with code contributed by -.An Holger Veit -and -.An Brian Moore . diff --git a/share/man/man4/man4.i386/snc.4 b/share/man/man4/man4.i386/snc.4 deleted file mode 100644 index e211f07130a..00000000000 --- a/share/man/man4/man4.i386/snc.4 +++ /dev/null @@ -1,142 +0,0 @@ -.\" -.\" Copyright (c) 2004 Tom Rhodes -.\" 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: stable/11/share/man/man4/man4.i386/snc.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd September 4, 2004 -.Dt SNC 4 i386 -.Os -.Sh NAME -.Nm snc -.Nd National Semiconductor DP8393X SONIC Ethernet adapter driver -.Sh SYNOPSIS -.Cd device isa -.Cd device snc -.Sh DESCRIPTION -The -.Nm -driver provides support for the -.Tn National -.Tn Semiconductor -.Tn SONIC -Ethernet adapters. -.Sh HARDWARE -The -.Nm -driver supports the following cards: -.Pp -.Bl -bullet -compact -.It -National Semiconductor DP83934AVQB -.It -NEC PC-9801-83 -.It -NEC PC-9801-84 -.It -NEC PC-9801-103 -.It -NEC PC-9801-104 -.It -NEC PC-9801N-15 -.It -NEC PC-9801N-25 -.It -NEC PC-9801N-J02 PCMCIA -.It -NEC PC-9801N-J02R PCMCIA -.El -.Pp -The -.Nm -driver also includes support for the -.Tn National -.Tn Semiconductor -.Tn NS46C46 -as -64 * 16 bits Microwave Serial -.Tn EEPROM . -.Sh IMPLEMENTATION NOTES -Accessing -.Tn SONIC -card data structures and registers as 32 bit values -makes code endianness independent. -The -.Tn SONIC -is however always in big-endian mode so it is necessary to -ensure that data structures shared -between the -.Tn CPU -and the -.Tn SONIC -card are always in big-endian order. -The -.Nm -driver supports the -.Tn PC-98 -C-Bus, -and -.Tn PnP -buses. -Support is also provided for the legacy C-Bus. -.Sh DIAGNOSTICS -The following driver specific error messages -may be reported: -.Bl -diag -.It "snc%d: snc_nec16_register_irq: unsupported irq (%d)" -The card returned an -.Tn IRQ -which is not supported by the driver. -.It "snc%d: invalid packet length %d bytes" -An attempt to transfer a data packet failed due to an -invalid packet length. -.El -.Sh SEE ALSO -.Xr netintro 4 , -.Xr bus_alloc_resource_any 9 -.Sh HISTORY -The -.Nm -driver was ported from -.Nx -by -.An -nosplit -.An Motomichi Matsuzaki Aq Mt mzaki@e-mail.ne.jp -and -.An Hiroshi Yamashita Aq Mt bluemoon@msj.biglobe.ne.jp . -It first appeared in -.Fx 4.2 . -This manual page first appeared in -.Fx 5.3 . -.Sh AUTHORS -This manual page was written by -.An Tom Rhodes Aq Mt trhodes@FreeBSD.org . -.Sh BUGS -Currently the -.Nm -driver only works on the -.Tn PC-98 -architecture. -It should probably work on the i386 architecture -as well. diff --git a/share/man/man4/man4.i386/sr.4 b/share/man/man4/man4.i386/sr.4 deleted file mode 100644 index 1909b709640..00000000000 --- a/share/man/man4/man4.i386/sr.4 +++ /dev/null @@ -1,164 +0,0 @@ -.\" -.\" Copyright (c) 1996 John Hay. 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 John Hay. -.\" 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 John Hay ``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 John Hay 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/man4.i386/sr.4,v 1.28 2005/03/18 02:49:43 brueffer Exp $ -.\" -.Dd March 18, 2005 -.Dt SR 4 i386 -.Os -.Sh NAME -.Nm sr -.Nd synchronous RISCom/N2 / WANic 400/405 device driver -.Sh SYNOPSIS -.Cd "device sr" -.Pp -For ISA cards, in -.Pa /boot/device.hints : -.Cd hint.sr.0.at="isa" -.Cd hint.sr.0.port="0x300" -.Cd hint.sr.0.irq="10" -.Cd hint.sr.0.maddr="0xd0000" -.Cd hint.sr.0.flags="0x0" -.Pp -.Cd "device sppp" -.Sh DESCRIPTION -The -.Nm -driver supports the RISCom/N2 ISA cards, N2pci and the WANic 400/405 PCI -cards that are based on the HD64570 chip. -.Pp -If you have ISA cards, you need to specify the resources for them in -.Pa /boot/device.hints . -If you have the second ISA card, add -.Pp -.Dl hint.sr.1.at="isa" -.Dl hint.sr.1.port="0x310" -.Dl hint.sr.1.irq="11" -.Dl hint.sr.1.maddr="0xd0000" -.Dl hint.sr.1.flags="0x0" -.Pp -The standard -.Fx -sppp code is used for the link level layer. -The -default protocol used is PPP. -The Cisco HDLC protocol can be used by -adding -.Em link2 -to -.Xr ifconfig 8 . -.Pp -Alternately, the driver can be compiled to support -.Xr netgraph 4 -(see below). -.Pp -The -.Em flags -specification in -.Pa /boot/device.hints -is optional. -If it is not specified, the driver will -assume the following: -.Pp -.Bl -hang -offset indent -.It "The card has 2 ports." -.It "The clock for the serial ports is external and the transmitter uses" -the same clock as the receiver. -.El -.Pp -The -.Em flags -are a bit field and can be used to force a different -behaviour than the default. -.Pp -.Bl -hang -offset indent -.It Em 0x01 -The card has only one port. -.It Em 0x10 -Use separate external clocks for transmit and receive on port 0. -.It Em 0x40 -Use separate external clocks for transmit and receive on port 1. -.El -.Pp -The card only supports IRQ 3, 4, 5, 7, 10, 11, 12 and 15. -.Pp -The iomem area is a 16Kb block and must start at a 16Kb boundary. -.Sh HARDWARE -The -.Nm -driver supports the following hardware: -.Pp -.Bl -bullet -compact -.It -SDL Communications RISCom/N2 ISA -.It -SDL Communications N2pci -.It -SDL Communications WANic 400/405 PCI -.El -.Sh NETGRAPH SUPPORT -If the kernel is compiled with -.Dv "options NETGRAPH" -then the sppp and Cisco HDLC modes are disabled (and the sppp driver -is unneeded), and this driver functions as a -.Xr netgraph 4 -node with a single hook named -.Dv rawdata . -Connecting to this hook enables the transmission of raw HDLC frames. -The node will have the same name as the device with ``sync_'' -prepended, e.g., -.Dv sync_sr0 . -.Sh DIAGNOSTICS -.Bl -diag -.It "sr%d: Warning illegal interrupt %d." -The card cannot use the specified interrupt. -Choose a different one. -.El -.Sh SEE ALSO -.Xr ar 4 , -.Xr cx 4 , -.Xr netgraph 4 , -.Xr netintro 4 , -.Xr ifconfig 8 -.Sh AUTHORS -.An -nosplit -The -.Nm -device driver was written by -.An John Hay Aq jhay@FreeBSD.org . -.Pp -Netgraph support was added by -.An Julian Elischer Aq julian@FreeBSD.org . -.Sh BUGS -At the moment only the X.21 interface is tested. -The others -may need tweaks to the clock selection code. -.Pp -The code can probably stand some optimizing. diff --git a/share/man/man4/man4.i386/streams.4 b/share/man/man4/man4.i386/streams.4 deleted file mode 100644 index 7284397d077..00000000000 --- a/share/man/man4/man4.i386/streams.4 +++ /dev/null @@ -1,85 +0,0 @@ -.\" Copyright (c) 2000 Mark Newton -.\" 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: stable/11/share/man/man4/man4.i386/streams.4 177443 2008-03-20 08:46:27Z brueffer $ -.\" -.Dd March 17, 2008 -.Dt STREAMS 4 i386 -.Os -.Sh NAME -.Nm streams -.Nd System V STREAMS networking ABI support -.Sh SYNOPSIS -To compile support for this ABI into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device streams" -.Ed -.Pp -Alternatively, to load the ABI as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -streams_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -module provides limited -System V Release 4 STREAMS interprocess communication ABI -(application binary interface) compatibility -for userland applications. -.Pp -Internally, -.Nm -provides STREAMS handles by using socket creation kernel routines, and -adding state-tracking information to the socket to permit manipulation -by STREAMS emulation code in -.Xr svr4 4 . -Hence, opening a stream device produces a result similar to what would be -obtained by calling -.Xr socket 2 . -.Pp -Applications should never use this interface directly: STREAMS -emulation is only provided as a service to support ABI requirements in -the SVR4 environment which -.Xr svr4 4 -needs to present to client binaries. -.Sh SEE ALSO -.Xr svr4 4 -.Sh HISTORY -System V Release 4 ABI support first appeared in -.Fx 4.0 . -The ABI was ported from an equivalent facility present in -.Nx 1.3 -written by Christos Zoulas. -.Sh BUGS -This whole interface is a crude hack to produce STREAMS semantics -through emulation over sockets. -.Pp -Programmers who hope to be able to use this interface to provide -SVR4 STREAMS services to -.Bx -applications will be sorely disappointed. diff --git a/share/man/man4/man4.i386/svr4.4 b/share/man/man4/man4.i386/svr4.4 deleted file mode 100644 index 40df34da42b..00000000000 --- a/share/man/man4/man4.i386/svr4.4 +++ /dev/null @@ -1,225 +0,0 @@ -.\" Copyright (c) 2000 Mark Newton -.\" 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: stable/11/share/man/man4/man4.i386/svr4.4 177293 2008-03-17 08:17:04Z brueffer $ -.\" -.Dd March 17, 2008 -.Dt SVR4 4 i386 -.Os -.Sh NAME -.Nm svr4 -.Nd System V Release 4 ABI support -.Sh SYNOPSIS -To compile support for this ABI into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "options COMPAT_SVR4" -.Ed -.Pp -Alternatively, to load the ABI as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -svr4_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -module provides limited -System V Release 4 ABI (application binary interface) compatibility -for userland applications. -The module provides the following significant facilities: -.Bl -bullet -.It -An image activator -for correctly branded -.Xr elf 5 -executable images -.It -Special signal handling for activated images -.It -SVR4 to native system call translation -.It -STREAMS network API emulation (via the -.Xr streams 4 -loadable module, or by means of -.Dl device streams -in a kernel configuration file) -.It -Mappings between -.Fx -and SVR4 -.Xr ioctl 2 -calls, or, where no such mappings exist, reverse-engineered implementations -of the SVR4 calls. -.El -.Pp -It is important to note that the SVR4 ABI support -it not provided through an emulator. -Rather, a true (albeit limited) "clean room" reverse-engineered ABI -implementation is provided. -.Sh LIMITATIONS -Because the provided ABI has been developed in ignorance of actual SVR4 -source code, there are bound to be unforeseen interactions between SVR4 -client applications and the emulated ABI which cause applications to -malfunction. -.Pp -Additionally, some SVR4 operating systems do not adhere to the SVR4 -ELF standard. -In particular, Solaris does not set the ELF interpreter field in the -ELF header to a value which would allow the kernel to correctly -identify a client executable as an SVR4 application. -Thus, in certain instances it is necessary to use the -.Xr brandelf 1 -utility to explicitly brand the executable, or to set the -kern.fallback_elf_brand -.Xr sysctl 8 -variable to define a "default" ABI for unbranded executables. -Value ELFOSABI_SOLARIS represents Solaris; ELFOSABI_SYSV represents other -SysVR4 operating systems. -See -.In sys/elf_common.h -for ELFOSABI branding definitions, and -.Xr brandelf 1 -for information on branding executables. -.Pp -The -.Nm -module can be linked into the kernel statically with the -.Dv COMPAT_SVR4 -kernel configuration option -or loaded as required. -The following command will load the module -if it is neither linked into the kernel -nor already loaded as a module: -.Bd -literal -offset indent -if ! kldstat -v | grep -E 'svr4elf' > /dev/null; then - kldload svr4 > /dev/null 2>&1 -fi -.Ed -.Pp -The kernel -will check for the presence of the -.Xr streams 4 -module, and load it if necessary. -.Pp -Note that dynamically linked SVR4 executables -will require a suitable environment in -.Pa /compat/svr4 . -.Pp -For information on loading the -.Nm -kernel loadable module automatically on system startup, -see -.Xr rc.conf 5 . -This information applies -regardless of whether the -.Nm -module is statically linked into the kernel -or loaded as a module. -.Pp -STREAMS emulation is limited but (largely) functional. -Assuming the -.Xr streams 4 -module is loaded, a STREAMS handle can be obtained by opening one of the -relevant files in -.Pa /dev -or -.Pa /compat/svr4/dev . -Internally, the -.Xr streams 4 -driver produces a socket descriptor and -.Dq tags -it with additional STREAMS -state information before returning it to the client application. -The -.Nm -environment uses the additional state information to recognize and -manipulate emulated STREAMS handles when STREAMS-specific -.Xr ioctl 2 -calls are executed. -.Pp -The subset of STREAMS functionality which is provided is small, probably -little more than what is required to enable programs on the Solaris CD -sets to run. -.Sh FILES -.Bl -tag -width /sys/compat/svr4/syscalls.master -compact -.It Pa /compat/svr4 -minimal SVR4 run-time environment -.It Pa /sys/compat/svr4/syscalls.master -mappings between SVR4 syscalls and -.Nm -module entrypoints. -.El -.Sh SEE ALSO -.Xr brandelf 1 , -.Xr streams 4 , -.Xr elf 5 -.Sh HISTORY -System V Release 4 ABI support first appeared in -.Fx 4.0 . -The ABI was ported from an equivalent facility present in -.Nx 1.3 -written by Christos Zoulas. -.Sh BUGS -Emulation of signal handlers is buggy. -.Pp -Emulated connectionless STREAMS fail to receive data from the network in -some circumstances (but succeed in others -- probably due to particular -ways of initializing them which the -.Xr streams 4 -module is mishandling, and interaction between STREAMS and -.Xr poll 2 ) . -Connection-oriented STREAMS appear to be functional. -.Pp -Ironically, this SVR4 emulator does not (yet) support SVR4 semaphores or -shared memory. -.Pp -.Xr ports 7 -to automatically create the -.Pa /compat/svr4 -environment do not exist. -.Xr tar 1 -archives containing pre-populated trees can be obtained from -.Pa http://people.FreeBSD.org/~newton/freebsd-svr4/ . -.Pp -Extensive testing has only really been carried out with Solaris 2.x binaries, -with anecdotal reports of limited success coming from testers with -early-revision SCO media. -In theory, the basic SVR4 ABI should be constant -across the set of vendors who produce SVR4 operating systems, but in -practice that is probably not the case. -If necessary, future work can -either implement additional -.Xr kld 4 -modules which produce functionality which contains OS-dependent -departures from the behaviour which has been implemented in this -ABI implementation. -Alternatively, -.Xr sysctl 8 -variables could set the -.Dq personality -the environment should present to -client applications. diff --git a/share/man/man4/man4.i386/viapm.4 b/share/man/man4/man4.i386/viapm.4 deleted file mode 100644 index 67fecc6fc26..00000000000 --- a/share/man/man4/man4.i386/viapm.4 +++ /dev/null @@ -1,72 +0,0 @@ -.\" Copyright (c) 2002 Nicolas Souchu -.\" 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/man4.i386/viapm.4,v 1.4 2002/09/15 20:33:05 ceri Exp $ -.\" -.Dd April 20, 2002 -.Dt VIAPM 4 i386 -.Os -.Sh NAME -.Nm viapm -.Nd VIA chipsets Power Management controller driver -.Sh SYNOPSIS -.Cd device iicbb -.Cd device iicbus -.Cd device iicsmb -.Cd device smbus -.Cd device smb -.Cd device viapm -.Sh DESCRIPTION -This driver provides access to the -.Tn "VIA chipset Power Management Unit" -family. -They are -VT82C586B, VT82C596A, VT82C596B, VT82C686A and VT8233. -.Pp -The embedded controller of the VIA chipset may give you access -to the monitoring facilities of your mainboard. -.Pp -The 586B support is made by software whereas other controllers support -the SMBus protocol by hardware. -See -.Xr smb 4 -for writing user code to fetch voltages, temperature and so on from the -monitoring chip of your mainboard. -.Sh SEE ALSO -.Xr iicbb 4 , -.Xr iicbus 4 , -.Xr iicsmb 4 , -.Xr smb 4 , -.Xr smbus 4 -.Sh HISTORY -The -.Nm -manual page first appeared in -.Fx 4.5 . -.Sh AUTHORS -This -manual page was written by -.An Nicolas Souchu Aq nsouch@FreeBSD.org . -.Sh BUGS -Only polling mode is supported. diff --git a/share/man/man4/man4.i386/vx.4 b/share/man/man4/man4.i386/vx.4 deleted file mode 100644 index e877c06609c..00000000000 --- a/share/man/man4/man4.i386/vx.4 +++ /dev/null @@ -1,136 +0,0 @@ -.\" -.\" Copyright (c) 1996, Fred Gray -.\" 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 David Greenman. -.\" 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 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$ -.\" -.Dd October 24, 2018 -.Dt VX 4 i386 -.Os -.Sh NAME -.Nm vx -.Nd "3Com EtherLink III / Fast EtherLink III (3c59x) Ethernet driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device vx" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_vx_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for the 3Com -.Dq Vortex -chipset. -.Pp -The medium selection -can be influenced by the following link flags to the -.Xr ifconfig 8 -command: -.Pp -.Bl -tag -width LINK0X -compact -.It Em link0 -Use the AUI port. -.It Em link1 -Use the BNC port. -.It Em link2 -Use the UTP port. -.El -.Sh HARDWARE -The -.Nm -driver supports the following cards: -.Pp -.Bl -bullet -compact -.It -3Com 3c590 EtherLink III PCI -.It -3Com 3c595 Fast EtherLink III PCI in 10 Mbps mode -.El -.Sh DIAGNOSTICS -All other diagnostics indicate either a hardware problem or a bug in the -driver. -.Sh SEE ALSO -.Xr arp 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 2.1 . -It was derived from the -.Nm ep -driver, from which it inherits most of its limitations. -.Sh AUTHORS -.An -nosplit -The -.Nm -device driver and this manual page were written by -.An Fred Gray Aq Mt fgray@rice.edu , -based on the work of -.An Herb Peyerl -and with the assistance of numerous others. -.Sh CAVEATS -Some early-revision 3c590 cards are defective and suffer from many receive -overruns, which cause lost packets. -The author has attempted to implement -a test for it based on the information supplied by 3Com, but the test resulted -mostly in spurious warnings. -.Pp -The performance of this driver is somewhat limited by the fact that it uses -only polled-mode I/O and does not make use of the bus-mastering capability -of the cards. -.Sh BUGS -The -.Nm -driver is known not to reset the adapter correctly following a warm boot -on some systems. -.Pp -The -.Nm -driver has not been exhaustively tested with all the models of cards that it -claims to support. diff --git a/share/man/man4/man4.i386/wl.4 b/share/man/man4/man4.i386/wl.4 deleted file mode 100644 index 9862b9661a4..00000000000 --- a/share/man/man4/man4.i386/wl.4 +++ /dev/null @@ -1,198 +0,0 @@ -.\" -.\" Copyright (c) 1997, Jim Binkley -.\" 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 Jim Binkley -.\" 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 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: stable/11/share/man/man4/man4.i386/wl.4 320921 2017-07-12 20:10:53Z jhb $ -.Dd July 8, 2017 -.Dt WL 4 i386 -.Os -.Sh NAME -.Nm wl -.Nd T1 speed ISA/radio lan card -.Sh SYNOPSIS -.Cd "device wl0 at isa? port 0x300 irq 5" -.Sh DEPRECATION NOTICE -The -.Nm -driver will be removed in -.Fx 12.0 . -.Sh DESCRIPTION -The -.Nm -driver controls a radio lan card system made originally by -NCR, then ATT, now Lucent. -The system is spread-spectrum radio -at around 915 MHz (or 2.4 GHz). -With the supplied omni-directional antennae, -about 400 feet (indoors, more outdoors) can be covered in circumference. -This card can talk to the companion (wlp0) pccard. -Speeds vary -from 1 megabit to theoretically 2 megabits (roughly T1 in speed). -.Pp -The card has three fundamental hardware -units, a so-called PSA or programmable storage area, a radio modem, -and a Ethernet lan controller. -The latter component is the -ancient (and not very honorable) Intel 82586 Ethernet chip. -Fundamentally it appears to the operating system as an Ethernet system, -and speaks IEEE MAC addresses. -The radio modem simply translates -Ethernet packets to/from radio packets, that are either at 2.4 GHz -or 915 MHz depending on the radio modem. -It supports a collision -avoidance scheme. -The lan controller -supports promiscuous mode, broadcast, and multicasting -(although there is a glitch -in the latter). -"It thinks it is Ethernet". -.Pp -How it is used -depends on the kind of antennae deployed with it. -Point to point -applications are possible as are Ethernet-like lan use. -The vendor -ships an omni-directional antennae that works in the -vicinity of 400 feet (indoors). -Point to point antennae can be purchased that will go miles. -.Sh SETUP -The card can either be initialized with the vendor supplied DOS setup software. -Typically minimally an IRQ, port, and Network ID must be supplied. -Michael Smith's -.Xr wlconfig 8 -utility can now be used to do this work from -the UNIX side. -The card is "not" plug and play. -The network id controls whether one set of cards can hear another. -If different, cards will read physical packets, but they will be discarded -by the radio modem. -.Sh CONTROL -In addition to the config utility, there are several sysctl -switches that can be used to modify runtime parameters. -The -.Xr sysctl 8 -variables are as follows: -.Bl -diag -.It "machdep.wl_xmit_delay " -This variable will cause the driver to insert a delay on transmit. -250 is the default. -The delay should probably be a bit longer -on faster cpus and less on slower cpus. -It exists because the 82586 -was not designed to work with Pentium-speed cpu systems and if overdriven -will have copious xmit side errors. -.It machdep.wl_ignore_nwid <0 | 1> -This switch defaults to 0; i.e., the nwid is not ignored. -It can -be set to 1 to cause the nwid to not be used. -This may be useful -when the device is in promiscuous mode as one can watch for all -packets and ignore nwid differences. -.It machdep.wl_xmit_watch -This switch is not currently useful. -.It machdep.wl_gather_snr -This switch is not currently useful. -.Pp -There is also a signal strength cache in the driver. -It may be interrogated -with -.Xr wlconfig 8 . -Incoming packets -are checked for certain hardware radio-modem values including signal -strength, silence, and quality, which range fro 0..63, 0..63, and 0..15 -respectively. -Thus one can read out signal strenth values to see -how close/far peer nodes are. -The signal strength cache is indexed by -sender MAC address. -There are two sysctls that change how it filters packets. -Both are on -by default. -.It machdep.wl_wlcache_mcastonly <0 | 1> -By default this switch is on. -It forces the cache to filter out -unicast packets. -Only broadcast or multicast packets are accepted. -.It machdep.wl_wlcache_iponly <0 | 1> -By default this switch is on. -It forces the driver to discard non-IP -packets and also stores the IP src address. -ARP packets are ignored, -as are any other network protocol barring IPv4 packets. -.El -.Sh SEE ALSO -.Xr sysctl 8 , -.Xr wlconfig 8 -.Pp -.Pa http://www.wavelan.com -.Sh HISTORY -The -.Nm -driver was written by -.An Anders Klemets -(thousands of years ago?) and -appears to be based on an even older Intel 82586 driver. -The 82586 -controller was one of the first (if not the first?) integrated lan -controller on the block. -That does not mean it was the best either. -Anders ported and or created a driver for the ISA wavelan and PCCARD -wavelan system too (wlp). -.An Robert T. Morris, Jr. -ported the Mach drivers to BSDI. -.An Jim Binkley -ported them to -.Fx 2.1 . -.An Michael Smith -ported the -.Nm -driver only to 2.2.2. -Jim and Michael have been -maintaining them. -The current state of the driver is NOT ANYONE'S -FAULT. -Thanks to -.An Bernie Doehner -and -.An Robert Buaas -for contributions. -.Sh AUTHORS -Too numerous to mention. -See above. -.Sh CAVEATS -The 82586 has numerous defects. -It may experience transmit-side -errors when modern faster cpus send packets at it faster than it can handle. -The driver (and probably the chip) does not support an all multicast mode. -As a result, it can be used with applications like -.Xr mrouted 8 Pq Pa ports/net/mrouted , -but it must go into promiscuous mode for that to work. -The driver -is slow to change modes from "normal" to promiscuous mode, presumably -due to delays in the configuration code. diff --git a/share/man/man4/man4.powerpc/bm.4 b/share/man/man4/man4.powerpc/bm.4 deleted file mode 100644 index c04ebe84b10..00000000000 --- a/share/man/man4/man4.powerpc/bm.4 +++ /dev/null @@ -1,93 +0,0 @@ -.\"- -.\" Copyright (c) 2008 Nathan Whitehorn -.\" 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. -.\" -.\" $FreeBSD: stable/11/share/man/man4/man4.powerpc/bm.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24, 2018 -.Dt BM 4 -.Os -.Sh NAME -.Nm bm -.Nd BMAC Ethernet device driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device miibus" -.Cd "device bm" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_bm_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for the BMac ethernet hardware found mostly in -G3-based Apple hardware. -It is a close relative of the Sun HME controller found in contemporary -Sun workstations. -.Sh HARDWARE -Chips supported by the -.Nm -driver include: -.Pp -.Bl -bullet -compact -.It -Apple BMAC Onboard Ethernet -.It -Apple BMAC+ Onboard Ethernet -.El -.Sh SEE ALSO -.Xr altq 4 , -.Xr hme 4 , -.Xr miibus 4 , -.Xr netintro 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver appeared in -.Fx 7.1 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Nathan Whitehorn Aq Mt nwhitehorn@FreeBSD.org -based on work by -.An Peter Grehan Aq Mt grehan@FreeBSD.org . diff --git a/share/man/man4/man4.sparc64/Makefile b/share/man/man4/man4.sparc64/Makefile deleted file mode 100644 index 39ae5152785..00000000000 --- a/share/man/man4/man4.sparc64/Makefile +++ /dev/null @@ -1,24 +0,0 @@ -# $FreeBSD$ - -PACKAGE=runtime-manuals - -MAN= auxio.4 \ - central.4 \ - clkbrd.4 \ - creator.4 \ - ebus.4 \ - eeprom.4 \ - fhc.4 \ - machfb.4 \ - ofw_console.4 \ - openfirm.4 \ - openprom.4 \ - rtc.4 \ - sbus.4 \ - snd_audiocs.4 - -MLINKS= openfirm.4 openfirmware.4 - -MANSUBDIR=/sparc64 - -.include diff --git a/share/man/man4/man4.sparc64/Makefile.depend b/share/man/man4/man4.sparc64/Makefile.depend deleted file mode 100644 index f80275d86ab..00000000000 --- a/share/man/man4/man4.sparc64/Makefile.depend +++ /dev/null @@ -1,11 +0,0 @@ -# $FreeBSD$ -# Autogenerated - do NOT edit! - -DIRDEPS = \ - - -.include - -.if ${DEP_RELDIR} == ${_DEP_RELDIR} -# local dependencies - needed for -jN in clean tree -.endif diff --git a/share/man/man4/man4.sparc64/auxio.4 b/share/man/man4/man4.sparc64/auxio.4 deleted file mode 100644 index 9c5bbe154d5..00000000000 --- a/share/man/man4/man4.sparc64/auxio.4 +++ /dev/null @@ -1,80 +0,0 @@ -.\"- -.\" Copyright (c) 2004 Pyun YongHyeon -.\" 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$ -.\" -.Dd June 18, 2005 -.Dt AUXIO 4 sparc64 -.Os -.Sh NAME -.Nm auxio -.Nd "Sun Auxiliary I/O" -.Sh SYNOPSIS -.Cd "device auxio" -.Sh DESCRIPTION -The -.Nm -driver provides support for the auxiliary I/O device found on the -.Tn EBus -and -.Tn SBus -busses of -.Tn Sun UltraSPARC -workstation and small server class systems. -This device contains miscellaneous system controls, -including the front panel LED. -This LED can be made to blink by writing -.Tn ASCII -strings to the -.Pa /dev/led/auxioled -device. -.Sh FILES -.Bl -tag -width ".Pa /dev/led/auxioled" -.It Pa /dev/led/auxioled -Auxiliary I/O device node -.El -.Sh SEE ALSO -.Xr ebus 4 , -.Xr led 4 , -.Xr sbus 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Nx 1.5 . -The first -.Fx -version to include it was -.Fx 5.3 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Matthew R. Green -and ported to -.Fx -by -.An Pyun YongHyeon Aq Mt yongari@FreeBSD.org . diff --git a/share/man/man4/man4.sparc64/central.4 b/share/man/man4/man4.sparc64/central.4 deleted file mode 100644 index fcde31da131..00000000000 --- a/share/man/man4/man4.sparc64/central.4 +++ /dev/null @@ -1,60 +0,0 @@ -.\"- -.\" Copyright (c) 2004 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: central.4,v 1.3 2004/09/24 07:03:47 miod Exp -.\" $FreeBSD$ -.\" -.Dd June 18, 2005 -.Dt CENTRAL 4 sparc64 -.Os -.Sh NAME -.Nm central -.Nd "Central host controller and bus" -.Sh SYNOPSIS -.Cd "device central" -.Sh DESCRIPTION -The -.Nm -driver provides support for the -.Tn Central -host controller and bus found in -.Tn Sun Enterprise xx00 -systems. -It provides an attachment point for the main -.Xr fhc 4 -.Tn FireHose -controller used to control board level functions on the host. -.Sh SEE ALSO -.Xr fhc 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 5.1 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Jake Burkholder Aq Mt jake@FreeBSD.org . diff --git a/share/man/man4/man4.sparc64/clkbrd.4 b/share/man/man4/man4.sparc64/clkbrd.4 deleted file mode 100644 index 677648ff49e..00000000000 --- a/share/man/man4/man4.sparc64/clkbrd.4 +++ /dev/null @@ -1,88 +0,0 @@ -.\"- -.\" Copyright (c) 2004 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: clkbrd.4,v 1.2 2005/02/21 11:29:36 jmc Exp -.\" $FreeBSD$ -.\" -.Dd June 18, 2005 -.Dt CLKBRD 4 sparc64 -.Os -.Sh NAME -.Nm clkbrd -.Nd "clock board" -.Sh SYNOPSIS -.Cd "device clkbrd" -.Sh DESCRIPTION -The -.Nm -driver provides support for the clock board found in -.Tn Sun Enterprise xx00 -systems. -The clock board has three status LEDs labeled -.Dq Li Power , -.Dq Li Failure -and -.Dq Li Cycling . -These LEDs are also mirrored on the main front panel. -The -.Dq Li Cycling -LED can be made to blink by writing -.Tn ASCII -strings to the -.Pa /dev/led/clockboard -device. -.Pp -On attach the -.Nm -driver also prints out the number of board slots the chassis provides. -.Sh FILES -.Bl -tag -width ".Pa /dev/led/clockboard" -.It Pa /dev/led/clockboard -clock board LED device node -.El -.Sh SEE ALSO -.Xr fhc 4 , -.Xr led 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Ox 3.7 . -The first -.Fx -version to include it was -.Fx 6.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Jason L. Wright -and ported to -.Fx -by -.An Marius Strobl Aq Mt marius@FreeBSD.org . -.Sh CAVEATS -Hardware management functionality is not implemented. diff --git a/share/man/man4/man4.sparc64/creator.4 b/share/man/man4/man4.sparc64/creator.4 deleted file mode 100644 index 64035a7daf3..00000000000 --- a/share/man/man4/man4.sparc64/creator.4 +++ /dev/null @@ -1,88 +0,0 @@ -.\"- -.\" Copyright (c) 2002 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: creator.4,v 1.20 2005/03/05 01:48:59 miod Exp -.\" $FreeBSD$ -.\" -.Dd June 18, 2005 -.Dt CREATOR 4 sparc64 -.Os -.Sh NAME -.Nm creator -.Nd "accelerated color frame buffer" -.Sh SYNOPSIS -.Cd "device creator" -.Sh DESCRIPTION -The -.Tn Sun Creator , -.Tn Sun Creator3D -and -.Tn Sun Elite3D -cards are color frame buffers with graphics acceleration available for -.Tn UltraSPARC -workstations with -.Tn UPA -slots. -The -.Nm -driver interfaces those frame buffers with the -.Xr syscons 4 -console driver. -It also provides separate character devices -.Pa /dev/fb* -allowing to -.Xr mmap 2 -these frame buffers -(used by X11). -.Sh FILES -.Bl -tag -width ".Pa /dev/fb*" -.It Pa /dev/fb* -.Nm -device nodes -.El -.Sh SEE ALSO -.Xr machfb 4 , -.Xr syscons 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Ox 3.2 . -The first -.Fx -version to include it was -.Fx 5.2 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Jake Burkholder Aq Mt jake@FreeBSD.org -roughly based on the -.Ox -driver written by -.An "Jason L. Wright" . -.Sh CAVEATS -Font loading and mode switching are not implemented. diff --git a/share/man/man4/man4.sparc64/ebus.4 b/share/man/man4/man4.sparc64/ebus.4 deleted file mode 100644 index 26b67447a60..00000000000 --- a/share/man/man4/man4.sparc64/ebus.4 +++ /dev/null @@ -1,122 +0,0 @@ -.\"- -.\" Copyright (c) 1999 Matthew R. Green -.\" 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. -.\" -.\" from: OpenBSD: ebus.4,v 1.6 2004/09/23 18:28:51 jason Exp -.\" from: NetBSD: ebus.4,v 1.3 2002/03/13 21:42:20 wiz Exp -.\" $FreeBSD$ -.\" -.Dd September 1, 2006 -.Dt EBUS 4 sparc64 -.Os -.Sh NAME -.Nm ebus -.Nd "EBus controller and bus" -.Sh SYNOPSIS -.Cd "device ebus" -.Sh DESCRIPTION -The -.Nm -driver provides support for the EBus controller and bus found in most -.Tn PCI -based -.Tn UltraSPARC -systems. -The -.Tn EBus -bus is designed to provide the ability to put -.Tn ISA -and traditional -.Tn Intel -style peripherals in a -.Tn SPARC -based system with a minimal amount of glue logic. -In -.Tn UltraSPARC -systems it is implemented with either a PCIO or a PCIO-2 chip from -.Tn Sun Microelectronics . -The PCIO chip also implements a -.Xr hme 4 -compatible -.Tn PCI -network device. -The PCIO-2 chip also implements a -.Xr fwohci 4 -compatible -.Tn IEEE -.Tn 1394 -.Tn OHCI -interface, a -.Xr gem 4 -compatible -.Tn PCI -network device and an -.Xr ohci 4 -compatible -.Tn OHCI -.Tn USB -controller. -The -.Tn EBus -has four DMA channels, -similar to the DMA seen in the -.Xr esp 4 -.Tn SCSI -DMA. -.Sh SEE ALSO -.Xr atkbdc 4 , -.Xr auxio 4 , -.Xr eeprom 4 , -.Xr rtc 4 , -.Xr scc 4 , -.Xr snd_audiocs 4 , -.Xr uart 4 -.Rs -.%Q "Sun Microelectronics" -.%T "Peripheral Component Interconnect Input Output Controller" -.%V "Part No.: 802-7837-01" -.%D "March 1997" -.%U "http://www.sun.com/oem/products/manuals/802-7837.pdf" -.Re -.Sh HISTORY -The -.Nm -driver first appeared in -.Nx 1.5 . -The first -.Fx -version to include it was -.Fx 5.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Matthew R. Green -and ported to -.Fx -by -.An Thomas Moestl Aq Mt tmm@FreeBSD.org . diff --git a/share/man/man4/man4.sparc64/eeprom.4 b/share/man/man4/man4.sparc64/eeprom.4 deleted file mode 100644 index 8d7c3a57df5..00000000000 --- a/share/man/man4/man4.sparc64/eeprom.4 +++ /dev/null @@ -1,130 +0,0 @@ -.\"- -.\" Copyright (c) 2004 Jason L. Wright (jason@thought.net) -.\" Copyright (c) 2005 Marius Strobl -.\" 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: clock.4,v 1.3 2004/09/24 07:04:15 miod Exp -.\" $FreeBSD$ -.\" -.Dd February 15, 2006 -.Dt EEPROM 4 sparc64 -.Os -.Sh NAME -.Nm eeprom -.Nd "non-volatile RAM / real time clock" -.Sh SYNOPSIS -.Cd "device genclock" -.Cd "device mk48txx" -.Cd "device eeprom" -.Sh DESCRIPTION -The -.Nm -driver is a front-end for the machine-independent -.Tn Mostek -MK48Txx driver. -The -.Tn Mostek -MK48Txx driver provides access to the real time clock and the watchdog part -of the supported chips to -.Fx -by interfacing them with the generic clock code and -.Xr watchdog 4 -respectively. -.Pp -.Tn Mostek -MK48Txx chips providing real time clock functionality are found on the -.Tn EBus , -.Tn FireHose -and -.Tn SBus -busses of -.Tn UltraSPARC -systems. -On systems where the hostid is stored in the NVRAM part of the -.Tn Mostek -MK48Txx chip the -.Nm -driver prints out the hostid on attach. -.Pp -On -.Tn Sun Enterprise -250 and 450 systems additionally the watchdog functionality of the -.Tn Mostek -MK48Txx chips is available. -The -.Nm -driver automatically registers the watchdog part with -.Xr watchdog 4 -on these systems. -Thus it can be used with -.Xr watchdog 8 -and -.Xr watchdogd 8 . -The timeout interval supported by the -.Tn Mostek -MK48Txx watchdog is 1/16 second to 128 seconds. -In the -.Tn Sun Enterprise -machines a system reset is triggered when the -.Tn Mostek -MK48Txx watchdog times out regardless of what the -.Tn Open Firmware -environment variable -.Va watchdog-reboot? -is set to. -.Sh DIAGNOSTICS -The following driver specific error message may be reported: -.Bl -diag -.It "mk48txx_attach: battery low" -The device signals that its battery is low and should be replaced. -The -.Nm -driver refused to attach the device in this case as the time in the real time -clock is probably invalid. -This gives the generic clock code the chance to use another device as the -system real time clock that otherwise would not have been chosen. -.El -.Sh SEE ALSO -.Xr ebus 4 , -.Xr fhc 4 , -.Xr rtc 4 , -.Xr sbus 4 , -.Xr watchdog 4 , -.Xr watchdog 8 , -.Xr watchdogd 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 5.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Thomas Moestl Aq Mt tmm@FreeBSD.org -based on the -.Nx -sparc64 clock code written by -.An Paul Kranenburg . diff --git a/share/man/man4/man4.sparc64/fhc.4 b/share/man/man4/man4.sparc64/fhc.4 deleted file mode 100644 index 1cd12e982f1..00000000000 --- a/share/man/man4/man4.sparc64/fhc.4 +++ /dev/null @@ -1,82 +0,0 @@ -.\"- -.\" Copyright (c) 2004 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: fhc.4,v 1.5 2004/09/28 21:42:59 jmc Exp -.\" $FreeBSD$ -.\" -.Dd June 18, 2005 -.Dt FHC 4 sparc64 -.Os -.Sh NAME -.Nm fhc -.Nd "FireHose controller and bus" -.Sh SYNOPSIS -.Cd "device fhc" -.Sh DESCRIPTION -The -.Nm -driver provides support for the -.Tn FireHose -controllers and busses found in -.Tn Sun Enterprise xx00 -systems. -These controllers are also used for board level functions on these systems. -Each board has three status LEDs labeled -.Dq Li Power , -.Dq Li Failure -and -.Dq Li Cycling . -The -.Dq Li Cycling -LEDs can be made to blink by writing -.Tn ASCII -strings to the -.Pa /dev/led/board Ns Ar N -devices where -.Ar N -represents the physical slot number of the board. -.Sh FILES -.Bl -tag -width ".Pa /dev/led/board Ns Ar N" -.It Pa /dev/led/board Ns Ar N -board -.Ar N -LED device node -.El -.Sh SEE ALSO -.Xr central 4 , -.Xr clkbrd 4 , -.Xr eeprom 4 , -.Xr led 4 , -.Xr uart 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 5.1 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Jake Burkholder Aq Mt jake@FreeBSD.org . diff --git a/share/man/man4/man4.sparc64/machfb.4 b/share/man/man4/man4.sparc64/machfb.4 deleted file mode 100644 index 9e65222b194..00000000000 --- a/share/man/man4/man4.sparc64/machfb.4 +++ /dev/null @@ -1,180 +0,0 @@ -.\"- -.\" Copyright (c) 2002 Jason L. Wright (jason@thought.net) -.\" Copyright (c) 2005, 2006 Marius Strobl -.\" 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: creator.4,v 1.20 2005/03/05 01:48:59 miod Exp -.\" $FreeBSD$ -.\" -.Dd September 2, 2006 -.Dt MACHFB 4 sparc64 -.Os -.Sh NAME -.Nm machfb -.Nd "accelerated color frame buffer" -.Sh SYNOPSIS -.Cd "device machfb" -.Sh DESCRIPTION -The -.Tn ATI Mach64 -family of chips are color frame buffers with graphics acceleration. -The -.Nm -driver interfaces those frame buffers with the -.Xr syscons 4 -console driver. -.Pp -.Tn ATI Mach64 -chips are very common as low-end graphics chips in -.Tn PCI -based -.Tn UltraSPARC -systems. -They are found on-board in -.Tn Sun Blade 100 , -.Tn Sun Blade 150 , -.Tn Sun Ultra 5 -and -.Tn Sun Ultra 10 -as well as on -.Tn Sun -OEM mainboards like the -.Tn Sun AXe . -They are also used on add-on cards like the -.Tn Sun PGX -and -.Tn Sun PGX64 . -.Pp -The -.Nm -driver requires the chip which it is supposed to drive to be also -supported by the -.Tn Open Firmware , -either by a built-in FCode driver package of the on-board firmware -or by additional FCode on the add-on card. -As a matter of course -.Tn UltraSPARC -systems with an on-board -.Tn ATI Mach64 chip -also have a built-in FCode driver package for this chip. -There are also mainboards like the -.Tn Sun AX1105 -and -.Tn Sun AXi -boards however, -which have built-in FCode for certain -.Tn ATI Mach64 -chips although they are not equipped with an on-board one. -Mainboards with built-in FCode for certain -.Tn ATI Mach64 -chips can be used with any add-on card which is based on one of those -chips, -including cards which are equipped with x86 firmware and intended for -use in PCs. -Otherwise an add-on card which comes with its own FCode like the -.Tn Sun PGX -or -.Tn Sun PGX64 -has to be used. -.Sh HARDWARE -The -.Nm -driver provides support for the following chips: -.Pp -.Bl -bullet -compact -.It -.Tn ATI 3D Rage II+ -.It -.Tn ATI 3D Rage IIC -.It -.Tn ATI 3D Rage I/II -.It -.Tn ATI 3D Rage LT -.It -.Tn ATI 3D Rage LT Pro -.It -.Tn ATI 3D Rage Pro -.It -.Tn ATI 3D Rage Pro Turbo -.It -.Tn ATI Mach64 CT -.It -.Tn ATI Mach64 VT -.It -.Tn ATI Mach64 VT4 -.It -.Tn ATI Mach64 VTB -.It -.Tn ATI Rage L Mobility -.It -.Tn ATI Rage Mobility -.It -.Tn ATI Rage Mobility M1 -.It -.Tn ATI Rage Mobility M3 -.It -.Tn ATI Rage XC -.It -.Tn ATI Rage XL -.El -.Pp -The -following add-on cards are known to work with the -.Nm -driver at this time: -.Pp -.Bl -bullet -compact -.It -.Tn ATI 3D Charger PCI -.It -.Tn Sun PGX 8-Bit Color Frame Buffer -(part no.\& 370-2256) -.It -.Tn Sun PGX64 8/24-Bit Color Frame Buffer -(part no.\& 370-4362) -.El -.Sh SEE ALSO -.Xr creator 4 , -.Xr syscons 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Nx 2.0 . -The first -.Fx -version to include it was -.Fx 6.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Marius Strobl Aq Mt marius@FreeBSD.org -based on the -.Nx -driver written by -.An Bang Jun-Young . -.Sh CAVEATS -Font loading and mode switching are not implemented. diff --git a/share/man/man4/man4.sparc64/ofw_console.4 b/share/man/man4/man4.sparc64/ofw_console.4 deleted file mode 100644 index f21b977b4d2..00000000000 --- a/share/man/man4/man4.sparc64/ofw_console.4 +++ /dev/null @@ -1,126 +0,0 @@ -.\"- -.\" Copyright (c) 2001 Miodrag Vallat. -.\" Copyright (c) 2005 Marius Strobl -.\" 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. Redistribution 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: pcons.4,v 1.4 2003/06/02 16:16:26 miod Exp -.\" $FreeBSD$ -.\" -.Dd June 18, 2005 -.Dt OFW_CONSOLE 4 sparc64 -.Os -.Sh NAME -.Nm ofw_console -.Nd "Open Firmware console" -.Sh SYNOPSIS -.Cd "device ofw_console" -.Cd "options OFWCONS_POLL_HZ=N" -.Pp -.Cd "options KDB" -.Cd "options DDB" -.Cd "options ALT_BREAK_TO_DEBUGGER" -.Sh DESCRIPTION -The -.Nm -driver provides a simple text console, -using the Open Firmware services for input and output. -It will use the Open Firmware console devices set via the -.Va input-device -and -.Va output-device -variables. -.Pp -This driver is deprecated and only provided as a fallback console mechanism -if the real console hardware can not be driven by -.Fx . -.Pp -In case the -.Nm -console appears to work too slowly, its responsiveness probably can be improved -by including -.Cd "options OFWCONS_POLL_HZ=N" . -When omitted, -.Dv OFWCONS_POLL_HZ -defaults to 4. -For example, on -.Tn Sun Ultra 2 -a value of 20 or higher works best. -Too high values, on the other hand, can cause -.Nm -to unnecessarily consume CPU. -.Sh FILES -.Bl -tag -width ".Pa /dev/keyboard" -compact -.It Pa /dev/console -.It Pa /dev/keyboard -terminal input device in case the console input device is the keyboard -.It Pa /dev/screen -terminal output device in case the console output device is the screen -.It Pa /dev/tty[a-z] -terminal device in case both the console input and output device is tty[a-z] -.El -.Sh SEE ALSO -.Xr creator 4 , -.Xr machfb 4 , -.Xr syscons 4 , -.Xr uart 4 , -.Xr eeprom 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 5.0 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Benno Rice Aq Mt benno@FreeBSD.org . -.Sh CAVEATS -Since the Open Firmware will handle BREAK -(or Stop-A) -sequences before -.Nm , -the preferred way to enter -.Xr ddb 4 -when using -.Nm -is to include -.Cd "options ALT_BREAK_TO_DEBUGGER" -in a ddb-enabled kernel, and enter the alternate BREAK sequence -(RETURN TILDE CTRL-b). -.Sh BUGS -The -.Nm -driver -is not a real -.Xr tty 4 -driver and is not MPSAFE. -The -.Nm -driver also does not attach to the hardware resources it actually talks to. -Therefore it cannot be included in the kernel together with real console -hardware drivers -like -.Xr creator 4 , -.Xr machfb 4 -and -.Xr uart 4 . diff --git a/share/man/man4/man4.sparc64/openfirm.4 b/share/man/man4/man4.sparc64/openfirm.4 deleted file mode 100644 index bee4915b5f1..00000000000 --- a/share/man/man4/man4.sparc64/openfirm.4 +++ /dev/null @@ -1,300 +0,0 @@ -.\"- -.\" Copyright (c) 1992, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" This software was developed by the Computer Systems Engineering group -.\" at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and -.\" contributed to Berkeley. -.\" -.\" 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: @(#)openprom.4 8.1 (Berkeley) 6/5/93 -.\" from: OpenBSD: openprom.4,v 1.9 2004/03/22 22:07:21 miod Exp -.\" -.\"- -.\" Copyright (c) 2005 Marius Strobl -.\" 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. -.\" -.\" $FreeBSD$ -.\" -.Dd September 1, 2006 -.Dt OPENFIRM 4 sparc64 -.Os -.Sh NAME -.Nm openfirm -.Nd "Open Firmware interface" -.Sh SYNOPSIS -.In sys/types.h -.In sys/ioctl.h -.In dev/ofw/openfirmio.h -.Sh DESCRIPTION -The -.Pa /dev/openfirm -device is an interface to the -.Tn Open Firmware -device tree. -This interface is similar to the -.Tn SunOS / -.Tn Solaris -compatible -.Xr openprom 4 -interface and highly stylized. -It uses -.Xr ioctl 2 -calls for all operations. -These calls refer to the nodes in the -.Tn Open Firmware -device tree. -The nodes are represented by package handles, -which are simply integer values describing data areas. -Occasionally a package handle of 0 may be used or returned instead, -as described below. -.Pp -The calls that only take and/or return the package handle of a node -use a pointer to a -.Vt phandle_t -for this purpose. -The others use a pointer to a -.Vt "struct ofiocdesc" -descriptor, -which has the following definition: -.Bd -literal -struct ofiocdesc { - phandle_t of_nodeid; - int of_namelen; - const char *of_name; - int of_buflen; - char *of_buf; -}; -.Ed -.Pp -The -.Va of_nodeid -member is the package handle of the node that is passed in or returned. -Strings are passed in via the -.Va of_name -member of -.Va of_namelen -length. -The maximum accepted length of -.Va of_name -is -.Dv OFIOCMAXNAME . -The -.Va of_buf -member is used to return strings except for the -.Dv OFIOCSET -call where it is also used to pass in a string. -In the latter case the maximum accepted length of -.Va of_buf -is -.Dv OFIOCMAXVALUE . -Generally, -.Va of_buf -works in a value-result fashion. -At entry to the -.Xr ioctl 2 -call, -.Va of_buflen -is expected to reflect the buffer size. -On return, -.Va of_buflen -is updated to reflect the buffer contents. -.Pp -The following -.Xr ioctl 2 -calls are supported: -.Bl -tag -width ".Dv OFIOCGETOPTNODE" -.It Dv OFIOCGETOPTNODE -Uses a -.Vt phandle_t . -Takes nothing and returns the package handle of the -.Pa /options -node. -.It Dv OFIOCGETNEXT -Uses a -.Vt phandle_t . -Takes the package handle of a node and returns the package handle of the next -node in the -.Tn Open Firmware -device tree. -The node following the last node has a package handle of 0. -The node following the node with the package handle of 0 is the first node. -.It Dv OFIOCGETCHILD -Uses a -.Vt phandle_t . -Takes the package handle of a node and returns the package handle of the first -child of that node. -This child may have siblings. -These can be determined by using -.Dv OFIOCGETNEXT . -If the node does not have a child, -a package handle of 0 is returned. -.It Dv OFIOCGET -Uses a -.Vt "struct ofiocdesc" . -Takes the package handle of a node and the name of a property. -Returns the property value and its length. -If no such property is associated with that node, -the length of the value is set to \-1. -If the named property exists but has no value, -the length of the value is set to 0. -.It Dv OFIOCGETPROPLEN -Uses a -.Vt "struct ofiocdesc" . -Takes the package handle of a node and the name of a property. -Returns the length of the property value. -This call is the same as -.Dv OFIOCGET -except that only the length of the property value is returned. -It can be used to determine whether a node has a particular property or whether -a property has a value without the need to provide memory for storing the value. -.It Dv OFIOCSET -Uses a -.Vt "struct ofiocdesc" . -Takes the package handle of a node, -the name of a property and a property value. -Returns the property value and the length that actually have been written. -The -.Tn Open Firmware -may choose to truncate the value if it is too long or write a valid value -instead if the given value is invalid for the particular property. -Therefore the returned value should be checked. -The -.Tn Open Firmware -may also completely refuse to write the given value to the property. -In this case -.Er EINVAL -is returned. -.It Dv OFIOCNEXTPROP -Uses a -.Vt "struct ofiocdesc" . -Takes the package handle of a node and the name of a property. -Returns the name and the length of the next property of the node. -If the property referenced by the given name is the last property of the node, -.Er ENOENT -is returned. -.It Dv OFIOCFINDDEVICE -Uses a -.Vt "struct ofiocdesc" . -Takes the name or alias name of a device node. -Returns package handle of the node. -If no matching node is found, -.Er ENOENT -is returned. -.El -.Sh FILES -.Bl -tag -width ".Pa /dev/openfirm" -.It Pa /dev/openfirm -Open Firmware interface node -.El -.Sh DIAGNOSTICS -The following may result in rejection of an operation: -.Bl -tag -width Er -.It Bq Er EBADF -The requested operation requires permissions not specified at the call to -.Fn open . -.It Bq Er EINVAL -The given package handle is not 0 and does not correspond to any valid node, -or the given package handle is 0 where 0 is not allowed. -.It Bq Er ENAMETOOLONG -The given name or value exceeds the maximum allowed length of -.Dv OFIOCMAXNAME -and -.Dv OFIOCMAXVALUE -bytes respectively. -.It Bq Er ENOMEM -The kernel could not allocate memory to copy in data from user-space or to -retrieve data from the -.Tn Open Firmware . -.El -.Sh SEE ALSO -.Xr ioctl 2 , -.Xr openprom 4 , -.Xr eeprom 8 , -.Xr ofwdump 8 -.Rs -.%Q "IEEE Standards Organization" -.%B "IEEE Std 1275-1994:" -.%B "IEEE Standard for Boot Firmware (Initialization Configuration) Firmware:" -.%B Core Requirements and Practices" -.%O ISBN 1-55937-426-8 -.Re -.Sh HISTORY -The -.Nm -interface first appeared in -.Nx 1.6 . -The first -.Fx -version to include it was -.Fx 5.0 . -.Sh AUTHORS -The -.Nm -interface was ported to -.Fx -by -.An Thomas Moestl Aq Mt tmm@FreeBSD.org . -.Sh CAVEATS -Due to limitations within -.Tn Open Firmware -itself, -these functions run at elevated priority and may adversely affect system -performance. -.Pp -For at least the -.Pa /options -node the property value passed in to the -.Dv OFIOCSET -call has to be null-terminated and the value length passed in has to include -the terminating -.Ql \e0 . -However, as with the -.Dv OFIOCGET -call, -the returned value length does not include the terminating -.Ql \e0 . diff --git a/share/man/man4/man4.sparc64/openprom.4 b/share/man/man4/man4.sparc64/openprom.4 deleted file mode 100644 index 8acdb14995d..00000000000 --- a/share/man/man4/man4.sparc64/openprom.4 +++ /dev/null @@ -1,240 +0,0 @@ -.\"- -.\" Copyright (c) 1992, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" This software was developed by the Computer Systems Engineering group -.\" at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and -.\" contributed to Berkeley. -.\" -.\" 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: @(#)openprom.4 8.1 (Berkeley) 6/5/93 -.\" from: OpenBSD: openprom.4,v 1.9 2004/03/22 22:07:21 miod Exp -.\" -.\"- -.\" Copyright (c) 2005 Marius Strobl -.\" 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. -.\" -.\" $FreeBSD$ -.\" -.Dd June 18, 2005 -.Dt OPENPROM 4 sparc64 -.Os -.Sh NAME -.Nm openprom -.Nd "OPENPROM interface" -.Sh SYNOPSIS -.In sys/types.h -.In sys/ioctl.h -.In dev/ofw/openpromio.h -.Sh DESCRIPTION -The -.Pa /dev/openfirm -device is a -.Tn SunOS / -.Tn Solaris -compatible interface to the -.Tn Open Firmware -device tree. -This interface is similar to the -.Xr openprom 4 -interface. -It uses -.Xr ioctl 2 -calls for all operations. -These calls refer to the nodes in the -.Tn Open Firmware -device tree. -However, -.Fx -only implements a subset of the -.Xr ioctl 2 -calls -.Tn SunOS / -.Tn Solaris -does. -The nodes are represented by integer values, -which are simply describing data areas. -Occasionally the number 0 may be used or returned instead, -as described below. -.Pp -All calls use a pointer to a -.Vt "struct openpromio" -descriptor, -which has the following definition: -.Bd -literal -struct openpromio { - uint32_t oprom_size; - char oprom_array[]; -}; -.Ed -.Pp -The -.Va oprom_size -member refers to the size of -.Va oprom_array . -The -.Va oprom_array -member actually works like a union. -Depending on the -.Xr ioctl 2 -call and whether the -.Vt "struct openpromio" -is used to pass in or return data, -.Va oprom_array -either contains an integer referring to a node or a string referring to a -property name or property value. -The maximum size of -.Va oprom_array -is -.Dv OPROMMAXPARAM . -.Pp -The following -.Xr ioctl 2 -calls are currently implemented: -.Bl -tag -width ".Dv OPROMGETPROP" -.It Dv OPROMNEXT -Takes the number of a node and returns the number of the next node in the -.Tn Open Firmware -device tree. -The node following the last node is number 0. -The node following number 0 is the first node. -.It Dv OPROMCHILD -Takes the number of a node and returns the number of the first child of that -node. -This child may have siblings. -These can be determined by using -.Dv OPROMNEXT . -If the node does not have a child, -0 is returned. -.It Dv OPROMGETPROP -Takes the name of a property. -Returns the property value. -The -.Dv OPROMGETPROP -call refers to the node previously returned by either the -.Dv OPROMNEXT -or the -.Dv OPROMCHILD -call, -depending on which one was invoked last. -If the property referenced by the given name is not associated with that node, -.Er EINVAL -is returned. -If the named property exists but has no value, -an empty string is returned. -.It Dv OPROMNXTPROP -Takes the name of a property. -Returns the name of the next property of the node. -As with the -.Dv OPROMGETPROP -call, -the -.Dv OPROMNXTPROP -call refers to the node previously returned by either the -.Dv OPROMNEXT -or the -.Dv OPROMCHILD -call. -If the property referenced by the given name is the last property of the node, -an empty string is returned. -.El -.Sh FILES -.Bl -tag -width ".Pa /dev/openprom" -.It Pa /dev/openprom -OPENPROM interface node -.El -.Sh DIAGNOSTICS -The following may result in rejection of an operation: -.Bl -tag -width Er -.It Bq Er EBUSY -The -.Pa /dev/openprom -node is already opened. -.It Bq Er EINVAL -The given node number is not 0 and does not correspond to any valid node, -or the given node number is 0 where 0 is not allowed, -or the given size value is invalid, -or the given property name exceeds the maximum allowed length of -.Dv OPROMMAXPARAM -bytes. -.It Bq Er ENOMEM -The kernel could not allocate memory to copy in data from user-space or to -retrieve data from the -.Tn Open Firmware . -.El -.Sh SEE ALSO -.Xr ioctl 2 , -.Xr openfirm 4 , -.Xr eeprom 8 , -.Xr ofwdump 8 -.Sh HISTORY -The first -.Fx -version to include the -.Nm -interface was -.Fx 5.0 . -.Sh AUTHORS -The -.Nm -interface was written by -.An Jake Burkholder Aq Mt jake@FreeBSD.org . -.Sh CAVEATS -Due to limitations within -.Tn Open Firmware -itself, -these functions run at elevated priority and may adversely affect system -performance. -.Pp -The -.Nm -interface exists entirely for compatibility with software like X11, -and only the features that are actually needed for that are implemented. -The interface sucks too much to actually use, -new code should use the -.Xr openfirm 4 -interface instead. diff --git a/share/man/man4/man4.sparc64/rtc.4 b/share/man/man4/man4.sparc64/rtc.4 deleted file mode 100644 index 34bd865bbc5..00000000000 --- a/share/man/man4/man4.sparc64/rtc.4 +++ /dev/null @@ -1,88 +0,0 @@ -.\"- -.\" Copyright (c) 2004 Jason L. Wright (jason@thought.net) -.\" Copyright (c) 2005 Marius Strobl -.\" 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: clock.4,v 1.3 2004/09/24 07:04:15 miod Exp -.\" $FreeBSD$ -.\" -.Dd June 18, 2005 -.Dt RTC 4 sparc64 -.Os -.Sh NAME -.Nm rtc -.Nd "non-volatile RAM / real time clock" -.Sh SYNOPSIS -.Cd "device genclock" -.Cd "device mc146818" -.Cd "device rtc" -.Sh DESCRIPTION -The -.Nm -driver is a front-end for the machine-independent -.Tn Motorola -MC146818 and compatible clocks driver. -The -.Tn Motorola -MC146818 and compatible clocks driver provides access to the real time clock -part of the chips it supports to -.Fx -by interfacing with the generic clock code. -.Pp -.Tn Dallas / -.Tn Maxim Semiconductor -DS1287 chips -(those are compatible to the -.Tn Motorola -MC146818 clocks) -are found on the ISA bus of -.Tn UltraSPARC II -systems and the EBus bus of -.Tn UltraSPARC III -systems. -.Sh DIAGNOSTICS -The following driver specific error message may be reported: -.Bl -diag -.It "mc146818_attach_attach: battery low" -The device signals that its battery is low and should be replaced. -The -.Nm -driver refused to attach the device in this case as the time in the real time -clock is probably invalid. -This gives the generic clock code the chance to use another device as the -system real time clock that otherwise would not have been chosen. -.El -.Sh SEE ALSO -.Xr ebus 4 , -.Xr eeprom 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 5.4 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Marius Strobl Aq Mt marius@FreeBSD.org . diff --git a/share/man/man4/man4.sparc64/sbus.4 b/share/man/man4/man4.sparc64/sbus.4 deleted file mode 100644 index 17ab18da487..00000000000 --- a/share/man/man4/man4.sparc64/sbus.4 +++ /dev/null @@ -1,79 +0,0 @@ -.\"- -.\" Copyright (c) 2001 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. -.\" -.\" from: OpenBSD: sbus.4,v 1.27 2005/03/05 01:44:48 miod Exp -.\" from: NetBSD: sbus.4,v 1.5 2002/01/21 17:54:10 wiz Exp -.\" $FreeBSD$ -.\" -.Dd September 1, 2006 -.Dt SBUS 4 sparc64 -.Os -.Sh NAME -.Nm sbus -.Nd SBus controller and bus -.Sh SYNOPSIS -.Cd "device sbus" -.Sh DESCRIPTION -The -.Nm -driver provides support for the SBus controllers and busses found in older -.Tn UltraSPARC -workstations and small to medium server class systems. -The SBus is an I/O interconnect bus supporting both on-board peripherals and -extension boards. -The SBus specifications define the bus protocol as well as the electrical and -mechanical properties of the extension slots. -.Sh SEE ALSO -.Xr auxio 4 , -.Xr eeprom 4 , -.Xr esp 4 , -.Xr hme 4 , -.Xr isp 4 , -.Xr le 4 , -.Xr scc 4 , -.Xr snd_audiocs 4 , -.Xr uart 4 -.Sh HISTORY -The -.Nm -driver first appeared in -.Nx 1.3 . -The first -.Fx -version to include it was -.Fx 5.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Paul Kranenburg -and ported to -.Fx -by -.An Thomas Moestl Aq Mt tmm@FreeBSD.org . diff --git a/share/man/man4/man4.sparc64/snd_audiocs.4 b/share/man/man4/man4.sparc64/snd_audiocs.4 deleted file mode 100644 index 13b4c22c332..00000000000 --- a/share/man/man4/man4.sparc64/snd_audiocs.4 +++ /dev/null @@ -1,87 +0,0 @@ -.\"- -.\" Copyright (c) 2004 Pyun YongHyeon -.\" 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$ -.\" -.Dd December 15, 2005 -.Dt SND_AUDIOCS 4 sparc64 -.Os -.Sh NAME -.Nm snd_audiocs -.Nd "Crystal Semiconductor CS4231 audio device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device sound" -.Cd "device snd_audiocs" -.Ed -.Pp -Alternatively, to load the driver as a module at boot time, place the -following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -snd_audiocs_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -bridge driver allows the generic audio driver -.Xr sound 4 -to attach to the CS4231 audio device. -Speaker output is enabled by default. -SBus based -.Tn UltraSPARC -workstations have no internal CD-ROM audio input capability. -.Sh HARDWARE -The -.Nm -driver supports the following audio devices: -.Pp -.Bl -bullet -compact -.It -CS4231 on SBus based UltraSPARC -.It -CS4231 on PCI/EBus based UltraSPARC -.El -.Sh SEE ALSO -.Xr ebus 4 , -.Xr sbus 4 , -.Xr sound 4 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 5.3 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was ported by -.An Pyun YongHyeon Aq Mt yongari@FreeBSD.org -from the -.Ox -driver written by -.An Jason L. Wright . diff --git a/share/man/man4/meteor.4 b/share/man/man4/meteor.4 deleted file mode 100644 index 4e1ea380179..00000000000 --- a/share/man/man4/meteor.4 +++ /dev/null @@ -1,873 +0,0 @@ -.\" -.\" $FreeBSD: stable/11/share/man/man4/meteor.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd August 15, 1995 -.Dt METEOR 4 -.Os -.Sh NAME -.Nm meteor -.Nd "video capture driver interface" -.Sh DESCRIPTION -The -.Nm -driver defined a video capture interface. -The -.Nm -driver is no longer in the tree, but other devices support this interface -so the interface portion is documented here. -.Ss Meteor Capture Modes -The -.Nm -capture driver has three modes of capture operation. -.Bl -enum -.It -Conventional -.Xr read 2 -interface. -.Pp -This mode is the easiest and slowest to use. -This mode is great for -capturing a single field at little programming cost. -.Pp -In this mode, the user opens the device, sets the capture mode -and size (see: -.Dv METEORSETGEO -.Xr ioctl 2 -call), and uses the -.Xr read 2 -system -call to load the data into a buffer. -.Pp -.Pa meteor_read.c ; -read 400x300 RGB24 into a viewable PPM file -.Bd -literal -#include -#include - -extern int errno; -#define ROWS 300 -#define COLS 400 -#define SIZE (ROWS * COLS * 4) -main() -{ - struct meteor_geomet geo; - char buf[SIZE],b[4],header[16],*p; - int i,o,c; - - if ((i = open("/dev/meteor0", O_RDONLY)) < 0) { - printf("open failed: %d\\n", errno); - exit(1); - } - /* set up the capture type and size */ - geo.rows = ROWS; - geo.columns = COLS; - geo.frames = 1; - geo.oformat = METEOR_GEO_RGB24 ; - - if (ioctl(i, METEORSETGEO, &geo) < 0) { - printf("ioctl failed: %d\\n", errno); - exit(1); - } - - c = METEOR_FMT_NTSC; - - if (ioctl(i, METEORSFMT, &c) < 0) { - printf("ioctl failed: %d\\n", errno); - exit(1); - } - - c = METEOR_INPUT_DEV0; - - if (ioctl(i, METEORSINPUT, &c) < 0) { - printf("ioctl failed: %d\\n", errno); - exit(1); - } - - if ((c=read(i, &buf[0], SIZE)) < SIZE) { - printf("read failed %d %d %d\\n", c, i, errno); - close(i); - exit(1); - } - close(i); - - if ((o = open("rgb24.ppm", O_WRONLY | O_CREAT, 0644)) < 0) { - printf("ppm open failed: %d\\n", errno); - exit(1); - } - - /* make PPM header and save to file */ - strcpy(&header[0], "P6 400 300 255 "); - header[2] = header[6] = header[10] = header[14] = '\\n'; - write (o, &header[0], 15); - /* save the RGB data to PPM file */ - for (p = &buf[0]; p < &buf[SIZE]; ) { - b[2] = *p++; /* blue */ - b[1] = *p++; /* green */ - b[0] = *p++; /* red */ - *p++; /* NULL byte */ - write(o,&b[0], 3); /* not very efficient */ - } - close(o); - exit(0); -} -.Ed -.It -Memory mapped single capture or unsynchronized continuous capture. -.Pp -The single capture mode is designed for conferencing tools such as -.Nm nv . -These tools need to control the starting of the image capture and also -need several frames a second. -The continuous capture mode is designed -for applications that want free-running data. -.Pp -In this mode, the user opens the device, sets the capture mode -and size (see: -.Dv METEORSETGEO -.Xr ioctl 2 -call), -.Xr mmap 2 Ns s -the frame buffer -memory into the user process space, and issues either the -single-capture or the continuous capture call (see: -.Dv METEORCAPTUR -.Xr ioctl 2 -call) to load the data into the memory mapped buffer. -.Pp -As explained in the -.Dv METEORCAPTUR -.Xr ioctl 2 -call, the single frame capture -.Xr ioctl 2 -will block until the capture is complete, the continuous capture -will return immediately. -.Pp -.Pa meteor_mmap_single_continuous.c -.Bd -literal -#include -#include -#include -#include - -extern int errno; -#define ROWS 480 -#define COLS 640 -#define SIZE (ROWS * COLS * 2) -main() -{ - struct meteor_geomet geo; - char buf[SIZE]; - char *mmbuf; - int i,c; - - if ((i = open("/dev/meteor0", O_RDONLY)) < 0) { - printf("open failed\\n"); - exit(1); - } - - geo.rows = ROWS; - geo.columns = COLS; - geo.frames = 1; - geo.oformat = METEOR_GEO_RGB16 ; - - if (ioctl(i, METEORSETGEO, &geo) < 0) { - printf("ioctl failed: %d\\n", errno); - exit(1); - } - - c = METEOR_FMT_NTSC; - - if (ioctl(i, METEORSFMT, &c) < 0) { - printf("ioctl failed: %d\\n", errno); - exit(1); - } - - c = METEOR_INPUT_DEV0; - - if (ioctl(i, METEORSINPUT, &c) < 0) { - printf("ioctl failed: %d\\n", errno); - exit(1); - } - - mmbuf=(char *)mmap((caddr_t)0, SIZE, PROT_READ, - MAP_SHARED, i, (off_t)0); - -#ifdef SINGLE_MODE - /* single frame capture */ - c = METEOR_CAP_SINGLE ; - ioctl(i, METEORCAPTUR, &c); /* wait for the frame */ - - /* directly access the frame buffer array data in mmbuf */ -#else - /* continuous frame capture */ - c = METEOR_CAP_CONTINOUS ; - ioctl(i, METEORCAPTUR, &c); /* returns immediately */ - - /* directly access the frame buffer array data in mmbuf */ - - c = METEOR_CAP_STOP_CONT ; - ioctl(i, METEORCAPTUR, &c); /* close will also stop capture */ -#endif - - close(i); - exit(0); -} -.Ed -.It -Memory mapped, multi-frame ring buffer synchronize capture. -.Pp -This continuous capture mode is synchronized with the application that -processes up to 32 frames. -This gives the advantages of both single and -continuous capture modes. -.Pp -The kernel notifies the application of a new data by raising an -application defined signal. -The driver also shares a structure with -the application that allows them to communicate which frame has been -written by the kernel and which frame has been read by the application. -.Pp -The shared structure starts on the first page after your data. -The -structure address can be found by calculation: -.Pp -.Dl "(number_rows * number_columns * pixel_depth + 4095) & 0xfffff000" -or -.Dl "((number_rows * number_columns * pixel_depth + 4095)/4096) * 4096" -.Pp -The shared structure is of type -.Va struct meteor_mem . -The two most -important fields are called -.Va active -and -.Va num_active_buf . -.Va active -is a bitmap of frames written by the kernel. -.Va num_active_bufs -is -a count of frames marked in the -.Va active -field. -When a frame is read -in by the driver, the -.Va num_active_bufs -count is tested, if this -count is below the threshold of number of active frames (value -in -.Va meteor_mem Ns 's -.Va hiwat -variable), the bit representing frame -number in the buffer is stored in the -.Va active -variable, the -.Va num_active_bufs -is incremented, the kernel then raises the specified -signal to activate the user application. -The user application's -responsibility when getting the signal is to check the active bitmap -to determine the lowest active frame, use the data as the application -desires, clear the bitmap entry for that frame, and decrement the -.Va num_active_bufs . -If the threshold of number of active frames -.Pq Va hiwat -has been exceeded, no new frames or signal from the kernel will occur -until the -.Va num_active_bufs -is less than or equal to -.Va lowat . -.Pp -The driver loads the frames in a round-robin fashion. -It is expected -that the user removes them in the same order. -The driver does not -check to see if the frame is already active. -.Pp -The -.Va frame_size -and number of frames in the buffer are also provided -to the -.Va meteor_mem -structure, but changing these fields in the -application will not change the operation of the driver. -.Pp -In programming for this mode, the user opens the device, sets the -geometry, -.Xr mmap 2 Ns s -the data/common control structure, then starts the -continuous capture mode. -A special signal catcher is required to -process the frames as they are read by the kernel. -.Pp -When specifying the geometry (see: -.Dv METEORSETGEO -.Xr ioctl 2 -call), -it -is important that the number of frames is set greater than 1. -.Pp -.Pa skeleton_capture_n.c -.Bd -literal -#include -#include -#include -#include -#include - -int video; /* made global if you wish to stop capture in signal handler */ -caddr_t data_frames; -struct meteor_mem *common_mem; -extern int errno; - -#define FRAME_MAX - -void -usr2_catcher() -{ -#ifdef SIGNAL_STOP - struct meteor_capframe capframe; /* for ioctl */ -#endif - char *frame; - - /* find frame */ - frame = (char *) (data_frames + sig_cnt * common_mem->frame_size) ; - - /* add frame processing here */ - /* deactivate frame */ - common_mem->active &= ~(1 << (sig_cnt % 16)); - common_mem->num_active_bufs--; - - /* process next frame on next interrupt */ - sig_cnt = ((sig_cnt+1) % FRAME_MAX); - -#ifdef SIGNAL_STOP - if (some_condition_requiring_stopping) { - capframe.command=METEOR_CAP_STOP_FRAMES; - - if (ioctl(i, METEORCAPFRM, &capframe) < 0) { - printf("METEORCAPFRM failed %d\\n", errno); - exit(1); - } - } -#endif -} - -main() -{ - struct meteor_geomet geo; - int height, width, depth, frames, size; - struct meteor_capframe capframe; - - if ((i = open("/dev/meteor0", O_RDONLY)) < 0) { - printf("open failed\\n"); - exit(1); - } - printf("test %d %d\\n", errno, i); - - height = geo.rows = 120; - width= geo.columns = 320; - frames = geo.frames = FRAME_MAX; - depth = 2; /* 2 bytes per pixel for RGB*/ - - - geo.oformat = METEOR_GEO_RGB16; - - if (ioctl(i, METEORSETGEO, &geo) < 0) { - printf("METEORSETGEO failed %d\\n", errno); - exit(1); - } - - c = METEOR_FMT_NTSC; - - if (ioctl(i, METEORSFMT, &c) < 0) { - printf("ioctl failed: %d\\n", errno); - exit(1); - } - - c = METEOR_INPUT_DEV0; - - if (ioctl(i, METEORSINPUT, &c) < 0) { - printf("ioctl failed: %d\\n", errno); - exit(1); - } - - size = ((width*height*depth*frames+4095)/4096)*4096; - /* add one page after data for meteor_mem */ - data_frames = mmap((caddr_t)0, size + 4096, PROT_READ | PROT_WRITE, - MAP_SHARED, i, (off_t)0); - - if (data_frames == (caddr_t) MAP_FAILED) return (0); - - /* common_mem is located at page following data */ - common_mem = (struct meteor_mem *) (y + size); - - signal(SIGUSR2, usr2_catcher); /* catch new frame message */ - - capframe.command=METEOR_CAP_N_FRAMES; - capframe.signal=SIGUSR2; - capframe.lowat=12; /* must be < hiwat */ - capframe.hiwat=14; /* must be < FRAME_MAX */ - - /* start the sync capture */ - if (ioctl(i, METEORCAPFRM, &capframe) < 0) { - printf("METEORCAPFRM failed %d\\n", errno); - exit(1); - } - - /* this is the background working area, or you can sleep */ - - - /* to stop capture */ - capframe.command=METEOR_CAP_STOP_FRAMES; - - if (ioctl(i, METEORCAPFRM, &capframe) < 0) { - printf("METEORCAPFRM failed %d\\n", errno); - exit(1); - } -} -.Ed -.El -.Ss Meteor IOCTL Call and Parameters -The -.Nm -capture driver has -.Xr ioctl 2 -requests for capturing, reading card -status, for setting and reading the geometry, and for setting and reading the -attributes. -.Pp -.Bf -symbolic -IT IS VERY IMPORTANT TO CHECK FOR ERRORS ON THESE RETURNING IOCTLs. -.Ef -Errors indicate that something is very wrong with the -.Xr ioctl 2 -and the -application should not attempt to proceed further with capturing. -The -.Nm -capture driver still makes attempts to stop the next capture step if -an error occurred in a previous step but was ignored by the application -programmer. -.Bl -enum -.It -.Xr ioctl 2 -requests -.Dv METEORSETGEO -and -.Dv METEORGETGEO -.Pp -.Dv METEORSETGEO -and -.Dv METEORGETGEO -are used to set and read the input -size, input device, and output format for frame capture. -.Pp -These -.Xr ioctl 2 -routines use the -.Va meteor_geomet -structure that has the -following entries: -.Bl -tag -width columns -.It Va rows -number of rows (lines high) in output image -.It Va columns -number of pixels in a row (width) in output image -.It Va frames -number of frames in buffer. -Should be 1, unless using -the multi-framed synchronous capture mode -.Pq Dv METEORCAPFRM -which REQUIRES frames to be larger than 1. -.Pp -Note: if -.Va rows , columns -or -.Va frames -is not changed, then -the existing values are used. -The system defaults -is 640x480x1. -.It Va oformat -you may choose one of the following output format: -.Bl -tag -width METEOR_GEO_YUV_PACKED -.It Dv METEOR_GEO_RGB16 -(RGB 16 bits xrrrrrgg gggbbbbb default) -.It Dv METEOR_GEO_RGB24 -(RGB 24 bits packed in 32 bits: -00000000 rrrrrrrr gggggggg bbbbbbbb) -.It Dv METEOR_GEO_YUV_PACKED -(4-2-2 YUV 16 bits packed byte format: -u0 y0 v0 y1 u1 y2 v1 y3 ...) -.It Dv METEOR_GEO_YUV_PLANER -(4-2-2 YUV 16 bits planer format: -rows * columns bytes of y -rows * column / 4 bytes of even u -rows * column / 4 bytes of even v -rows * column / 4 bytes of odd u -rows * column / 4 bytes of odd v) -.El -.El -.Pp -The -.Dv METEORSETGEO -.Xr ioctl 2 -will fail if more than one entry from a category -is selected. -It is highly recommended that a -.Dv METEORSETGEO -is done -before capturing data because you cannot guarantee the initial mode -the card. -.Pp -The -.Dv METEORSETGEO -will also attempt to reallocate a new contiguous -kernel buffer if the new geometry exceeds the old geometry. -On the -other hand, if the new geometry will fit in the existing buffer, -the existing buffer is used. -.Pp -If -.Dv METEORSETGEO -fails the -.Xr ioctl 2 -will return a value of -1 and the -external variable -.Va errno -will be set to: -.Bl -tag -width Er -.It Bq Er EINVAL -invalid -.Va meteor_geomet -structure pointer, -.Va rows , columns , frames -were invalid. -.It Bq Er ENOMEM -could not allocate the contiguous block. -.El -.It -.Xr ioctl 2 -requests -.Dv METEORSFMT -and -.Dv METEORGFMT -.Pp -.Dv METEORSFMT -and -.Dv METEORGFMT -are used to set and read the camera input -standard format. -.Pp -Possible formats are: -.Pp -.Bl -tag -width METEOR_FMT_AUTOMODE -compact -.It Dv METEOR_FMT_NTSC -NTSC (default mode) -.It Dv METEOR_FMT_PAL -PAL -.It Dv METEOR_FMT_SECAM -SECAM -.It Dv METEOR_FMT_AUTOMODE -Autodetect. -.El -.It -.Xr ioctl 2 -requests -.Dv METEORSINPUT -and -.Dv METEORGINPUT -.Pp -.Dv METEORSINPUT -and -.Dv METEORGINPUT -are used to set and read the camera -input device. -Using the DB9 connector on the -.Tn Meteor -card, 4 input -devices can be connected and an input camera can be selected with this -.Xr ioctl 2 . -.Pp -Possible formats are: -.Pp -.Bl -tag -width METEOR_INPUT_DEV_SVIDEO -compact -.It Dv METEOR_INPUT_DEV0 -(default if none specified) -.It Dv METEOR_INPUT_DEV_RCA -(same as METEOR_INPUT_DEV0) -.It Dv METEOR_INPUT_DEV1 -.It Dv METEOR_INPUT_DEV2 -.It Dv METEOR_INPUT_DEV_SVIDEO -(same as METEOR_INPUT_DEV2) -.El -.It -.Xr ioctl 2 -request -.Dv METEORSTATUS -.Pp -.Dv METEORSTATUS -is used to read the status of the -.Tn Meteor -capture card -and returns the following information: -.Bl -column "METEOR_STATUS_ID_MASK" "\&" -.It Dv METEOR_STATUS_ID_MASK " 4 bit ID of the SAA7196 scaler chip." -.Pp -.It Dv METEOR_STATUS_DIR " 0 = scaler uses internal source." -.It " 1 = scaler uses external data of expansion bus." -.Pp -.It Dv METEOR_STATUS_OEF " 0 = even field detected." -.It " 1 = odd field detected." -.Pp -.It Dv METEOR_STATUS_SVP " VRAM Port state:" -.It " 0 = inputs HFL and INCADDR inactive." -.It " 1 = inputs HFL and INCADDR active." -.Pp -.It Dv METEOR_STATUS_STTC " 0 = TV horizontal time constant (slow)." -.It " 1 = VCR horizontal time constant (fast)." -.Pp -.It Dv METEOR_STATUS_HCLK " 0 = Horizontal Phase Lock Loop locked." -.It " 1 = Horizontal Phase Lock Loop unlocked." -.Pp -.It Dv METEOR_STATUS_FIDT " 0 = 50 Hz Field detected." -.It " 1 = 60 Hz Field detected." -.Pp -.It Dv METEOR_STATUS_ALTD " 0 = no line alternating color burst detected." -.It " 1 = line alternating color burst detected (PAL/SECAM)." -.Pp -.It Dv METEOR_STATUS_CODE " 0 = no color information detected." -.It " 1 = color information detected." -.El -.It -.Xr ioctl 2 -request -.Dv METEORCAPTUR -.Pp -.Dv METEORCAPTUR -is used to single frame capture or unsynchronized -continuous capture. -.Pp -The single frame capture -.Xr ioctl 2 -request will return only after a -frame has been captured and transferred to the frame buffer. -.Pp -The unsynchronized continuous capture will return immediately and -data is directly deposited into the buffer when it is available. -Since this is unsynchronized, it is possible the data is being -written by the kernel while being read by the application. -.Pp -These -.Xr ioctl 2 -routines use the following settings: -.Pp -.Bl -tag -width METEOR_CAP_CONTINOUS -compact -.It Dv METEOR_CAP_SINGLE -capture one frame -.It Dv METEOR_CAP_CONTINOUS -unsynchronized continuous capture -.It Dv METEOR_CAP_STOP_CONT -stop the unsynchronized continuous -capture -.El -.Pp -If -.Dv METEORCAPTUR -fails the -.Xr ioctl 2 -will return a value of -1 and the -external variable -.Va errno -will be set to: -.Bl -tag -width Er -.It Bq Er EINVAL -invalid capture command value -.It Bq Er ENXIO -there is not internal buffer to hold the frame. -This indicates the previous set geometry -.Xr ioctl 2 -failed. -.It Bq Er EIO -card is already capturing. -.El -.It -.Xr ioctl 2 -request -.Dv METEORCAPFRM -.Pp -.Dv METEORCAPFRM -is used for synchronous capture of multiple frames. -.Pp -This -.Xr ioctl 2 -routine uses the -.Va meteor_capture -structure that has the -following entries: -.Bl -tag -width command -.It Va command -possible values for -.Va command -are: -.Bl -tag -width METEOR_CAP_STOP_FRAMES -.It Dv METEOR_CAP_STOP_FRAMES -stop the capture; does not use the -other variable in structure. -.It Dv METEOR_CAP_N_FRAMES -start the capture using the other -variables in the structure as inputs -.El -.It Va signal -signal to send to application when a new -frame has been captured. -This signal will -only be raised if the captured frame is saved. -.It Va lowat -see below -.It Va hiwat -see below -.El -.Pp -When a new frame is completed, the driver checks the current unread -frame count stored in shared variable (the shared variable is stored -in the -.Va meteor_mem -structure) -.Va num_active_buf ; -if the count is larger -than -.Va hiwat , -the driver will not store any new frames and will not -send capture signal to the user application until the -.Va num_active_buf -is lower than -.Va lowat . -.Pp -If -.Dv METEORCAPFRM -fails the -.Xr ioctl 2 -will return a value of -1 and the -external variable -.Va errno -will be set to: -.Bl -tag -width Er -.It Bq Er EINVAL -invalid meteor_geomet structure pointer or bad command. -.It Bq Er ENXIO -there is not internal buffer to hold the frame. -This indicates the previous set geometry -.Xr ioctl 2 -failed. -.It Bq Er EIO -card is already capturing. -.El -.It -.Xr ioctl 2 -requests -.Dv METEORSCHCV -and -.Dv METEORGCHCV -.Pp -.Dv METEORSCHCV -and -.Dv METEORGCHCV -are used to set and get the chrominance -gain control and effects the UV output amplitude. -.Pp -If -.Dv METEORSCHCV -or -.Dv METEORGCHCV -fails the -.Xr ioctl 2 -will return a value -of -1 and the external variable -.Va errno -will be set to: -.Bl -tag -width Er -.It Bq Er EINVAL -invalid unsigned char pointer. -.El -.It -.Xr ioctl 2 -requests -.Dv METEORGHUE -and -.Dv METEORSHUE -.Pp -.Dv METEORGHUE -and -.Dv METEORSHUE -are used to get and set the hue. -The -signed character has legal values are from +127 which represent -+178.6 degrees to -128 which represents -180 degrees. -.Pp -If -.Dv METEORGHUE -or -.Dv METEORSHUE -fails the -.Xr ioctl 2 -will return a value of --1 and the external variable -.Va errno -will be set to: -.Bl -tag -width Er -.It Bq Er EINVAL -invalid signed char pointer. -.El -.It -.Xr ioctl 2 -requests -.Dv METEORSCOUNT -and -.Dv METEORGCOUNT -.Pp -.Dv METEORGCOUNT -is used to get the count of frame errors, DMA errors and -count of the number of frames captured that have occurred since -the device was opened. -.Dv METEORSCOUNT -can be used to reinitialize the -counters. -.Pp -This -.Xr ioctl 2 -routines use the -.Va meteor_counts -structure that has the -following entries: -.Bl -tag -width frame_count -.It Va fifo_errors -number of FIFO errors since device was opened. -.It Va dma_errors -number of DMA errors since device was opened. -.It Va frame_count -number of frames captured since device was opened. -.El -.Pp -If -.Dv METEORSCOUNT -or -.Dv METEORGCOUNT -fails the -.Xr ioctl 2 -will return a value -of -1 and the external variable -.Va errno -will be set to: -.Bl -tag -width Er -.It Bq Er EINVAL -invalid meteor_counts structure pointer. -.El -.El -.Sh AUTHORS -.An Jim Lowe Aq Mt james@miller.cs.uwm.edu -.An Mark Tinguely Aq Mt tinguely@plains.nodak.edu -.Sh BUGS -The -.Nm -driver no longer works at all. diff --git a/share/man/man4/mk48txx.4 b/share/man/man4/mk48txx.4 deleted file mode 100644 index 6cf008d2b5f..00000000000 --- a/share/man/man4/mk48txx.4 +++ /dev/null @@ -1,225 +0,0 @@ -.\" $NetBSD: mk48txx.4,v 1.16 2009/04/10 17:14:07 joerg Exp $ -.\" -.\" Copyright (c) 2000, 2002 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. -.\" -.\" $FreeBSD: stable/11/share/man/man4/mk48txx.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd December 25, 2009 -.Dt MK48TXX 4 -.Os -.Sh NAME -.Nm mk48txx -.Nd -.Tn Mostek -time-of-day clock driver -.Sh SYNOPSIS -.In sys/eventhandler.h -.In sys/lock.h -.In sys/mutex.h -.In dev/mk48txx/mk48txxvar.h -.Pp -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device mk48txx" -.Ed -.Sh DESCRIPTION -The -.Nm -driver is a back-end for several models of -.Tn Mostek -time-of-day clock chips. -It provides access methods to retrieve and set date and time for use with the -.Dq Li clock -KOBJ interface. -.Pp -To tie an instance of this device to the system, use the -.Fn mk48txx_attach -function and the mk48txx_softc structure defined as follows: -.Pp -.Ft "int" -.Fn mk48txx_attach "device_t dev" -.Bd -literal -typedef uint8_t (*mk48txx_nvrd_t)(device_t dev, int off); -typedef void (*mk48txx_nvwr_t)(device_t dev, int off, uint8_t v); -.Ed -.Bd -literal -struct mk48txx_softc { - struct resource sc_res; - struct mtx sc_mtx; - eventhandler_tag sc_wet; - const char *sc_model; - bus_size_t sc_nvramsz; - bus_size_t sc_clkoffset; - u_int sc_year0; - u_int sc_flag; - mk48txx_nvrd_t sc_nvrd; - mk48txx_nvwr_t sc_nvwr; -}; -.Ed -.Bl -tag -width indent -.It Fa sc_res -The bus resource used for accessing the chip's non-volatile memory -.Pq including the clock registers , -which must be supplied by the front-end when using the default access methods -.Pq see below . -Otherwise this member is optional. -.It Fa sc_mtx -The hardware mutex used when accessing the chip's non-volatile memory -.Pq including the clock registers , -which must be initialized with -.Dv MTX_DEF -by the front-end. -.It Fa sc_wet -The event handler tag for the watchdog functionality, -which is registered by the -.Fn mk48txx_attach -function if supported by the chip and specified as part of the -machine-dependent features -.Pq see below . -.It Fa sc_model -The chip model which this instance should serve. -This member must be set to one of -.Dq mk48t02 , -.Dq mk48t08 , -.Dq mk48t18 , -or -.Dq mk48t59 -by the front-end. -.It Fa sc_nvramsz -The size of the non-volatile RAM in the -.Tn Mostek -chip, -which is set by the -.Fn mk48txx_attach -function. -.It Fa sc_clkoffset -The offset into the control registers of the -.Tn Mostek -chip, -which is set by the -.Fn mk48txx_attach -function. -.It Fa sc_year0 -The year offset to be used with the -.Sq year -counter of the clock, -which must be set by the front-end. -This value is generally dependent on the system configuration in which -the clock device is mounted. -For instance, on -.Tn Sun Microsystems -machines the convention is to have clock's two-digit year represent -the year since 1968. -.It Fa sc_flag -This flag is used to specify machine-dependent features. -The following flags are supported: -.Bl -tag -width ".Dv MK48TXX_WDOG_ENABLE_WDS" -.It Dv MK48TXX_NO_CENT_ADJUST -If the resulting date retrieved with the -.Dq Li clock_gettime() method -would be earlier than January 1, 1970, -the driver will assume that the chip's year counter actually represents a -year in the 21st century. -This behavior can be overridden by setting this flag, -which causes the -.Nm -driver to respect the clock's century bit instead. -.It Dv MK48TXX_WDOG_REGISTER -When this flag is set, -the -.Nm -driver will register as a watchdog via the interface defined in -.Xr watchdog 9 -if supported by the specific chip model. -.It Dv MK48TXX_WDOG_ENABLE_WDS -When this flag is set, -the -.Nm -driver will set the watchdog steering -.Pq WDS -bit when enabling the watchdog functionality of the chip. -enabled -.Pq see the chip documentation for further information regarding the WDS bit . -.El -.It Fa sc_nvread -.It Fa sc_nvwrite -These members specify the access methods for reading respectively writing -clock device registers. -The default, -when -.Dv NULL -is passed as an access method, -is to access the chip memory -.Pq and clock registers -as if they were direct-mapped using the specified bus resource. -.Pp -Otherwise, the driver will call the respective function supplied by the -front-end to perform the access, -passing it the offset -.Va off -of the chip memory -.Pq or clock register -location to be read from or written to, respectively. -.El -.Sh HARDWARE -The following models are supported: -.Pp -.Bl -tag -width indent -offset indent -compact -.It Tn Mostek MK48T02 -.It Tn Mostek MK48T08 -.It Tn Mostek MK48T18 -.It Tn Mostek MK48T59 -.El -.Sh SEE ALSO -.Xr intro 4 , -.Xr watchdog 9 -.Sh HISTORY -The -.Nm mk48txx -driver appeared in -.Nx 1.5 . -The first -.Fx -version to include it was -.Fx 5.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written for -.Nx -by -.An Paul Kranenburg Aq Mt pk@NetBSD.org . -It was ported to -.Fx -by -.An Thomas Moestl Aq Mt tmm@FreeBSD.org -and later on improved by -.An Marius Strobl Aq Mt marius@FreeBSD.org . diff --git a/share/man/man4/nand.4 b/share/man/man4/nand.4 deleted file mode 100644 index 5635dc95474..00000000000 --- a/share/man/man4/nand.4 +++ /dev/null @@ -1,145 +0,0 @@ -.\" -.\" Copyright (c) 2012 The FreeBSD Foundation -.\" All rights reserved. -.\" -.\" This documentation was written by Semihalf under sponsorship from -.\" the FreeBSD Foundation. -.\" -.\" 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: stable/11/share/man/man4/nand.4 301589 2016-06-08 08:50:35Z trasz $ -.\" -.Dd March 8, 2012 -.Dt NAND 4 -.Os -.Sh NAME -.Nm nand -.Nd NAND Flash framework -.Sh SYNOPSIS -.Cd "device nand" -.Sh DESCRIPTION -The -.Fx -.Nm -framework consists of a set of interfaces that aim to provide an extensible, -object oriented environement for NAND controllers and NAND Flash memory chips -from various hardware vendors, and to allow for uniform and flexible -management of the NAND devices. -It comprises of the following major components: -.Bl -bullet -.It -NAND Flash controller (NFC) interface. -.Pp -Defines methods which allow to send commands as well as send/receive data -between the controller and a NAND chip. -Back-end drivers for specific NAND -controllers plug into this interface and implement low-level routines for a -given NAND controller. -.Pp -This layer implements basic functionality of a NAND Flash controller. -It allows to send command and address to chip, drive CS (chip select line), -as well as read/write to the selected NAND chip. -This layer is independent of -NAND chip devices actually connected to the controller. -.It -NAND chip interface. -.Pp -Provides basic operations like read page, program page, erase block. -Currently three generic classes of drivers are available, which provide -support for the following chips: -.Bl -bullet -.It -large page -.It -small page -.It -ONFI-compliant -.El -.Pp -This layer implements basic operations to be performed on a NAND chip, like -read, program, erase, get status etc. -Since these operations use specific -commands (depending on the vendor), each chip has potentially its own -implementation of the commands set. -.Pp -The framework is extensible so it is also possible to create a custom command -set for a non standard chip support. -.It -NANDbus. -.Pp -This layer is responsible for enumerating NAND chips in the system and -establishing the hierarchy between chips and their supervising controllers. -.Pp -Its main purpose is detecting type of NAND chips connected to a given chip -select (CS line). -It also allows manages locking access to the NAND -controller. -NANDbus passes requests from an active chip to the chip controller. -.It -NAND character / GEOM device. -.Pp -For each NAND chip found in a system a character and GEOM devices are created -which allows to read / write directly to a device, as well as perform other -specific operations (like via ioctl). -.Pp -There are two GEOM devices created for each NAND chip: -.Bl -bullet -.It -raw device -.It -normal device -.El -.Pp -Raw device allows to bypass ECC checking when reading/writing to it, while -normal device always uses ECC algorithm to validate the read data. -.Pp -NAND character devices will be created for each NAND chip detected while -probing the NAND controller. -.El -.Sh SEE ALSO -.Xr libnandfs 3 , -.Xr gnand 4 , -.Xr nandsim 4 , -.Xr nandfs 5 , -.Xr makefs 8 , -.Xr mount_nandfs 8 , -.Xr nandfs 8 , -.Xr nandsim 8 , -.Xr nandtool 8 , -.Xr newfs_nandfs 8 , -.Xr umount_nandfs 8 -.Sh STANDARDS -Open NAND Flash Interface Working Group -.Pq Vt ONFI . -.Sh HISTORY -The -.Nm -framework support first appeared in -.Fx 10.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -framework was designed and developed by -.An Grzegorz Bernacki . -This manual page was written by -.An Rafal Jaworowski . diff --git a/share/man/man4/nandsim.4 b/share/man/man4/nandsim.4 deleted file mode 100644 index ec25a546f86..00000000000 --- a/share/man/man4/nandsim.4 +++ /dev/null @@ -1,93 +0,0 @@ -.\" -.\" Copyright (c) 2012 The FreeBSD Foundation -.\" All rights reserved. -.\" -.\" This documentation was written by Semihalf under sponsorship from -.\" the FreeBSD Foundation. -.\" -.\" 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: stable/11/share/man/man4/nandsim.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd March 8, 2012 -.Dt NANDSIM 4 -.Os -.Sh NAME -.Nm nandsim -.Nd NAND Flash simulator driver -.Sh SYNOPSIS -.Cd "device nand" -.Cd "device nandsim" -.Cd "options ALQ" -.Sh DESCRIPTION -The -.Nm -is part of the -.Fx -NAND framework -.Xr nand 4 -and can be characterized with the following highlights: -.Bl -bullet -.It -plugs into the -.Xr nand 4 -framework APIs as if it were a hardware controller (hanging on the nexus bus) -with real NAND chips connected to it -.It -physically part of the kernel code (either statically linked into the kernel -image or built as a module) -.It -controlled with a user space program -.Xr nandsim 8 -.El -.Pp -From the user perspective, the -.Nm -allows for imitating ONFI-compliant NAND Flash devices as if they were -attached to the system via a virtual controller. -.Pp -Some -.Nm -features rely on the ability to log contents to a file, which is achieved -through the -.Xr alq 9 -facility. -.Sh SEE ALSO -.Xr nand 4 , -.Xr nandsim.conf 5 , -.Xr nandsim 8 -.Sh STANDARDS -Open NAND Flash Interface Working Group -.Pq Vt ONFI . -.Sh HISTORY -The -.Nm -support first appeared in -.Fx 10.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -kernel driver was developed by -.An Grzegorz Bernacki . -This manual page was written by -.An Rafal Jaworowski . diff --git a/share/man/man4/ncr.4 b/share/man/man4/ncr.4 deleted file mode 100644 index a20418cbfdd..00000000000 --- a/share/man/man4/ncr.4 +++ /dev/null @@ -1,82 +0,0 @@ -.\" -.\" 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. -.\" -.\" $FreeBSD$ -.\" -.Dd August 19, 2004 -.Dt NCR 4 -.Os -.Sh NAME -.Nm ncr -.Nd NCR 53C8xx SCSI driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device pci" -.Cd "device scbus" -.Cd "device ncr" -.Ed -.Sh HARDWARE -The -.Nm -driver provides support for the following NCR/Symbios SCSI controller -chips: -.Pp -.Bl -bullet -compact -.It -.Tn 53C810 -.It -.Tn 53C810A -.It -.Tn 53C815 -.It -.Tn 53C820 -.It -.Tn 53C825A -.It -.Tn 53C860 -.It -.Tn 53C875 -.It -.Tn 53C875J -.It -.Tn 53C885 -.It -.Tn 53C895 -.It -.Tn 53C895A -.It -.Tn 53C896 -.It -.Tn 53C1510D -.El -.Sh SEE ALSO -.Xr cd 4 , -.Xr ch 4 , -.Xr da 4 , -.Xr intro 4 , -.Xr sa 4 , -.Xr scsi 4 , -.Xr sym 4 diff --git a/share/man/man4/ncv.4 b/share/man/man4/ncv.4 deleted file mode 100644 index c7bdc30c523..00000000000 --- a/share/man/man4/ncv.4 +++ /dev/null @@ -1,131 +0,0 @@ -.\" Copyright (C) 2003 The FreeBSD Project. All rights reserved. -.\" Copyright (c) 2003 Noriaki Mitsunaga. 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$ -.\" -.Dd August 10, 2004 -.Dt NCV 4 -.Os -.Sh NAME -.Nm ncv -.Nd "NCR 53C500 based SCSI host adapter driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device scbus" -.Cd "device ncv" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -ncv_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides access to the -.Tn SCSI -bus -connected to an NCR 53C500 based -PC-Card -.Tn SCSI -host adapter or an Adaptec AHA-2920 on the -.Tn PCI -bus. -.Sh HARDWARE -The following devices are currently supported by the -.Nm -driver: -.Pp -.Bl -bullet -compact -.It -I-O DATA PCSC-DV -.It -KME KXLC002 (TAXAN ICD-400PN, etc.), KXLC004, and UJDCD450 -.It -Macnica Miracle SCSI-II mPS110 -.It -Media Intelligent MSC-110, MSC-200 -.It -New Media Corporation BASICS SCSI -.It -Qlogic Fast SCSI -.It -RATOC REX-9530, REX-5572 (SCSI only) -.El -.Sh DIAGNOSTICS -The following error messages are sometimes returned: -.Bl -diag -.It "SCSI BUS RESET failed" -Usually returned when a failure occurs during -the bus reset. -.It "CMD_NOP failed" -No operation or the operation has failed. -.It "CMD_NOP|CMD_DMA" -A failure occurred during the -.Tn DMA -read/write operations. -.El -.Pp -The -.Nm -driver should return -.Bq Er ENODEV -when any of the previously noted failures occur. -.Sh SEE ALSO -.Xr cardbus 4 , -.Xr cd 4 , -.Xr da 4 , -.Xr pccard 4 , -.Xr sa 4 , -.Xr scsi 4 -.Sh HISTORY -The -.Nm -device driver has been developed for -.Nx Ns / Ns Tn pc98 -and ported to -.Fx . -The -.Nm -driver first appeared in -.Fx 2.2 -with -.Tn PAO -and merged in -.Fx 4.2 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Naofumi Honda . -This manual page was written by -.An Tom Rhodes Aq Mt trhodes@FreeBSD.org -and -.An Noriaki Mitsunaga Aq Mt non@FreeBSD.org . diff --git a/share/man/man4/netmap.4 b/share/man/man4/netmap.4 index 3c286a0958e..08949493a63 100644 --- a/share/man/man4/netmap.4 +++ b/share/man/man4/netmap.4 @@ -827,7 +827,7 @@ On .Xr em 4 , .Xr iflib 4 .Pq providing Xr igb 4 and Xr em 4 , -.Xr ixgbe 4 , +.Xr ix 4 , .Xr ixl 4 , .Xr re 4 , .Xr vtnet 4 . diff --git a/share/man/man4/ng_bt3c.4 b/share/man/man4/ng_bt3c.4 deleted file mode 100644 index d3942ea1d7f..00000000000 --- a/share/man/man4/ng_bt3c.4 +++ /dev/null @@ -1,132 +0,0 @@ -.\" Copyright (c) 2001-2002 Maksim Yevmenkin -.\" 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. -.\" -.\" $Id: ng_bt3c.4,v 1.3 2003/09/14 23:28:51 max Exp $ -.\" $FreeBSD$ -.\" -.Dd December 17, 2004 -.Dt NG_BT3C 4 -.Os -.Sh NAME -.Nm ng_bt3c -.Nd Netgraph node type that is also a 3Com Bluetooth PC card driver -.Sh SYNOPSIS -.In sys/types.h -.In netgraph/bluetooth/include/ng_bt3c.h -.Sh DEPRECATION NOTICE -This driver is scheduled for removal prior to the release of -.Fx 13.0 -.Sh DESCRIPTION -The -.Nm btccc -node type is both a persistent Netgraph node type and a driver for the -3Com Bluetooth PC card (3CRWB6096-HP). -It implements a Bluetooth HCI -UART transport layer as per chapter H4 of the Bluetooth Specification -Book v1.1. -A new node is created when the card is plugged. -.Pp -In order to use the card one -.Em MUST -download the firmware first. -Due to copyright issues the firmware cannot be provided with this driver. -The firmware can be obtained -from the Windows driver package that can be downloaded from the 3Com web -site at no charge. -The firmware name is -.Pa BT3CPCC.BIN . -To load the firmware into the card, use -.Xr bt3cfw 8 . -I am using the original firmware that came with the card on CD-ROM. -.Pp -.Dl "MD5 (BT3CPCC.BIN) = 36170fda56ea9fdbf1702c966f8a97f1" -.Pp -The node has a single hook called -.Dv hook . -Incoming bytes received on the device are re-assembled into HCI frames -(according to the length). -Full HCI frames are sent out on the hook. -HCI frames received on -.Dv hook -are transmitted out. -No modification to the data is performed in either direction. -.Sh HARDWARE -The -.Nm -driver provides support for the 3Com/HP 3CRWB6096-A PCCARD bluetooth adapter. -.Sh HOOKS -This node type supports the following hooks: -.Bl -tag -width ".Va hook" -.It Va hook -single HCI frame contained in single -.Vt mbuf -structure. -.El -.Sh CONTROL MESSAGES -This node type supports the generic control messages, plus the following: -.Bl -tag -width foo -.It Dv NGM_BT3C_NODE_GET_STATE Pq Ic get_state -Returns the current receiving state for the node. -.It Dv NGM_BT3C_NODE_SET_DEBUG Pq Ic set_debug -This command takes an integer argument and sets the current debug level -for the node. -.It Dv NGM_BT3C_NODE_GET_DEBUG Pq Ic get_debug -Returns an integer containing the current debug level for the node. -.It Dv NGM_BT3C_NODE_GET_QLEN Pq Ic get_qlen -This command takes a parameter that specifies queue number and returns -the current length of the queue for the node. -.It Dv NGM_BT3C_NODE_SET_QLEN Pq Ic set_qlen -This command takes two parameters that specify the queue number and -the maximum length of the queue and sets the maximum length of the queue for -the node. -.It Dv NGM_BT3C_NODE_GET_STAT Pq Ic get_stat -Returns various statistic information for the node, such as: number of -bytes (frames) sent, number of bytes (frames) received and number of -input (output) errors. -.It Dv NGM_BT3C_NODE_RESET_STAT Pq Ic reset_stat -Reset all statistic counters to zero. -.It Dv NGM_BT3C_NODE_DOWNLOAD_FIRMWARE -Download card firmware. -.El -.Sh SHUTDOWN -This node shuts down when the corresponding card is un-plugged. -.Sh SEE ALSO -.Xr cardbus 4 , -.Xr netgraph 4 , -.Xr pccbb 4 , -.Xr pcic 4 , -.Xr pccard.conf 5 , -.Xr bt3cfw 8 , -.Xr ngctl 8 -.Sh HISTORY -The -.Nm btccc -node type was implemented in -.Fx 5.0 . -.Sh AUTHORS -.An Maksim Yevmenkin Aq Mt m_evmenkin@yahoo.com -.Sh BUGS -The driver is based on information obtained from -.An Jose Orlando Pereira Aq Mt jop@di.uminho.pt -and disassembled the W2K driver. diff --git a/share/man/man4/nsp.4 b/share/man/man4/nsp.4 deleted file mode 100644 index 613def1a4ad..00000000000 --- a/share/man/man4/nsp.4 +++ /dev/null @@ -1,98 +0,0 @@ -.\" Copyright (c) 2003 Noriaki MITSUNAGA. All rights reserved. -.\" Copyright (c) 2003 Hideyuki KURASHINA. 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: stable/11/share/man/man4/nsp.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd August 8, 2004 -.Dt NSP 4 -.Os -.Sh NAME -.Nm nsp -.Nd "Workbit Ninja SCSI-3 based PC-Card SCSI host adapter driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device scbus" -.Cd "device nsp" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -nsp_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides access to the -.Tn SCSI -bus connected to a PC-Card -.Tn SCSI -host adapter based on a Ninja SCSI-3 controller by Workbit. -.Sh HARDWARE -Controllers supported by the -.Nm -driver include: -.Pp -.Bl -bullet -compact -.It -Alpha-Data AD-PCS201 -.It -I-O DATA CBSC16 -.El -.Sh SEE ALSO -.Xr cd 4 , -.Xr ch 4 , -.Xr da 4 , -.Xr intro 4 , -.Xr pccard 4 , -.Xr sa 4 , -.Xr scsi 4 -.Sh HISTORY -The -.Nm -driver has been developed for -.Nx Ns / Ns Tn pc98 -and ported for -.Fx . -It first appeared in -.Fx 3.4 -with PAO3 and merged in -.Fx 4.2 . -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An Naofumi HONDA . -.Pp -This manual page was written by -.An Noriaki MITSUNAGA Aq Mt non@FreeBSD.org -and -.An Hideyuki KURASHINA Aq Mt rushani@FreeBSD.org . -.Sh BUGS -SMIT mode is only supported under OLDCARD now. diff --git a/share/man/man4/pcn.4 b/share/man/man4/pcn.4 deleted file mode 100644 index 91486734f26..00000000000 --- a/share/man/man4/pcn.4 +++ /dev/null @@ -1,199 +0,0 @@ -.\" Copyright (c) Berkeley Software Design, Inc. -.\" 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: stable/11/share/man/man4/pcn.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24, 2018 -.Dt PCN 4 -.Os -.Sh NAME -.Nm pcn -.Nd "AMD PCnet/PCI Fast Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device miibus" -.Cd "device pcn" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_pcn_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for PCI Ethernet adapters and embedded -controllers based on the AMD PCnet/FAST, PCnet/FAST+, PCnet/FAST III, -PCnet/PRO and PCnet/Home Ethernet controller chips. -Supported NIC's include the Allied Telesyn AT-2700 family. -.Pp -The PCnet/PCI chips include a 100Mbps Ethernet MAC and support -both a serial and MII-compliant transceiver interface. -They use a bus master DMA and a scatter/gather descriptor scheme. -The AMD chips provide a mechanism for zero-copy receive, -providing good performance in server environments. -Receive address filtering is provided using a single perfect filter entry -for the station address and a 64-bit multicast hash table. -.Pp -The -.Nm -driver supports the following media types: -.Bl -tag -width 10baseTXUTP -.It autoselect -Enable autoselection of the media type and options. -The user can manually override -the autoselected mode by adding media options to -.Xr rc.conf 5 . -.It 10baseT/UTP -Set 10Mbps operation. -The -.Xr ifconfig 8 -.Cm mediaopt -option can also be used to select either -.Sq full-duplex -or -.Sq half-duplex -modes. -.It 100baseTX -Set 100Mbps (Fast Ethernet) operation. -The -.Xr ifconfig 8 -.Cm mediaopt -option can also be used to select either -.Sq full-duplex -or -.Sq half-duplex -modes. -.El -.Pp -The -.Nm -driver supports the following media options: -.Bl -tag -width full-duplex -.It full-duplex -Force full duplex operation. -.It half-duplex -Force half duplex operation. -.El -.Pp -For more information on configuring this device, see -.Xr ifconfig 8 . -.Sh HARDWARE -The -.Nm -driver supports adapters and embedded controllers based on the AMD PCnet/FAST, -PCnet/FAST+, PCnet/FAST III, PCnet/PRO and PCnet/Home Fast Ethernet chips: -.Pp -.Bl -bullet -compact -.It -AMD Am79C971 PCnet-FAST -.It -AMD Am79C972 PCnet-FAST+ -.It -AMD Am79C973/Am79C975 PCnet-FAST III -.It -AMD Am79C976 PCnet-PRO -.It -AMD Am79C978 PCnet-Home -.It -Allied-Telesis LA-PCI -.El -.Sh DIAGNOSTICS -.Bl -diag -.It "pcn%d: couldn't map ports/memory" -A fatal initialization error has occurred. -.It "pcn%d: couldn't map interrupt" -A fatal initialization error has occurred. -.It "pcn%d: watchdog timeout" -The device has stopped responding to the network, or there is a problem with -the network connection (e.g.\& a cable fault). -.It "pcn%d: no memory for rx list" -The driver failed to allocate an mbuf for the receiver ring. -.It "pcn%d: no memory for tx list" -The driver failed to allocate an mbuf for the transmitter ring when -allocating a pad buffer or collapsing an mbuf chain into a cluster. -.It "pcn%d: chip is in D3 power state -- setting to D0" -This message applies only to adapters which support power -management. -Some operating systems place the controller in low power -mode when shutting down, and some PCI BIOSes fail to bring the chip -out of this state before configuring it. -The controller loses all of -its PCI configuration in the D3 state, so if the BIOS does not set -it back to full power mode in time, it will not be able to configure it -correctly. -The driver tries to detect this condition and bring -the adapter back to the D0 (full power) state, but this may not be -enough to return the driver to a fully operational condition. -If -you see this message at boot time and the driver fails to attach -the device as a network interface, you will have to perform a -warm boot to have the device properly configured. -.Pp -Note that this condition only occurs when warm booting from another -operating system. -If you power down your system prior to booting -.Fx , -the card should be configured correctly. -.El -.Sh SEE ALSO -.Xr arp 4 , -.Xr miibus 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Rs -.%T AMD PCnet/FAST, PCnet/FAST+ and PCnet/Home datasheets -.%U http://www.amd.com -.Re -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 4.3 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Bill Paul Aq Mt wpaul@osd.bsdi.com . diff --git a/share/man/man4/rc.4 b/share/man/man4/rc.4 deleted file mode 100644 index 2976e0a3b9a..00000000000 --- a/share/man/man4/rc.4 +++ /dev/null @@ -1,125 +0,0 @@ -.\" -.\" Copyright (c) 2004 Tom Rhodes -.\" 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: stable/11/share/man/man4/rc.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd March 18, 2005 -.Dt RC 4 -.Os -.Sh NAME -.Nm rc -.Nd RISCom/8 multiport card -.Sh SYNOPSIS -.Cd device isa -.Cd device rc -.Sh DESCRIPTION -The -.Tn RISCom/8 -is an eight port -.Tn ISA -.Tn RS-232C -communications multiplexer with a built in -.Tn RISC -processor. -It uses a block of sixteen -.Tn I/O -ports in the range 0x200 to 0x3f0 selectable by on-board -switches or jumpers. -The block must be aligned on a sixteen port boundary. -The jumper-selectable hardware interrupt level may be set to -be detected during system -initialization using settings found in the -.Pa /boot/device.hints -file. -.Pp -This driver is mostly based on the Cirrus Logic CL-CD180 driver. -.Sh HARDWARE -The -.Nm -driver provides support for the -.Tn SDL -Communications -.Tn RISCom/8 -boards. -.Sh DIAGNOSTICS -The following driver specific error messages -may be reported: -.Bl -diag -.It "rc%d channel%d: interrupt-level buffer overflow" -An internal buffer overflow error has occurred on -the listed channel. -The -.Nm -driver will need to be reloaded to correct this. -.It "rc%d: Bad char chan %d" -The channel has obtained a bad set of characters. -.It "rc%d: Got extra chars chan %d" -The -.Nm -driver got more characters than expected on the channel shown. -.It "rc%d: data mismatch chan %d ptr %d (%d != %d)" -Data sent from channel -.Ar %d -to the rx buffer was different then expected. -.It "rc%d: channel %d command timeout, rc.c line: %d" -A command timeout has occurred on the channel, the -.Pa src/sys/dev/rc/rc.c -file can be consulted for more information. -.El -.Sh SEE ALSO -.Xr tty 1 , -.Xr ttyname 3 , -.Xr sio 4 , -.Xr tty 4 , -.Xr device.hints 5 , -.Xr comcontrol 8 , -.Xr getty 8 , -.Xr mutex 9 , -.Xr splx 9 -.Pp -.Pa http://www.sdlcomm.com -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 2.0.5 . -This manual page first appeared in -.Fx 5.3 . -.Sh AUTHORS -This manual page was written by -.An Tom Rhodes Aq Mt trhodes@FreeBSD.org . -.Sh BUGS -The -.Nm -driver code still uses the -.Xr spl 9 -functions. -These should be replaced by -.Xr mutex 9 -functions. -.Pp -The various -.Fn ttyld_* -functions should be documented. diff --git a/share/man/man4/rp.4 b/share/man/man4/rp.4 deleted file mode 100644 index a1a1f9a7406..00000000000 --- a/share/man/man4/rp.4 +++ /dev/null @@ -1,195 +0,0 @@ -.\" Copyright (c) 1995 Comtrol, Inc. -.\" All rights reserved. -.\" -.\" $FreeBSD: stable/11/share/man/man4/rp.4 267938 2014-06-26 21:46:14Z bapt $ -.Dd November 15, 1995 -.Dt RP 4 -.Os -.Sh NAME -.Nm rp -.Nd "driver for Comtrol RocketPort Intelligent Serial Port Cards" -.Sh SYNOPSIS -.Cd "device rp" -.Pp -For ISA cards, you must specify the port address in -.Pa /boot/device.hints : -.Cd hint.rp.0.at="isa" -.Cd hint.rp.0.port="0x100" -.Sh DESCRIPTION -This driver provides a kernel device driver for the -.Tn RocketPort -and -.Tn RocketPort RA -serial boards. -These boards provide 8, 16, or 32 high-speed serial ports -while requiring only 68 bytes of I/O space for all 8, 16, -or 32 ports, and do not require an interrupt channel. -This driver supports up to four -.Tn RocketPort -or -.Tn RocketPort RA -boards in one machine simultaneously. -If you are using four 32 port -.Tn RocketPort -boards, you can put as many as 128 intelligent serial ports -on your system. -.Pp -The -.Nm -driver supports the following speeds: 50, 75, 110, 134, 150, -200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 7200, -14400, 57600, 76800, 115200, and 230400. -(You must use -.Xr termios 4 , -rather than the old style ioctl interface to use non-traditional -speeds.) -.Pp -An open on the -.Nm -driver will block until carrier is present, unless -.Dv O_NONBLOCK -or -.Dv CLOCAL -is set. -.Sh HARDWARE CONFIGURATION -The first -.Tn RocketPort -or -.Tn RocketPort RA -card requires a 68-byte contiguous block of I/O addresses, -starting at one of the following: -0x100h, 0x140h, 0x180h, 0x200h, 0x240h, 0x280h, 0x300h, 0x340h, -0x380h. -The second, third, and fourth -.Tn RocketPort -cards require only a -64-byte contiguous block of I/O addresses, starting at one of the -above address ranges. -The I/O address range used by any of the -.Tn RocketPort -cards must not conflict with any other cards in the system, -including other -.Tn RocketPort -cards. -The starting range of the I/O ports used by each card -must match with the I/O address specified in -.Pa /boot/device.hints . -.Pp -Since the first -.Tn RocketPort -uses 68 I/O addresses, if the first card is -set to use an I/O block starting at 0x100, -it will occupy the I/O ports between 0x100 and 0x143. -This means that the second, third, or fourth -.Tn RocketPort -board may not use the block of addresses starting at 0x140, -since the first three I/O addresses of that range -are used by the first board. -This is an important point to keep in mind. -.Pp -If you have two ISA cards, one installed at 0x100 and the -second installed at 0x180, then you should add the following to -.Pa /boot/device.hints : -.Pp -.Dl hint.rp.0.at="isa" -.Dl hint.rp.0.port="0x100" -.Dl hint.rp.1.at="isa" -.Dl hint.rp.1.port="0x180" -.Pp -The configuration of the -.Tn RocketPort -cards is done via the set of 8 DIP switches, -labeled SW1 on the -.Tn RocketPort -card: -.Bd -literal -offset indent -+-------------------------------+ -| 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | -+-------+-------+---------------+ -| Unused| Card | I/O Port Block| -+-------------------------------+ -.Ed -.Pp -DIP switches 7 and 8 are unused, and must be left on. -.Pp -DIP switches 6 and 5 identify the card number of each -.Tn RocketPort -card. -The first card installed in the system must have its DIP switches set -as card number one; the second card installed in the system must have -its DIP switches set as card number two; and so on. -As shipped from -the factory, DIP switches 6 and 5 are both on by default, indicating -that this is the first card installed on the system: -.Bd -literal -offset indent -DIP Switches -6 5 -=================== -On On First Card -On Off Second Card -Off On Third Card -Off Off Fourth Card -.Ed -.Pp -DIP switches 4, 3, 2, and 1 indicate the I/O address range used by the -first -.Tn RocketPort -card. -If there are more than one -.Tn RocketPort -cards installed in a system, -the second, third and fourth -.Tn RocketPort -cards must -also be set to the I/O address range used by the first -.Tn RocketPort -card; -all cards must have these DIP switches set identically -for proper operation. -As shipped from the factory, DIP switch 4 is on, -and switches 3, 2, and 1 are off by default, -indicating an I/O address range used by the first -card which starts at 0x180 and extends to 0x1C3. -.Bd -literal -offset indent -DIP Switches I/O Address Range -4 3 2 1 Used by the First Card -===================================== -On Off On Off 100-143 -On Off Off On 140-183 -On Off Off Off 180-1C3 -Off On On Off 200-243 -Off On Off On 240-283 -Off On Off Off 280-2C3 -Off Off On Off 300-343 -Off Off Off On 340-383 -Off Off Off Off 380-3C3 -.Ed -.Sh FILES -.Bl -tag -width ".Pa /dev/ttyR[0-4][0-9a-f]" -.It Pa /dev/ttyR[0-4][0-9a-f] -.El -.Sh AUTHORS -.An Theodore Ts'o Aq Mt tytso@mit.edu -.Pp -This driver was written under contract for Comtrol Corporation. -For dealer, distributor and other information regarding Comtrol -.Tn RocketPort , -contact Comtrol Corporation at (800) 926-6876 or send email to -.Aq Mt info@comtrol.com . -To report bugs for this driver, please send email to -.Aq Mt bug-bsdi-rocketport@comtrol.com . -.Sh BUGS -If incoming software flow control is enabled on a 486 or Pentium -machine, and the flow control is very heavily exercised, on rare occasions -a character will get dropped. -This problem does not occur on a 386, and -it is not currently known whether the bug is in the -.Nm -driver -or in the -.Bsx -tty layer. -.\" (Although my bet is that it's in the higher-level tty layer; -.\" given the bugs I found while writing this driver, it's clear -.\" the BSD software flow control code has not been tested very much -.\" at all! -- TYT) diff --git a/share/man/man4/sf.4 b/share/man/man4/sf.4 deleted file mode 100644 index 105b1bfa194..00000000000 --- a/share/man/man4/sf.4 +++ /dev/null @@ -1,217 +0,0 @@ -.\" 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: stable/11/share/man/man4/sf.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24, 2018 -.Dt SF 4 -.Os -.Sh NAME -.Nm sf -.Nd "Adaptec AIC-6915" -.Qq Starfire -PCI Fast Ethernet adapter driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device miibus" -.Cd "device sf" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_sf_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for Adaptec Duralink Fast Ethernet adapters -based on the Adaptec AIC-6915 "Starfire" chipset. -.Pp -The AIC-6915 is a bus master controller with an MII interface. -It -supports high and low priority transmit and receive queues, TCP/IP -checksum offload, multiple DMA descriptor formats and both polling -and producer/consumer DMA models. -The AIC-6915 receive filtering -options include a 16 entry perfect filter, a 512-bit hash table -for multicast addresses, a 512-bit hash table for priority address -matching and VLAN filtering. -An external MII-compliant transceiver -is required for media interfacing. -.Pp -Multiport adapters consist of several AIC-6915 controllers connected -via a PCI to PCI bridge. -Each controller is treated as a separate -interface by the -.Nm -driver. -.Pp -The -.Nm -driver supports the following media types: -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It autoselect -Enable autoselection of the media type and options. -The user can manually override -the autoselected 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 select either -.Ar full-duplex -or -.Ar half-duplex -modes. -.It 100baseTX -Set 100Mbps (Fast Ethernet) operation. -The -.Ar mediaopt -option can also be used to select either -.Ar full-duplex -or -.Ar half-duplex -modes. -.El -.Pp -The -.Nm -driver supports the following media options: -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It full-duplex -Force full duplex operation -.It half-duplex -Force half duplex operation. -.El -.Pp -For more information on configuring this device, see -.Xr ifconfig 8 . -.Sh HARDWARE -Adapters supported by the -.Nm -driver include: -.Pp -.Bl -bullet -compact -.It -ANA-62011 64-bit single port 10/100baseTX adapter -.It -ANA-62022 64-bit dual port 10/100baseTX adapter -.It -ANA-62044 64-bit quad port 10/100baseTX adapter -.It -ANA-69011 32-bit single port 10/100baseTX adapter -.It -ANA-62020 64-bit single port 100baseFX adapter -.El -.Sh SYSCTL VARIABLES -The following variables are available as both -.Xr sysctl 8 -variables and -.Xr loader 8 -tunables: -.Bl -tag -width indent -.It Va dev.sf.%d.int_mod -Maximum amount of time to delay interrupt processing in units of -102.4us. -The accepted range is 0 to 31, the default value is 1 (102.4us). -Value 0 completely disables the interrupt moderation. -The interface does not need to be brought down and up again before -a change takes effect. -.It Va dev.sf.%d.stats -Display lots of useful MAC counters maintained in the driver. -.El -.Sh DIAGNOSTICS -.Bl -diag -.It "sf%d: couldn't map memory" -A fatal initialization error has occurred. -This may -happen if the PCI BIOS not configured the device, which may be because -the BIOS has been configured for a "Plug and Play" operating system. -The "Plug and Play OS" setting in the BIOS should be set to "no" or -"off" in order for PCI devices to work properly with -.Fx . -.It "sf%d: couldn't map ports" -A fatal initialization error has occurred. -This may -happen if the PCI BIOS not configured the device, which may be because -the BIOS has been configured for a "Plug and Play" operating system. -The "Plug and Play OS" setting in the BIOS should be set to "no" or -"off" in order for PCI devices to work properly with -.Fx . -.It "sf%d: couldn't map interrupt" -A fatal initialization error has occurred. -.It "sf%d: no memory for softc struct!" -The driver failed to allocate memory for per-device instance information -during initialization. -.It "sf%d: failed to enable I/O ports/memory mapping!" -The driver failed to initialize PCI I/O port or shared memory access. -This might happen if the card is not in a bus-master slot. -.It "sf%d: watchdog timeout" -The device has stopped responding to the network, or there is a problem with -the network connection (cable). -.El -.Sh SEE ALSO -.Xr altq 4 , -.Xr arp 4 , -.Xr miibus 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr polling 4 , -.Xr vlan 4 , -.Xr ifconfig 8 -.Rs -.%T The Adaptec AIC-6915 Programmer's Manual -.%U http://download.adaptec.com/pdfs/user_guides/aic6915_pg.pdf -.Re -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 3.0 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Bill Paul Aq Mt wpaul@ctr.columbia.edu . diff --git a/share/man/man4/sio.4 b/share/man/man4/sio.4 deleted file mode 100644 index 7ca2ea4b2a6..00000000000 --- a/share/man/man4/sio.4 +++ /dev/null @@ -1,410 +0,0 @@ -.\" 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: com.4,v 1.1 1993/08/06 11:19:07 cgd Exp -.\" $FreeBSD: stable/11/share/man/man4/sio.4 263142 2014-03-14 03:07:51Z eadler $ -.\" -.Dd August 30, 2006 -.Dt SIO 4 -.Os -.Sh NAME -.Nm sio -.Nd "fast interrupt driven asynchronous serial communications interface" -.Sh SYNOPSIS -For standard ISA ports: -.Bd -ragged -offset indent -compact -.Cd "device sio" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.sio.0.at="isa" -.Cd hint.sio.0.port="0x3f8" -.Cd hint.sio.0.flags="0x10" -.Cd hint.sio.0.irq="4" -.Cd hint.sio.1.at="isa" -.Cd hint.sio.1.port="0x2f8" -.Cd hint.sio.1.flags="0x0" -.Cd hint.sio.1.irq="3" -.Ed -.Pp -For AST compatible multiport cards with 4 ports: -.Bd -ragged -offset indent -compact -.Cd "options COM_MULTIPORT" -.Cd "device sio" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.sio.4.at="isa" -.Cd hint.sio.4.port="0x2a0" -.Cd hint.sio.4.flags="0x701" -.Cd hint.sio.5.at="isa" -.Cd hint.sio.5.port="0x2a8" -.Cd hint.sio.5.flags="0x701" -.Cd hint.sio.6.at="isa" -.Cd hint.sio.6.port="0x2b0" -.Cd hint.sio.6.flags="0x701" -.Cd hint.sio.7.at="isa" -.Cd hint.sio.7.port="0x2b8" -.Cd hint.sio.7.flags="0x701" -.Cd hint.sio.7.irq="12" -.Ed -.Pp -For Boca Board compatible multiport cards with 8 ports: -.Bd -ragged -offset indent -compact -.Cd "options COM_MULTIPORT" -.Cd "device sio" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.sio.4.at="isa" -.Cd hint.sio.4.port="0x100" -.Cd hint.sio.4.flags="0xb05" -.Cd "..." -.Cd hint.sio.11.at="isa" -.Cd hint.sio.11.port="0x138" -.Cd hint.sio.11.flags="0xb05" -.Cd hint.sio.11.irq="12" -.Ed -.Pp -For Netmos Nm9845 multiport cards with 6 ports: -.Bd -ragged -offset indent -compact -.Cd "options COM_MULTIPORT" -.Cd "device sio" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.sio.4.at="isa" -.Cd hint.sio.4.port="0xb000" -.Cd hint.sio.4.flags="0x901" -.Cd hint.sio.5.at="isa" -.Cd hint.sio.5.port="0xb400" -.Cd hint.sio.5.flags="0x901" -.Cd hint.sio.6.at="isa" -.Cd hint.sio.6.port="0xb800" -.Cd hint.sio.6.flags="0x901" -.Cd hint.sio.7.at="isa" -.Cd hint.sio.7.port="0xbc00" -.Cd hint.sio.7.flags="0x901" -.Cd hint.sio.8.at="isa" -.Cd hint.sio.8.port="0xc000" -.Cd hint.sio.8.flags="0x901" -.Cd hint.sio.9.at="isa" -.Cd hint.sio.9.port="0xac00" -.Cd hint.sio.9.flags="0x901" -.Cd hint.sio.9.irq="12" -.Ed -.Pp -For Hayes ESP cards: -.Bd -ragged -offset indent -compact -.Cd "options COM_ESP" -.Cd "device sio" -.Cd "..." -.Ed -.Pp -For single port PCI and PCCARD cards: -.Bd -ragged -offset indent -compact -.Cd "device sio" -.Pp -No lines are required in -.Pa /boot/device.hints -for these cards. -.Ed -.Pp -For dual port PCI cards that share an interrupt: -.Bd -ragged -offset indent -compact -.Cd "device sio" -.Cd "options COM_MULTIPORT" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.sio.2.flags="0x201" -.Cd hint.sio.3.flags="0x201" -.Ed -.Pp -Meaning of -.Ar flags : -.Bl -tag -offset indent -compact -width 0x000000 -.It 0x00001 -shared IRQs -.It 0x00002 -disable FIFO -.It 0x00004 -no AST/4 compatible IRQ control register -.It 0x00008 -recover sooner from lost output interrupts -.It 0x00010 -device is potential system console -.It 0x00020 -device is forced to become system console -.It 0x00040 -device is reserved for low-level IO (e.g.\& for remote kernel debugging) -.It 0x00080 -use this port for remote kernel debugging -.It 0x0 Ns Em ?? Ns 00 -minor number of master port -.It 0x10000 -PPS timestamping on CTS instead of DCD -.It 0x20000 -device is assumed to use a 16650A-type (extended FIFO) chip -.El -.Sh DESCRIPTION -The -.Nm -driver provides support for NS8250-, NS16450-, NS16550 and NS16550A-based -.Tn EIA -.Tn RS-232C -.Pf ( Tn CCITT -.Tn V.24 ) -communications interfaces. -The NS8250 and NS16450 have single character -buffers, the NS16550A has 16 character FIFO input and output buffers. -.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, 28800, 38400, 57600, or 115200. -Your hardware may limit your baud rate choices. -.Pp -The driver supports `multiport' cards. -Multiport cards are those that have one or more groups of ports -that share an Interrupt Request (IRQ) line per group. -Shared IRQs on different cards are not supported. -Frequently 4 ports share 1 IRQ; some 8 port cards have 2 groups of 4 ports, -thus using 2 IRQs. -Some cards allow the first 2 serial ports to have separate IRQs per port -(as per DOS PC standard). -.Pp -Some cards have an IRQ control register for each group. -Some cards require special initialization related to such registers. -Only AST/4 compatible IRQ control registers are supported. -Some cards have an IRQ status register for each group. -The driver does not require or use such registers yet. -To work, the control and status registers for a group, if any, -must be mapped to the scratch register (register 7) -of a port in the group. -Such a port is called a -.Em master -port. -.Pp -The driver supports controller based PCI modems. -The 3Com FaxModem PCI and the Advantec 56k Voice Messaging PCI -FaxModem are the only cards supported. -WinModems, softmodems, hfc modems and any other modems that are not -controller based are not supported. -.Pp -The -.Em flags -keyword may be used on each -.Em device sio -line in the kernel configuration file -to disable the FIFO on 16550A UARTs -(see the synopsis). -Disabling the FIFO should rarely be necessary. -.Pp -The -.Em flags -keyword -.Em must -be used for all ports that are part of an IRQ sharing group. -One bit specifies IRQ sharing; another bit specifies whether the port does -.Em not -require AST/4 compatible initialization. -The minor number of the device corresponding a master port -for the group is encoded as a bitfield in the high byte. -The same master port must be specified for all ports in a group. -.Pp -The -.Em irq -specification must be given for master ports -and for ports that are not part of an IRQ sharing group, -and not for other ports. -.Pp -In the synopsis, -.Em flags 0x701 -means that the 8th port (sio7) is the master -port, and that the port is on a multiport card with shared IRQs -and an AST/4 compatible IRQ control register. -.Pp -.Em flags 0xb05 -means that the 12th port (sio11) is the master -port, and that the port is on a multiport card with shared IRQs -and no special IRQ control register. -.Pp -Which port is the master port depends on the card type. -Consult the hardware documentation of your card. -Since IRQ status registers are never used, -and IRQ control registers are only used for AST/4 compatible cards, -and some cards map the control/status registers to all ports in a group, -any port in a group will sometimes do for the master port. -Choose a port containing an IRQ status register for forwards compatibility, -and the highest possible port for consistency. -.Pp -Serial ports controlled by the -.Nm -driver can be used for both `callin' and `callout'. -For each port there is a callin device and a callout device. -The minor number of the callout device is 128 higher -than that of the corresponding callin port. -The callin device is general purpose. -Processes opening it normally wait for carrier -and for the callout device to become inactive. -The callout device is used to steal the port from -processes waiting for carrier on the callin device. -Processes opening it do not wait for carrier -and put any processes waiting for carrier on the callin device into -a deeper sleep so that they do not conflict with the callout session. -The callout device is abused for handling programs that are supposed -to work on general ports and need to open the port without waiting -but are too stupid to do so. -.Pp -The -.Nm -driver also supports an initial-state and a lock-state control -device for each of the callin and the callout "data" devices. -The termios settings of a data device are copied -from those of the corresponding initial-state device -on first opens and are not inherited from previous opens. -Use -.Xr stty 1 -in the normal way on the initial-state devices to program -initial termios states suitable for your setup. -.Pp -The lock termios state acts as flags to disable changing -the termios state. -E.g., to lock a flag variable such as CRTSCTS, use -.Em stty crtscts -on the lock-state device. -Speeds and special characters -may be locked by setting the corresponding value in the lock-state -device to any nonzero value. -E.g., to lock a speed to 115200, use -.Dq Li stty 115200 -on the initial-state device and -.Dq Li stty 1 -on the lock-state device. -.Pp -Correct programs talking to correctly wired external devices -work with almost arbitrary initial states and almost no locking, -but other setups may benefit from changing some of the default -initial state and locking the state. -In particular, the initial states for non (POSIX) standard flags -should be set to suit the devices attached and may need to be -locked to prevent buggy programs from changing them. -E.g., CRTSCTS should be locked on for devices that support -RTS/CTS handshaking at all times and off for devices that do not -support it at all. -CLOCAL should be locked on for devices that do not support carrier. -HUPCL may be locked off if you do not -want to hang up for some reason. -In general, very bad things happen -if something is locked to the wrong state, and things should not -be locked for devices that support more than one setting. -The CLOCAL flag on callin ports should be locked off for logins -to avoid certain security holes, but this needs to be done by -getty if the callin port is used for anything else. -.Sh FILES -.Bl -tag -width /dev/ttyd?.init -compact -.It Pa /dev/ttyd? -for callin ports -.It Pa /dev/ttyd?.init -.It Pa /dev/ttyd?.lock -corresponding callin initial-state and lock-state devices -.Pp -.It Pa /dev/cuad? -for callout ports -.It Pa /dev/cuad?.init -.It Pa /dev/cuad?.lock -corresponding callout initial-state and lock-state devices -.El -.Pp -.Bl -tag -width /etc/rc.d/serial -compact -.It Pa /etc/rc.d/serial -examples of setting the initial-state and lock-state devices -.El -.Pp -The device numbers are made from the set [0-9a-v] so that more than -10 ports can be supported. -.Sh DIAGNOSTICS -.Bl -diag -.It sio%d: silo overflow. -Problem in the interrupt handler. -.El -.Bl -diag -.It sio%d: interrupt-level buffer overflow. -Problem in the bottom half of the driver. -.El -.Bl -diag -.It sio%d: tty-level buffer overflow. -Problem in the application. -Input has arrived faster than the given module could process it -and some has been lost. -.El -.\" .Bl -diag -.\" .It sio%d: reduced fifo trigger level to %d. -.\" Attempting to avoid further silo overflows. -.\" .El -.Sh SEE ALSO -.Xr stty 1 , -.Xr termios 4 , -.Xr tty 4 , -.Xr comcontrol 8 -.Sh HISTORY -The -.Nm -driver is derived from the -.Tn HP9000/300 -.Xr dca 4 -driver and is -.Ud -.Sh BUGS -Data loss may occur at very high baud rates on slow systems, -or with too many ports on any system, -or on heavily loaded systems when crtscts cannot be used. -The use of NS16550A's reduces system load and helps to avoid data loss. -.Pp -Stay away from plain NS16550's. -These are early implementations of the chip with non-functional FIFO hardware. -.Pp -The constants which define the locations -of the various serial ports are holdovers from -.Tn DOS . -As shown, hex addresses can be and for clarity probably should be used instead. -.Pp -Note that on the AST/4 the card's dipswitches should -.Em not -be set to use interrupt sharing. -AST/4-like interrupt sharing is only used when -.Em multiple -AST/4 cards are installed in the same system. -The -.Nm -driver does not support more than 1 AST/4 on one IRQ. -.Pp -The examples in the synopsis are too vendor-specific. diff --git a/share/man/man4/sn.4 b/share/man/man4/sn.4 deleted file mode 100644 index 6795f9924a0..00000000000 --- a/share/man/man4/sn.4 +++ /dev/null @@ -1,115 +0,0 @@ -.\" -.\" Copyright (c) 2000 M. Warner Losh -.\" -.\" 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. -.\" -.\" $FreeBSD$ -.\" -.Dd October 24, 2018 -.Dt SN 4 -.Os -.Sh NAME -.Nm sn -.Nd "Ethernet driver for SMC91Cxx based cards" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device sn" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_sn_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -device driver supports SMC91Cxx based ISA and PCMCIA cards. -.Sh HARDWARE -The -.Nm -driver supports SMC91Cxx based ISA and PCMCIA cards including: -.Pp -.Bl -bullet -compact -.It -3Com Megahertz X-Jack Ethernet PC Card XJ10BT, XJ10BC -.It -3Com Megahertz XJEM and CCEM series: CCEM3288C, CCEM3288T, CCEM3336, -CEM3336C, CCEM3336T, XJEM1144C, XJEM1144T, XJEM3288C, XJEM3288T, XJEM3336 -.It -Farallon EtherMac PC Card 595a -.It -Motorola Mariner Ethernet/Modem PC Card -.It -Ositech Seven of Diamonds Ethernet PC Card -.It -Ositech Jack of Hearts Ethernet/Modem PC Card -.It -Psion Gold Card Netglobal Ethernet PC Card -.It -Psion Gold Card Netglobal 10/100 Fast Ethernet PC Card -.It -Psion Gold Card Netglobal 56k+10Mb Ethernet PC Card -.It -SMC EZEther PC Card (8020BT) -.It -SMC EZEther PC Card (8020T) -.El -.Pp -The -.Nm -driver supports the SMC 91C90, SMC 91C92, SMC 91C94, SMC 91C95, SMC 91C96, -SMC91C100 and SMC 91C100FD chips from SMC. -.Pp -The Farallon EtherWave and EtherMac card came in two varieties. -The -.Xr ep 4 -driver supports the 595 and 895 cards. -These cards have the blue arrow on the front along with a 3Com logo. -The Farallon 595a cards, which have a red arrow on the front, -are also called EtherWave and EtherMac. -They are supported by the -.Nm -driver. -.Sh SEE ALSO -.Xr ed 4 , -.Xr ep 4 , -.Xr intro 4 , -.Xr ng_ether 4 , -.Xr vx 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver appeared in -.Fx 4.0 . diff --git a/share/man/man4/stg.4 b/share/man/man4/stg.4 deleted file mode 100644 index 19651dc2d37..00000000000 --- a/share/man/man4/stg.4 +++ /dev/null @@ -1,110 +0,0 @@ -.\" -.\" Copyright (c) 2003 Bob Bishop -.\" 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: stable/11/share/man/man4/stg.4 159719 2006-06-18 09:53:00Z brueffer $ -.\" -.Dd August 8, 2004 -.Dt STG 4 -.Os -.Sh NAME -.Nm stg -.Nd driver for Future Domain based SCSI controllers -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device scbus" -.Cd "device stg" -.Pp -For one or more ISA cards: -.Cd "device isa" -.Pp -In -.Pa /boot/device.hints : -.Cd hint.stg.0.at="isa" -.Pp -For one or more PCI cards: -.Cd "device pci" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -stg_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for ISA, PCCARD and PCI controllers based on -Future Domain SCSI controller chips including the TMC-16C30, 16C50 and 32C60. -.Sh HARDWARE -Controllers supported by the -.Nm -driver include: -.Pp -.Bl -bullet -compact -.It -Adaptec 2920/A -.It -Future Domain SCSI2GO -.It -Future Domain TMC-18XX/3260 -.It -IBM SCSI PCMCIA Card -.It -ICM PSC-2401 SCSI -.It -MELCO IFC-SC -.It -RATOC REX-5536, REX-5536AM, REX-5536M, REX-9836A -.El -.Pp -Note that the Adaptec 2920C is supported by the -.Xr ahc 4 -driver. -.Sh SEE ALSO -.Xr ahc 4 , -.Xr cd 4 , -.Xr ch 4 , -.Xr da 4 , -.Xr intro 4 , -.Xr sa 4 , -.Xr scsi 4 -.Sh HISTORY -The -.Nm -device driver has been developed for -.Nx Ns / Ns Tn pc98 -and ported for -.Fx . -It first appeared in -.Fx 2.2 -with PAO and merged in -.Fx 4.2 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Naofumi HONDA . diff --git a/share/man/man4/tl.4 b/share/man/man4/tl.4 deleted file mode 100644 index 637762bf7ea..00000000000 --- a/share/man/man4/tl.4 +++ /dev/null @@ -1,193 +0,0 @@ -.\" Copyright (c) 1997, 1998 -.\" 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: stable/11/share/man/man4/tl.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24, 2018 -.Dt TL 4 -.Os -.Sh NAME -.Nm tl -.Nd "Texas Instruments ThunderLAN Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device miibus" -.Cd "device tl" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_tl_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for PCI Ethernet adapters based on the Texas -Instruments ThunderLAN Ethernet controller chip. -.Pp -The ThunderLAN controller has a standard MII interface that supports -up to 32 physical interface devices (PHYs). -It also has a built-in -10baseT PHY hardwired at MII address 31, which may be used in some -10Mbps-only hardware configurations. -In 100Mbps configurations, a -National Semiconductor DP83840A or other MII-compliant PHY may be -attached to the ThunderLAN's MII bus. -If a DP83840A or equivalent -is available, the ThunderLAN chip can operate at either 100Mbps or -10Mbps in either half-duplex or full-duplex modes. -The ThunderLAN's -built-in PHY and the DP83840A also support autonegotiation. -.Pp -The -.Nm -driver supports the following media types: -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It autoselect -Enable autoselection of the media type and options. -Note that this -option is only available on those PHYs that support autonegotiation. -Also, the PHY will not advertise those modes that have been explicitly -disabled using the following media options. -.It 10baseT/UTP -Set 10Mbps operation. -.It 100baseTX -Set 100Mbps (Fast Ethernet) operation. -.It 10base5/AUI -Enable AUI/BNC interface (useful only with the built-in PHY). -.El -.Pp -The -.Nm -driver supports the following media options: -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It full-duplex -Force full duplex operation. -.It half-duplex -Force half duplex operation. -.It hw-loopback -Enable hardware loopback mode. -.El -.Pp -Note that the 100baseTX media type is only available if supported -by the PHY. -For more information on configuring this device, see -.Xr ifconfig 8 . -.Sh HARDWARE -The -.Nm -driver supports Texas Instruments ThunderLAN based -Ethernet and Fast Ethernet adapters including a large -number of Compaq PCI Ethernet adapters. -Also supported are: -.Pp -.Bl -bullet -compact -.It -Olicom OC-2135/2138 10/100 TX UTP adapter -.It -Olicom OC-2325/OC-2326 10/100 TX UTP adapter -.It -Racore 8148 10baseT/100baseTX/100baseFX adapter -.It -Racore 8165 10/100baseTX adapter -.El -.Pp -The -.Nm -driver also supports the built-in Ethernet adapters of -various Compaq Prosignia servers and Compaq Deskpro desktop -machines including: -.Pp -.Bl -bullet -compact -.It -Compaq Netelligent 10 -.It -Compaq Netelligent 10 T PCI UTP/Coax -.It -Compaq Netelligent 10/100 -.It -Compaq Netelligent 10/100 Dual-Port -.It -Compaq Netelligent 10/100 Proliant -.It -Compaq Netelligent 10/100 TX Embedded UTP -.It -Compaq Netelligent 10/100 TX UTP -.It -Compaq NetFlex 3P -.It -Compaq NetFlex 3P Integrated -.It -Compaq NetFlex 3P w/BNC -.El -.Sh DIAGNOSTICS -.Bl -diag -.It "tl%d: couldn't map memory" -A fatal initialization error has occurred. -.It "tl%d: couldn't map interrupt" -A fatal initialization error has occurred. -.It "tl%d: device timeout" -The device has stopped responding to the network, or there is a problem with -the network connection (cable). -.It "tl%d: no memory for rx list" -The driver failed to allocate an mbuf for the receiver ring. -.It "tl%d: no memory for tx list" -The driver failed to allocate an mbuf for the transmitter ring when -allocating a pad buffer or collapsing an mbuf chain into a cluster. -.El -.Sh SEE ALSO -.Xr arp 4 , -.Xr miibus 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 2.2 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Bill Paul Aq Mt wpaul@ctr.columbia.edu . diff --git a/share/man/man4/trm.4 b/share/man/man4/trm.4 deleted file mode 100644 index 3b87c4f56c4..00000000000 --- a/share/man/man4/trm.4 +++ /dev/null @@ -1,110 +0,0 @@ -.\" $NetBSD: trm.4,v 1.3 2001/11/11 05:24:45 tsutsui Exp $ -.\" -.\" Copyright (c) 2002, David E O'Brien. All rights reserved. -.\" Copyright (c) 2001, Izumi Tsutsui. 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$ -.\" -.Dd December 8, 2002 -.Dt TRM 4 -.Os -.Sh NAME -.Nm trm -.Nd Tekram TRM-S1040 ASIC based PCI SCSI host adapter driver -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device scbus" -.Cd "device trm" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -trm_load="YES" -.Ed -.Sh DEPRECATION NOTICE -This driver is scheduled for removal prior to the release of -.Fx 13.0 -.Sh DESCRIPTION -The -.Nm -driver supports PCI SCSI host adapters based on the Tekram TRM-S1040 SCSI ASIC. -.Sh HARDWARE -SCSI controllers supported by the -.Nm -driver include: -.Pp -.Bl -bullet -compact -.It -.Tn Tekram DC-315 -PCI Ultra SCSI adapter without BIOS and internal SCSI connector -.It -.Tn Tekram DC-315U -PCI Ultra SCSI adapter without BIOS -.It -.Tn Tekram DC-395F -PCI Ultra-Wide SCSI adapter with flash BIOS and 68-pin external SCSI connector -.It -.Tn Tekram DC-395U -PCI Ultra SCSI adapter with flash BIOS -.It -.Tn Tekram DC-395UW -PCI Ultra-Wide SCSI adapter with flash BIOS -.It -.Tn Tekram DC-395U2W -PCI Ultra2-Wide SCSI adapter with flash BIOS -.El -.Pp -For the Tekram DC-310/U and DC-390F/U/UW/U2B/U2W/U3W PCI SCSI host adapters, -use the -.Xr sym 4 -driver. -.Sh SEE ALSO -.Xr cd 4 , -.Xr ch 4 , -.Xr da 4 , -.Xr intro 4 , -.Xr sa 4 , -.Xr scsi 4 , -.Xr sym 4 -.Pp -.Pa http://www.tekram.com/ -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was originally written for -.Fx 3.0 Ns /i386 -by -.An Erich Chen -of Tekram Technology, -and ported to -.Fx 5.0 -by -.An Olivier Houchard Aq Mt cognet@FreeBSD.org . diff --git a/share/man/man4/tx.4 b/share/man/man4/tx.4 deleted file mode 100644 index 082e766e96c..00000000000 --- a/share/man/man4/tx.4 +++ /dev/null @@ -1,128 +0,0 @@ -.\" -.\" Copyright (c) 1998-2001 Semen Ustimenko -.\" -.\" 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: stable/11/share/man/man4/tx.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24, 2018 -.Dt TX 4 -.Os -.Sh NAME -.Nm tx -.Nd "SMC 83c17x Fast Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device miibus" -.Cd "device tx" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_tx_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for the Ethernet adapters based on the -SMC 83c17x (EPIC) chips. -These are mostly SMC 9432 series cards. -.Pp -The -.Nm -driver supports the following media types (depending on card's capabilities): -.Bl -tag -width ".Cm 10baseT/UTP" -.It Cm autoselect -Enable autonegotiation (default). -.It Cm 100baseFX -Set 100Mbps (Fast Ethernet) fiber optic operation. -.It Cm 100baseTX -Set 100Mbps (Fast Ethernet) twisted pair operation. -.It Cm 10baseT/UTP -Set 10Mbps on 10baseT port. -.It Cm 10base2/BNC -Set 10Mbps on 10base2 port. -.El -.Pp -The -.Nm -driver supports the following media options: -.Bl -tag -width ".Cm full-duplex" -.It Cm full-duplex -Set full-duplex operation. -.El -.Pp -The -.Nm -driver supports oversized Ethernet packets (up to 1600 bytes). -Refer to the -.Xr ifconfig 8 -man page on setting the interface's MTU. -.Pp -The old -.Dq Li "ifconfig tx0 linkN" -method of configuration is not supported. -.Ss "VLAN (IEEE 802.1Q) support" -The -.Nm -driver supports the VLAN operation (using -.Xr vlan 4 -interfaces) without decreasing the MTU on the -.Xr vlan 4 -interfaces. -.Sh DIAGNOSTICS -.Bl -diag -.It "tx%d: device timeout %d packets" -The device stops responding. -Device and driver reset follows this error. -.It "tx%d: PCI fatal error occurred (%s)" -One of following errors occurred: PCI Target Abort, PCI Master Abort, Data -Parity Error or Address Parity Error. -Device and driver reset follows this error. -.It "tx%d: cannot allocate mbuf header/cluster" -Cannot allocate memory for received packet. -Packet thrown away. -.It "tx%d: can't stop %s DMA" -While resetting, the driver failed to stop the device correctly. -.El -.Sh SEE ALSO -.Xr arp 4 , -.Xr miibus 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh BUGS -The auto-negotiation does not work very well. diff --git a/share/man/man4/txp.4 b/share/man/man4/txp.4 deleted file mode 100644 index 7bf30496d75..00000000000 --- a/share/man/man4/txp.4 +++ /dev/null @@ -1,148 +0,0 @@ -.\" $OpenBSD: txp.4,v 1.8 2001/06/26 02:09:11 pjanzen Exp $ -.\" -.\" Copyright (c) 2001 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. -.\" -.\" $FreeBSD: stable/11/share/man/man4/txp.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24, 2018 -.Dt TXP 4 -.Os -.Sh NAME -.Nm txp -.Nd "3Com 3XP Typhoon/Sidewinder (3CR990) Ethernet interface" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device txp" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_txp_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -interface provides access to the 10Mb/s and 100Mb/s Ethernet networks via the -.Tn 3Com -.Tn Typhoon/Sidewinder -chipset. -.Pp -Basic Ethernet functions are provided as well as support for -.Xr vlan 4 -tag removal and insertion assistance, receive -.Xr ip 4 , -.Xr tcp 4 , -and -.Xr udp 4 -checksum offloading, -and -transmit -.Xr ip 4 -checksum offloading. -There is currently no support for -transmit -.Xr tcp 4 -or -.Xr udp 4 -checksum offloading, -.Xr tcp 4 -segmentation, nor -.Xr ipsec 4 -acceleration. -.Pp -When a -.Nm -interface is brought up, by default, it will attempt to auto-negotiate the -link speed and duplex mode. -The speeds, in order of attempt, are: -100Mb/s Full Duplex, 100Mb/s Half Duplex, 10 Mb/s Full Duplex, and -10 Mb/s Half Duplex. -.Pp -The -.Nm -supports several media types, which are selected via the -.Xr ifconfig 8 -command. -The supported media types are: -.Bl -tag -width indent -.It Cm media autoselect -Attempt to autoselect the media type (default) -.It Cm media 100baseTX mediaopt full-duplex -Use 100baseTX, full duplex -.It Cm media 100baseTX Op Cm mediaopt half-duplex -Use 100baseTX, half duplex -.It Cm media 10baseT mediaopt full-duplex -Use 10baseT, full duplex -.It Cm media 10baseT Op Cm mediaopt half-duplex -Use 10baseT, half duplex -.El -.Sh HARDWARE -The -.Nm -driver supports the following cards: -.Pp -.Bl -bullet -offset indent -compact -.It -3Com 3CR990-TX-95 -.It -3Com 3CR990-TX-97 -.It -3Com 3cR990B-TXM -.It -3Com 3CR990SVR95 -.It -3Com 3CR990SVR97 -.It -3Com 3cR990B-SRV -.El -.Sh SEE ALSO -.Xr altq 4 , -.Xr arp 4 , -.Xr inet 4 , -.Xr intro 4 , -.Xr ip 4 , -.Xr miibus 4 , -.Xr tcp 4 , -.Xr udp 4 , -.Xr vlan 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Ox 2.9 . diff --git a/share/man/man4/ubsec.4 b/share/man/man4/ubsec.4 deleted file mode 100644 index 5f21ccb472a..00000000000 --- a/share/man/man4/ubsec.4 +++ /dev/null @@ -1,132 +0,0 @@ -.\" $OpenBSD: ubsec.4,v 1.25 2003/08/12 19:42:46 jason Exp $ -.\" -.\" Copyright (c) 2000 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. -.\" -.\" $FreeBSD$ -.\" -.Dd May 14, 2020 -.Dt UBSEC 4 -.Os -.Sh NAME -.Nm ubsec -.Nd Broadcom and BlueSteel uBsec 5x0x crypto accelerator -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device crypto" -.Cd "device cryptodev" -.Cd "device ubsec" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -ubsec_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -The majority of crypto algorithms supported by this driver are no longer -used by the kernel in -.Fx 13.0 . -.Sh DESCRIPTION -The -.Nm -driver supports cards containing Broadcom and BlueSteel uBsec 5x0x -crypto accelerator chips. -.Pp -The -.Nm -driver registers itself to accelerate DES, Triple-DES, MD5-HMAC, -and SHA1-HMAC operations for -.Xr ipsec 4 -and -.Xr crypto 4 . -.Pp -On those models which contain a public key engine (almost all of the -more recent ones), this feature is registered with the -.Xr crypto 4 -subsystem. -.Pp -On all models except the Bluesteel 5501 and Broadcom 5801, the driver -registers itself to provide random data to the -.Xr random 4 -subsystem. -.Sh HARDWARE -The -.Nm -driver supports cards containing any of the following chips: -.Bl -tag -width "Broadcom BCM5822" -offset indent -.It Bluesteel 5501 -The original chipset, no longer made. -This extremely rare unit -was not very fast, lacked an RNG, and had a number of other bugs. -.It Bluesteel 5601 -A faster and fixed version of the original, with a random number -unit and large number engine added. -.It Broadcom BCM5801 -A BCM5805 without public key engine or random number generator. -.It Broadcom BCM5802 -A slower version of the BCM5805. -.It Broadcom BCM5805 -Faster version of Bluesteel 5601. -.It Broadcom BCM5820 -64 bit version of the chip, and significantly more advanced. -.It Broadcom BCM5821 -Faster version of the BCM5820. -This is the chip found on the Sun Crypto Accelerator 1000. -.It Broadcom BCM5822 -Faster version of the BCM5820. -.It Broadcom BCM5823 -A BCM5822 with AES capability. -.It Broadcom BCM5825 -Faster version of the BCM5823. -.El -.Sh SEE ALSO -.Xr crypt 3 , -.Xr crypto 4 , -.Xr intro 4 , -.Xr ipsec 4 , -.Xr random 4 , -.Xr crypto 9 -.Sh HISTORY -The -.Nm -device driver appeared in -.Ox 2.8 . -The -.Nm -device driver was imported to -.Fx 5.0 . -.Sh BUGS -The BCM5801 and BCM5802 have not actually been tested. -The AES capability of the BCM5823 is not yet supported; it is awaiting -public disclosure of programming information from Broadcom. diff --git a/share/man/man4/ufm.4 b/share/man/man4/ufm.4 deleted file mode 100644 index d3ebd782cd4..00000000000 --- a/share/man/man4/ufm.4 +++ /dev/null @@ -1,85 +0,0 @@ -.\" Copyright (c) 2003 M. Warner Losh -.\" . 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: stable/11/share/man/man4/ufm.4 267938 2014-06-26 21:46:14Z bapt $ -.\" -.Dd November 22, 2006 -.Dt UFM 4 -.Os -.Sh NAME -.Nm ufm -.Nd USB driver for Cypress Semiconductor FM Radio -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device ufm" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -ufm_load="YES" -.Ed -.Sh DESCRIPTION -The -.Nm -driver provides support for the D-Link/GEMTEK FM tuner. -The USB interface chip is the common Cypress 63001, and the tuner is a -Philips TEA5757 radio chip that uses a serial interface to set the -tuner parameters. -This design is used in the D-Link DSB-R100 USB Radio. -.Pp -The -.Nm -device must be configured in the kernel, along with -.Xr usb 4 -and one of the -.Xr uhci 4 -or -.Xr ohci 4 -controllers. -.Pp -Subsequently, the -.Pa /dev/ufm0 -device can be used by userland applications. -.Sh FILES -.Bl -tag -width ".Pa /dev/ufm0" -compact -.It Pa /dev/ufm0 -blocking device node -.El -.Sh SEE ALSO -.Xr ohci 4 , -.Xr uhci 4 , -.Xr usb 4 -.Sh AUTHORS -.An -nosplit -The -.Nm -driver was written by -.An M. Warner Losh Aq Mt imp@FreeBSD.org -for -.Fx . diff --git a/share/man/man4/vlan.4 b/share/man/man4/vlan.4 index 775eb3235c0..25405172ed6 100644 --- a/share/man/man4/vlan.4 +++ b/share/man/man4/vlan.4 @@ -130,7 +130,7 @@ in hardware: .Xr cxgbe 4 , .Xr em 4 , .Xr igb 4 , -.Xr ixgbe 4 , +.Xr ix 4 , .Xr jme 4 , .Xr liquidio 4 , .Xr msk 4 , diff --git a/share/man/man4/vpo.4 b/share/man/man4/vpo.4 deleted file mode 100644 index 60a6227b6bb..00000000000 --- a/share/man/man4/vpo.4 +++ /dev/null @@ -1,111 +0,0 @@ -.\" Copyright (c) 1998, 1999, Nicolas Souchu -.\" 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$ -.\" -.Dd December 21, 2019 -.Dt VPO 4 -.Os -.Sh NAME -.Nm vpo -.Nd parallel to SCSI interface driver -.Sh SYNOPSIS -.Cd "device vpo" -.Pp -For one or more SCSI busses: -.Cd "device scbus" -.Sh DESCRIPTION -The -.Nm -driver provide access to parallel port Iomega Zip and Jaz drives. -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -.Sh HARDWARE -The -.Nm -driver supports the following parallel to SCSI interfaces: -.Pp -.Bl -bullet -compact -.It -Adaptec AIC-7110 Parallel to SCSI interface (built-in to Iomega ZIP -drives) -.It -Iomega Jaz Traveller interface -.It -Iomega MatchMaker SCSI interface (built-in to Iomega ZIP+ drives) -.El -.Sh USAGE -The driver should let you use a printer connected to the drive while -transferring data. -.Pp -DOS and -.Fx -file systems are supported. -When mounting a DOS file system or -formatting a -.Fx -file system, check the slice of the disk with the -.Xr gpart 8 -utility. -.Pp -In order to unixify a ZIP disk, put the following in /etc/disktab: -.Bd -literal -zip|zip 100:\\ - :ty=removable:se#512:nc#96:nt#64:ns#32:\\ - :pa#196608:oa#0:ba#4096:fa#512:\\ - :pb#196608:ob#0:bb#4096:fb#512:\\ - :pc#196608:oc#0:bc#4096:fc#512: -.Ed -.Pp -and use -.Xr bsdlabel 8 . -.Pp -If you have trouble with your driver, your parallel chipset may not run -properly at the detected mode (NIBBLE, PS2 or EPP). -Tune the -.Xr ppc 4 -bootflags to force other modes. -.Sh SEE ALSO -.Xr da 4 , -.Xr lpt 4 , -.Xr ppbus 4 , -.Xr ppc 4 , -.Xr scsi 4 -.Sh HISTORY -The -.Nm -manual page first appeared in -.Fx 3.0 . -.Sh AUTHORS -This -manual page was written by -.An Nicolas Souchu . -.Sh BUGS -During boot, the driver first tries to detect a classic ZIP, then a ZIP+. -The ZIP+ detection is intrusive and may send erroneous characters to your -printer if the drive is not connected to your parallel port. diff --git a/share/man/man4/vt.4 b/share/man/man4/vt.4 index 3a8c6474688..420f416c727 100644 --- a/share/man/man4/vt.4 +++ b/share/man/man4/vt.4 @@ -300,7 +300,7 @@ or changed at runtime with Enable the terminal bell. .El .Sh FILES -.Bl -tag -width /usr/share/vt/keymaps/* -compact +.Bl -tag -width "/usr/share/vt/keymaps/*.kbd" -compact .It Pa /dev/console .It Pa /dev/consolectl .It Pa /dev/ttyv* @@ -313,13 +313,12 @@ console fonts keyboard layouts .El .Sh DEVCTL MESSAGES -.Bl -column "System" "Subsystem" "1234567" -compact +.Bl -column "System" "Subsystem" "Type" "Description" .Sy "System" Ta Sy "Subsystem" Ta Sy "Type" Ta Sy "Description" .It Li VT Ta BELL Ta RING Ta Notification that the console bell has rung. .El -.Pp -.Bl -column "Variable" "Meaning" -compact +.Bl -column "duration_ms" "Meaning" .Sy "Variable" Ta Sy "Meaning" .It Li duration_ms Ta Length of time the bell was requested to ring in milliseconds. .It Li enabled Ta true or false indicating whether or not the bell was administratively enabled when rung. @@ -346,7 +345,8 @@ To set a 1024x768 mode on all output connectors, put the following line in .Pp .Dl kern.vt.fb.default_mode="1024x768" .Pp -To set a 800x600 only on a laptop builtin screen, use the following line instead: +To set a 800x600 only on a laptop builtin screen, +use the following line instead: .Pp .Dl kern.vt.fb.modes.LVDS-1="800x600" .Pp diff --git a/share/man/man4/wb.4 b/share/man/man4/wb.4 deleted file mode 100644 index 301feb66e36..00000000000 --- a/share/man/man4/wb.4 +++ /dev/null @@ -1,204 +0,0 @@ -.\" Copyright (c) 1997, 1998 -.\" 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: stable/11/share/man/man4/wb.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24, 2018 -.Dt WB 4 -.Os -.Sh NAME -.Nm wb -.Nd "Winbond W89C840F Fast Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device miibus" -.Cd "device wb" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_wb_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver provides support for PCI Ethernet adapters and embedded -controllers based on the Winbond W89C840F Fast Ethernet controller -chip. -The 840F should not be confused with the 940F, which is -an NE2000 clone and only supports 10Mbps speeds. -.Pp -The Winbond controller uses bus master DMA and is designed to be -a DEC 'tulip' workalike. -It differs from the standard DEC design -in several ways: the control and status registers are spaced 4 -bytes apart instead of 8, and the receive filter is programmed through -registers rather than by downloading a special setup frame via -the transmit DMA engine. -Using an external PHY, the Winbond chip -supports both 10 and 100Mbps speeds in either full or half duplex. -.Pp -The -.Nm -driver supports the following media types: -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It autoselect -Enable autoselection of the media type and options. -This is only -supported if the PHY chip attached to the Winbond controller -supports NWAY autonegotiation. -The user can manually override -the autoselected 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 select either -.Ar full-duplex -or -.Ar half-duplex -modes. -.It 100baseTX -Set 100Mbps (Fast Ethernet) operation. -The -.Ar mediaopt -option can also be used to select either -.Ar full-duplex -or -.Ar half-duplex -modes. -.El -.Pp -The -.Nm -driver supports the following media options: -.Bl -tag -width xxxxxxxxxxxxxxxxxxxx -.It full-duplex -Force full duplex operation. -.It half-duplex -Force half duplex operation. -.El -.Pp -Note that the 100baseTX media type is only available if supported -by the adapter. -For more information on configuring this device, see -.Xr ifconfig 8 . -.Sh HARDWARE -The -.Nm -driver supports Winbond W89C840F based Fast Ethernet -adapters and embedded controllers including: -.Pp -.Bl -bullet -compact -.It -Trendware TE100-PCIE -.El -.Sh DIAGNOSTICS -.Bl -diag -.It "wb%d: couldn't map memory" -A fatal initialization error has occurred. -.It "wb%d: couldn't map interrupt" -A fatal initialization error has occurred. -.It "wb%d: watchdog timeout" -The device has stopped responding to the network, or there is a problem with -the network connection (cable). -.It "wb%d: no memory for rx list" -The driver failed to allocate an mbuf for the receiver ring. -.It "wb%d: no memory for tx list" -The driver failed to allocate an mbuf for the transmitter ring when -allocating a pad buffer or collapsing an mbuf chain into a cluster. -.It "wb%d: chip is in D3 power state -- setting to D0" -This message applies only to adapters which support power -management. -Some operating systems place the controller in low power -mode when shutting down, and some PCI BIOSes fail to bring the chip -out of this state before configuring it. -The controller loses all of -its PCI configuration in the D3 state, so if the BIOS does not set -it back to full power mode in time, it will not be able to configure it -correctly. -The driver tries to detect this condition and bring -the adapter back to the D0 (full power) state, but this may not be -enough to return the driver to a fully operational condition. -If -you see this message at boot time and the driver fails to attach -the device as a network interface, you will have to perform second -warm boot to have the device properly configured. -.Pp -Note that this condition only occurs when warm booting from another -operating system. -If you power down your system prior to booting -.Fx , -the card should be configured correctly. -.El -.Sh SEE ALSO -.Xr arp 4 , -.Xr miibus 4 , -.Xr netintro 4 , -.Xr ng_ether 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 3.0 . -.Sh AUTHORS -The -.Nm -driver was written by -.An Bill Paul Aq Mt wpaul@ctr.columbia.edu . -.Sh BUGS -The Winbond chip seems to behave strangely in some cases when the -link partner switches modes. -If for example both sides are set to -10Mbps half-duplex, and the other end is changed to 100Mbps -full-duplex, the Winbond's receiver suddenly starts writing trash -all over the RX descriptors. -The -.Nm -driver handles this by forcing a reset of both the controller -chip and attached PHY. -This is drastic, but it appears to be the -only way to recover properly from this condition. diff --git a/share/man/man4/wi.4 b/share/man/man4/wi.4 deleted file mode 100644 index 7fc301d9976..00000000000 --- a/share/man/man4/wi.4 +++ /dev/null @@ -1,380 +0,0 @@ -.\" 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$ -.\" $OpenBSD: wi.4tbl,v 1.14 2002/04/29 19:53:50 jsyn Exp $ -.\" -.Dd July 23, 2011 -.Dt WI 4 -.Os -.Sh NAME -.Nm wi -.Nd "Lucent Hermes, and Intersil PRISM IEEE 802.11 driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following lines in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device wi" -.Cd "device wlan" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_wi_load="YES" -.Ed -.Sh DEPRECATION NOTICE -This driver is scheduled for removal prior to the release of -.Fx 13.0 -.Sh DESCRIPTION -The -.Nm -driver provides support for 802.11b wireless network adapters based around -the Lucent Hermes, Intersil PRISM-II, Intersil PRISM-2.5, and Intersil -Prism-3 chipsets. -All chipsets provide a similar interface to the driver. -Only the Intersil chipsets support access point operation or WPA. -Very old versions of firmware are not supported at all. -Older versions of the firmware that are supported may severely limit -the ability to use these cards in newer networks. -Only relatively recent versions of Intersil firmware supports WPA. -See CAVEATS for details. -All host/device interaction is via programmed I/O, even on those cards -that support a DMA interface. -.Pp -For more information on configuring this device, see -.Xr ifconfig 8 . -.Pp -.Nm -supports -.Cm station , -.Cm adhoc , -.Cm adhoc-demo , -.Cm hostap , -and -.Cm monitor -mode operation. -Only one -virtual interface may be configured at a time. -For more information on configuring this device, see -.Xr ifconfig 8 . -.Pp -Cards supported by the -.Nm -driver come in a variety of packages, though the most common -are of the PCMCIA type. -In many cases, the PCI version of a wireless card is simply -a PCMCIA card bundled with a PCI adapter. -The PCI adapters come in two flavors: true PCMCIA bridges and -dumb PCMCIA bridges. -A true PCMCIA bridge (such as those sold by Lucent) will attach -as a real PCMCIA controller. -The wireless card will then attach to the PCMCIA bus. -Wireless cards in PCMCIA slots may be inserted and ejected on the fly. -.Pp -A dumb bridge, on the other hand, does not show up as a true PCMCIA bus. -The wireless card will simply appear to the host as a normal PCI -device and will not require any PCMCIA support. -Cards in this type of adapter should only be removed when the -machine is powered down. -.Pp -The following cards are among those supported by the -.Nm -driver: -.Pp -.Bl -column -compact "Linksys Instant Wireless WPC11 2.5" "Spectrum24" "PCI or PCMCIA" -.Em "Card Chip Bus" -3Com AirConnect 3CRWE777A Prism-II PCI -Accton airDirect WN3301 PCMCIA -ACTIONTEC HWC01170 Prism-2.5 PCMCIA -Adaptech ANW-8030 Prism-3 PCMCIA -Addtron AWP-100 Prism-II PCMCIA -Adtec Adlink/340C Prism-II PCMCIA -Airvast WN 100 Prism-3 PCMCIA -Airway 802.11 Adapter PCMCIA -Agere Orinoco Hermes PCMCIA -Allied Telesis WR211PCM Prism-II PCMCIA -ArTem OnAir Prism? PCMCIA -Asus WL100 Prism-2.5 PCMCIA -Avaya Wireless Prism-II PCMCIA -Bay eMobility 11B Prism-2.5? PCMCIA -Blue Concentric Circle WL-379F Prism-II CF -BreezeNet Wireless Prism-II PCMCIA -Buffalo WLI-PCM-S11 Prism-II PCMCIA -Buffalo WLI-PCM-L11G Hermes PCMCIA -Buffalo WLI-CF-S11G Prism-II CF -Buffalo WLI2-CF-S11G Prism 2.5 CF -Cabletron RoamAbout Hermes PCMCIA -Compaq Agency NC5004 Prism-II PCMCIA -Compaq WL100 Prism-II PCMCIA -Compaq WL110 Hermes PCMCIA -Compaq WL200 Prism-II PCMCIA -Contec FLEXLAN/FX-DS110-PCC Prism-II PCMCIA -Corega PCC-11 Prism-II PCMCIA -Corega PCCA-11 Prism-II PCMCIA -Corega PCCB-11 Prism-II PCMCIA -Corega CGWLPCIA11 Prism-II PCI -Dell TrueMobile 1150 Hermes PCMCIA -Dlink Air 660 Prism-II PCMCIA -Dlink DWL520 Prism-2.5 PCI -Dlink DWL650 Prism-2.5 PCMCIA -ELECOM Air@Hawk/LD-WL11/PCC PCMCIA -ELSA MC-11 PCMCIA -ELSA XI300 Prism-II PCMCIA -ELSA XI325 Prism-2.5 PCMCIA -ELSA APDL325 Prism-2.5 PCMCIA -ELSA XI330 Prism-3 PCMCIA -ELSA XI800 Prism-II CF -EMTAC A2424i Prism-II PCMCIA -Farallon Skyline Prism-II PCMCIA -Gemtek WL-311 Prism-2.5 PCMCIA -Hawking Technology WE110P Prism-2.5 PCMCIA -Home Wireless Networks Prism-II PCMCIA -IBM High Rate Wireless Hermes PCMCIA -ICOM SL-1100 Prism-II PCMCIA -I-O DATA WN-B11/PCM Prism-II PCMCIA -Intersil Prism II Prism-II PCMCIA -Intersil Mini-PCI Prism-2.5 PCI -Intersil ISL37100P Prism-3 PCMCIA -Intersil ISL37110P Prism-3 PCMCIA -Intersil ISL37300P Prism-3 PCMCIA -Laneed Wireless PCMCIA -Linksys Instant Wireless WPC11 Prism-II PCMCIA -Linksys Instant Wireless WPC11 2.5 Prism-2.5 PCMCIA -Linksys Instant Wireless WPC11 3.0 Prism-3 PCMCIA -Linksys WCF11 Prism-3 PCMCIA -Linksys WCF12 Prism-3 CF -Lucent WaveLAN Hermes PCMCIA -Melco Airconnect Prism-II PCMCIA -Microsoft MN-520 WLAN Prism-II PCMCIA -NANOSPEED ROOT-RZ2000 Prism-II PCMCIA -NCR WaveLAN/IEEE 802.11 PCMCIA -NDC/Sohoware NCP130 Prism-II PCI -NEC CMZ-RT-WP Prism-II PCMCIA -NEC PK-WL001 Lucent PCMCIA -NEC PC-WL/11C Prism-II PCMCIA -Netgear MA311 Prism-2.5 PCI -Netgear MA401 Prism-II/2.5 PCMCIA -Netgear MA401RA Prism-II PCMCIA -Netgear MA701 Prism-II CF -NOKIA C020 WLAN Prism-II PCMCIA -NOKIA C110 WLAN Prism-2.5 PCMCIA -NTT-ME 11Mbps Wireless LAN Prism-II PCMCIA -Planex GeoWave/GW-NS110 Prism-II PCMCIA -Planex GW-NS11H Prism-II PCMCIA -Proxim Harmony Prism-II PCMCIA -Proxim RangeLAN-DS Prism-II PCMCIA -Samsung MagicLAN SWL-2000N Prism-II PCMCIA -SENAO SL-2511CD Prism-3 PCMCIA -Siemens SpeedStream SS1021 Prism-II PCMCIA -Siemens SpeedStream SS1021 Prism-3 PCMCIA -SMC 2532W-B Prism-II PCMCIA -SMC 2602 EZ Connect (3.3V) Prism-II PCI or PCMCIA -SMC 2632 EZ Connect Prism-II PCMCIA -Socket Low Power WLAN-CF Prism-II CF -Sony PCWA-C100 Lucent PCMCIA -Sony PEGA-WL110 Prism-2.5 PCMCIA -TDK LAK-CD011WL Prism-II PCMCIA -Toshiba Wireless LAN Card Prism-II PCMCIA -U.S.\& Robotics Wireless Card 2410 Prism-II PCMCIA -YIS YWL-11B Prism-II PCMCIA -.El -.Pp -Several vendors sell PCI adapters built around the PLX Technology 9050 -or 9052 chip. -The following such adapters are supported or expected to work: -.Pp -.Bl -item -compact -.It -3Com AirConnect 3CRWE777A (3.3V) -.It -Belkin F5D6000 (a rebadged WL11000P) -.It -Eumitcom WL11000P -.It -Global Sun Technology GL24110P (untested) -.It -Global Sun Technology GL24110P02 -.It -LinkSys WDT11 (a rebadged GL24110P02) -.It -Netgear MA301 -.It -US Robotics 2415 (rebadged WL11000P) -.It -Wisecom Wireless LAN PCI Adapter -.El -.Pp -The following adapters have the same model numbers as those listed -above, but might not work if the actual card is after the change away -from the Prism family: -.Pp -.Bl -item -compact -.It -DLink DWL520 -.El -.Sh EXAMPLES -Join an existing BSS network (ie: connect to an access point): -.Bd -literal -offset indent -ifconfig wlan create wlandev wi0 inet 192.168.0.20 \e - netmask 0xffffff00 -.Ed -.Pp -Join a specific BSS network with network name -.Dq Li my_net : -.Bd -literal -offset indent -ifconfig wlan create wlandev wi0 inet 192.168.0.20 \e - netmask 0xffffff00 ssid my_net -.Ed -.Pp -Join a specific BSS network with WEP encryption: -.Bd -literal -offset indent -ifconfig wlan create wlandev wi0 inet 192.168.0.20 \e - netmask 0xffffff00 ssid my_net \e - wepmode on wepkey 0x8736639624 weptxkey 1 -.Ed -.Pp -Join a Lucent legacy demo ad-hoc network with network name -.Dq Li my_net : -.Bd -literal -offset indent -ifconfig wlan create wlandev wi0 wlanmode ahdemo \e - inet 192.168.0.20 netmask 0xffffff00 ssid my_net -.Ed -.Pp -Join/create an IBSS network with network name -.Dq Li my_net : -.Bd -literal -offset indent -ifconfig wlan create wlandev wi0 wlanmode adhoc wi0 \e - inet 192.168.0.22 netmask 0xffffff00 ssid my_net -.Ed -.Pp -Create a host-based access point (Prism only): -.Bd -literal -offset indent -ifconfig wlan create wlandev wi0 wlanmode hostap \e - inet 192.168.0.10 netmask 0xffffff00 ssid my_ap -.Ed -.Pp -Create a host-based access point with WEP enabled (Prism only) -and plumb it into bridge to fxp0: -.Bd -literal -offset indent -ifconfig wlan0 create wlandev wi0 wlanmode hostap \e - inet 192.168.0.10 netmask 0xffffff00 ssid my_ap \e - wepmode on wepkey 0x1234567890 weptxkey 1 -ifconfig bridge0 create -ifconfig bridge0 addm wlan0 addm fxp0 up -.Ed -.Pp -This will give you the same functionality as an access point. -.Sh DIAGNOSTICS -.Bl -diag -.It "wi%d: init failed" -The WaveLAN card failed to become ready after an initialization command -was issued. -.It "wi%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. -This can also be an indication of an incorrectly configured interrupt. -.It "wi%d: device timeout" -The WaveLAN card failed to generate an interrupt to acknowledge a transmit -command. -.El -.Sh SEE ALSO -.Xr intro 4 , -.Xr pccard 4 , -.Xr pccbb 4 , -.Xr pcic 4 , -.Xr wlan 4 , -.Xr wlan_ccmp 4 , -.Xr wlan_tkip 4 , -.Xr wlan_wep 4 , -.Xr wlan_xauth 4 , -.Xr hostapd 8 , -.Xr ifconfig 8 , -.Xr wpa_supplicant 8 . -.Rs -.%T HCF Light programming specification -.%U http://web.archive.org/web/20040130141721/http://wavelan.com/ -.Re -.Sh HISTORY -The -.Nm -device driver first appeared in -.Fx 3.0 . -.Sh AUTHORS -The original -.Nm -driver was written by -.An Bill Paul Aq Mt wpaul@ctr.columbia.edu . -This man page comes from -.Ox . -.Sh CAVEATS -The driver will reject devices with old firmware to -avoid dealing with numerous defects. -Unfortunately the driver does not support downloading new firmware -to the card so if new firmware is needed users will have to boot -a different system to accomplish this. -.Pp -Intersil Prism cards must have firmware versions 0.8.0 or later and -version 1.7.0 or later are required to support functionality such as WPA. -Some users of Prism-II and 2.5 based cards report that station firmware -version 1.3.4 works better for them in hostap than 1.4.9. -Older versions of the Prism station firmware have a number of issues -with hostap mode. -The IBSS/adhoc mode appears to work well on station firmware 1.3.1 and -later. -The IBSS/adhoc mode appears to have problems for some people with -older versions of station firmware. -.Pp -Lucent cards prior to firmware version 6.0.6 do not implement IBSS -mode and are not supported. -.Pp -Prior versions of -.Nm -supported Symbol firmware. -That support has been removed due to persistent problems with this -firmware as well as getting proper documentation on this firmware. -.Pp -Hermes 2 and Hermes 3 chips are not supported by this driver. -.Pp -Here's the above requirements in the form of a table -.Pp -.Bl -column -compact "Prims II/2.5" "xxxxxxxx" "xxxxxxxx" "xxxxxxxx" "xxxxxxxx" -.Em "Firmware Minimum WPA Host AP Adhoc/IBSS" -Prism II/2.5 0.8.0 1.7.0 1.3.4 1.3.1 -Prism 3 0.8.0 1.7.0 1.4.9 1.3.1 -Hermes 6.0.6 none none 6.0.6 -Symbol none none none none -.El -.Sh BUGS -Not all the new messages are documented here, and many of them are -indications of transient errors that are not indications of serious -problems. diff --git a/share/man/man4/xe.4 b/share/man/man4/xe.4 deleted file mode 100644 index 9ce86188d24..00000000000 --- a/share/man/man4/xe.4 +++ /dev/null @@ -1,176 +0,0 @@ -.\" -.\" Copyright (c) 2003 Tom Rhodes -.\" 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: stable/11/share/man/man4/xe.4 347962 2019-05-18 20:43:13Z brooks $ -.\" -.Dd October 24 2018 -.Dt XE 4 -.Os -.Sh NAME -.Nm xe -.Nd "Xircom PCMCIA Ethernet device driver" -.Sh SYNOPSIS -To compile this driver into the kernel, -place the following line in your -kernel configuration file: -.Bd -ragged -offset indent -.Cd "device xe" -.Ed -.Pp -Alternatively, to load the driver as a -module at boot time, place the following line in -.Xr loader.conf 5 : -.Bd -literal -offset indent -if_xe_load="YES" -.Ed -.Sh DEPRECATION NOTICE -The -.Nm -driver is not present in -.Fx 13.0 -and later. -See https://github.com/freebsd/fcp/blob/master/fcp-0101.md for more -information. -.Sh DESCRIPTION -The -.Nm -driver supports -.Tn PCMCIA -Ethernet adapters based on Xircom CE2- and CE3-class hardware. -This includes devices made by Xircom along with -various -.Tn OEM -manufacturers. -.Pp -Please note that the -.Nm -driver only supports -.Tn PCMCIA -cards and their Ethernet functions. -.Nm -does not support the on-board modem device located on some -version of the Ethernet/modem combo cards. -In particular, Xircom RealPort2 cards are not supported by this driver. -.Pp -The -.Nm -driver supports the following media types: -.Bl -tag -width ".Cm autoselect" -.It Cm autoselect -Enable autoselection of media type and options. -.It Cm 10Base2/BNC -Select 10Mbps operation on a BNC coaxial connector. -.It Cm 10BaseT/UTP -Select 10Mbps operation on a RJ-45 connector. -.It Cm 100BaseTX -Select 100Mbps operation. -.El -.Pp -Note that 100BaseTX operation is not available on CE2-class cards, -while the 10Base2/BNC mode is only available on CE2-class cards. -Full-duplex -operation is currently not supported. -For more information on configuring network interface devices, -see -.Xr ifconfig 8 . -.Sh HARDWARE -The -.Nm -driver supports the following cards: -.Pp -.Bl -bullet -compact -.It -Xircom CreditCard Ethernet (PS-CE2-10) -.It -Xircom CreditCard Ethernet + Modem 28 (PS-CEM-28) -.It -Xircom CreditCard Ethernet + Modem 33 (CEM33) -.It -Xircom CreditCard 10/100 (CE3, CE3B) -.It -Xircom CreditCard Ethernet 10/100 + Modem 56 (CEM56) -.It -Xircom RealPort Ethernet 10 (RE10) -.It -Xircom RealPort Ethernet 10/100 (RE100) -.It -Xircom RealPort Ethernet 10/100 + Modem 56 (REM56, REM56G) -.It -Accton Fast EtherCard-16 (EN2226) -.It -Compaq Microcom CPQ550 Ethernet/Modem PC Card -.It -Compaq Netelligent 10/100 PC Card (CPQ-10/100) -.It -Intel EtherExpress Pro/100 PC Card Mobile Adapter 16 (Pro/100 M16A) -.It -Intel EtherExpress Pro/100 LAN/Modem PC Card Adapter (Pro/100 M16B) -.El -.Pp -Other similar devices using the same hardware may also be supported. -.Sh DIAGNOSTICS -.Bl -diag -.It "xe%d: Cannot allocate ioport" -.It "xe%d: Cannot allocate irq" -A fatal initialization error occurred while attempting to allocate -system resources for the card. -.It "xe%d: Unable to fix your %s combo card" -A fatal initialization error occurred while attempting to attach an -Ethernet/modem combo card. -.It "xe%d: watchdog timeout: resetting card" -The card failed to generate an interrupt acknowledging a -transmitted packet. -May indicate a -.Tn PCMCIA -configuration problem. -.It "xe%d: no carrier" -The card has lost all contact with the network; this -usually indicates a cable problem. -.El -.Sh SEE ALSO -.Xr pccard 4 , -.Xr ifconfig 8 -.Sh HISTORY -The -.Nm -driver first appeared in -.Fx 3.3 . -.Sh AUTHORS -.An -nosplit -The -.Nm -device driver was written by -.An Scott Mitchell Aq Mt rsm@FreeBSD.org . -This manual page was written by -.An Scott Mitchell Aq Mt rsm@FreeBSD.org , -and -.An Tom Rhodes Aq Mt trhodes@FreeBSD.org . -.Sh BUGS -Supported devices will fail to attach on some machines using the -.Tn NEWCARD -.Tn PC -Card framework. -.Pp -Automatic media selection is usually unreliable. diff --git a/share/man/man5/nandfs.5 b/share/man/man5/nandfs.5 deleted file mode 100644 index 6d183948ef8..00000000000 --- a/share/man/man5/nandfs.5 +++ /dev/null @@ -1,132 +0,0 @@ -.\" -.\" Copyright (c) 2010 Semihalf -.\" 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: stable/11/share/man/man5/nandfs.5 301591 2016-06-08 09:36:07Z trasz $ -.\" -.Dd Nov 11, 2010 -.Dt NANDFS 5 -.Os -.Sh NAME -.Nm nandfs -.Nd NAND Flash file system -.Sh SYNOPSIS -To compile support for the -.Nm , -place the following in your kernel configuration file: -.Bd -ragged -offset indent -.Cd "options NANDFS" -.Ed -.Pp -Even though the NAND FS can be used with any storage media, it has been -optimized and designed towards NAND Flash devices, so typically the following -driver is used: -.Bd -ragged -offset indent -.Cd "device nand" -.Ed -.Sh DESCRIPTION -The -.Nm -driver enables -.Fx -with support for NAND-oriented file system. -.Pp -It is a log-structured style file system with the following major features and -characteristics: -.Bl -bullet -.It -Hard links, symbolic links support -.It -Block journaling -.It -Copy-On-Write -.It -Snapshots (continuous, taken automatically, simultaneously mountable) -.It -Quick crash recovery at mount time -.It -64-bit data structures; supports many files, large files and volumes -.It -POSIX file permissions -.It -Checksum / ECC -.El -.Sh EXAMPLES -The most common usage is mounting the file system: -.Pp -.Dl "mount -t nandfs /dev/ /mnt" -.Pp -or: -.Dl "mount_nandfs /dev/ /mnt" -.Pp -where -.Ar gnandN -is the GEOM device representing a Flash partition (slice) containing the -.Nm -structure, and -.Pa /mnt -is a mount point. -.Pp -It is possible to define an entry in -.Pa /etc/fstab -for the -.Nm : -.Bd -literal -/dev/gnand0 /flash nandfs rw 0 0 -.Ed -.Pp -This will mount a -.Nm -partition at the specified mount point during system boot. -.Sh SEE ALSO -.Xr gnand 4 , -.Xr nand 4 , -.Xr mount_nandfs 8 , -.Xr nandfs 8 , -.Xr nandsim 8 , -.Xr nandtool 8 , -.Xr umount_nandfs 8 -.Sh HISTORY -The NAND FS concepts are based on NILFS principles and initial implementation -was derived from early read-only NILFS NetBSD code. -Since then the NAND FS -code diverged significantly and is by no means compatible with NILFS. -.Pp -The NAND Flash file system first appeared in -.Fx 10.0 . -.Sh AUTHORS -.An -nosplit -The NAND FS was written by -.An Grzegorz Bernacki -with the help of -.An Mateusz Guzik , -based on the NetBSD code created by -.An Reinoud Zandijk . -Additional help and support by -.An Lukasz Plachno , -.An Jan Sieka -and -.An Lukasz Wojcik . -This manual page was written by -.An Rafal Jaworowski . diff --git a/share/man/man7/mailaddr.7 b/share/man/man7/mailaddr.7 deleted file mode 100644 index 8b9b7b31a66..00000000000 --- a/share/man/man7/mailaddr.7 +++ /dev/null @@ -1,158 +0,0 @@ -.\" Copyright (c) 1983, 1987, 1990, 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. -.\" -.\" @(#)mailaddr.7 8.1 (Berkeley) 6/16/93 -.\" $FreeBSD: stable/11/share/man/man7/mailaddr.7 263142 2014-03-14 03:07:51Z eadler $ -.\" -.Dd June 16, 1993 -.Dt MAILADDR 7 -.Os -.Sh NAME -.Nm mailaddr -.Nd mail addressing description -.Sh DESCRIPTION -Mail addresses are based on the Internet protocol listed at the end of this -manual page. -These addresses are in the general format -.Pp -.Dl user@domain -.Pp -where a domain is a hierarchical dot separated list of subdomains. -For -example, a valid address is: -.Pp -.Dl eric@CS.Berkeley.EDU -.Pp -Unlike some other forms of addressing, domains do not imply any routing. -Thus, although this address is specified as an Internet address, it might -travel by an alternate route if that were more convenient or efficient. -For example, at Berkeley, the associated message would probably go directly -to CS over the Ethernet rather than going via the Berkeley Internet -gateway. -.Ss Abbreviation. -Under certain circumstances it may not be necessary to type the entire -domain name. -In general, anything following the first dot may be omitted -if it is the same as the domain from which you are sending the message. -For example, a user on ``calder.berkeley.edu'' could send to ``eric@CS'' -without adding the ``berkeley.edu'' since it is the same on both sending -and receiving hosts. -.Ss Compatibility. -Certain old address formats are converted to the new format to provide -compatibility with the previous mail system. -In particular, -.Pp -.Dl user@host -.Pp -and -.Dl user@host.domain -.Pp -are allowed; -.Pp -.Dl host.domain!user -.Pp -is converted to -.Pp -.Dl user@host.domain -.Pp -and -.Pp -.Dl host!user -.Pp -is converted to -.Pp -.Dl user@host.UUCP -.Pp -This is normally converted back to the ``host!user'' form before being sent -on for compatibility with older UUCP hosts. -.Ss Case Distinctions. -Domain names (i.e., anything after the ``@'' sign) may be given in any mixture -of upper and lower case with the exception of UUCP hostnames. -Most hosts -accept any combination of case in user names, with the notable exception of -MULTICS sites. -.Ss Route-addrs. -Under some circumstances it may be necessary to route a message through -several hosts to get it to the final destination. -Normally this routing -is done automatically, but sometimes it is desirable to route the message -manually. -Addresses which show these relays are termed ``route-addrs.'' -These use the syntax: -.Pp -.Dl <@hosta,@hostb:user@hostc> -.Pp -This specifies that the message should be sent to hosta, from there to hostb, -and finally to hostc. -This path is forced even if there is a more efficient -path to hostc. -.Pp -Route-addrs occur frequently on return addresses, since these are generally -augmented by the software at each host. -It is generally possible to ignore -all but the ``user@hostc'' part of the address to determine the actual -sender. -.Pp -[Note: the route-addr syntax is officially deprecated -in RFC 1123 and should not be used.] -.Pp -Many sites also support the ``percent hack'' for simplistic routing: -.Pp -.Dl user%hostc%hostb@hosta -.Pp -is routed as indicated in the previous example. -.Ss Postmaster. -Every site is required to have a user or user alias designated ``postmaster'' -to which problems with the mail system may be addressed. -.Ss Other Networks. -Some other networks can be reached by giving the name of the network as the -last component of the domain. -.Em This is not a standard feature -and may -not be supported at all sites. -For example, messages to CSNET or BITNET sites -can often be sent to ``user@host.CSNET'' or ``user@host.BITNET'' respectively. -.Sh SEE ALSO -.Xr mail 1 , -.Xr sendmail 8 -.Rs -.%A Crocker, D. H. -.%T Standard for the Format of Arpa Internet Text Messages -.%O RFC822 -.Re -.Sh HISTORY -.Nm Mailaddr -appeared in -.Bx 4.2 . -.Sh BUGS -The RFC822 group syntax (``group:user1,user2,user3;'') is not supported -except in the special case of ``group:;'' because of a conflict with old -berknet-style addresses. -.Pp -Route-Address syntax is grotty. -.Pp -UUCP- and Internet-style addresses do not coexist politely. diff --git a/share/man/man8/picobsd.8 b/share/man/man8/picobsd.8 deleted file mode 100644 index 844b671a98a..00000000000 --- a/share/man/man8/picobsd.8 +++ /dev/null @@ -1,666 +0,0 @@ -.\" -*- nroff-fill -*- -.\" $FreeBSD: stable/11/share/man/man8/picobsd.8 354051 2019-10-24 21:43:01Z kevans $ -.Dd October 20, 2019 -.Dt PICOBSD 8 -.Os -.Sh NAME -.Nm picobsd -.Nd building small FreeBSD disk images -.Sh SYNOPSIS -.Nm -.Op Ar options -.Op Ar config-name Op Ar site-name -.Sh DESCRIPTION -.Nm -is deprecated and will be removed in -.Fx 13.0 . -.Pp -The -.Nm -utility is a script which produces a minimal implementation of -.Fx -(historically called -.Nm PicoBSD ) -which typically fits on a small media such as a floppy disk, -or can be downloaded as a -single image file from some media such as CDROM, flash memory, or through -etherboot. -.Pp -The -.Nm -utility was originally created to build simple standalone systems -such as firewalls or bridges, but because of the ability to -cross-build images with different source trees than the one -in the server, it can be extremely useful to developers to -test their code without having to reinstall the system. -.Pp -The boot media (historically a floppy disk, but also small -CDROM or USB keys) contains a boot loader and a -compressed kernel which includes a memory file system. -Depending on the media, it might also contain a number of -additional files, which can be updated at run time, and are -used to override/update those in the memory file system. -.Pp -The system loads the kernel in the normal way, uncompresses -the memory file system and mounts it as root. -It then updates the memory -file system with files from the boot media (if present), -and executes a specialized version of -.Pa /etc/rc . -The boot media (floppy, etc.) is -required for loading only, and typically used read-only. -After the boot phase, the system runs entirely from RAM. -.Pp -The following options are available (but also check the -.Nm -script for more details). -The most important options for common operations are -.Fl src , -.Fl init , -.Fl n and -.Fl v . -.Bl -tag -width indent -.\" -.It Fl -all_in_mfs -Put the entire contents of the file system in the -memory file system image which is contained in the -kernel. -This is the default behaviour, and is -extremely useful as the kernel itself can be loaded, -using -etherboot -or -.Xr pxeboot 8 , -.\" -.It Fl c , Fl clean -Clean the product of previous builds. -.\" -.It Fl -cfg Ar file -Specify a file that contains additional config commands. -.\" -.It Fl -floppy_size Ar size -Set the size of the disk image. -Typical values for a floppy disk are 1440 or 2880, -but other values can be used for other media (flash memories, -CDROM, network booted kernels). -Note that this option is overridden by the content of the -config files (config in the image tree, or the one -specified with -.Fl Fl cfg ) -.\" -.It Fl -init -When used together with the -.Fl -src -option, this initializes the -.Ao Ar SRC_PATH Ac Ns Pa /../usr -subtree as necessary to subsequently build -.Nm -images. -.\" -.It Fl -iso -Generate an ISO image, -.Pa picobsd.iso , -in addition to the disk image -.Pa picobsd.bin . -.\" -.It Fl -modules -Also build kernel modules. -These are not stored on the -.Nm -image but are left available in the build directory. -.\" -.It Fl n -Make the script non-interactive, skipping the initial menu -and proceeding with the build process without requiring user input. -.\" -.It Fl -no_all_in_mfs -Leaves files contained in the -.Pa floppy.tree -on the -.Nm -image, so they can be loaded separately -from the kernel (and updated individually to -customize the image). -.\" -.It Fl -no_loader -Omit /boot/loader, just rely on boot2 to load the kernel. -This saves some space but may have problems with kernels > 4MB. -.\" -.It Fl -objdir Ar directory -Specify a directory with the result of a previous buildworld. -This saves the need for an -.Fl Fl init -call before creating an image. -.\" -.It Fl -src Ar SRC_PATH -Use the source tree at -.Ar SRC_PATH -instead the one at -.Pa /usr/src . -This can be useful for cross-building -.Nm -images. -When using this option, you must also create and initialize the subtree at -.Ao Ar SRC_PATH Ac Ns Pa /../usr -with the correct header files, libraries, and tools (such as the -.Xr config 8 -program) that are necessary for the cross-build (see the -.Fl -init -option). -The source files are unmodified by the -.Nm -script. -However the source tree is not completely read-only, -because -.Xr config 8 -expects the kernel configuration file to be in one of -its subdirectories, and also the process of initializing the -.Pa usr -subtree touches some parts of the source tree (this is a bug -in the release build scripts which might go away with time). -.\" -.It Fl v -Make the script verbose, showing -commands to be executed and waiting for user -input before executing each of them. -Useful for debugging. -as a fully functional system. -.El -.Sh ENVIRONMENT -As a result of extreme size limitations, the -.Nm -environment differs from the normal -.Fx -in a number of ways: -.Bl -bullet -.It -There are no dynamic libraries, and there is no directory -.Pa /usr/lib . -As a result, only static executables may be executed. -.It -In order to reduce the size of the executables, all executables on a specific -floppy are joined together as a single executable built with -.Xr crunchgen 1 . -.It -Some programs are supplied in minimalistic versions, specifically -.Nm ns , -a cut-down version of -.Xr netstat 1 , -and -.Nm vm , -a cut-down version of -.Xr vmstat 8 . -.El -.Sh BUILDING PicoBSD -The -.Nm -sources reside in the hierarchy -.Pa /usr/src/release/picobsd . -In the following discussion, all relative path names are relative to this -directory. -.Pp -The supported build script is -.Pa /usr/src/release/picobsd/build/picobsd -which can be run from anywhere, and relies on the -.Xr sysutils/makefs -port to build a filesystem without requiring -.Xr mdconfig -or root privileges to mount a filesystem. -When run in interactive mode (the default without the -.Fl n -option), the script will let you configure the various parameters -used to build the PicoBSD image. -An image is configured -using the files and directories described below. -The base system contains a template, called -.Pa bridge -for historical reasons, -that can be used as a base for building various kinds -of network appliances. -.Pp -You can define your own PicoBSD configuration, by creating a directory -with a name of your choice (e.g.\& -.Pa FOO ) -which contains -some of the following files and directories. -For more -information on how to construct these files, look at one -of the standard -.Nm -configurations as a reference. -.Bl -tag -width indent -.It Pa PICOBSD -The kernel configuration file (required). -This is a mostly standard -kernel configuration file, possibly stripped down by removing -unnecessary drivers and options to reduce the kernel's size. -.Pp -To be recognised as a -.Nm -kernel config file, the file must also contain the line -beginning with -.Dq Li #PicoBSD -below, and a matching -.Dv MD_ROOT_SIZE -option: -.Bd -literal -offset indent -#marker def_sz init MFS_inodes floppy_inodes -#PicoBSD 4200 init 8192 32768 -options MD_ROOT_SIZE=4200 # same as def_sz -.Ed -.Pp -This informs the script of the size of the memory file system and -provides a few other details on how to build the image. -.It Pa crunch.conf -.Xr crunchgen 1 -configuration (required). -It contains the list of directories containing program sources, -the list of binaries to be built, and the list of libraries that -these programs use. -See the -.Xr crunchgen 1 -manpage for the exact details on the syntax of this file. -.Pp -The following issues are particularly important when dealing -with -.Nm -configurations: -.Bl -bullet -.It -We can pass build options to those makefiles which understand -that, in order to reduce the size of the programs. -This is achieved with a line of the form -.Pp -.Dl "buildopts -DNO_PAM -DRELEASE_CRUNCH ..." -.It -When providing the list of directories where source files are, it -is convenient to list the following entry first: -.Pp -.Dl "srcdirs /usr/src/release/picobsd/tinyware" -.Pp -so that -.Nm Ns -specific -versions of the programs will be found there. -.It -The string -.Dq Li @__CWD__@ -is replaced with the full pathname of the directory where the -.Nm -configuration resides (i.e., the one where we find -.Pa PICOBSD , crunch.conf , -and so on). -This can be useful to refer source code that resides within a -configuration, e.g.\& -.Pp -.Dl "srcdirs @__CWD__@/src" -.El -.It Pa config -Shell variables, sourced by the -.Nm -script (optional). -The most important variables here are: -.Bl -tag -width ".Va MY_DEVS" -.It Va MY_DEVS -(Not used in -.Fx 5.0 -where we have -.Xr devfs 5 ) . -Should be set to the list of devices to be created in the -.Pa /dev -directory of the image (it is really the argument passed to -.Xr MAKEDEV 8 , -so refer to that manpage for the names). -.It Va fd_size -Size (in kilobytes) of the -.Nm -image. -By default, -.Va fd_size -is set to 1440 -which produces an image suitable for a standard floppy. -.Pp -If you plan to store the image on a CDROM (e.g.\& using -the -.Dq "El Torito" -floppy emulation), you can set -.Va fd_size -equal to 2880. -If you are planning to dump the image onto a hard disk -(either in a partition or on the whole disk), you -are not restricted to one of the standard floppy sizes. -Using a large image size per se does not waste RAM at runtime, -because only the files that are actually loaded from the image -contribute to the memory usage. -.It Va import_files -Contains a list of files to be imported in the floppy tree. -Absolute names refer to the standard file system, relative -names refer to the root of the source tree being used -(i.e.\& -.Va SRC_PATH/.. ) . -You can normally use this option if you want to import -files such as shared libraries, or databases, without -having to replicate them first in your configuration -under the -.Pa floppy.tree/ -directory. -.El -.It Pa floppy.tree.exclude -List of files from the standard floppy tree which -we do not want to be copied (optional). -.It Pa floppy.tree/ -Local additions to the standard floppy tree (optional). -The content of this subtree will be copied as-is into the -floppy image. -.It Pa floppy.tree. Ns Aq Ar site-name -Same as above, but site-specific (optional). -.El -.Pp -More information on the build process can be found in the -comments in the -.Nm -script. -.Sh USING ALTERNATE SOURCE TREES -The build script can be instructed to use an alternate source tree -using the -.Fl -src Ar SRC_PATH -option. -The tree that you specify must contain full sources for the kernel -and for all programs that you want to include in your image. -As an example, to cross-build the -.Pa bridge -floppy -using RELENG_4 sources, you can do the following: -.Bd -literal -offset indent -cd -mkdir FOO -(cd FOO; cvs -d co -rRELENG_4 src) -picobsd --src FOO/src --init # this is needed only once -picobsd --src FOO/src -n -v bridge -.Ed -.Pp -If the build is successful, the directory -.Pa build_dir-bridge/ -will contain a -.Pa kernel -that can be downloaded with etherboot, a floppy image called -.Pa picobsd.bin , -plus the products of the compilation in other directories. -If you want to modify the source tree in -.Pa FOO/src , -a new image can be produced by simply running -.Pp -.Dl "picobsd --src FOO/src -n -v bridge" -.Pp -whereas if the change affects include files or libraries -you first need to update them, e.g.\& by re-running -.Pp -.Dl "picobsd --src FOO/src --init # this is needed only once" -.Pp -as you would normally do for any change of this kind. -.Sh INSTALLING PicoBSD -.Ss Floppy Install -Historically, -.Nm -is run from a floppy disk, where it can be installed with a simple -.Pp -.Dl "dd if=picobsd.bin of=/dev/rfd0" -.Pp -and the floppy is ready to boot. -.Ss Hard Disk Install -The same process can be used to store the image on a hard disk -(entire volume or one of the slices): -.Bd -literal -offset indent -dd if=picobsd.bin of=/dev/ada2 -dd if=picobsd.bin of=/dev/ada2s3 -dd if=picobsd.bin of=/dev/ada2 oseek=NN -.Ed -.Pp -The first form will install the image on the entire disk, and it -should work in the same way as for a floppy. -.Pp -The second form will install the image -on slice number 3 (which should be large enough to store the -contents of the image). -However, the process will only have success if the -partition does not contain a valid disklabel, otherwise the kernel will -likely prevent overwriting the label. -In this case you can use the -third form, replacing -.Ar NN -with the actual start of the partition -(which you can determine using -.Xr gpart 8 ) . -Note that after saving the image to the slice, it will not yet be -recognised. -You have to use the -.Xr disklabel 8 -command to properly initialize the label (do not ask why!). -One way to do this is -.Bd -literal -offset indent -disklabel -w ada0s2 auto -disklabel -e ada0s2 -.Ed -.Pp -and from the editor enter a line corresponding to the actual partition, e.g.\& -if the image has 2.88MB (5760 sectors) you need to enter the following -line for the partition: -.Pp -.Dl "a: 5760 0 4.2BSD 512 4096" -.Pp -At this point the partition is bootable. -Note that the image size can be smaller than the slice size -(indicated as partition -.Dq Li c: ) . -.Ss CDROM Install -.Nm -can produce an ISO image named picobsd.iso, -which does not use -.Dq "El Torito" -emulation, so it has no size restrictions. -Installing means just burning a media with the file. -.Ss Booting From The Network -Yet another way to use -.Nm -is to boot the image off the network. -For this purpose you should use the uncompressed kernel which is -available as a byproduct of the compilation. -Refer to the documentation -for network booting for more details, the -.Nm -kernel is bootable as a standard -.Fx -kernel. -.Sh BOOTING PicoBSD -To boot -.Nm , -insert the floppy and reset the machine. -The boot procedure is similar to the -standard -.Fx -boot. -Booting from a floppy is normally rather slow (in the order of 1-2 -minutes), things are much faster if you store your image on -a hard disk, Compact Flash, or CDROM. -.Pp -You can also use etherboot to load the preloaded, uncompressed kernel image -which is a byproduct of the -.Nm -build. -In this case -the load time is a matter of a few seconds, even on a 10Mbit/s -ethernet. -.Pp -After booting, -.Nm -loads the root file system from the memory file system, starts -.Pa /sbin/init , -and passes control to a first startup script, -.Pa /etc/rc . -The latter populates the -.Pa /etc -and -.Pa /root -directories with the default files, then tries to identify the boot -device (floppy, hard disk partition) and possibly override the contents -of the root file system with files read from the boot device. -This allows you to store local configuration on the same media. -After this phase the boot device is no longer used, unless the -user specifically does it. -.Pp -After this, control is transferred to a second script, -.Pa /etc/rc1 -(which can be overridden from the boot device). -This script tries to associate a hostname to the system by using -the MAC address of the first ethernet interface as a key, and -.Pa /etc/hosts -as a lookup table. -Then control is passed to the main user configuration script, -.Pa /etc/rc.conf , -which is supposed to override the value of a number of configuration -variables which have been pre-set in -.Pa /etc/rc.conf.defaults . -You can use the -.Va hostname -variable to create different configurations from the same file. -After taking control back, -.Pa /etc/rc1 -completes the initializations, and as part of this -it configures network interfaces and optionally calls the -firewall configuration script, -.Pa /etc/rc.firewall , -where the user can store his own firewall configuration. -.Pp -Note that by default -.Nm -runs entirely from main memory, and has no swap space, unless you -explicitly request it. -The boot device is also not used anymore after -.Pa /etc/rc1 -takes control, again, unless you explicitly request it. -.Sh CONFIGURING a PicoBSD system -The operation of a -.Nm -system can be configured through a few files which are read at boot -time, very much like a standard -.Fx -system. -There are, however, some minor differences to reduce the -number of files to store and/or customize, thus saving space. -Among the files to configure we have the following: -.Bl -tag -width indent -.It Pa /etc/hosts -Traditionally, this file contains the IP-to-hostname mappings. -In addition to this, the -.Nm -version of this file also contains -a mapping between Ethernet (MAC) addresses and hostnames, as follows: -.Bd -literal -offset indent -#ethertable start of the ethernet->hostname mapping -# mac_address hostname -# 00:12:34:56:78:9a pinco -# 12:34:56:* pallino -# * this-matches-all -.Ed -.Pp -where the line containing -.Dq Li #ethertable -marks the start of the table. -.Pp -If the MAC address is not found, the script will prompt you to -enter a hostname and IP address for the system, and this -information will be stored in the -.Pa /etc/hosts -file (in memory) so you can simply store them on disk later. -.Pp -Note that you can use wildcards in the address part, so a line -like the last one in the example will match any MAC address and -avoid the request. -.It Pa /etc/rc.conf -This file contains a number of variables which control the -operation of the system, such as interface configuration, -router setup, network service startup, etc. -For the exact list and meaning of these variables see -.Pa /etc/rc.conf.defaults . -.Pp -It is worth mentioning that some of the variables let you -overwrite the contents of some files in -.Pa /etc . -This option is available at the moment for -.Pa /etc/host.conf -and -.Pa /etc/resolv.conf , -whose contents are generally very short and suitable for this -type of updating. -In case you use these variables, remember to use newlines -as appropriate, e.g.\& -.Bd -literal -offset indent -host_conf="# this goes into /etc/host.conf -hosts -bind" -.Ed -.Pp -Although not mandatory, in this file you should only set the -variables indicated in -.Pa /etc/rc.conf.defaults , -and avoid starting services which depend on having the network running. -This can be done at a later time: if you set -.Va firewall_enable Ns = Ns Qq Li YES , -the -.Pa /etc/rc.firewall -script will be run after configuring the network interfaces, -so you can set up your firewall and safely start network services or enable -things such as routing and bridging. -.It Pa /etc/rc.firewall -This script can be used to configure the -.Xr ipfw 4 -firewall. -On entry, the -.Va fwcmd -variable is set to the pathname of the firewall command, -.Va firewall_type -contains the value set in -.Pa /etc/rc.conf , -and -.Va hostname -contains the name assigned to the host. -.El -.Pp -There is a small script called -.Nm update -which can be used to edit and/or save to disk a copy of the files -you have modified after booting. -The script takes one or more absolute pathnames, runs the -editor on the files passed as arguments, and then saves a -compressed copy of the files on the disk (mounting and -unmounting the latter around the operation). -.Pp -If invoked without arguments, -.Nm update -edits and saves -.Pa rc.conf , rc.firewall , -and -.Pa master.passwd . -.Pp -If one of the arguments is -.Pa /etc -(the directory name alone), -then the command saves to disk (without editing) -all the files in the directory for which a copy -already exists on disk (e.g.\& as a result of a previous update). -.Sh SEE ALSO -.Xr crunchgen 1 , -.Xr mdconfig 8 , -.Xr nanobsd 8 , -.Xr swapon 8 -.Sh AUTHORS -.An -nosplit -.An Andrzej Bialecki Aq Mt abial@FreeBSD.org , -with subsequent work on the scripts by -.An Luigi Rizzo Aq Mt luigi@iet.unipi.it -and others. -Man page and -.Pa Makefiles -created by -.An Greg Lehey Aq Mt grog@lemis.com . -.Sh BUGS -Documentation is still incomplete. diff --git a/share/man/man9/cr_seeothergids.9 b/share/man/man9/cr_seeothergids.9 deleted file mode 100644 index ea8f43667f1..00000000000 --- a/share/man/man9/cr_seeothergids.9 +++ /dev/null @@ -1,82 +0,0 @@ -.\" -.\" Copyright (c) 2003 Joseph Koshy -.\" -.\" All rights reserved. -.\" -.\" This program is free software. -.\" -.\" 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$ -.\" -.Dd November 11, 2003 -.Dt CR_SEEOTHERGIDS 9 -.Os -.Sh NAME -.Nm cr_seeothergids -.Nd determine visibility of objects given their group memberships -.Sh SYNOPSIS -.Ft int -.Fn cr_seeothergids "struct ucred *u1" "struct ucred *u2" -.Sh DESCRIPTION -This function determines the visibility of objects in the -kernel based on the group IDs in the credentials -.Fa u1 -and -.Fa u2 -associated with them. -.Pp -The visibility of objects is influenced by the -.Xr sysctl 8 -variable -.Va security.bsd.see_other_gids . -If this variable is non-zero then all objects in the kernel -are visible to each other irrespective of their group membership. -If this variable is zero then the object with credentials -.Fa u2 -is visible to the object with credentials -.Fa u1 -if either -.Fa u1 -is the super-user credential, or if at least one of -.Fa u1 Ns 's -group IDs is present in -.Fa u2 Ns 's -group set. -.Sh SYSCTL VARIABLES -.Bl -tag -width indent -.It Va security.bsd.see_other_gids -Must be non-zero if objects with unprivileged credentials are to be -able to see each other. -.El -.Sh RETURN VALUES -This function returns zero if the object with credential -.Fa u1 -can -.Dq see -the object with credential -.Fa u2 , -or -.Er ESRCH -otherwise. -.Sh SEE ALSO -.Xr cr_seeotheruids 9 , -.Xr p_candebug 9 diff --git a/share/man/man9/cr_seeotheruids.9 b/share/man/man9/cr_seeotheruids.9 deleted file mode 100644 index b7b7000b360..00000000000 --- a/share/man/man9/cr_seeotheruids.9 +++ /dev/null @@ -1,82 +0,0 @@ -.\" -.\" Copyright (c) 2003 Joseph Koshy -.\" -.\" All rights reserved. -.\" -.\" This program is free software. -.\" -.\" 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$ -.\" -.Dd November 11, 2003 -.Dt CR_SEEOTHERUIDS 9 -.Os -.Sh NAME -.Nm cr_seeotheruids -.Nd determine visibility of objects given their user credentials -.Sh SYNOPSIS -.Ft int -.Fn cr_seeotheruids "struct ucred *u1" "struct ucred *u2" -.Sh DESCRIPTION -This function determines the visibility of objects in the -kernel based on the real user IDs in the credentials -.Fa u1 -and -.Fa u2 -associated with them. -.Pp -The visibility of objects is influenced by the -.Xr sysctl 8 -variable -.Va security.bsd.see_other_uids . -If this variable is non-zero then all objects in the kernel -are visible to each other irrespective of their user IDs. -If this variable is zero then the object with credentials -.Fa u2 -is visible to the object with credentials -.Fa u1 -if either -.Fa u1 -is the super-user credential, or if -.Fa u1 -and -.Fa u2 -have the same real user ID. -.Sh SYSCTL VARIABLES -.Bl -tag -width indent -.It Va security.bsd.see_other_uids -Must be non-zero if objects with unprivileged credentials are to be -able to see each other. -.El -.Sh RETURN VALUES -This function returns zero if the object with credential -.Fa u1 -can -.Dq see -the object with credential -.Fa u2 , -or -.Er ESRCH -otherwise. -.Sh SEE ALSO -.Xr cr_seeothergids 9 , -.Xr p_candebug 9 diff --git a/share/man/man9/groupmember.9 b/share/man/man9/groupmember.9 index ae7ccd47795..ea1a7fdbebd 100644 --- a/share/man/man9/groupmember.9 +++ b/share/man/man9/groupmember.9 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH .\" DAMAGE. .\" -.Dd August 18, 2023 +.Dd October 31, 2024 .Dt GROUPMEMBER 9 .Os .Sh NAME @@ -35,9 +35,9 @@ .In sys/param.h .In sys/ucred.h .Ft int -.Fn groupmember "gid_t gid" "struct ucred *cred" +.Fn groupmember "gid_t gid" "const struct ucred *cred" .Ft int -.Fn realgroupmember "gid_t gid" "struct ucred *cred" +.Fn realgroupmember "gid_t gid" "const struct ucred *cred" .Sh DESCRIPTION The .Fn groupmember diff --git a/share/man/man9/ithread.9 b/share/man/man9/ithread.9 deleted file mode 100644 index 2a2e44f3d6a..00000000000 --- a/share/man/man9/ithread.9 +++ /dev/null @@ -1,350 +0,0 @@ -.\" Copyright (c) 2001 John H. Baldwin -.\" -.\" 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$ -.\" -.Dd August 25, 2006 -.Dt ITHREAD 9 -.Os -.Sh NAME -.Nm ithread_add_handler , -.Nm ithread_create , -.Nm ithread_destroy , -.Nm ithread_priority , -.Nm ithread_remove_handler , -.Nm ithread_schedule -.Nd kernel interrupt threads -.Sh SYNOPSIS -.In sys/param.h -.In sys/bus.h -.In sys/interrupt.h -.Ft int -.Fo ithread_add_handler -.Fa "struct ithd *ithread" -.Fa "const char *name" -.Fa "driver_intr_t handler" -.Fa "void *arg" -.Fa "u_char pri" -.Fa "enum intr_type flags" -.Fa "void **cookiep" -.Fc -.Ft int -.Fo ithread_create -.Fa "struct ithd **ithread" -.Fa "int vector" -.Fa "int flags" -.Fa "void (*disable)(int)" -.Fa "void (*enable)(int)" -.Fa "const char *fmt" -.Fa "..." -.Fc -.Ft int -.Fn ithread_destroy "struct ithd *ithread" -.Ft u_char -.Fn ithread_priority "enum intr_type flags" -.Ft int -.Fn ithread_remove_handler "void *cookie" -.Ft int -.Fn ithread_schedule "struct ithd *ithread" "int do_switch" -.Sh DESCRIPTION -Interrupt threads are kernel threads that run a list of handlers when -triggered by either a hardware or software interrupt. -Each interrupt handler has a name, handler function, handler argument, -priority, and various flags. -Each interrupt thread maintains a list of handlers sorted by priority. -This results in higher priority handlers being executed prior to lower -priority handlers. -Each thread assumes the priority of its highest priority handler for its -process priority, or -.Dv PRIO_MAX -if it has no handlers. -Interrupt threads are also associated with a single interrupt source, -represented as a vector number. -.Pp -The -.Fn ithread_create -function creates a new interrupt thread. -The -.Fa ithread -argument points to an -.Vt struct ithd -pointer that will point to the newly created thread upon success. -The -.Fa vector -argument specifies the interrupt source to associate this thread with. -The -.Fa flags -argument is a mask of properties of this thread. -The only valid flag currently for -.Fn ithread_create -is -.Dv IT_SOFT -to specify that this interrupt thread is a software interrupt. -The -.Fa enable -and -.Fa disable -arguments specify optional functions used to enable and disable this -interrupt thread's interrupt source. -The functions receive the vector corresponding to the thread's interrupt -source as their only argument. -The remaining arguments form a -.Xr printf 9 -argument list that is used to build the base name of the new ithread. -The full name of an interrupt thread is formed by concatenating the base -name of an interrupt thread with the names of all of its interrupt handlers. -.Pp -The -.Fn ithread_destroy -function destroys a previously created interrupt thread by releasing its -resources and arranging for the backing kernel thread to terminate. -An interrupt thread can only be destroyed if it has no handlers remaining. -.Pp -The -.Fn ithread_add_handler -function adds a new handler to an existing interrupt thread specified by -.Fa ithread . -The -.Fa name -argument specifies a name for this handler. -The -.Fa handler -and -.Fa arg -arguments provide the function to execute for this handler and an argument -to pass to it. -The -.Fa pri -argument specifies the priority of this handler and is used both in sorting -it in relation to the other handlers for this thread and to specify the -priority of the backing kernel thread. -The -.Fa flags -argument can be used to specify properties of this handler as defined in -.In sys/bus.h . -If -.Fa cookiep -is not -.Dv NULL , -then it will be assigned a cookie that can be used later to remove this -handler. -.Pp -The -.Fn ithread_remove_handler -removes a handler from an interrupt thread. -The -.Fa cookie -argument specifies the handler to remove from its thread. -.Pp -The -.Fn ithread_schedule -function schedules an interrupt thread to run. -If the -.Fa do_switch -argument is non-zero and the interrupt thread is idle, then a context switch -will be forced after putting the interrupt thread on the run queue. -.Pp -The -.Fn ithread_priority -function translates the -.Dv INTR_TYPE_* -interrupt flags into interrupt handler priorities. -.Pp -The interrupt flags not related to the type of a particular interrupt -.Pq Dv INTR_TYPE_* -can be used to specify additional properties of both hardware and software -interrupt handlers. -The -.Dv INTR_EXCL -flag specifies that this handler cannot share an interrupt thread with -another handler. -The -.Dv INTR_MPSAFE -flag specifies that this handler is MP safe in that it does not need the -Giant mutex to be held while it is executed. -The -.Dv INTR_ENTROPY -flag specifies that the interrupt source this handler is tied to is a good -source of entropy, and thus that entropy should be gathered when an interrupt -from the handler's source triggers. -Presently, the -.Dv INTR_ENTROPY -flag is not valid for software interrupt handlers. -.Pp -It is not permitted to sleep in an interrupt thread; hence, any memory -or zone allocations in an interrupt thread should be specified with the -.Dv M_NOWAIT -flag set. -Any allocation errors must be handled thereafter. -.Sh RETURN VALUES -The -.Fn ithread_add_handler , -.Fn ithread_create , -.Fn ithread_destroy , -.Fn ithread_remove_handler , -and -.Fn ithread_schedule -functions return zero on success and non-zero on failure. -The -.Fn ithread_priority -function returns a process priority corresponding to the passed in interrupt -flags. -.Sh EXAMPLES -The -.Fn swi_add -function demonstrates the use of -.Fn ithread_create -and -.Fn ithread_add_handler . -.Bd -literal -offset indent -int -swi_add(struct ithd **ithdp, const char *name, driver_intr_t handler, - void *arg, int pri, enum intr_type flags, void **cookiep) -{ - struct proc *p; - struct ithd *ithd; - int error; - - if (flags & INTR_ENTROPY) - return (EINVAL); - - ithd = (ithdp != NULL) ? *ithdp : NULL; - - if (ithd != NULL) { - if ((ithd->it_flags & IT_SOFT) == 0) - return(EINVAL); - } else { - error = ithread_create(&ithd, pri, IT_SOFT, NULL, NULL, - "swi%d:", pri); - if (error) - return (error); - - if (ithdp != NULL) - *ithdp = ithd; - } - return (ithread_add_handler(ithd, name, handler, arg, pri + PI_SOFT, - flags, cookiep)); -} -.Ed -.Sh ERRORS -The -.Fn ithread_add_handler -function will fail if: -.Bl -tag -width Er -.It Bq Er EINVAL -Any of the -.Fa ithread , -.Fa handler , -or -.Fa name -arguments are -.Dv NULL . -.It Bq Er EINVAL -The -.Dv INTR_EXCL -flag is specified and the interrupt thread -.Fa ithread -already has at least one handler, or the interrupt thread -.Fa ithread -already has an exclusive handler. -.It Bq Er ENOMEM -Could not allocate needed memory for this handler. -.El -.Pp -The -.Fn ithread_create -function will fail if: -.Bl -tag -width Er -.It Bq Er EAGAIN -The system-imposed limit on the total -number of processes under execution would be exceeded. -The limit is given by the -.Xr sysctl 3 -MIB variable -.Dv KERN_MAXPROC . -.It Bq Er EINVAL -A flag other than -.Dv IT_SOFT -was specified in the -.Fa flags -parameter. -.It Bq Er ENOMEM -Could not allocate needed memory for this interrupt thread. -.El -.Pp -The -.Fn ithread_destroy -function will fail if: -.Bl -tag -width Er -.It Bq Er EINVAL -The -.Fa ithread -argument is -.Dv NULL . -.It Bq Er EINVAL -The interrupt thread pointed to by -.Fa ithread -has at least one handler. -.El -.Pp -The -.Fn ithread_remove_handler -function will fail if: -.Bl -tag -width Er -.It Bq Er EINVAL -The -.Fa cookie -argument is -.Dv NULL . -.El -.Pp -The -.Fn ithread_schedule -function will fail if: -.Bl -tag -width Er -.It Bq Er EINVAL -The -.Fa ithread -argument is -.Dv NULL . -.It Bq Er EINVAL -The interrupt thread pointed to by -.Fa ithread -has no interrupt handlers. -.El -.Sh SEE ALSO -.Xr kthread 9 , -.Xr malloc 9 , -.Xr swi 9 , -.Xr uma 9 -.Sh HISTORY -Interrupt threads and their corresponding API first appeared in -.Fx 5.0 . -.Sh BUGS -Currently -.Vt struct ithd -represents both an interrupt source and an interrupt thread. -There should be a separate -.Vt struct isrc -that contains a vector number, enable and disable functions, etc.\& that -an ithread holds a reference to. diff --git a/share/man/man9/pbuf.9 b/share/man/man9/pbuf.9 deleted file mode 100644 index 6cf6d3944bf..00000000000 --- a/share/man/man9/pbuf.9 +++ /dev/null @@ -1,132 +0,0 @@ -.\" -.\" Copyright (C) 2001 Chad David . 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(s), this list of conditions and the following disclaimer as -.\" the first lines of this file unmodified other than the possible -.\" addition of one or more copyright notices. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice(s), 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 HOLDER(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 COPYRIGHT HOLDER(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. -.\" -.\" $FreeBSD$ -.\" -.Dd July 9, 2001 -.Dt PBUF 9 -.Os -.Sh NAME -.Nm pbuf , -.Nm getpbuf , -.Nm trypbuf , -.Nm relpbuf -.Nd "functions for managing physical buffers" -.Sh SYNOPSIS -.In sys/param.h -.In sys/systm.h -.In sys/bio.h -.In sys/buf.h -.Ft "struct buf *" -.Fn getpbuf "int *pfreecnt" -.Ft "struct buf *" -.Fn trypbuf "int *pfreecnt" -.Ft void -.Fn relpbuf "struct buf *bp" "int *pfreecnt" -.Sh DESCRIPTION -These functions are used to allocate and release physical buffers. -.Pp -The physical buffers are allocated at system startup and are -maintained in a separate pool from the main system buffers. -They are intended for use by subsystems that cannot or should not be -reliant on the main pool of buffers (for example the swap pager). -The system allocates between 16 and 256 physical buffers depending -on the amount of memory in the system. -.Pp -Each subsystem that allocates buffers via these calls is expected -to manage its own percentage free counter. -If the value is initialized to \-1 the number of buffers available -to the subsystem is limited only by the number of physical buffers -available. -The number of buffers is stored in -.Va nswbuf -which is defined in -.In sys/buf.h -and initialized in -.Fn cpu_startup . -A recommended initialization value is 1/2 -.Va nswbuf . -.Pp -The -.Fn getpbuf -function returns the first available buffer to the user. -If there are no buffers available, -.Fn getpbuf -will sleep waiting for one to become available. -If -.Fa pfreecnt -is zero, -.Fn getpbuf -will sleep until it increases. -.Fa pfreecnt -is decremented prior to returning. -.Pp -The -.Fn trypbuf -function returns the first available buffer. -If there are no buffers available, -.Dv NULL -is returned. -As well, if -.Fa pfreecnt -is zero, -.Dv NULL -is returned. -.Fa pfreecnt -is decremented prior to returning a valid buffer. -If -.Dv NULL -is returned, -.Fa pfreecnt -is not modified. -.Pp -The -.Fn relpbuf -function releases the buffer back to the free list. -If the buffers -.Va b_rcred -or -.Va b_wcred -structures are not -.Dv NULL , -they are freed. -See -.Xr crfree 9 . -.Pp -.Fa pfreecnt -is incremented prior to returning. -.Sh RETURN VALUES -.Fn getpbuf -and -.Fn trypbuf -return a pointer to the buffer. -In the case of -.Fn trypbuf , -.Dv NULL -can also be returned indicating that there are no buffers available. -.Sh AUTHORS -This manual page was written by -.An Chad David Aq Mt davidc@acns.ab.ca . diff --git a/share/man/man9/timeout.9 b/share/man/man9/timeout.9 deleted file mode 100644 index 90ea78a654b..00000000000 --- a/share/man/man9/timeout.9 +++ /dev/null @@ -1,961 +0,0 @@ -.\" $NetBSD: timeout.9,v 1.2 1996/06/23 22:32:34 pk Exp $ -.\" -.\" Copyright (c) 1996 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 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$ -.\" -.Dd December 10, 2019 -.Dt TIMEOUT 9 -.Os -.Sh NAME -.Nm callout_active , -.Nm callout_deactivate , -.Nm callout_async_drain , -.Nm callout_drain , -.Nm callout_handle_init , -.Nm callout_init , -.Nm callout_init_mtx , -.Nm callout_init_rm , -.Nm callout_init_rw , -.Nm callout_pending , -.Nm callout_reset , -.Nm callout_reset_curcpu , -.Nm callout_reset_on , -.Nm callout_reset_sbt , -.Nm callout_reset_sbt_curcpu , -.Nm callout_reset_sbt_on , -.Nm callout_schedule , -.Nm callout_schedule_curcpu , -.Nm callout_schedule_on , -.Nm callout_schedule_sbt , -.Nm callout_schedule_sbt_curcpu , -.Nm callout_schedule_sbt_on , -.Nm callout_stop , -.Nm callout_when , -.Nm timeout , -.Nm untimeout -.Nd execute a function after a specified length of time -.Sh SYNOPSIS -.In sys/types.h -.In sys/callout.h -.In sys/systm.h -.Bd -literal -typedef void callout_func_t (void *); -typedef void timeout_t (void *); -.Ed -.Ft int -.Fn callout_active "struct callout *c" -.Ft void -.Fn callout_deactivate "struct callout *c" -.Ft int -.Fn callout_async_drain "struct callout *c" "callout_func_t *drain" -.Ft int -.Fn callout_drain "struct callout *c" -.Ft void -.Fn callout_handle_init "struct callout_handle *handle" -.Bd -literal -struct callout_handle handle = CALLOUT_HANDLE_INITIALIZER(&handle); -.Ed -.Ft void -.Fn callout_init "struct callout *c" "int mpsafe" -.Ft void -.Fn callout_init_mtx "struct callout *c" "struct mtx *mtx" "int flags" -.Ft void -.Fn callout_init_rm "struct callout *c" "struct rmlock *rm" "int flags" -.Ft void -.Fn callout_init_rw "struct callout *c" "struct rwlock *rw" "int flags" -.Ft int -.Fn callout_pending "struct callout *c" -.Ft int -.Fo callout_reset -.Fa "struct callout *c" -.Fa "int ticks" -.Fa "callout_func_t *func" -.Fa "void *arg" -.Fc -.Ft int -.Fo callout_reset_curcpu -.Fa "struct callout *c" -.Fa "int ticks" -.Fa "callout_func_t *func" -.Fa "void *arg" -.Fc -.Ft int -.Fo callout_reset_on -.Fa "struct callout *c" -.Fa "int ticks" -.Fa "callout_func_t *func" -.Fa "void *arg" -.Fa "int cpu" -.Fc -.Ft int -.Fo callout_reset_sbt -.Fa "struct callout *c" -.Fa "sbintime_t sbt" -.Fa "sbintime_t pr" -.Fa "callout_func_t *func" -.Fa "void *arg" -.Fa "int flags" -.Fc -.Ft int -.Fo callout_reset_sbt_curcpu -.Fa "struct callout *c" -.Fa "sbintime_t sbt" -.Fa "sbintime_t pr" -.Fa "callout_func_t *func" -.Fa "void *arg" -.Fa "int flags" -.Fc -.Ft int -.Fo callout_reset_sbt_on -.Fa "struct callout *c" -.Fa "sbintime_t sbt" -.Fa "sbintime_t pr" -.Fa "callout_func_t *func" -.Fa "void *arg" -.Fa "int cpu" -.Fa "int flags" -.Fc -.Ft int -.Fn callout_schedule "struct callout *c" "int ticks" -.Ft int -.Fn callout_schedule_curcpu "struct callout *c" "int ticks" -.Ft int -.Fn callout_schedule_on "struct callout *c" "int ticks" "int cpu" -.Ft int -.Fo callout_schedule_sbt -.Fa "struct callout *c" -.Fa "sbintime_t sbt" -.Fa "sbintime_t pr" -.Fa "int flags" -.Fc -.Ft int -.Fo callout_schedule_sbt_curcpu -.Fa "struct callout *c" -.Fa "sbintime_t sbt" -.Fa "sbintime_t pr" -.Fa "int flags" -.Fc -.Ft int -.Fo callout_schedule_sbt_on -.Fa "struct callout *c" -.Fa "sbintime_t sbt" -.Fa "sbintime_t pr" -.Fa "int cpu" -.Fa "int flags" -.Fc -.Ft int -.Fn callout_stop "struct callout *c" -.Ft sbintime_t -.Fo callout_when -.Fa "sbintime_t sbt" -.Fa "sbintime_t precision" -.Fa "int flags" -.Fa "sbintime_t *sbt_res" -.Fa "sbintime_t *precision_res" -.Fc -.Ft struct callout_handle -.Fn timeout "timeout_t *func" "void *arg" "int ticks" -.Ft void -.Fn untimeout "timeout_t *func" "void *arg" "struct callout_handle handle" -.Sh DESCRIPTION -The -.Nm callout -API is used to schedule a call to an arbitrary function at a specific -time in the future. -Consumers of this API are required to allocate a callout structure -.Pq struct callout -for each pending function invocation. -This structure stores state about the pending function invocation including -the function to be called and the time at which the function should be invoked. -Pending function calls can be cancelled or rescheduled to a different time. -In addition, -a callout structure may be reused to schedule a new function call after a -scheduled call is completed. -.Pp -Callouts only provide a single-shot mode. -If a consumer requires a periodic timer, -it must explicitly reschedule each function call. -This is normally done by rescheduling the subsequent call within the called -function. -.Pp -Callout functions must not sleep. -They may not acquire sleepable locks, -wait on condition variables, -perform blocking allocation requests, -or invoke any other action that might sleep. -.Pp -Each callout structure must be initialized by -.Fn callout_init , -.Fn callout_init_mtx , -.Fn callout_init_rm , -or -.Fn callout_init_rw -before it is passed to any of the other callout functions. -The -.Fn callout_init -function initializes a callout structure in -.Fa c -that is not associated with a specific lock. -If the -.Fa mpsafe -argument is zero, -the callout structure is not considered to be -.Dq multi-processor safe ; -and the Giant lock will be acquired before calling the callout function -and released when the callout function returns. -.Pp -The -.Fn callout_init_mtx , -.Fn callout_init_rm , -and -.Fn callout_init_rw -functions initialize a callout structure in -.Fa c -that is associated with a specific lock. -The lock is specified by the -.Fa mtx , -.Fa rm , -or -.Fa rw -parameter. -The associated lock must be held while stopping or rescheduling the -callout. -The callout subsystem acquires the associated lock before calling the -callout function and releases it after the function returns. -If the callout was cancelled while the callout subsystem waited for the -associated lock, -the callout function is not called, -and the associated lock is released. -This ensures that stopping or rescheduling the callout will abort any -previously scheduled invocation. -.Pp -Only regular mutexes may be used with -.Fn callout_init_mtx ; -spin mutexes are not supported. -A sleepable read-mostly lock -.Po -one initialized with the -.Dv RM_SLEEPABLE -flag -.Pc -may not be used with -.Fn callout_init_rm . -Similarly, other sleepable lock types such as -.Xr sx 9 -and -.Xr lockmgr 9 -cannot be used with callouts because sleeping is not permitted in -the callout subsystem. -.Pp -These -.Fa flags -may be specified for -.Fn callout_init_mtx , -.Fn callout_init_rm , -or -.Fn callout_init_rw : -.Bl -tag -width ".Dv CALLOUT_RETURNUNLOCKED" -.It Dv CALLOUT_RETURNUNLOCKED -The callout function will release the associated lock itself, -so the callout subsystem should not attempt to unlock it -after the callout function returns. -.It Dv CALLOUT_SHAREDLOCK -The lock is only acquired in read mode when running the callout handler. -This flag is ignored by -.Fn callout_init_mtx . -.El -.Pp -The function -.Fn callout_stop -cancels a callout -.Fa c -if it is currently pending. -If the callout is pending and successfully stopped, then -.Fn callout_stop -returns a value of one. -If the callout is not set, or -has already been serviced, then -negative one is returned. -If the callout is currently being serviced and cannot be stopped, -then zero will be returned. -If the callout is currently being serviced and cannot be stopped, and at the -same time a next invocation of the same callout is also scheduled, then -.Fn callout_stop -unschedules the next run and returns zero. -If the callout has an associated lock, -then that lock must be held when this function is called. -.Pp -The function -.Fn callout_async_drain -is identical to -.Fn callout_stop -with one difference. -When -.Fn callout_async_drain -returns zero it will arrange for the function -.Fa drain -to be called using the same argument given to the -.Fn callout_reset -function. -.Fn callout_async_drain -If the callout has an associated lock, -then that lock must be held when this function is called. -Note that when stopping multiple callouts that use the same lock it is possible -to get multiple return's of zero and multiple calls to the -.Fa drain -function, depending upon which CPU's the callouts are running. -The -.Fa drain -function itself is called from the context of the completing callout -i.e. softclock or hardclock, just like a callout itself. -.Pp -The function -.Fn callout_drain -is identical to -.Fn callout_stop -except that it will wait for the callout -.Fa c -to complete if it is already in progress. -This function MUST NOT be called while holding any -locks on which the callout might block, or deadlock will result. -Note that if the callout subsystem has already begun processing this -callout, then the callout function may be invoked before -.Fn callout_drain -returns. -However, the callout subsystem does guarantee that the callout will be -fully stopped before -.Fn callout_drain -returns. -.Pp -The -.Fn callout_reset -and -.Fn callout_schedule -function families schedule a future function invocation for callout -.Fa c . -If -.Fa c -already has a pending callout, -it is cancelled before the new invocation is scheduled. -These functions return a value of one if a pending callout was cancelled -and zero if there was no pending callout. -If the callout has an associated lock, -then that lock must be held when any of these functions are called. -.Pp -The time at which the callout function will be invoked is determined by -either the -.Fa ticks -argument or the -.Fa sbt , -.Fa pr , -and -.Fa flags -arguments. -When -.Fa ticks -is used, -the callout is scheduled to execute after -.Fa ticks Ns No /hz -seconds. -Non-positive values of -.Fa ticks -are silently converted to the value -.Sq 1 . -.Pp -The -.Fa sbt , -.Fa pr , -and -.Fa flags -arguments provide more control over the scheduled time including -support for higher resolution times, -specifying the precision of the scheduled time, -and setting an absolute deadline instead of a relative timeout. -The callout is scheduled to execute in a time window which begins at -the time specified in -.Fa sbt -and extends for the amount of time specified in -.Fa pr . -If -.Fa sbt -specifies a time in the past, -the window is adjusted to start at the current time. -A non-zero value for -.Fa pr -allows the callout subsystem to coalesce callouts scheduled close to each -other into fewer timer interrupts, -reducing processing overhead and power consumption. -These -.Fa flags -may be specified to adjust the interpretation of -.Fa sbt -and -.Fa pr : -.Bl -tag -width ".Dv C_DIRECT_EXEC" -.It Dv C_ABSOLUTE -Handle the -.Fa sbt -argument as an absolute time since boot. -By default, -.Fa sbt -is treated as a relative amount of time, -similar to -.Fa ticks . -.It Dv C_DIRECT_EXEC -Run the handler directly from hardware interrupt context instead of from the -softclock thread. -This reduces latency and overhead, but puts more constraints on the callout -function. -Callout functions run in this context may use only spin mutexes for locking -and should be as small as possible because they run with absolute priority. -.It Fn C_PREL -Specifies relative event time precision as binary logarithm of time interval -divided by acceptable time deviation: 1 -- 1/2, 2 -- 1/4, etc. -Note that the larger of -.Fa pr -or this value is used as the length of the time window. -Smaller values -.Pq which result in larger time intervals -allow the callout subsystem to aggregate more events in one timer interrupt. -.It Dv C_PRECALC -The -.Fa sbt -argument specifies the absolute time at which the callout should be run, -and the -.Fa pr -argument specifies the requested precision, which will not be -adjusted during the scheduling process. -The -.Fa sbt -and -.Fa pr -values should be calculated by an earlier call to -.Fn callout_when -which uses the user-supplied -.Fa sbt , -.Fa pr , -and -.Fa flags -values. -.It Dv C_HARDCLOCK -Align the timeouts to -.Fn hardclock -calls if possible. -.El -.Pp -The -.Fn callout_reset -functions accept a -.Fa func -argument which identifies the function to be called when the time expires. -It must be a pointer to a function that takes a single -.Fa void * -argument. -Upon invocation, -.Fa func -will receive -.Fa arg -as its only argument. -The -.Fn callout_schedule -functions reuse the -.Fa func -and -.Fa arg -arguments from the previous callout. -Note that one of the -.Fn callout_reset -functions must always be called to initialize -.Fa func -and -.Fa arg -before one of the -.Fn callout_schedule -functions can be used. -.Pp -The callout subsystem provides a softclock thread for each CPU in the system. -Callouts are assigned to a single CPU and are executed by the softclock thread -for that CPU. -Initially, -callouts are assigned to CPU 0. -The -.Fn callout_reset_on , -.Fn callout_reset_sbt_on , -.Fn callout_schedule_on -and -.Fn callout_schedule_sbt_on -functions assign the callout to CPU -.Fa cpu . -The -.Fn callout_reset_curcpu , -.Fn callout_reset_sbt_curpu , -.Fn callout_schedule_curcpu -and -.Fn callout_schedule_sbt_curcpu -functions assign the callout to the current CPU. -The -.Fn callout_reset , -.Fn callout_reset_sbt , -.Fn callout_schedule -and -.Fn callout_schedule_sbt -functions schedule the callout to execute in the softclock thread of the CPU -to which it is currently assigned. -.Pp -Softclock threads are not pinned to their respective CPUs by default. -The softclock thread for CPU 0 can be pinned to CPU 0 by setting the -.Va kern.pin_default_swi -loader tunable to a non-zero value. -Softclock threads for CPUs other than zero can be pinned to their -respective CPUs by setting the -.Va kern.pin_pcpu_swi -loader tunable to a non-zero value. -.Pp -The macros -.Fn callout_pending , -.Fn callout_active -and -.Fn callout_deactivate -provide access to the current state of the callout. -The -.Fn callout_pending -macro checks whether a callout is -.Em pending ; -a callout is considered -.Em pending -when a timeout has been set but the time has not yet arrived. -Note that once the timeout time arrives and the callout subsystem -starts to process this callout, -.Fn callout_pending -will return -.Dv FALSE -even though the callout function may not have finished -.Pq or even begun -executing. -The -.Fn callout_active -macro checks whether a callout is marked as -.Em active , -and the -.Fn callout_deactivate -macro clears the callout's -.Em active -flag. -The callout subsystem marks a callout as -.Em active -when a timeout is set and it clears the -.Em active -flag in -.Fn callout_stop -and -.Fn callout_drain , -but it -.Em does not -clear it when a callout expires normally via the execution of the -callout function. -.Pp -The -.Fn callout_when -function may be used to pre-calculate the absolute time at which the -timeout should be run and the precision of the scheduled run time -according to the required time -.Fa sbt , -precision -.Fa precision , -and additional adjustments requested by the -.Fa flags -argument. -Flags accepted by the -.Fn callout_when -function are the same as flags for the -.Fn callout_reset -function. -The resulting time is assigned to the variable pointed to by the -.Fa sbt_res -argument, and the resulting precision is assigned to -.Fa *precision_res . -When passing the results to -.Fa callout_reset , -add the -.Va C_PRECALC -flag to -.Fa flags , -to avoid incorrect re-adjustment. -The function is intended for situations where precise time of the callout -run should be known in advance, since -trying to read this time from the callout structure itself after a -.Fn callout_reset -call is racy. -.Ss "Avoiding Race Conditions" -The callout subsystem invokes callout functions from its own thread -context. -Without some kind of synchronization, -it is possible that a callout -function will be invoked concurrently with an attempt to stop or reset -the callout by another thread. -In particular, since callout functions typically acquire a lock as -their first action, the callout function may have already been invoked, -but is blocked waiting for that lock at the time that another thread -tries to reset or stop the callout. -.Pp -There are three main techniques for addressing these -synchronization concerns. -The first approach is preferred as it is the simplest: -.Bl -enum -offset indent -.It -Callouts can be associated with a specific lock when they are initialized -by -.Fn callout_init_mtx , -.Fn callout_init_rm , -or -.Fn callout_init_rw . -When a callout is associated with a lock, -the callout subsystem acquires the lock before the callout function is -invoked. -This allows the callout subsystem to transparently handle races between -callout cancellation, -scheduling, -and execution. -Note that the associated lock must be acquired before calling -.Fn callout_stop -or one of the -.Fn callout_reset -or -.Fn callout_schedule -functions to provide this safety. -.Pp -A callout initialized via -.Fn callout_init -with -.Fa mpsafe -set to zero is implicitly associated with the -.Va Giant -mutex. -If -.Va Giant -is held when cancelling or rescheduling the callout, -then its use will prevent races with the callout function. -.It -The return value from -.Fn callout_stop -.Po -or the -.Fn callout_reset -and -.Fn callout_schedule -function families -.Pc -indicates whether or not the callout was removed. -If it is known that the callout was set and the callout function has -not yet executed, then a return value of -.Dv FALSE -indicates that the callout function is about to be called. -For example: -.Bd -literal -offset indent -if (sc->sc_flags & SCFLG_CALLOUT_RUNNING) { - if (callout_stop(&sc->sc_callout)) { - sc->sc_flags &= ~SCFLG_CALLOUT_RUNNING; - /* successfully stopped */ - } else { - /* - * callout has expired and callout - * function is about to be executed - */ - } -} -.Ed -.It -The -.Fn callout_pending , -.Fn callout_active -and -.Fn callout_deactivate -macros can be used together to work around the race conditions. -When a callout's timeout is set, the callout subsystem marks the -callout as both -.Em active -and -.Em pending . -When the timeout time arrives, the callout subsystem begins processing -the callout by first clearing the -.Em pending -flag. -It then invokes the callout function without changing the -.Em active -flag, and does not clear the -.Em active -flag even after the callout function returns. -The mechanism described here requires the callout function itself to -clear the -.Em active -flag using the -.Fn callout_deactivate -macro. -The -.Fn callout_stop -and -.Fn callout_drain -functions always clear both the -.Em active -and -.Em pending -flags before returning. -.Pp -The callout function should first check the -.Em pending -flag and return without action if -.Fn callout_pending -returns -.Dv TRUE . -This indicates that the callout was rescheduled using -.Fn callout_reset -just before the callout function was invoked. -If -.Fn callout_active -returns -.Dv FALSE -then the callout function should also return without action. -This indicates that the callout has been stopped. -Finally, the callout function should call -.Fn callout_deactivate -to clear the -.Em active -flag. -For example: -.Bd -literal -offset indent -mtx_lock(&sc->sc_mtx); -if (callout_pending(&sc->sc_callout)) { - /* callout was reset */ - mtx_unlock(&sc->sc_mtx); - return; -} -if (!callout_active(&sc->sc_callout)) { - /* callout was stopped */ - mtx_unlock(&sc->sc_mtx); - return; -} -callout_deactivate(&sc->sc_callout); -/* rest of callout function */ -.Ed -.Pp -Together with appropriate synchronization, such as the mutex used above, -this approach permits the -.Fn callout_stop -and -.Fn callout_reset -functions to be used at any time without races. -For example: -.Bd -literal -offset indent -mtx_lock(&sc->sc_mtx); -callout_stop(&sc->sc_callout); -/* The callout is effectively stopped now. */ -.Ed -.Pp -If the callout is still pending then these functions operate normally, -but if processing of the callout has already begun then the tests in -the callout function cause it to return without further action. -Synchronization between the callout function and other code ensures that -stopping or resetting the callout will never be attempted while the -callout function is past the -.Fn callout_deactivate -call. -.Pp -The above technique additionally ensures that the -.Em active -flag always reflects whether the callout is effectively enabled or -disabled. -If -.Fn callout_active -returns false, then the callout is effectively disabled, since even if -the callout subsystem is actually just about to invoke the callout -function, the callout function will return without action. -.El -.Pp -There is one final race condition that must be considered when a -callout is being stopped for the last time. -In this case it may not be safe to let the callout function itself -detect that the callout was stopped, since it may need to access -data objects that have already been destroyed or recycled. -To ensure that the callout is completely finished, a call to -.Fn callout_drain -should be used. -In particular, -a callout should always be drained prior to destroying its associated lock -or releasing the storage for the callout structure. -.Sh LEGACY API -.Bf Sy -The functions below are a legacy API that will be removed in a future release. -New code should not use these routines. -.Ef -.Pp -The function -.Fn timeout -schedules a call to the function given by the argument -.Fa func -to take place after -.Fa ticks Ns No /hz -seconds. -Non-positive values of -.Fa ticks -are silently converted to the value -.Sq 1 . -.Fa func -should be a pointer to a function that takes a -.Fa void * -argument. -Upon invocation, -.Fa func -will receive -.Fa arg -as its only argument. -The return value from -.Fn timeout -is a -.Ft struct callout_handle -which can be used in conjunction with the -.Fn untimeout -function to request that a scheduled timeout be canceled. -.Pp -The function -.Fn callout_handle_init -can be used to initialize a handle to a state which will cause -any calls to -.Fn untimeout -with that handle to return with no side -effects. -.Pp -Assigning a callout handle the value of -.Fn CALLOUT_HANDLE_INITIALIZER -performs the same function as -.Fn callout_handle_init -and is provided for use on statically declared or global callout handles. -.Pp -The function -.Fn untimeout -cancels the timeout associated with -.Fa handle -using the -.Fa func -and -.Fa arg -arguments to validate the handle. -If the handle does not correspond to a timeout with -the function -.Fa func -taking the argument -.Fa arg -no action is taken. -.Fa handle -must be initialized by a previous call to -.Fn timeout , -.Fn callout_handle_init , -or assigned the value of -.Fn CALLOUT_HANDLE_INITIALIZER "&handle" -before being passed to -.Fn untimeout . -The behavior of calling -.Fn untimeout -with an uninitialized handle -is undefined. -.Pp -As handles are recycled by the system, it is possible (although unlikely) -that a handle from one invocation of -.Fn timeout -may match the handle of another invocation of -.Fn timeout -if both calls used the same function pointer and argument, and the first -timeout is expired or canceled before the second call. -The timeout facility offers O(1) running time for -.Fn timeout -and -.Fn untimeout . -Timeouts are executed from -.Fn softclock -with the -.Va Giant -lock held. -Thus they are protected from re-entrancy. -.Sh RETURN VALUES -The -.Fn callout_active -macro returns the state of a callout's -.Em active -flag. -.Pp -The -.Fn callout_pending -macro returns the state of a callout's -.Em pending -flag. -.Pp -The -.Fn callout_reset -and -.Fn callout_schedule -function families return a value of one if the callout was pending before the new -function invocation was scheduled. -.Pp -The -.Fn callout_stop -and -.Fn callout_drain -functions return a value of one if the callout was still pending when it was -called, a zero if the callout could not be stopped and a negative one is it -was either not running or has already completed. -The -.Fn timeout -function returns a -.Ft struct callout_handle -that can be passed to -.Fn untimeout . -.Sh HISTORY -The current timeout and untimeout routines are based on the work of -.An Adam M. Costello -and -.An George Varghese , -published in a technical report entitled -.%T "Redesigning the BSD Callout and Timer Facilities" -and modified slightly for inclusion in -.Fx -by -.An Justin T. Gibbs . -The original work on the data structures used in this implementation -was published by -.An G. Varghese -and -.An A. Lauck -in the paper -.%T "Hashed and Hierarchical Timing Wheels: Data Structures for the Efficient Implementation of a Timer Facility" -in the -.%B "Proceedings of the 11th ACM Annual Symposium on Operating Systems Principles" . -The current implementation replaces the long standing -.Bx -linked list -callout mechanism which offered O(n) insertion and removal running time -but did not generate or require handles for untimeout operations. diff --git a/share/man/man9/vcount.9 b/share/man/man9/vcount.9 deleted file mode 100644 index 186a350ac56..00000000000 --- a/share/man/man9/vcount.9 +++ /dev/null @@ -1,73 +0,0 @@ -.\" -*- nroff -*- -.\" -.\" Copyright (c) 2000 Andrew Stevenson -.\" -.\" All rights reserved. -.\" -.\" This program is free software. -.\" -.\" 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. -.\" -.\" If this manual page travels to places exotic (like projects other than -.\" FreeBSD) I would love to hear about it. -.\" Andrew -.\" -.\" $FreeBSD$ -.\" -.Dd January 19, 2012 -.Dt VCOUNT 9 -.Os -.Sh NAME -.Nm vcount , -.Nm count_dev -.Nd "get total number of references to a device" -.Sh SYNOPSIS -.In sys/param.h -.In sys/time.h -.In sys/conf.h -.In sys/vnode.h -.Ft int -.Fn vcount "struct vnode *vp" -.Ft int -.Fn count_dev "struct cdev *dev" -.Sh DESCRIPTION -.Fn vcount -is used to get the number of references to a particular device. -It allows for the fact that multiple vnodes may reference the same device. -.Fn count_dev -does the same thing as -.Fn vcount , -but takes a -.Vt "struct cdev" -rather than a -.Vt "struct vnode" -pointer as an argument. -.Sh RETURN VALUES -.Fn vcount -and -.Fn count_dev -both return the number of references to the device. -.Sh SEE ALSO -.Xr VFS 9 , -.Xr vnode 9 -.Sh AUTHORS -This manual page was written by -.An Andrew Stevenson . diff --git a/share/man/man9/vm_map_create.9 b/share/man/man9/vm_map_create.9 deleted file mode 100644 index 11ba8ac84d8..00000000000 --- a/share/man/man9/vm_map_create.9 +++ /dev/null @@ -1,66 +0,0 @@ -.\" -.\" Copyright (c) 2003 Bruce M Simpson -.\" 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$ -.\" -.Dd July 19, 2003 -.Dt VM_MAP_CREATE 9 -.Os -.Sh NAME -.Nm vm_map_create -.Nd create a new vm_map structure -.Sh SYNOPSIS -.In sys/param.h -.In vm/vm.h -.In vm/vm_map.h -.Ft vm_map_t -.Fn vm_map_create "pmap_t pmap" "vm_offset_t min" "vm_offset_t max" -.Sh DESCRIPTION -The -.Fn vm_map_create -function creates and returns a new, empty map structure, associated -with the physical map -.Fa pmap , -and with the -upper and lower address bounds specified by -.Fa max -and -.Fa min -respectively. -.Sh IMPLEMENTATION NOTES -The kernel's zone allocator is used to allocate the map. -.Sh RETURN VALUES -The -.Fn vm_map_create -function returns a pointer to the newly allocated map if successful. -Otherwise, it returns -.Dv NULL . -.Sh SEE ALSO -.Xr pmap 9 , -.Xr vm_map 9 , -.Xr vm_map_init 9 -.Sh AUTHORS -This manual page was written by -.An Bruce M Simpson Aq Mt bms@spc.org . diff --git a/share/man/man9/vm_page_hold.9 b/share/man/man9/vm_page_hold.9 deleted file mode 100644 index 971d6c2d5da..00000000000 --- a/share/man/man9/vm_page_hold.9 +++ /dev/null @@ -1,75 +0,0 @@ -.\" -.\" Copyright (C) 2001 Chad David . 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(s), this list of conditions and the following disclaimer as -.\" the first lines of this file unmodified other than the possible -.\" addition of one or more copyright notices. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice(s), 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 HOLDER(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 COPYRIGHT HOLDER(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. -.\" -.\" $FreeBSD$ -.\" -.Dd July 13, 2001 -.Dt VM_PAGE_HOLD 9 -.Os -.Sh NAME -.Nm vm_page_hold , -.Nm vm_page_unhold -.Nd "update a page's hold count" -.Sh SYNOPSIS -.In sys/param.h -.In vm/vm.h -.In vm/vm_page.h -.Ft void -.Fn vm_page_hold "vm_page_t m" -.Ft void -.Fn vm_page_unhold "vm_page_t m" -.Sh DESCRIPTION -The -.Fn vm_page_hold -function increases the hold count on a page. -This prevents the page daemon from freeing the page. -.Pp -.Fn vm_page_hold -should only be used for very temporary wiring of a page, -as that page will not be considered for paging or -reallocation for as long as its hold count is greater -than zero. -Also note that while wired pages are removed from whatever -queue they are on, -.Fn vm_page_hold -does not affect the location of the page. -If it is on a queue prior to the call, it will still -be there afterward. -.Pp -If the page needs to be held for a long period of time, -.Xr vm_page_wire 9 -should be used. -.Pp -.Fn vm_page_unhold -function reduces the hold count on a page. -If the hold count is zero it is possible that the page will be freed by the -page daemon. -.Sh SEE ALSO -.Xr vm_page_unwire 9 , -.Xr vm_page_wire 9 -.Sh AUTHORS -This manual page was written by -.An Chad David Aq Mt davidc@acns.ab.ca . diff --git a/share/timedef/ca_IT.ISO8859-15.src b/share/timedef/ca_IT.ISO8859-15.src index 669fbab1307..7c625aad19b 100644 --- a/share/timedef/ca_IT.ISO8859-15.src +++ b/share/timedef/ca_IT.ISO8859-15.src @@ -59,7 +59,7 @@ a. m. p. m. # # date_fmt -%A, %e de %B de %Y, %X %Z +%A, %e %B de %Y, %X %Z # # Long month names (without case ending) de gener diff --git a/share/timedef/ca_IT.UTF-8.src b/share/timedef/ca_IT.UTF-8.src index 5dfd3841d9a..a85dd8c4b94 100644 --- a/share/timedef/ca_IT.UTF-8.src +++ b/share/timedef/ca_IT.UTF-8.src @@ -63,7 +63,7 @@ a. m. p. m. # # date_fmt -%A, %e de %B de %Y, %X %Z +%A, %e %B de %Y, %X %Z # # Long month names (without case ending) de gener diff --git a/sys/dev/e1000/e1000_82575.c b/sys/dev/e1000/e1000_82575.c index a33aa9eb290..47b8006314f 100644 --- a/sys/dev/e1000/e1000_82575.c +++ b/sys/dev/e1000/e1000_82575.c @@ -1686,20 +1686,19 @@ static s32 e1000_get_media_type_82575(struct e1000_hw *hw) break; } - /* do not change link mode for 100BaseFX */ - if (dev_spec->eth_flags.e100_base_fx) - break; - /* change current link mode setting */ ctrl_ext &= ~E1000_CTRL_EXT_LINK_MODE_MASK; - if (hw->phy.media_type == e1000_media_type_copper) + if (dev_spec->sgmii_active) ctrl_ext |= E1000_CTRL_EXT_LINK_MODE_SGMII; else ctrl_ext |= E1000_CTRL_EXT_LINK_MODE_PCIE_SERDES; E1000_WRITE_REG(hw, E1000_CTRL_EXT, ctrl_ext); + break; + default: + DEBUGOUT("e1000_get_media_type_82575 unknown link type\n"); break; } @@ -1750,24 +1749,27 @@ static s32 e1000_set_sfp_media_type_82575(struct e1000_hw *hw) /* Check if there is some SFP module plugged and powered */ if ((tranceiver_type == E1000_SFF_IDENTIFIER_SFP) || - (tranceiver_type == E1000_SFF_IDENTIFIER_SFF)) { + (tranceiver_type == E1000_SFF_IDENTIFIER_SFF)) dev_spec->module_plugged = true; - if (eth_flags->e1000_base_lx || eth_flags->e1000_base_sx) { - hw->phy.media_type = e1000_media_type_internal_serdes; - } else if (eth_flags->e100_base_fx) { - dev_spec->sgmii_active = true; - hw->phy.media_type = e1000_media_type_internal_serdes; - } else if (eth_flags->e1000_base_t) { - dev_spec->sgmii_active = true; - hw->phy.media_type = e1000_media_type_copper; - } else { - hw->phy.media_type = e1000_media_type_unknown; - DEBUGOUT("PHY module has not been recognized\n"); - goto out; - } + else + DEBUGOUT("PHY module is not SFP/SFF %x\n", tranceiver_type); + + if (eth_flags->e1000_base_lx || eth_flags->e1000_base_sx) { + hw->phy.media_type = e1000_media_type_internal_serdes; + DEBUGOUT("PHY module is 1000_base_lxsx\n"); + } else if (eth_flags->e100_base_fx || eth_flags->e100_base_lx) { + dev_spec->sgmii_active = true; + hw->phy.media_type = e1000_media_type_internal_serdes; + DEBUGOUT("PHY module is 100_base_fxlx\n"); + } else if (eth_flags->e1000_base_t) { + dev_spec->sgmii_active = true; + hw->phy.media_type = e1000_media_type_copper; + DEBUGOUT("PHY module is 1000_base_t\n"); } else { hw->phy.media_type = e1000_media_type_unknown; + DEBUGOUT("PHY module has not been recognized\n"); } + ret_val = E1000_SUCCESS; out: /* Restore I2C interface setting */ diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index e000343eb4b..537faf046bc 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -333,6 +333,7 @@ static int em_is_valid_ether_addr(u8 *); static void em_newitr(struct e1000_softc *, struct em_rx_queue *, struct tx_ring *, struct rx_ring *); static bool em_automask_tso(if_ctx_t); +static int em_sysctl_tso_tcp_flags_mask(SYSCTL_HANDLER_ARGS); static int em_sysctl_int_delay(SYSCTL_HANDLER_ARGS); static void em_add_int_delay_sysctl(struct e1000_softc *, const char *, const char *, struct em_int_delay_info *, int, int); @@ -878,6 +879,24 @@ em_if_attach_pre(if_ctx_t ctx) igb_sysctl_dmac, "I", "DMA Coalesce"); } + SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, + "tso_tcp_flags_mask_first_segment", + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + sc, 0, em_sysctl_tso_tcp_flags_mask, "IU", + "TSO TCP flags mask for first segment"); + + SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, + "tso_tcp_flags_mask_middle_segment", + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + sc, 1, em_sysctl_tso_tcp_flags_mask, "IU", + "TSO TCP flags mask for middle segment"); + + SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, + "tso_tcp_flags_mask_last_segment", + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + sc, 2, em_sysctl_tso_tcp_flags_mask, "IU", + "TSO TCP flags mask for last segment"); + scctx->isc_tx_nsegments = EM_MAX_SCATTER; scctx->isc_nrxqsets_max = scctx->isc_ntxqsets_max = em_set_num_queues(ctx); if (bootverbose) @@ -5184,6 +5203,43 @@ em_sysctl_int_delay(SYSCTL_HANDLER_ARGS) return (0); } +static int +em_sysctl_tso_tcp_flags_mask(SYSCTL_HANDLER_ARGS) +{ + struct e1000_softc *sc; + u32 reg, val, shift; + int error, mask; + + sc = oidp->oid_arg1; + switch (oidp->oid_arg2) { + case 0: + reg = E1000_DTXTCPFLGL; + shift = 0; + break; + case 1: + reg = E1000_DTXTCPFLGL; + shift = 16; + break; + case 2: + reg = E1000_DTXTCPFLGH; + shift = 0; + break; + default: + return (EINVAL); + break; + } + val = E1000_READ_REG(&sc->hw, reg); + mask = (val >> shift) & 0xfff; + error = sysctl_handle_int(oidp, &mask, 0, req); + if (error != 0 || req->newptr == NULL) + return (error); + if (mask < 0 || mask > 0xfff) + return (EINVAL); + val = (val & ~(0xfff << shift)) | (mask << shift); + E1000_WRITE_REG(&sc->hw, reg, val); + return (0); +} + static void em_add_int_delay_sysctl(struct e1000_softc *sc, const char *name, const char *description, struct em_int_delay_info *info, diff --git a/sys/dev/gpio/gpiospi.c b/sys/dev/gpio/gpiospi.c index 678dfaa7076..c453406ab76 100644 --- a/sys/dev/gpio/gpiospi.c +++ b/sys/dev/gpio/gpiospi.c @@ -398,5 +398,5 @@ static devclass_t gpio_spi_devclass; DRIVER_MODULE(gpiospi, gpiobus, gpio_spi_driver, gpio_spi_devclass, 0, 0); DRIVER_MODULE(spibus, gpiospi, spibus_driver, spibus_devclass, 0, 0); -MODULE_DEPEND(spi, gpiospi, 1, 1, 1); -MODULE_DEPEND(gpiobus, gpiospi, 1, 1, 1); +MODULE_DEPEND(gpiospi, spibus, 1, 1, 1); +MODULE_DEPEND(gpiospi, gpiobus, 1, 1, 1); diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index 1daec6e0969..9ecb1d3fc44 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -127,6 +127,7 @@ static void igc_print_debug_info(struct igc_softc *); static int igc_is_valid_ether_addr(u8 *); static void igc_neweitr(struct igc_softc *, struct igc_rx_queue *, struct tx_ring *, struct rx_ring *); +static int igc_sysctl_tso_tcp_flags_mask(SYSCTL_HANDLER_ARGS); /* Management and WOL Support */ static void igc_get_hw_control(struct igc_softc *); static void igc_release_hw_control(struct igc_softc *); @@ -498,6 +499,27 @@ igc_if_attach_pre(if_ctx_t ctx) CTLTYPE_INT | CTLFLAG_RW, sc, 0, igc_sysctl_dmac, "I", "DMA Coalesce"); + SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), + SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), + OID_AUTO, "tso_tcp_flags_mask_first_segment", + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + sc, 0, igc_sysctl_tso_tcp_flags_mask, "IU", + "TSO TCP flags mask for first segment"); + + SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), + SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), + OID_AUTO, "tso_tcp_flags_mask_middle_segment", + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + sc, 1, igc_sysctl_tso_tcp_flags_mask, "IU", + "TSO TCP flags mask for middle segment"); + + SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), + SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), + OID_AUTO, "tso_tcp_flags_mask_last_segment", + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + sc, 2, igc_sysctl_tso_tcp_flags_mask, "IU", + "TSO TCP flags mask for last segment"); + /* Determine hardware and mac info */ igc_identify_hardware(ctx); @@ -2051,8 +2073,6 @@ igc_if_queues_free(if_ctx_t ctx) sc->rx_queues = NULL; } - igc_release_hw_control(sc); - if (sc->mta != NULL) { free(sc->mta, M_DEVBUF); } @@ -3016,6 +3036,43 @@ igc_print_nvm_info(struct igc_softc *sc) printf("\n"); } +static int +igc_sysctl_tso_tcp_flags_mask(SYSCTL_HANDLER_ARGS) +{ + struct igc_softc *sc; + u32 reg, val, shift; + int error, mask; + + sc = oidp->oid_arg1; + switch (oidp->oid_arg2) { + case 0: + reg = IGC_DTXTCPFLGL; + shift = 0; + break; + case 1: + reg = IGC_DTXTCPFLGL; + shift = 16; + break; + case 2: + reg = IGC_DTXTCPFLGH; + shift = 0; + break; + default: + return (EINVAL); + break; + } + val = IGC_READ_REG(&sc->hw, reg); + mask = (val >> shift) & 0xfff; + error = sysctl_handle_int(oidp, &mask, 0, req); + if (error != 0 || req->newptr == NULL) + return (error); + if (mask < 0 || mask > 0xfff) + return (EINVAL); + val = (val & ~(0xfff << shift)) | (mask << shift); + IGC_WRITE_REG(&sc->hw, reg, val); + return (0); +} + /* * Set flow control using sysctl: * Flow control values: diff --git a/sys/dev/igc/igc_regs.h b/sys/dev/igc/igc_regs.h index 26614dc33df..17fa89e492e 100644 --- a/sys/dev/igc/igc_regs.h +++ b/sys/dev/igc/igc_regs.h @@ -145,6 +145,8 @@ #define IGC_FFVT_REG(_i) (0x09800 + ((_i) * 8)) #define IGC_FFLT_REG(_i) (0x05F00 + ((_i) * 8)) #define IGC_TXPBS 0x03404 /* Tx Packet Buffer Size - RW */ +#define IGC_DTXTCPFLGL 0x0359C /* DMA Tx Control flag low - RW */ +#define IGC_DTXTCPFLGH 0x035A0 /* DMA Tx Control flag high - RW */ /* Statistics Register Descriptions */ #define IGC_CRCERRS 0x04000 /* CRC Error Count - R/clr */ #define IGC_ALGNERRC 0x04004 /* Alignment Error Count - R/clr */ diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index 23e378ba70c..993aa48d51e 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -204,6 +204,7 @@ static int ixgbe_sysctl_tdh_handler(SYSCTL_HANDLER_ARGS); static int ixgbe_sysctl_eee_state(SYSCTL_HANDLER_ARGS); static int ixgbe_sysctl_wol_enable(SYSCTL_HANDLER_ARGS); static int ixgbe_sysctl_wufc(SYSCTL_HANDLER_ARGS); +static int ixgbe_sysctl_tso_tcp_flags_mask(SYSCTL_HANDLER_ARGS); /* Deferred interrupt tasklets */ static void ixgbe_handle_msf(void *); @@ -1316,9 +1317,11 @@ ixgbe_add_media_types(if_ctx_t ctx) } if (layer & IXGBE_PHYSICAL_LAYER_SFP_PLUS_CU || - layer & IXGBE_PHYSICAL_LAYER_SFP_ACTIVE_DA) + layer & IXGBE_PHYSICAL_LAYER_SFP_ACTIVE_DA) { ifmedia_add(sc->media, IFM_ETHER | IFM_10G_TWINAX, 0, NULL); + ifmedia_add(sc->media, IFM_ETHER | IFM_1000_KX, 0, NULL); + } if (layer & IXGBE_PHYSICAL_LAYER_10GBASE_LR) { ifmedia_add(sc->media, IFM_ETHER | IFM_10G_LR, 0, NULL); @@ -2310,6 +2313,9 @@ ixgbe_if_media_status(if_ctx_t ctx, struct ifmediareq * ifmr) case IXGBE_LINK_SPEED_10GB_FULL: ifmr->ifm_active |= IFM_10G_TWINAX | IFM_FDX; break; + case IXGBE_LINK_SPEED_1GB_FULL: + ifmr->ifm_active |= IFM_1000_KX | IFM_FDX; + break; } if (layer & IXGBE_PHYSICAL_LAYER_10GBASE_LR) switch (sc->link_speed) { @@ -2738,6 +2744,24 @@ ixgbe_add_device_sysctls(if_ctx_t ctx) CTLTYPE_STRING | CTLFLAG_RD, sc, 0, ixgbe_sysctl_print_fw_version, "A", "Prints FW/NVM Versions"); + SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, + "tso_tcp_flags_mask_first_segment", + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + sc, 0, ixgbe_sysctl_tso_tcp_flags_mask, "IU", + "TSO TCP flags mask for first segment"); + + SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, + "tso_tcp_flags_mask_middle_segment", + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + sc, 1, ixgbe_sysctl_tso_tcp_flags_mask, "IU", + "TSO TCP flags mask for middle segment"); + + SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, + "tso_tcp_flags_mask_last_segment", + CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_NEEDGIANT, + sc, 2, ixgbe_sysctl_tso_tcp_flags_mask, "IU", + "TSO TCP flags mask for last segment"); + #ifdef IXGBE_DEBUG /* testing sysctls (for all devices) */ SYSCTL_ADD_PROC(ctx_list, child, OID_AUTO, "power_state", @@ -4724,6 +4748,43 @@ ixgbe_sysctl_eee_state(SYSCTL_HANDLER_ARGS) return (error); } /* ixgbe_sysctl_eee_state */ +static int +ixgbe_sysctl_tso_tcp_flags_mask(SYSCTL_HANDLER_ARGS) +{ + struct ixgbe_softc *sc; + u32 reg, val, shift; + int error, mask; + + sc = oidp->oid_arg1; + switch (oidp->oid_arg2) { + case 0: + reg = IXGBE_DTXTCPFLGL; + shift = 0; + break; + case 1: + reg = IXGBE_DTXTCPFLGL; + shift = 16; + break; + case 2: + reg = IXGBE_DTXTCPFLGH; + shift = 0; + break; + default: + return (EINVAL); + break; + } + val = IXGBE_READ_REG(&sc->hw, reg); + mask = (val >> shift) & 0xfff; + error = sysctl_handle_int(oidp, &mask, 0, req); + if (error != 0 || req->newptr == NULL) + return (error); + if (mask < 0 || mask > 0xfff) + return (EINVAL); + val = (val & ~(0xfff << shift)) | (mask << shift); + IXGBE_WRITE_REG(&sc->hw, reg, val); + return (0); +} + /************************************************************************ * ixgbe_init_device_features ************************************************************************/ diff --git a/sys/dev/ixgbe/if_ixv.c b/sys/dev/ixgbe/if_ixv.c index fe23ea22634..1a9514dc5b0 100644 --- a/sys/dev/ixgbe/if_ixv.c +++ b/sys/dev/ixgbe/if_ixv.c @@ -1073,11 +1073,14 @@ ixv_if_msix_intr_assign(if_ctx_t ctx, int msix) */ if (sc->hw.mac.type == ixgbe_mac_82599_vf) { int msix_ctrl; - pci_find_cap(dev, PCIY_MSIX, &rid); - rid += PCIR_MSIX_CTRL; - msix_ctrl = pci_read_config(dev, rid, 2); - msix_ctrl |= PCIM_MSIXCTRL_MSIX_ENABLE; - pci_write_config(dev, rid, msix_ctrl, 2); + if (pci_find_cap(dev, PCIY_MSIX, &rid)) { + device_printf(dev, "Finding MSIX capability failed\n"); + } else { + rid += PCIR_MSIX_CTRL; + msix_ctrl = pci_read_config(dev, rid, 2); + msix_ctrl |= PCIM_MSIXCTRL_MSIX_ENABLE; + pci_write_config(dev, rid, msix_ctrl, 2); + } } return (0); @@ -1363,7 +1366,7 @@ ixv_initialize_rss_mapping(struct ixgbe_softc *sc) IXGBE_WRITE_REG(hw, IXGBE_VFMRQC, mrqc); } /* ixv_initialize_rss_mapping */ - +#define BSIZEPKT_ROUNDUP ((1<hw; +#ifdef DEV_NETMAP struct ifnet *ifp = iflib_get_ifp(ctx); +#endif struct ix_rx_queue *que = sc->rx_queues; u32 bufsz, psrtype; - if (ifp->if_mtu > ETHERMTU) - bufsz = 4096 >> IXGBE_SRRCTL_BSIZEPKT_SHIFT; - else - bufsz = 2048 >> IXGBE_SRRCTL_BSIZEPKT_SHIFT; + bufsz = (sc->rx_mbuf_sz + BSIZEPKT_ROUNDUP) >> + IXGBE_SRRCTL_BSIZEPKT_SHIFT; psrtype = IXGBE_PSRTYPE_TCPHDR | IXGBE_PSRTYPE_UDPHDR diff --git a/sys/dev/ixgbe/ixgbe_82599.c b/sys/dev/ixgbe/ixgbe_82599.c index 1ecab83a4e9..b2b40371648 100644 --- a/sys/dev/ixgbe/ixgbe_82599.c +++ b/sys/dev/ixgbe/ixgbe_82599.c @@ -441,6 +441,17 @@ s32 ixgbe_get_link_capabilities_82599(struct ixgbe_hw *hw, goto out; } + if (hw->phy.sfp_type == ixgbe_sfp_type_da_cu_core0 || + hw->phy.sfp_type == ixgbe_sfp_type_da_cu_core1) { + *speed = IXGBE_LINK_SPEED_10GB_FULL; + *autoneg = true; + + if (hw->phy.multispeed_fiber) + *speed |= IXGBE_LINK_SPEED_1GB_FULL; + + goto out; + } + /* * Determine link capabilities based on the stored value of AUTOC, * which represents EEPROM defaults. If AUTOC value has not diff --git a/sys/dev/ixgbe/ixgbe_phy.c b/sys/dev/ixgbe/ixgbe_phy.c index da7d16a514d..ea815c6c88e 100644 --- a/sys/dev/ixgbe/ixgbe_phy.c +++ b/sys/dev/ixgbe/ixgbe_phy.c @@ -1436,7 +1436,9 @@ s32 ixgbe_identify_sfp_module_generic(struct ixgbe_hw *hw) if (((comp_codes_1g & IXGBE_SFF_1GBASESX_CAPABLE) && (comp_codes_10g & IXGBE_SFF_10GBASESR_CAPABLE)) || ((comp_codes_1g & IXGBE_SFF_1GBASELX_CAPABLE) && - (comp_codes_10g & IXGBE_SFF_10GBASELR_CAPABLE))) + (comp_codes_10g & IXGBE_SFF_10GBASELR_CAPABLE)) || + (cable_tech & IXGBE_SFF_DA_PASSIVE_CABLE) || + (cable_tech & IXGBE_SFF_DA_ACTIVE_CABLE)) hw->phy.multispeed_fiber = true; /* Determine PHY vendor */ diff --git a/sys/dev/usb/serial/uftdi.c b/sys/dev/usb/serial/uftdi.c index 0a8d27c9e9c..365e57692b7 100644 --- a/sys/dev/usb/serial/uftdi.c +++ b/sys/dev/usb/serial/uftdi.c @@ -291,8 +291,26 @@ static const STRUCT_USB_HOST_ID uftdi_devs[] = { UFTDI_DEV(BBELECTRONICS, USPTL4, 0), UFTDI_DEV(BBELECTRONICS, USTL4, 0), UFTDI_DEV(BBELECTRONICS, ZZ_PROG1_USB, 0), + UFTDI_DEV(BRAINBOXES, US101, 0), + UFTDI_DEV(BRAINBOXES, US159, 0), + UFTDI_DEV(BRAINBOXES, US235, 0), UFTDI_DEV(BRAINBOXES, US257, 0), UFTDI_DEV(BRAINBOXES, US25701, 0), + UFTDI_DEV(BRAINBOXES, US279_12, 0), + UFTDI_DEV(BRAINBOXES, US279_34, 0), + UFTDI_DEV(BRAINBOXES, US279_56, 0), + UFTDI_DEV(BRAINBOXES, US279_78, 0), + UFTDI_DEV(BRAINBOXES, US313, 0), + UFTDI_DEV(BRAINBOXES, US320, 0), + UFTDI_DEV(BRAINBOXES, US324, 0), + UFTDI_DEV(BRAINBOXES, US346_12, 0), + UFTDI_DEV(BRAINBOXES, US346_34, 0), + UFTDI_DEV(BRAINBOXES, US701_12, 0), + UFTDI_DEV(BRAINBOXES, US701_34, 0), + UFTDI_DEV(BRAINBOXES, US842_12, 0), + UFTDI_DEV(BRAINBOXES, US842_34, 0), + UFTDI_DEV(BRAINBOXES, US842_56, 0), + UFTDI_DEV(BRAINBOXES, US842_78, 0), UFTDI_DEV(CONTEC, COM1USBH, 0), UFTDI_DEV(DRESDENELEKTRONIK, SENSORTERMINALBOARD, 0), UFTDI_DEV(DRESDENELEKTRONIK, WIRELESSHANDHELDTERMINAL, 0), diff --git a/sys/dev/usb/usbdevs b/sys/dev/usb/usbdevs index 76270f59629..c08ce9bca1e 100644 --- a/sys/dev/usb/usbdevs +++ b/sys/dev/usb/usbdevs @@ -1420,8 +1420,26 @@ product BILLIONTON USBE100 0x8511 USBE100 product BILLIONTON USB2AR 0x90ff USB2AR Ethernet /* Brainboxes Limited products */ +product BRAINBOXES US101 0x1011 US-101 USB2Serial 1xRS232 +product BRAINBOXES US159 0x1021 US-159 USB2Serial 1xRS232 +product BRAINBOXES US235 0x1017 US-235 USB2Serial 1xRS232 product BRAINBOXES US257 0x5001 US-257 USB2Serial 2xRS232 product BRAINBOXES US25701 0x5002 US-25701 USB2Serial 2xRS232 +product BRAINBOXES US279_12 0x2021 US-279 USB2Serial 8xRS232 (Port 1 and 2) +product BRAINBOXES US279_34 0x2022 US-279 USB2Serial 8xRS232 (Port 3 and 4) +product BRAINBOXES US279_56 0x2023 US-279 USB2Serial 8xRS232 (Port 5 and 6) +product BRAINBOXES US279_78 0x2024 US-279 USB2Serial 8xRS232 (Port 7 and 8) +product BRAINBOXES US313 0x6001 US-313 USB2Serial 2xRS422/485 +product BRAINBOXES US320 0x1019 US-320 USB2Serial 1xRS422/485 +product BRAINBOXES US324 0x1013 US-324 USB2Serial 1xRS422/485 +product BRAINBOXES US346_12 0x3011 US-346 USB2Serial 4xRS422/485 (Port 1 and 2) +product BRAINBOXES US346_34 0x3012 US-346 USB2Serial 4xRS422/485 (Port 3 and 4) +product BRAINBOXES US701_12 0x2011 US-701 USB2Serial 4xRS232 (Port 1 and 2) +product BRAINBOXES US701_34 0x2012 US-701 USB2Serial 4xRS232 (Port 3 and 4) +product BRAINBOXES US842_12 0x8001 US-842 USB2Serial 8xRS-422/485 (Port 1 and 2) +product BRAINBOXES US842_34 0x8002 US-842 USB2Serial 8xRS-422/485 (Port 3 and 4) +product BRAINBOXES US842_56 0x8003 US-842 USB2Serial 8xRS-422/485 (Port 5 and 6) +product BRAINBOXES US842_78 0x8004 US-842 USB2Serial 8xRS-422/485 (Port 7 and 8) /* Broadcom products */ product BROADCOM BCM2033 0x2033 BCM2033 Bluetooth USB dongle diff --git a/sys/fs/nfsserver/nfs_nfsdport.c b/sys/fs/nfsserver/nfs_nfsdport.c index 41443a5a79f..caa63dc20a5 100644 --- a/sys/fs/nfsserver/nfs_nfsdport.c +++ b/sys/fs/nfsserver/nfs_nfsdport.c @@ -3304,7 +3304,11 @@ nfsd_excred(struct nfsrv_descript *nd, struct nfsexstuff *exp, NFSVNO_EXPORTANON(exp) || (nd->nd_flag & ND_AUTHNONE) != 0) { nd->nd_cred->cr_uid = credanon->cr_uid; - nd->nd_cred->cr_gid = credanon->cr_gid; + /* + * 'credanon' is already a 'struct ucred' that was built + * internally with calls to crsetgroups_fallback(), so + * we don't need a fallback here. + */ crsetgroups(nd->nd_cred, credanon->cr_ngroups, credanon->cr_groups); } else if ((nd->nd_flag & ND_GSS) == 0) { diff --git a/sys/kern/kern_prot.c b/sys/kern/kern_prot.c index abe989045fb..482472025fd 100644 --- a/sys/kern/kern_prot.c +++ b/sys/kern/kern_prot.c @@ -52,6 +52,7 @@ #include #include #include +#include #include #include #include @@ -88,8 +89,22 @@ SYSCTL_NODE(_security, OID_AUTO, bsd, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "BSD security policy"); static void crfree_final(struct ucred *cr); -static void crsetgroups_locked(struct ucred *cr, int ngrp, - gid_t *groups); + +static inline void +groups_check_positive_len(int ngrp) +{ + MPASS2(ngrp >= 0, "negative number of groups"); + MPASS2(ngrp != 0, "at least one group expected (effective GID)"); +} +static inline void +groups_check_max_len(int ngrp) +{ + MPASS2(ngrp <= ngroups_max + 1, "too many groups"); +} + +static void groups_normalize(int *ngrp, gid_t *groups); +static void crsetgroups_internal(struct ucred *cr, int ngrp, + const gid_t *groups); #ifndef _SYS_SYSPROTO_H_ struct getpid_args { @@ -806,44 +821,79 @@ struct setgroups_args { int sys_setgroups(struct thread *td, struct setgroups_args *uap) { - gid_t smallgroups[XU_NGROUPS]; + gid_t smallgroups[CRED_SMALLGROUPS_NB]; gid_t *groups; int gidsetsize, error; + /* + * Sanity check size now to avoid passing too big a value to copyin(), + * even if kern_setgroups() will do it again. + * + * Ideally, the 'gidsetsize' argument should have been a 'u_int' (and it + * was, in this implementation, for a long time), but POSIX standardized + * getgroups() to take an 'int' and it would be quite entrapping to have + * setgroups() differ. + */ gidsetsize = uap->gidsetsize; if (gidsetsize > ngroups_max + 1 || gidsetsize < 0) return (EINVAL); - if (gidsetsize > XU_NGROUPS) + if (gidsetsize > CRED_SMALLGROUPS_NB) groups = malloc(gidsetsize * sizeof(gid_t), M_TEMP, M_WAITOK); else groups = smallgroups; error = copyin(uap->gidset, groups, gidsetsize * sizeof(gid_t)); if (error == 0) - error = kern_setgroups(td, gidsetsize, groups); + error = kern_setgroups(td, &gidsetsize, groups); - if (gidsetsize > XU_NGROUPS) + if (groups != smallgroups) free(groups, M_TEMP); return (error); } +static int +gidp_cmp(const void *p1, const void *p2) +{ + const gid_t g1 = *(const gid_t *)p1; + const gid_t g2 = *(const gid_t *)p2; + + return ((g1 > g2) - (g1 < g2)); +} + +/* + * CAUTION: This function normalizes 'groups', possibly also changing the value + * of '*ngrpp' as a consequence. + */ int -kern_setgroups(struct thread *td, u_int ngrp, gid_t *groups) +kern_setgroups(struct thread *td, int *ngrpp, gid_t *groups) { struct proc *p = td->td_proc; struct ucred *newcred, *oldcred; - int error; + int ngrp, error; + + ngrp = *ngrpp; + /* Sanity check size. */ + if (ngrp < 0 || ngrp > ngroups_max + 1) + return (EINVAL); - MPASS(ngrp <= ngroups_max + 1); AUDIT_ARG_GROUPSET(groups, ngrp); + if (ngrp != 0) { + /* We allow and treat 0 specially below. */ + groups_normalize(ngrpp, groups); + ngrp = *ngrpp; + } newcred = crget(); - crextend(newcred, ngrp); + if (ngrp != 0) + crextend(newcred, ngrp); PROC_LOCK(p); oldcred = crcopysafe(p, newcred); #ifdef MAC - error = mac_cred_check_setgroups(oldcred, ngrp, groups); + error = ngrp == 0 ? + /* If 'ngrp' is 0, we'll keep just the current effective GID. */ + mac_cred_check_setgroups(oldcred, 1, oldcred->cr_groups) : + mac_cred_check_setgroups(oldcred, ngrp, groups); if (error) goto fail; #endif @@ -860,9 +910,9 @@ kern_setgroups(struct thread *td, u_int ngrp, gid_t *groups) * when running non-BSD software if we do not do the same. */ newcred->cr_ngroups = 1; - } else { - crsetgroups_locked(newcred, ngrp, groups); - } + } else + crsetgroups_internal(newcred, ngrp, groups); + setsugid(p); proc_set_cred(p, newcred); PROC_UNLOCK(p); @@ -1272,30 +1322,47 @@ sys___setugid(struct thread *td, struct __setugid_args *uap) #endif /* REGRESSION */ } +#ifdef INVARIANTS +static void +groups_check_normalized(int ngrp, const gid_t *groups) +{ + gid_t prev_g; + + groups_check_positive_len(ngrp); + groups_check_max_len(ngrp); + + if (ngrp == 1) + return; + + prev_g = groups[1]; + for (int i = 2; i < ngrp; ++i) { + const gid_t g = groups[i]; + + if (prev_g >= g) + panic("%s: groups[%d] (%u) >= groups[%d] (%u)", + __func__, i - 1, prev_g, i, g); + prev_g = g; + } +} +#else +#define groups_check_normalized(...) +#endif + /* * Returns whether gid designates a supplementary group in cred. */ -static int -supplementary_group_member(gid_t gid, struct ucred *cred) +int +group_is_supplementary(const gid_t gid, const struct ucred *const cred) { - int l, h, m; + + groups_check_normalized(cred->cr_ngroups, cred->cr_groups); /* - * Perform a binary search of the supplemental groups. This is possible - * because we sort the groups in crsetgroups(). + * Perform a binary search of the supplementary groups. This is + * possible because we sort the groups in crsetgroups(). */ - l = 1; - h = cred->cr_ngroups; - - while (l < h) { - m = l + (h - l) / 2; - if (cred->cr_groups[m] < gid) - l = m + 1; - else - h = m; - } - - return (l < cred->cr_ngroups && cred->cr_groups[l] == gid); + return (bsearch(&gid, cred->cr_groups + 1, cred->cr_ngroups - 1, + sizeof(gid), gidp_cmp) != NULL); } /* @@ -1303,20 +1370,15 @@ supplementary_group_member(gid_t gid, struct ucred *cred) * supplementary groups). */ int -groupmember(gid_t gid, struct ucred *cred) +groupmember(gid_t gid, const struct ucred *cred) { - /* - * The nfsd server can use a credential with zero groups in it - * when certain mapped export credentials are specified via exports(5). - */ - if (cred->cr_ngroups == 0) - return (0); + groups_check_positive_len(cred->cr_ngroups); - if (cred->cr_groups[0] == gid) + if (gid == cred->cr_groups[0]) return (1); - return (supplementary_group_member(gid, cred)); + return (group_is_supplementary(gid, cred)); } /* @@ -1324,12 +1386,20 @@ groupmember(gid_t gid, struct ucred *cred) * groups). */ int -realgroupmember(gid_t gid, struct ucred *cred) +realgroupmember(gid_t gid, const struct ucred *cred) { + /* + * Although the equality test on 'cr_rgid' below doesn't access + * 'cr_groups', we check for the latter's length here as we assume that, + * if 'cr_ngroups' is 0, the passed 'struct ucred' is invalid, and + * 'cr_rgid' may not have been filled. + */ + groups_check_positive_len(cred->cr_ngroups); + if (gid == cred->cr_rgid) return (1); - return (supplementary_group_member(gid, cred)); + return (group_is_supplementary(gid, cred)); } /* @@ -2145,7 +2215,11 @@ void crcopy(struct ucred *dest, struct ucred *src) { - KASSERT(dest->cr_ref == 1, ("crcopy of shared ucred")); + /* + * Ideally, 'cr_ngroups' should be moved out of 'struct ucred''s bcopied + * area, but this would break the ABI, so is deferred until there is + * a compelling need to change it. + */ bcopy(&src->cr_startcopy, &dest->cr_startcopy, (unsigned)((caddr_t)&src->cr_endcopy - (caddr_t)&src->cr_startcopy)); @@ -2283,92 +2357,158 @@ crcopysafe(struct proc *p, struct ucred *cr) } /* - * Extend the passed in credential to hold n items. + * Extend the passed-in credentials to hold n groups. + * + * Must not be called after groups have been set. */ void crextend(struct ucred *cr, int n) { - int cnt; + size_t nbytes; + + MPASS2(cr->cr_ref == 1, "'cr_ref' must be 1 (referenced, unshared)"); + MPASS2(cr->cr_ngroups == 0, "groups on 'cr' already set!"); + groups_check_positive_len(n); + groups_check_max_len(n); - /* Truncate? */ if (n <= cr->cr_agroups) return; + nbytes = n * sizeof(gid_t); + if (nbytes < n) + panic("Too many groups (memory size overflow)! " + "Computation of 'kern.ngroups' should have prevented this, " + "please fix it. In the meantime, reduce 'kern.ngroups'."); + /* - * We extend by 2 each time since we're using a power of two - * allocator until we need enough groups to fill a page. - * Once we're allocating multiple pages, only allocate as many - * as we actually need. The case of processes needing a - * non-power of two number of pages seems more likely than - * a real world process that adds thousands of groups one at a - * time. + * We allocate a power of 2 larger than 'nbytes', except when that + * exceeds PAGE_SIZE, in which case we allocate the right multiple of + * pages. We assume PAGE_SIZE is a power of 2 (the call to roundup2() + * below) but do not need to for sizeof(gid_t). */ - if ( n < PAGE_SIZE / sizeof(gid_t) ) { - if (cr->cr_agroups == 0) - cnt = MAX(1, MINALLOCSIZE / sizeof(gid_t)); - else - cnt = cr->cr_agroups * 2; - - while (cnt < n) - cnt *= 2; + if (nbytes < PAGE_SIZE) { + if (!powerof2(nbytes)) + /* fls*() return a bit index starting at 1. */ + nbytes = 1 << flsl(nbytes); } else - cnt = roundup2(n, PAGE_SIZE / sizeof(gid_t)); + nbytes = roundup2(nbytes, PAGE_SIZE); /* Free the old array. */ if (cr->cr_groups != cr->cr_smallgroups) free(cr->cr_groups, M_CRED); - cr->cr_groups = malloc(cnt * sizeof(gid_t), M_CRED, M_WAITOK | M_ZERO); - cr->cr_agroups = cnt; + cr->cr_groups = malloc(nbytes, M_CRED, M_WAITOK | M_ZERO); + cr->cr_agroups = nbytes / sizeof(gid_t); } /* - * Copy groups in to a credential, preserving any necessary invariants. - * Currently this includes the sorting of all supplemental gids. - * crextend() must have been called before hand to ensure sufficient - * space is available. + * Normalizes a set of groups to be applied to a 'struct ucred'. + * + * The set of groups is an array that must comprise the effective GID as its + * first element (so its length cannot be 0). + * + * Normalization ensures that elements after the first, which stand for the + * supplementary groups, are sorted in ascending order and do not contain + * duplicates. */ static void -crsetgroups_locked(struct ucred *cr, int ngrp, gid_t *groups) +groups_normalize(int *ngrp, gid_t *groups) { - int i; - int j; - gid_t g; + gid_t prev_g; + int ins_idx; - KASSERT(cr->cr_agroups >= ngrp, ("cr_ngroups is too small")); + groups_check_positive_len(*ngrp); + groups_check_max_len(*ngrp); - bcopy(groups, cr->cr_groups, ngrp * sizeof(gid_t)); - cr->cr_ngroups = ngrp; + if (*ngrp == 1) + return; - /* - * Sort all groups except cr_groups[0] to allow groupmember to - * perform a binary search. - * - * XXX: If large numbers of groups become common this should - * be replaced with shell sort like linux uses or possibly - * heap sort. - */ - for (i = 2; i < ngrp; i++) { - g = cr->cr_groups[i]; - for (j = i-1; j >= 1 && g < cr->cr_groups[j]; j--) - cr->cr_groups[j + 1] = cr->cr_groups[j]; - cr->cr_groups[j + 1] = g; + qsort(groups + 1, *ngrp - 1, sizeof(*groups), gidp_cmp); + + /* Remove duplicates. */ + prev_g = groups[1]; + ins_idx = 2; + for (int i = 2; i < *ngrp; ++i) { + const gid_t g = groups[i]; + + if (g != prev_g) { + if (i != ins_idx) + groups[ins_idx] = g; + ++ins_idx; + prev_g = g; + } } + *ngrp = ins_idx; + + groups_check_normalized(*ngrp, groups); +} + +/* + * Internal function copying groups into a credential. + * + * 'ngrp' must be strictly positive. Either the passed 'groups' array must have + * been normalized in advance (see groups_normalize()), else it must be so + * before the structure is to be used again. + * + * This function is suitable to be used under any lock (it doesn't take any lock + * itself nor sleep, and in particular doesn't allocate memory). crextend() + * must have been called beforehand to ensure sufficient space is available. + * See also crsetgroups(), which handles that. + */ +static void +crsetgroups_internal(struct ucred *cr, int ngrp, const gid_t *groups) +{ + + MPASS2(cr->cr_ref == 1, "'cr_ref' must be 1 (referenced, unshared)"); + MPASS2(cr->cr_agroups >= ngrp, "'cr_agroups' too small"); + groups_check_positive_len(ngrp); + + bcopy(groups, cr->cr_groups, ngrp * sizeof(gid_t)); + cr->cr_ngroups = ngrp; } /* * Copy groups in to a credential after expanding it if required. - * Truncate the list to (ngroups_max + 1) if it is too large. + * + * May sleep in order to allocate memory (except if, e.g., crextend() was called + * before with 'ngrp' or greater). Truncates the list to (ngroups_max + 1) if + * it is too large. Array 'groups' doesn't need to be sorted. 'ngrp' must be + * strictly positive. */ void -crsetgroups(struct ucred *cr, int ngrp, gid_t *groups) +crsetgroups(struct ucred *cr, int ngrp, const gid_t *groups) { if (ngrp > ngroups_max + 1) ngrp = ngroups_max + 1; - + /* + * crextend() asserts that groups are not set, as it may allocate a new + * backing storage without copying the content of the old one. Since we + * are going to install a completely new set anyway, signal that we + * consider the old ones thrown away. + */ + cr->cr_ngroups = 0; crextend(cr, ngrp); - crsetgroups_locked(cr, ngrp, groups); + crsetgroups_internal(cr, ngrp, groups); + groups_normalize(&cr->cr_ngroups, cr->cr_groups); +} + +/* + * Same as crsetgroups() but accepts an empty groups array. + * + * This function ensures that an effective GID is always present in credentials. + * An empty array is treated as a one-size one holding the passed effective GID + * fallback. + */ +void +crsetgroups_fallback(struct ucred *cr, int ngrp, const gid_t *groups, + const gid_t fallback) +{ + if (ngrp == 0) + /* Shortcut. */ + crsetgroups_internal(cr, 1, &fallback); + else + crsetgroups(cr, ngrp, groups); } /* diff --git a/sys/kern/kern_umtx.c b/sys/kern/kern_umtx.c index 23087cf4269..61b86d0b62b 100644 --- a/sys/kern/kern_umtx.c +++ b/sys/kern/kern_umtx.c @@ -2605,11 +2605,9 @@ do_lock_pp(struct thread *td, struct umutex *m, uint32_t flags, */ if (error == 0) { error = thread_check_susp(td, false); - if (error == 0) { - if (try != 0) - error = EBUSY; - else - continue; + if (error == 0 && try == 0) { + umtxq_unbusy_unlocked(&uq->uq_key); + continue; } error = 0; } diff --git a/sys/kern/subr_sleepqueue.c b/sys/kern/subr_sleepqueue.c index d5308b1e929..727e13891f9 100644 --- a/sys/kern/subr_sleepqueue.c +++ b/sys/kern/subr_sleepqueue.c @@ -539,7 +539,8 @@ sleepq_catch_signals(const void *wchan, int pri) /* * Switches to another thread if we are still asleep on a sleep queue. - * Returns with thread lock. + * + * The thread lock is required on entry and is no longer held on return. */ static void sleepq_switch(const void *wchan, int pri) diff --git a/sys/kern/vfs_export.c b/sys/kern/vfs_export.c index d9686edb376..f3c11541cee 100644 --- a/sys/kern/vfs_export.c +++ b/sys/kern/vfs_export.c @@ -42,6 +42,7 @@ #include #include +#include #include #include #include @@ -135,8 +136,8 @@ vfs_hang_addrlist(struct mount *mp, struct netexport *nep, np->netc_exflags = argp->ex_flags; np->netc_anon = crget(); np->netc_anon->cr_uid = argp->ex_uid; - crsetgroups(np->netc_anon, argp->ex_ngroups, - argp->ex_groups); + crsetgroups_fallback(np->netc_anon, argp->ex_ngroups, + argp->ex_groups, GID_NOGROUP); np->netc_anon->cr_prison = &prison0; prison_hold(np->netc_anon->cr_prison); np->netc_numsecflavors = argp->ex_numsecflavors; @@ -214,8 +215,8 @@ vfs_hang_addrlist(struct mount *mp, struct netexport *nep, np->netc_exflags = argp->ex_flags; np->netc_anon = crget(); np->netc_anon->cr_uid = argp->ex_uid; - crsetgroups(np->netc_anon, argp->ex_ngroups, - argp->ex_groups); + crsetgroups_fallback(np->netc_anon, argp->ex_ngroups, argp->ex_groups, + GID_NOGROUP); np->netc_anon->cr_prison = &prison0; prison_hold(np->netc_anon->cr_prison); np->netc_numsecflavors = argp->ex_numsecflavors; diff --git a/sys/net/dlt.h b/sys/net/dlt.h index 3eaab317cd8..b8fa05818ba 100644 --- a/sys/net/dlt.h +++ b/sys/net/dlt.h @@ -32,7 +32,6 @@ * SUCH DAMAGE. * * @(#)bpf.h 7.1 (Berkeley) 5/7/91 - * */ #ifndef _NET_DLT_H_ diff --git a/sys/net/if.c b/sys/net/if.c index 8a870bb4e1b..107ff67d547 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -864,6 +864,7 @@ if_attach_internal(struct ifnet *ifp, bool vmove) ifp->if_xname); #ifdef VIMAGE + CURVNET_ASSERT_SET(); ifp->if_vnet = curvnet; if (ifp->if_home_vnet == NULL) ifp->if_home_vnet = curvnet; diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c index d94b1d59afb..b392a9c69a7 100644 --- a/sys/net/if_bridge.c +++ b/sys/net/if_bridge.c @@ -200,7 +200,7 @@ extern void nd6_setmtu(struct ifnet *); * List of capabilities to possibly mask on the member interface. */ #define BRIDGE_IFCAPS_MASK (IFCAP_TOE|IFCAP_TSO|IFCAP_TXCSUM|\ - IFCAP_TXCSUM_IPV6) + IFCAP_TXCSUM_IPV6|IFCAP_MEXTPG) /* * List of capabilities to strip diff --git a/sys/net/radix_mpath.c b/sys/net/radix_mpath.c deleted file mode 100644 index 53627d38c6c..00000000000 --- a/sys/net/radix_mpath.c +++ /dev/null @@ -1,326 +0,0 @@ -/* $KAME: radix_mpath.c,v 1.17 2004/11/08 10:29:39 itojun Exp $ */ - -/* - * SPDX-License-Identifier: BSD-3-Clause - * - * Copyright (C) 2001 WIDE 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 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 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. - * THE AUTHORS DO NOT GUARANTEE THAT THIS SOFTWARE DOES NOT INFRINGE - * ANY OTHERS' INTELLECTUAL PROPERTIES. IN NO EVENT SHALL THE AUTHORS - * BE LIABLE FOR ANY INFRINGEMENT OF ANY OTHERS' INTELLECTUAL - * PROPERTIES. - */ - -#include - -#include "opt_inet.h" -#include "opt_inet6.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * give some jitter to hash, to avoid synchronization between routers - */ -static uint32_t hashjitter; - -int -rt_mpath_capable(struct rib_head *rnh) -{ - - return rnh->rnh_multipath; -} - -int -rn_mpath_capable(struct radix_head *rh) -{ - - return (rt_mpath_capable((struct rib_head *)rh)); -} - -struct radix_node * -rn_mpath_next(struct radix_node *rn) -{ - struct radix_node *next; - - if (!rn->rn_dupedkey) - return NULL; - next = rn->rn_dupedkey; - if (rn->rn_mask == next->rn_mask) - return next; - else - return NULL; -} - -uint32_t -rn_mpath_count(struct radix_node *rn) -{ - uint32_t i = 0; - struct rtentry *rt; - - while (rn != NULL) { - rt = (struct rtentry *)rn; - i += rt->rt_weight; - rn = rn_mpath_next(rn); - } - return (i); -} - -struct rtentry * -rt_mpath_matchgate(struct rtentry *rt, struct sockaddr *gate) -{ - struct radix_node *rn; - - if (!gate || !rt->rt_gateway) - return NULL; - - /* beyond here, we use rn as the master copy */ - rn = (struct radix_node *)rt; - do { - rt = (struct rtentry *)rn; - /* - * we are removing an address alias that has - * the same prefix as another address - * we need to compare the interface address because - * rt_gateway is a special sockadd_dl structure - */ - if (rt->rt_gateway->sa_family == AF_LINK) { - if (!memcmp(rt->rt_ifa->ifa_addr, gate, gate->sa_len)) - break; - } - - /* - * Check for other options: - * 1) Routes with 'real' IPv4/IPv6 gateway - * 2) Loopback host routes (another AF_LINK/sockadd_dl check) - * */ - if (rt->rt_gateway->sa_len == gate->sa_len && - !memcmp(rt->rt_gateway, gate, gate->sa_len)) - break; - } while ((rn = rn_mpath_next(rn)) != NULL); - - return (struct rtentry *)rn; -} - -/* - * go through the chain and unlink "rt" from the list - * the caller will free "rt" - */ -int -rt_mpath_deldup(struct rtentry *headrt, struct rtentry *rt) -{ - struct radix_node *t, *tt; - - if (!headrt || !rt) - return (0); - t = (struct radix_node *)headrt; - tt = rn_mpath_next(t); - while (tt) { - if (tt == (struct radix_node *)rt) { - t->rn_dupedkey = tt->rn_dupedkey; - tt->rn_dupedkey = NULL; - tt->rn_flags &= ~RNF_ACTIVE; - tt[1].rn_flags &= ~RNF_ACTIVE; - return (1); - } - t = tt; - tt = rn_mpath_next((struct radix_node *)t); - } - return (0); -} - -/* - * check if we have the same key/mask/gateway on the table already. - * Assume @rt rt_key host bits are cleared according to @netmask - */ -int -rt_mpath_conflict(struct rib_head *rnh, struct rtentry *rt, - struct sockaddr *netmask) -{ - struct radix_node *rn, *rn1; - struct rtentry *rt1; - - rn = (struct radix_node *)rt; - rn1 = rnh->rnh_lookup(rt_key(rt), netmask, &rnh->head); - if (!rn1 || rn1->rn_flags & RNF_ROOT) - return (0); - - /* key/mask are the same. compare gateway for all multipaths */ - do { - rt1 = (struct rtentry *)rn1; - - /* sanity: no use in comparing the same thing */ - if (rn1 == rn) - continue; - - if (rt1->rt_gateway->sa_family == AF_LINK) { - if (rt1->rt_ifa->ifa_addr->sa_len != rt->rt_ifa->ifa_addr->sa_len || - bcmp(rt1->rt_ifa->ifa_addr, rt->rt_ifa->ifa_addr, - rt1->rt_ifa->ifa_addr->sa_len)) - continue; - } else { - if (rt1->rt_gateway->sa_len != rt->rt_gateway->sa_len || - bcmp(rt1->rt_gateway, rt->rt_gateway, - rt1->rt_gateway->sa_len)) - continue; - } - - /* all key/mask/gateway are the same. conflicting entry. */ - return (EEXIST); - } while ((rn1 = rn_mpath_next(rn1)) != NULL); - - return (0); -} - -static struct rtentry * -rt_mpath_selectrte(struct rtentry *rte, uint32_t hash) -{ - struct radix_node *rn0, *rn; - uint32_t total_weight; - struct rtentry *rt; - int64_t weight; - - /* beyond here, we use rn as the master copy */ - rn0 = rn = (struct radix_node *)rte; - rt = rte; - - /* gw selection by Modulo-N Hash (RFC2991) XXX need improvement? */ - total_weight = rn_mpath_count(rn0); - hash += hashjitter; - hash %= total_weight; - for (weight = abs((int32_t)hash); - rt != NULL && weight >= rt->rt_weight; - weight -= (rt == NULL) ? 0 : rt->rt_weight) { - - /* stay within the multipath routes */ - if (rn->rn_dupedkey && rn->rn_mask != rn->rn_dupedkey->rn_mask) - break; - rn = rn->rn_dupedkey; - rt = (struct rtentry *)rn; - } - - return (rt); -} - -struct rtentry * -rt_mpath_select(struct rtentry *rte, uint32_t hash) -{ - if (rn_mpath_next((struct radix_node *)rte) == NULL) - return (rte); - - return (rt_mpath_selectrte(rte, hash)); -} - -void -rtalloc_mpath_fib(struct route *ro, uint32_t hash, u_int fibnum) -{ - struct rtentry *rt; - - /* - * XXX we don't attempt to lookup cached route again; what should - * be done for sendto(3) case? - */ - if (ro->ro_rt && ro->ro_rt->rt_ifp && (ro->ro_rt->rt_flags & RTF_UP) - && RT_LINK_IS_UP(ro->ro_rt->rt_ifp)) - return; - ro->ro_rt = rtalloc1_fib(&ro->ro_dst, 1, 0, fibnum); - - /* if the route does not exist or it is not multipath, don't care */ - if (ro->ro_rt == NULL) - return; - if (rn_mpath_next((struct radix_node *)ro->ro_rt) == NULL) { - RT_UNLOCK(ro->ro_rt); - return; - } - - rt = rt_mpath_selectrte(ro->ro_rt, hash); - /* XXX try filling rt_gwroute and avoid unreachable gw */ - - /* gw selection has failed - there must be only zero weight routes */ - if (!rt) { - RT_UNLOCK(ro->ro_rt); - ro->ro_rt = NULL; - return; - } - if (ro->ro_rt != rt) { - RTFREE_LOCKED(ro->ro_rt); - ro->ro_rt = rt; - RT_LOCK(ro->ro_rt); - RT_ADDREF(ro->ro_rt); - - } - RT_UNLOCK(ro->ro_rt); -} - -extern int in6_inithead(void **head, int off); -extern int in_inithead(void **head, int off); - -#ifdef INET -int -rn4_mpath_inithead(void **head, int off) -{ - struct rib_head *rnh; - - hashjitter = arc4random(); - if (in_inithead(head, off) == 1) { - rnh = (struct rib_head *)*head; - rnh->rnh_multipath = 1; - return 1; - } else - return 0; -} -#endif - -#ifdef INET6 -int -rn6_mpath_inithead(void **head, int off) -{ - struct rib_head *rnh; - - hashjitter = arc4random(); - if (in6_inithead(head, off) == 1) { - rnh = (struct rib_head *)*head; - rnh->rnh_multipath = 1; - return 1; - } else - return 0; -} - -#endif diff --git a/sys/net/radix_mpath.h b/sys/net/radix_mpath.h deleted file mode 100644 index 8bf270d69ad..00000000000 --- a/sys/net/radix_mpath.h +++ /dev/null @@ -1,64 +0,0 @@ -/* $KAME: radix_mpath.h,v 1.10 2004/11/06 15:44:28 itojun Exp $ */ - -/* - * SPDX-License-Identifier: BSD-3-Clause - * - * Copyright (C) 2001 WIDE 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 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 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. - * THE AUTHORS DO NOT GUARANTEE THAT THIS SOFTWARE DOES NOT INFRINGE - * ANY OTHERS' INTELLECTUAL PROPERTIES. IN NO EVENT SHALL THE AUTHORS - * BE LIABLE FOR ANY INFRINGEMENT OF ANY OTHERS' INTELLECTUAL - * PROPERTIES. - */ - -#ifndef _NET_RADIX_MPATH_H_ -#define _NET_RADIX_MPATH_H_ - -#ifdef _KERNEL -/* - * Radix tree API with multipath support - */ -struct route; -struct rtentry; -struct sockaddr; -struct rib_head; -int rt_mpath_capable(struct rib_head *); -int rn_mpath_capable(struct radix_head *); -struct radix_node *rn_mpath_next(struct radix_node *); -u_int32_t rn_mpath_count(struct radix_node *); -struct rtentry *rt_mpath_matchgate(struct rtentry *, struct sockaddr *); -int rt_mpath_conflict(struct rib_head *, struct rtentry *, - struct sockaddr *); -void rtalloc_mpath_fib(struct route *, u_int32_t, u_int); -struct rtentry *rt_mpath_select(struct rtentry *, uint32_t); -int rt_mpath_deldup(struct rtentry *, struct rtentry *); -int rn4_mpath_inithead(void **, int); -int rn6_mpath_inithead(void **, int); - -#endif - -#endif /* _NET_RADIX_MPATH_H_ */ diff --git a/sys/net/route_var.h b/sys/net/route_var.h deleted file mode 100644 index 99c275f5231..00000000000 --- a/sys/net/route_var.h +++ /dev/null @@ -1,78 +0,0 @@ -/*- - * Copyright (c) 2015-2016 - * Alexander V. Chernikov - * - * 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. - * - */ - -#ifndef _NET_ROUTE_VAR_H_ -#define _NET_ROUTE_VAR_H_ - -struct rib_head { - struct radix_head head; - rn_matchaddr_f_t *rnh_matchaddr; /* longest match for sockaddr */ - rn_addaddr_f_t *rnh_addaddr; /* add based on sockaddr*/ - rn_deladdr_f_t *rnh_deladdr; /* remove based on sockaddr */ - rn_lookup_f_t *rnh_lookup; /* exact match for sockaddr */ - rn_walktree_t *rnh_walktree; /* traverse tree */ - rn_walktree_from_t *rnh_walktree_from; /* traverse tree below a */ - rn_close_t *rnh_close; /*do something when the last ref drops*/ - rt_gen_t rnh_gen; /* generation counter */ - int rnh_multipath; /* multipath capable ? */ - struct radix_node rnh_nodes[3]; /* empty tree for common case */ - struct rmlock rib_lock; /* config/data path lock */ - struct radix_mask_head rmhead; /* masks radix head */ -}; - -#define RIB_RLOCK_TRACKER struct rm_priotracker _rib_tracker -#define RIB_LOCK_INIT(rh) rm_init(&(rh)->rib_lock, "rib head lock") -#define RIB_LOCK_DESTROY(rh) rm_destroy(&(rh)->rib_lock) -#define RIB_RLOCK(rh) rm_rlock(&(rh)->rib_lock, &_rib_tracker) -#define RIB_RUNLOCK(rh) rm_runlock(&(rh)->rib_lock, &_rib_tracker) -#define RIB_WLOCK(rh) rm_wlock(&(rh)->rib_lock) -#define RIB_WUNLOCK(rh) rm_wunlock(&(rh)->rib_lock) -#define RIB_LOCK_ASSERT(rh) rm_assert(&(rh)->rib_lock, RA_LOCKED) -#define RIB_WLOCK_ASSERT(rh) rm_assert(&(rh)->rib_lock, RA_WLOCKED) - -struct rib_head *rt_tables_get_rnh(int fib, int family); - -/* rte<>nhop translation */ -static inline uint16_t -fib_rte_to_nh_flags(int rt_flags) -{ - uint16_t res; - - res = (rt_flags & RTF_REJECT) ? NHF_REJECT : 0; - res |= (rt_flags & RTF_BLACKHOLE) ? NHF_BLACKHOLE : 0; - res |= (rt_flags & (RTF_DYNAMIC|RTF_MODIFIED)) ? NHF_REDIRECT : 0; - res |= (rt_flags & RTF_BROADCAST) ? NHF_BROADCAST : 0; - res |= (rt_flags & RTF_GATEWAY) ? NHF_GATEWAY : 0; - - return (res); -} - - -#endif diff --git a/sys/netgraph/atm/ng_atm.c b/sys/netgraph/atm/ng_atm.c deleted file mode 100644 index b07b78fee15..00000000000 --- a/sys/netgraph/atm/ng_atm.c +++ /dev/null @@ -1,1447 +0,0 @@ -/*- - * Copyright (c) 2001-2003 - * Fraunhofer Institute for Open Communication Systems (FhG Fokus). - * 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. - * - * Author: Hartmut Brandt - */ - -/* - * Netgraph module to connect NATM interfaces to netgraph. - */ - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - -/* - * Hooks in the NATM code - */ -extern void (*ng_atm_attach_p)(struct ifnet *); -extern void (*ng_atm_detach_p)(struct ifnet *); -extern int (*ng_atm_output_p)(struct ifnet *, struct mbuf **); -extern void (*ng_atm_input_p)(struct ifnet *, struct mbuf **, - struct atm_pseudohdr *, void *); -extern void (*ng_atm_input_orphan_p)(struct ifnet *, struct mbuf *, - struct atm_pseudohdr *, void *); -extern void (*ng_atm_event_p)(struct ifnet *, uint32_t, void *); - -/* - * Sysctl stuff. - */ -static SYSCTL_NODE(_net_graph, OID_AUTO, atm, CTLFLAG_RW, 0, - "atm related stuff"); - -#ifdef NGATM_DEBUG -static int allow_shutdown; - -SYSCTL_INT(_net_graph_atm, OID_AUTO, allow_shutdown, CTLFLAG_RW, - &allow_shutdown, 0, "allow ng_atm nodes to shutdown"); -#endif - -/* - * Hook private data - */ -struct ngvcc { - uint16_t vpi; /* VPI of this hook */ - uint16_t vci; /* VCI of this hook, 0 if none */ - uint32_t flags; /* private flags */ - hook_p hook; /* the connected hook */ - - LIST_ENTRY(ngvcc) link; -}; -#define VCC_OPEN 0x0001 /* open */ - -/* - * Node private data - */ -struct priv { - struct ifnet *ifp; /* the ATM interface */ - hook_p input; /* raw input hook */ - hook_p orphans; /* packets to nowhere */ - hook_p output; /* catch output packets */ - hook_p manage; /* has also entry in vccs */ - uint64_t in_packets; - uint64_t in_errors; - uint64_t out_packets; - uint64_t out_errors; - - LIST_HEAD(, ngvcc) vccs; -}; - -/* - * Parse ifstate state - */ -static const struct ng_parse_struct_field ng_atm_if_change_info[] = - NGM_ATM_IF_CHANGE_INFO; -static const struct ng_parse_type ng_atm_if_change_type = { - &ng_parse_struct_type, - &ng_atm_if_change_info -}; - -/* - * Parse vcc state change - */ -static const struct ng_parse_struct_field ng_atm_vcc_change_info[] = - NGM_ATM_VCC_CHANGE_INFO; -static const struct ng_parse_type ng_atm_vcc_change_type = { - &ng_parse_struct_type, - &ng_atm_vcc_change_info -}; - -/* - * Parse acr change - */ -static const struct ng_parse_struct_field ng_atm_acr_change_info[] = - NGM_ATM_ACR_CHANGE_INFO; -static const struct ng_parse_type ng_atm_acr_change_type = { - &ng_parse_struct_type, - &ng_atm_acr_change_info -}; - -/* - * Parse the configuration structure ng_atm_config - */ -static const struct ng_parse_struct_field ng_atm_config_type_info[] = - NGM_ATM_CONFIG_INFO; - -static const struct ng_parse_type ng_atm_config_type = { - &ng_parse_struct_type, - &ng_atm_config_type_info -}; - -/* - * Parse a single vcc structure and a variable array of these ng_atm_vccs - */ -static const struct ng_parse_struct_field ng_atm_tparam_type_info[] = - NGM_ATM_TPARAM_INFO; -static const struct ng_parse_type ng_atm_tparam_type = { - &ng_parse_struct_type, - &ng_atm_tparam_type_info -}; -static const struct ng_parse_struct_field ng_atm_vcc_type_info[] = - NGM_ATM_VCC_INFO; -static const struct ng_parse_type ng_atm_vcc_type = { - &ng_parse_struct_type, - &ng_atm_vcc_type_info -}; - - -static int -ng_atm_vccarray_getlen(const struct ng_parse_type *type, - const u_char *start, const u_char *buf) -{ - const struct atmio_vcctable *vp; - - vp = (const struct atmio_vcctable *) - (buf - offsetof(struct atmio_vcctable, vccs)); - - return (vp->count); -} -static const struct ng_parse_array_info ng_atm_vccarray_info = - NGM_ATM_VCCARRAY_INFO; -static const struct ng_parse_type ng_atm_vccarray_type = { - &ng_parse_array_type, - &ng_atm_vccarray_info -}; - - -static const struct ng_parse_struct_field ng_atm_vcctable_type_info[] = - NGM_ATM_VCCTABLE_INFO; - -static const struct ng_parse_type ng_atm_vcctable_type = { - &ng_parse_struct_type, - &ng_atm_vcctable_type_info -}; - -/* - * Parse CPCS INIT structure ng_atm_cpcs_init - */ -static const struct ng_parse_struct_field ng_atm_cpcs_init_type_info[] = - NGM_ATM_CPCS_INIT_INFO; - -static const struct ng_parse_type ng_atm_cpcs_init_type = { - &ng_parse_struct_type, - &ng_atm_cpcs_init_type_info -}; - -/* - * Parse CPCS TERM structure ng_atm_cpcs_term - */ -static const struct ng_parse_struct_field ng_atm_cpcs_term_type_info[] = - NGM_ATM_CPCS_TERM_INFO; - -static const struct ng_parse_type ng_atm_cpcs_term_type = { - &ng_parse_struct_type, - &ng_atm_cpcs_term_type_info -}; - -/* - * Parse statistic struct - */ -static const struct ng_parse_struct_field ng_atm_stats_type_info[] = - NGM_ATM_STATS_INFO; - -static const struct ng_parse_type ng_atm_stats_type = { - &ng_parse_struct_type, - &ng_atm_stats_type_info -}; - -static const struct ng_cmdlist ng_atm_cmdlist[] = { - { - NGM_ATM_COOKIE, - NGM_ATM_GET_IFNAME, - "getifname", - NULL, - &ng_parse_string_type - }, - { - NGM_ATM_COOKIE, - NGM_ATM_GET_CONFIG, - "getconfig", - NULL, - &ng_atm_config_type - }, - { - NGM_ATM_COOKIE, - NGM_ATM_GET_VCCS, - "getvccs", - NULL, - &ng_atm_vcctable_type - }, - { - NGM_ATM_COOKIE, - NGM_ATM_CPCS_INIT, - "cpcsinit", - &ng_atm_cpcs_init_type, - NULL - }, - { - NGM_ATM_COOKIE, - NGM_ATM_CPCS_TERM, - "cpcsterm", - &ng_atm_cpcs_term_type, - NULL - }, - { - NGM_ATM_COOKIE, - NGM_ATM_GET_VCC, - "getvcc", - &ng_parse_hookbuf_type, - &ng_atm_vcc_type - }, - { - NGM_ATM_COOKIE, - NGM_ATM_GET_VCCID, - "getvccid", - &ng_atm_vcc_type, - &ng_atm_vcc_type - }, - { - NGM_ATM_COOKIE, - NGM_ATM_GET_STATS, - "getstats", - NULL, - &ng_atm_stats_type - }, - - /* events */ - { - NGM_ATM_COOKIE, - NGM_ATM_IF_CHANGE, - "if_change", - &ng_atm_if_change_type, - &ng_atm_if_change_type, - }, - { - NGM_ATM_COOKIE, - NGM_ATM_VCC_CHANGE, - "vcc_change", - &ng_atm_vcc_change_type, - &ng_atm_vcc_change_type, - }, - { - NGM_ATM_COOKIE, - NGM_ATM_ACR_CHANGE, - "acr_change", - &ng_atm_acr_change_type, - &ng_atm_acr_change_type, - }, - { 0 } -}; - -static int ng_atm_mod_event(module_t, int, void *); - -static ng_constructor_t ng_atm_constructor; -static ng_shutdown_t ng_atm_shutdown; -static ng_rcvmsg_t ng_atm_rcvmsg; -static ng_newhook_t ng_atm_newhook; -static ng_connect_t ng_atm_connect; -static ng_disconnect_t ng_atm_disconnect; -static ng_rcvdata_t ng_atm_rcvdata; -static ng_rcvdata_t ng_atm_rcvdrop; - -static struct ng_type ng_atm_typestruct = { - .version = NG_ABI_VERSION, - .name = NG_ATM_NODE_TYPE, - .mod_event = ng_atm_mod_event, - .constructor = ng_atm_constructor, - .rcvmsg = ng_atm_rcvmsg, - .shutdown = ng_atm_shutdown, - .newhook = ng_atm_newhook, - .connect = ng_atm_connect, - .rcvdata = ng_atm_rcvdata, - .disconnect = ng_atm_disconnect, - .cmdlist = ng_atm_cmdlist, -}; -NETGRAPH_INIT(atm, &ng_atm_typestruct); - -static const struct { - u_int media; - const char *name; -} atmmedia[] = IFM_SUBTYPE_ATM_DESCRIPTIONS; - - -#define IFP2NG(IFP) ((node_p)((struct ifatm *)(IFP)->if_softc)->ngpriv) -#define IFP2NG_SET(IFP, val) (((struct ifatm *)(IFP)->if_softc)->ngpriv = (val)) - -#define IFFLAGS "\020\001UP\002BROADCAST\003DEBUG\004LOOPBACK" \ - "\005POINTOPOINT\006SMART\007RUNNING\010NOARP" \ - "\011PROMISC\012ALLMULTI\013OACTIVE\014SIMPLEX" \ - "\015LINK0\016LINK1\017LINK2\020MULTICAST" - - -/************************************************************/ -/* - * INPUT - */ -/* - * A packet is received from an interface. - * If we have an input hook, prepend the pseudoheader to the data and - * deliver it out to that hook. If not, look whether it is destined for - * use. If so locate the appropriate hook, deliver the packet without the - * header and we are done. If it is not for us, leave it alone. - */ -static void -ng_atm_input(struct ifnet *ifp, struct mbuf **mp, - struct atm_pseudohdr *ah, void *rxhand) -{ - node_p node = IFP2NG(ifp); - struct priv *priv; - const struct ngvcc *vcc; - int error; - - if (node == NULL) - return; - priv = NG_NODE_PRIVATE(node); - if (priv->input != NULL) { - /* - * Prepend the atm_pseudoheader. - */ - M_PREPEND(*mp, sizeof(*ah), M_NOWAIT); - if (*mp == NULL) - return; - memcpy(mtod(*mp, struct atm_pseudohdr *), ah, sizeof(*ah)); - NG_SEND_DATA_ONLY(error, priv->input, *mp); - if (error == 0) { - priv->in_packets++; - *mp = NULL; - } else { -#ifdef NGATM_DEBUG - printf("%s: error=%d\n", __func__, error); -#endif - priv->in_errors++; - } - return; - } - if ((ATM_PH_FLAGS(ah) & ATMIO_FLAG_NG) == 0) - return; - - vcc = (struct ngvcc *)rxhand; - - NG_SEND_DATA_ONLY(error, vcc->hook, *mp); - if (error == 0) { - priv->in_packets++; - *mp = NULL; - } else { -#ifdef NGATM_DEBUG - printf("%s: error=%d\n", __func__, error); -#endif - priv->in_errors++; - } -} - -/* - * ATM packet is about to be output. The atm_pseudohdr is already prepended. - * If the hook is set, reroute the packet to the hook. - */ -static int -ng_atm_output(struct ifnet *ifp, struct mbuf **mp) -{ - const node_p node = IFP2NG(ifp); - const struct priv *priv; - int error = 0; - - if (node == NULL) - return (0); - priv = NG_NODE_PRIVATE(node); - if (priv->output) { - NG_SEND_DATA_ONLY(error, priv->output, *mp); - *mp = NULL; - } - - return (error); -} - -/* - * Well, this doesn't make much sense for ATM. - */ -static void -ng_atm_input_orphans(struct ifnet *ifp, struct mbuf *m, - struct atm_pseudohdr *ah, void *rxhand) -{ - node_p node = IFP2NG(ifp); - struct priv *priv; - int error; - - if (node == NULL) { - m_freem(m); - return; - } - priv = NG_NODE_PRIVATE(node); - if (priv->orphans == NULL) { - m_freem(m); - return; - } - /* - * Prepend the atm_pseudoheader. - */ - M_PREPEND(m, sizeof(*ah), M_NOWAIT); - if (m == NULL) - return; - memcpy(mtod(m, struct atm_pseudohdr *), ah, sizeof(*ah)); - NG_SEND_DATA_ONLY(error, priv->orphans, m); - if (error == 0) - priv->in_packets++; - else { - priv->in_errors++; -#ifdef NGATM_DEBUG - printf("%s: error=%d\n", __func__, error); -#endif - } -} - -/************************************************************/ -/* - * OUTPUT - */ -static int -ng_atm_rcvdata(hook_p hook, item_p item) -{ - node_p node = NG_HOOK_NODE(hook); - struct priv *priv = NG_NODE_PRIVATE(node); - const struct ngvcc *vcc = NG_HOOK_PRIVATE(hook); - struct mbuf *m; - struct atm_pseudohdr *aph; - int error; - - if (vcc->vci == 0) { - NG_FREE_ITEM(item); - return (ENOTCONN); - } - - NGI_GET_M(item, m); - NG_FREE_ITEM(item); - - /* - * Prepend pseudo-hdr. Drivers don't care about the flags. - */ - M_PREPEND(m, sizeof(*aph), M_NOWAIT); - if (m == NULL) { - NG_FREE_M(m); - return (ENOMEM); - } - aph = mtod(m, struct atm_pseudohdr *); - ATM_PH_VPI(aph) = vcc->vpi; - ATM_PH_SETVCI(aph, vcc->vci); - ATM_PH_FLAGS(aph) = 0; - - if ((error = atm_output(priv->ifp, m, NULL, NULL)) == 0) - priv->out_packets++; - else - priv->out_errors++; - return (error); -} - -static int -ng_atm_rcvdrop(hook_p hook, item_p item) -{ - NG_FREE_ITEM(item); - return (0); -} - - -/************************************************************ - * - * Event from driver. - */ -static void -ng_atm_event_func(node_p node, hook_p hook, void *arg, int event) -{ - const struct priv *priv = NG_NODE_PRIVATE(node); - struct ngvcc *vcc; - struct ng_mesg *mesg; - int error; - - switch (event) { - - case ATMEV_FLOW_CONTROL: - { - struct atmev_flow_control *ev = arg; - struct ngm_queue_state *qstate; - - /* find the connection */ - LIST_FOREACH(vcc, &priv->vccs, link) - if (vcc->vci == ev->vci && vcc->vpi == ev->vpi) - break; - if (vcc == NULL) - break; - - /* convert into a flow control message */ - NG_MKMESSAGE(mesg, NGM_FLOW_COOKIE, - ev->busy ? NGM_HIGH_WATER_PASSED : NGM_LOW_WATER_PASSED, - sizeof(struct ngm_queue_state), M_NOWAIT); - if (mesg == NULL) - break; - qstate = (struct ngm_queue_state *)mesg->data; - - /* XXX have to figure out how to get that info */ - - NG_SEND_MSG_HOOK(error, node, mesg, vcc->hook, 0); - break; - } - - case ATMEV_VCC_CHANGED: - { - struct atmev_vcc_changed *ev = arg; - struct ngm_atm_vcc_change *chg; - - if (priv->manage == NULL) - break; - NG_MKMESSAGE(mesg, NGM_ATM_COOKIE, NGM_ATM_VCC_CHANGE, - sizeof(struct ngm_atm_vcc_change), M_NOWAIT); - if (mesg == NULL) - break; - chg = (struct ngm_atm_vcc_change *)mesg->data; - chg->vci = ev->vci; - chg->vpi = ev->vpi; - chg->state = (ev->up != 0); - chg->node = NG_NODE_ID(node); - NG_SEND_MSG_HOOK(error, node, mesg, priv->manage, 0); - break; - } - - case ATMEV_IFSTATE_CHANGED: - { - struct atmev_ifstate_changed *ev = arg; - struct ngm_atm_if_change *chg; - - if (priv->manage == NULL) - break; - NG_MKMESSAGE(mesg, NGM_ATM_COOKIE, NGM_ATM_IF_CHANGE, - sizeof(struct ngm_atm_if_change), M_NOWAIT); - if (mesg == NULL) - break; - chg = (struct ngm_atm_if_change *)mesg->data; - chg->carrier = (ev->carrier != 0); - chg->running = (ev->running != 0); - chg->node = NG_NODE_ID(node); - NG_SEND_MSG_HOOK(error, node, mesg, priv->manage, 0); - break; - } - - case ATMEV_ACR_CHANGED: - { - struct atmev_acr_changed *ev = arg; - struct ngm_atm_acr_change *acr; - - /* find the connection */ - LIST_FOREACH(vcc, &priv->vccs, link) - if (vcc->vci == ev->vci && vcc->vpi == ev->vpi) - break; - if (vcc == NULL) - break; - - /* convert into a flow control message */ - NG_MKMESSAGE(mesg, NGM_ATM_COOKIE, NGM_ATM_ACR_CHANGE, - sizeof(struct ngm_atm_acr_change), M_NOWAIT); - if (mesg == NULL) - break; - acr = (struct ngm_atm_acr_change *)mesg->data; - acr->node = NG_NODE_ID(node); - acr->vci = ev->vci; - acr->vpi = ev->vpi; - acr->acr = ev->acr; - - NG_SEND_MSG_HOOK(error, node, mesg, vcc->hook, 0); - break; - } - } -} - -/* - * Use send_fn to get the right lock - */ -static void -ng_atm_event(struct ifnet *ifp, uint32_t event, void *arg) -{ - const node_p node = IFP2NG(ifp); - - if (node != NULL) - /* may happen during attach/detach */ - (void)ng_send_fn(node, NULL, ng_atm_event_func, arg, event); -} - -/************************************************************ - * - * CPCS - */ -/* - * Open a channel for the user - */ -static int -ng_atm_cpcs_init(node_p node, const struct ngm_atm_cpcs_init *arg) -{ - struct priv *priv = NG_NODE_PRIVATE(node); - const struct ifatm_mib *mib; - struct ngvcc *vcc; - struct atmio_openvcc data; - int err; - - if(priv->ifp->if_ioctl == NULL) - return (ENXIO); - - mib = (const struct ifatm_mib *)(priv->ifp->if_linkmib); - - LIST_FOREACH(vcc, &priv->vccs, link) - if (strcmp(arg->name, NG_HOOK_NAME(vcc->hook)) == 0) - break; - if (vcc == NULL) - return (ENOTCONN); - if (vcc->flags & VCC_OPEN) - return (EISCONN); - - /* - * Check user arguments and construct ioctl argument - */ - memset(&data, 0, sizeof(data)); - - data.rxhand = vcc; - - switch (data.param.aal = arg->aal) { - - case ATMIO_AAL_34: - case ATMIO_AAL_5: - case ATMIO_AAL_0: - case ATMIO_AAL_RAW: - break; - - default: - return (EINVAL); - } - - if (arg->vpi > 0xff) - return (EINVAL); - data.param.vpi = arg->vpi; - - /* allow 0.0 as catch all receive channel */ - if (arg->vci == 0 && (arg->vpi != 0 || !(arg->flags & ATMIO_FLAG_NOTX))) - return (EINVAL); - data.param.vci = arg->vci; - - data.param.tparam.pcr = arg->pcr; - - if (arg->mcr > arg->pcr) - return (EINVAL); - data.param.tparam.mcr = arg->mcr; - - if (!(arg->flags & ATMIO_FLAG_NOTX)) { - if (arg->tmtu == 0) - data.param.tmtu = priv->ifp->if_mtu; - else { - data.param.tmtu = arg->tmtu; - } - } - if (!(arg->flags & ATMIO_FLAG_NORX)) { - if (arg->rmtu == 0) - data.param.rmtu = priv->ifp->if_mtu; - else { - data.param.rmtu = arg->rmtu; - } - } - - switch (data.param.traffic = arg->traffic) { - - case ATMIO_TRAFFIC_UBR: - case ATMIO_TRAFFIC_CBR: - break; - - case ATMIO_TRAFFIC_VBR: - if (arg->scr > arg->pcr) - return (EINVAL); - data.param.tparam.scr = arg->scr; - - if (arg->mbs > (1 << 24)) - return (EINVAL); - data.param.tparam.mbs = arg->mbs; - break; - - case ATMIO_TRAFFIC_ABR: - if (arg->icr > arg->pcr || arg->icr < arg->mcr) - return (EINVAL); - data.param.tparam.icr = arg->icr; - - if (arg->tbe == 0 || arg->tbe > (1 << 24)) - return (EINVAL); - data.param.tparam.tbe = arg->tbe; - - if (arg->nrm > 0x7) - return (EINVAL); - data.param.tparam.nrm = arg->nrm; - - if (arg->trm > 0x7) - return (EINVAL); - data.param.tparam.trm = arg->trm; - - if (arg->adtf > 0x3ff) - return (EINVAL); - data.param.tparam.adtf = arg->adtf; - - if (arg->rif > 0xf) - return (EINVAL); - data.param.tparam.rif = arg->rif; - - if (arg->rdf > 0xf) - return (EINVAL); - data.param.tparam.rdf = arg->rdf; - - if (arg->cdf > 0x7) - return (EINVAL); - data.param.tparam.cdf = arg->cdf; - - break; - - default: - return (EINVAL); - } - - if ((arg->flags & ATMIO_FLAG_NORX) && (arg->flags & ATMIO_FLAG_NOTX)) - return (EINVAL); - - data.param.flags = arg->flags & ~(ATM_PH_AAL5 | ATM_PH_LLCSNAP); - data.param.flags |= ATMIO_FLAG_NG; - - err = (*priv->ifp->if_ioctl)(priv->ifp, SIOCATMOPENVCC, (caddr_t)&data); - - if (err == 0) { - vcc->vci = data.param.vci; - vcc->vpi = data.param.vpi; - vcc->flags = VCC_OPEN; - } - - return (err); -} - -/* - * Issue the close command to the driver - */ -static int -cpcs_term(const struct priv *priv, u_int vpi, u_int vci) -{ - struct atmio_closevcc data; - - if (priv->ifp->if_ioctl == NULL) - return ENXIO; - - data.vpi = vpi; - data.vci = vci; - - return ((*priv->ifp->if_ioctl)(priv->ifp, - SIOCATMCLOSEVCC, (caddr_t)&data)); -} - - -/* - * Close a channel by request of the user - */ -static int -ng_atm_cpcs_term(node_p node, const struct ngm_atm_cpcs_term *arg) -{ - struct priv *priv = NG_NODE_PRIVATE(node); - struct ngvcc *vcc; - int error; - - LIST_FOREACH(vcc, &priv->vccs, link) - if(strcmp(arg->name, NG_HOOK_NAME(vcc->hook)) == 0) - break; - if (vcc == NULL) - return (ENOTCONN); - if (!(vcc->flags & VCC_OPEN)) - return (ENOTCONN); - - error = cpcs_term(priv, vcc->vpi, vcc->vci); - - vcc->vci = 0; - vcc->vpi = 0; - vcc->flags = 0; - - return (error); -} - -/************************************************************/ -/* - * CONTROL MESSAGES - */ - -/* - * Produce a textual description of the current status - */ -static int -text_status(node_p node, char *arg, u_int len) -{ - const struct priv *priv = NG_NODE_PRIVATE(node); - const struct ifatm_mib *mib; - struct sbuf sbuf; - u_int i; - - static const struct { - const char *name; - const char *vendor; - } devices[] = { - ATM_DEVICE_NAMES - }; - - mib = (const struct ifatm_mib *)(priv->ifp->if_linkmib); - - sbuf_new(&sbuf, arg, len, SBUF_FIXEDLEN); - sbuf_printf(&sbuf, "interface: %s\n", priv->ifp->if_xname); - - if (mib->device >= nitems(devices)) - sbuf_printf(&sbuf, "device=unknown\nvendor=unknown\n"); - else - sbuf_printf(&sbuf, "device=%s\nvendor=%s\n", - devices[mib->device].name, devices[mib->device].vendor); - - for (i = 0; atmmedia[i].name; i++) - if(mib->media == atmmedia[i].media) { - sbuf_printf(&sbuf, "media=%s\n", atmmedia[i].name); - break; - } - if(atmmedia[i].name == NULL) - sbuf_printf(&sbuf, "media=unknown\n"); - - sbuf_printf(&sbuf, "serial=%u esi=%6D hardware=%u software=%u\n", - mib->serial, mib->esi, ":", mib->hw_version, mib->sw_version); - sbuf_printf(&sbuf, "pcr=%u vpi_bits=%u vci_bits=%u max_vpcs=%u " - "max_vccs=%u\n", mib->pcr, mib->vpi_bits, mib->vci_bits, - mib->max_vpcs, mib->max_vccs); - sbuf_printf(&sbuf, "ifflags=%b\n", priv->ifp->if_flags, IFFLAGS); - - sbuf_finish(&sbuf); - - return (sbuf_len(&sbuf)); -} - -/* - * Get control message - */ -static int -ng_atm_rcvmsg(node_p node, item_p item, hook_p lasthook) -{ - const struct priv *priv = NG_NODE_PRIVATE(node); - struct ng_mesg *resp = NULL; - struct ng_mesg *msg; - struct ifatm_mib *mib = (struct ifatm_mib *)(priv->ifp->if_linkmib); - int error = 0; - - NGI_GET_MSG(item, msg); - - switch (msg->header.typecookie) { - - case NGM_GENERIC_COOKIE: - switch (msg->header.cmd) { - - case NGM_TEXT_STATUS: - NG_MKRESPONSE(resp, msg, NG_TEXTRESPONSE, M_NOWAIT); - if(resp == NULL) { - error = ENOMEM; - break; - } - - resp->header.arglen = text_status(node, - (char *)resp->data, resp->header.arglen) + 1; - break; - - default: - error = EINVAL; - break; - } - break; - - case NGM_ATM_COOKIE: - switch (msg->header.cmd) { - - case NGM_ATM_GET_IFNAME: - NG_MKRESPONSE(resp, msg, IFNAMSIZ, M_NOWAIT); - if (resp == NULL) { - error = ENOMEM; - break; - } - strlcpy(resp->data, priv->ifp->if_xname, IFNAMSIZ); - break; - - case NGM_ATM_GET_CONFIG: - { - struct ngm_atm_config *config; - - NG_MKRESPONSE(resp, msg, sizeof(*config), M_NOWAIT); - if (resp == NULL) { - error = ENOMEM; - break; - } - config = (struct ngm_atm_config *)resp->data; - config->pcr = mib->pcr; - config->vpi_bits = mib->vpi_bits; - config->vci_bits = mib->vci_bits; - config->max_vpcs = mib->max_vpcs; - config->max_vccs = mib->max_vccs; - break; - } - - case NGM_ATM_GET_VCCS: - { - struct atmio_vcctable *vccs; - size_t len; - - if (priv->ifp->if_ioctl == NULL) { - error = ENXIO; - break; - } - error = (*priv->ifp->if_ioctl)(priv->ifp, - SIOCATMGETVCCS, (caddr_t)&vccs); - if (error) - break; - - len = sizeof(*vccs) + - vccs->count * sizeof(vccs->vccs[0]); - NG_MKRESPONSE(resp, msg, len, M_NOWAIT); - if (resp == NULL) { - error = ENOMEM; - free(vccs, M_DEVBUF); - break; - } - - (void)memcpy(resp->data, vccs, len); - free(vccs, M_DEVBUF); - - break; - } - - case NGM_ATM_GET_VCC: - { - char hook[NG_HOOKSIZ]; - struct atmio_vcctable *vccs; - struct ngvcc *vcc; - u_int i; - - if (priv->ifp->if_ioctl == NULL) { - error = ENXIO; - break; - } - if (msg->header.arglen != NG_HOOKSIZ) { - error = EINVAL; - break; - } - strncpy(hook, msg->data, NG_HOOKSIZ); - hook[NG_HOOKSIZ - 1] = '\0'; - LIST_FOREACH(vcc, &priv->vccs, link) - if (strcmp(NG_HOOK_NAME(vcc->hook), hook) == 0) - break; - if (vcc == NULL) { - error = ENOTCONN; - break; - } - error = (*priv->ifp->if_ioctl)(priv->ifp, - SIOCATMGETVCCS, (caddr_t)&vccs); - if (error) - break; - - for (i = 0; i < vccs->count; i++) - if (vccs->vccs[i].vpi == vcc->vpi && - vccs->vccs[i].vci == vcc->vci) - break; - if (i == vccs->count) { - error = ENOTCONN; - free(vccs, M_DEVBUF); - break; - } - - NG_MKRESPONSE(resp, msg, sizeof(vccs->vccs[0]), - M_NOWAIT); - if (resp == NULL) { - error = ENOMEM; - free(vccs, M_DEVBUF); - break; - } - - *(struct atmio_vcc *)resp->data = vccs->vccs[i]; - free(vccs, M_DEVBUF); - break; - } - - case NGM_ATM_GET_VCCID: - { - struct atmio_vcc *arg; - struct atmio_vcctable *vccs; - u_int i; - - if (priv->ifp->if_ioctl == NULL) { - error = ENXIO; - break; - } - if (msg->header.arglen != sizeof(*arg)) { - error = EINVAL; - break; - } - arg = (struct atmio_vcc *)msg->data; - - error = (*priv->ifp->if_ioctl)(priv->ifp, - SIOCATMGETVCCS, (caddr_t)&vccs); - if (error) - break; - - for (i = 0; i < vccs->count; i++) - if (vccs->vccs[i].vpi == arg->vpi && - vccs->vccs[i].vci == arg->vci) - break; - if (i == vccs->count) { - error = ENOTCONN; - free(vccs, M_DEVBUF); - break; - } - - NG_MKRESPONSE(resp, msg, sizeof(vccs->vccs[0]), - M_NOWAIT); - if (resp == NULL) { - error = ENOMEM; - free(vccs, M_DEVBUF); - break; - } - - *(struct atmio_vcc *)resp->data = vccs->vccs[i]; - free(vccs, M_DEVBUF); - break; - } - - case NGM_ATM_CPCS_INIT: - if (msg->header.arglen != - sizeof(struct ngm_atm_cpcs_init)) { - error = EINVAL; - break; - } - error = ng_atm_cpcs_init(node, - (struct ngm_atm_cpcs_init *)msg->data); - break; - - case NGM_ATM_CPCS_TERM: - if (msg->header.arglen != - sizeof(struct ngm_atm_cpcs_term)) { - error = EINVAL; - break; - } - error = ng_atm_cpcs_term(node, - (struct ngm_atm_cpcs_term *)msg->data); - break; - - case NGM_ATM_GET_STATS: - { - struct ngm_atm_stats *p; - - if (msg->header.arglen != 0) { - error = EINVAL; - break; - } - NG_MKRESPONSE(resp, msg, sizeof(*p), M_NOWAIT); - if (resp == NULL) { - error = ENOMEM; - break; - } - p = (struct ngm_atm_stats *)resp->data; - p->in_packets = priv->in_packets; - p->out_packets = priv->out_packets; - p->in_errors = priv->in_errors; - p->out_errors = priv->out_errors; - - break; - } - - default: - error = EINVAL; - break; - } - break; - - default: - error = EINVAL; - break; - } - - NG_RESPOND_MSG(error, node, item, resp); - NG_FREE_MSG(msg); - return (error); -} - -/************************************************************/ -/* - * HOOK MANAGEMENT - */ - -/* - * A new hook is create that will be connected to the node. - * Check, whether the name is one of the predefined ones. - * If not, create a new entry into the vcc list. - */ -static int -ng_atm_newhook(node_p node, hook_p hook, const char *name) -{ - struct priv *priv = NG_NODE_PRIVATE(node); - struct ngvcc *vcc; - - if (strcmp(name, "input") == 0) { - priv->input = hook; - NG_HOOK_SET_RCVDATA(hook, ng_atm_rcvdrop); - return (0); - } - if (strcmp(name, "output") == 0) { - priv->output = hook; - NG_HOOK_SET_RCVDATA(hook, ng_atm_rcvdrop); - return (0); - } - if (strcmp(name, "orphans") == 0) { - priv->orphans = hook; - NG_HOOK_SET_RCVDATA(hook, ng_atm_rcvdrop); - return (0); - } - - /* - * Allocate a new entry - */ - vcc = malloc(sizeof(*vcc), M_NETGRAPH, M_NOWAIT | M_ZERO); - if (vcc == NULL) - return (ENOMEM); - - vcc->hook = hook; - NG_HOOK_SET_PRIVATE(hook, vcc); - - LIST_INSERT_HEAD(&priv->vccs, vcc, link); - - if (strcmp(name, "manage") == 0) - priv->manage = hook; - - return (0); -} - -/* - * Connect. Set the peer to queuing. - */ -static int -ng_atm_connect(hook_p hook) -{ - if (NG_HOOK_PRIVATE(hook) != NULL) - NG_HOOK_FORCE_QUEUE(NG_HOOK_PEER(hook)); - - return (0); -} - -/* - * Disconnect a HOOK - */ -static int -ng_atm_disconnect(hook_p hook) -{ - struct priv *priv = NG_NODE_PRIVATE(NG_HOOK_NODE(hook)); - struct ngvcc *vcc = NG_HOOK_PRIVATE(hook); - - if (vcc == NULL) { - if (hook == priv->output) { - priv->output = NULL; - return (0); - } - if (hook == priv->input) { - priv->input = NULL; - return (0); - } - if (hook == priv->orphans) { - priv->orphans = NULL; - return (0); - } - log(LOG_ERR, "ng_atm: bad hook '%s'", NG_HOOK_NAME(hook)); - return (0); - } - - /* don't terminate if we are detaching from the interface */ - if ((vcc->flags & VCC_OPEN) && priv->ifp != NULL) - (void)cpcs_term(priv, vcc->vpi, vcc->vci); - - NG_HOOK_SET_PRIVATE(hook, NULL); - - LIST_REMOVE(vcc, link); - free(vcc, M_NETGRAPH); - - if (hook == priv->manage) - priv->manage = NULL; - - return (0); -} - -/************************************************************/ -/* - * NODE MANAGEMENT - */ - -/* - * ATM interface attached - create a node and name it like the interface. - */ -static void -ng_atm_attach(struct ifnet *ifp) -{ - node_p node; - struct priv *priv; - - KASSERT(IFP2NG(ifp) == 0, ("%s: node alreay exists?", __func__)); - - if (ng_make_node_common(&ng_atm_typestruct, &node) != 0) { - log(LOG_ERR, "%s: can't create node for %s\n", - __func__, ifp->if_xname); - return; - } - - priv = malloc(sizeof(*priv), M_NETGRAPH, M_NOWAIT | M_ZERO); - if (priv == NULL) { - log(LOG_ERR, "%s: can't allocate memory for %s\n", - __func__, ifp->if_xname); - NG_NODE_UNREF(node); - return; - } - NG_NODE_SET_PRIVATE(node, priv); - priv->ifp = ifp; - LIST_INIT(&priv->vccs); - IFP2NG_SET(ifp, node); - - if (ng_name_node(node, ifp->if_xname) != 0) { - log(LOG_WARNING, "%s: can't name node %s\n", - __func__, ifp->if_xname); - } -} - -/* - * ATM interface detached - destroy node. - */ -static void -ng_atm_detach(struct ifnet *ifp) -{ - const node_p node = IFP2NG(ifp); - struct priv *priv; - - if(node == NULL) - return; - - NG_NODE_REALLY_DIE(node); - - priv = NG_NODE_PRIVATE(node); - IFP2NG_SET(priv->ifp, NULL); - priv->ifp = NULL; - - ng_rmnode_self(node); -} - -/* - * Shutdown the node. This is called from the shutdown message processing. - */ -static int -ng_atm_shutdown(node_p node) -{ - struct priv *priv = NG_NODE_PRIVATE(node); - - if (node->nd_flags & NGF_REALLY_DIE) { - /* - * We are called from unloading the ATM driver. Really, - * really need to shutdown this node. The ifp was - * already handled in the detach routine. - */ - NG_NODE_SET_PRIVATE(node, NULL); - free(priv, M_NETGRAPH); - - NG_NODE_UNREF(node); - return (0); - } - -#ifdef NGATM_DEBUG - if (!allow_shutdown) - NG_NODE_REVIVE(node); /* we persist */ - else { - IFP2NG_SET(priv->ifp, NULL); - NG_NODE_SET_PRIVATE(node, NULL); - free(priv, M_NETGRAPH); - NG_NODE_UNREF(node); - } -#else - /* - * We are persistent - reinitialize. - */ - NG_NODE_REVIVE(node); -#endif - return (0); -} - -/* - * Nodes are constructed only via interface attaches. - */ -static int -ng_atm_constructor(node_p nodep) -{ - return (EINVAL); -} - -/************************************************************/ -/* - * INITIALISATION - */ -/* - * Loading and unloading of node type - * - * The assignments to the globals for the hooks should be ok without - * a special hook. The use pattern is generally: check that the pointer - * is not NULL, call the function. In the attach case this is no problem. - * In the detach case we can detach only when no ATM node exists. That - * means that there is no ATM interface anymore. So we are sure that - * we are not in the code path in if_atmsubr.c. To prevent someone - * from adding an interface after we have started to unload the node, we - * take the iflist lock so an if_attach will be blocked until we are done. - * XXX: perhaps the function pointers should be 'volatile' for this to work - * properly. - */ -static int -ng_atm_mod_event(module_t mod, int event, void *data) -{ - VNET_ITERATOR_DECL(vnet_iter); - struct ifnet *ifp; - int error = 0; - - switch (event) { - - case MOD_LOAD: - /* - * Register function hooks - */ - if (ng_atm_attach_p != NULL) { - error = EEXIST; - break; - } - IFNET_RLOCK(); - - ng_atm_attach_p = ng_atm_attach; - ng_atm_detach_p = ng_atm_detach; - ng_atm_output_p = ng_atm_output; - ng_atm_input_p = ng_atm_input; - ng_atm_input_orphan_p = ng_atm_input_orphans; - ng_atm_event_p = ng_atm_event; - - /* Create nodes for existing ATM interfaces */ - VNET_LIST_RLOCK(); - VNET_FOREACH(vnet_iter) { - CURVNET_SET_QUIET(vnet_iter); - TAILQ_FOREACH(ifp, &V_ifnet, if_link) { - if (ifp->if_type == IFT_ATM) - ng_atm_attach(ifp); - } - CURVNET_RESTORE(); - } - VNET_LIST_RUNLOCK(); - IFNET_RUNLOCK(); - break; - - case MOD_UNLOAD: - IFNET_RLOCK(); - - ng_atm_attach_p = NULL; - ng_atm_detach_p = NULL; - ng_atm_output_p = NULL; - ng_atm_input_p = NULL; - ng_atm_input_orphan_p = NULL; - ng_atm_event_p = NULL; - - VNET_LIST_RLOCK(); - VNET_FOREACH(vnet_iter) { - CURVNET_SET_QUIET(vnet_iter); - TAILQ_FOREACH(ifp, &V_ifnet, if_link) { - if (ifp->if_type == IFT_ATM) - ng_atm_detach(ifp); - } - CURVNET_RESTORE(); - } - VNET_LIST_RUNLOCK(); - IFNET_RUNLOCK(); - break; - - default: - error = EOPNOTSUPP; - break; - } - return (error); -} diff --git a/sys/netgraph/atm/ng_atm.h b/sys/netgraph/atm/ng_atm.h deleted file mode 100644 index 86313ad0c8f..00000000000 --- a/sys/netgraph/atm/ng_atm.h +++ /dev/null @@ -1,248 +0,0 @@ -/*- - * Copyright (c) 2001-2003 - * Fraunhofer Institute for Open Communication Systems (FhG Fokus). - * 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. - * - * Author: Harti Brandt - */ - -/* - * Netgraph module to connect NATM interfaces to netgraph. - * - * $FreeBSD: stable/11/sys/netgraph/atm/ng_atm.h 139823 2005-01-07 01:45:51Z imp $ - */ -#ifndef _NETGRAPH_ATM_NG_ATM_H_ -#define _NETGRAPH_ATM_NG_ATM_H_ - -#define NG_ATM_NODE_TYPE "atm" -#define NGM_ATM_COOKIE 960802260 - -/* Netgraph control messages */ -enum { - NGM_ATM_GET_IFNAME = 1, /* get the interface name */ - NGM_ATM_GET_CONFIG, /* get configuration */ - NGM_ATM_GET_VCCS, /* get a list of all active vccs */ - NGM_ATM_CPCS_INIT, /* start the channel */ - NGM_ATM_CPCS_TERM, /* stop the channel */ - NGM_ATM_GET_VCC, /* get VCC config */ - NGM_ATM_GET_VCCID, /* get VCC by VCI/VPI */ - NGM_ATM_GET_STATS, /* get global statistics */ - - /* messages from the node */ - NGM_ATM_CARRIER_CHANGE = 1000, /* UNUSED: carrier changed */ - NGM_ATM_VCC_CHANGE, /* permanent VCC changed */ - NGM_ATM_ACR_CHANGE, /* ABR ACR has changed */ - NGM_ATM_IF_CHANGE, /* interface state change */ -}; - -/* - * Hardware interface configuration - */ -struct ngm_atm_config { - uint32_t pcr; /* peak cell rate */ - uint32_t vpi_bits; /* number of active VPI bits */ - uint32_t vci_bits; /* number of active VCI bits */ - uint32_t max_vpcs; /* maximum number of VPCs */ - uint32_t max_vccs; /* maximum number of VCCs */ -}; -#define NGM_ATM_CONFIG_INFO \ - { \ - { "pcr", &ng_parse_uint32_type }, \ - { "vpi_bits", &ng_parse_uint32_type }, \ - { "vci_bits", &ng_parse_uint32_type }, \ - { "max_vpcs", &ng_parse_uint32_type }, \ - { "max_vccs", &ng_parse_uint32_type }, \ - { NULL } \ - } - -/* - * Information about an open VCC - * See net/if_atm.h. Keep in sync. - */ -#define NGM_ATM_TPARAM_INFO \ - { \ - { "pcr", &ng_parse_uint32_type }, \ - { "scr", &ng_parse_uint32_type }, \ - { "mbs", &ng_parse_uint32_type }, \ - { "mcr", &ng_parse_uint32_type }, \ - { "icr", &ng_parse_uint32_type }, \ - { "tbe", &ng_parse_uint32_type }, \ - { "nrm", &ng_parse_uint8_type }, \ - { "trm", &ng_parse_uint8_type }, \ - { "adtf", &ng_parse_uint16_type }, \ - { "rif", &ng_parse_uint8_type }, \ - { "rdf", &ng_parse_uint8_type }, \ - { "cdf", &ng_parse_uint8_type }, \ - { NULL } \ - } - -#define NGM_ATM_VCC_INFO \ - { \ - { "flags", &ng_parse_hint16_type }, \ - { "vpi", &ng_parse_uint16_type }, \ - { "vci", &ng_parse_uint16_type }, \ - { "rmtu", &ng_parse_uint16_type }, \ - { "tmtu", &ng_parse_uint16_type }, \ - { "aal", &ng_parse_uint8_type }, \ - { "traffic", &ng_parse_uint8_type }, \ - { "tparam", &ng_atm_tparam_type }, \ - { NULL } \ - } - -#define NGM_ATM_VCCARRAY_INFO \ - { \ - &ng_atm_vcc_type, \ - ng_atm_vccarray_getlen, \ - NULL \ - } - -#define NGM_ATM_VCCTABLE_INFO \ - { \ - { "count", &ng_parse_uint32_type }, \ - { "vccs", &ng_atm_vccarray_type }, \ - { NULL } \ - } - -/* - * Structure to open a VCC. - */ -struct ngm_atm_cpcs_init { - char name[NG_HOOKSIZ]; - uint32_t flags; /* flags. (if_atm.h) */ - uint16_t vci; /* VCI to open */ - uint16_t vpi; /* VPI to open */ - uint16_t rmtu; /* Receive maximum CPCS size */ - uint16_t tmtu; /* Transmit maximum CPCS size */ - uint8_t aal; /* AAL type (if_atm.h) */ - uint8_t traffic; /* traffic type (if_atm.h) */ - uint32_t pcr; /* Peak cell rate */ - uint32_t scr; /* VBR: Sustainable cell rate */ - uint32_t mbs; /* VBR: Maximum burst rate */ - uint32_t mcr; /* UBR+: Minimum cell rate */ - uint32_t icr; /* ABR: Initial cell rate */ - uint32_t tbe; /* ABR: Transmit buffer exposure */ - uint8_t nrm; /* ABR: Nrm */ - uint8_t trm; /* ABR: Trm */ - uint16_t adtf; /* ABR: ADTF */ - uint8_t rif; /* ABR: RIF */ - uint8_t rdf; /* ABR: RDF */ - uint8_t cdf; /* ABR: CDF */ -}; - -#define NGM_ATM_CPCS_INIT_INFO \ - { \ - { "name", &ng_parse_hookbuf_type }, \ - { "flags", &ng_parse_hint32_type }, \ - { "vci", &ng_parse_uint16_type }, \ - { "vpi", &ng_parse_uint16_type }, \ - { "rmtu", &ng_parse_uint16_type }, \ - { "tmtu", &ng_parse_uint16_type }, \ - { "aal", &ng_parse_uint8_type }, \ - { "traffic", &ng_parse_uint8_type }, \ - { "pcr", &ng_parse_uint32_type }, \ - { "scr", &ng_parse_uint32_type }, \ - { "mbs", &ng_parse_uint32_type }, \ - { "mcr", &ng_parse_uint32_type }, \ - { "icr", &ng_parse_uint32_type }, \ - { "tbe", &ng_parse_uint32_type }, \ - { "nrm", &ng_parse_uint8_type }, \ - { "trm", &ng_parse_uint8_type }, \ - { "adtf", &ng_parse_uint16_type }, \ - { "rif", &ng_parse_uint8_type }, \ - { "rdf", &ng_parse_uint8_type }, \ - { "cdf", &ng_parse_uint8_type }, \ - { NULL } \ - } - -/* - * Structure to close a VCI without disconnecting the hook - */ -struct ngm_atm_cpcs_term { - char name[NG_HOOKSIZ]; -}; -#define NGM_ATM_CPCS_TERM_INFO \ - { \ - { "name", &ng_parse_hookbuf_type }, \ - { NULL } \ - } - -struct ngm_atm_stats { - uint64_t in_packets; - uint64_t in_errors; - uint64_t out_packets; - uint64_t out_errors; -}; -#define NGM_ATM_STATS_INFO \ - { \ - { "in_packets", &ng_parse_uint64_type }, \ - { "in_errors", &ng_parse_uint64_type }, \ - { "out_packets", &ng_parse_uint64_type }, \ - { "out_errors", &ng_parse_uint64_type }, \ - { NULL } \ - } - -struct ngm_atm_if_change { - uint32_t node; - uint8_t carrier; - uint8_t running; -}; -#define NGM_ATM_IF_CHANGE_INFO \ - { \ - { "node", &ng_parse_hint32_type }, \ - { "carrier", &ng_parse_uint8_type }, \ - { "running", &ng_parse_uint8_type }, \ - { NULL } \ - } - -struct ngm_atm_vcc_change { - uint32_t node; - uint16_t vci; - uint8_t vpi; - uint8_t state; -}; -#define NGM_ATM_VCC_CHANGE_INFO \ - { \ - { "node", &ng_parse_hint32_type }, \ - { "vci", &ng_parse_uint16_type }, \ - { "vpi", &ng_parse_uint8_type }, \ - { "state", &ng_parse_uint8_type }, \ - { NULL } \ - } - -struct ngm_atm_acr_change { - uint32_t node; - uint16_t vci; - uint8_t vpi; - uint32_t acr; -}; -#define NGM_ATM_ACR_CHANGE_INFO \ - { \ - { "node", &ng_parse_hint32_type }, \ - { "vci", &ng_parse_uint16_type }, \ - { "vpi", &ng_parse_uint8_type }, \ - { "acr", &ng_parse_uint32_type }, \ - { NULL } \ - } - -#endif /* _NETGRAPH_ATM_NG_ATM_H */ diff --git a/sys/netgraph/ng_fec.c b/sys/netgraph/ng_fec.c deleted file mode 100644 index c56bd87bb93..00000000000 --- a/sys/netgraph/ng_fec.c +++ /dev/null @@ -1,1362 +0,0 @@ -/* - * ng_fec.c - */ - -/*- - * Copyright (c) 2001 Berkeley Software Design, Inc. - * Copyright (c) 2000, 2001 - * 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: stable/10/sys/netgraph/ng_fec.c 249925 2013-04-26 12:50:32Z glebius $ - */ -/*- - * Copyright (c) 1996-1999 Whistle Communications, Inc. - * All rights reserved. - * - * Subject to the following obligations and disclaimer of warranty, use and - * redistribution of this software, in source or object code forms, with or - * without modifications are expressly permitted by Whistle Communications; - * provided, however, that: - * 1. Any and all reproductions of the source or object code must include the - * copyright notice above and the following disclaimer of warranties; and - * 2. No rights are granted, in any manner or form, to use Whistle - * Communications, Inc. trademarks, including the mark "WHISTLE - * COMMUNICATIONS" on advertising, endorsements, or otherwise except as - * such appears in the above copyright notice or in the software. - * - * THIS SOFTWARE IS BEING PROVIDED BY WHISTLE COMMUNICATIONS "AS IS", AND - * TO THE MAXIMUM EXTENT PERMITTED BY LAW, WHISTLE COMMUNICATIONS MAKES NO - * REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THIS SOFTWARE, - * INCLUDING WITHOUT LIMITATION, ANY AND ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. - * WHISTLE COMMUNICATIONS DOES NOT WARRANT, GUARANTEE, OR MAKE ANY - * REPRESENTATIONS REGARDING THE USE OF, OR THE RESULTS OF THE USE OF THIS - * SOFTWARE IN TERMS OF ITS CORRECTNESS, ACCURACY, RELIABILITY OR OTHERWISE. - * IN NO EVENT SHALL WHISTLE COMMUNICATIONS BE LIABLE FOR ANY DAMAGES - * RESULTING FROM OR ARISING OUT OF ANY USE OF THIS SOFTWARE, INCLUDING - * WITHOUT LIMITATION, ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, - * PUNITIVE, OR CONSEQUENTIAL DAMAGES, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES, LOSS OF USE, DATA OR PROFITS, HOWEVER CAUSED AND UNDER 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 WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY - * OF SUCH DAMAGE. - * - * Author: Archie Cobbs - * - * $Whistle: ng_fec.c,v 1.33 1999/11/01 09:24:51 julian Exp $ - */ - -/* - * This module implements ethernet channel bonding using the Cisco - * Fast EtherChannel mechanism. Two or four ports may be combined - * into a single aggregate interface. - * - * Interfaces are named fec0, fec1, etc. New nodes take the - * first available interface name. - * - * This node also includes Berkeley packet filter support. - * - * Note that this node doesn't need to connect to any other - * netgraph nodes in order to do its work. - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -#include "opt_inet.h" -#include "opt_inet6.h" - -#include -#ifdef INET -#include -#include -#endif - -#ifdef INET6 -#include -#endif - -#include -#include -#include -#include - -/* - * We need a way to stash a pointer to our netgraph node in the - * ifnet structure so that receive handling works. As far as I can - * tell, although there is an AF_NETGRAPH address family, it's only - * used to identify sockaddr_ng structures: there is no netgraph address - * family domain. This means the AF_NETGRAPH entry in ifp->if_afdata - * should be unused, so we can use to hold our node context. - */ -#define IFP2NG(ifp) ((ifp)->if_afdata[AF_NETGRAPH]) - -/* - * Current fast etherchannel implementations use either 2 or 4 - * ports, so for now we limit the maximum bundle size to 4 interfaces. - */ -#define FEC_BUNDLESIZ 4 - -struct ng_fec_portlist { - struct ifnet *fec_if; - void (*fec_if_input) (struct ifnet *, - struct mbuf *); - int fec_idx; - int fec_ifstat; - struct ether_addr fec_mac; - SLIST_HEAD(__mclhd, ng_fec_mc) fec_mc_head; - TAILQ_ENTRY(ng_fec_portlist) fec_list; -}; - -struct ng_fec_mc { - struct ifmultiaddr *mc_ifma; - SLIST_ENTRY(ng_fec_mc) mc_entries; -}; - -struct ng_fec_bundle { - TAILQ_HEAD(,ng_fec_portlist) ng_fec_ports; - int fec_ifcnt; - int fec_btype; - int (*fec_if_output) (struct ifnet *, - struct mbuf *, - const struct sockaddr *, - struct route *); -}; - -#define FEC_BTYPE_MAC 0x01 -#define FEC_BTYPE_INET 0x02 -#define FEC_BTYPE_INET6 0x03 - -/* Node private data */ -struct ng_fec_private { - struct ifnet *ifp; - struct ifmedia ifmedia; - int if_flags; - int if_error; /* XXX */ - int unit; /* Interface unit number */ - node_p node; /* Our netgraph node */ - struct ng_fec_bundle fec_bundle;/* Aggregate bundle */ - struct callout_handle fec_ch; /* callout handle for ticker */ -}; -typedef struct ng_fec_private *priv_p; - -/* Interface methods */ -static void ng_fec_input(struct ifnet *, struct mbuf *); -static void ng_fec_start(struct ifnet *ifp); -static int ng_fec_choose_port(struct ng_fec_bundle *b, - struct mbuf *m, struct ifnet **ifp); -static int ng_fec_setport(struct ifnet *ifp, u_long cmd, caddr_t data); -static void ng_fec_init(void *arg); -static void ng_fec_stop(struct ifnet *ifp); -static int ng_fec_ifmedia_upd(struct ifnet *ifp); -static void ng_fec_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr); -static int ng_fec_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data); -static int ng_fec_output(struct ifnet *ifp, struct mbuf *m0, - const struct sockaddr *dst, struct route *ro); -static void ng_fec_tick(void *arg); -static int ng_fec_addport(struct ng_fec_private *priv, char *iface); -static int ng_fec_delport(struct ng_fec_private *priv, char *iface); -static int ng_fec_ether_cmdmulti(struct ifnet *trifp, struct ng_fec_portlist *p, int set); - -#ifdef DEBUG -static void ng_fec_print_ioctl(struct ifnet *ifp, int cmd, caddr_t data); -#endif - -/* Netgraph methods */ -static int ng_fec_mod_event(module_t, int, void *); -static ng_constructor_t ng_fec_constructor; -static ng_rcvmsg_t ng_fec_rcvmsg; -static ng_shutdown_t ng_fec_shutdown; - -/* List of commands and how to convert arguments to/from ASCII */ -static const struct ng_cmdlist ng_fec_cmds[] = { - { - NGM_FEC_COOKIE, - NGM_FEC_ADD_IFACE, - "add_iface", - &ng_parse_string_type, - NULL, - }, - { - NGM_FEC_COOKIE, - NGM_FEC_DEL_IFACE, - "del_iface", - &ng_parse_string_type, - NULL, - }, - { - NGM_FEC_COOKIE, - NGM_FEC_SET_MODE_MAC, - "set_mode_mac", - NULL, - NULL, - }, - { - NGM_FEC_COOKIE, - NGM_FEC_SET_MODE_INET, - "set_mode_inet", - NULL, - NULL, - }, - { 0 } -}; - -/* Node type descriptor */ -static struct ng_type typestruct = { - .version = NG_ABI_VERSION, - .name = NG_FEC_NODE_TYPE, - .mod_event = ng_fec_mod_event, - .constructor = ng_fec_constructor, - .rcvmsg = ng_fec_rcvmsg, - .shutdown = ng_fec_shutdown, - .cmdlist = ng_fec_cmds, -}; -NETGRAPH_INIT(fec, &typestruct); - -/* We keep a bitmap indicating which unit numbers are free. - One means the unit number is free, zero means it's taken. */ -static int *ng_fec_units = NULL; -static int ng_fec_units_len = 0; -static int ng_units_in_use = 0; - -#define UNITS_BITSPERWORD (sizeof(*ng_fec_units) * NBBY) - -static struct mtx ng_fec_mtx; - -/* - * Find the first free unit number for a new interface. - * Increase the size of the unit bitmap as necessary. - */ -static __inline int -ng_fec_get_unit(int *unit) -{ - int index, bit; - - mtx_lock(&ng_fec_mtx); - for (index = 0; index < ng_fec_units_len - && ng_fec_units[index] == 0; index++); - if (index == ng_fec_units_len) { /* extend array */ - int i, *newarray, newlen; - - newlen = (2 * ng_fec_units_len) + 4; - newarray = malloc(newlen * sizeof(*ng_fec_units), - M_NETGRAPH, M_NOWAIT); - if (newarray == NULL) { - mtx_unlock(&ng_fec_mtx); - return (ENOMEM); - } - bcopy(ng_fec_units, newarray, - ng_fec_units_len * sizeof(*ng_fec_units)); - for (i = ng_fec_units_len; i < newlen; i++) - newarray[i] = ~0; - if (ng_fec_units != NULL) - free(ng_fec_units, M_NETGRAPH); - ng_fec_units = newarray; - ng_fec_units_len = newlen; - } - bit = ffs(ng_fec_units[index]) - 1; - KASSERT(bit >= 0 && bit <= UNITS_BITSPERWORD - 1, - ("%s: word=%d bit=%d", __func__, ng_fec_units[index], bit)); - ng_fec_units[index] &= ~(1 << bit); - *unit = (index * UNITS_BITSPERWORD) + bit; - ng_units_in_use++; - mtx_unlock(&ng_fec_mtx); - return (0); -} - -/* - * Free a no longer needed unit number. - */ -static __inline void -ng_fec_free_unit(int unit) -{ - int index, bit; - - index = unit / UNITS_BITSPERWORD; - bit = unit % UNITS_BITSPERWORD; - mtx_lock(&ng_fec_mtx); - KASSERT(index < ng_fec_units_len, - ("%s: unit=%d len=%d", __func__, unit, ng_fec_units_len)); - KASSERT((ng_fec_units[index] & (1 << bit)) == 0, - ("%s: unit=%d is free", __func__, unit)); - ng_fec_units[index] |= (1 << bit); - /* - * XXX We could think about reducing the size of ng_fec_units[] - * XXX here if the last portion is all ones - * XXX At least free it if no more units - * Needed if we are to eventually be able to unload. - */ - ng_units_in_use--; - if (ng_units_in_use == 0) { /* XXX make SMP safe */ - free(ng_fec_units, M_NETGRAPH); - ng_fec_units_len = 0; - ng_fec_units = NULL; - } - mtx_unlock(&ng_fec_mtx); -} - -/************************************************************************ - INTERFACE STUFF - ************************************************************************/ - -static int -ng_fec_addport(struct ng_fec_private *priv, char *iface) -{ - struct ng_fec_bundle *b; - struct ifnet *ifp, *bifp; - struct ng_fec_portlist *p, *new; - - if (priv == NULL || iface == NULL) - return(EINVAL); - - b = &priv->fec_bundle; - ifp = priv->ifp; - - /* Only allow reconfiguration if not running. */ - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - printf("fec%d: can't add new iface; bundle is running\n", - priv->unit); - return (EINVAL); - } - - /* Find the interface */ - bifp = ifunit(iface); - if (bifp == NULL) { - printf("fec%d: tried to add iface %s, which " - "doesn't seem to exist\n", priv->unit, iface); - return(ENOENT); - } - - /* See if we have room in the bundle */ - if (b->fec_ifcnt == FEC_BUNDLESIZ) { - printf("fec%d: can't add new iface; bundle is full\n", - priv->unit); - return(ENOSPC); - } - - /* See if the interface is already in the bundle */ - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - if (p->fec_if == bifp) { - printf("fec%d: iface %s is already in this " - "bundle\n", priv->unit, iface); - return(EINVAL); - } - } - - /* - * All interfaces must use the same output vector. Once the - * user attaches an interface of one type, make all subsequent - * interfaces have the same output vector. - */ - if (b->fec_if_output != NULL) { - if (b->fec_if_output != bifp->if_output) { - printf("fec%d: iface %s is not the same type " - "as the other interface(s) already in " - "the bundle\n", priv->unit, iface); - return(EINVAL); - } - } - - /* Allocate new list entry. */ - new = malloc(sizeof(struct ng_fec_portlist), M_NETGRAPH, M_NOWAIT); - if (new == NULL) - return(ENOMEM); - - IF_AFDATA_LOCK(bifp); - IFP2NG(bifp) = priv->node; - IF_AFDATA_UNLOCK(bifp); - - /* - * If this is the first interface added to the bundle, - * use its MAC address for the virtual interface (and, - * by extension, all the other ports in the bundle). - */ - if (b->fec_ifcnt == 0) - if_setlladdr(ifp, IF_LLADDR(bifp), ETHER_ADDR_LEN); - - b->fec_btype = FEC_BTYPE_MAC; - new->fec_idx = b->fec_ifcnt; - b->fec_ifcnt++; - - /* Initialise the list of multicast addresses that we own. */ - SLIST_INIT(&new->fec_mc_head); - - /* Save the real MAC address. */ - bcopy(IF_LLADDR(bifp), - (char *)&new->fec_mac, ETHER_ADDR_LEN); - - /* Set up phony MAC address. */ - if_setlladdr(bifp, IF_LLADDR(ifp), ETHER_ADDR_LEN); - EVENTHANDLER_INVOKE(iflladdr_event, bifp); - - /* Save original input vector */ - new->fec_if_input = bifp->if_input; - - /* Override it with our own */ - bifp->if_input = ng_fec_input; - - /* Save output vector too. */ - if (b->fec_if_output == NULL) - b->fec_if_output = bifp->if_output; - - /* Add to the queue */ - new->fec_if = bifp; - new->fec_ifstat = -1; - TAILQ_INSERT_TAIL(&b->ng_fec_ports, new, fec_list); - - /* Add multicast addresses to this port. */ - ng_fec_ether_cmdmulti(ifp, new, 1); - - return(0); -} - -static int -ng_fec_delport(struct ng_fec_private *priv, char *iface) -{ - struct ng_fec_bundle *b; - struct ifnet *ifp, *bifp; - struct ng_fec_portlist *p; - - if (priv == NULL || iface == NULL) - return(EINVAL); - - b = &priv->fec_bundle; - ifp = priv->ifp; - - /* Only allow reconfiguration if not running. */ - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - printf("fec%d: can't remove iface; bundle is running\n", - priv->unit); - return (EINVAL); - } - - /* Find the interface */ - bifp = ifunit(iface); - if (bifp == NULL) { - printf("fec%d: tried to remove iface %s, which " - "doesn't seem to exist\n", priv->unit, iface); - return(ENOENT); - } - - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - if (p->fec_if == bifp) - break; - } - - if (p == NULL) { - printf("fec%d: tried to remove iface %s which " - "is not in our bundle\n", priv->unit, iface); - return(EINVAL); - } - - /* Stop interface */ - bifp->if_flags &= ~IFF_UP; - (*bifp->if_ioctl)(bifp, SIOCSIFFLAGS, NULL); - - /* Restore MAC address. */ - if_setlladdr(bifp, (u_char *)&p->fec_mac, ETHER_ADDR_LEN); - - /* Restore input vector */ - bifp->if_input = p->fec_if_input; - - /* Remove our node context pointer. */ - IF_AFDATA_LOCK(bifp); - IFP2NG(bifp) = NULL; - IF_AFDATA_UNLOCK(bifp); - - /* Delete port */ - TAILQ_REMOVE(&b->ng_fec_ports, p, fec_list); - free(p, M_NETGRAPH); - b->fec_ifcnt--; - - if (b->fec_ifcnt == 0) - b->fec_if_output = NULL; - - return(0); -} - -static int -ng_fec_ether_cmdmulti(struct ifnet *trifp, struct ng_fec_portlist *p, int set) -{ - struct ifnet *ifp = p->fec_if; - struct ng_fec_mc *mc; - struct ifmultiaddr *ifma, *rifma = NULL; - struct sockaddr_dl sdl; - int error; - - bzero((char *)&sdl, sizeof(sdl)); - sdl.sdl_len = sizeof(sdl); - sdl.sdl_family = AF_LINK; - sdl.sdl_type = IFT_ETHER; - sdl.sdl_alen = ETHER_ADDR_LEN; - sdl.sdl_index = ifp->if_index; - - if (set) { - TAILQ_FOREACH(ifma, &trifp->if_multiaddrs, ifma_link) { - if (ifma->ifma_addr->sa_family != AF_LINK) - continue; - bcopy(LLADDR((struct sockaddr_dl *)ifma->ifma_addr), - LLADDR(&sdl), ETHER_ADDR_LEN); - - error = if_addmulti(ifp, (struct sockaddr *)&sdl, &rifma); - if (error) - return (error); - mc = malloc(sizeof(struct ng_fec_mc), M_DEVBUF, M_NOWAIT); - if (mc == NULL) - return (ENOMEM); - mc->mc_ifma = rifma; - SLIST_INSERT_HEAD(&p->fec_mc_head, mc, mc_entries); - } - } else { - while ((mc = SLIST_FIRST(&p->fec_mc_head)) != NULL) { - SLIST_REMOVE(&p->fec_mc_head, mc, ng_fec_mc, mc_entries); - if_delmulti_ifma(mc->mc_ifma); - free(mc, M_DEVBUF); - } - } - return (0); -} - -static int -ng_fec_ether_setmulti(struct ifnet *ifp) -{ - struct ng_fec_private *priv; - struct ng_fec_bundle *b; - struct ng_fec_portlist *p; - - priv = ifp->if_softc; - b = &priv->fec_bundle; - - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - /* First, remove any existing filter entries. */ - ng_fec_ether_cmdmulti(ifp, p, 0); - /* copy all addresses from the fec interface to the port */ - ng_fec_ether_cmdmulti(ifp, p, 1); - } - return (0); -} - -/* - * Pass an ioctl command down to all the underyling interfaces in a - * bundle. Used for setting flags. - */ - -static int -ng_fec_setport(struct ifnet *ifp, u_long command, caddr_t data) -{ - struct ng_fec_private *priv; - struct ng_fec_bundle *b; - struct ifnet *oifp; - struct ng_fec_portlist *p; - - priv = ifp->if_softc; - b = &priv->fec_bundle; - - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - oifp = p->fec_if; - if (oifp != NULL) - (*oifp->if_ioctl)(oifp, command, data); - } - - return(0); -} - -static void -ng_fec_init(void *arg) -{ - struct ng_fec_private *priv; - struct ng_fec_bundle *b; - struct ifnet *ifp, *bifp; - struct ng_fec_portlist *p; - - priv = arg; - ifp = priv->ifp; - b = &priv->fec_bundle; - - if (b->fec_ifcnt != 2 && b->fec_ifcnt != FEC_BUNDLESIZ) { - printf("fec%d: invalid bundle " - "size: %d\n", priv->unit, - b->fec_ifcnt); - return; - } - - ng_fec_stop(ifp); - - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - bifp = p->fec_if; - bifp->if_flags |= IFF_UP; - (*bifp->if_ioctl)(bifp, SIOCSIFFLAGS, NULL); - /* mark iface as up and let the monitor check it */ - p->fec_ifstat = -1; - } - - ifp->if_drv_flags &= ~(IFF_DRV_OACTIVE); - ifp->if_drv_flags |= IFF_DRV_RUNNING; - - priv->fec_ch = timeout(ng_fec_tick, priv, hz); - - return; -} - -static void -ng_fec_stop(struct ifnet *ifp) -{ - struct ng_fec_private *priv; - struct ng_fec_bundle *b; - struct ifnet *bifp; - struct ng_fec_portlist *p; - - priv = ifp->if_softc; - b = &priv->fec_bundle; - - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - bifp = p->fec_if; - bifp->if_flags &= ~IFF_UP; - (*bifp->if_ioctl)(bifp, SIOCSIFFLAGS, NULL); - } - - untimeout(ng_fec_tick, priv, priv->fec_ch); - - ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); - - return; -} - -static void -ng_fec_tick(void *arg) -{ - struct ng_fec_private *priv; - struct ng_fec_bundle *b; - struct ifmediareq ifmr; - struct ifnet *ifp; - struct ng_fec_portlist *p; - int error = 0; - - priv = arg; - b = &priv->fec_bundle; - - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - bzero((char *)&ifmr, sizeof(ifmr)); - ifp = p->fec_if; - error = (*ifp->if_ioctl)(ifp, SIOCGIFMEDIA, (caddr_t)&ifmr); - if (error) { - printf("fec%d: failed to check status " - "of link %s\n", priv->unit, ifp->if_xname); - continue; - } - - if (ifmr.ifm_status & IFM_AVALID) { - if (ifmr.ifm_status & IFM_ACTIVE) { - if (p->fec_ifstat == -1 || - p->fec_ifstat == 0) { - p->fec_ifstat = 1; - printf("fec%d: port %s in bundle " - "is up\n", priv->unit, - ifp->if_xname); - } - } else { - if (p->fec_ifstat == -1 || - p->fec_ifstat == 1) { - p->fec_ifstat = 0; - printf("fec%d: port %s in bundle " - "is down\n", priv->unit, - ifp->if_xname); - } - } - } - } - - ifp = priv->ifp; - if (ifp->if_drv_flags & IFF_DRV_RUNNING) - priv->fec_ch = timeout(ng_fec_tick, priv, hz); - - return; -} - -static int -ng_fec_ifmedia_upd(struct ifnet *ifp) -{ - return(0); -} - -static void ng_fec_ifmedia_sts(struct ifnet *ifp, - struct ifmediareq *ifmr) -{ - struct ng_fec_private *priv; - struct ng_fec_bundle *b; - struct ng_fec_portlist *p; - - priv = ifp->if_softc; - b = &priv->fec_bundle; - - ifmr->ifm_status = IFM_AVALID; - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - if (p->fec_ifstat == 1) { - ifmr->ifm_status |= IFM_ACTIVE; - break; - } - } - - return; -} - -/* - * Process an ioctl for the virtual interface - */ -static int -ng_fec_ioctl(struct ifnet *ifp, u_long command, caddr_t data) -{ - struct ifreq *const ifr = (struct ifreq *) data; - int error = 0; - struct ng_fec_private *priv; - struct ng_fec_bundle *b; - - priv = ifp->if_softc; - b = &priv->fec_bundle; - -#ifdef DEBUG - ng_fec_print_ioctl(ifp, command, data); -#endif - switch (command) { - - /* These two are mostly handled at a higher layer */ - case SIOCSIFADDR: - case SIOCGIFADDR: - error = ether_ioctl(ifp, command, data); - break; - - case SIOCSIFMTU: - if (ifr->ifr_mtu >= NG_FEC_MTU_MIN && - ifr->ifr_mtu <= NG_FEC_MTU_MAX) { - struct ng_fec_portlist *p; - struct ifnet *bifp; - - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - bifp = p->fec_if; - error = (*bifp->if_ioctl)(bifp, SIOCSIFMTU, - data); - if (error != 0) - break; - } - if (error == 0) - ifp->if_mtu = ifr->ifr_mtu; - } else - error = EINVAL; - break; - - /* Set flags */ - case SIOCSIFFLAGS: - /* - * If the interface is marked up and stopped, then start it. - * If it is marked down and running, then stop it. - */ - if (ifr->ifr_flags & IFF_UP) { - if (!(ifp->if_drv_flags & IFF_DRV_RUNNING)) { - /* Sanity. */ - if (b->fec_ifcnt != 2 && - b->fec_ifcnt != FEC_BUNDLESIZ) { - printf("fec%d: invalid bundle " - "size: %d\n", priv->unit, - b->fec_ifcnt); - error = EINVAL; - break; - } - ng_fec_init(priv); - } - /* - * Bubble down changes in promisc mode to - * underlying interfaces. - */ - if ((ifp->if_flags & IFF_PROMISC) != - (priv->if_flags & IFF_PROMISC)) { - ng_fec_setport(ifp, command, data); - priv->if_flags = ifp->if_flags; - } - } else { - if (ifp->if_drv_flags & IFF_DRV_RUNNING) - ng_fec_stop(ifp); - } - break; - - case SIOCADDMULTI: - case SIOCDELMULTI: - ng_fec_ether_setmulti(ifp); - error = 0; - break; - case SIOCGIFMEDIA: - case SIOCSIFMEDIA: - error = ifmedia_ioctl(ifp, ifr, &priv->ifmedia, command); - break; - /* Stuff that's not supported */ - case SIOCSIFPHYS: - error = EOPNOTSUPP; - break; - - default: - error = EINVAL; - break; - } - return (error); -} - -/* - * This routine spies on mbufs received by underlying network device - * drivers. When we add an interface to our bundle, we override its - * if_input routine with a pointer to ng_fec_input(). This means we - * get to look at all the device's packets before sending them to the - * real ether_input() for processing by the stack. Once we verify the - * packet comes from an interface that's been aggregated into - * our bundle, we fix up the rcvif pointer and increment our - * packet counters so that it looks like the frames are actually - * coming from us. - */ -static void -ng_fec_input(struct ifnet *ifp, struct mbuf *m0) -{ - struct ng_node *node; - struct ng_fec_private *priv; - struct ng_fec_bundle *b; - struct ifnet *bifp; - struct ng_fec_portlist *p; - - /* Sanity check */ - if (ifp == NULL || m0 == NULL) - return; - - node = IFP2NG(ifp); - - /* Sanity check part II */ - if (node == NULL) - return; - - priv = NG_NODE_PRIVATE(node); - b = &priv->fec_bundle; - bifp = priv->ifp; - - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - if (p->fec_if == m0->m_pkthdr.rcvif) - break; - } - - /* Wasn't meant for us; leave this frame alone. */ - if (p == NULL) - return; - - /* - * Check for a BPF tap on the underlying interface. This - * is mainly a debugging aid: it allows tcpdump-ing of an - * individual interface in a bundle to work, which it - * otherwise would not. BPF tapping of our own aggregate - * interface will occur once we call ether_input(). - */ - BPF_MTAP(m0->m_pkthdr.rcvif, m0); - - /* Convince the system that this is our frame. */ - m0->m_pkthdr.rcvif = bifp; - - /* - * Count bytes on an individual interface in a bundle. - * The bytes will also be added to the aggregate interface - * once we call ether_input(). - */ - ifp->if_ibytes += m0->m_pkthdr.len; - - bifp->if_ipackets++; - (*bifp->if_input)(bifp, m0); - - return; -} - -/* - * Take a quick peek at the packet and see if it's ok for us to use - * the inet or inet6 hash methods on it, if they're enabled. We do - * this by setting flags in the mbuf header. Once we've made up our - * mind what to do, we pass the frame to output vector for further - * processing. - */ - -static int -ng_fec_output(struct ifnet *ifp, struct mbuf *m, - const struct sockaddr *dst, struct route *ro) -{ - const priv_p priv = (priv_p) ifp->if_softc; - struct ng_fec_bundle *b; - int error; - - /* Check interface flags */ - if (!((ifp->if_flags & IFF_UP) && - (ifp->if_drv_flags & IFF_DRV_RUNNING))) { - m_freem(m); - return (ENETDOWN); - } - - b = &priv->fec_bundle; - - switch (b->fec_btype) { - case FEC_BTYPE_MAC: - m->m_flags |= M_FEC_MAC; - break; -#ifdef INET - case FEC_BTYPE_INET: - /* - * We can't use the INET address port selection - * scheme if this isn't an INET packet. - */ - if (dst->sa_family == AF_INET) - m->m_flags |= M_FEC_INET; -#ifdef INET6 - else if (dst->sa_family == AF_INET6) - m->m_flags |= M_FEC_INET6; -#endif - else { -#ifdef DEBUG - if_printf(ifp, "can't do inet aggregation of non " - "inet packet\n"); -#endif - m->m_flags |= M_FEC_MAC; - } - break; -#endif - default: - if_printf(ifp, "bogus hash type: %d\n", - b->fec_btype); - m_freem(m); - return(EINVAL); - break; - } - - /* - * Pass the frame to the output vector for all the protocol - * handling. This will put the ethernet header on the packet - * for us. - */ - priv->if_error = 0; - error = (*b->fec_if_output)(ifp, m, dst, ro); - if (priv->if_error && !error) - error = priv->if_error; - - return(error); -} - -/* - * Apply a hash to the source and destination addresses in the packet - * in order to select an interface. Also check link status and handle - * dead links accordingly. - */ - -static int -ng_fec_choose_port(struct ng_fec_bundle *b, - struct mbuf *m, struct ifnet **ifp) -{ - struct ether_header *eh; - struct mbuf *m0; -#ifdef INET - struct ip *ip; -#ifdef INET6 - struct ip6_hdr *ip6; -#endif -#endif - - struct ng_fec_portlist *p; - int port = 0, mask; - - /* - * If there are only two ports, mask off all but the - * last bit for XORing. If there are 4, mask off all - * but the last 2 bits. - */ - mask = b->fec_ifcnt == 2 ? 0x1 : 0x3; - eh = mtod(m, struct ether_header *); -#ifdef INET - ip = (struct ip *)(mtod(m, char *) + - sizeof(struct ether_header)); -#ifdef INET6 - ip6 = (struct ip6_hdr *)(mtod(m, char *) + - sizeof(struct ether_header)); -#endif -#endif - - /* - * The fg_fec_output() routine is supposed to leave a - * flag for us in the mbuf that tells us what hash to - * use, but sometimes a new mbuf is prepended to the - * chain, so we have to search every mbuf in the chain - * to find the flags. - */ - m0 = m; - while (m0) { - if (m0->m_flags & (M_FEC_MAC|M_FEC_INET|M_FEC_INET6)) - break; - m0 = m0->m_next; - } - if (m0 == NULL) - return(EINVAL); - - switch (m0->m_flags & (M_FEC_MAC|M_FEC_INET|M_FEC_INET6)) { - case M_FEC_MAC: - port = (eh->ether_dhost[5] ^ - eh->ether_shost[5]) & mask; - break; -#ifdef INET - case M_FEC_INET: - port = (ntohl(ip->ip_dst.s_addr) ^ - ntohl(ip->ip_src.s_addr)) & mask; - break; -#ifdef INET6 - case M_FEC_INET6: - port = (ip6->ip6_dst.s6_addr[15] ^ - ip6->ip6_dst.s6_addr[15]) & mask; - break; -#endif -#endif - default: - return(EINVAL); - break; - } - - TAILQ_FOREACH(p, &b->ng_fec_ports, fec_list) { - if (port == p->fec_idx) - break; - } - - /* - * Now that we've chosen a port, make sure it's - * alive. If it's not alive, cycle through the bundle - * looking for a port that is alive. If we don't find - * any, return an error. - */ - if (p->fec_ifstat != 1) { - struct ng_fec_portlist *n = NULL; - - n = TAILQ_NEXT(p, fec_list); - if (n == NULL) - n = TAILQ_FIRST(&b->ng_fec_ports); - while (n != p) { - if (n->fec_ifstat == 1) - break; - n = TAILQ_NEXT(n, fec_list); - if (n == NULL) - n = TAILQ_FIRST(&b->ng_fec_ports); - } - if (n == p) - return(EAGAIN); - p = n; - } - - *ifp = p->fec_if; - - return(0); -} - -/* - * Now that the packet has been run through ether_output(), yank it - * off our own send queue and stick it on the queue for the appropriate - * underlying physical interface. Note that if the interface's send - * queue is full, we save an error status in our private netgraph - * space which will eventually be handed up to ng_fec_output(), which - * will return it to the rest of the IP stack. We need to do this - * in order to duplicate the effect of ether_output() returning ENOBUFS - * when it detects that an interface's send queue is full. There's no - * other way to signal the error status from here since the if_start() - * routine is spec'ed to return void. - * - * Once the frame is queued, we call ether_output_frame() to initiate - * transmission. - */ -static void -ng_fec_start(struct ifnet *ifp) -{ - struct ng_fec_private *priv; - struct ng_fec_bundle *b; - struct ifnet *oifp = NULL; - struct mbuf *m0; - int error; - - priv = ifp->if_softc; - b = &priv->fec_bundle; - - IF_DEQUEUE(&ifp->if_snd, m0); - if (m0 == NULL) - return; - - BPF_MTAP(ifp, m0); - - /* Queue up packet on the proper port. */ - error = ng_fec_choose_port(b, m0, &oifp); - if (error) { - ifp->if_ierrors++; - m_freem(m0); - priv->if_error = ENOBUFS; - return; - } - ifp->if_opackets++; - - priv->if_error = IF_HANDOFF(&oifp->if_snd, m0, oifp) ? 0 : ENOBUFS; - - return; -} - -#ifdef DEBUG -/* - * Display an ioctl to the virtual interface - */ - -static void -ng_fec_print_ioctl(struct ifnet *ifp, int command, caddr_t data) -{ - char *str; - - switch (command & IOC_DIRMASK) { - case IOC_VOID: - str = "IO"; - break; - case IOC_OUT: - str = "IOR"; - break; - case IOC_IN: - str = "IOW"; - break; - case IOC_INOUT: - str = "IORW"; - break; - default: - str = "IO??"; - } - log(LOG_DEBUG, "%s: %s('%c', %d, char[%d])\n", - ifp->if_xname, - str, - IOCGROUP(command), - command & 0xff, - IOCPARM_LEN(command)); -} -#endif /* DEBUG */ - -/************************************************************************ - NETGRAPH NODE STUFF - ************************************************************************/ - -/* - * Constructor for a node - */ -static int -ng_fec_constructor(node_p node) -{ - char ifname[NG_FEC_FEC_NAME_MAX + 1]; - struct ifnet *ifp; - priv_p priv; - const uint8_t eaddr[ETHER_ADDR_LEN] = {0, 0, 0, 0, 0, 0}; - struct ng_fec_bundle *b; - int error = 0; - - /* Allocate node and interface private structures */ - priv = malloc(sizeof(*priv), M_NETGRAPH, M_WAITOK | M_ZERO); - - ifp = priv->ifp = if_alloc(IFT_ETHER); - if (ifp == NULL) { - free(priv, M_NETGRAPH); - return (ENOSPC); - } - b = &priv->fec_bundle; - - /* Link them together */ - ifp->if_softc = priv; - - /* Get an interface unit number */ - if ((error = ng_fec_get_unit(&priv->unit)) != 0) { - if_free(ifp); - free(priv, M_NETGRAPH); - return (error); - } - - /* Link together node and private info */ - NG_NODE_SET_PRIVATE(node, priv); - priv->node = node; - - /* Initialize interface structure */ - if_initname(ifp, NG_FEC_FEC_NAME, priv->unit); - ifp->if_start = ng_fec_start; - ifp->if_ioctl = ng_fec_ioctl; - ifp->if_init = ng_fec_init; - ifp->if_snd.ifq_maxlen = ifqmaxlen; - ifp->if_mtu = NG_FEC_MTU_DEFAULT; - ifp->if_flags = (IFF_SIMPLEX|IFF_BROADCAST|IFF_MULTICAST); - ifp->if_addrlen = 0; /* XXX */ - ifp->if_hdrlen = 0; /* XXX */ - ifp->if_baudrate = 100000000; /* XXX */ - TAILQ_INIT(&ifp->if_addrhead); /* XXX useless - done in if_attach */ - - /* Give this node the same name as the interface (if possible) */ - bzero(ifname, sizeof(ifname)); - strlcpy(ifname, ifp->if_xname, sizeof(ifname)); - if (ng_name_node(node, ifname) != 0) - log(LOG_WARNING, "%s: can't acquire netgraph name\n", ifname); - - /* Attach the interface */ - ether_ifattach(ifp, eaddr); - callout_handle_init(&priv->fec_ch); - - /* Override output method with our own */ - ifp->if_output = ng_fec_output; - - TAILQ_INIT(&b->ng_fec_ports); - b->fec_ifcnt = 0; - - ifmedia_init(&priv->ifmedia, 0, - ng_fec_ifmedia_upd, ng_fec_ifmedia_sts); - ifmedia_add(&priv->ifmedia, IFM_ETHER|IFM_NONE, 0, NULL); - ifmedia_set(&priv->ifmedia, IFM_ETHER|IFM_NONE); - - /* Done */ - return (0); -} - -/* - * Receive a control message - */ -static int -ng_fec_rcvmsg(node_p node, item_p item, hook_p lasthook) -{ - const priv_p priv = NG_NODE_PRIVATE(node); - struct ng_fec_bundle *b; - struct ng_mesg *resp = NULL; - struct ng_mesg *msg; - char *ifname; - int error = 0; - - NGI_GET_MSG(item, msg); - b = &priv->fec_bundle; - - switch (msg->header.typecookie) { - case NGM_FEC_COOKIE: - switch (msg->header.cmd) { - case NGM_FEC_ADD_IFACE: - ifname = msg->data; - error = ng_fec_addport(priv, ifname); - break; - case NGM_FEC_DEL_IFACE: - ifname = msg->data; - error = ng_fec_delport(priv, ifname); - break; - case NGM_FEC_SET_MODE_MAC: - b->fec_btype = FEC_BTYPE_MAC; - break; -#ifdef INET - case NGM_FEC_SET_MODE_INET: - b->fec_btype = FEC_BTYPE_INET; - break; -#ifdef INET6 - case NGM_FEC_SET_MODE_INET6: - b->fec_btype = FEC_BTYPE_INET6; - break; -#endif -#endif - default: - error = EINVAL; - break; - } - break; - default: - error = EINVAL; - break; - } - NG_RESPOND_MSG(error, node, item, resp); - NG_FREE_MSG(msg); - return (error); -} - -/* - * Shutdown and remove the node and its associated interface. - */ -static int -ng_fec_shutdown(node_p node) -{ - const priv_p priv = NG_NODE_PRIVATE(node); - struct ng_fec_bundle *b; - struct ng_fec_portlist *p; - - b = &priv->fec_bundle; - ng_fec_stop(priv->ifp); - - while (!TAILQ_EMPTY(&b->ng_fec_ports)) { - p = TAILQ_FIRST(&b->ng_fec_ports); - ng_fec_ether_cmdmulti(priv->ifp, p, 0); - ng_fec_delport(priv, p->fec_if->if_xname); - } - - ether_ifdetach(priv->ifp); - if_free(priv->ifp); - ifmedia_removeall(&priv->ifmedia); - ng_fec_free_unit(priv->unit); - free(priv, M_NETGRAPH); - NG_NODE_SET_PRIVATE(node, NULL); - NG_NODE_UNREF(node); - return (0); -} - -/* - * Handle loading and unloading for this node type. - */ -static int -ng_fec_mod_event(module_t mod, int event, void *data) -{ - int error = 0; - - switch (event) { - case MOD_LOAD: - mtx_init(&ng_fec_mtx, "ng_fec", NULL, MTX_DEF); - break; - case MOD_UNLOAD: - mtx_destroy(&ng_fec_mtx); - break; - default: - error = EOPNOTSUPP; - break; - } - return (error); -} diff --git a/sys/netgraph/ng_fec.h b/sys/netgraph/ng_fec.h deleted file mode 100644 index a6adf92b02e..00000000000 --- a/sys/netgraph/ng_fec.h +++ /dev/null @@ -1,113 +0,0 @@ -/* - * ng_fec.h - */ - -/*- - * Copyright (c) 2000 Berkeley Software Design, Inc. - * 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: stable/10/sys/netgraph/ng_fec.h 139823 2005-01-07 01:45:51Z imp $ - */ -/*- - * Copyright (c) 1996-1999 Whistle Communications, Inc. - * All rights reserved. - * - * Subject to the following obligations and disclaimer of warranty, use and - * redistribution of this software, in source or object code forms, with or - * without modifications are expressly permitted by Whistle Communications; - * provided, however, that: - * 1. Any and all reproductions of the source or object code must include the - * copyright notice above and the following disclaimer of warranties; and - * 2. No rights are granted, in any manner or form, to use Whistle - * Communications, Inc. trademarks, including the mark "WHISTLE - * COMMUNICATIONS" on advertising, endorsements, or otherwise except as - * such appears in the above copyright notice or in the software. - * - * THIS SOFTWARE IS BEING PROVIDED BY WHISTLE COMMUNICATIONS "AS IS", AND - * TO THE MAXIMUM EXTENT PERMITTED BY LAW, WHISTLE COMMUNICATIONS MAKES NO - * REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, REGARDING THIS SOFTWARE, - * INCLUDING WITHOUT LIMITATION, ANY AND ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. - * WHISTLE COMMUNICATIONS DOES NOT WARRANT, GUARANTEE, OR MAKE ANY - * REPRESENTATIONS REGARDING THE USE OF, OR THE RESULTS OF THE USE OF THIS - * SOFTWARE IN TERMS OF ITS CORRECTNESS, ACCURACY, RELIABILITY OR OTHERWISE. - * IN NO EVENT SHALL WHISTLE COMMUNICATIONS BE LIABLE FOR ANY DAMAGES - * RESULTING FROM OR ARISING OUT OF ANY USE OF THIS SOFTWARE, INCLUDING - * WITHOUT LIMITATION, ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, - * PUNITIVE, OR CONSEQUENTIAL DAMAGES, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES, LOSS OF USE, DATA OR PROFITS, HOWEVER CAUSED AND UNDER 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 WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY - * OF SUCH DAMAGE. - * - * Author: Archie Cobbs - * - * $Whistle: ng_fec.h,v 1.5 1999/01/20 00:22:13 archie Exp $ - */ - -#ifndef _NETGRAPH_NG_FEC_H_ -#define _NETGRAPH_NG_FEC_H_ - -#define NETISR_FEC 26 - -/* Node type name and magic cookie */ -#define NG_FEC_NODE_TYPE "fec" -#define NGM_FEC_COOKIE 983566799 - -/* Interface base name */ -#define NG_FEC_FEC_NAME "fec" -#define NG_FEC_FEC_NAME_MAX 15 - -/* MTU bounds */ -#define NG_FEC_MTU_MIN 72 -#define NG_FEC_MTU_MAX 65535 -#define NG_FEC_MTU_DEFAULT 1500 - -/* Special flags for mbufs. */ -#define M_FEC_MAC 0x2000 -#define M_FEC_INET 0x4000 -#define M_FEC_INET6 0x8000 - -/* Netgraph commands */ -enum { - NGM_FEC_ADD_IFACE, - NGM_FEC_DEL_IFACE, - NGM_FEC_SET_MODE_MAC, - NGM_FEC_SET_MODE_INET, - NGM_FEC_SET_MODE_INET6 -}; - -struct ng_fec_ifname { - char ngif_name[NG_FEC_FEC_NAME_MAX + 1]; -}; - -#endif /* _NETGRAPH_NG_FEC_H_ */ diff --git a/sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c b/sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c index c639b0591b3..adc1da04a41 100644 --- a/sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c +++ b/sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c @@ -172,7 +172,6 @@ ipf_timer_func(void *arg) SPL_INT(s); SPL_NET(s); - READ_ENTER(&softc->ipf_global); if (softc->ipf_running > 0) ipf_slowtimer(softc); @@ -181,12 +180,10 @@ ipf_timer_func(void *arg) #if 0 softc->ipf_slow_ch = timeout(ipf_timer_func, softc, hz/2); #endif - callout_init(&softc->ipf_slow_ch, 1); callout_reset(&softc->ipf_slow_ch, (hz / IPF_HZ_DIVIDE) * IPF_HZ_MULT, ipf_timer_func, softc); } - RWLOCK_EXIT(&softc->ipf_global); SPL_X(s); } @@ -221,7 +218,7 @@ ipfattach(ipf_main_softc_t *softc) softc->ipf_slow_ch = timeout(ipf_timer_func, softc, (hz / IPF_HZ_DIVIDE) * IPF_HZ_MULT); #endif - callout_init(&softc->ipf_slow_ch, 1); + callout_init_rw(&softc->ipf_slow_ch, &softc->ipf_global.ipf_lk, CALLOUT_SHAREDLOCK); callout_reset(&softc->ipf_slow_ch, (hz / IPF_HZ_DIVIDE) * IPF_HZ_MULT, ipf_timer_func, softc); return (0); diff --git a/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c b/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c index f5917a65a7b..93a41dc045c 100644 --- a/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c +++ b/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c @@ -510,7 +510,7 @@ rpc_gss_svc_getcred(struct svc_req *req, struct ucred **crp, int *flavorp) cr = client->cl_cred = crget(); cr->cr_uid = cr->cr_ruid = cr->cr_svuid = uc->uid; cr->cr_rgid = cr->cr_svgid = uc->gid; - crsetgroups(cr, uc->gidlen, uc->gidlist); + crsetgroups_fallback(cr, uc->gidlen, uc->gidlist, uc->gid); cr->cr_prison = curthread->td_ucred->cr_prison; prison_hold(cr->cr_prison); *crp = crhold(cr); diff --git a/sys/security/audit/audit.h b/sys/security/audit/audit.h index e7a9c83afbb..b87dd52e077 100644 --- a/sys/security/audit/audit.h +++ b/sys/security/audit/audit.h @@ -98,7 +98,7 @@ void audit_arg_rgid(gid_t rgid); void audit_arg_ruid(uid_t ruid); void audit_arg_sgid(gid_t sgid); void audit_arg_suid(uid_t suid); -void audit_arg_groupset(gid_t *gidset, u_int gidset_size); +void audit_arg_groupset(gid_t *gidset, int gidset_size); void audit_arg_login(char *login); void audit_arg_ctlname(int *name, int namelen); void audit_arg_mask(int mask); diff --git a/sys/security/audit/audit_arg.c b/sys/security/audit/audit_arg.c index 7b7fe34ccda..db621db1574 100644 --- a/sys/security/audit/audit_arg.c +++ b/sys/security/audit/audit_arg.c @@ -264,13 +264,13 @@ audit_arg_suid(uid_t suid) } void -audit_arg_groupset(gid_t *gidset, u_int gidset_size) +audit_arg_groupset(gid_t *gidset, int gidset_size) { - u_int i; + int i; struct kaudit_record *ar; - KASSERT(gidset_size <= ngroups_max + 1, - ("audit_arg_groupset: gidset_size > (kern.ngroups + 1)")); + KASSERT(gidset_size >= 0 && gidset_size <= ngroups_max + 1, + ("audit_arg_groupset: gidset_size < 0 or > (kern.ngroups + 1)")); ar = currecord(); if (ar == NULL) diff --git a/sys/sys/syscallsubr.h b/sys/sys/syscallsubr.h index 4710c3cf140..78de8876e51 100644 --- a/sys/sys/syscallsubr.h +++ b/sys/sys/syscallsubr.h @@ -287,7 +287,7 @@ int kern_select(struct thread *td, int nd, fd_set *fd_in, fd_set *fd_ou, fd_set *fd_ex, struct timeval *tvp, int abi_nfdbits); int kern_sendit(struct thread *td, int s, struct msghdr *mp, int flags, struct mbuf *control, enum uio_seg segflg); -int kern_setgroups(struct thread *td, u_int ngrp, gid_t *groups); +int kern_setgroups(struct thread *td, int *ngrpp, gid_t *groups); int kern_setitimer(struct thread *, u_int, struct itimerval *, struct itimerval *); int kern_setpriority(struct thread *td, int which, int who, int prio); diff --git a/sys/sys/ucred.h b/sys/sys/ucred.h index 837c3375731..876919f56fb 100644 --- a/sys/sys/ucred.h +++ b/sys/sys/ucred.h @@ -44,6 +44,14 @@ struct loginclass; #define XU_NGROUPS 16 +#if defined(_KERNEL) || defined(_WANT_UCRED) +/* + * Number of groups inlined in 'struct ucred'. It must stay reasonably low as + * it is also used by some functions to allocate an array of this size on the + * stack. + */ +#define CRED_SMALLGROUPS_NB 16 + /* * Credentials. * @@ -57,7 +65,6 @@ struct loginclass; * * See "Credential management" comment in kern_prot.c for more information. */ -#if defined(_KERNEL) || defined(_WANT_UCRED) struct ucred { struct mtx cr_mtx; u_int cr_ref; /* (c) reference count */ @@ -67,6 +74,10 @@ struct ucred { uid_t cr_uid; /* effective user id */ uid_t cr_ruid; /* real user id */ uid_t cr_svuid; /* saved user id */ + /* + * XXXOC: On the next ABI change, please move 'cr_ngroups' out of the + * copied area (crcopy() already copes with this change). + */ int cr_ngroups; /* number of groups */ gid_t cr_rgid; /* real group id */ gid_t cr_svgid; /* saved group id */ @@ -75,12 +86,13 @@ struct ucred { struct prison *cr_prison; /* jail(2) */ struct loginclass *cr_loginclass; /* login class */ u_int cr_flags; /* credential flags */ - void *cr_pspare2[2]; /* general use 2 */ + void *cr_pspare2[2]; /* general use 2 */ #define cr_endcopy cr_label struct label *cr_label; /* MAC label */ gid_t *cr_groups; /* groups */ int cr_agroups; /* Available groups */ - gid_t cr_smallgroups[XU_NGROUPS]; /* storage for small groups */ + /* storage for small groups */ + gid_t cr_smallgroups[CRED_SMALLGROUPS_NB]; }; #define NOCRED ((struct ucred *)0) /* no credential available */ #define FSCRED ((struct ucred *)-1) /* filesystem credential */ @@ -157,9 +169,22 @@ struct ucred *crcowget(struct ucred *cr); void crcowfree(struct thread *td); void cru2x(struct ucred *cr, struct xucred *xcr); void cru2xt(struct thread *td, struct xucred *xcr); -void crsetgroups(struct ucred *cr, int n, gid_t *groups); -int groupmember(gid_t gid, struct ucred *cred); -int realgroupmember(gid_t gid, struct ucred *cred); +void crsetgroups(struct ucred *cr, int ngrp, const gid_t *groups); +void crsetgroups_fallback(struct ucred *cr, int ngrp, const gid_t *groups, + const gid_t fallback); + +/* + * Returns whether gid designates a primary group in cred. + */ +static inline int +group_is_primary(const gid_t gid, const struct ucred *const cred) +{ + return (gid == cred->cr_groups[0] || gid == cred->cr_rgid || + gid == cred->cr_svgid); +} +int group_is_supplementary(const gid_t gid, const struct ucred *const cred); +int groupmember(gid_t gid, const struct ucred *cred); +int realgroupmember(gid_t gid, const struct ucred *cred); #endif /* _KERNEL */ #endif /* !_SYS_UCRED_H_ */ diff --git a/tools/tools/locale/etc/final-maps/map.Big5HKSCS b/tools/tools/locale/etc/final-maps/map.Big5HKSCS deleted file mode 100644 index d7a4a27e859..00000000000 --- a/tools/tools/locale/etc/final-maps/map.Big5HKSCS +++ /dev/null @@ -1,18612 +0,0 @@ - "Big5" - 1 - 2 -CHARMAP - \x00 - \x00 - \x01 - \x01 - \x02 - \x02 - \x03 - \x03 - \x04 - \x04 - \x05 - \x05 - \x06 - \x06 - \x07 - \x07 - \x08 - \x08 - \x09 - \x09 - \x0a - \x0a - \x0b - \x0b - \x0c - \x0c - \x0d - \x0d - \x0e - \x0e - \x0f - \x0f - \x10 - \x10 - \x11 - \x11 - \x12 - \x12 - \x13 - \x13 - \x14 - \x14 - \x15 - \x15 - \x16 - \x16 - \x17 - \x17 - \x18 - \x18 - \x19 - \x19 - \x1a - \x1a - \x1b - \x1b - \x1c - \x1c - \x1d - \x1d - \x1e - \x1e - \x1f - \x1f - \x20 - \x20 - \x21 - \x22 - \x23 - \x24 - \x25 - \x26 - \x27 - \x28 - \x29 - \x2a - \x2b - \x2c - \x2d - \x2e - \x2f - \x30 - \x30 - \x31 - \x31 - \x32 - \x32 - \x33 - \x33 - \x34 - \x34 - \x35 - \x35 - \x36 - \x36 - \x37 - \x37 - \x38 - \x38 - \x39 - \x39 - \x3a - \x3b - \x3c - \x3d - \x3e - \x3f - \x40 - \x41 - \x41 - \x42 - \x42 - \x43 - \x43 - \x44 - \x44 - \x45 - \x45 - \x46 - \x46 - \x47 - \x47 - \x48 - \x48 - \x49 - \x49 - \x4a - \x4a - \x4b - \x4b - \x4c - \x4c - \x4d - \x4d - \x4e - \x4e - \x4f - \x4f - \x50 -

\x70 - \x71 - \x71 - \x72 - \x72 - \x73 - \x73 - \x74 - \x74 - \x75 - \x75 - \x76 - \x76 - \x77 - \x77 - \x78 - \x78 - \x79 - \x79 - \x7a - \x7a - \x7b - \x7c - \x7d - \x7e - \x7f - \x7f - \x87\x40 - \x87\x41 - \x87\x42 - \x87\x43 - \x87\x44 - \x87\x45 - \x87\x46 - \x87\x47 - \x87\x48 - \x87\x49 - \x87\x4a - \x87\x4b - \x87\x4c - \x87\x4d - \x87\x4e - \x87\x4f - \x87\x50 - \x87\x51 - \x87\x52 - \x87\x53 - \x87\x54 - \x87\x55 - \x87\x56 - \x87\x57 - \x87\x58 - \x87\x59 - \x87\x5a - \x87\x5b - \x87\x5c - \x87\x5d - \x87\x5e - \x87\x5f - \x87\x60 - \x87\x61 - \x87\x62 - \x87\x63 - \x87\x64 - \x87\x65 - \x87\x67 - \x87\x68 - \x87\x69 - \x87\x6a - \x87\x6b - \x87\x6c - \x87\x6d - \x87\x6e - \x87\x6f - \x87\x70 - \x87\x71 - \x87\x72 - \x87\x73 - \x87\x74 - \x87\x75 - \x87\x76 - \x87\x77 - \x87\x78 - \x87\x79 - \x88\x40 - \x88\x41 - \x88\x42 - \x88\x43 - \x88\x44 - \x88\x45 - \x88\x46 - \x88\x47 - \x88\x48 - \x88\x49 - \x88\x4a - \x88\x4b - \x88\x4c - \x88\x4d - \x88\x4e - \x88\x4f - \x88\x50 - \x88\x51 - \x88\x52 - \x88\x53 - \x88\x54 - \x88\x55 - \x88\x56 - \x88\x57 - \x88\x58 - \x88\x59 - \x88\x5a - \x88\x5b - \x88\x5c - \x88\x5d - \x88\x5e - \x88\x5f - \x88\x60 - \x88\x61 - \x88\x63 - \x88\x65 - \x88\x66 - \x88\x67 - \x88\x68 - \x88\x69 - \x88\x6a - \x88\x6b - \x88\x6c - \x88\x6d - \x88\x6e - \x88\x6f - \x88\x70 - \x88\x71 - \x88\x72 - \x88\x73 - \x88\x74 - \x88\x75 - \x88\x76 - \x88\x77 - \x88\x78 - \x88\x79 - \x88\x7a - \x88\x7b - \x88\x7c - \x88\x7d - \x88\x7e - \x88\xa1 - \x88\xa2 - \x88\xa4 - \x88\xa6 - \x88\xa7 - \x88\xa8 - \x88\xa9 - \x88\xaa - \x89\x40 - \x89\x41 - \x89\x43 - \x89\x46 - \x89\x47 - \x89\x48 - \x89\x49 - \x89\x4c - \x89\x4d - \x89\x4e - \x89\x4f - \x89\x50 - \x89\x51 - \x89\x52 - \x89\x53 - \x89\x54 - \x89\x55 - \x89\x56 - \x89\x57 - \x89\x58 - \x89\x59 - \x89\x5a - \x89\x5b - \x89\x5c - \x89\x5d - \x89\x5e - \x89\x5f - \x89\x60 - \x89\x61 - \x89\x62 - \x89\x63 - \x89\x64 - \x89\x65 - \x89\x66 - \x89\x67 - \x89\x68 - \x89\x69 - \x89\x6a - \x89\x6b - \x89\x6c - \x89\x6d - \x89\x6e - \x89\x6f - \x89\x70 - \x89\x71 - \x89\x72 - \x89\x73 - \x89\x74 - \x89\x75 - \x89\x76 - \x89\x77 - \x89\x78 - \x89\x79 - \x89\x7a - \x89\x7b - \x89\x7c - \x89\x7d - \x89\x7e - \x89\xa1 - \x89\xa2 - \x89\xa3 - \x89\xa4 - \x89\xa5 - \x89\xa6 - \x89\xab - \x89\xac - \x89\xad - \x89\xae - \x89\xb0 - \x89\xb1 - \x89\xb2 - \x89\xb5 - \x89\xb6 - \x89\xb7 - \x89\xb8 - \x89\xb9 - \x89\xba - \x89\xbb - \x89\xbc - \x89\xbd - \x89\xbe - \x89\xbf - \x89\xc1 - \x89\xc2 - \x89\xc3 - \x89\xc5 - \x89\xc6 - \x89\xc7 - \x89\xc8 - \x89\xc9 - \x89\xca - \x89\xcb - \x89\xcc - \x89\xcd - \x89\xce - \x89\xcf - \x89\xd0 - \x89\xd1 - \x89\xd2 - \x89\xd3 - \x89\xd4 - \x89\xd5 - \x89\xd6 - \x89\xd7 - \x89\xd8 - \x89\xd9 - \x89\xda - \x89\xdb - \x89\xdc - \x89\xdd - \x89\xde - \x89\xdf - \x89\xe0 - \x89\xe1 - \x89\xe2 - \x89\xe3 - \x89\xe4 - \x89\xe5 - \x89\xe6 - \x89\xe7 - \x89\xe8 - \x89\xe9 - \x89\xea - \x89\xeb - \x89\xec - \x89\xed - \x89\xee - \x89\xef - \x89\xf0 - \x89\xf1 - \x89\xf2 - \x89\xf3 - \x89\xf4 - \x89\xf5 - \x89\xf6 - \x89\xf7 - \x89\xf8 - \x89\xf9 - \x89\xfa - \x89\xfb - \x89\xfc - \x89\xfd - \x89\xfe - \x8a\x40 - \x8a\x41 - \x8a\x43 - \x8a\x44 - \x8a\x45 - \x8a\x46 - \x8a\x47 - \x8a\x48 - \x8a\x49 - \x8a\x4a - \x8a\x4b - \x8a\x4c - \x8a\x4d - \x8a\x4e - \x8a\x4f - \x8a\x50 - \x8a\x51 - \x8a\x52 - \x8a\x53 - \x8a\x54 - \x8a\x55 - \x8a\x56 - \x8a\x57 - \x8a\x58 - \x8a\x59 - \x8a\x5a - \x8a\x5b - \x8a\x5c - \x8a\x5d - \x8a\x5e - \x8a\x5f - \x8a\x60 - \x8a\x61 - \x8a\x62 - \x8a\x64 - \x8a\x65 - \x8a\x66 - \x8a\x67 - \x8a\x68 - \x8a\x69 - \x8a\x6a - \x8a\x6b - \x8a\x6c - \x8a\x6d - \x8a\x6e - \x8a\x6f - \x8a\x70 - \x8a\x71 - \x8a\x72 - \x8a\x73 - \x8a\x74 - \x8a\x76 - \x8a\x77 - \x8a\x78 - \x8a\x79 - \x8a\x7a - \x8a\x7b - \x8a\x7c - \x8a\x7d - \x8a\x7e - \x8a\xa1 - \x8a\xa2 - \x8a\xa3 - \x8a\xa4 - \x8a\xa5 - \x8a\xa6 - \x8a\xa7 - \x8a\xa8 - \x8a\xa9 - \x8a\xaa - \x8a\xac - \x8a\xad - \x8a\xae - \x8a\xaf - \x8a\xb0 - \x8a\xb2 - \x8a\xb3 - \x8a\xb4 - \x8a\xb5 - \x8a\xb6 - \x8a\xb7 - \x8a\xb8 - \x8a\xb9 - \x8a\xbb - \x8a\xbc - \x8a\xbd - \x8a\xbe - \x8a\xbf - \x8a\xc0 - \x8a\xc1 - \x8a\xc2 - \x8a\xc3 - \x8a\xc4 - \x8a\xc5 - \x8a\xc6 - \x8a\xc7 - \x8a\xc9 - \x8a\xca - \x8a\xcb - \x8a\xcc - \x8a\xce - \x8a\xcf - \x8a\xd0 - \x8a\xd1 - \x8a\xd2 - \x8a\xd3 - \x8a\xd4 - \x8a\xd5 - \x8a\xd6 - \x8a\xd7 - \x8a\xd8 - \x8a\xd9 - \x8a\xda - \x8a\xdb - \x8a\xdc - \x8a\xdf - \x8a\xe0 - \x8a\xe1 - \x8a\xe2 - \x8a\xe3 - \x8a\xe4 - \x8a\xe5 - \x8a\xe6 - \x8a\xe7 - \x8a\xe8 - \x8a\xe9 - \x8a\xea - \x8a\xeb - \x8a\xec - \x8a\xed - \x8a\xee - \x8a\xef - \x8a\xf0 - \x8a\xf1 - \x8a\xf2 - \x8a\xf3 - \x8a\xf4 - \x8a\xf6 - \x8a\xf7 - \x8a\xf8 - \x8a\xf9 - \x8a\xfa - \x8a\xfb - \x8a\xfc - \x8a\xfd - \x8a\xfe - \x8b\x40 - \x8b\x41 - \x8b\x42 - \x8b\x43 - \x8b\x44 - \x8b\x45 - \x8b\x46 - \x8b\x47 - \x8b\x48 - \x8b\x49 - \x8b\x4a - \x8b\x4b - \x8b\x4c - \x8b\x4d - \x8b\x4e - \x8b\x4f - \x8b\x50 - \x8b\x51 - \x8b\x52 - \x8b\x53 - \x8b\x55 - \x8b\x56 - \x8b\x57 - \x8b\x58 - \x8b\x59 - \x8b\x5a - \x8b\x5b - \x8b\x5c - \x8b\x5d - \x8b\x5e - \x8b\x5f - \x8b\x60 - \x8b\x61 - \x8b\x62 - \x8b\x63 - \x8b\x64 - \x8b\x65 - \x8b\x66 - \x8b\x67 - \x8b\x68 - \x8b\x69 - \x8b\x6a - \x8b\x6b - \x8b\x6c - \x8b\x6d - \x8b\x6e - \x8b\x6f - \x8b\x70 - \x8b\x71 - \x8b\x72 - \x8b\x73 - \x8b\x74 - \x8b\x75 - \x8b\x76 - \x8b\x77 - \x8b\x78 - \x8b\x79 - \x8b\x7a - \x8b\x7b - \x8b\x7c - \x8b\x7d - \x8b\x7e - \x8b\xa1 - \x8b\xa2 - \x8b\xa3 - \x8b\xa4 - \x8b\xa5 - \x8b\xa6 - \x8b\xa7 - \x8b\xa8 - \x8b\xa9 - \x8b\xaa - \x8b\xab - \x8b\xac - \x8b\xad - \x8b\xae - \x8b\xaf - \x8b\xb0 - \x8b\xb1 - \x8b\xb2 - \x8b\xb3 - \x8b\xb4 - \x8b\xb5 - \x8b\xb6 - \x8b\xb7 - \x8b\xb8 - \x8b\xb9 - \x8b\xba - \x8b\xbb - \x8b\xbc - \x8b\xbd - \x8b\xbe - \x8b\xbf - \x8b\xc0 - \x8b\xc1 - \x8b\xc2 - \x8b\xc3 - \x8b\xc4 - \x8b\xc5 - \x8b\xc6 - \x8b\xc7 - \x8b\xc8 - \x8b\xc9 - \x8b\xca - \x8b\xcb - \x8b\xcc - \x8b\xcd - \x8b\xce - \x8b\xcf - \x8b\xd0 - \x8b\xd1 - \x8b\xd2 - \x8b\xd3 - \x8b\xd4 - \x8b\xd5 - \x8b\xd6 - \x8b\xd7 - \x8b\xd8 - \x8b\xd9 - \x8b\xda - \x8b\xdb - \x8b\xdc - \x8b\xde - \x8b\xdf - \x8b\xe0 - \x8b\xe1 - \x8b\xe2 - \x8b\xe3 - \x8b\xe4 - \x8b\xe5 - \x8b\xe6 - \x8b\xe7 - \x8b\xe8 - \x8b\xe9 - \x8b\xea - \x8b\xeb - \x8b\xec - \x8b\xed - \x8b\xee - \x8b\xef - \x8b\xf0 - \x8b\xf1 - \x8b\xf2 - \x8b\xf3 - \x8b\xf4 - \x8b\xf5 - \x8b\xf6 - \x8b\xf7 - \x8b\xf8 - \x8b\xf9 - \x8b\xfa - \x8b\xfb - \x8b\xfc - \x8b\xfd - \x8c\x40 - \x8c\x41 - \x8c\x42 - \x8c\x43 - \x8c\x44 - \x8c\x45 - \x8c\x46 - \x8c\x47 - \x8c\x48 - \x8c\x49 - \x8c\x4a - \x8c\x4b - \x8c\x4c - \x8c\x4d - \x8c\x4e - \x8c\x4f - \x8c\x50 - \x8c\x51 - \x8c\x52 - \x8c\x53 - \x8c\x54 - \x8c\x55 - \x8c\x56 - \x8c\x57 - \x8c\x58 - \x8c\x59 - \x8c\x5a - \x8c\x5b - \x8c\x5c - \x8c\x5d - \x8c\x5e - \x8c\x5f - \x8c\x60 - \x8c\x61 - \x8c\x62 - \x8c\x63 - \x8c\x64 - \x8c\x65 - \x8c\x66 - \x8c\x67 - \x8c\x68 - \x8c\x69 - \x8c\x6a - \x8c\x6b - \x8c\x6c - \x8c\x6d - \x8c\x6e - \x8c\x6f - \x8c\x70 - \x8c\x71 - \x8c\x72 - \x8c\x73 - \x8c\x74 - \x8c\x75 - \x8c\x76 - \x8c\x77 - \x8c\x78 - \x8c\x79 - \x8c\x7a - \x8c\x7b - \x8c\x7c - \x8c\x7d - \x8c\x7e - \x8c\xa1 - \x8c\xa2 - \x8c\xa3 - \x8c\xa4 - \x8c\xa5 - \x8c\xa7 - \x8c\xa8 - \x8c\xa9 - \x8c\xaa - \x8c\xab - \x8c\xac - \x8c\xad - \x8c\xae - \x8c\xaf - \x8c\xb0 - \x8c\xb1 - \x8c\xb2 - \x8c\xb3 - \x8c\xb4 - \x8c\xb5 - \x8c\xb6 - \x8c\xb7 - \x8c\xb8 - \x8c\xb9 - \x8c\xba - \x8c\xbb - \x8c\xbc - \x8c\xbd - \x8c\xbe - \x8c\xbf - \x8c\xc0 - \x8c\xc1 - \x8c\xc2 - \x8c\xc3 - \x8c\xc4 - \x8c\xc5 - \x8c\xc9 - \x8c\xca - \x8c\xcb - \x8c\xcc - \x8c\xce - \x8c\xcf - \x8c\xd0 - \x8c\xd1 - \x8c\xd2 - \x8c\xd3 - \x8c\xd4 - \x8c\xd5 - \x8c\xd6 - \x8c\xd7 - \x8c\xd8 - \x8c\xd9 - \x8c\xda - \x8c\xdb - \x8c\xdc - \x8c\xdd - \x8c\xde - \x8c\xdf - \x8c\xe0 - \x8c\xe1 - \x8c\xe2 - \x8c\xe3 - \x8c\xe4 - \x8c\xe6 - \x8c\xe7 - \x8c\xe8 - \x8c\xe9 - \x8c\xea - \x8c\xeb - \x8c\xec - \x8c\xed - \x8c\xee - \x8c\xef - \x8c\xf0 - \x8c\xf1 - \x8c\xf2 - \x8c\xf3 - \x8c\xf4 - \x8c\xf5 - \x8c\xf6 - \x8c\xf7 - \x8c\xf8 - \x8c\xf9 - \x8c\xfa - \x8c\xfb - \x8c\xfc - \x8c\xfd - \x8c\xfe - \x8d\x40 - \x8d\x42 - \x8d\x43 - \x8d\x44 - \x8d\x45 - \x8d\x46 - \x8d\x47 - \x8d\x48 - \x8d\x49 - \x8d\x4a - \x8d\x4b - \x8d\x4c - \x8d\x4d - \x8d\x4e - \x8d\x4f - \x8d\x50 - \x8d\x51 - \x8d\x52 - \x8d\x53 - \x8d\x54 - \x8d\x55 - \x8d\x56 - \x8d\x57 - \x8d\x58 - \x8d\x59 - \x8d\x5a - \x8d\x5b - \x8d\x5c - \x8d\x5d - \x8d\x5e - \x8d\x5f - \x8d\x60 - \x8d\x61 - \x8d\x62 - \x8d\x63 - \x8d\x64 - \x8d\x65 - \x8d\x66 - \x8d\x67 - \x8d\x68 - \x8d\x69 - \x8d\x6a - \x8d\x6b - \x8d\x6c - \x8d\x6d - \x8d\x6e - \x8d\x6f - \x8d\x70 - \x8d\x71 - \x8d\x72 - \x8d\x73 - \x8d\x74 - \x8d\x75 - \x8d\x76 - \x8d\x77 - \x8d\x78 - \x8d\x79 - \x8d\x7a - \x8d\x7b - \x8d\x7c - \x8d\x7d - \x8d\x7e - \x8d\xa1 - \x8d\xa2 - \x8d\xa3 - \x8d\xa4 - \x8d\xa5 - \x8d\xa6 - \x8d\xa7 - \x8d\xa8 - \x8d\xa9 - \x8d\xaa - \x8d\xab - \x8d\xac - \x8d\xad - \x8d\xae - \x8d\xaf - \x8d\xb0 - \x8d\xb1 - \x8d\xb2 - \x8d\xb3 - \x8d\xb4 - \x8d\xb5 - \x8d\xb6 - \x8d\xb7 - \x8d\xb8 - \x8d\xb9 - \x8d\xba - \x8d\xbb - \x8d\xbc - \x8d\xbd - \x8d\xbe - \x8d\xbf - \x8d\xc0 - \x8d\xc1 - \x8d\xc2 - \x8d\xc3 - \x8d\xc4 - \x8d\xc5 - \x8d\xc6 - \x8d\xc7 - \x8d\xc8 - \x8d\xc9 - \x8d\xca - \x8d\xcb - \x8d\xcc - \x8d\xcd - \x8d\xce - \x8d\xcf - \x8d\xd0 - \x8d\xd1 - \x8d\xd2 - \x8d\xd3 - \x8d\xd4 - \x8d\xd5 - \x8d\xd6 - \x8d\xd7 - \x8d\xd8 - \x8d\xd9 - \x8d\xda - \x8d\xdb - \x8d\xdc - \x8d\xdd - \x8d\xde - \x8d\xdf - \x8d\xe0 - \x8d\xe1 - \x8d\xe2 - \x8d\xe3 - \x8d\xe4 - \x8d\xe5 - \x8d\xe6 - \x8d\xe7 - \x8d\xe8 - \x8d\xe9 - \x8d\xea - \x8d\xeb - \x8d\xec - \x8d\xed - \x8d\xee - \x8d\xef - \x8d\xf0 - \x8d\xf1 - \x8d\xf2 - \x8d\xf3 - \x8d\xf4 - \x8d\xf5 - \x8d\xf6 - \x8d\xf7 - \x8d\xf8 - \x8d\xf9 - \x8d\xfa - \x8d\xfb - \x8d\xfc - \x8d\xfd - \x8d\xfe - \x8e\x40 - \x8e\x41 - \x8e\x42 - \x8e\x43 - \x8e\x44 - \x8e\x45 - \x8e\x46 - \x8e\x47 - \x8e\x48 - \x8e\x49 - \x8e\x4a - \x8e\x4b - \x8e\x4c - \x8e\x4d - \x8e\x4e - \x8e\x4f - \x8e\x50 - \x8e\x51 - \x8e\x52 - \x8e\x53 - \x8e\x54 - \x8e\x55 - \x8e\x56 - \x8e\x57 - \x8e\x58 - \x8e\x59 - \x8e\x5a - \x8e\x5b - \x8e\x5c - \x8e\x5d - \x8e\x5e - \x8e\x5f - \x8e\x60 - \x8e\x61 - \x8e\x62 - \x8e\x63 - \x8e\x64 - \x8e\x65 - \x8e\x66 - \x8e\x67 - \x8e\x68 - \x8e\x6a - \x8e\x6b - \x8e\x6c - \x8e\x6d - \x8e\x6e - \x8e\x70 - \x8e\x71 - \x8e\x72 - \x8e\x73 - \x8e\x74 - \x8e\x75 - \x8e\x76 - \x8e\x77 - \x8e\x78 - \x8e\x79 - \x8e\x7a - \x8e\x7b - \x8e\x7c - \x8e\x7d - \x8e\xa1 - \x8e\xa2 - \x8e\xa3 - \x8e\xa4 - \x8e\xa5 - \x8e\xa6 - \x8e\xa7 - \x8e\xa8 - \x8e\xa9 - \x8e\xaa - \x8e\xac - \x8e\xad - \x8e\xae - \x8e\xaf - \x8e\xb0 - \x8e\xb1 - \x8e\xb2 - \x8e\xb3 - \x8e\xb5 - \x8e\xb6 - \x8e\xb7 - \x8e\xb8 - \x8e\xb9 - \x8e\xba - \x8e\xbb - \x8e\xbc - \x8e\xbd - \x8e\xbe - \x8e\xbf - \x8e\xc0 - \x8e\xc1 - \x8e\xc2 - \x8e\xc3 - \x8e\xc4 - \x8e\xc5 - \x8e\xc6 - \x8e\xc7 - \x8e\xc8 - \x8e\xc9 - \x8e\xca - \x8e\xcb - \x8e\xcc - \x8e\xce - \x8e\xcf - \x8e\xd1 - \x8e\xd2 - \x8e\xd3 - \x8e\xd4 - \x8e\xd5 - \x8e\xd6 - \x8e\xd7 - \x8e\xd8 - \x8e\xd9 - \x8e\xda - \x8e\xdb - \x8e\xdc - \x8e\xdd - \x8e\xde - \x8e\xdf - \x8e\xe0 - \x8e\xe1 - \x8e\xe2 - \x8e\xe3 - \x8e\xe4 - \x8e\xe5 - \x8e\xe6 - \x8e\xe7 - \x8e\xe8 - \x8e\xe9 - \x8e\xea - \x8e\xeb - \x8e\xec - \x8e\xed - \x8e\xee - \x8e\xef - \x8e\xf0 - \x8e\xf1 - \x8e\xf2 - \x8e\xf3 - \x8e\xf4 - \x8e\xf5 - \x8e\xf6 - \x8e\xf7 - \x8e\xf8 - \x8e\xf9 - \x8e\xfa - \x8e\xfb - \x8e\xfc - \x8e\xfd - \x8e\xfe - \x8f\x40 - \x8f\x41 - \x8f\x42 - \x8f\x43 - \x8f\x44 - \x8f\x45 - \x8f\x46 - \x8f\x47 - \x8f\x48 - \x8f\x49 - \x8f\x4a - \x8f\x4b - \x8f\x4c - \x8f\x4d - \x8f\x4e - \x8f\x4f - \x8f\x50 - \x8f\x51 - \x8f\x52 - \x8f\x53 - \x8f\x54 - \x8f\x55 - \x8f\x56 - \x8f\x58 - \x8f\x59 - \x8f\x5a - \x8f\x5b - \x8f\x5c - \x8f\x5d - \x8f\x5e - \x8f\x5f - \x8f\x60 - \x8f\x61 - \x8f\x62 - \x8f\x63 - \x8f\x64 - \x8f\x65 - \x8f\x66 - \x8f\x67 - \x8f\x68 - \x8f\x6a - \x8f\x6b - \x8f\x6c - \x8f\x6d - \x8f\x6f - \x8f\x70 - \x8f\x71 - \x8f\x72 - \x8f\x73 - \x8f\x74 - \x8f\x75 - \x8f\x76 - \x8f\x77 - \x8f\x78 - \x8f\x79 - \x8f\x7a - \x8f\x7b - \x8f\x7c - \x8f\x7d - \x8f\x7e - \x8f\xa1 - \x8f\xa2 - \x8f\xa3 - \x8f\xa4 - \x8f\xa5 - \x8f\xa6 - \x8f\xa7 - \x8f\xa8 - \x8f\xa9 - \x8f\xaa - \x8f\xab - \x8f\xac - \x8f\xad - \x8f\xae - \x8f\xaf - \x8f\xb0 - \x8f\xb1 - \x8f\xb2 - \x8f\xb3 - \x8f\xb4 - \x8f\xb5 - \x8f\xb6 - \x8f\xb7 - \x8f\xb8 - \x8f\xb9 - \x8f\xba - \x8f\xbb - \x8f\xbc - \x8f\xbd - \x8f\xbe - \x8f\xbf - \x8f\xc0 - \x8f\xc1 - \x8f\xc2 - \x8f\xc3 - \x8f\xc4 - \x8f\xc5 - \x8f\xc6 - \x8f\xc7 - \x8f\xc8 - \x8f\xc9 - \x8f\xca - \x8f\xcd - \x8f\xce - \x8f\xcf - \x8f\xd0 - \x8f\xd1 - \x8f\xd2 - \x8f\xd3 - \x8f\xd4 - \x8f\xd5 - \x8f\xd6 - \x8f\xd7 - \x8f\xd8 - \x8f\xd9 - \x8f\xda - \x8f\xdb - \x8f\xdc - \x8f\xdd - \x8f\xde - \x8f\xdf - \x8f\xe0 - \x8f\xe1 - \x8f\xe2 - \x8f\xe3 - \x8f\xe4 - \x8f\xe5 - \x8f\xe6 - \x8f\xe7 - \x8f\xe8 - \x8f\xe9 - \x8f\xea - \x8f\xeb - \x8f\xec - \x8f\xed - \x8f\xee - \x8f\xef - \x8f\xf0 - \x8f\xf1 - \x8f\xf2 - \x8f\xf3 - \x8f\xf4 - \x8f\xf5 - \x8f\xf6 - \x8f\xf7 - \x8f\xf8 - \x8f\xf9 - \x8f\xfa - \x8f\xfb - \x8f\xfc - \x8f\xfd - \x90\x40 - \x90\x41 - \x90\x42 - \x90\x43 - \x90\x44 - \x90\x45 - \x90\x46 - \x90\x47 - \x90\x48 - \x90\x49 - \x90\x4a - \x90\x4b - \x90\x4c - \x90\x4d - \x90\x4e - \x90\x4f - \x90\x50 - \x90\x51 - \x90\x52 - \x90\x53 - \x90\x54 - \x90\x55 - \x90\x56 - \x90\x57 - \x90\x58 - \x90\x59 - \x90\x5a - \x90\x5b - \x90\x5c - \x90\x5d - \x90\x5e - \x90\x5f - \x90\x60 - \x90\x61 - \x90\x62 - \x90\x63 - \x90\x64 - \x90\x65 - \x90\x66 - \x90\x67 - \x90\x68 - \x90\x69 - \x90\x6a - \x90\x6b - \x90\x6c - \x90\x6e - \x90\x6f - \x90\x70 - \x90\x71 - \x90\x72 - \x90\x73 - \x90\x74 - \x90\x75 - \x90\x76 - \x90\x77 - \x90\x78 - \x90\x79 - \x90\x7b - \x90\x7c - \x90\x7d - \x90\x7e - \x90\xa1 - \x90\xa2 - \x90\xa3 - \x90\xa4 - \x90\xa5 - \x90\xa6 - \x90\xa7 - \x90\xa8 - \x90\xa9 - \x90\xaa - \x90\xab - \x90\xac - \x90\xad - \x90\xae - \x90\xaf - \x90\xb0 - \x90\xb1 - \x90\xb2 - \x90\xb3 - \x90\xb4 - \x90\xb5 - \x90\xb6 - \x90\xb7 - \x90\xb8 - \x90\xb9 - \x90\xba - \x90\xbb - \x90\xbc - \x90\xbd - \x90\xbe - \x90\xbf - \x90\xc0 - \x90\xc1 - \x90\xc2 - \x90\xc3 - \x90\xc4 - \x90\xc5 - \x90\xc6 - \x90\xc7 - \x90\xc8 - \x90\xc9 - \x90\xca - \x90\xcb - \x90\xcc - \x90\xcd - \x90\xce - \x90\xcf - \x90\xd0 - \x90\xd1 - \x90\xd2 - \x90\xd3 - \x90\xd4 - \x90\xd5 - \x90\xd6 - \x90\xd7 - \x90\xd8 - \x90\xd9 - \x90\xda - \x90\xdb - \x90\xdd - \x90\xde - \x90\xdf - \x90\xe0 - \x90\xe1 - \x90\xe2 - \x90\xe3 - \x90\xe4 - \x90\xe5 - \x90\xe6 - \x90\xe7 - \x90\xe8 - \x90\xe9 - \x90\xea - \x90\xeb - \x90\xec - \x90\xed - \x90\xee - \x90\xef - \x90\xf0 - \x90\xf2 - \x90\xf3 - \x90\xf4 - \x90\xf5 - \x90\xf6 - \x90\xf7 - \x90\xf8 - \x90\xf9 - \x90\xfa - \x90\xfb - \x90\xfc - \x90\xfd - \x90\xfe - \x91\x40 - \x91\x41 - \x91\x42 - \x91\x43 - \x91\x44 - \x91\x45 - \x91\x46 - \x91\x47 - \x91\x48 - \x91\x49 - \x91\x4a - \x91\x4b - \x91\x4c - \x91\x4d - \x91\x4e - \x91\x4f - \x91\x50 - \x91\x51 - \x91\x52 - \x91\x53 - \x91\x54 - \x91\x55 - \x91\x56 - \x91\x57 - \x91\x58 - \x91\x59 - \x91\x5a - \x91\x5b - \x91\x5c - \x91\x5d - \x91\x5e - \x91\x5f - \x91\x60 - \x91\x61 - \x91\x62 - \x91\x63 - \x91\x64 - \x91\x65 - \x91\x66 - \x91\x67 - \x91\x68 - \x91\x69 - \x91\x6a - \x91\x6b - \x91\x6c - \x91\x6d - \x91\x6e - \x91\x6f - \x91\x70 - \x91\x71 - \x91\x72 - \x91\x73 - \x91\x74 - \x91\x75 - \x91\x76 - \x91\x77 - \x91\x78 - \x91\x79 - \x91\x7a - \x91\x7b - \x91\x7c - \x91\x7d - \x91\x7e - \x91\xa1 - \x91\xa2 - \x91\xa3 - \x91\xa4 - \x91\xa5 - \x91\xa6 - \x91\xa7 - \x91\xa8 - \x91\xa9 - \x91\xaa - \x91\xab - \x91\xac - \x91\xad - \x91\xae - \x91\xaf - \x91\xb0 - \x91\xb1 - \x91\xb2 - \x91\xb3 - \x91\xb4 - \x91\xb5 - \x91\xb6 - \x91\xb7 - \x91\xb8 - \x91\xb9 - \x91\xba - \x91\xbb - \x91\xbc - \x91\xbd - \x91\xbe - \x91\xc0 - \x91\xc1 - \x91\xc2 - \x91\xc3 - \x91\xc4 - \x91\xc5 - \x91\xc6 - \x91\xc7 - \x91\xc8 - \x91\xc9 - \x91\xca - \x91\xcb - \x91\xcc - \x91\xcd - \x91\xce - \x91\xcf - \x91\xd0 - \x91\xd1 - \x91\xd2 - \x91\xd3 - \x91\xd4 - \x91\xd5 - \x91\xd6 - \x91\xd7 - \x91\xd8 - \x91\xd9 - \x91\xda - \x91\xdb - \x91\xdc - \x91\xdd - \x91\xde - \x91\xdf - \x91\xe0 - \x91\xe1 - \x91\xe2 - \x91\xe3 - \x91\xe4 - \x91\xe5 - \x91\xe6 - \x91\xe7 - \x91\xe8 - \x91\xe9 - \x91\xea - \x91\xeb - \x91\xec - \x91\xed - \x91\xee - \x91\xef - \x91\xf0 - \x91\xf1 - \x91\xf2 - \x91\xf3 - \x91\xf4 - \x91\xf5 - \x91\xf6 - \x91\xf7 - \x91\xf8 - \x91\xf9 - \x91\xfa - \x91\xfb - \x91\xfc - \x91\xfd - \x91\xfe - \x92\x40 - \x92\x41 - \x92\x42 - \x92\x43 - \x92\x45 - \x92\x46 - \x92\x47 - \x92\x48 - \x92\x49 - \x92\x4a - \x92\x4b - \x92\x4c - \x92\x4d - \x92\x4e - \x92\x4f - \x92\x50 - \x92\x51 - \x92\x52 - \x92\x53 - \x92\x54 - \x92\x55 - \x92\x56 - \x92\x57 - \x92\x58 - \x92\x59 - \x92\x5a - \x92\x5b - \x92\x5c - \x92\x5d - \x92\x5e - \x92\x5f - \x92\x60 - \x92\x61 - \x92\x62 - \x92\x63 - \x92\x64 - \x92\x65 - \x92\x66 - \x92\x67 - \x92\x68 - \x92\x69 - \x92\x6a - \x92\x6b - \x92\x6c - \x92\x6d - \x92\x6e - \x92\x6f - \x92\x70 - \x92\x71 - \x92\x72 - \x92\x73 - \x92\x74 - \x92\x75 - \x92\x76 - \x92\x77 - \x92\x78 - \x92\x79 - \x92\x7a - \x92\x7b - \x92\x7c - \x92\x7d - \x92\x7e - \x92\xa1 - \x92\xa2 - \x92\xa3 - \x92\xa4 - \x92\xa5 - \x92\xa6 - \x92\xa7 - \x92\xa8 - \x92\xa9 - \x92\xaa - \x92\xab - \x92\xac - \x92\xad - \x92\xae - \x92\xb3 - \x92\xb4 - \x92\xb5 - \x92\xb6 - \x92\xb7 - \x92\xb8 - \x92\xb9 - \x92\xba - \x92\xbb - \x92\xbc - \x92\xbd - \x92\xbe - \x92\xbf - \x92\xc0 - \x92\xc1 - \x92\xc2 - \x92\xc3 - \x92\xc4 - \x92\xc5 - \x92\xc6 - \x92\xc7 - \x92\xc9 - \x92\xca - \x92\xcb - \x92\xcc - \x92\xcd - \x92\xce - \x92\xcf - \x92\xd0 - \x92\xd2 - \x92\xd3 - \x92\xd4 - \x92\xd5 - \x92\xd6 - \x92\xd7 - \x92\xd8 - \x92\xd9 - \x92\xda - \x92\xdb - \x92\xdc - \x92\xdd - \x92\xde - \x92\xdf - \x92\xe0 - \x92\xe1 - \x92\xe2 - \x92\xe3 - \x92\xe4 - \x92\xe5 - \x92\xe6 - \x92\xe7 - \x92\xe8 - \x92\xe9 - \x92\xea - \x92\xeb - \x92\xec - \x92\xed - \x92\xee - \x92\xef - \x92\xf0 - \x92\xf1 - \x92\xf2 - \x92\xf3 - \x92\xf4 - \x92\xf5 - \x92\xf6 - \x92\xf7 - \x92\xf8 - \x92\xf9 - \x92\xfa - \x92\xfb - \x92\xfc - \x92\xfd - \x92\xfe - \x93\x40 - \x93\x41 - \x93\x42 - \x93\x43 - \x93\x44 - \x93\x45 - \x93\x46 - \x93\x47 - \x93\x48 - \x93\x49 - \x93\x4a - \x93\x4b - \x93\x4c - \x93\x4d - \x93\x4e - \x93\x4f - \x93\x50 - \x93\x51 - \x93\x52 - \x93\x53 - \x93\x54 - \x93\x55 - \x93\x56 - \x93\x57 - \x93\x58 - \x93\x59 - \x93\x5a - \x93\x5b - \x93\x5c - \x93\x5d - \x93\x5e - \x93\x5f - \x93\x60 - \x93\x61 - \x93\x62 - \x93\x63 - \x93\x64 - \x93\x65 - \x93\x66 - \x93\x67 - \x93\x68 - \x93\x69 - \x93\x6a - \x93\x6b - \x93\x6c - \x93\x6d - \x93\x6e - \x93\x6f - \x93\x70 - \x93\x71 - \x93\x72 - \x93\x73 - \x93\x74 - \x93\x75 - \x93\x76 - \x93\x77 - \x93\x78 - \x93\x79 - \x93\x7a - \x93\x7b - \x93\x7c - \x93\x7d - \x93\x7e - \x93\xa1 - \x93\xa2 - \x93\xa3 - \x93\xa4 - \x93\xa5 - \x93\xa6 - \x93\xa7 - \x93\xa8 - \x93\xa9 - \x93\xaa - \x93\xab - \x93\xac - \x93\xad - \x93\xae - \x93\xaf - \x93\xb0 - \x93\xb1 - \x93\xb2 - \x93\xb3 - \x93\xb4 - \x93\xb5 - \x93\xb6 - \x93\xb7 - \x93\xb8 - \x93\xb9 - \x93\xba - \x93\xbb - \x93\xbc - \x93\xbd - \x93\xbe - \x93\xbf - \x93\xc0 - \x93\xc1 - \x93\xc2 - \x93\xc3 - \x93\xc4 - \x93\xc5 - \x93\xc6 - \x93\xc7 - \x93\xc8 - \x93\xc9 - \x93\xca - \x93\xcb - \x93\xcc - \x93\xcd - \x93\xce - \x93\xcf - \x93\xd0 - \x93\xd1 - \x93\xd2 - \x93\xd3 - \x93\xd4 - \x93\xd5 - \x93\xd6 - \x93\xd7 - \x93\xd8 - \x93\xd9 - \x93\xda - \x93\xdb - \x93\xdc - \x93\xdd - \x93\xde - \x93\xdf - \x93\xe0 - \x93\xe1 - \x93\xe2 - \x93\xe3 - \x93\xe4 - \x93\xe5 - \x93\xe6 - \x93\xe7 - \x93\xe8 - \x93\xe9 - \x93\xea - \x93\xeb - \x93\xec - \x93\xed - \x93\xee - \x93\xef - \x93\xf0 - \x93\xf1 - \x93\xf2 - \x93\xf3 - \x93\xf4 - \x93\xf5 - \x93\xf6 - \x93\xf7 - \x93\xf8 - \x93\xf9 - \x93\xfa - \x93\xfb - \x93\xfc - \x93\xfd - \x93\xfe - \x94\x40 - \x94\x41 - \x94\x42 - \x94\x43 - \x94\x44 - \x94\x45 - \x94\x46 - \x94\x48 - \x94\x49 - \x94\x4a - \x94\x4b - \x94\x4c - \x94\x4d - \x94\x4e - \x94\x4f - \x94\x50 - \x94\x51 - \x94\x52 - \x94\x53 - \x94\x54 - \x94\x55 - \x94\x56 - \x94\x57 - \x94\x58 - \x94\x59 - \x94\x5a - \x94\x5b - \x94\x5c - \x94\x5d - \x94\x5e - \x94\x5f - \x94\x60 - \x94\x61 - \x94\x62 - \x94\x63 - \x94\x64 - \x94\x65 - \x94\x66 - \x94\x67 - \x94\x68 - \x94\x69 - \x94\x6a - \x94\x6b - \x94\x6c - \x94\x6d - \x94\x6e - \x94\x6f - \x94\x70 - \x94\x71 - \x94\x72 - \x94\x73 - \x94\x74 - \x94\x75 - \x94\x76 - \x94\x77 - \x94\x78 - \x94\x79 - \x94\x7a - \x94\x7b - \x94\x7c - \x94\x7d - \x94\x7e - \x94\xa1 - \x94\xa2 - \x94\xa3 - \x94\xa4 - \x94\xa5 - \x94\xa6 - \x94\xa7 - \x94\xa8 - \x94\xa9 - \x94\xaa - \x94\xab - \x94\xac - \x94\xad - \x94\xae - \x94\xaf - \x94\xb0 - \x94\xb1 - \x94\xb2 - \x94\xb3 - \x94\xb4 - \x94\xb5 - \x94\xb6 - \x94\xb7 - \x94\xb8 - \x94\xb9 - \x94\xba - \x94\xbb - \x94\xbc - \x94\xbd - \x94\xbe - \x94\xbf - \x94\xc0 - \x94\xc1 - \x94\xc2 - \x94\xc3 - \x94\xc4 - \x94\xc5 - \x94\xc6 - \x94\xc7 - \x94\xc8 - \x94\xc9 - \x94\xcb - \x94\xcc - \x94\xcd - \x94\xce - \x94\xcf - \x94\xd0 - \x94\xd1 - \x94\xd2 - \x94\xd3 - \x94\xd4 - \x94\xd5 - \x94\xd6 - \x94\xd7 - \x94\xd8 - \x94\xd9 - \x94\xda - \x94\xdb - \x94\xdc - \x94\xdd - \x94\xde - \x94\xdf - \x94\xe0 - \x94\xe1 - \x94\xe2 - \x94\xe3 - \x94\xe4 - \x94\xe5 - \x94\xe6 - \x94\xe7 - \x94\xe8 - \x94\xe9 - \x94\xea - \x94\xeb - \x94\xec - \x94\xed - \x94\xee - \x94\xef - \x94\xf0 - \x94\xf1 - \x94\xf2 - \x94\xf3 - \x94\xf4 - \x94\xf5 - \x94\xf6 - \x94\xf7 - \x94\xf8 - \x94\xf9 - \x94\xfa - \x94\xfb - \x94\xfc - \x94\xfd - \x94\xfe - \x95\x40 - \x95\x41 - \x95\x42 - \x95\x43 - \x95\x44 - \x95\x45 - \x95\x46 - \x95\x47 - \x95\x48 - \x95\x49 - \x95\x4a - \x95\x4b - \x95\x4c - \x95\x4d - \x95\x4e - \x95\x4f - \x95\x50 - \x95\x51 - \x95\x52 - \x95\x53 - \x95\x54 - \x95\x55 - \x95\x56 - \x95\x57 - \x95\x58 - \x95\x59 - \x95\x5a - \x95\x5b - \x95\x5c - \x95\x5d - \x95\x5e - \x95\x5f - \x95\x60 - \x95\x61 - \x95\x62 - \x95\x63 - \x95\x64 - \x95\x65 - \x95\x66 - \x95\x67 - \x95\x68 - \x95\x69 - \x95\x6a - \x95\x6b - \x95\x6c - \x95\x6d - \x95\x6e - \x95\x6f - \x95\x70 - \x95\x71 - \x95\x72 - \x95\x73 - \x95\x74 - \x95\x75 - \x95\x76 - \x95\x77 - \x95\x78 - \x95\x79 - \x95\x7a - \x95\x7b - \x95\x7c - \x95\x7d - \x95\x7e - \x95\xa1 - \x95\xa2 - \x95\xa3 - \x95\xa4 - \x95\xa5 - \x95\xa6 - \x95\xa7 - \x95\xa8 - \x95\xa9 - \x95\xaa - \x95\xab - \x95\xac - \x95\xad - \x95\xae - \x95\xaf - \x95\xb0 - \x95\xb1 - \x95\xb2 - \x95\xb3 - \x95\xb4 - \x95\xb5 - \x95\xb6 - \x95\xb7 - \x95\xb8 - \x95\xb9 - \x95\xba - \x95\xbb - \x95\xbc - \x95\xbd - \x95\xbe - \x95\xbf - \x95\xc0 - \x95\xc1 - \x95\xc2 - \x95\xc3 - \x95\xc4 - \x95\xc5 - \x95\xc6 - \x95\xc7 - \x95\xc8 - \x95\xc9 - \x95\xca - \x95\xcb - \x95\xcc - \x95\xcd - \x95\xce - \x95\xcf - \x95\xd0 - \x95\xd1 - \x95\xd2 - \x95\xd3 - \x95\xd4 - \x95\xd5 - \x95\xd6 - \x95\xd7 - \x95\xd8 - \x95\xda - \x95\xdb - \x95\xdc - \x95\xdd - \x95\xde - \x95\xdf - \x95\xe0 - \x95\xe1 - \x95\xe2 - \x95\xe3 - \x95\xe4 - \x95\xe5 - \x95\xe6 - \x95\xe7 - \x95\xe8 - \x95\xe9 - \x95\xea - \x95\xeb - \x95\xec - \x95\xed - \x95\xee - \x95\xef - \x95\xf0 - \x95\xf1 - \x95\xf2 - \x95\xf3 - \x95\xf4 - \x95\xf5 - \x95\xf6 - \x95\xf7 - \x95\xf8 - \x95\xf9 - \x95\xfa - \x95\xfb - \x95\xfc - \x95\xfd - \x95\xfe - \x96\x40 - \x96\x41 - \x96\x42 - \x96\x43 - \x96\x45 - \x96\x46 - \x96\x47 - \x96\x48 - \x96\x49 - \x96\x4a - \x96\x4b - \x96\x4c - \x96\x4d - \x96\x4e - \x96\x4f - \x96\x50 - \x96\x51 - \x96\x52 - \x96\x53 - \x96\x54 - \x96\x55 - \x96\x56 - \x96\x57 - \x96\x58 - \x96\x59 - \x96\x5a - \x96\x5b - \x96\x5c - \x96\x5d - \x96\x5e - \x96\x5f - \x96\x60 - \x96\x61 - \x96\x62 - \x96\x63 - \x96\x64 - \x96\x65 - \x96\x66 - \x96\x67 - \x96\x68 - \x96\x69 - \x96\x6a - \x96\x6b - \x96\x6c - \x96\x6d - \x96\x6e - \x96\x6f - \x96\x70 - \x96\x71 - \x96\x72 - \x96\x73 - \x96\x74 - \x96\x75 - \x96\x76 - \x96\x77 - \x96\x78 - \x96\x79 - \x96\x7a - \x96\x7b - \x96\x7c - \x96\x7d - \x96\x7e - \x96\xa1 - \x96\xa2 - \x96\xa3 - \x96\xa4 - \x96\xa5 - \x96\xa6 - \x96\xa7 - \x96\xa8 - \x96\xa9 - \x96\xaa - \x96\xab - \x96\xac - \x96\xad - \x96\xae - \x96\xaf - \x96\xb0 - \x96\xb1 - \x96\xb2 - \x96\xb3 - \x96\xb4 - \x96\xb5 - \x96\xb6 - \x96\xb7 - \x96\xb8 - \x96\xb9 - \x96\xba - \x96\xbb - \x96\xbc - \x96\xbd - \x96\xbe - \x96\xbf - \x96\xc0 - \x96\xc1 - \x96\xc2 - \x96\xc3 - \x96\xc4 - \x96\xc5 - \x96\xc6 - \x96\xc7 - \x96\xc8 - \x96\xc9 - \x96\xca - \x96\xcb - \x96\xcc - \x96\xcd - \x96\xce - \x96\xcf - \x96\xd0 - \x96\xd1 - \x96\xd2 - \x96\xd3 - \x96\xd4 - \x96\xd5 - \x96\xd6 - \x96\xd7 - \x96\xd8 - \x96\xd9 - \x96\xda - \x96\xdb - \x96\xdc - \x96\xdd - \x96\xde - \x96\xdf - \x96\xe0 - \x96\xe1 - \x96\xe2 - \x96\xe3 - \x96\xe4 - \x96\xe5 - \x96\xe6 - \x96\xe7 - \x96\xe8 - \x96\xe9 - \x96\xea - \x96\xeb - \x96\xec - \x96\xee - \x96\xef - \x96\xf0 - \x96\xf1 - \x96\xf2 - \x96\xf3 - \x96\xf4 - \x96\xf5 - \x96\xf6 - \x96\xf7 - \x96\xf8 - \x96\xf9 - \x96\xfa - \x96\xfb - \x96\xfd - \x96\xfe - \x97\x40 - \x97\x41 - \x97\x42 - \x97\x43 - \x97\x44 - \x97\x45 - \x97\x46 - \x97\x47 - \x97\x48 - \x97\x49 - \x97\x4a - \x97\x4b - \x97\x4c - \x97\x4d - \x97\x4e - \x97\x4f - \x97\x50 - \x97\x51 - \x97\x52 - \x97\x53 - \x97\x54 - \x97\x55 - \x97\x56 - \x97\x57 - \x97\x58 - \x97\x59 - \x97\x5a - \x97\x5b - \x97\x5c - \x97\x5d - \x97\x5e - \x97\x5f - \x97\x60 - \x97\x61 - \x97\x62 - \x97\x63 - \x97\x64 - \x97\x65 - \x97\x66 - \x97\x67 - \x97\x68 - \x97\x69 - \x97\x6a - \x97\x6b - \x97\x6c - \x97\x6d - \x97\x6e - \x97\x6f - \x97\x70 - \x97\x71 - \x97\x72 - \x97\x73 - \x97\x74 - \x97\x75 - \x97\x76 - \x97\x77 - \x97\x78 - \x97\x79 - \x97\x7a - \x97\x7b - \x97\x7c - \x97\x7d - \x97\x7e - \x97\xa1 - \x97\xa2 - \x97\xa3 - \x97\xa4 - \x97\xa5 - \x97\xa6 - \x97\xa7 - \x97\xa8 - \x97\xa9 - \x97\xaa - \x97\xab - \x97\xac - \x97\xad - \x97\xae - \x97\xaf - \x97\xb0 - \x97\xb1 - \x97\xb2 - \x97\xb3 - \x97\xb4 - \x97\xb5 - \x97\xb6 - \x97\xb7 - \x97\xb8 - \x97\xb9 - \x97\xba - \x97\xbb - \x97\xbc - \x97\xbd - \x97\xbe - \x97\xbf - \x97\xc0 - \x97\xc1 - \x97\xc2 - \x97\xc3 - \x97\xc4 - \x97\xc5 - \x97\xc6 - \x97\xc7 - \x97\xc8 - \x97\xc9 - \x97\xca - \x97\xcb - \x97\xcc - \x97\xcd - \x97\xce - \x97\xcf - \x97\xd0 - \x97\xd1 - \x97\xd2 - \x97\xd3 - \x97\xd4 - \x97\xd5 - \x97\xd6 - \x97\xd7 - \x97\xd8 - \x97\xd9 - \x97\xda - \x97\xdb - \x97\xdc - \x97\xdd - \x97\xde - \x97\xdf - \x97\xe0 - \x97\xe1 - \x97\xe2 - \x97\xe3 - \x97\xe4 - \x97\xe5 - \x97\xe6 - \x97\xe7 - \x97\xe8 - \x97\xe9 - \x97\xea - \x97\xeb - \x97\xec - \x97\xed - \x97\xee - \x97\xef - \x97\xf0 - \x97\xf1 - \x97\xf2 - \x97\xf3 - \x97\xf4 - \x97\xf5 - \x97\xf6 - \x97\xf7 - \x97\xf8 - \x97\xf9 - \x97\xfa - \x97\xfb - \x97\xfc - \x97\xfd - \x97\xfe - \x98\x40 - \x98\x41 - \x98\x42 - \x98\x43 - \x98\x44 - \x98\x45 - \x98\x46 - \x98\x47 - \x98\x48 - \x98\x49 - \x98\x4a - \x98\x4b - \x98\x4c - \x98\x4d - \x98\x4e - \x98\x4f - \x98\x50 - \x98\x51 - \x98\x52 - \x98\x53 - \x98\x54 - \x98\x55 - \x98\x56 - \x98\x57 - \x98\x58 - \x98\x59 - \x98\x5a - \x98\x5b - \x98\x5c - \x98\x5d - \x98\x5e - \x98\x5f - \x98\x60 - \x98\x61 - \x98\x62 - \x98\x63 - \x98\x64 - \x98\x65 - \x98\x66 - \x98\x67 - \x98\x68 - \x98\x69 - \x98\x6a - \x98\x6b - \x98\x6c - \x98\x6d - \x98\x6e - \x98\x6f - \x98\x70 - \x98\x71 - \x98\x72 - \x98\x73 - \x98\x74 - \x98\x75 - \x98\x76 - \x98\x77 - \x98\x78 - \x98\x79 - \x98\x7a - \x98\x7b - \x98\x7c - \x98\x7d - \x98\x7e - \x98\xa1 - \x98\xa2 - \x98\xa3 - \x98\xa4 - \x98\xa5 - \x98\xa6 - \x98\xa7 - \x98\xa8 - \x98\xa9 - \x98\xaa - \x98\xab - \x98\xac - \x98\xad - \x98\xae - \x98\xaf - \x98\xb0 - \x98\xb1 - \x98\xb2 - \x98\xb3 - \x98\xb4 - \x98\xb5 - \x98\xb6 - \x98\xb7 - \x98\xb8 - \x98\xb9 - \x98\xba - \x98\xbb - \x98\xbc - \x98\xbd - \x98\xbe - \x98\xbf - \x98\xc0 - \x98\xc1 - \x98\xc2 - \x98\xc3 - \x98\xc4 - \x98\xc5 - \x98\xc6 - \x98\xc7 - \x98\xc8 - \x98\xc9 - \x98\xca - \x98\xcb - \x98\xcc - \x98\xcd - \x98\xce - \x98\xcf - \x98\xd0 - \x98\xd1 - \x98\xd2 - \x98\xd3 - \x98\xd4 - \x98\xd5 - \x98\xd6 - \x98\xd7 - \x98\xd8 - \x98\xd9 - \x98\xda - \x98\xdb - \x98\xdc - \x98\xdd - \x98\xde - \x98\xdf - \x98\xe0 - \x98\xe1 - \x98\xe2 - \x98\xe3 - \x98\xe4 - \x98\xe5 - \x98\xe6 - \x98\xe7 - \x98\xe8 - \x98\xe9 - \x98\xea - \x98\xeb - \x98\xec - \x98\xed - \x98\xee - \x98\xef - \x98\xf0 - \x98\xf1 - \x98\xf2 - \x98\xf3 - \x98\xf4 - \x98\xf5 - \x98\xf6 - \x98\xf7 - \x98\xf8 - \x98\xf9 - \x98\xfa - \x98\xfb - \x98\xfc - \x98\xfd - \x98\xfe - \x99\x40 - \x99\x41 - \x99\x42 - \x99\x43 - \x99\x44 - \x99\x45 - \x99\x46 - \x99\x47 - \x99\x48 - \x99\x49 - \x99\x4a - \x99\x4b - \x99\x4c - \x99\x4d - \x99\x4e - \x99\x4f - \x99\x50 - \x99\x51 - \x99\x52 - \x99\x53 - \x99\x54 - \x99\x55 - \x99\x56 - \x99\x57 - \x99\x58 - \x99\x59 - \x99\x5a - \x99\x5b - \x99\x5c - \x99\x5d - \x99\x5e - \x99\x5f - \x99\x60 - \x99\x61 - \x99\x62 - \x99\x63 - \x99\x64 - \x99\x65 - \x99\x66 - \x99\x67 - \x99\x68 - \x99\x69 - \x99\x6a - \x99\x6b - \x99\x6c - \x99\x6d - \x99\x6e - \x99\x6f - \x99\x70 - \x99\x71 - \x99\x72 - \x99\x73 - \x99\x74 - \x99\x75 - \x99\x76 - \x99\x77 - \x99\x78 - \x99\x79 - \x99\x7a - \x99\x7b - \x99\x7c - \x99\x7d - \x99\x7e - \x99\xa1 - \x99\xa2 - \x99\xa3 - \x99\xa4 - \x99\xa5 - \x99\xa6 - \x99\xa7 - \x99\xa8 - \x99\xa9 - \x99\xaa - \x99\xab - \x99\xac - \x99\xad - \x99\xae - \x99\xaf - \x99\xb0 - \x99\xb1 - \x99\xb2 - \x99\xb3 - \x99\xb4 - \x99\xb5 - \x99\xb6 - \x99\xb7 - \x99\xb8 - \x99\xb9 - \x99\xba - \x99\xbb - \x99\xbc - \x99\xbd - \x99\xbe - \x99\xbf - \x99\xc0 - \x99\xc1 - \x99\xc2 - \x99\xc3 - \x99\xc4 - \x99\xc5 - \x99\xc6 - \x99\xc7 - \x99\xc8 - \x99\xc9 - \x99\xca - \x99\xcb - \x99\xcc - \x99\xcd - \x99\xce - \x99\xcf - \x99\xd0 - \x99\xd1 - \x99\xd2 - \x99\xd3 - \x99\xd4 - \x99\xd5 - \x99\xd6 - \x99\xd7 - \x99\xd8 - \x99\xd9 - \x99\xda - \x99\xdb - \x99\xdc - \x99\xdd - \x99\xde - \x99\xdf - \x99\xe0 - \x99\xe1 - \x99\xe2 - \x99\xe3 - \x99\xe4 - \x99\xe5 - \x99\xe6 - \x99\xe7 - \x99\xe8 - \x99\xe9 - \x99\xea - \x99\xeb - \x99\xec - \x99\xed - \x99\xee - \x99\xef - \x99\xf0 - \x99\xf1 - \x99\xf2 - \x99\xf3 - \x99\xf4 - \x99\xf5 - \x99\xf6 - \x99\xf7 - \x99\xf8 - \x99\xf9 - \x99\xfa - \x99\xfb - \x99\xfc - \x99\xfd - \x99\xfe - \x9a\x40 - \x9a\x41 - \x9a\x42 - \x9a\x43 - \x9a\x44 - \x9a\x45 - \x9a\x46 - \x9a\x47 - \x9a\x48 - \x9a\x49 - \x9a\x4a - \x9a\x4b - \x9a\x4c - \x9a\x4d - \x9a\x4e - \x9a\x4f - \x9a\x50 - \x9a\x51 - \x9a\x52 - \x9a\x53 - \x9a\x54 - \x9a\x55 - \x9a\x56 - \x9a\x57 - \x9a\x58 - \x9a\x59 - \x9a\x5a - \x9a\x5b - \x9a\x5c - \x9a\x5d - \x9a\x5e - \x9a\x5f - \x9a\x60 - \x9a\x61 - \x9a\x62 - \x9a\x63 - \x9a\x64 - \x9a\x65 - \x9a\x66 - \x9a\x67 - \x9a\x68 - \x9a\x69 - \x9a\x6a - \x9a\x6b - \x9a\x6c - \x9a\x6d - \x9a\x6e - \x9a\x6f - \x9a\x70 - \x9a\x71 - \x9a\x72 - \x9a\x73 - \x9a\x74 - \x9a\x75 - \x9a\x76 - \x9a\x77 - \x9a\x78 - \x9a\x79 - \x9a\x7a - \x9a\x7b - \x9a\x7c - \x9a\x7d - \x9a\x7e - \x9a\xa1 - \x9a\xa2 - \x9a\xa3 - \x9a\xa4 - \x9a\xa5 - \x9a\xa6 - \x9a\xa7 - \x9a\xa8 - \x9a\xa9 - \x9a\xaa - \x9a\xab - \x9a\xac - \x9a\xad - \x9a\xae - \x9a\xaf - \x9a\xb0 - \x9a\xb1 - \x9a\xb2 - \x9a\xb3 - \x9a\xb4 - \x9a\xb5 - \x9a\xb6 - \x9a\xb7 - \x9a\xb8 - \x9a\xb9 - \x9a\xba - \x9a\xbb - \x9a\xbc - \x9a\xbd - \x9a\xbe - \x9a\xbf - \x9a\xc0 - \x9a\xc1 - \x9a\xc2 - \x9a\xc3 - \x9a\xc4 - \x9a\xc5 - \x9a\xc6 - \x9a\xc7 - \x9a\xc8 - \x9a\xc9 - \x9a\xca - \x9a\xcb - \x9a\xcc - \x9a\xcd - \x9a\xce - \x9a\xcf - \x9a\xd0 - \x9a\xd1 - \x9a\xd2 - \x9a\xd3 - \x9a\xd4 - \x9a\xd5 - \x9a\xd6 - \x9a\xd7 - \x9a\xd8 - \x9a\xd9 - \x9a\xda - \x9a\xdb - \x9a\xdc - \x9a\xdd - \x9a\xde - \x9a\xdf - \x9a\xe0 - \x9a\xe1 - \x9a\xe2 - \x9a\xe3 - \x9a\xe4 - \x9a\xe5 - \x9a\xe6 - \x9a\xe7 - \x9a\xe8 - \x9a\xe9 - \x9a\xea - \x9a\xeb - \x9a\xec - \x9a\xed - \x9a\xee - \x9a\xef - \x9a\xf0 - \x9a\xf1 - \x9a\xf2 - \x9a\xf3 - \x9a\xf4 - \x9a\xf5 - \x9a\xf6 - \x9a\xf7 - \x9a\xf8 - \x9a\xf9 - \x9a\xfa - \x9a\xfb - \x9a\xfc - \x9a\xfd - \x9a\xfe - \x9b\x40 - \x9b\x41 - \x9b\x42 - \x9b\x43 - \x9b\x44 - \x9b\x45 - \x9b\x46 - \x9b\x47 - \x9b\x48 - \x9b\x49 - \x9b\x4a - \x9b\x4b - \x9b\x4c - \x9b\x4d - \x9b\x4e - \x9b\x4f - \x9b\x50 - \x9b\x51 - \x9b\x52 - \x9b\x53 - \x9b\x54 - \x9b\x55 - \x9b\x56 - \x9b\x57 - \x9b\x58 - \x9b\x59 - \x9b\x5a - \x9b\x5b - \x9b\x5c - \x9b\x5d - \x9b\x5e - \x9b\x5f - \x9b\x60 - \x9b\x62 - \x9b\x63 - \x9b\x64 - \x9b\x65 - \x9b\x66 - \x9b\x67 - \x9b\x68 - \x9b\x69 - \x9b\x6a - \x9b\x6b - \x9b\x6c - \x9b\x6d - \x9b\x6e - \x9b\x6f - \x9b\x70 - \x9b\x71 - \x9b\x72 - \x9b\x73 - \x9b\x74 - \x9b\x75 - \x9b\x77 - \x9b\x79 - \x9b\x7a - \x9b\x7c - \x9b\x7d - \x9b\x7e - \x9b\xa1 - \x9b\xa2 - \x9b\xa3 - \x9b\xa4 - \x9b\xa5 - \x9b\xa6 - \x9b\xa7 - \x9b\xa8 - \x9b\xa9 - \x9b\xaa - \x9b\xab - \x9b\xac - \x9b\xad - \x9b\xae - \x9b\xaf - \x9b\xb0 - \x9b\xb1 - \x9b\xb2 - \x9b\xb3 - \x9b\xb4 - \x9b\xb5 - \x9b\xb6 - \x9b\xb7 - \x9b\xb8 - \x9b\xb9 - \x9b\xba - \x9b\xbb - \x9b\xbc - \x9b\xbd - \x9b\xbe - \x9b\xbf - \x9b\xc0 - \x9b\xc1 - \x9b\xc2 - \x9b\xc3 - \x9b\xc4 - \x9b\xc5 - \x9b\xc7 - \x9b\xc8 - \x9b\xc9 - \x9b\xca - \x9b\xcb - \x9b\xcc - \x9b\xcd - \x9b\xce - \x9b\xcf - \x9b\xd0 - \x9b\xd1 - \x9b\xd2 - \x9b\xd3 - \x9b\xd4 - \x9b\xd5 - \x9b\xd6 - \x9b\xd7 - \x9b\xd8 - \x9b\xd9 - \x9b\xda - \x9b\xdb - \x9b\xdc - \x9b\xdd - \x9b\xdf - \x9b\xe0 - \x9b\xe1 - \x9b\xe2 - \x9b\xe3 - \x9b\xe4 - \x9b\xe5 - \x9b\xe6 - \x9b\xe7 - \x9b\xe8 - \x9b\xe9 - \x9b\xea - \x9b\xeb - \x9b\xed - \x9b\xee - \x9b\xef - \x9b\xf0 - \x9b\xf1 - \x9b\xf2 - \x9b\xf3 - \x9b\xf4 - \x9b\xf5 - \x9b\xf7 - \x9b\xf8 - \x9b\xf9 - \x9b\xfa - \x9b\xfb - \x9b\xfc - \x9b\xfd - \x9b\xfe - \x9c\x40 - \x9c\x41 - \x9c\x43 - \x9c\x44 - \x9c\x45 - \x9c\x46 - \x9c\x47 - \x9c\x48 - \x9c\x49 - \x9c\x4a - \x9c\x4b - \x9c\x4c - \x9c\x4d - \x9c\x4e - \x9c\x4f - \x9c\x50 - \x9c\x51 - \x9c\x52 - \x9c\x54 - \x9c\x55 - \x9c\x56 - \x9c\x57 - \x9c\x58 - \x9c\x59 - \x9c\x5a - \x9c\x5b - \x9c\x5c - \x9c\x5d - \x9c\x5e - \x9c\x5f - \x9c\x60 - \x9c\x61 - \x9c\x63 - \x9c\x64 - \x9c\x65 - \x9c\x66 - \x9c\x67 - \x9c\x69 - \x9c\x6a - \x9c\x6c - \x9c\x6d - \x9c\x6e - \x9c\x6f - \x9c\x70 - \x9c\x71 - \x9c\x72 - \x9c\x73 - \x9c\x74 - \x9c\x75 - \x9c\x76 - \x9c\x78 - \x9c\x79 - \x9c\x7a - \x9c\x7b - \x9c\x7c - \x9c\x7d - \x9c\x7e - \x9c\xa1 - \x9c\xa2 - \x9c\xa3 - \x9c\xa4 - \x9c\xa5 - \x9c\xa6 - \x9c\xa7 - \x9c\xa8 - \x9c\xa9 - \x9c\xaa - \x9c\xab - \x9c\xac - \x9c\xad - \x9c\xae - \x9c\xaf - \x9c\xb0 - \x9c\xb1 - \x9c\xb2 - \x9c\xb3 - \x9c\xb4 - \x9c\xb5 - \x9c\xb6 - \x9c\xb7 - \x9c\xb8 - \x9c\xb9 - \x9c\xba - \x9c\xbb - \x9c\xbe - \x9c\xbf - \x9c\xc0 - \x9c\xc1 - \x9c\xc2 - \x9c\xc3 - \x9c\xc4 - \x9c\xc5 - \x9c\xc6 - \x9c\xc7 - \x9c\xc8 - \x9c\xc9 - \x9c\xca - \x9c\xcb - \x9c\xcc - \x9c\xcd - \x9c\xce - \x9c\xcf - \x9c\xd1 - \x9c\xd2 - \x9c\xd3 - \x9c\xd4 - \x9c\xd5 - \x9c\xd6 - \x9c\xd7 - \x9c\xd8 - \x9c\xd9 - \x9c\xda - \x9c\xdb - \x9c\xdc - \x9c\xdd - \x9c\xde - \x9c\xdf - \x9c\xe0 - \x9c\xe1 - \x9c\xe2 - \x9c\xe3 - \x9c\xe4 - \x9c\xe5 - \x9c\xe6 - \x9c\xe7 - \x9c\xe8 - \x9c\xe9 - \x9c\xea - \x9c\xeb - \x9c\xec - \x9c\xed - \x9c\xee - \x9c\xef - \x9c\xf0 - \x9c\xf1 - \x9c\xf2 - \x9c\xf3 - \x9c\xf4 - \x9c\xf5 - \x9c\xf6 - \x9c\xf7 - \x9c\xf8 - \x9c\xf9 - \x9c\xfa - \x9c\xfb - \x9c\xfc - \x9c\xfd - \x9c\xfe - \x9d\x40 - \x9d\x41 - \x9d\x42 - \x9d\x43 - \x9d\x44 - \x9d\x45 - \x9d\x46 - \x9d\x47 - \x9d\x48 - \x9d\x49 - \x9d\x4a - \x9d\x4b - \x9d\x4c - \x9d\x4d - \x9d\x4e - \x9d\x4f - \x9d\x50 - \x9d\x51 - \x9d\x52 - \x9d\x53 - \x9d\x54 - \x9d\x55 - \x9d\x56 - \x9d\x58 - \x9d\x59 - \x9d\x5b - \x9d\x5c - \x9d\x5d - \x9d\x5e - \x9d\x5f - \x9d\x60 - \x9d\x61 - \x9d\x62 - \x9d\x63 - \x9d\x64 - \x9d\x65 - \x9d\x66 - \x9d\x67 - \x9d\x68 - \x9d\x69 - \x9d\x6a - \x9d\x6b - \x9d\x6c - \x9d\x6d - \x9d\x6e - \x9d\x6f - \x9d\x70 - \x9d\x71 - \x9d\x72 - \x9d\x73 - \x9d\x74 - \x9d\x75 - \x9d\x76 - \x9d\x77 - \x9d\x78 - \x9d\x79 - \x9d\x7a - \x9d\x7b - \x9d\x7c - \x9d\x7d - \x9d\x7e - \x9d\xa1 - \x9d\xa2 - \x9d\xa3 - \x9d\xa4 - \x9d\xa5 - \x9d\xa6 - \x9d\xa7 - \x9d\xa8 - \x9d\xa9 - \x9d\xaa - \x9d\xab - \x9d\xac - \x9d\xad - \x9d\xae - \x9d\xaf - \x9d\xb0 - \x9d\xb1 - \x9d\xb2 - \x9d\xb3 - \x9d\xb4 - \x9d\xb5 - \x9d\xb6 - \x9d\xb7 - \x9d\xb8 - \x9d\xb9 - \x9d\xba - \x9d\xbb - \x9d\xbc - \x9d\xbd - \x9d\xbe - \x9d\xbf - \x9d\xc0 - \x9d\xc1 - \x9d\xc2 - \x9d\xc3 - \x9d\xc5 - \x9d\xc6 - \x9d\xc7 - \x9d\xc8 - \x9d\xc9 - \x9d\xca - \x9d\xcb - \x9d\xcc - \x9d\xcd - \x9d\xce - \x9d\xcf - \x9d\xd0 - \x9d\xd1 - \x9d\xd2 - \x9d\xd3 - \x9d\xd4 - \x9d\xd5 - \x9d\xd6 - \x9d\xd7 - \x9d\xd8 - \x9d\xd9 - \x9d\xda - \x9d\xdb - \x9d\xdc - \x9d\xdd - \x9d\xde - \x9d\xdf - \x9d\xe0 - \x9d\xe1 - \x9d\xe2 - \x9d\xe3 - \x9d\xe4 - \x9d\xe5 - \x9d\xe6 - \x9d\xe7 - \x9d\xe8 - \x9d\xe9 - \x9d\xea - \x9d\xeb - \x9d\xec - \x9d\xed - \x9d\xee - \x9d\xef - \x9d\xf0 - \x9d\xf1 - \x9d\xf2 - \x9d\xf3 - \x9d\xf4 - \x9d\xf5 - \x9d\xf6 - \x9d\xf7 - \x9d\xf8 - \x9d\xf9 - \x9d\xfa - \x9d\xfb - \x9d\xfc - \x9d\xfd - \x9d\xfe - \x9e\x40 - \x9e\x41 - \x9e\x42 - \x9e\x43 - \x9e\x44 - \x9e\x45 - \x9e\x46 - \x9e\x47 - \x9e\x48 - \x9e\x49 - \x9e\x4a - \x9e\x4b - \x9e\x4c - \x9e\x4d - \x9e\x4e - \x9e\x4f - \x9e\x50 - \x9e\x51 - \x9e\x52 - \x9e\x53 - \x9e\x54 - \x9e\x55 - \x9e\x56 - \x9e\x57 - \x9e\x58 - \x9e\x59 - \x9e\x5a - \x9e\x5b - \x9e\x5c - \x9e\x5d - \x9e\x5e - \x9e\x5f - \x9e\x60 - \x9e\x61 - \x9e\x62 - \x9e\x63 - \x9e\x64 - \x9e\x65 - \x9e\x66 - \x9e\x67 - \x9e\x68 - \x9e\x69 - \x9e\x6a - \x9e\x6b - \x9e\x6c - \x9e\x6d - \x9e\x6e - \x9e\x6f - \x9e\x70 - \x9e\x71 - \x9e\x72 - \x9e\x73 - \x9e\x74 - \x9e\x75 - \x9e\x76 - \x9e\x77 - \x9e\x78 - \x9e\x79 - \x9e\x7a - \x9e\x7b - \x9e\x7c - \x9e\x7d - \x9e\x7e - \x9e\xa1 - \x9e\xa2 - \x9e\xa3 - \x9e\xa4 - \x9e\xa5 - \x9e\xa6 - \x9e\xa7 - \x9e\xa8 - \x9e\xaa - \x9e\xab - \x9e\xad - \x9e\xae - \x9e\xaf - \x9e\xb0 - \x9e\xb1 - \x9e\xb2 - \x9e\xb3 - \x9e\xb4 - \x9e\xb5 - \x9e\xb6 - \x9e\xb7 - \x9e\xb8 - \x9e\xb9 - \x9e\xba - \x9e\xbb - \x9e\xbc - \x9e\xbd - \x9e\xbe - \x9e\xbf - \x9e\xc0 - \x9e\xc1 - \x9e\xc2 - \x9e\xc3 - \x9e\xc5 - \x9e\xc6 - \x9e\xc7 - \x9e\xc8 - \x9e\xc9 - \x9e\xca - \x9e\xcb - \x9e\xcc - \x9e\xcd - \x9e\xce - \x9e\xcf - \x9e\xd0 - \x9e\xd1 - \x9e\xd2 - \x9e\xd3 - \x9e\xd4 - \x9e\xd5 - \x9e\xd6 - \x9e\xd7 - \x9e\xd8 - \x9e\xd9 - \x9e\xda - \x9e\xdb - \x9e\xdc - \x9e\xdd - \x9e\xde - \x9e\xdf - \x9e\xe0 - \x9e\xe1 - \x9e\xe2 - \x9e\xe3 - \x9e\xe4 - \x9e\xe5 - \x9e\xe6 - \x9e\xe7 - \x9e\xe8 - \x9e\xe9 - \x9e\xea - \x9e\xeb - \x9e\xec - \x9e\xed - \x9e\xee - \x9e\xf0 - \x9e\xf1 - \x9e\xf2 - \x9e\xf3 - \x9e\xf5 - \x9e\xf6 - \x9e\xf7 - \x9e\xf8 - \x9e\xf9 - \x9e\xfa - \x9e\xfb - \x9e\xfc - \x9e\xfe - \x9f\x40 - \x9f\x41 - \x9f\x42 - \x9f\x43 - \x9f\x44 - \x9f\x45 - \x9f\x46 - \x9f\x47 - \x9f\x48 - \x9f\x49 - \x9f\x4a - \x9f\x4b - \x9f\x4c - \x9f\x4d - \x9f\x4f - \x9f\x50 - \x9f\x51 - \x9f\x52 - \x9f\x53 - \x9f\x54 - \x9f\x55 - \x9f\x56 - \x9f\x57 - \x9f\x58 - \x9f\x59 - \x9f\x5a - \x9f\x5b - \x9f\x5c - \x9f\x5d - \x9f\x5e - \x9f\x5f - \x9f\x61 - \x9f\x62 - \x9f\x63 - \x9f\x64 - \x9f\x65 - \x9f\x67 - \x9f\x68 - \x9f\x69 - \x9f\x6a - \x9f\x6b - \x9f\x6c - \x9f\x6d - \x9f\x6e - \x9f\x6f - \x9f\x70 - \x9f\x71 - \x9f\x72 - \x9f\x73 - \x9f\x74 - \x9f\x75 - \x9f\x76 - \x9f\x77 - \x9f\x78 - \x9f\x79 - \x9f\x7a - \x9f\x7b - \x9f\x7c - \x9f\x7d - \x9f\x7e - \x9f\xa1 - \x9f\xa2 - \x9f\xa3 - \x9f\xa4 - \x9f\xa5 - \x9f\xa6 - \x9f\xa7 - \x9f\xa8 - \x9f\xa9 - \x9f\xaa - \x9f\xab - \x9f\xac - \x9f\xae - \x9f\xaf - \x9f\xb0 - \x9f\xb2 - \x9f\xb3 - \x9f\xb4 - \x9f\xb5 - \x9f\xb6 - \x9f\xb7 - \x9f\xb8 - \x9f\xb9 - \x9f\xba - \x9f\xbb - \x9f\xbc - \x9f\xbd - \x9f\xbe - \x9f\xbf - \x9f\xc1 - \x9f\xc2 - \x9f\xc3 - \x9f\xc4 - \x9f\xc5 - \x9f\xc6 - \x9f\xc7 - \x9f\xc9 - \x9f\xca - \x9f\xcc - \x9f\xcd - \x9f\xce - \x9f\xcf - \x9f\xd0 - \x9f\xd1 - \x9f\xd2 - \x9f\xd3 - \x9f\xd4 - \x9f\xd5 - \x9f\xd6 - \x9f\xd7 - \x9f\xd9 - \x9f\xdb - \x9f\xdc - \x9f\xdd - \x9f\xde - \x9f\xdf - \x9f\xe0 - \x9f\xe1 - \x9f\xe2 - \x9f\xe3 - \x9f\xe4 - \x9f\xe5 - \x9f\xe7 - \x9f\xe8 - \x9f\xe9 - \x9f\xeb - \x9f\xec - \x9f\xed - \x9f\xee - \x9f\xf0 - \x9f\xf1 - \x9f\xf2 - \x9f\xf3 - \x9f\xf4 - \x9f\xf5 - \x9f\xf6 - \x9f\xf7 - \x9f\xf8 - \x9f\xf9 - \x9f\xfa - \x9f\xfb - \x9f\xfc - \x9f\xfd - \x9f\xfe - \xa0\x40 - \xa0\x41 - \xa0\x42 - \xa0\x43 - \xa0\x44 - \xa0\x45 - \xa0\x46 - \xa0\x47 - \xa0\x48 - \xa0\x49 - \xa0\x4a - \xa0\x4b - \xa0\x4c - \xa0\x4d - \xa0\x4e - \xa0\x4f - \xa0\x50 - \xa0\x51 - \xa0\x52 - \xa0\x53 - \xa0\x55 - \xa0\x56 - \xa0\x58 - \xa0\x59 - \xa0\x5b - \xa0\x5c - \xa0\x5d - \xa0\x5e - \xa0\x5f - \xa0\x60 - \xa0\x61 - \xa0\x64 - \xa0\x65 - \xa0\x66 - \xa0\x67 - \xa0\x68 - \xa0\x69 - \xa0\x6a - \xa0\x6b - \xa0\x6c - \xa0\x6d - \xa0\x6e - \xa0\x6f - \xa0\x70 - \xa0\x71 - \xa0\x73 - \xa0\x74 - \xa0\x75 - \xa0\x76 - \xa0\x78 - \xa0\x79 - \xa0\x7a - \xa0\x7b - \xa0\x7c - \xa0\x7d - \xa0\x7e - \xa0\xa1 - \xa0\xa2 - \xa0\xa3 - \xa0\xa4 - \xa0\xa6 - \xa0\xa7 - \xa0\xa8 - \xa0\xa9 - \xa0\xaa - \xa0\xab - \xa0\xac - \xa0\xae - \xa0\xb0 - \xa0\xb1 - \xa0\xb2 - \xa0\xb3 - \xa0\xb4 - \xa0\xb5 - \xa0\xb6 - \xa0\xb7 - \xa0\xb8 - \xa0\xb9 - \xa0\xba - \xa0\xbb - \xa0\xbc - \xa0\xbd - \xa0\xbe - \xa0\xbf - \xa0\xc0 - \xa0\xc1 - \xa0\xc2 - \xa0\xc3 - \xa0\xc4 - \xa0\xc5 - \xa0\xc6 - \xa0\xc7 - \xa0\xc8 - \xa0\xc9 - \xa0\xca - \xa0\xcb - \xa0\xcc - \xa0\xcd - \xa0\xce - \xa0\xcf - \xa0\xd0 - \xa0\xd1 - \xa0\xd2 - \xa0\xd4 - \xa0\xd6 - \xa0\xd7 - \xa0\xd8 - \xa0\xd9 - \xa0\xda - \xa0\xdb - \xa0\xdc - \xa0\xdd - \xa0\xde - \xa0\xe0 - \xa0\xe2 - \xa0\xe3 - \xa0\xe5 - \xa0\xe6 - \xa0\xe7 - \xa0\xe8 - \xa0\xe9 - \xa0\xea - \xa0\xeb - \xa0\xec - \xa0\xed - \xa0\xee - \xa0\xef - \xa0\xf0 - \xa0\xf1 - \xa0\xf2 - \xa0\xf3 - \xa0\xf4 - \xa0\xf5 - \xa0\xf6 - \xa0\xf7 - \xa0\xf8 - \xa0\xf9 - \xa0\xfa - \xa0\xfb - \xa0\xfc - \xa0\xfd - \xa0\xfe - \xa1\x40 - \xa1\x41 - \xa1\x42 - \xa1\x43 - \xa1\x44 - \xa1\x45 - \xa1\x46 - \xa1\x47 - \xa1\x48 - \xa1\x49 - \xa1\x4a - \xa1\x4b - \xa1\x4c - \xa1\x4d - \xa1\x4e - \xa1\x4f - \xa1\x50 - \xa1\x51 - \xa1\x52 - \xa1\x53 - \xa1\x54 - \xa1\x55 - \xa1\x56 - \xa1\x57 - \xa1\x58 - \xa1\x59 - \xa1\x5b - \xa1\x5c - \xa1\x5d - \xa1\x5e - \xa1\x5f - \xa1\x60 - \xa1\x61 - \xa1\x62 - \xa1\x63 - \xa1\x64 - \xa1\x65 - \xa1\x66 - \xa1\x67 - \xa1\x68 - \xa1\x69 - \xa1\x6a - \xa1\x6b - \xa1\x6c - \xa1\x6d - \xa1\x6e - \xa1\x6f - \xa1\x70 - \xa1\x71 - \xa1\x72 - \xa1\x73 - \xa1\x74 - \xa1\x75 - \xa1\x76 - \xa1\x77 - \xa1\x78 - \xa1\x79 - \xa1\x7a - \xa1\x7b - \xa1\x7c - \xa1\x7d - \xa1\x7e - \xa1\xa1 - \xa1\xa2 - \xa1\xa3 - \xa1\xa4 - \xa1\xa5 - \xa1\xa6 - \xa1\xa7 - \xa1\xa8 - \xa1\xa9 - \xa1\xaa - \xa1\xab - \xa1\xac - \xa1\xad - \xa1\xae - \xa1\xaf - \xa1\xb0 - \xa1\xb1 - \xa1\xb2 - \xa1\xb3 - \xa1\xb4 - \xa1\xb5 - \xa1\xb6 - \xa1\xb7 - \xa1\xb8 - \xa1\xb9 - \xa1\xba - \xa1\xbb - \xa1\xbc - \xa1\xbd - \xa1\xbe - \xa1\xbf - \xa1\xc0 - \xa1\xc1 - \xa1\xc2 - \xa1\xc4 - \xa1\xc6 - \xa1\xc7 - \xa1\xc8 - \xa1\xc9 - \xa1\xca - \xa1\xcb - \xa1\xcc - \xa1\xcd - \xa1\xce - \xa1\xcf - \xa1\xd0 - \xa1\xd1 - \xa1\xd2 - \xa1\xd3 - \xa1\xd4 - \xa1\xd5 - \xa1\xd6 - \xa1\xd7 - \xa1\xd8 - \xa1\xd9 - \xa1\xda - \xa1\xdb - \xa1\xdc - \xa1\xdd - \xa1\xde - \xa1\xdf - \xa1\xe0 - \xa1\xe1 - \xa1\xe2 - \xa1\xe3 - \xa1\xe4 - \xa1\xe5 - \xa1\xe6 - \xa1\xe7 - \xa1\xe8 - \xa1\xe9 - \xa1\xea - \xa1\xeb - \xa1\xec - \xa1\xed - \xa1\xee - \xa1\xef - \xa1\xf0 - \xa1\xf1 - \xa1\xf2 - \xa1\xf3 - \xa1\xf4 - \xa1\xf5 - \xa1\xf6 - \xa1\xf7 - \xa1\xf8 - \xa1\xf9 - \xa1\xfa - \xa1\xfb - \xa1\xfc - \xa1\xfd - \xa2\x41 - \xa2\x42 - \xa2\x43 - \xa2\x44 - \xa2\x45 - \xa2\x46 - \xa2\x47 - \xa2\x48 - \xa2\x49 - \xa2\x4a - \xa2\x4b - \xa2\x4c - \xa2\x4d - \xa2\x4e - \xa2\x4f - \xa2\x50 - \xa2\x51 - \xa2\x52 - \xa2\x53 - \xa2\x54 - \xa2\x55 - \xa2\x56 - \xa2\x57 - \xa2\x58 - \xa2\x59 - \xa2\x5a - \xa2\x5b - \xa2\x5c - \xa2\x5d - \xa2\x5e - \xa2\x5f - \xa2\x60 - \xa2\x61 - \xa2\x62 - \xa2\x63 - \xa2\x64 - \xa2\x65 - \xa2\x66 - \xa2\x67 - \xa2\x68 - \xa2\x69 - \xa2\x6a - \xa2\x6b - \xa2\x6c - \xa2\x6d - \xa2\x6e - \xa2\x6f - \xa2\x70 - \xa2\x71 - \xa2\x72 - \xa2\x73 - \xa2\x74 - \xa2\x75 - \xa2\x76 - \xa2\x77 - \xa2\x78 - \xa2\x79 - \xa2\x7a - \xa2\x7b - \xa2\x7c - \xa2\x7d - \xa2\x7e - \xa2\xa1 - \xa2\xa2 - \xa2\xa3 - \xa2\xa4 - \xa2\xa5 - \xa2\xa6 - \xa2\xa7 - \xa2\xa8 - \xa2\xa9 - \xa2\xaa - \xa2\xab - \xa2\xac - \xa2\xad - \xa2\xae - \xa2\xaf - \xa2\xb0 - \xa2\xb1 - \xa2\xb2 - \xa2\xb3 - \xa2\xb4 - \xa2\xb5 - \xa2\xb6 - \xa2\xb7 - \xa2\xb8 - \xa2\xb9 - \xa2\xba - \xa2\xbb - \xa2\xbc - \xa2\xbd - \xa2\xbe - \xa2\xbf - \xa2\xc0 - \xa2\xc1 - \xa2\xc2 - \xa2\xc3 - \xa2\xc4 - \xa2\xc5 - \xa2\xc6 - \xa2\xc7 - \xa2\xc8 - \xa2\xc9 - \xa2\xca - \xa2\xcb - \xa2\xcd - \xa2\xcf - \xa2\xd0 - \xa2\xd1 - \xa2\xd2 - \xa2\xd3 - \xa2\xd4 - \xa2\xd5 - \xa2\xd6 - \xa2\xd7 - \xa2\xd8 - \xa2\xd9 - \xa2\xda - \xa2\xdb - \xa2\xdc - \xa2\xdd - \xa2\xde - \xa2\xdf - \xa2\xe0 - \xa2\xe1 - \xa2\xe2 - \xa2\xe3 - \xa2\xe4 - \xa2\xe5 - \xa2\xe6 - \xa2\xe7 - \xa2\xe8 - \xa2\xe9 - \xa2\xea - \xa2\xeb - \xa2\xec - \xa2\xed - \xa2\xee - \xa2\xef - \xa2\xf0 - \xa2\xf1 - \xa2\xf2 - \xa2\xf3 - \xa2\xf4 - \xa2\xf5 - \xa2\xf6 - \xa2\xf7 - \xa2\xf8 - \xa2\xf9 - \xa2\xfa - \xa2\xfb - \xa2\xfc - \xa2\xfd - \xa2\xfe - \xa3\x40 - \xa3\x41 - \xa3\x42 - \xa3\x43 - \xa3\x44 - \xa3\x45 - \xa3\x46 - \xa3\x47 - \xa3\x48 - \xa3\x49 - \xa3\x4a - \xa3\x4b - \xa3\x4c - \xa3\x4d - \xa3\x4e - \xa3\x4f - \xa3\x50 - \xa3\x51 - \xa3\x52 - \xa3\x53 - \xa3\x54 - \xa3\x55 - \xa3\x56 - \xa3\x57 - \xa3\x58 - \xa3\x59 - \xa3\x5a - \xa3\x5b - \xa3\x5c - \xa3\x5d - \xa3\x5e - \xa3\x5f - \xa3\x60 - \xa3\x61 - \xa3\x62 - \xa3\x63 - \xa3\x64 - \xa3\x65 - \xa3\x66 - \xa3\x67 - \xa3\x68 - \xa3\x69 - \xa3\x6a - \xa3\x6b - \xa3\x6c - \xa3\x6d - \xa3\x6e - \xa3\x6f - \xa3\x70 - \xa3\x71 - \xa3\x72 - \xa3\x73 - \xa3\x74 - \xa3\x75 - \xa3\x76 - \xa3\x77 - \xa3\x78 - \xa3\x79 - \xa3\x7a - \xa3\x7b - \xa3\x7c - \xa3\x7d - \xa3\x7e - \xa3\xa1 - \xa3\xa2 - \xa3\xa3 - \xa3\xa4 - \xa3\xa5 - \xa3\xa6 - \xa3\xa7 - \xa3\xa8 - \xa3\xa9 - \xa3\xaa - \xa3\xab - \xa3\xac - \xa3\xad - \xa3\xae - \xa3\xaf - \xa3\xb0 - \xa3\xb1 - \xa3\xb2 - \xa3\xb3 - \xa3\xb4 - \xa3\xb5 - \xa3\xb6 - \xa3\xb7 - \xa3\xb8 - \xa3\xb9 - \xa3\xba - \xa3\xbb - \xa3\xbc - \xa3\xbd - \xa3\xbe - \xa3\xbf - \xa4\x40 - \xa4\x41 - \xa4\x42 - \xa4\x43 - \xa4\x44 - \xa4\x45 - \xa4\x46 - \xa4\x47 - \xa4\x48 - \xa4\x49 - \xa4\x4a - \xa4\x4b - \xa4\x4c - \xa4\x4d - \xa4\x4e - \xa4\x4f - \xa4\x50 - \xa4\x51 - \xa4\x52 - \xa4\x53 - \xa4\x54 - \xa4\x55 - \xa4\x56 - \xa4\x57 - \xa4\x58 - \xa4\x59 - \xa4\x5a - \xa4\x5b - \xa4\x5c - \xa4\x5d - \xa4\x5e - \xa4\x5f - \xa4\x60 - \xa4\x61 - \xa4\x62 - \xa4\x63 - \xa4\x64 - \xa4\x65 - \xa4\x66 - \xa4\x67 - \xa4\x68 - \xa4\x69 - \xa4\x6a - \xa4\x6b - \xa4\x6c - \xa4\x6d - \xa4\x6e - \xa4\x6f - \xa4\x70 - \xa4\x71 - \xa4\x72 - \xa4\x73 - \xa4\x74 - \xa4\x75 - \xa4\x76 - \xa4\x77 - \xa4\x78 - \xa4\x79 - \xa4\x7a - \xa4\x7b - \xa4\x7c - \xa4\x7d - \xa4\x7e - \xa4\xa1 - \xa4\xa2 - \xa4\xa3 - \xa4\xa4 - \xa4\xa5 - \xa4\xa6 - \xa4\xa7 - \xa4\xa8 - \xa4\xa9 - \xa4\xaa - \xa4\xab - \xa4\xac - \xa4\xad - \xa4\xae - \xa4\xaf - \xa4\xb0 - \xa4\xb1 - \xa4\xb2 - \xa4\xb3 - \xa4\xb4 - \xa4\xb5 - \xa4\xb6 - \xa4\xb7 - \xa4\xb8 - \xa4\xb9 - \xa4\xba - \xa4\xbb - \xa4\xbc - \xa4\xbd - \xa4\xbe - \xa4\xbf - \xa4\xc0 - \xa4\xc1 - \xa4\xc2 - \xa4\xc3 - \xa4\xc4 - \xa4\xc5 - \xa4\xc6 - \xa4\xc7 - \xa4\xc8 - \xa4\xc9 - \xa4\xca - \xa4\xcb - \xa4\xcc - \xa4\xcd - \xa4\xce - \xa4\xcf - \xa4\xd0 - \xa4\xd1 - \xa4\xd2 - \xa4\xd3 - \xa4\xd4 - \xa4\xd5 - \xa4\xd6 - \xa4\xd7 - \xa4\xd8 - \xa4\xd9 - \xa4\xda - \xa4\xdb - \xa4\xdc - \xa4\xdd - \xa4\xde - \xa4\xdf - \xa4\xe0 - \xa4\xe1 - \xa4\xe2 - \xa4\xe3 - \xa4\xe4 - \xa4\xe5 - \xa4\xe6 - \xa4\xe7 - \xa4\xe8 - \xa4\xe9 - \xa4\xea - \xa4\xeb - \xa4\xec - \xa4\xed - \xa4\xee - \xa4\xef - \xa4\xf0 - \xa4\xf1 - \xa4\xf2 - \xa4\xf3 - \xa4\xf4 - \xa4\xf5 - \xa4\xf6 - \xa4\xf7 - \xa4\xf8 - \xa4\xf9 - \xa4\xfa - \xa4\xfb - \xa4\xfc - \xa4\xfd - \xa4\xfe - \xa5\x40 - \xa5\x41 - \xa5\x42 - \xa5\x43 - \xa5\x44 - \xa5\x45 - \xa5\x46 - \xa5\x47 - \xa5\x48 - \xa5\x49 - \xa5\x4a - \xa5\x4b - \xa5\x4c - \xa5\x4d - \xa5\x4e - \xa5\x4f - \xa5\x50 - \xa5\x51 - \xa5\x52 - \xa5\x53 - \xa5\x54 - \xa5\x55 - \xa5\x56 - \xa5\x57 - \xa5\x58 - \xa5\x59 - \xa5\x5a - \xa5\x5b - \xa5\x5c - \xa5\x5d - \xa5\x5e - \xa5\x5f - \xa5\x60 - \xa5\x61 - \xa5\x62 - \xa5\x63 - \xa5\x64 - \xa5\x65 - \xa5\x66 - \xa5\x67 - \xa5\x68 - \xa5\x69 - \xa5\x6a - \xa5\x6b - \xa5\x6c - \xa5\x6d - \xa5\x6e - \xa5\x6f - \xa5\x70 - \xa5\x71 - \xa5\x72 - \xa5\x73 - \xa5\x74 - \xa5\x75 - \xa5\x76 - \xa5\x77 - \xa5\x78 - \xa5\x79 - \xa5\x7a - \xa5\x7b - \xa5\x7c - \xa5\x7d - \xa5\x7e - \xa5\xa1 - \xa5\xa2 - \xa5\xa3 - \xa5\xa4 - \xa5\xa5 - \xa5\xa6 - \xa5\xa7 - \xa5\xa8 - \xa5\xa9 - \xa5\xaa - \xa5\xab - \xa5\xac - \xa5\xad - \xa5\xae - \xa5\xaf - \xa5\xb0 - \xa5\xb1 - \xa5\xb2 - \xa5\xb3 - \xa5\xb4 - \xa5\xb5 - \xa5\xb6 - \xa5\xb7 - \xa5\xb8 - \xa5\xb9 - \xa5\xba - \xa5\xbb - \xa5\xbc - \xa5\xbd - \xa5\xbe - \xa5\xbf - \xa5\xc0 - \xa5\xc1 - \xa5\xc2 - \xa5\xc3 - \xa5\xc4 - \xa5\xc5 - \xa5\xc6 - \xa5\xc7 - \xa5\xc8 - \xa5\xc9 - \xa5\xca - \xa5\xcb - \xa5\xcc - \xa5\xcd - \xa5\xce - \xa5\xcf - \xa5\xd0 - \xa5\xd1 - \xa5\xd2 - \xa5\xd3 - \xa5\xd4 - \xa5\xd5 - \xa5\xd6 - \xa5\xd7 - \xa5\xd8 - \xa5\xd9 - \xa5\xda - \xa5\xdb - \xa5\xdc - \xa5\xdd - \xa5\xde - \xa5\xdf - \xa5\xe0 - \xa5\xe1 - \xa5\xe2 - \xa5\xe3 - \xa5\xe4 - \xa5\xe5 - \xa5\xe6 - \xa5\xe7 - \xa5\xe8 - \xa5\xe9 - \xa5\xea - \xa5\xeb - \xa5\xec - \xa5\xed - \xa5\xee - \xa5\xef - \xa5\xf0 - \xa5\xf1 - \xa5\xf2 - \xa5\xf3 - \xa5\xf4 - \xa5\xf5 - \xa5\xf6 - \xa5\xf7 - \xa5\xf8 - \xa5\xf9 - \xa5\xfa - \xa5\xfb - \xa5\xfc - \xa5\xfd - \xa5\xfe - \xa6\x40 - \xa6\x41 - \xa6\x42 - \xa6\x43 - \xa6\x44 - \xa6\x45 - \xa6\x46 - \xa6\x47 - \xa6\x48 - \xa6\x49 - \xa6\x4a - \xa6\x4b - \xa6\x4c - \xa6\x4d - \xa6\x4e - \xa6\x4f - \xa6\x50 - \xa6\x51 - \xa6\x52 - \xa6\x53 - \xa6\x54 - \xa6\x55 - \xa6\x56 - \xa6\x57 - \xa6\x58 - \xa6\x59 - \xa6\x5a - \xa6\x5b - \xa6\x5c - \xa6\x5d - \xa6\x5e - \xa6\x5f - \xa6\x60 - \xa6\x61 - \xa6\x62 - \xa6\x63 - \xa6\x64 - \xa6\x65 - \xa6\x66 - \xa6\x67 - \xa6\x68 - \xa6\x69 - \xa6\x6a - \xa6\x6b - \xa6\x6c - \xa6\x6d - \xa6\x6e - \xa6\x6f - \xa6\x70 - \xa6\x71 - \xa6\x72 - \xa6\x73 - \xa6\x74 - \xa6\x75 - \xa6\x76 - \xa6\x77 - \xa6\x78 - \xa6\x79 - \xa6\x7a - \xa6\x7b - \xa6\x7c - \xa6\x7d - \xa6\x7e - \xa6\xa1 - \xa6\xa2 - \xa6\xa3 - \xa6\xa4 - \xa6\xa5 - \xa6\xa6 - \xa6\xa7 - \xa6\xa8 - \xa6\xa9 - \xa6\xaa - \xa6\xab - \xa6\xac - \xa6\xad - \xa6\xae - \xa6\xaf - \xa6\xb0 - \xa6\xb1 - \xa6\xb2 - \xa6\xb3 - \xa6\xb4 - \xa6\xb5 - \xa6\xb6 - \xa6\xb7 - \xa6\xb8 - \xa6\xb9 - \xa6\xba - \xa6\xbb - \xa6\xbc - \xa6\xbd - \xa6\xbe - \xa6\xbf - \xa6\xc0 - \xa6\xc1 - \xa6\xc2 - \xa6\xc3 - \xa6\xc4 - \xa6\xc5 - \xa6\xc6 - \xa6\xc7 - \xa6\xc8 - \xa6\xc9 - \xa6\xca - \xa6\xcb - \xa6\xcc - \xa6\xcd - \xa6\xce - \xa6\xcf - \xa6\xd0 - \xa6\xd1 - \xa6\xd2 - \xa6\xd3 - \xa6\xd4 - \xa6\xd5 - \xa6\xd6 - \xa6\xd7 - \xa6\xd8 - \xa6\xd9 - \xa6\xda - \xa6\xdb - \xa6\xdc - \xa6\xdd - \xa6\xde - \xa6\xdf - \xa6\xe0 - \xa6\xe1 - \xa6\xe2 - \xa6\xe3 - \xa6\xe4 - \xa6\xe5 - \xa6\xe6 - \xa6\xe7 - \xa6\xe8 - \xa6\xe9 - \xa6\xea - \xa6\xeb - \xa6\xec - \xa6\xed - \xa6\xee - \xa6\xef - \xa6\xf0 - \xa6\xf1 - \xa6\xf2 - \xa6\xf3 - \xa6\xf4 - \xa6\xf5 - \xa6\xf6 - \xa6\xf7 - \xa6\xf8 - \xa6\xf9 - \xa6\xfa - \xa6\xfb - \xa6\xfc - \xa6\xfd - \xa6\xfe - \xa7\x40 - \xa7\x41 - \xa7\x42 - \xa7\x43 - \xa7\x44 - \xa7\x45 - \xa7\x46 - \xa7\x47 - \xa7\x48 - \xa7\x49 - \xa7\x4a - \xa7\x4b - \xa7\x4c - \xa7\x4d - \xa7\x4e - \xa7\x4f - \xa7\x50 - \xa7\x51 - \xa7\x52 - \xa7\x53 - \xa7\x54 - \xa7\x55 - \xa7\x56 - \xa7\x57 - \xa7\x58 - \xa7\x59 - \xa7\x5a - \xa7\x5b - \xa7\x5c - \xa7\x5d - \xa7\x5e - \xa7\x5f - \xa7\x60 - \xa7\x61 - \xa7\x62 - \xa7\x63 - \xa7\x64 - \xa7\x65 - \xa7\x66 - \xa7\x67 - \xa7\x68 - \xa7\x69 - \xa7\x6a - \xa7\x6b - \xa7\x6c - \xa7\x6d - \xa7\x6e - \xa7\x6f - \xa7\x70 - \xa7\x71 - \xa7\x72 - \xa7\x73 - \xa7\x74 - \xa7\x75 - \xa7\x76 - \xa7\x77 - \xa7\x78 - \xa7\x79 - \xa7\x7a - \xa7\x7b - \xa7\x7c - \xa7\x7d - \xa7\x7e - \xa7\xa1 - \xa7\xa2 - \xa7\xa3 - \xa7\xa4 - \xa7\xa5 - \xa7\xa6 - \xa7\xa7 - \xa7\xa8 - \xa7\xa9 - \xa7\xaa - \xa7\xab - \xa7\xac - \xa7\xad - \xa7\xae - \xa7\xaf - \xa7\xb0 - \xa7\xb1 - \xa7\xb2 - \xa7\xb3 - \xa7\xb4 - \xa7\xb5 - \xa7\xb6 - \xa7\xb7 - \xa7\xb8 - \xa7\xb9 - \xa7\xba - \xa7\xbb - \xa7\xbc - \xa7\xbd - \xa7\xbe - \xa7\xbf - \xa7\xc0 - \xa7\xc1 - \xa7\xc2 - \xa7\xc3 - \xa7\xc4 - \xa7\xc5 - \xa7\xc6 - \xa7\xc7 - \xa7\xc8 - \xa7\xc9 - \xa7\xca - \xa7\xcb - \xa7\xcc - \xa7\xcd - \xa7\xce - \xa7\xcf - \xa7\xd0 - \xa7\xd1 - \xa7\xd2 - \xa7\xd3 - \xa7\xd4 - \xa7\xd5 - \xa7\xd6 - \xa7\xd7 - \xa7\xd8 - \xa7\xd9 - \xa7\xda - \xa7\xdb - \xa7\xdc - \xa7\xdd - \xa7\xde - \xa7\xdf - \xa7\xe0 - \xa7\xe1 - \xa7\xe2 - \xa7\xe3 - \xa7\xe4 - \xa7\xe5 - \xa7\xe6 - \xa7\xe7 - \xa7\xe8 - \xa7\xe9 - \xa7\xea - \xa7\xeb - \xa7\xec - \xa7\xed - \xa7\xee - \xa7\xef - \xa7\xf0 - \xa7\xf1 - \xa7\xf2 - \xa7\xf3 - \xa7\xf4 - \xa7\xf5 - \xa7\xf6 - \xa7\xf7 - \xa7\xf8 - \xa7\xf9 - \xa7\xfa - \xa7\xfb - \xa7\xfc - \xa7\xfd - \xa7\xfe - \xa8\x40 - \xa8\x41 - \xa8\x42 - \xa8\x43 - \xa8\x44 - \xa8\x45 - \xa8\x46 - \xa8\x47 - \xa8\x48 - \xa8\x49 - \xa8\x4a - \xa8\x4b - \xa8\x4c - \xa8\x4d - \xa8\x4e - \xa8\x4f - \xa8\x50 - \xa8\x51 - \xa8\x52 - \xa8\x53 - \xa8\x54 - \xa8\x55 - \xa8\x56 - \xa8\x57 - \xa8\x58 - \xa8\x59 - \xa8\x5a - \xa8\x5b - \xa8\x5c - \xa8\x5d - \xa8\x5e - \xa8\x5f - \xa8\x60 - \xa8\x61 - \xa8\x62 - \xa8\x63 - \xa8\x64 - \xa8\x65 - \xa8\x66 - \xa8\x67 - \xa8\x68 - \xa8\x69 - \xa8\x6a - \xa8\x6b - \xa8\x6c - \xa8\x6d - \xa8\x6e - \xa8\x6f - \xa8\x70 - \xa8\x71 - \xa8\x72 - \xa8\x73 - \xa8\x74 - \xa8\x75 - \xa8\x76 - \xa8\x77 - \xa8\x78 - \xa8\x79 - \xa8\x7a - \xa8\x7b - \xa8\x7c - \xa8\x7d - \xa8\x7e - \xa8\xa1 - \xa8\xa2 - \xa8\xa3 - \xa8\xa4 - \xa8\xa5 - \xa8\xa6 - \xa8\xa7 - \xa8\xa8 - \xa8\xa9 - \xa8\xaa - \xa8\xab - \xa8\xac - \xa8\xad - \xa8\xae - \xa8\xaf - \xa8\xb0 - \xa8\xb1 - \xa8\xb2 - \xa8\xb3 - \xa8\xb4 - \xa8\xb5 - \xa8\xb6 - \xa8\xb7 - \xa8\xb8 - \xa8\xb9 - \xa8\xba - \xa8\xbb - \xa8\xbc - \xa8\xbd - \xa8\xbe - \xa8\xbf - \xa8\xc0 - \xa8\xc1 - \xa8\xc2 - \xa8\xc3 - \xa8\xc4 - \xa8\xc5 - \xa8\xc6 - \xa8\xc7 - \xa8\xc8 - \xa8\xc9 - \xa8\xca - \xa8\xcb - \xa8\xcc - \xa8\xcd - \xa8\xce - \xa8\xcf - \xa8\xd0 - \xa8\xd1 - \xa8\xd2 - \xa8\xd3 - \xa8\xd4 - \xa8\xd5 - \xa8\xd6 - \xa8\xd7 - \xa8\xd8 - \xa8\xd9 - \xa8\xda - \xa8\xdb - \xa8\xdc - \xa8\xdd - \xa8\xde - \xa8\xdf - \xa8\xe0 - \xa8\xe1 - \xa8\xe2 - \xa8\xe3 - \xa8\xe4 - \xa8\xe5 - \xa8\xe6 - \xa8\xe7 - \xa8\xe8 - \xa8\xe9 - \xa8\xea - \xa8\xeb - \xa8\xec - \xa8\xed - \xa8\xee - \xa8\xef - \xa8\xf0 - \xa8\xf1 - \xa8\xf2 - \xa8\xf3 - \xa8\xf4 - \xa8\xf5 - \xa8\xf6 - \xa8\xf7 - \xa8\xf8 - \xa8\xf9 - \xa8\xfa - \xa8\xfb - \xa8\xfc - \xa8\xfd - \xa8\xfe - \xa9\x40 - \xa9\x41 - \xa9\x42 - \xa9\x43 - \xa9\x44 - \xa9\x45 - \xa9\x46 - \xa9\x47 - \xa9\x48 - \xa9\x49 - \xa9\x4a - \xa9\x4b - \xa9\x4c - \xa9\x4d - \xa9\x4e - \xa9\x4f - \xa9\x50 - \xa9\x51 - \xa9\x52 - \xa9\x53 - \xa9\x54 - \xa9\x55 - \xa9\x56 - \xa9\x57 - \xa9\x58 - \xa9\x59 - \xa9\x5a - \xa9\x5b - \xa9\x5c - \xa9\x5d - \xa9\x5e - \xa9\x5f - \xa9\x60 - \xa9\x61 - \xa9\x62 - \xa9\x63 - \xa9\x64 - \xa9\x65 - \xa9\x66 - \xa9\x67 - \xa9\x68 - \xa9\x69 - \xa9\x6a - \xa9\x6b - \xa9\x6c - \xa9\x6d - \xa9\x6e - \xa9\x6f - \xa9\x70 - \xa9\x71 - \xa9\x72 - \xa9\x73 - \xa9\x74 - \xa9\x75 - \xa9\x76 - \xa9\x77 - \xa9\x78 - \xa9\x79 - \xa9\x7a - \xa9\x7b - \xa9\x7c - \xa9\x7d - \xa9\x7e - \xa9\xa1 - \xa9\xa2 - \xa9\xa3 - \xa9\xa4 - \xa9\xa5 - \xa9\xa6 - \xa9\xa7 - \xa9\xa8 - \xa9\xa9 - \xa9\xaa - \xa9\xab - \xa9\xac - \xa9\xad - \xa9\xae - \xa9\xaf - \xa9\xb0 - \xa9\xb1 - \xa9\xb2 - \xa9\xb3 - \xa9\xb4 - \xa9\xb5 - \xa9\xb6 - \xa9\xb7 - \xa9\xb8 - \xa9\xb9 - \xa9\xba - \xa9\xbb - \xa9\xbc - \xa9\xbd - \xa9\xbe - \xa9\xbf - \xa9\xc0 - \xa9\xc1 - \xa9\xc2 - \xa9\xc3 - \xa9\xc4 - \xa9\xc5 - \xa9\xc6 - \xa9\xc7 - \xa9\xc8 - \xa9\xc9 - \xa9\xca - \xa9\xcb - \xa9\xcc - \xa9\xcd - \xa9\xce - \xa9\xcf - \xa9\xd0 - \xa9\xd1 - \xa9\xd2 - \xa9\xd3 - \xa9\xd4 - \xa9\xd5 - \xa9\xd6 - \xa9\xd7 - \xa9\xd8 - \xa9\xd9 - \xa9\xda - \xa9\xdb - \xa9\xdc - \xa9\xdd - \xa9\xde - \xa9\xdf - \xa9\xe0 - \xa9\xe1 - \xa9\xe2 - \xa9\xe3 - \xa9\xe4 - \xa9\xe5 - \xa9\xe6 - \xa9\xe7 - \xa9\xe8 - \xa9\xe9 - \xa9\xea - \xa9\xeb - \xa9\xec - \xa9\xed - \xa9\xee - \xa9\xef - \xa9\xf0 - \xa9\xf1 - \xa9\xf2 - \xa9\xf3 - \xa9\xf4 - \xa9\xf5 - \xa9\xf6 - \xa9\xf7 - \xa9\xf8 - \xa9\xf9 - \xa9\xfa - \xa9\xfb - \xa9\xfc - \xa9\xfd - \xa9\xfe - \xaa\x40 - \xaa\x41 - \xaa\x42 - \xaa\x43 - \xaa\x44 - \xaa\x45 - \xaa\x46 - \xaa\x47 - \xaa\x48 - \xaa\x49 - \xaa\x4a - \xaa\x4b - \xaa\x4c - \xaa\x4d - \xaa\x4e - \xaa\x4f - \xaa\x50 - \xaa\x51 - \xaa\x52 - \xaa\x53 - \xaa\x54 - \xaa\x55 - \xaa\x56 - \xaa\x57 - \xaa\x58 - \xaa\x59 - \xaa\x5a - \xaa\x5b - \xaa\x5c - \xaa\x5d - \xaa\x5e - \xaa\x5f - \xaa\x60 - \xaa\x61 - \xaa\x62 - \xaa\x63 - \xaa\x64 - \xaa\x65 - \xaa\x66 - \xaa\x67 - \xaa\x68 - \xaa\x69 - \xaa\x6a - \xaa\x6b - \xaa\x6c - \xaa\x6d - \xaa\x6e - \xaa\x6f - \xaa\x70 - \xaa\x71 - \xaa\x72 - \xaa\x73 - \xaa\x74 - \xaa\x75 - \xaa\x76 - \xaa\x77 - \xaa\x78 - \xaa\x79 - \xaa\x7a - \xaa\x7b - \xaa\x7c - \xaa\x7d - \xaa\x7e - \xaa\xa1 - \xaa\xa2 - \xaa\xa3 - \xaa\xa4 - \xaa\xa5 - \xaa\xa6 - \xaa\xa7 - \xaa\xa8 - \xaa\xa9 - \xaa\xaa - \xaa\xab - \xaa\xac - \xaa\xad - \xaa\xae - \xaa\xaf - \xaa\xb0 - \xaa\xb1 - \xaa\xb2 - \xaa\xb3 - \xaa\xb4 - \xaa\xb5 - \xaa\xb6 - \xaa\xb7 - \xaa\xb8 - \xaa\xb9 - \xaa\xba - \xaa\xbb - \xaa\xbc - \xaa\xbd - \xaa\xbe - \xaa\xbf - \xaa\xc0 - \xaa\xc1 - \xaa\xc2 - \xaa\xc3 - \xaa\xc4 - \xaa\xc5 - \xaa\xc6 - \xaa\xc7 - \xaa\xc8 - \xaa\xc9 - \xaa\xca - \xaa\xcb - \xaa\xcc - \xaa\xcd - \xaa\xce - \xaa\xcf - \xaa\xd0 - \xaa\xd1 - \xaa\xd2 - \xaa\xd3 - \xaa\xd4 - \xaa\xd5 - \xaa\xd6 - \xaa\xd7 - \xaa\xd8 - \xaa\xd9 - \xaa\xda - \xaa\xdb - \xaa\xdc - \xaa\xdd - \xaa\xde - \xaa\xdf - \xaa\xe0 - \xaa\xe1 - \xaa\xe2 - \xaa\xe3 - \xaa\xe4 - \xaa\xe5 - \xaa\xe6 - \xaa\xe7 - \xaa\xe8 - \xaa\xe9 - \xaa\xea - \xaa\xeb - \xaa\xec - \xaa\xed - \xaa\xee - \xaa\xef - \xaa\xf0 - \xaa\xf1 - \xaa\xf2 - \xaa\xf3 - \xaa\xf4 - \xaa\xf5 - \xaa\xf6 - \xaa\xf7 - \xaa\xf8 - \xaa\xf9 - \xaa\xfa - \xaa\xfb - \xaa\xfc - \xaa\xfd - \xaa\xfe - \xab\x40 - \xab\x41 - \xab\x42 - \xab\x43 - \xab\x44 - \xab\x45 - \xab\x46 - \xab\x47 - \xab\x48 - \xab\x49 - \xab\x4a - \xab\x4b - \xab\x4c - \xab\x4d - \xab\x4e - \xab\x4f - \xab\x50 - \xab\x51 - \xab\x52 - \xab\x53 - \xab\x54 - \xab\x55 - \xab\x56 - \xab\x57 - \xab\x58 - \xab\x59 - \xab\x5a - \xab\x5b - \xab\x5c - \xab\x5d - \xab\x5e - \xab\x5f - \xab\x60 - \xab\x61 - \xab\x62 - \xab\x63 - \xab\x64 - \xab\x65 - \xab\x66 - \xab\x67 - \xab\x68 - \xab\x69 - \xab\x6a - \xab\x6b - \xab\x6c - \xab\x6d - \xab\x6e - \xab\x6f - \xab\x70 - \xab\x71 - \xab\x72 - \xab\x73 - \xab\x74 - \xab\x75 - \xab\x76 - \xab\x77 - \xab\x78 - \xab\x79 - \xab\x7a - \xab\x7b - \xab\x7c - \xab\x7d - \xab\x7e - \xab\xa1 - \xab\xa2 - \xab\xa3 - \xab\xa4 - \xab\xa5 - \xab\xa6 - \xab\xa7 - \xab\xa8 - \xab\xa9 - \xab\xaa - \xab\xab - \xab\xac - \xab\xad - \xab\xae - \xab\xaf - \xab\xb0 - \xab\xb1 - \xab\xb2 - \xab\xb3 - \xab\xb4 - \xab\xb5 - \xab\xb6 - \xab\xb7 - \xab\xb8 - \xab\xb9 - \xab\xba - \xab\xbb - \xab\xbc - \xab\xbd - \xab\xbe - \xab\xbf - \xab\xc0 - \xab\xc1 - \xab\xc2 - \xab\xc3 - \xab\xc4 - \xab\xc5 - \xab\xc6 - \xab\xc7 - \xab\xc8 - \xab\xc9 - \xab\xca - \xab\xcb - \xab\xcc - \xab\xcd - \xab\xce - \xab\xcf - \xab\xd0 - \xab\xd1 - \xab\xd2 - \xab\xd3 - \xab\xd4 - \xab\xd5 - \xab\xd6 - \xab\xd7 - \xab\xd8 - \xab\xd9 - \xab\xda - \xab\xdb - \xab\xdc - \xab\xdd - \xab\xde - \xab\xdf - \xab\xe0 - \xab\xe1 - \xab\xe2 - \xab\xe3 - \xab\xe4 - \xab\xe5 - \xab\xe6 - \xab\xe7 - \xab\xe8 - \xab\xe9 - \xab\xea - \xab\xeb - \xab\xec - \xab\xed - \xab\xee - \xab\xef - \xab\xf0 - \xab\xf1 - \xab\xf2 - \xab\xf3 - \xab\xf4 - \xab\xf5 - \xab\xf6 - \xab\xf7 - \xab\xf8 - \xab\xf9 - \xab\xfa - \xab\xfb - \xab\xfc - \xab\xfd - \xab\xfe - \xac\x40 - \xac\x41 - \xac\x42 - \xac\x43 - \xac\x44 - \xac\x45 - \xac\x46 - \xac\x47 - \xac\x48 - \xac\x49 - \xac\x4a - \xac\x4b - \xac\x4c - \xac\x4d - \xac\x4e - \xac\x4f - \xac\x50 - \xac\x51 - \xac\x52 - \xac\x53 - \xac\x54 - \xac\x55 - \xac\x56 - \xac\x57 - \xac\x58 - \xac\x59 - \xac\x5a - \xac\x5b - \xac\x5c - \xac\x5d - \xac\x5e - \xac\x5f - \xac\x60 - \xac\x61 - \xac\x62 - \xac\x63 - \xac\x64 - \xac\x65 - \xac\x66 - \xac\x67 - \xac\x68 - \xac\x69 - \xac\x6a - \xac\x6b - \xac\x6c - \xac\x6d - \xac\x6e - \xac\x6f - \xac\x70 - \xac\x71 - \xac\x72 - \xac\x73 - \xac\x74 - \xac\x75 - \xac\x76 - \xac\x77 - \xac\x78 - \xac\x79 - \xac\x7a - \xac\x7b - \xac\x7c - \xac\x7d - \xac\x7e - \xac\xa1 - \xac\xa2 - \xac\xa3 - \xac\xa4 - \xac\xa5 - \xac\xa6 - \xac\xa7 - \xac\xa8 - \xac\xa9 - \xac\xaa - \xac\xab - \xac\xac - \xac\xad - \xac\xae - \xac\xaf - \xac\xb0 - \xac\xb1 - \xac\xb2 - \xac\xb3 - \xac\xb4 - \xac\xb5 - \xac\xb6 - \xac\xb7 - \xac\xb8 - \xac\xb9 - \xac\xba - \xac\xbb - \xac\xbc - \xac\xbd - \xac\xbe - \xac\xbf - \xac\xc0 - \xac\xc1 - \xac\xc2 - \xac\xc3 - \xac\xc4 - \xac\xc5 - \xac\xc6 - \xac\xc7 - \xac\xc8 - \xac\xc9 - \xac\xca - \xac\xcb - \xac\xcc - \xac\xcd - \xac\xce - \xac\xcf - \xac\xd0 - \xac\xd1 - \xac\xd2 - \xac\xd3 - \xac\xd4 - \xac\xd5 - \xac\xd6 - \xac\xd7 - \xac\xd8 - \xac\xd9 - \xac\xda - \xac\xdb - \xac\xdc - \xac\xdd - \xac\xde - \xac\xdf - \xac\xe0 - \xac\xe1 - \xac\xe2 - \xac\xe3 - \xac\xe4 - \xac\xe5 - \xac\xe6 - \xac\xe7 - \xac\xe8 - \xac\xe9 - \xac\xea - \xac\xeb - \xac\xec - \xac\xed - \xac\xee - \xac\xef - \xac\xf0 - \xac\xf1 - \xac\xf2 - \xac\xf3 - \xac\xf4 - \xac\xf5 - \xac\xf6 - \xac\xf7 - \xac\xf8 - \xac\xf9 - \xac\xfa - \xac\xfb - \xac\xfc - \xac\xfd - \xac\xfe - \xad\x40 - \xad\x41 - \xad\x42 - \xad\x43 - \xad\x44 - \xad\x45 - \xad\x46 - \xad\x47 - \xad\x48 - \xad\x49 - \xad\x4a - \xad\x4b - \xad\x4c - \xad\x4d - \xad\x4e - \xad\x4f - \xad\x50 - \xad\x51 - \xad\x52 - \xad\x53 - \xad\x54 - \xad\x55 - \xad\x56 - \xad\x57 - \xad\x58 - \xad\x59 - \xad\x5a - \xad\x5b - \xad\x5c - \xad\x5d - \xad\x5e - \xad\x5f - \xad\x60 - \xad\x61 - \xad\x62 - \xad\x63 - \xad\x64 - \xad\x65 - \xad\x66 - \xad\x67 - \xad\x68 - \xad\x69 - \xad\x6a - \xad\x6b - \xad\x6c - \xad\x6d - \xad\x6e - \xad\x6f - \xad\x70 - \xad\x71 - \xad\x72 - \xad\x73 - \xad\x74 - \xad\x75 - \xad\x76 - \xad\x77 - \xad\x78 - \xad\x79 - \xad\x7a - \xad\x7b - \xad\x7c - \xad\x7d - \xad\x7e - \xad\xa1 - \xad\xa2 - \xad\xa3 - \xad\xa4 - \xad\xa5 - \xad\xa6 - \xad\xa7 - \xad\xa8 - \xad\xa9 - \xad\xaa - \xad\xab - \xad\xac - \xad\xad - \xad\xae - \xad\xaf - \xad\xb0 - \xad\xb1 - \xad\xb2 - \xad\xb3 - \xad\xb4 - \xad\xb5 - \xad\xb6 - \xad\xb7 - \xad\xb8 - \xad\xb9 - \xad\xba - \xad\xbb - \xad\xbc - \xad\xbd - \xad\xbe - \xad\xbf - \xad\xc0 - \xad\xc1 - \xad\xc2 - \xad\xc3 - \xad\xc4 - \xad\xc5 - \xad\xc6 - \xad\xc7 - \xad\xc8 - \xad\xc9 - \xad\xca - \xad\xcb - \xad\xcc - \xad\xcd - \xad\xce - \xad\xcf - \xad\xd0 - \xad\xd1 - \xad\xd2 - \xad\xd3 - \xad\xd4 - \xad\xd5 - \xad\xd6 - \xad\xd7 - \xad\xd8 - \xad\xd9 - \xad\xda - \xad\xdb - \xad\xdc - \xad\xdd - \xad\xde - \xad\xdf - \xad\xe0 - \xad\xe1 - \xad\xe2 - \xad\xe3 - \xad\xe4 - \xad\xe5 - \xad\xe6 - \xad\xe7 - \xad\xe8 - \xad\xe9 - \xad\xea - \xad\xeb - \xad\xec - \xad\xed - \xad\xee - \xad\xef - \xad\xf0 - \xad\xf1 - \xad\xf2 - \xad\xf3 - \xad\xf4 - \xad\xf5 - \xad\xf6 - \xad\xf7 - \xad\xf8 - \xad\xf9 - \xad\xfa - \xad\xfb - \xad\xfc - \xad\xfd - \xad\xfe - \xae\x40 - \xae\x41 - \xae\x42 - \xae\x43 - \xae\x44 - \xae\x45 - \xae\x46 - \xae\x47 - \xae\x48 - \xae\x49 - \xae\x4a - \xae\x4b - \xae\x4c - \xae\x4d - \xae\x4e - \xae\x4f - \xae\x50 - \xae\x51 - \xae\x52 - \xae\x53 - \xae\x54 - \xae\x55 - \xae\x56 - \xae\x57 - \xae\x58 - \xae\x59 - \xae\x5a - \xae\x5b - \xae\x5c - \xae\x5d - \xae\x5e - \xae\x5f - \xae\x60 - \xae\x61 - \xae\x62 - \xae\x63 - \xae\x64 - \xae\x65 - \xae\x66 - \xae\x67 - \xae\x68 - \xae\x69 - \xae\x6a - \xae\x6b - \xae\x6c - \xae\x6d - \xae\x6e - \xae\x6f - \xae\x70 - \xae\x71 - \xae\x72 - \xae\x73 - \xae\x74 - \xae\x75 - \xae\x76 - \xae\x77 - \xae\x78 - \xae\x79 - \xae\x7a - \xae\x7b - \xae\x7c - \xae\x7d - \xae\x7e - \xae\xa1 - \xae\xa2 - \xae\xa3 - \xae\xa4 - \xae\xa5 - \xae\xa6 - \xae\xa7 - \xae\xa8 - \xae\xa9 - \xae\xaa - \xae\xab - \xae\xac - \xae\xad - \xae\xae - \xae\xaf - \xae\xb0 - \xae\xb1 - \xae\xb2 - \xae\xb3 - \xae\xb4 - \xae\xb5 - \xae\xb6 - \xae\xb7 - \xae\xb8 - \xae\xb9 - \xae\xba - \xae\xbb - \xae\xbc - \xae\xbd - \xae\xbe - \xae\xbf - \xae\xc0 - \xae\xc1 - \xae\xc2 - \xae\xc3 - \xae\xc4 - \xae\xc5 - \xae\xc6 - \xae\xc7 - \xae\xc8 - \xae\xc9 - \xae\xca - \xae\xcb - \xae\xcc - \xae\xcd - \xae\xce - \xae\xcf - \xae\xd0 - \xae\xd1 - \xae\xd2 - \xae\xd3 - \xae\xd4 - \xae\xd5 - \xae\xd6 - \xae\xd7 - \xae\xd8 - \xae\xd9 - \xae\xda - \xae\xdb - \xae\xdc - \xae\xdd - \xae\xde - \xae\xdf - \xae\xe0 - \xae\xe1 - \xae\xe2 - \xae\xe3 - \xae\xe4 - \xae\xe5 - \xae\xe6 - \xae\xe7 - \xae\xe8 - \xae\xe9 - \xae\xea - \xae\xeb - \xae\xec - \xae\xed - \xae\xee - \xae\xef - \xae\xf0 - \xae\xf1 - \xae\xf2 - \xae\xf3 - \xae\xf4 - \xae\xf5 - \xae\xf6 - \xae\xf7 - \xae\xf8 - \xae\xf9 - \xae\xfa - \xae\xfb - \xae\xfc - \xae\xfd - \xae\xfe - \xaf\x40 - \xaf\x41 - \xaf\x42 - \xaf\x43 - \xaf\x44 - \xaf\x45 - \xaf\x46 - \xaf\x47 - \xaf\x48 - \xaf\x49 - \xaf\x4a - \xaf\x4b - \xaf\x4c - \xaf\x4d - \xaf\x4e - \xaf\x4f - \xaf\x50 - \xaf\x51 - \xaf\x52 - \xaf\x53 - \xaf\x54 - \xaf\x55 - \xaf\x56 - \xaf\x57 - \xaf\x58 - \xaf\x59 - \xaf\x5a - \xaf\x5b - \xaf\x5c - \xaf\x5d - \xaf\x5e - \xaf\x5f - \xaf\x60 - \xaf\x61 - \xaf\x62 - \xaf\x63 - \xaf\x64 - \xaf\x65 - \xaf\x66 - \xaf\x67 - \xaf\x68 - \xaf\x69 - \xaf\x6a - \xaf\x6b - \xaf\x6c - \xaf\x6d - \xaf\x6e - \xaf\x6f - \xaf\x70 - \xaf\x71 - \xaf\x72 - \xaf\x73 - \xaf\x74 - \xaf\x75 - \xaf\x76 - \xaf\x77 - \xaf\x78 - \xaf\x79 - \xaf\x7a - \xaf\x7b - \xaf\x7c - \xaf\x7d - \xaf\x7e - \xaf\xa1 - \xaf\xa2 - \xaf\xa3 - \xaf\xa4 - \xaf\xa5 - \xaf\xa6 - \xaf\xa7 - \xaf\xa8 - \xaf\xa9 - \xaf\xaa - \xaf\xab - \xaf\xac - \xaf\xad - \xaf\xae - \xaf\xaf - \xaf\xb0 - \xaf\xb1 - \xaf\xb2 - \xaf\xb3 - \xaf\xb4 - \xaf\xb5 - \xaf\xb6 - \xaf\xb7 - \xaf\xb8 - \xaf\xb9 - \xaf\xba - \xaf\xbb - \xaf\xbc - \xaf\xbd - \xaf\xbe - \xaf\xbf - \xaf\xc0 - \xaf\xc1 - \xaf\xc2 - \xaf\xc3 - \xaf\xc4 - \xaf\xc5 - \xaf\xc6 - \xaf\xc7 - \xaf\xc8 - \xaf\xc9 - \xaf\xca - \xaf\xcb - \xaf\xcc - \xaf\xcd - \xaf\xce - \xaf\xcf - \xaf\xd0 - \xaf\xd1 - \xaf\xd2 - \xaf\xd3 - \xaf\xd4 - \xaf\xd5 - \xaf\xd6 - \xaf\xd7 - \xaf\xd8 - \xaf\xd9 - \xaf\xda - \xaf\xdb - \xaf\xdc - \xaf\xdd - \xaf\xde - \xaf\xdf - \xaf\xe0 - \xaf\xe1 - \xaf\xe2 - \xaf\xe3 - \xaf\xe4 - \xaf\xe5 - \xaf\xe6 - \xaf\xe7 - \xaf\xe8 - \xaf\xe9 - \xaf\xea - \xaf\xeb - \xaf\xec - \xaf\xed - \xaf\xee - \xaf\xef - \xaf\xf0 - \xaf\xf1 - \xaf\xf2 - \xaf\xf3 - \xaf\xf4 - \xaf\xf5 - \xaf\xf6 - \xaf\xf7 - \xaf\xf8 - \xaf\xf9 - \xaf\xfa - \xaf\xfb - \xaf\xfc - \xaf\xfd - \xaf\xfe - \xb0\x40 - \xb0\x41 - \xb0\x42 - \xb0\x43 - \xb0\x44 - \xb0\x45 - \xb0\x46 - \xb0\x47 - \xb0\x48 - \xb0\x49 - \xb0\x4a - \xb0\x4b - \xb0\x4c - \xb0\x4d - \xb0\x4e - \xb0\x4f - \xb0\x50 - \xb0\x51 - \xb0\x52 - \xb0\x53 - \xb0\x54 - \xb0\x55 - \xb0\x56 - \xb0\x57 - \xb0\x58 - \xb0\x59 - \xb0\x5a - \xb0\x5b - \xb0\x5c - \xb0\x5d - \xb0\x5e - \xb0\x5f - \xb0\x60 - \xb0\x61 - \xb0\x62 - \xb0\x63 - \xb0\x64 - \xb0\x65 - \xb0\x66 - \xb0\x67 - \xb0\x68 - \xb0\x69 - \xb0\x6a - \xb0\x6b - \xb0\x6c - \xb0\x6d - \xb0\x6e - \xb0\x6f - \xb0\x70 - \xb0\x71 - \xb0\x72 - \xb0\x73 - \xb0\x74 - \xb0\x75 - \xb0\x76 - \xb0\x77 - \xb0\x78 - \xb0\x79 - \xb0\x7a - \xb0\x7b - \xb0\x7c - \xb0\x7d - \xb0\x7e - \xb0\xa1 - \xb0\xa2 - \xb0\xa3 - \xb0\xa4 - \xb0\xa5 - \xb0\xa6 - \xb0\xa7 - \xb0\xa8 - \xb0\xa9 - \xb0\xaa - \xb0\xab - \xb0\xac - \xb0\xad - \xb0\xae - \xb0\xaf - \xb0\xb0 - \xb0\xb1 - \xb0\xb2 - \xb0\xb3 - \xb0\xb4 - \xb0\xb5 - \xb0\xb6 - \xb0\xb7 - \xb0\xb8 - \xb0\xb9 - \xb0\xba - \xb0\xbb - \xb0\xbc - \xb0\xbd - \xb0\xbe - \xb0\xbf - \xb0\xc0 - \xb0\xc1 - \xb0\xc2 - \xb0\xc3 - \xb0\xc4 - \xb0\xc5 - \xb0\xc6 - \xb0\xc7 - \xb0\xc8 - \xb0\xc9 - \xb0\xca - \xb0\xcb - \xb0\xcc - \xb0\xcd - \xb0\xce - \xb0\xcf - \xb0\xd0 - \xb0\xd1 - \xb0\xd2 - \xb0\xd3 - \xb0\xd4 - \xb0\xd5 - \xb0\xd6 - \xb0\xd7 - \xb0\xd8 - \xb0\xd9 - \xb0\xda - \xb0\xdb - \xb0\xdc - \xb0\xdd - \xb0\xde - \xb0\xdf - \xb0\xe0 - \xb0\xe1 - \xb0\xe2 - \xb0\xe3 - \xb0\xe4 - \xb0\xe5 - \xb0\xe6 - \xb0\xe7 - \xb0\xe8 - \xb0\xe9 - \xb0\xea - \xb0\xeb - \xb0\xec - \xb0\xed - \xb0\xee - \xb0\xef - \xb0\xf0 - \xb0\xf1 - \xb0\xf2 - \xb0\xf3 - \xb0\xf4 - \xb0\xf5 - \xb0\xf6 - \xb0\xf7 - \xb0\xf8 - \xb0\xf9 - \xb0\xfa - \xb0\xfb - \xb0\xfc - \xb0\xfd - \xb0\xfe - \xb1\x40 - \xb1\x41 - \xb1\x42 - \xb1\x43 - \xb1\x44 - \xb1\x45 - \xb1\x46 - \xb1\x47 - \xb1\x48 - \xb1\x49 - \xb1\x4a - \xb1\x4b - \xb1\x4c - \xb1\x4d - \xb1\x4e - \xb1\x4f - \xb1\x50 - \xb1\x51 - \xb1\x52 - \xb1\x53 - \xb1\x54 - \xb1\x55 - \xb1\x56 - \xb1\x57 - \xb1\x58 - \xb1\x59 - \xb1\x5a - \xb1\x5b - \xb1\x5c - \xb1\x5d - \xb1\x5e - \xb1\x5f - \xb1\x60 - \xb1\x61 - \xb1\x62 - \xb1\x63 - \xb1\x64 - \xb1\x65 - \xb1\x66 - \xb1\x67 - \xb1\x68 - \xb1\x69 - \xb1\x6a - \xb1\x6b - \xb1\x6c - \xb1\x6d - \xb1\x6e - \xb1\x6f - \xb1\x70 - \xb1\x71 - \xb1\x72 - \xb1\x73 - \xb1\x74 - \xb1\x75 - \xb1\x76 - \xb1\x77 - \xb1\x78 - \xb1\x79 - \xb1\x7a - \xb1\x7b - \xb1\x7c - \xb1\x7d - \xb1\x7e - \xb1\xa1 - \xb1\xa2 - \xb1\xa3 - \xb1\xa4 - \xb1\xa5 - \xb1\xa6 - \xb1\xa7 - \xb1\xa8 - \xb1\xa9 - \xb1\xaa - \xb1\xab - \xb1\xac - \xb1\xad - \xb1\xae - \xb1\xaf - \xb1\xb0 - \xb1\xb1 - \xb1\xb2 - \xb1\xb3 - \xb1\xb4 - \xb1\xb5 - \xb1\xb6 - \xb1\xb7 - \xb1\xb8 - \xb1\xb9 - \xb1\xba - \xb1\xbb - \xb1\xbc - \xb1\xbd - \xb1\xbe - \xb1\xbf - \xb1\xc0 - \xb1\xc1 - \xb1\xc2 - \xb1\xc3 - \xb1\xc4 - \xb1\xc5 - \xb1\xc6 - \xb1\xc7 - \xb1\xc8 - \xb1\xc9 - \xb1\xca - \xb1\xcb - \xb1\xcc - \xb1\xcd - \xb1\xce - \xb1\xcf - \xb1\xd0 - \xb1\xd1 - \xb1\xd2 - \xb1\xd3 - \xb1\xd4 - \xb1\xd5 - \xb1\xd6 - \xb1\xd7 - \xb1\xd8 - \xb1\xd9 - \xb1\xda - \xb1\xdb - \xb1\xdc - \xb1\xdd - \xb1\xde - \xb1\xdf - \xb1\xe0 - \xb1\xe1 - \xb1\xe2 - \xb1\xe3 - \xb1\xe4 - \xb1\xe5 - \xb1\xe6 - \xb1\xe7 - \xb1\xe8 - \xb1\xe9 - \xb1\xea - \xb1\xeb - \xb1\xec - \xb1\xed - \xb1\xee - \xb1\xef - \xb1\xf0 - \xb1\xf1 - \xb1\xf2 - \xb1\xf3 - \xb1\xf4 - \xb1\xf5 - \xb1\xf6 - \xb1\xf7 - \xb1\xf8 - \xb1\xf9 - \xb1\xfa - \xb1\xfb - \xb1\xfc - \xb1\xfd - \xb1\xfe - \xb2\x40 - \xb2\x41 - \xb2\x42 - \xb2\x43 - \xb2\x44 - \xb2\x45 - \xb2\x46 - \xb2\x47 - \xb2\x48 - \xb2\x49 - \xb2\x4a - \xb2\x4b - \xb2\x4c - \xb2\x4d - \xb2\x4e - \xb2\x4f - \xb2\x50 - \xb2\x51 - \xb2\x52 - \xb2\x53 - \xb2\x54 - \xb2\x55 - \xb2\x56 - \xb2\x57 - \xb2\x58 - \xb2\x59 - \xb2\x5a - \xb2\x5b - \xb2\x5c - \xb2\x5d - \xb2\x5e - \xb2\x5f - \xb2\x60 - \xb2\x61 - \xb2\x62 - \xb2\x63 - \xb2\x64 - \xb2\x65 - \xb2\x66 - \xb2\x67 - \xb2\x68 - \xb2\x69 - \xb2\x6a - \xb2\x6b - \xb2\x6c - \xb2\x6d - \xb2\x6e - \xb2\x6f - \xb2\x70 - \xb2\x71 - \xb2\x72 - \xb2\x73 - \xb2\x74 - \xb2\x75 - \xb2\x76 - \xb2\x77 - \xb2\x78 - \xb2\x79 - \xb2\x7a - \xb2\x7b - \xb2\x7c - \xb2\x7d - \xb2\x7e - \xb2\xa1 - \xb2\xa2 - \xb2\xa3 - \xb2\xa4 - \xb2\xa5 - \xb2\xa6 - \xb2\xa7 - \xb2\xa8 - \xb2\xa9 - \xb2\xaa - \xb2\xab - \xb2\xac - \xb2\xad - \xb2\xae - \xb2\xaf - \xb2\xb0 - \xb2\xb1 - \xb2\xb2 - \xb2\xb3 - \xb2\xb4 - \xb2\xb5 - \xb2\xb6 - \xb2\xb7 - \xb2\xb8 - \xb2\xb9 - \xb2\xba - \xb2\xbb - \xb2\xbc - \xb2\xbd - \xb2\xbe - \xb2\xbf - \xb2\xc0 - \xb2\xc1 - \xb2\xc2 - \xb2\xc3 - \xb2\xc4 - \xb2\xc5 - \xb2\xc6 - \xb2\xc7 - \xb2\xc8 - \xb2\xc9 - \xb2\xca - \xb2\xcb - \xb2\xcc - \xb2\xcd - \xb2\xce - \xb2\xcf - \xb2\xd0 - \xb2\xd1 - \xb2\xd2 - \xb2\xd3 - \xb2\xd4 - \xb2\xd5 - \xb2\xd6 - \xb2\xd7 - \xb2\xd8 - \xb2\xd9 - \xb2\xda - \xb2\xdb - \xb2\xdc - \xb2\xdd - \xb2\xde - \xb2\xdf - \xb2\xe0 - \xb2\xe1 - \xb2\xe2 - \xb2\xe3 - \xb2\xe4 - \xb2\xe5 - \xb2\xe6 - \xb2\xe7 - \xb2\xe8 - \xb2\xe9 - \xb2\xea - \xb2\xeb - \xb2\xec - \xb2\xed - \xb2\xee - \xb2\xef - \xb2\xf0 - \xb2\xf1 - \xb2\xf2 - \xb2\xf3 - \xb2\xf4 - \xb2\xf5 - \xb2\xf6 - \xb2\xf7 - \xb2\xf8 - \xb2\xf9 - \xb2\xfa - \xb2\xfb - \xb2\xfc - \xb2\xfd - \xb2\xfe - \xb3\x40 - \xb3\x41 - \xb3\x42 - \xb3\x43 - \xb3\x44 - \xb3\x45 - \xb3\x46 - \xb3\x47 - \xb3\x48 - \xb3\x49 - \xb3\x4a - \xb3\x4b - \xb3\x4c - \xb3\x4d - \xb3\x4e - \xb3\x4f - \xb3\x50 - \xb3\x51 - \xb3\x52 - \xb3\x53 - \xb3\x54 - \xb3\x55 - \xb3\x56 - \xb3\x57 - \xb3\x58 - \xb3\x59 - \xb3\x5a - \xb3\x5b - \xb3\x5c - \xb3\x5d - \xb3\x5e - \xb3\x5f - \xb3\x60 - \xb3\x61 - \xb3\x62 - \xb3\x63 - \xb3\x64 - \xb3\x65 - \xb3\x66 - \xb3\x67 - \xb3\x68 - \xb3\x69 - \xb3\x6a - \xb3\x6b - \xb3\x6c - \xb3\x6d - \xb3\x6e - \xb3\x6f - \xb3\x70 - \xb3\x71 - \xb3\x72 - \xb3\x73 - \xb3\x74 - \xb3\x75 - \xb3\x76 - \xb3\x77 - \xb3\x78 - \xb3\x79 - \xb3\x7a - \xb3\x7b - \xb3\x7c - \xb3\x7d - \xb3\x7e - \xb3\xa1 - \xb3\xa2 - \xb3\xa3 - \xb3\xa4 - \xb3\xa5 - \xb3\xa6 - \xb3\xa7 - \xb3\xa8 - \xb3\xa9 - \xb3\xaa - \xb3\xab - \xb3\xac - \xb3\xad - \xb3\xae - \xb3\xaf - \xb3\xb0 - \xb3\xb1 - \xb3\xb2 - \xb3\xb3 - \xb3\xb4 - \xb3\xb5 - \xb3\xb6 - \xb3\xb7 - \xb3\xb8 - \xb3\xb9 - \xb3\xba - \xb3\xbb - \xb3\xbc - \xb3\xbd - \xb3\xbe - \xb3\xbf - \xb3\xc0 - \xb3\xc1 - \xb3\xc2 - \xb3\xc3 - \xb3\xc4 - \xb3\xc5 - \xb3\xc6 - \xb3\xc7 - \xb3\xc8 - \xb3\xc9 - \xb3\xca - \xb3\xcb - \xb3\xcc - \xb3\xcd - \xb3\xce - \xb3\xcf - \xb3\xd0 - \xb3\xd1 - \xb3\xd2 - \xb3\xd3 - \xb3\xd4 - \xb3\xd5 - \xb3\xd6 - \xb3\xd7 - \xb3\xd8 - \xb3\xd9 - \xb3\xda - \xb3\xdb - \xb3\xdc - \xb3\xdd - \xb3\xde - \xb3\xdf - \xb3\xe0 - \xb3\xe1 - \xb3\xe2 - \xb3\xe3 - \xb3\xe4 - \xb3\xe5 - \xb3\xe6 - \xb3\xe7 - \xb3\xe8 - \xb3\xe9 - \xb3\xea - \xb3\xeb - \xb3\xec - \xb3\xed - \xb3\xee - \xb3\xef - \xb3\xf0 - \xb3\xf1 - \xb3\xf2 - \xb3\xf3 - \xb3\xf4 - \xb3\xf5 - \xb3\xf6 - \xb3\xf7 - \xb3\xf8 - \xb3\xf9 - \xb3\xfa - \xb3\xfb - \xb3\xfc - \xb3\xfd - \xb3\xfe - \xb4\x40 - \xb4\x41 - \xb4\x42 - \xb4\x43 - \xb4\x44 - \xb4\x45 - \xb4\x46 - \xb4\x47 - \xb4\x48 - \xb4\x49 - \xb4\x4a - \xb4\x4b - \xb4\x4c - \xb4\x4d - \xb4\x4e - \xb4\x4f - \xb4\x50 - \xb4\x51 - \xb4\x52 - \xb4\x53 - \xb4\x54 - \xb4\x55 - \xb4\x56 - \xb4\x57 - \xb4\x58 - \xb4\x59 - \xb4\x5a - \xb4\x5b - \xb4\x5c - \xb4\x5d - \xb4\x5e - \xb4\x5f - \xb4\x60 - \xb4\x61 - \xb4\x62 - \xb4\x63 - \xb4\x64 - \xb4\x65 - \xb4\x66 - \xb4\x67 - \xb4\x68 - \xb4\x69 - \xb4\x6a - \xb4\x6b - \xb4\x6c - \xb4\x6d - \xb4\x6e - \xb4\x6f - \xb4\x70 - \xb4\x71 - \xb4\x72 - \xb4\x73 - \xb4\x74 - \xb4\x75 - \xb4\x76 - \xb4\x77 - \xb4\x78 - \xb4\x79 - \xb4\x7a - \xb4\x7b - \xb4\x7c - \xb4\x7d - \xb4\x7e - \xb4\xa1 - \xb4\xa2 - \xb4\xa3 - \xb4\xa4 - \xb4\xa5 - \xb4\xa6 - \xb4\xa7 - \xb4\xa8 - \xb4\xa9 - \xb4\xaa - \xb4\xab - \xb4\xac - \xb4\xad - \xb4\xae - \xb4\xaf - \xb4\xb0 - \xb4\xb1 - \xb4\xb2 - \xb4\xb3 - \xb4\xb4 - \xb4\xb5 - \xb4\xb6 - \xb4\xb7 - \xb4\xb8 - \xb4\xb9 - \xb4\xba - \xb4\xbb - \xb4\xbc - \xb4\xbd - \xb4\xbe - \xb4\xbf - \xb4\xc0 - \xb4\xc1 - \xb4\xc2 - \xb4\xc3 - \xb4\xc4 - \xb4\xc5 - \xb4\xc6 - \xb4\xc7 - \xb4\xc8 - \xb4\xc9 - \xb4\xca - \xb4\xcb - \xb4\xcc - \xb4\xcd - \xb4\xce - \xb4\xcf - \xb4\xd0 - \xb4\xd1 - \xb4\xd2 - \xb4\xd3 - \xb4\xd4 - \xb4\xd5 - \xb4\xd6 - \xb4\xd7 - \xb4\xd8 - \xb4\xd9 - \xb4\xda - \xb4\xdb - \xb4\xdc - \xb4\xdd - \xb4\xde - \xb4\xdf - \xb4\xe0 - \xb4\xe1 - \xb4\xe2 - \xb4\xe3 - \xb4\xe4 - \xb4\xe5 - \xb4\xe6 - \xb4\xe7 - \xb4\xe8 - \xb4\xe9 - \xb4\xea - \xb4\xeb - \xb4\xec - \xb4\xed - \xb4\xee - \xb4\xef - \xb4\xf0 - \xb4\xf1 - \xb4\xf2 - \xb4\xf3 - \xb4\xf4 - \xb4\xf5 - \xb4\xf6 - \xb4\xf7 - \xb4\xf8 - \xb4\xf9 - \xb4\xfa - \xb4\xfb - \xb4\xfc - \xb4\xfd - \xb4\xfe - \xb5\x40 - \xb5\x41 - \xb5\x42 - \xb5\x43 - \xb5\x44 - \xb5\x45 - \xb5\x46 - \xb5\x47 - \xb5\x48 - \xb5\x49 - \xb5\x4a - \xb5\x4b - \xb5\x4c - \xb5\x4d - \xb5\x4e - \xb5\x4f - \xb5\x50 - \xb5\x51 - \xb5\x52 - \xb5\x53 - \xb5\x54 - \xb5\x55 - \xb5\x56 - \xb5\x57 - \xb5\x58 - \xb5\x59 - \xb5\x5a - \xb5\x5b - \xb5\x5c - \xb5\x5d - \xb5\x5e - \xb5\x5f - \xb5\x60 - \xb5\x61 - \xb5\x62 - \xb5\x63 - \xb5\x64 - \xb5\x65 - \xb5\x66 - \xb5\x67 - \xb5\x68 - \xb5\x69 - \xb5\x6a - \xb5\x6b - \xb5\x6c - \xb5\x6d - \xb5\x6e - \xb5\x6f - \xb5\x70 - \xb5\x71 - \xb5\x72 - \xb5\x73 - \xb5\x74 - \xb5\x75 - \xb5\x76 - \xb5\x77 - \xb5\x78 - \xb5\x79 - \xb5\x7a - \xb5\x7b - \xb5\x7c - \xb5\x7d - \xb5\x7e - \xb5\xa1 - \xb5\xa2 - \xb5\xa3 - \xb5\xa4 - \xb5\xa5 - \xb5\xa6 - \xb5\xa7 - \xb5\xa8 - \xb5\xa9 - \xb5\xaa - \xb5\xab - \xb5\xac - \xb5\xad - \xb5\xae - \xb5\xaf - \xb5\xb0 - \xb5\xb1 - \xb5\xb2 - \xb5\xb3 - \xb5\xb4 - \xb5\xb5 - \xb5\xb6 - \xb5\xb7 - \xb5\xb8 - \xb5\xb9 - \xb5\xba - \xb5\xbb - \xb5\xbc - \xb5\xbd - \xb5\xbe - \xb5\xbf - \xb5\xc0 - \xb5\xc1 - \xb5\xc2 - \xb5\xc3 - \xb5\xc4 - \xb5\xc5 - \xb5\xc6 - \xb5\xc7 - \xb5\xc8 - \xb5\xc9 - \xb5\xca - \xb5\xcb - \xb5\xcc - \xb5\xcd - \xb5\xce - \xb5\xcf - \xb5\xd0 - \xb5\xd1 - \xb5\xd2 - \xb5\xd3 - \xb5\xd4 - \xb5\xd5 - \xb5\xd6 - \xb5\xd7 - \xb5\xd8 - \xb5\xd9 - \xb5\xda - \xb5\xdb - \xb5\xdc - \xb5\xdd - \xb5\xde - \xb5\xdf - \xb5\xe0 - \xb5\xe1 - \xb5\xe2 - \xb5\xe3 - \xb5\xe4 - \xb5\xe5 - \xb5\xe6 - \xb5\xe7 - \xb5\xe8 - \xb5\xe9 - \xb5\xea - \xb5\xeb - \xb5\xec - \xb5\xed - \xb5\xee - \xb5\xef - \xb5\xf0 - \xb5\xf1 - \xb5\xf2 - \xb5\xf3 - \xb5\xf4 - \xb5\xf5 - \xb5\xf6 - \xb5\xf7 - \xb5\xf8 - \xb5\xf9 - \xb5\xfa - \xb5\xfb - \xb5\xfc - \xb5\xfd - \xb5\xfe - \xb6\x40 - \xb6\x41 - \xb6\x42 - \xb6\x43 - \xb6\x44 - \xb6\x45 - \xb6\x46 - \xb6\x47 - \xb6\x48 - \xb6\x49 - \xb6\x4a - \xb6\x4b - \xb6\x4c - \xb6\x4d - \xb6\x4e - \xb6\x4f - \xb6\x50 - \xb6\x51 - \xb6\x52 - \xb6\x53 - \xb6\x54 - \xb6\x55 - \xb6\x56 - \xb6\x57 - \xb6\x58 - \xb6\x59 - \xb6\x5a - \xb6\x5b - \xb6\x5c - \xb6\x5d - \xb6\x5e - \xb6\x5f - \xb6\x60 - \xb6\x61 - \xb6\x62 - \xb6\x63 - \xb6\x64 - \xb6\x65 - \xb6\x66 - \xb6\x67 - \xb6\x68 - \xb6\x69 - \xb6\x6a - \xb6\x6b - \xb6\x6c - \xb6\x6d - \xb6\x6e - \xb6\x6f - \xb6\x70 - \xb6\x71 - \xb6\x72 - \xb6\x73 - \xb6\x74 - \xb6\x75 - \xb6\x76 - \xb6\x77 - \xb6\x78 - \xb6\x79 - \xb6\x7a - \xb6\x7b - \xb6\x7c - \xb6\x7d - \xb6\x7e - \xb6\xa1 - \xb6\xa2 - \xb6\xa3 - \xb6\xa4 - \xb6\xa5 - \xb6\xa6 - \xb6\xa7 - \xb6\xa8 - \xb6\xa9 - \xb6\xaa - \xb6\xab - \xb6\xac - \xb6\xad - \xb6\xae - \xb6\xaf - \xb6\xb0 - \xb6\xb1 - \xb6\xb2 - \xb6\xb3 - \xb6\xb4 - \xb6\xb5 - \xb6\xb6 - \xb6\xb7 - \xb6\xb8 - \xb6\xb9 - \xb6\xba - \xb6\xbb - \xb6\xbc - \xb6\xbd - \xb6\xbe - \xb6\xbf - \xb6\xc0 - \xb6\xc1 - \xb6\xc2 - \xb6\xc3 - \xb6\xc4 - \xb6\xc5 - \xb6\xc6 - \xb6\xc7 - \xb6\xc8 - \xb6\xc9 - \xb6\xca - \xb6\xcb - \xb6\xcc - \xb6\xcd - \xb6\xce - \xb6\xcf - \xb6\xd0 - \xb6\xd1 - \xb6\xd2 - \xb6\xd3 - \xb6\xd4 - \xb6\xd5 - \xb6\xd6 - \xb6\xd7 - \xb6\xd8 - \xb6\xd9 - \xb6\xda - \xb6\xdb - \xb6\xdc - \xb6\xdd - \xb6\xde - \xb6\xdf - \xb6\xe0 - \xb6\xe1 - \xb6\xe2 - \xb6\xe3 - \xb6\xe4 - \xb6\xe5 - \xb6\xe6 - \xb6\xe7 - \xb6\xe8 - \xb6\xe9 - \xb6\xea - \xb6\xeb - \xb6\xec - \xb6\xed - \xb6\xee - \xb6\xef - \xb6\xf0 - \xb6\xf1 - \xb6\xf2 - \xb6\xf3 - \xb6\xf4 - \xb6\xf5 - \xb6\xf6 - \xb6\xf7 - \xb6\xf8 - \xb6\xf9 - \xb6\xfa - \xb6\xfb - \xb6\xfc - \xb6\xfd - \xb6\xfe - \xb7\x40 - \xb7\x41 - \xb7\x42 - \xb7\x43 - \xb7\x44 - \xb7\x45 - \xb7\x46 - \xb7\x47 - \xb7\x48 - \xb7\x49 - \xb7\x4a - \xb7\x4b - \xb7\x4c - \xb7\x4d - \xb7\x4e - \xb7\x4f - \xb7\x50 - \xb7\x51 - \xb7\x52 - \xb7\x53 - \xb7\x54 - \xb7\x55 - \xb7\x56 - \xb7\x57 - \xb7\x58 - \xb7\x59 - \xb7\x5a - \xb7\x5b - \xb7\x5c - \xb7\x5d - \xb7\x5e - \xb7\x5f - \xb7\x60 - \xb7\x61 - \xb7\x62 - \xb7\x63 - \xb7\x64 - \xb7\x65 - \xb7\x66 - \xb7\x67 - \xb7\x68 - \xb7\x69 - \xb7\x6a - \xb7\x6b - \xb7\x6c - \xb7\x6d - \xb7\x6e - \xb7\x6f - \xb7\x70 - \xb7\x71 - \xb7\x72 - \xb7\x73 - \xb7\x74 - \xb7\x75 - \xb7\x76 - \xb7\x77 - \xb7\x78 - \xb7\x79 - \xb7\x7a - \xb7\x7b - \xb7\x7c - \xb7\x7d - \xb7\x7e - \xb7\xa1 - \xb7\xa2 - \xb7\xa3 - \xb7\xa4 - \xb7\xa5 - \xb7\xa6 - \xb7\xa7 - \xb7\xa8 - \xb7\xa9 - \xb7\xaa - \xb7\xab - \xb7\xac - \xb7\xad - \xb7\xae - \xb7\xaf - \xb7\xb0 - \xb7\xb1 - \xb7\xb2 - \xb7\xb3 - \xb7\xb4 - \xb7\xb5 - \xb7\xb6 - \xb7\xb7 - \xb7\xb8 - \xb7\xb9 - \xb7\xba - \xb7\xbb - \xb7\xbc - \xb7\xbd - \xb7\xbe - \xb7\xbf - \xb7\xc0 - \xb7\xc1 - \xb7\xc2 - \xb7\xc3 - \xb7\xc4 - \xb7\xc5 - \xb7\xc6 - \xb7\xc7 - \xb7\xc8 - \xb7\xc9 - \xb7\xca - \xb7\xcb - \xb7\xcc - \xb7\xcd - \xb7\xce - \xb7\xcf - \xb7\xd0 - \xb7\xd1 - \xb7\xd2 - \xb7\xd3 - \xb7\xd4 - \xb7\xd5 - \xb7\xd6 - \xb7\xd7 - \xb7\xd8 - \xb7\xd9 - \xb7\xda - \xb7\xdb - \xb7\xdc - \xb7\xdd - \xb7\xde - \xb7\xdf - \xb7\xe0 - \xb7\xe1 - \xb7\xe2 - \xb7\xe3 - \xb7\xe4 - \xb7\xe5 - \xb7\xe6 - \xb7\xe7 - \xb7\xe8 - \xb7\xe9 - \xb7\xea - \xb7\xeb - \xb7\xec - \xb7\xed - \xb7\xee - \xb7\xef - \xb7\xf0 - \xb7\xf1 - \xb7\xf2 - \xb7\xf3 - \xb7\xf4 - \xb7\xf5 - \xb7\xf6 - \xb7\xf7 - \xb7\xf8 - \xb7\xf9 - \xb7\xfa - \xb7\xfb - \xb7\xfc - \xb7\xfd - \xb7\xfe - \xb8\x40 - \xb8\x41 - \xb8\x42 - \xb8\x43 - \xb8\x44 - \xb8\x45 - \xb8\x46 - \xb8\x47 - \xb8\x48 - \xb8\x49 - \xb8\x4a - \xb8\x4b - \xb8\x4c - \xb8\x4d - \xb8\x4e - \xb8\x4f - \xb8\x50 - \xb8\x51 - \xb8\x52 - \xb8\x53 - \xb8\x54 - \xb8\x55 - \xb8\x56 - \xb8\x57 - \xb8\x58 - \xb8\x59 - \xb8\x5a - \xb8\x5b - \xb8\x5c - \xb8\x5d - \xb8\x5e - \xb8\x5f - \xb8\x60 - \xb8\x61 - \xb8\x62 - \xb8\x63 - \xb8\x64 - \xb8\x65 - \xb8\x66 - \xb8\x67 - \xb8\x68 - \xb8\x69 - \xb8\x6a - \xb8\x6b - \xb8\x6c - \xb8\x6d - \xb8\x6e - \xb8\x6f - \xb8\x70 - \xb8\x71 - \xb8\x72 - \xb8\x73 - \xb8\x74 - \xb8\x75 - \xb8\x76 - \xb8\x77 - \xb8\x78 - \xb8\x79 - \xb8\x7a - \xb8\x7b - \xb8\x7c - \xb8\x7d - \xb8\x7e - \xb8\xa1 - \xb8\xa2 - \xb8\xa3 - \xb8\xa4 - \xb8\xa5 - \xb8\xa6 - \xb8\xa7 - \xb8\xa8 - \xb8\xa9 - \xb8\xaa - \xb8\xab - \xb8\xac - \xb8\xad - \xb8\xae - \xb8\xaf - \xb8\xb0 - \xb8\xb1 - \xb8\xb2 - \xb8\xb3 - \xb8\xb4 - \xb8\xb5 - \xb8\xb6 - \xb8\xb7 - \xb8\xb8 - \xb8\xb9 - \xb8\xba - \xb8\xbb - \xb8\xbc - \xb8\xbd - \xb8\xbe - \xb8\xbf - \xb8\xc0 - \xb8\xc1 - \xb8\xc2 - \xb8\xc3 - \xb8\xc4 - \xb8\xc5 - \xb8\xc6 - \xb8\xc7 - \xb8\xc8 - \xb8\xc9 - \xb8\xca - \xb8\xcb - \xb8\xcc - \xb8\xcd - \xb8\xce - \xb8\xcf - \xb8\xd0 - \xb8\xd1 - \xb8\xd2 - \xb8\xd3 - \xb8\xd4 - \xb8\xd5 - \xb8\xd6 - \xb8\xd7 - \xb8\xd8 - \xb8\xd9 - \xb8\xda - \xb8\xdb - \xb8\xdc - \xb8\xdd - \xb8\xde - \xb8\xdf - \xb8\xe0 - \xb8\xe1 - \xb8\xe2 - \xb8\xe3 - \xb8\xe4 - \xb8\xe5 - \xb8\xe6 - \xb8\xe7 - \xb8\xe8 - \xb8\xe9 - \xb8\xea - \xb8\xeb - \xb8\xec - \xb8\xed - \xb8\xee - \xb8\xef - \xb8\xf0 - \xb8\xf1 - \xb8\xf2 - \xb8\xf3 - \xb8\xf4 - \xb8\xf5 - \xb8\xf6 - \xb8\xf7 - \xb8\xf8 - \xb8\xf9 - \xb8\xfa - \xb8\xfb - \xb8\xfc - \xb8\xfd - \xb8\xfe - \xb9\x40 - \xb9\x41 - \xb9\x42 - \xb9\x43 - \xb9\x44 - \xb9\x45 - \xb9\x46 - \xb9\x47 - \xb9\x48 - \xb9\x49 - \xb9\x4a - \xb9\x4b - \xb9\x4c - \xb9\x4d - \xb9\x4e - \xb9\x4f - \xb9\x50 - \xb9\x51 - \xb9\x52 - \xb9\x53 - \xb9\x54 - \xb9\x55 - \xb9\x56 - \xb9\x57 - \xb9\x58 - \xb9\x59 - \xb9\x5a - \xb9\x5b - \xb9\x5c - \xb9\x5d - \xb9\x5e - \xb9\x5f - \xb9\x60 - \xb9\x61 - \xb9\x62 - \xb9\x63 - \xb9\x64 - \xb9\x65 - \xb9\x66 - \xb9\x67 - \xb9\x68 - \xb9\x69 - \xb9\x6a - \xb9\x6b - \xb9\x6c - \xb9\x6d - \xb9\x6e - \xb9\x6f - \xb9\x70 - \xb9\x71 - \xb9\x72 - \xb9\x73 - \xb9\x74 - \xb9\x75 - \xb9\x76 - \xb9\x77 - \xb9\x78 - \xb9\x79 - \xb9\x7a - \xb9\x7b - \xb9\x7c - \xb9\x7d - \xb9\x7e - \xb9\xa1 - \xb9\xa2 - \xb9\xa3 - \xb9\xa4 - \xb9\xa5 - \xb9\xa6 - \xb9\xa7 - \xb9\xa8 - \xb9\xa9 - \xb9\xaa - \xb9\xab - \xb9\xac - \xb9\xad - \xb9\xae - \xb9\xaf - \xb9\xb0 - \xb9\xb1 - \xb9\xb2 - \xb9\xb3 - \xb9\xb4 - \xb9\xb5 - \xb9\xb6 - \xb9\xb7 - \xb9\xb8 - \xb9\xb9 - \xb9\xba - \xb9\xbb - \xb9\xbc - \xb9\xbd - \xb9\xbe - \xb9\xbf - \xb9\xc0 - \xb9\xc1 - \xb9\xc2 - \xb9\xc3 - \xb9\xc4 - \xb9\xc5 - \xb9\xc6 - \xb9\xc7 - \xb9\xc8 - \xb9\xc9 - \xb9\xca - \xb9\xcb - \xb9\xcc - \xb9\xcd - \xb9\xce - \xb9\xcf - \xb9\xd0 - \xb9\xd1 - \xb9\xd2 - \xb9\xd3 - \xb9\xd4 - \xb9\xd5 - \xb9\xd6 - \xb9\xd7 - \xb9\xd8 - \xb9\xd9 - \xb9\xda - \xb9\xdb - \xb9\xdc - \xb9\xdd - \xb9\xde - \xb9\xdf - \xb9\xe0 - \xb9\xe1 - \xb9\xe2 - \xb9\xe3 - \xb9\xe4 - \xb9\xe5 - \xb9\xe6 - \xb9\xe7 - \xb9\xe8 - \xb9\xe9 - \xb9\xea - \xb9\xeb - \xb9\xec - \xb9\xed - \xb9\xee - \xb9\xef - \xb9\xf0 - \xb9\xf1 - \xb9\xf2 - \xb9\xf3 - \xb9\xf4 - \xb9\xf5 - \xb9\xf6 - \xb9\xf7 - \xb9\xf8 - \xb9\xf9 - \xb9\xfa - \xb9\xfb - \xb9\xfc - \xb9\xfd - \xb9\xfe - \xba\x40 - \xba\x41 - \xba\x42 - \xba\x43 - \xba\x44 - \xba\x45 - \xba\x46 - \xba\x47 - \xba\x48 - \xba\x49 - \xba\x4a - \xba\x4b - \xba\x4c - \xba\x4d - \xba\x4e - \xba\x4f - \xba\x50 - \xba\x51 - \xba\x52 - \xba\x53 - \xba\x54 - \xba\x55 - \xba\x56 - \xba\x57 - \xba\x58 - \xba\x59 - \xba\x5a - \xba\x5b - \xba\x5c - \xba\x5d - \xba\x5e - \xba\x5f - \xba\x60 - \xba\x61 - \xba\x62 - \xba\x63 - \xba\x64 - \xba\x65 - \xba\x66 - \xba\x67 - \xba\x68 - \xba\x69 - \xba\x6a - \xba\x6b - \xba\x6c - \xba\x6d - \xba\x6e - \xba\x6f - \xba\x70 - \xba\x71 - \xba\x72 - \xba\x73 - \xba\x74 - \xba\x75 - \xba\x76 - \xba\x77 - \xba\x78 - \xba\x79 - \xba\x7a - \xba\x7b - \xba\x7c - \xba\x7d - \xba\x7e - \xba\xa1 - \xba\xa2 - \xba\xa3 - \xba\xa4 - \xba\xa5 - \xba\xa6 - \xba\xa7 - \xba\xa8 - \xba\xa9 - \xba\xaa - \xba\xab - \xba\xac - \xba\xad - \xba\xae - \xba\xaf - \xba\xb0 - \xba\xb1 - \xba\xb2 - \xba\xb3 - \xba\xb4 - \xba\xb5 - \xba\xb6 - \xba\xb7 - \xba\xb8 - \xba\xb9 - \xba\xba - \xba\xbb - \xba\xbc - \xba\xbd - \xba\xbe - \xba\xbf - \xba\xc0 - \xba\xc1 - \xba\xc2 - \xba\xc3 - \xba\xc4 - \xba\xc5 - \xba\xc6 - \xba\xc7 - \xba\xc8 - \xba\xc9 - \xba\xca - \xba\xcb - \xba\xcc - \xba\xcd - \xba\xce - \xba\xcf - \xba\xd0 - \xba\xd1 - \xba\xd2 - \xba\xd3 - \xba\xd4 - \xba\xd5 - \xba\xd6 - \xba\xd7 - \xba\xd8 - \xba\xd9 - \xba\xda - \xba\xdb - \xba\xdc - \xba\xdd - \xba\xde - \xba\xdf - \xba\xe0 - \xba\xe1 - \xba\xe2 - \xba\xe3 - \xba\xe4 - \xba\xe5 - \xba\xe6 - \xba\xe7 - \xba\xe8 - \xba\xe9 - \xba\xea - \xba\xeb - \xba\xec - \xba\xed - \xba\xee - \xba\xef - \xba\xf0 - \xba\xf1 - \xba\xf2 - \xba\xf3 - \xba\xf4 - \xba\xf5 - \xba\xf6 - \xba\xf7 - \xba\xf8 - \xba\xf9 - \xba\xfa - \xba\xfb - \xba\xfc - \xba\xfd - \xba\xfe - \xbb\x40 - \xbb\x41 - \xbb\x42 - \xbb\x43 - \xbb\x44 - \xbb\x45 - \xbb\x46 - \xbb\x47 - \xbb\x48 - \xbb\x49 - \xbb\x4a - \xbb\x4b - \xbb\x4c - \xbb\x4d - \xbb\x4e - \xbb\x4f - \xbb\x50 - \xbb\x51 - \xbb\x52 - \xbb\x53 - \xbb\x54 - \xbb\x55 - \xbb\x56 - \xbb\x57 - \xbb\x58 - \xbb\x59 - \xbb\x5a - \xbb\x5b - \xbb\x5c - \xbb\x5d - \xbb\x5e - \xbb\x5f - \xbb\x60 - \xbb\x61 - \xbb\x62 - \xbb\x63 - \xbb\x64 - \xbb\x65 - \xbb\x66 - \xbb\x67 - \xbb\x68 - \xbb\x69 - \xbb\x6a - \xbb\x6b - \xbb\x6c - \xbb\x6d - \xbb\x6e - \xbb\x6f - \xbb\x70 - \xbb\x71 - \xbb\x72 - \xbb\x73 - \xbb\x74 - \xbb\x75 - \xbb\x76 - \xbb\x77 - \xbb\x78 - \xbb\x79 - \xbb\x7a - \xbb\x7b - \xbb\x7c - \xbb\x7d - \xbb\x7e - \xbb\xa1 - \xbb\xa2 - \xbb\xa3 - \xbb\xa4 - \xbb\xa5 - \xbb\xa6 - \xbb\xa7 - \xbb\xa8 - \xbb\xa9 - \xbb\xaa - \xbb\xab - \xbb\xac - \xbb\xad - \xbb\xae - \xbb\xaf - \xbb\xb0 - \xbb\xb1 - \xbb\xb2 - \xbb\xb3 - \xbb\xb4 - \xbb\xb5 - \xbb\xb6 - \xbb\xb7 - \xbb\xb8 - \xbb\xb9 - \xbb\xba - \xbb\xbb - \xbb\xbc - \xbb\xbd - \xbb\xbe - \xbb\xbf - \xbb\xc0 - \xbb\xc1 - \xbb\xc2 - \xbb\xc3 - \xbb\xc4 - \xbb\xc5 - \xbb\xc6 - \xbb\xc7 - \xbb\xc8 - \xbb\xc9 - \xbb\xca - \xbb\xcb - \xbb\xcc - \xbb\xcd - \xbb\xce - \xbb\xcf - \xbb\xd0 - \xbb\xd1 - \xbb\xd2 - \xbb\xd3 - \xbb\xd4 - \xbb\xd5 - \xbb\xd6 - \xbb\xd7 - \xbb\xd8 - \xbb\xd9 - \xbb\xda - \xbb\xdb - \xbb\xdc - \xbb\xdd - \xbb\xde - \xbb\xdf - \xbb\xe0 - \xbb\xe1 - \xbb\xe2 - \xbb\xe3 - \xbb\xe4 - \xbb\xe5 - \xbb\xe6 - \xbb\xe7 - \xbb\xe8 - \xbb\xe9 - \xbb\xea - \xbb\xeb - \xbb\xec - \xbb\xed - \xbb\xee - \xbb\xef - \xbb\xf0 - \xbb\xf1 - \xbb\xf2 - \xbb\xf3 - \xbb\xf4 - \xbb\xf5 - \xbb\xf6 - \xbb\xf7 - \xbb\xf8 - \xbb\xf9 - \xbb\xfa - \xbb\xfb - \xbb\xfc - \xbb\xfd - \xbb\xfe - \xbc\x40 - \xbc\x41 - \xbc\x42 - \xbc\x43 - \xbc\x44 - \xbc\x45 - \xbc\x46 - \xbc\x47 - \xbc\x48 - \xbc\x49 - \xbc\x4a - \xbc\x4b - \xbc\x4c - \xbc\x4d - \xbc\x4e - \xbc\x4f - \xbc\x50 - \xbc\x51 - \xbc\x52 - \xbc\x53 - \xbc\x54 - \xbc\x55 - \xbc\x56 - \xbc\x57 - \xbc\x58 - \xbc\x59 - \xbc\x5a - \xbc\x5b - \xbc\x5c - \xbc\x5d - \xbc\x5e - \xbc\x5f - \xbc\x60 - \xbc\x61 - \xbc\x62 - \xbc\x63 - \xbc\x64 - \xbc\x65 - \xbc\x66 - \xbc\x67 - \xbc\x68 - \xbc\x69 - \xbc\x6a - \xbc\x6b - \xbc\x6c - \xbc\x6d - \xbc\x6e - \xbc\x6f - \xbc\x70 - \xbc\x71 - \xbc\x72 - \xbc\x73 - \xbc\x74 - \xbc\x75 - \xbc\x76 - \xbc\x77 - \xbc\x78 - \xbc\x79 - \xbc\x7a - \xbc\x7b - \xbc\x7c - \xbc\x7d - \xbc\x7e - \xbc\xa1 - \xbc\xa2 - \xbc\xa3 - \xbc\xa4 - \xbc\xa5 - \xbc\xa6 - \xbc\xa7 - \xbc\xa8 - \xbc\xa9 - \xbc\xaa - \xbc\xab - \xbc\xac - \xbc\xad - \xbc\xae - \xbc\xaf - \xbc\xb0 - \xbc\xb1 - \xbc\xb2 - \xbc\xb3 - \xbc\xb4 - \xbc\xb5 - \xbc\xb6 - \xbc\xb7 - \xbc\xb8 - \xbc\xb9 - \xbc\xba - \xbc\xbb - \xbc\xbc - \xbc\xbd - \xbc\xbe - \xbc\xbf - \xbc\xc0 - \xbc\xc1 - \xbc\xc2 - \xbc\xc3 - \xbc\xc4 - \xbc\xc5 - \xbc\xc6 - \xbc\xc7 - \xbc\xc8 - \xbc\xc9 - \xbc\xca - \xbc\xcb - \xbc\xcc - \xbc\xcd - \xbc\xce - \xbc\xcf - \xbc\xd0 - \xbc\xd1 - \xbc\xd2 - \xbc\xd3 - \xbc\xd4 - \xbc\xd5 - \xbc\xd6 - \xbc\xd7 - \xbc\xd8 - \xbc\xd9 - \xbc\xda - \xbc\xdb - \xbc\xdc - \xbc\xdd - \xbc\xde - \xbc\xdf - \xbc\xe0 - \xbc\xe1 - \xbc\xe2 - \xbc\xe3 - \xbc\xe4 - \xbc\xe5 - \xbc\xe6 - \xbc\xe7 - \xbc\xe8 - \xbc\xe9 - \xbc\xea - \xbc\xeb - \xbc\xec - \xbc\xed - \xbc\xee - \xbc\xef - \xbc\xf0 - \xbc\xf1 - \xbc\xf2 - \xbc\xf3 - \xbc\xf4 - \xbc\xf5 - \xbc\xf6 - \xbc\xf7 - \xbc\xf8 - \xbc\xf9 - \xbc\xfa - \xbc\xfb - \xbc\xfc - \xbc\xfd - \xbc\xfe - \xbd\x40 - \xbd\x41 - \xbd\x42 - \xbd\x43 - \xbd\x44 - \xbd\x45 - \xbd\x46 - \xbd\x47 - \xbd\x48 - \xbd\x49 - \xbd\x4a - \xbd\x4b - \xbd\x4c - \xbd\x4d - \xbd\x4e - \xbd\x4f - \xbd\x50 - \xbd\x51 - \xbd\x52 - \xbd\x53 - \xbd\x54 - \xbd\x55 - \xbd\x56 - \xbd\x57 - \xbd\x58 - \xbd\x59 - \xbd\x5a - \xbd\x5b - \xbd\x5c - \xbd\x5d - \xbd\x5e - \xbd\x5f - \xbd\x60 - \xbd\x61 - \xbd\x62 - \xbd\x63 - \xbd\x64 - \xbd\x65 - \xbd\x66 - \xbd\x67 - \xbd\x68 - \xbd\x69 - \xbd\x6a - \xbd\x6b - \xbd\x6c - \xbd\x6d - \xbd\x6e - \xbd\x6f - \xbd\x70 - \xbd\x71 - \xbd\x72 - \xbd\x73 - \xbd\x74 - \xbd\x75 - \xbd\x76 - \xbd\x77 - \xbd\x78 - \xbd\x79 - \xbd\x7a - \xbd\x7b - \xbd\x7c - \xbd\x7d - \xbd\x7e - \xbd\xa1 - \xbd\xa2 - \xbd\xa3 - \xbd\xa4 - \xbd\xa5 - \xbd\xa6 - \xbd\xa7 - \xbd\xa8 - \xbd\xa9 - \xbd\xaa - \xbd\xab - \xbd\xac - \xbd\xad - \xbd\xae - \xbd\xaf - \xbd\xb0 - \xbd\xb1 - \xbd\xb2 - \xbd\xb3 - \xbd\xb4 - \xbd\xb5 - \xbd\xb6 - \xbd\xb7 - \xbd\xb8 - \xbd\xb9 - \xbd\xba - \xbd\xbb - \xbd\xbc - \xbd\xbd - \xbd\xbe - \xbd\xbf - \xbd\xc0 - \xbd\xc1 - \xbd\xc2 - \xbd\xc3 - \xbd\xc4 - \xbd\xc5 - \xbd\xc6 - \xbd\xc7 - \xbd\xc8 - \xbd\xc9 - \xbd\xca - \xbd\xcb - \xbd\xcc - \xbd\xcd - \xbd\xce - \xbd\xcf - \xbd\xd0 - \xbd\xd1 - \xbd\xd2 - \xbd\xd3 - \xbd\xd4 - \xbd\xd5 - \xbd\xd6 - \xbd\xd7 - \xbd\xd8 - \xbd\xd9 - \xbd\xda - \xbd\xdb - \xbd\xdc - \xbd\xdd - \xbd\xde - \xbd\xdf - \xbd\xe0 - \xbd\xe1 - \xbd\xe2 - \xbd\xe3 - \xbd\xe4 - \xbd\xe5 - \xbd\xe6 - \xbd\xe7 - \xbd\xe8 - \xbd\xe9 - \xbd\xea - \xbd\xeb - \xbd\xec - \xbd\xed - \xbd\xee - \xbd\xef - \xbd\xf0 - \xbd\xf1 - \xbd\xf2 - \xbd\xf3 - \xbd\xf4 - \xbd\xf5 - \xbd\xf6 - \xbd\xf7 - \xbd\xf8 - \xbd\xf9 - \xbd\xfa - \xbd\xfb - \xbd\xfc - \xbd\xfd - \xbd\xfe - \xbe\x40 - \xbe\x41 - \xbe\x42 - \xbe\x43 - \xbe\x44 - \xbe\x45 - \xbe\x46 - \xbe\x47 - \xbe\x48 - \xbe\x49 - \xbe\x4a - \xbe\x4b - \xbe\x4c - \xbe\x4d - \xbe\x4e - \xbe\x4f - \xbe\x50 - \xbe\x51 - \xbe\x52 - \xbe\x53 - \xbe\x54 - \xbe\x55 - \xbe\x56 - \xbe\x57 - \xbe\x58 - \xbe\x59 - \xbe\x5a - \xbe\x5b - \xbe\x5c - \xbe\x5d - \xbe\x5e - \xbe\x5f - \xbe\x60 - \xbe\x61 - \xbe\x62 - \xbe\x63 - \xbe\x64 - \xbe\x65 - \xbe\x66 - \xbe\x67 - \xbe\x68 - \xbe\x69 - \xbe\x6a - \xbe\x6b - \xbe\x6c - \xbe\x6d - \xbe\x6e - \xbe\x6f - \xbe\x70 - \xbe\x71 - \xbe\x72 - \xbe\x73 - \xbe\x74 - \xbe\x75 - \xbe\x76 - \xbe\x77 - \xbe\x78 - \xbe\x79 - \xbe\x7a - \xbe\x7b - \xbe\x7c - \xbe\x7d - \xbe\x7e - \xbe\xa1 - \xbe\xa2 - \xbe\xa3 - \xbe\xa4 - \xbe\xa5 - \xbe\xa6 - \xbe\xa7 - \xbe\xa8 - \xbe\xa9 - \xbe\xaa - \xbe\xab - \xbe\xac - \xbe\xad - \xbe\xae - \xbe\xaf - \xbe\xb0 - \xbe\xb1 - \xbe\xb2 - \xbe\xb3 - \xbe\xb4 - \xbe\xb5 - \xbe\xb6 - \xbe\xb7 - \xbe\xb8 - \xbe\xb9 - \xbe\xba - \xbe\xbb - \xbe\xbc - \xbe\xbd - \xbe\xbe - \xbe\xbf - \xbe\xc0 - \xbe\xc1 - \xbe\xc2 - \xbe\xc3 - \xbe\xc4 - \xbe\xc5 - \xbe\xc6 - \xbe\xc7 - \xbe\xc8 - \xbe\xc9 - \xbe\xca - \xbe\xcb - \xbe\xcc - \xbe\xcd - \xbe\xce - \xbe\xcf - \xbe\xd0 - \xbe\xd1 - \xbe\xd2 - \xbe\xd3 - \xbe\xd4 - \xbe\xd5 - \xbe\xd6 - \xbe\xd7 - \xbe\xd8 - \xbe\xd9 - \xbe\xda - \xbe\xdb - \xbe\xdc - \xbe\xdd - \xbe\xde - \xbe\xdf - \xbe\xe0 - \xbe\xe1 - \xbe\xe2 - \xbe\xe3 - \xbe\xe4 - \xbe\xe5 - \xbe\xe6 - \xbe\xe7 - \xbe\xe8 - \xbe\xe9 - \xbe\xea - \xbe\xeb - \xbe\xec - \xbe\xed - \xbe\xee - \xbe\xef - \xbe\xf0 - \xbe\xf1 - \xbe\xf2 - \xbe\xf3 - \xbe\xf4 - \xbe\xf5 - \xbe\xf6 - \xbe\xf7 - \xbe\xf8 - \xbe\xf9 - \xbe\xfa - \xbe\xfb - \xbe\xfc - \xbe\xfd - \xbe\xfe - \xbf\x40 - \xbf\x41 - \xbf\x42 - \xbf\x43 - \xbf\x44 - \xbf\x45 - \xbf\x46 - \xbf\x47 - \xbf\x48 - \xbf\x49 - \xbf\x4a - \xbf\x4b - \xbf\x4c - \xbf\x4d - \xbf\x4e - \xbf\x4f - \xbf\x50 - \xbf\x51 - \xbf\x52 - \xbf\x53 - \xbf\x54 - \xbf\x55 - \xbf\x56 - \xbf\x57 - \xbf\x58 - \xbf\x59 - \xbf\x5a - \xbf\x5b - \xbf\x5c - \xbf\x5d - \xbf\x5e - \xbf\x5f - \xbf\x60 - \xbf\x61 - \xbf\x62 - \xbf\x63 - \xbf\x64 - \xbf\x65 - \xbf\x66 - \xbf\x67 - \xbf\x68 - \xbf\x69 - \xbf\x6a - \xbf\x6b - \xbf\x6c - \xbf\x6d - \xbf\x6e - \xbf\x6f - \xbf\x70 - \xbf\x71 - \xbf\x72 - \xbf\x73 - \xbf\x74 - \xbf\x75 - \xbf\x76 - \xbf\x77 - \xbf\x78 - \xbf\x79 - \xbf\x7a - \xbf\x7b - \xbf\x7c - \xbf\x7d - \xbf\x7e - \xbf\xa1 - \xbf\xa2 - \xbf\xa3 - \xbf\xa4 - \xbf\xa5 - \xbf\xa6 - \xbf\xa7 - \xbf\xa8 - \xbf\xa9 - \xbf\xaa - \xbf\xab - \xbf\xac - \xbf\xad - \xbf\xae - \xbf\xaf - \xbf\xb0 - \xbf\xb1 - \xbf\xb2 - \xbf\xb3 - \xbf\xb4 - \xbf\xb5 - \xbf\xb6 - \xbf\xb7 - \xbf\xb8 - \xbf\xb9 - \xbf\xba - \xbf\xbb - \xbf\xbc - \xbf\xbd - \xbf\xbe - \xbf\xbf - \xbf\xc0 - \xbf\xc1 - \xbf\xc2 - \xbf\xc3 - \xbf\xc4 - \xbf\xc5 - \xbf\xc6 - \xbf\xc7 - \xbf\xc8 - \xbf\xc9 - \xbf\xca - \xbf\xcb - \xbf\xcc - \xbf\xcd - \xbf\xce - \xbf\xcf - \xbf\xd0 - \xbf\xd1 - \xbf\xd2 - \xbf\xd3 - \xbf\xd4 - \xbf\xd5 - \xbf\xd6 - \xbf\xd7 - \xbf\xd8 - \xbf\xd9 - \xbf\xda - \xbf\xdb - \xbf\xdc - \xbf\xdd - \xbf\xde - \xbf\xdf - \xbf\xe0 - \xbf\xe1 - \xbf\xe2 - \xbf\xe3 - \xbf\xe4 - \xbf\xe5 - \xbf\xe6 - \xbf\xe7 - \xbf\xe8 - \xbf\xe9 - \xbf\xea - \xbf\xeb - \xbf\xec - \xbf\xed - \xbf\xee - \xbf\xef - \xbf\xf0 - \xbf\xf1 - \xbf\xf2 - \xbf\xf3 - \xbf\xf4 - \xbf\xf5 - \xbf\xf6 - \xbf\xf7 - \xbf\xf8 - \xbf\xf9 - \xbf\xfa - \xbf\xfb - \xbf\xfc - \xbf\xfd - \xbf\xfe - \xc0\x40 - \xc0\x41 - \xc0\x42 - \xc0\x43 - \xc0\x44 - \xc0\x45 - \xc0\x46 - \xc0\x47 - \xc0\x48 - \xc0\x49 - \xc0\x4a - \xc0\x4b - \xc0\x4c - \xc0\x4d - \xc0\x4e - \xc0\x4f - \xc0\x50 - \xc0\x51 - \xc0\x52 - \xc0\x53 - \xc0\x54 - \xc0\x55 - \xc0\x56 - \xc0\x57 - \xc0\x58 - \xc0\x59 - \xc0\x5a - \xc0\x5b - \xc0\x5c - \xc0\x5d - \xc0\x5e - \xc0\x5f - \xc0\x60 - \xc0\x61 - \xc0\x62 - \xc0\x63 - \xc0\x64 - \xc0\x65 - \xc0\x66 - \xc0\x67 - \xc0\x68 - \xc0\x69 - \xc0\x6a - \xc0\x6b - \xc0\x6c - \xc0\x6d - \xc0\x6e - \xc0\x6f - \xc0\x70 - \xc0\x71 - \xc0\x72 - \xc0\x73 - \xc0\x74 - \xc0\x75 - \xc0\x76 - \xc0\x77 - \xc0\x78 - \xc0\x79 - \xc0\x7a - \xc0\x7b - \xc0\x7c - \xc0\x7d - \xc0\x7e - \xc0\xa1 - \xc0\xa2 - \xc0\xa3 - \xc0\xa4 - \xc0\xa5 - \xc0\xa6 - \xc0\xa7 - \xc0\xa8 - \xc0\xa9 - \xc0\xaa - \xc0\xab - \xc0\xac - \xc0\xad - \xc0\xae - \xc0\xaf - \xc0\xb0 - \xc0\xb1 - \xc0\xb2 - \xc0\xb3 - \xc0\xb4 - \xc0\xb5 - \xc0\xb6 - \xc0\xb7 - \xc0\xb8 - \xc0\xb9 - \xc0\xba - \xc0\xbb - \xc0\xbc - \xc0\xbd - \xc0\xbe - \xc0\xbf - \xc0\xc0 - \xc0\xc1 - \xc0\xc2 - \xc0\xc3 - \xc0\xc4 - \xc0\xc5 - \xc0\xc6 - \xc0\xc7 - \xc0\xc8 - \xc0\xc9 - \xc0\xca - \xc0\xcb - \xc0\xcc - \xc0\xcd - \xc0\xce - \xc0\xcf - \xc0\xd0 - \xc0\xd1 - \xc0\xd2 - \xc0\xd3 - \xc0\xd4 - \xc0\xd5 - \xc0\xd6 - \xc0\xd7 - \xc0\xd8 - \xc0\xd9 - \xc0\xda - \xc0\xdb - \xc0\xdc - \xc0\xdd - \xc0\xde - \xc0\xdf - \xc0\xe0 - \xc0\xe1 - \xc0\xe2 - \xc0\xe3 - \xc0\xe4 - \xc0\xe5 - \xc0\xe6 - \xc0\xe7 - \xc0\xe8 - \xc0\xe9 - \xc0\xea - \xc0\xeb - \xc0\xec - \xc0\xed - \xc0\xee - \xc0\xef - \xc0\xf0 - \xc0\xf1 - \xc0\xf2 - \xc0\xf3 - \xc0\xf4 - \xc0\xf5 - \xc0\xf6 - \xc0\xf7 - \xc0\xf8 - \xc0\xf9 - \xc0\xfa - \xc0\xfb - \xc0\xfc - \xc0\xfd - \xc0\xfe - \xc1\x40 - \xc1\x41 - \xc1\x42 - \xc1\x43 - \xc1\x44 - \xc1\x45 - \xc1\x46 - \xc1\x47 - \xc1\x48 - \xc1\x49 - \xc1\x4a - \xc1\x4b - \xc1\x4c - \xc1\x4d - \xc1\x4e - \xc1\x4f - \xc1\x50 - \xc1\x51 - \xc1\x52 - \xc1\x53 - \xc1\x54 - \xc1\x55 - \xc1\x56 - \xc1\x57 - \xc1\x58 - \xc1\x59 - \xc1\x5a - \xc1\x5b - \xc1\x5c - \xc1\x5d - \xc1\x5e - \xc1\x5f - \xc1\x60 - \xc1\x61 - \xc1\x62 - \xc1\x63 - \xc1\x64 - \xc1\x65 - \xc1\x66 - \xc1\x67 - \xc1\x68 - \xc1\x69 - \xc1\x6a - \xc1\x6b - \xc1\x6c - \xc1\x6d - \xc1\x6e - \xc1\x6f - \xc1\x70 - \xc1\x71 - \xc1\x72 - \xc1\x73 - \xc1\x74 - \xc1\x75 - \xc1\x76 - \xc1\x77 - \xc1\x78 - \xc1\x79 - \xc1\x7a - \xc1\x7b - \xc1\x7c - \xc1\x7d - \xc1\x7e - \xc1\xa1 - \xc1\xa2 - \xc1\xa3 - \xc1\xa4 - \xc1\xa5 - \xc1\xa6 - \xc1\xa7 - \xc1\xa8 - \xc1\xa9 - \xc1\xaa - \xc1\xab - \xc1\xac - \xc1\xad - \xc1\xae - \xc1\xaf - \xc1\xb0 - \xc1\xb1 - \xc1\xb2 - \xc1\xb3 - \xc1\xb4 - \xc1\xb5 - \xc1\xb6 - \xc1\xb7 - \xc1\xb8 - \xc1\xb9 - \xc1\xba - \xc1\xbb - \xc1\xbc - \xc1\xbd - \xc1\xbe - \xc1\xbf - \xc1\xc0 - \xc1\xc1 - \xc1\xc2 - \xc1\xc3 - \xc1\xc4 - \xc1\xc5 - \xc1\xc6 - \xc1\xc7 - \xc1\xc8 - \xc1\xc9 - \xc1\xca - \xc1\xcb - \xc1\xcc - \xc1\xcd - \xc1\xce - \xc1\xcf - \xc1\xd0 - \xc1\xd1 - \xc1\xd2 - \xc1\xd3 - \xc1\xd4 - \xc1\xd5 - \xc1\xd6 - \xc1\xd7 - \xc1\xd8 - \xc1\xd9 - \xc1\xda - \xc1\xdb - \xc1\xdc - \xc1\xdd - \xc1\xde - \xc1\xdf - \xc1\xe0 - \xc1\xe1 - \xc1\xe2 - \xc1\xe3 - \xc1\xe4 - \xc1\xe5 - \xc1\xe6 - \xc1\xe7 - \xc1\xe8 - \xc1\xe9 - \xc1\xea - \xc1\xeb - \xc1\xec - \xc1\xed - \xc1\xee - \xc1\xef - \xc1\xf0 - \xc1\xf1 - \xc1\xf2 - \xc1\xf3 - \xc1\xf4 - \xc1\xf5 - \xc1\xf6 - \xc1\xf7 - \xc1\xf8 - \xc1\xf9 - \xc1\xfa - \xc1\xfb - \xc1\xfc - \xc1\xfd - \xc1\xfe - \xc2\x40 - \xc2\x41 - \xc2\x42 - \xc2\x43 - \xc2\x44 - \xc2\x45 - \xc2\x46 - \xc2\x47 - \xc2\x48 - \xc2\x49 - \xc2\x4a - \xc2\x4b - \xc2\x4c - \xc2\x4d - \xc2\x4e - \xc2\x4f - \xc2\x50 - \xc2\x51 - \xc2\x52 - \xc2\x53 - \xc2\x54 - \xc2\x55 - \xc2\x56 - \xc2\x57 - \xc2\x58 - \xc2\x59 - \xc2\x5a - \xc2\x5b - \xc2\x5c - \xc2\x5d - \xc2\x5e - \xc2\x5f - \xc2\x60 - \xc2\x61 - \xc2\x62 - \xc2\x63 - \xc2\x64 - \xc2\x65 - \xc2\x66 - \xc2\x67 - \xc2\x68 - \xc2\x69 - \xc2\x6a - \xc2\x6b - \xc2\x6c - \xc2\x6d - \xc2\x6e - \xc2\x6f - \xc2\x70 - \xc2\x71 - \xc2\x72 - \xc2\x73 - \xc2\x74 - \xc2\x75 - \xc2\x76 - \xc2\x77 - \xc2\x78 - \xc2\x79 - \xc2\x7a - \xc2\x7b - \xc2\x7c - \xc2\x7d - \xc2\x7e - \xc2\xa1 - \xc2\xa2 - \xc2\xa3 - \xc2\xa4 - \xc2\xa5 - \xc2\xa6 - \xc2\xa7 - \xc2\xa8 - \xc2\xa9 - \xc2\xaa - \xc2\xab - \xc2\xac - \xc2\xad - \xc2\xae - \xc2\xaf - \xc2\xb0 - \xc2\xb1 - \xc2\xb2 - \xc2\xb3 - \xc2\xb4 - \xc2\xb5 - \xc2\xb6 - \xc2\xb7 - \xc2\xb8 - \xc2\xb9 - \xc2\xba - \xc2\xbb - \xc2\xbc - \xc2\xbd - \xc2\xbe - \xc2\xbf - \xc2\xc0 - \xc2\xc1 - \xc2\xc2 - \xc2\xc3 - \xc2\xc4 - \xc2\xc5 - \xc2\xc6 - \xc2\xc7 - \xc2\xc8 - \xc2\xc9 - \xc2\xca - \xc2\xcb - \xc2\xcc - \xc2\xcd - \xc2\xce - \xc2\xcf - \xc2\xd0 - \xc2\xd1 - \xc2\xd2 - \xc2\xd3 - \xc2\xd4 - \xc2\xd5 - \xc2\xd6 - \xc2\xd7 - \xc2\xd8 - \xc2\xd9 - \xc2\xda - \xc2\xdb - \xc2\xdc - \xc2\xdd - \xc2\xde - \xc2\xdf - \xc2\xe0 - \xc2\xe1 - \xc2\xe2 - \xc2\xe3 - \xc2\xe4 - \xc2\xe5 - \xc2\xe6 - \xc2\xe7 - \xc2\xe8 - \xc2\xe9 - \xc2\xea - \xc2\xeb - \xc2\xec - \xc2\xed - \xc2\xee - \xc2\xef - \xc2\xf0 - \xc2\xf1 - \xc2\xf2 - \xc2\xf3 - \xc2\xf4 - \xc2\xf5 - \xc2\xf6 - \xc2\xf7 - \xc2\xf8 - \xc2\xf9 - \xc2\xfa - \xc2\xfb - \xc2\xfc - \xc2\xfd - \xc2\xfe - \xc3\x40 - \xc3\x41 - \xc3\x42 - \xc3\x43 - \xc3\x44 - \xc3\x45 - \xc3\x46 - \xc3\x47 - \xc3\x48 - \xc3\x49 - \xc3\x4a - \xc3\x4b - \xc3\x4c - \xc3\x4d - \xc3\x4e - \xc3\x4f - \xc3\x50 - \xc3\x51 - \xc3\x52 - \xc3\x53 - \xc3\x54 - \xc3\x55 - \xc3\x56 - \xc3\x57 - \xc3\x58 - \xc3\x59 - \xc3\x5a - \xc3\x5b - \xc3\x5c - \xc3\x5d - \xc3\x5e - \xc3\x5f - \xc3\x60 - \xc3\x61 - \xc3\x62 - \xc3\x63 - \xc3\x64 - \xc3\x65 - \xc3\x66 - \xc3\x67 - \xc3\x68 - \xc3\x69 - \xc3\x6a - \xc3\x6b - \xc3\x6c - \xc3\x6d - \xc3\x6e - \xc3\x6f - \xc3\x70 - \xc3\x71 - \xc3\x72 - \xc3\x73 - \xc3\x74 - \xc3\x75 - \xc3\x76 - \xc3\x77 - \xc3\x78 - \xc3\x79 - \xc3\x7a - \xc3\x7b - \xc3\x7c - \xc3\x7d - \xc3\x7e - \xc3\xa1 - \xc3\xa2 - \xc3\xa3 - \xc3\xa4 - \xc3\xa5 - \xc3\xa6 - \xc3\xa7 - \xc3\xa8 - \xc3\xa9 - \xc3\xaa - \xc3\xab - \xc3\xac - \xc3\xad - \xc3\xae - \xc3\xaf - \xc3\xb0 - \xc3\xb1 - \xc3\xb2 - \xc3\xb3 - \xc3\xb4 - \xc3\xb5 - \xc3\xb6 - \xc3\xb7 - \xc3\xb8 - \xc3\xb9 - \xc3\xba - \xc3\xbb - \xc3\xbc - \xc3\xbd - \xc3\xbe - \xc3\xbf - \xc3\xc0 - \xc3\xc1 - \xc3\xc2 - \xc3\xc3 - \xc3\xc4 - \xc3\xc5 - \xc3\xc6 - \xc3\xc7 - \xc3\xc8 - \xc3\xc9 - \xc3\xca - \xc3\xcb - \xc3\xcc - \xc3\xcd - \xc3\xce - \xc3\xcf - \xc3\xd0 - \xc3\xd1 - \xc3\xd2 - \xc3\xd3 - \xc3\xd4 - \xc3\xd5 - \xc3\xd6 - \xc3\xd7 - \xc3\xd8 - \xc3\xd9 - \xc3\xda - \xc3\xdb - \xc3\xdc - \xc3\xdd - \xc3\xde - \xc3\xdf - \xc3\xe0 - \xc3\xe1 - \xc3\xe2 - \xc3\xe3 - \xc3\xe4 - \xc3\xe5 - \xc3\xe6 - \xc3\xe7 - \xc3\xe8 - \xc3\xe9 - \xc3\xea - \xc3\xeb - \xc3\xec - \xc3\xed - \xc3\xee - \xc3\xef - \xc3\xf0 - \xc3\xf1 - \xc3\xf2 - \xc3\xf3 - \xc3\xf4 - \xc3\xf5 - \xc3\xf6 - \xc3\xf7 - \xc3\xf8 - \xc3\xf9 - \xc3\xfa - \xc3\xfb - \xc3\xfc - \xc3\xfd - \xc3\xfe - \xc4\x40 - \xc4\x41 - \xc4\x42 - \xc4\x43 - \xc4\x44 - \xc4\x45 - \xc4\x46 - \xc4\x47 - \xc4\x48 - \xc4\x49 - \xc4\x4a - \xc4\x4b - \xc4\x4c - \xc4\x4d - \xc4\x4e - \xc4\x4f - \xc4\x50 - \xc4\x51 - \xc4\x52 - \xc4\x53 - \xc4\x54 - \xc4\x55 - \xc4\x56 - \xc4\x57 - \xc4\x58 - \xc4\x59 - \xc4\x5a - \xc4\x5b - \xc4\x5c - \xc4\x5d - \xc4\x5e - \xc4\x5f - \xc4\x60 - \xc4\x61 - \xc4\x62 - \xc4\x63 - \xc4\x64 - \xc4\x65 - \xc4\x66 - \xc4\x67 - \xc4\x68 - \xc4\x69 - \xc4\x6a - \xc4\x6b - \xc4\x6c - \xc4\x6d - \xc4\x6e - \xc4\x6f - \xc4\x70 - \xc4\x71 - \xc4\x72 - \xc4\x73 - \xc4\x74 - \xc4\x75 - \xc4\x76 - \xc4\x77 - \xc4\x78 - \xc4\x79 - \xc4\x7a - \xc4\x7b - \xc4\x7c - \xc4\x7d - \xc4\x7e - \xc4\xa1 - \xc4\xa2 - \xc4\xa3 - \xc4\xa4 - \xc4\xa5 - \xc4\xa6 - \xc4\xa7 - \xc4\xa8 - \xc4\xa9 - \xc4\xaa - \xc4\xab - \xc4\xac - \xc4\xad - \xc4\xae - \xc4\xaf - \xc4\xb0 - \xc4\xb1 - \xc4\xb2 - \xc4\xb3 - \xc4\xb4 - \xc4\xb5 - \xc4\xb6 - \xc4\xb7 - \xc4\xb8 - \xc4\xb9 - \xc4\xba - \xc4\xbb - \xc4\xbc - \xc4\xbd - \xc4\xbe - \xc4\xbf - \xc4\xc0 - \xc4\xc1 - \xc4\xc2 - \xc4\xc3 - \xc4\xc4 - \xc4\xc5 - \xc4\xc6 - \xc4\xc7 - \xc4\xc8 - \xc4\xc9 - \xc4\xca - \xc4\xcb - \xc4\xcc - \xc4\xcd - \xc4\xce - \xc4\xcf - \xc4\xd0 - \xc4\xd1 - \xc4\xd2 - \xc4\xd3 - \xc4\xd4 - \xc4\xd5 - \xc4\xd6 - \xc4\xd7 - \xc4\xd8 - \xc4\xd9 - \xc4\xda - \xc4\xdb - \xc4\xdc - \xc4\xdd - \xc4\xde - \xc4\xdf - \xc4\xe0 - \xc4\xe1 - \xc4\xe2 - \xc4\xe3 - \xc4\xe4 - \xc4\xe5 - \xc4\xe6 - \xc4\xe7 - \xc4\xe8 - \xc4\xe9 - \xc4\xea - \xc4\xeb - \xc4\xec - \xc4\xed - \xc4\xee - \xc4\xef - \xc4\xf0 - \xc4\xf1 - \xc4\xf2 - \xc4\xf3 - \xc4\xf4 - \xc4\xf5 - \xc4\xf6 - \xc4\xf7 - \xc4\xf8 - \xc4\xf9 - \xc4\xfa - \xc4\xfb - \xc4\xfc - \xc4\xfd - \xc4\xfe - \xc5\x40 - \xc5\x41 - \xc5\x42 - \xc5\x43 - \xc5\x44 - \xc5\x45 - \xc5\x46 - \xc5\x47 - \xc5\x48 - \xc5\x49 - \xc5\x4a - \xc5\x4b - \xc5\x4c - \xc5\x4d - \xc5\x4e - \xc5\x4f - \xc5\x50 - \xc5\x51 - \xc5\x52 - \xc5\x53 - \xc5\x54 - \xc5\x55 - \xc5\x56 - \xc5\x57 - \xc5\x58 - \xc5\x59 - \xc5\x5a - \xc5\x5b - \xc5\x5c - \xc5\x5d - \xc5\x5e - \xc5\x5f - \xc5\x60 - \xc5\x61 - \xc5\x62 - \xc5\x63 - \xc5\x64 - \xc5\x65 - \xc5\x66 - \xc5\x67 - \xc5\x68 - \xc5\x69 - \xc5\x6a - \xc5\x6b - \xc5\x6c - \xc5\x6d - \xc5\x6e - \xc5\x6f - \xc5\x70 - \xc5\x71 - \xc5\x72 - \xc5\x73 - \xc5\x74 - \xc5\x75 - \xc5\x76 - \xc5\x77 - \xc5\x78 - \xc5\x79 - \xc5\x7a - \xc5\x7b - \xc5\x7c - \xc5\x7d - \xc5\x7e - \xc5\xa1 - \xc5\xa2 - \xc5\xa3 - \xc5\xa4 - \xc5\xa5 - \xc5\xa6 - \xc5\xa7 - \xc5\xa8 - \xc5\xa9 - \xc5\xaa - \xc5\xab - \xc5\xac - \xc5\xad - \xc5\xae - \xc5\xaf - \xc5\xb0 - \xc5\xb1 - \xc5\xb2 - \xc5\xb3 - \xc5\xb4 - \xc5\xb5 - \xc5\xb6 - \xc5\xb7 - \xc5\xb8 - \xc5\xb9 - \xc5\xba - \xc5\xbb - \xc5\xbc - \xc5\xbd - \xc5\xbe - \xc5\xbf - \xc5\xc0 - \xc5\xc1 - \xc5\xc2 - \xc5\xc3 - \xc5\xc4 - \xc5\xc5 - \xc5\xc6 - \xc5\xc7 - \xc5\xc8 - \xc5\xc9 - \xc5\xca - \xc5\xcb - \xc5\xcc - \xc5\xcd - \xc5\xce - \xc5\xcf - \xc5\xd0 - \xc5\xd1 - \xc5\xd2 - \xc5\xd3 - \xc5\xd4 - \xc5\xd5 - \xc5\xd6 - \xc5\xd7 - \xc5\xd8 - \xc5\xd9 - \xc5\xda - \xc5\xdb - \xc5\xdc - \xc5\xdd - \xc5\xde - \xc5\xdf - \xc5\xe0 - \xc5\xe1 - \xc5\xe2 - \xc5\xe3 - \xc5\xe4 - \xc5\xe5 - \xc5\xe6 - \xc5\xe7 - \xc5\xe8 - \xc5\xe9 - \xc5\xea - \xc5\xeb - \xc5\xec - \xc5\xed - \xc5\xee - \xc5\xef - \xc5\xf0 - \xc5\xf1 - \xc5\xf2 - \xc5\xf3 - \xc5\xf4 - \xc5\xf5 - \xc5\xf6 - \xc5\xf7 - \xc5\xf8 - \xc5\xf9 - \xc5\xfa - \xc5\xfb - \xc5\xfc - \xc5\xfd - \xc5\xfe - \xc6\x40 - \xc6\x41 - \xc6\x42 - \xc6\x43 - \xc6\x44 - \xc6\x45 - \xc6\x46 - \xc6\x47 - \xc6\x48 - \xc6\x49 - \xc6\x4a - \xc6\x4b - \xc6\x4c - \xc6\x4d - \xc6\x4e - \xc6\x4f - \xc6\x50 - \xc6\x51 - \xc6\x52 - \xc6\x53 - \xc6\x54 - \xc6\x55 - \xc6\x56 - \xc6\x57 - \xc6\x58 - \xc6\x59 - \xc6\x5a - \xc6\x5b - \xc6\x5c - \xc6\x5d - \xc6\x5e - \xc6\x5f - \xc6\x60 - \xc6\x61 - \xc6\x62 - \xc6\x63 - \xc6\x64 - \xc6\x65 - \xc6\x66 - \xc6\x67 - \xc6\x68 - \xc6\x69 - \xc6\x6a - \xc6\x6b - \xc6\x6c - \xc6\x6d - \xc6\x6e - \xc6\x6f - \xc6\x70 - \xc6\x71 - \xc6\x72 - \xc6\x73 - \xc6\x74 - \xc6\x75 - \xc6\x76 - \xc6\x77 - \xc6\x78 - \xc6\x79 - \xc6\x7a - \xc6\x7b - \xc6\x7c - \xc6\x7d - \xc6\x7e - \xc6\xa1 - \xc6\xa2 - \xc6\xa3 - \xc6\xa4 - \xc6\xa5 - \xc6\xa6 - \xc6\xa7 - \xc6\xa8 - \xc6\xa9 - \xc6\xaa - \xc6\xab - \xc6\xac - \xc6\xad - \xc6\xae - \xc6\xaf - \xc6\xb0 - \xc6\xb1 - \xc6\xb2 - \xc6\xb3 - \xc6\xb4 - \xc6\xb5 - \xc6\xb6 - \xc6\xb7 - \xc6\xb8 - \xc6\xb9 - \xc6\xba - \xc6\xbb - \xc6\xbc - \xc6\xbd - \xc6\xbe - \xc6\xbf - \xc6\xc0 - \xc6\xc1 - \xc6\xc2 - \xc6\xc3 - \xc6\xc4 - \xc6\xc5 - \xc6\xc6 - \xc6\xc7 - \xc6\xc8 - \xc6\xc9 - \xc6\xca - \xc6\xcb - \xc6\xcc - \xc6\xcd - \xc6\xce - \xc6\xd0 - \xc6\xd1 - \xc6\xd2 - \xc6\xd4 - \xc6\xd6 - \xc6\xd8 - \xc6\xd9 - \xc6\xda - \xc6\xdb - \xc6\xdc - \xc6\xdd - \xc6\xe0 - \xc6\xe1 - \xc6\xe2 - \xc6\xe3 - \xc6\xe4 - \xc6\xe5 - \xc6\xe6 - \xc6\xe7 - \xc6\xe8 - \xc6\xe9 - \xc6\xea - \xc6\xeb - \xc6\xec - \xc6\xed - \xc6\xee - \xc6\xef - \xc6\xf0 - \xc6\xf1 - \xc6\xf2 - \xc6\xf3 - \xc6\xf4 - \xc6\xf5 - \xc6\xf6 - \xc6\xf7 - \xc6\xf8 - \xc6\xf9 - \xc6\xfa - \xc6\xfb - \xc6\xfc - \xc6\xfd - \xc6\xfe - \xc7\x40 - \xc7\x41 - \xc7\x42 - \xc7\x43 - \xc7\x44 - \xc7\x45 - \xc7\x46 - \xc7\x47 - \xc7\x48 - \xc7\x49 - \xc7\x4a - \xc7\x4b - \xc7\x4c - \xc7\x4d - \xc7\x4e - \xc7\x4f - \xc7\x50 - \xc7\x51 - \xc7\x52 - \xc7\x53 - \xc7\x54 - \xc7\x55 - \xc7\x56 - \xc7\x57 - \xc7\x58 - \xc7\x59 - \xc7\x5a - \xc7\x5b - \xc7\x5c - \xc7\x5d - \xc7\x5e - \xc7\x5f - \xc7\x60 - \xc7\x61 - \xc7\x62 - \xc7\x63 - \xc7\x64 - \xc7\x65 - \xc7\x66 - \xc7\x67 - \xc7\x68 - \xc7\x69 - \xc7\x6a - \xc7\x6b - \xc7\x6c - \xc7\x6d - \xc7\x6e - \xc7\x6f - \xc7\x70 - \xc7\x71 - \xc7\x72 - \xc7\x73 - \xc7\x74 - \xc7\x75 - \xc7\x76 - \xc7\x77 - \xc7\x78 - \xc7\x79 - \xc7\x7a - \xc7\x7b - \xc7\x7c - \xc7\x7d - \xc7\x7e - \xc7\xa1 - \xc7\xa2 - \xc7\xa3 - \xc7\xa4 - \xc7\xa5 - \xc7\xa6 - \xc7\xa7 - \xc7\xa8 - \xc7\xa9 - \xc7\xaa - \xc7\xab - \xc7\xac - \xc7\xad - \xc7\xae - \xc7\xaf - \xc7\xb0 - \xc7\xb1 - \xc7\xb2 - \xc7\xb3 - \xc7\xb4 - \xc7\xb5 - \xc7\xb6 - \xc7\xb7 - \xc7\xb8 - \xc7\xb9 - \xc7\xba - \xc7\xbb - \xc7\xbc - \xc7\xbd - \xc7\xbe - \xc7\xbf - \xc7\xc0 - \xc7\xc1 - \xc7\xc2 - \xc7\xc3 - \xc7\xc4 - \xc7\xc5 - \xc7\xc6 - \xc7\xc7 - \xc7\xc8 - \xc7\xc9 - \xc7\xca - \xc7\xcb - \xc7\xcc - \xc7\xcd - \xc7\xce - \xc7\xcf - \xc7\xd0 - \xc7\xd1 - \xc7\xd2 - \xc7\xd3 - \xc7\xd4 - \xc7\xd5 - \xc7\xd6 - \xc7\xd7 - \xc7\xd8 - \xc7\xd9 - \xc7\xda - \xc7\xdb - \xc7\xdc - \xc7\xdd - \xc7\xde - \xc7\xdf - \xc7\xe0 - \xc7\xe1 - \xc7\xe2 - \xc7\xe3 - \xc7\xe4 - \xc7\xe5 - \xc7\xe6 - \xc7\xe7 - \xc7\xe8 - \xc7\xe9 - \xc7\xea - \xc7\xeb - \xc7\xec - \xc7\xed - \xc7\xee - \xc7\xef - \xc7\xf0 - \xc7\xf1 - \xc7\xf2 - \xc7\xf3 - \xc7\xf4 - \xc7\xf5 - \xc7\xf6 - \xc7\xf7 - \xc7\xf8 - \xc7\xf9 - \xc7\xfa - \xc7\xfb - \xc7\xfc - \xc7\xfd - \xc7\xfe - \xc8\x40 - \xc8\x41 - \xc8\x42 - \xc8\x43 - \xc8\x44 - \xc8\x45 - \xc8\x46 - \xc8\x47 - \xc8\x48 - \xc8\x49 - \xc8\x4a - \xc8\x4b - \xc8\x4c - \xc8\x4d - \xc8\x4e - \xc8\x4f - \xc8\x50 - \xc8\x51 - \xc8\x52 - \xc8\x53 - \xc8\x54 - \xc8\x55 - \xc8\x56 - \xc8\x57 - \xc8\x58 - \xc8\x59 - \xc8\x5a - \xc8\x5b - \xc8\x5c - \xc8\x5d - \xc8\x5e - \xc8\x5f - \xc8\x60 - \xc8\x61 - \xc8\x62 - \xc8\x63 - \xc8\x64 - \xc8\x65 - \xc8\x66 - \xc8\x67 - \xc8\x68 - \xc8\x69 - \xc8\x6a - \xc8\x6b - \xc8\x6c - \xc8\x6d - \xc8\x6e - \xc8\x6f - \xc8\x70 - \xc8\x71 - \xc8\x72 - \xc8\x73 - \xc8\x74 - \xc8\x75 - \xc8\x76 - \xc8\x77 - \xc8\x78 - \xc8\x79 - \xc8\x7a - \xc8\x7b - \xc8\x7c - \xc8\x7d - \xc8\x7e - \xc8\xa1 - \xc8\xa2 - \xc8\xa3 - \xc8\xa4 - \xc8\xcd - \xc8\xce - \xc8\xcf - \xc8\xd0 - \xc8\xd1 - \xc8\xd2 - \xc8\xd3 - \xc8\xd4 - \xc8\xd5 - \xc8\xd6 - \xc8\xd7 - \xc8\xd8 - \xc8\xd9 - \xc8\xda - \xc8\xdb - \xc8\xdc - \xc8\xdd - \xc8\xde - \xc8\xdf - \xc8\xe0 - \xc8\xe1 - \xc8\xe2 - \xc8\xe3 - \xc8\xe4 - \xc8\xe5 - \xc8\xe6 - \xc8\xe7 - \xc8\xe8 - \xc8\xe9 - \xc8\xea - \xc8\xeb - \xc8\xec - \xc8\xed - \xc8\xee - \xc8\xef - \xc8\xf0 - \xc8\xf1 - \xc8\xf5 - \xc8\xf6 - \xc8\xf7 - \xc8\xf8 - \xc8\xf9 - \xc8\xfa - \xc8\xfb - \xc8\xfc - \xc8\xfd - \xc8\xfe - \xc9\x40 - \xc9\x41 - \xc9\x42 - \xc9\x43 - \xc9\x44 - \xc9\x45 - \xc9\x46 - \xc9\x47 - \xc9\x48 - \xc9\x49 - \xc9\x4a - \xc9\x4b - \xc9\x4c - \xc9\x4d - \xc9\x4e - \xc9\x4f - \xc9\x50 - \xc9\x51 - \xc9\x52 - \xc9\x53 - \xc9\x54 - \xc9\x55 - \xc9\x56 - \xc9\x57 - \xc9\x58 - \xc9\x59 - \xc9\x5a - \xc9\x5b - \xc9\x5c - \xc9\x5d - \xc9\x5e - \xc9\x5f - \xc9\x60 - \xc9\x61 - \xc9\x62 - \xc9\x63 - \xc9\x64 - \xc9\x65 - \xc9\x66 - \xc9\x67 - \xc9\x68 - \xc9\x69 - \xc9\x6a - \xc9\x6b - \xc9\x6c - \xc9\x6d - \xc9\x6e - \xc9\x6f - \xc9\x70 - \xc9\x71 - \xc9\x72 - \xc9\x73 - \xc9\x74 - \xc9\x75 - \xc9\x76 - \xc9\x77 - \xc9\x78 - \xc9\x79 - \xc9\x7a - \xc9\x7b - \xc9\x7c - \xc9\x7d - \xc9\x7e - \xc9\xa1 - \xc9\xa2 - \xc9\xa3 - \xc9\xa4 - \xc9\xa5 - \xc9\xa6 - \xc9\xa7 - \xc9\xa8 - \xc9\xa9 - \xc9\xaa - \xc9\xab - \xc9\xac - \xc9\xad - \xc9\xae - \xc9\xaf - \xc9\xb0 - \xc9\xb1 - \xc9\xb2 - \xc9\xb3 - \xc9\xb4 - \xc9\xb5 - \xc9\xb6 - \xc9\xb7 - \xc9\xb8 - \xc9\xb9 - \xc9\xba - \xc9\xbb - \xc9\xbc - \xc9\xbd - \xc9\xbe - \xc9\xbf - \xc9\xc0 - \xc9\xc1 - \xc9\xc2 - \xc9\xc3 - \xc9\xc4 - \xc9\xc5 - \xc9\xc6 - \xc9\xc7 - \xc9\xc8 - \xc9\xc9 - \xc9\xca - \xc9\xcb - \xc9\xcc - \xc9\xcd - \xc9\xce - \xc9\xcf - \xc9\xd0 - \xc9\xd1 - \xc9\xd2 - \xc9\xd3 - \xc9\xd4 - \xc9\xd5 - \xc9\xd6 - \xc9\xd7 - \xc9\xd8 - \xc9\xd9 - \xc9\xda - \xc9\xdb - \xc9\xdc - \xc9\xdd - \xc9\xde - \xc9\xdf - \xc9\xe0 - \xc9\xe1 - \xc9\xe2 - \xc9\xe3 - \xc9\xe4 - \xc9\xe5 - \xc9\xe6 - \xc9\xe7 - \xc9\xe8 - \xc9\xe9 - \xc9\xea - \xc9\xeb - \xc9\xec - \xc9\xed - \xc9\xee - \xc9\xef - \xc9\xf0 - \xc9\xf1 - \xc9\xf2 - \xc9\xf3 - \xc9\xf4 - \xc9\xf5 - \xc9\xf6 - \xc9\xf7 - \xc9\xf8 - \xc9\xf9 - \xc9\xfa - \xc9\xfb - \xc9\xfc - \xc9\xfd - \xc9\xfe - \xca\x40 - \xca\x41 - \xca\x42 - \xca\x43 - \xca\x44 - \xca\x45 - \xca\x46 - \xca\x47 - \xca\x48 - \xca\x49 - \xca\x4a - \xca\x4b - \xca\x4c - \xca\x4d - \xca\x4e - \xca\x4f - \xca\x50 - \xca\x51 - \xca\x52 - \xca\x53 - \xca\x54 - \xca\x55 - \xca\x56 - \xca\x57 - \xca\x58 - \xca\x59 - \xca\x5a - \xca\x5b - \xca\x5c - \xca\x5d - \xca\x5e - \xca\x5f - \xca\x60 - \xca\x61 - \xca\x62 - \xca\x63 - \xca\x64 - \xca\x65 - \xca\x66 - \xca\x67 - \xca\x68 - \xca\x69 - \xca\x6a - \xca\x6b - \xca\x6c - \xca\x6d - \xca\x6e - \xca\x6f - \xca\x70 - \xca\x71 - \xca\x72 - \xca\x73 - \xca\x74 - \xca\x75 - \xca\x76 - \xca\x77 - \xca\x78 - \xca\x79 - \xca\x7a - \xca\x7b - \xca\x7c - \xca\x7d - \xca\x7e - \xca\xa1 - \xca\xa2 - \xca\xa3 - \xca\xa4 - \xca\xa5 - \xca\xa6 - \xca\xa7 - \xca\xa8 - \xca\xa9 - \xca\xaa - \xca\xab - \xca\xac - \xca\xad - \xca\xae - \xca\xaf - \xca\xb0 - \xca\xb1 - \xca\xb2 - \xca\xb3 - \xca\xb4 - \xca\xb5 - \xca\xb6 - \xca\xb7 - \xca\xb8 - \xca\xb9 - \xca\xba - \xca\xbb - \xca\xbc - \xca\xbd - \xca\xbe - \xca\xbf - \xca\xc0 - \xca\xc1 - \xca\xc2 - \xca\xc3 - \xca\xc4 - \xca\xc5 - \xca\xc6 - \xca\xc7 - \xca\xc8 - \xca\xc9 - \xca\xca - \xca\xcb - \xca\xcc - \xca\xcd - \xca\xce - \xca\xcf - \xca\xd0 - \xca\xd1 - \xca\xd2 - \xca\xd3 - \xca\xd4 - \xca\xd5 - \xca\xd6 - \xca\xd7 - \xca\xd8 - \xca\xd9 - \xca\xda - \xca\xdb - \xca\xdc - \xca\xdd - \xca\xde - \xca\xdf - \xca\xe0 - \xca\xe1 - \xca\xe2 - \xca\xe3 - \xca\xe4 - \xca\xe5 - \xca\xe6 - \xca\xe7 - \xca\xe8 - \xca\xe9 - \xca\xea - \xca\xeb - \xca\xec - \xca\xed - \xca\xee - \xca\xef - \xca\xf0 - \xca\xf1 - \xca\xf2 - \xca\xf3 - \xca\xf4 - \xca\xf5 - \xca\xf6 - \xca\xf7 - \xca\xf8 - \xca\xf9 - \xca\xfa - \xca\xfb - \xca\xfc - \xca\xfd - \xca\xfe - \xcb\x40 - \xcb\x41 - \xcb\x42 - \xcb\x43 - \xcb\x44 - \xcb\x45 - \xcb\x46 - \xcb\x47 - \xcb\x48 - \xcb\x49 - \xcb\x4a - \xcb\x4b - \xcb\x4c - \xcb\x4d - \xcb\x4e - \xcb\x4f - \xcb\x50 - \xcb\x51 - \xcb\x52 - \xcb\x53 - \xcb\x54 - \xcb\x55 - \xcb\x56 - \xcb\x57 - \xcb\x58 - \xcb\x59 - \xcb\x5a - \xcb\x5b - \xcb\x5c - \xcb\x5d - \xcb\x5e - \xcb\x5f - \xcb\x60 - \xcb\x61 - \xcb\x62 - \xcb\x63 - \xcb\x64 - \xcb\x65 - \xcb\x66 - \xcb\x67 - \xcb\x68 - \xcb\x69 - \xcb\x6a - \xcb\x6b - \xcb\x6c - \xcb\x6d - \xcb\x6e - \xcb\x6f - \xcb\x70 - \xcb\x71 - \xcb\x72 - \xcb\x73 - \xcb\x74 - \xcb\x75 - \xcb\x76 - \xcb\x77 - \xcb\x78 - \xcb\x79 - \xcb\x7a - \xcb\x7b - \xcb\x7c - \xcb\x7d - \xcb\x7e - \xcb\xa1 - \xcb\xa2 - \xcb\xa3 - \xcb\xa4 - \xcb\xa5 - \xcb\xa6 - \xcb\xa7 - \xcb\xa8 - \xcb\xa9 - \xcb\xaa - \xcb\xab - \xcb\xac - \xcb\xad - \xcb\xae - \xcb\xaf - \xcb\xb0 - \xcb\xb1 - \xcb\xb2 - \xcb\xb3 - \xcb\xb4 - \xcb\xb5 - \xcb\xb6 - \xcb\xb7 - \xcb\xb8 - \xcb\xb9 - \xcb\xba - \xcb\xbb - \xcb\xbc - \xcb\xbd - \xcb\xbe - \xcb\xbf - \xcb\xc0 - \xcb\xc1 - \xcb\xc2 - \xcb\xc3 - \xcb\xc4 - \xcb\xc5 - \xcb\xc6 - \xcb\xc7 - \xcb\xc8 - \xcb\xc9 - \xcb\xca - \xcb\xcb - \xcb\xcc - \xcb\xcd - \xcb\xce - \xcb\xcf - \xcb\xd0 - \xcb\xd1 - \xcb\xd2 - \xcb\xd3 - \xcb\xd4 - \xcb\xd5 - \xcb\xd6 - \xcb\xd7 - \xcb\xd8 - \xcb\xd9 - \xcb\xda - \xcb\xdb - \xcb\xdc - \xcb\xdd - \xcb\xde - \xcb\xdf - \xcb\xe0 - \xcb\xe1 - \xcb\xe2 - \xcb\xe3 - \xcb\xe4 - \xcb\xe5 - \xcb\xe6 - \xcb\xe7 - \xcb\xe8 - \xcb\xe9 - \xcb\xea - \xcb\xeb - \xcb\xec - \xcb\xed - \xcb\xee - \xcb\xef - \xcb\xf0 - \xcb\xf1 - \xcb\xf2 - \xcb\xf3 - \xcb\xf4 - \xcb\xf5 - \xcb\xf6 - \xcb\xf7 - \xcb\xf8 - \xcb\xf9 - \xcb\xfa - \xcb\xfb - \xcb\xfc - \xcb\xfd - \xcb\xfe - \xcc\x40 - \xcc\x41 - \xcc\x42 - \xcc\x43 - \xcc\x44 - \xcc\x45 - \xcc\x46 - \xcc\x47 - \xcc\x48 - \xcc\x49 - \xcc\x4a - \xcc\x4b - \xcc\x4c - \xcc\x4d - \xcc\x4e - \xcc\x4f - \xcc\x50 - \xcc\x51 - \xcc\x52 - \xcc\x53 - \xcc\x54 - \xcc\x55 - \xcc\x56 - \xcc\x57 - \xcc\x58 - \xcc\x59 - \xcc\x5a - \xcc\x5b - \xcc\x5c - \xcc\x5d - \xcc\x5e - \xcc\x5f - \xcc\x60 - \xcc\x61 - \xcc\x62 - \xcc\x63 - \xcc\x64 - \xcc\x65 - \xcc\x66 - \xcc\x67 - \xcc\x68 - \xcc\x69 - \xcc\x6a - \xcc\x6b - \xcc\x6c - \xcc\x6d - \xcc\x6e - \xcc\x6f - \xcc\x70 - \xcc\x71 - \xcc\x72 - \xcc\x73 - \xcc\x74 - \xcc\x75 - \xcc\x76 - \xcc\x77 - \xcc\x78 - \xcc\x79 - \xcc\x7a - \xcc\x7b - \xcc\x7c - \xcc\x7d - \xcc\x7e - \xcc\xa1 - \xcc\xa2 - \xcc\xa3 - \xcc\xa4 - \xcc\xa5 - \xcc\xa6 - \xcc\xa7 - \xcc\xa8 - \xcc\xa9 - \xcc\xaa - \xcc\xab - \xcc\xac - \xcc\xad - \xcc\xae - \xcc\xaf - \xcc\xb0 - \xcc\xb1 - \xcc\xb2 - \xcc\xb3 - \xcc\xb4 - \xcc\xb5 - \xcc\xb6 - \xcc\xb7 - \xcc\xb8 - \xcc\xb9 - \xcc\xba - \xcc\xbb - \xcc\xbc - \xcc\xbd - \xcc\xbe - \xcc\xbf - \xcc\xc0 - \xcc\xc1 - \xcc\xc2 - \xcc\xc3 - \xcc\xc4 - \xcc\xc5 - \xcc\xc6 - \xcc\xc7 - \xcc\xc8 - \xcc\xc9 - \xcc\xca - \xcc\xcb - \xcc\xcc - \xcc\xcd - \xcc\xce - \xcc\xcf - \xcc\xd0 - \xcc\xd1 - \xcc\xd2 - \xcc\xd3 - \xcc\xd4 - \xcc\xd5 - \xcc\xd6 - \xcc\xd7 - \xcc\xd8 - \xcc\xd9 - \xcc\xda - \xcc\xdb - \xcc\xdc - \xcc\xdd - \xcc\xde - \xcc\xdf - \xcc\xe0 - \xcc\xe1 - \xcc\xe2 - \xcc\xe3 - \xcc\xe4 - \xcc\xe5 - \xcc\xe6 - \xcc\xe7 - \xcc\xe8 - \xcc\xe9 - \xcc\xea - \xcc\xeb - \xcc\xec - \xcc\xed - \xcc\xee - \xcc\xef - \xcc\xf0 - \xcc\xf1 - \xcc\xf2 - \xcc\xf3 - \xcc\xf4 - \xcc\xf5 - \xcc\xf6 - \xcc\xf7 - \xcc\xf8 - \xcc\xf9 - \xcc\xfa - \xcc\xfb - \xcc\xfc - \xcc\xfd - \xcc\xfe - \xcd\x40 - \xcd\x41 - \xcd\x42 - \xcd\x43 - \xcd\x44 - \xcd\x45 - \xcd\x46 - \xcd\x47 - \xcd\x48 - \xcd\x49 - \xcd\x4a - \xcd\x4b - \xcd\x4c - \xcd\x4d - \xcd\x4e - \xcd\x4f - \xcd\x50 - \xcd\x51 - \xcd\x52 - \xcd\x53 - \xcd\x54 - \xcd\x55 - \xcd\x56 - \xcd\x57 - \xcd\x58 - \xcd\x59 - \xcd\x5a - \xcd\x5b - \xcd\x5c - \xcd\x5d - \xcd\x5e - \xcd\x5f - \xcd\x60 - \xcd\x61 - \xcd\x62 - \xcd\x63 - \xcd\x64 - \xcd\x65 - \xcd\x66 - \xcd\x67 - \xcd\x68 - \xcd\x69 - \xcd\x6a - \xcd\x6b - \xcd\x6c - \xcd\x6d - \xcd\x6e - \xcd\x6f - \xcd\x70 - \xcd\x71 - \xcd\x72 - \xcd\x73 - \xcd\x74 - \xcd\x75 - \xcd\x76 - \xcd\x77 - \xcd\x78 - \xcd\x79 - \xcd\x7a - \xcd\x7b - \xcd\x7c - \xcd\x7d - \xcd\x7e - \xcd\xa1 - \xcd\xa2 - \xcd\xa3 - \xcd\xa4 - \xcd\xa5 - \xcd\xa6 - \xcd\xa7 - \xcd\xa8 - \xcd\xa9 - \xcd\xaa - \xcd\xab - \xcd\xac - \xcd\xad - \xcd\xae - \xcd\xaf - \xcd\xb0 - \xcd\xb1 - \xcd\xb2 - \xcd\xb3 - \xcd\xb4 - \xcd\xb5 - \xcd\xb6 - \xcd\xb7 - \xcd\xb8 - \xcd\xb9 - \xcd\xba - \xcd\xbb - \xcd\xbc - \xcd\xbd - \xcd\xbe - \xcd\xbf - \xcd\xc0 - \xcd\xc1 - \xcd\xc2 - \xcd\xc3 - \xcd\xc4 - \xcd\xc5 - \xcd\xc6 - \xcd\xc7 - \xcd\xc8 - \xcd\xc9 - \xcd\xca - \xcd\xcb - \xcd\xcc - \xcd\xcd - \xcd\xce - \xcd\xcf - \xcd\xd0 - \xcd\xd1 - \xcd\xd2 - \xcd\xd3 - \xcd\xd4 - \xcd\xd5 - \xcd\xd6 - \xcd\xd7 - \xcd\xd8 - \xcd\xd9 - \xcd\xda - \xcd\xdb - \xcd\xdc - \xcd\xdd - \xcd\xde - \xcd\xdf - \xcd\xe0 - \xcd\xe1 - \xcd\xe2 - \xcd\xe3 - \xcd\xe4 - \xcd\xe5 - \xcd\xe6 - \xcd\xe7 - \xcd\xe8 - \xcd\xe9 - \xcd\xea - \xcd\xeb - \xcd\xec - \xcd\xed - \xcd\xee - \xcd\xef - \xcd\xf0 - \xcd\xf1 - \xcd\xf2 - \xcd\xf3 - \xcd\xf4 - \xcd\xf5 - \xcd\xf6 - \xcd\xf7 - \xcd\xf8 - \xcd\xf9 - \xcd\xfa - \xcd\xfb - \xcd\xfc - \xcd\xfd - \xcd\xfe - \xce\x40 - \xce\x41 - \xce\x42 - \xce\x43 - \xce\x44 - \xce\x45 - \xce\x46 - \xce\x47 - \xce\x48 - \xce\x49 - \xce\x4a - \xce\x4b - \xce\x4c - \xce\x4d - \xce\x4e - \xce\x4f - \xce\x50 - \xce\x51 - \xce\x52 - \xce\x53 - \xce\x54 - \xce\x55 - \xce\x56 - \xce\x57 - \xce\x58 - \xce\x59 - \xce\x5a - \xce\x5b - \xce\x5c - \xce\x5d - \xce\x5e - \xce\x5f - \xce\x60 - \xce\x61 - \xce\x62 - \xce\x63 - \xce\x64 - \xce\x65 - \xce\x66 - \xce\x67 - \xce\x68 - \xce\x69 - \xce\x6a - \xce\x6b - \xce\x6c - \xce\x6d - \xce\x6e - \xce\x6f - \xce\x70 - \xce\x71 - \xce\x72 - \xce\x73 - \xce\x74 - \xce\x75 - \xce\x76 - \xce\x77 - \xce\x78 - \xce\x79 - \xce\x7a - \xce\x7b - \xce\x7c - \xce\x7d - \xce\x7e - \xce\xa1 - \xce\xa2 - \xce\xa3 - \xce\xa4 - \xce\xa5 - \xce\xa6 - \xce\xa7 - \xce\xa8 - \xce\xa9 - \xce\xaa - \xce\xab - \xce\xac - \xce\xad - \xce\xae - \xce\xaf - \xce\xb0 - \xce\xb1 - \xce\xb2 - \xce\xb3 - \xce\xb4 - \xce\xb5 - \xce\xb6 - \xce\xb7 - \xce\xb8 - \xce\xb9 - \xce\xba - \xce\xbb - \xce\xbc - \xce\xbd - \xce\xbe - \xce\xbf - \xce\xc0 - \xce\xc1 - \xce\xc2 - \xce\xc3 - \xce\xc4 - \xce\xc5 - \xce\xc6 - \xce\xc7 - \xce\xc8 - \xce\xc9 - \xce\xca - \xce\xcb - \xce\xcc - \xce\xcd - \xce\xce - \xce\xcf - \xce\xd0 - \xce\xd1 - \xce\xd2 - \xce\xd3 - \xce\xd4 - \xce\xd5 - \xce\xd6 - \xce\xd7 - \xce\xd8 - \xce\xd9 - \xce\xda - \xce\xdb - \xce\xdc - \xce\xdd - \xce\xde - \xce\xdf - \xce\xe0 - \xce\xe1 - \xce\xe2 - \xce\xe3 - \xce\xe4 - \xce\xe5 - \xce\xe6 - \xce\xe7 - \xce\xe8 - \xce\xe9 - \xce\xea - \xce\xeb - \xce\xec - \xce\xed - \xce\xee - \xce\xef - \xce\xf0 - \xce\xf1 - \xce\xf2 - \xce\xf3 - \xce\xf4 - \xce\xf5 - \xce\xf6 - \xce\xf7 - \xce\xf8 - \xce\xf9 - \xce\xfa - \xce\xfb - \xce\xfc - \xce\xfd - \xce\xfe - \xcf\x40 - \xcf\x41 - \xcf\x42 - \xcf\x43 - \xcf\x44 - \xcf\x45 - \xcf\x46 - \xcf\x47 - \xcf\x48 - \xcf\x49 - \xcf\x4a - \xcf\x4b - \xcf\x4c - \xcf\x4d - \xcf\x4e - \xcf\x4f - \xcf\x50 - \xcf\x51 - \xcf\x52 - \xcf\x53 - \xcf\x54 - \xcf\x55 - \xcf\x56 - \xcf\x57 - \xcf\x58 - \xcf\x59 - \xcf\x5a - \xcf\x5b - \xcf\x5c - \xcf\x5d - \xcf\x5e - \xcf\x5f - \xcf\x60 - \xcf\x61 - \xcf\x62 - \xcf\x63 - \xcf\x64 - \xcf\x65 - \xcf\x66 - \xcf\x67 - \xcf\x68 - \xcf\x69 - \xcf\x6a - \xcf\x6b - \xcf\x6c - \xcf\x6d - \xcf\x6e - \xcf\x6f - \xcf\x70 - \xcf\x71 - \xcf\x72 - \xcf\x73 - \xcf\x74 - \xcf\x75 - \xcf\x76 - \xcf\x77 - \xcf\x78 - \xcf\x79 - \xcf\x7a - \xcf\x7b - \xcf\x7c - \xcf\x7d - \xcf\x7e - \xcf\xa1 - \xcf\xa2 - \xcf\xa3 - \xcf\xa4 - \xcf\xa5 - \xcf\xa6 - \xcf\xa7 - \xcf\xa8 - \xcf\xa9 - \xcf\xaa - \xcf\xab - \xcf\xac - \xcf\xad - \xcf\xae - \xcf\xaf - \xcf\xb0 - \xcf\xb1 - \xcf\xb2 - \xcf\xb3 - \xcf\xb4 - \xcf\xb5 - \xcf\xb6 - \xcf\xb7 - \xcf\xb8 - \xcf\xb9 - \xcf\xba - \xcf\xbb - \xcf\xbc - \xcf\xbd - \xcf\xbe - \xcf\xbf - \xcf\xc0 - \xcf\xc1 - \xcf\xc2 - \xcf\xc3 - \xcf\xc4 - \xcf\xc5 - \xcf\xc6 - \xcf\xc7 - \xcf\xc8 - \xcf\xc9 - \xcf\xca - \xcf\xcb - \xcf\xcc - \xcf\xcd - \xcf\xce - \xcf\xcf - \xcf\xd0 - \xcf\xd1 - \xcf\xd2 - \xcf\xd3 - \xcf\xd4 - \xcf\xd5 - \xcf\xd6 - \xcf\xd7 - \xcf\xd8 - \xcf\xd9 - \xcf\xda - \xcf\xdb - \xcf\xdc - \xcf\xdd - \xcf\xde - \xcf\xdf - \xcf\xe0 - \xcf\xe1 - \xcf\xe2 - \xcf\xe3 - \xcf\xe4 - \xcf\xe5 - \xcf\xe6 - \xcf\xe7 - \xcf\xe8 - \xcf\xe9 - \xcf\xea - \xcf\xeb - \xcf\xec - \xcf\xed - \xcf\xee - \xcf\xef - \xcf\xf0 - \xcf\xf1 - \xcf\xf2 - \xcf\xf3 - \xcf\xf4 - \xcf\xf5 - \xcf\xf6 - \xcf\xf7 - \xcf\xf8 - \xcf\xf9 - \xcf\xfa - \xcf\xfb - \xcf\xfc - \xcf\xfd - \xcf\xfe - \xd0\x40 - \xd0\x41 - \xd0\x42 - \xd0\x43 - \xd0\x44 - \xd0\x45 - \xd0\x46 - \xd0\x47 - \xd0\x48 - \xd0\x49 - \xd0\x4a - \xd0\x4b - \xd0\x4c - \xd0\x4d - \xd0\x4e - \xd0\x4f - \xd0\x50 - \xd0\x51 - \xd0\x52 - \xd0\x53 - \xd0\x54 - \xd0\x55 - \xd0\x56 - \xd0\x57 - \xd0\x58 - \xd0\x59 - \xd0\x5a - \xd0\x5b - \xd0\x5c - \xd0\x5d - \xd0\x5e - \xd0\x5f - \xd0\x60 - \xd0\x61 - \xd0\x62 - \xd0\x63 - \xd0\x64 - \xd0\x65 - \xd0\x66 - \xd0\x67 - \xd0\x68 - \xd0\x69 - \xd0\x6a - \xd0\x6b - \xd0\x6c - \xd0\x6d - \xd0\x6e - \xd0\x6f - \xd0\x70 - \xd0\x71 - \xd0\x72 - \xd0\x73 - \xd0\x74 - \xd0\x75 - \xd0\x76 - \xd0\x77 - \xd0\x78 - \xd0\x79 - \xd0\x7a - \xd0\x7b - \xd0\x7c - \xd0\x7d - \xd0\x7e - \xd0\xa1 - \xd0\xa2 - \xd0\xa3 - \xd0\xa4 - \xd0\xa5 - \xd0\xa6 - \xd0\xa7 - \xd0\xa8 - \xd0\xa9 - \xd0\xaa - \xd0\xab - \xd0\xac - \xd0\xad - \xd0\xae - \xd0\xaf - \xd0\xb0 - \xd0\xb1 - \xd0\xb2 - \xd0\xb3 - \xd0\xb4 - \xd0\xb5 - \xd0\xb6 - \xd0\xb7 - \xd0\xb8 - \xd0\xb9 - \xd0\xba - \xd0\xbb - \xd0\xbc - \xd0\xbd - \xd0\xbe - \xd0\xbf - \xd0\xc0 - \xd0\xc1 - \xd0\xc2 - \xd0\xc3 - \xd0\xc4 - \xd0\xc5 - \xd0\xc6 - \xd0\xc7 - \xd0\xc8 - \xd0\xc9 - \xd0\xca - \xd0\xcb - \xd0\xcc - \xd0\xcd - \xd0\xce - \xd0\xcf - \xd0\xd0 - \xd0\xd1 - \xd0\xd2 - \xd0\xd3 - \xd0\xd4 - \xd0\xd5 - \xd0\xd6 - \xd0\xd7 - \xd0\xd8 - \xd0\xd9 - \xd0\xda - \xd0\xdb - \xd0\xdc - \xd0\xdd - \xd0\xde - \xd0\xdf - \xd0\xe0 - \xd0\xe1 - \xd0\xe2 - \xd0\xe3 - \xd0\xe4 - \xd0\xe5 - \xd0\xe6 - \xd0\xe7 - \xd0\xe8 - \xd0\xe9 - \xd0\xea - \xd0\xeb - \xd0\xec - \xd0\xed - \xd0\xee - \xd0\xef - \xd0\xf0 - \xd0\xf1 - \xd0\xf2 - \xd0\xf3 - \xd0\xf4 - \xd0\xf5 - \xd0\xf6 - \xd0\xf7 - \xd0\xf8 - \xd0\xf9 - \xd0\xfa - \xd0\xfb - \xd0\xfc - \xd0\xfd - \xd0\xfe - \xd1\x40 - \xd1\x41 - \xd1\x42 - \xd1\x43 - \xd1\x44 - \xd1\x45 - \xd1\x46 - \xd1\x47 - \xd1\x48 - \xd1\x49 - \xd1\x4a - \xd1\x4b - \xd1\x4c - \xd1\x4d - \xd1\x4e - \xd1\x4f - \xd1\x50 - \xd1\x51 - \xd1\x52 - \xd1\x53 - \xd1\x54 - \xd1\x55 - \xd1\x56 - \xd1\x57 - \xd1\x58 - \xd1\x59 - \xd1\x5a - \xd1\x5b - \xd1\x5c - \xd1\x5d - \xd1\x5e - \xd1\x5f - \xd1\x60 - \xd1\x61 - \xd1\x62 - \xd1\x63 - \xd1\x64 - \xd1\x65 - \xd1\x66 - \xd1\x67 - \xd1\x68 - \xd1\x69 - \xd1\x6a - \xd1\x6b - \xd1\x6c - \xd1\x6d - \xd1\x6e - \xd1\x6f - \xd1\x70 - \xd1\x71 - \xd1\x72 - \xd1\x73 - \xd1\x74 - \xd1\x75 - \xd1\x76 - \xd1\x77 - \xd1\x78 - \xd1\x79 - \xd1\x7a - \xd1\x7b - \xd1\x7c - \xd1\x7d - \xd1\x7e - \xd1\xa1 - \xd1\xa2 - \xd1\xa3 - \xd1\xa4 - \xd1\xa5 - \xd1\xa6 - \xd1\xa7 - \xd1\xa8 - \xd1\xa9 - \xd1\xaa - \xd1\xab - \xd1\xac - \xd1\xad - \xd1\xae - \xd1\xaf - \xd1\xb0 - \xd1\xb1 - \xd1\xb2 - \xd1\xb3 - \xd1\xb4 - \xd1\xb5 - \xd1\xb6 - \xd1\xb7 - \xd1\xb8 - \xd1\xb9 - \xd1\xba - \xd1\xbb - \xd1\xbc - \xd1\xbd - \xd1\xbe - \xd1\xbf - \xd1\xc0 - \xd1\xc1 - \xd1\xc2 - \xd1\xc3 - \xd1\xc4 - \xd1\xc5 - \xd1\xc6 - \xd1\xc7 - \xd1\xc8 - \xd1\xc9 - \xd1\xca - \xd1\xcb - \xd1\xcc - \xd1\xcd - \xd1\xce - \xd1\xcf - \xd1\xd0 - \xd1\xd1 - \xd1\xd2 - \xd1\xd3 - \xd1\xd4 - \xd1\xd5 - \xd1\xd6 - \xd1\xd7 - \xd1\xd8 - \xd1\xd9 - \xd1\xda - \xd1\xdb - \xd1\xdc - \xd1\xdd - \xd1\xde - \xd1\xdf - \xd1\xe0 - \xd1\xe1 - \xd1\xe2 - \xd1\xe3 - \xd1\xe4 - \xd1\xe5 - \xd1\xe6 - \xd1\xe7 - \xd1\xe8 - \xd1\xe9 - \xd1\xea - \xd1\xeb - \xd1\xec - \xd1\xed - \xd1\xee - \xd1\xef - \xd1\xf0 - \xd1\xf1 - \xd1\xf2 - \xd1\xf3 - \xd1\xf4 - \xd1\xf5 - \xd1\xf6 - \xd1\xf7 - \xd1\xf8 - \xd1\xf9 - \xd1\xfa - \xd1\xfb - \xd1\xfc - \xd1\xfd - \xd1\xfe - \xd2\x40 - \xd2\x41 - \xd2\x42 - \xd2\x43 - \xd2\x44 - \xd2\x45 - \xd2\x46 - \xd2\x47 - \xd2\x48 - \xd2\x49 - \xd2\x4a - \xd2\x4b - \xd2\x4c - \xd2\x4d - \xd2\x4e - \xd2\x4f - \xd2\x50 - \xd2\x51 - \xd2\x52 - \xd2\x53 - \xd2\x54 - \xd2\x55 - \xd2\x56 - \xd2\x57 - \xd2\x58 - \xd2\x59 - \xd2\x5a - \xd2\x5b - \xd2\x5c - \xd2\x5d - \xd2\x5e - \xd2\x5f - \xd2\x60 - \xd2\x61 - \xd2\x62 - \xd2\x63 - \xd2\x64 - \xd2\x65 - \xd2\x66 - \xd2\x67 - \xd2\x68 - \xd2\x69 - \xd2\x6a - \xd2\x6b - \xd2\x6c - \xd2\x6d - \xd2\x6e - \xd2\x6f - \xd2\x70 - \xd2\x71 - \xd2\x72 - \xd2\x73 - \xd2\x74 - \xd2\x75 - \xd2\x76 - \xd2\x77 - \xd2\x78 - \xd2\x79 - \xd2\x7a - \xd2\x7b - \xd2\x7c - \xd2\x7d - \xd2\x7e - \xd2\xa1 - \xd2\xa2 - \xd2\xa3 - \xd2\xa4 - \xd2\xa5 - \xd2\xa6 - \xd2\xa7 - \xd2\xa8 - \xd2\xa9 - \xd2\xaa - \xd2\xab - \xd2\xac - \xd2\xad - \xd2\xae - \xd2\xaf - \xd2\xb0 - \xd2\xb1 - \xd2\xb2 - \xd2\xb3 - \xd2\xb4 - \xd2\xb5 - \xd2\xb6 - \xd2\xb7 - \xd2\xb8 - \xd2\xb9 - \xd2\xba - \xd2\xbb - \xd2\xbc - \xd2\xbd - \xd2\xbe - \xd2\xbf - \xd2\xc0 - \xd2\xc1 - \xd2\xc2 - \xd2\xc3 - \xd2\xc4 - \xd2\xc5 - \xd2\xc6 - \xd2\xc7 - \xd2\xc8 - \xd2\xc9 - \xd2\xca - \xd2\xcb - \xd2\xcc - \xd2\xcd - \xd2\xce - \xd2\xcf - \xd2\xd0 - \xd2\xd1 - \xd2\xd2 - \xd2\xd3 - \xd2\xd4 - \xd2\xd5 - \xd2\xd6 - \xd2\xd7 - \xd2\xd8 - \xd2\xd9 - \xd2\xda - \xd2\xdb - \xd2\xdc - \xd2\xdd - \xd2\xde - \xd2\xdf - \xd2\xe0 - \xd2\xe1 - \xd2\xe2 - \xd2\xe3 - \xd2\xe4 - \xd2\xe5 - \xd2\xe6 - \xd2\xe7 - \xd2\xe8 - \xd2\xe9 - \xd2\xea - \xd2\xeb - \xd2\xec - \xd2\xed - \xd2\xee - \xd2\xef - \xd2\xf0 - \xd2\xf1 - \xd2\xf2 - \xd2\xf3 - \xd2\xf4 - \xd2\xf5 - \xd2\xf6 - \xd2\xf7 - \xd2\xf8 - \xd2\xf9 - \xd2\xfa - \xd2\xfb - \xd2\xfc - \xd2\xfd - \xd2\xfe - \xd3\x40 - \xd3\x41 - \xd3\x42 - \xd3\x43 - \xd3\x44 - \xd3\x45 - \xd3\x46 - \xd3\x47 - \xd3\x48 - \xd3\x49 - \xd3\x4a - \xd3\x4b - \xd3\x4c - \xd3\x4d - \xd3\x4e - \xd3\x4f - \xd3\x50 - \xd3\x51 - \xd3\x52 - \xd3\x53 - \xd3\x54 - \xd3\x55 - \xd3\x56 - \xd3\x57 - \xd3\x58 - \xd3\x59 - \xd3\x5a - \xd3\x5b - \xd3\x5c - \xd3\x5d - \xd3\x5e - \xd3\x5f - \xd3\x60 - \xd3\x61 - \xd3\x62 - \xd3\x63 - \xd3\x64 - \xd3\x65 - \xd3\x66 - \xd3\x67 - \xd3\x68 - \xd3\x69 - \xd3\x6a - \xd3\x6b - \xd3\x6c - \xd3\x6d - \xd3\x6e - \xd3\x6f - \xd3\x70 - \xd3\x71 - \xd3\x72 - \xd3\x73 - \xd3\x74 - \xd3\x75 - \xd3\x76 - \xd3\x77 - \xd3\x78 - \xd3\x79 - \xd3\x7a - \xd3\x7b - \xd3\x7c - \xd3\x7d - \xd3\x7e - \xd3\xa1 - \xd3\xa2 - \xd3\xa3 - \xd3\xa4 - \xd3\xa5 - \xd3\xa6 - \xd3\xa7 - \xd3\xa8 - \xd3\xa9 - \xd3\xaa - \xd3\xab - \xd3\xac - \xd3\xad - \xd3\xae - \xd3\xaf - \xd3\xb0 - \xd3\xb1 - \xd3\xb2 - \xd3\xb3 - \xd3\xb4 - \xd3\xb5 - \xd3\xb6 - \xd3\xb7 - \xd3\xb8 - \xd3\xb9 - \xd3\xba - \xd3\xbb - \xd3\xbc - \xd3\xbd - \xd3\xbe - \xd3\xbf - \xd3\xc0 - \xd3\xc1 - \xd3\xc2 - \xd3\xc3 - \xd3\xc4 - \xd3\xc5 - \xd3\xc6 - \xd3\xc7 - \xd3\xc8 - \xd3\xc9 - \xd3\xca - \xd3\xcb - \xd3\xcc - \xd3\xcd - \xd3\xce - \xd3\xcf - \xd3\xd0 - \xd3\xd1 - \xd3\xd2 - \xd3\xd3 - \xd3\xd4 - \xd3\xd5 - \xd3\xd6 - \xd3\xd7 - \xd3\xd8 - \xd3\xd9 - \xd3\xda - \xd3\xdb - \xd3\xdc - \xd3\xdd - \xd3\xde - \xd3\xdf - \xd3\xe0 - \xd3\xe1 - \xd3\xe2 - \xd3\xe3 - \xd3\xe4 - \xd3\xe5 - \xd3\xe6 - \xd3\xe7 - \xd3\xe8 - \xd3\xe9 - \xd3\xea - \xd3\xeb - \xd3\xec - \xd3\xed - \xd3\xee - \xd3\xef - \xd3\xf0 - \xd3\xf1 - \xd3\xf2 - \xd3\xf3 - \xd3\xf4 - \xd3\xf5 - \xd3\xf6 - \xd3\xf7 - \xd3\xf8 - \xd3\xf9 - \xd3\xfa - \xd3\xfb - \xd3\xfc - \xd3\xfd - \xd3\xfe - \xd4\x40 - \xd4\x41 - \xd4\x42 - \xd4\x43 - \xd4\x44 - \xd4\x45 - \xd4\x46 - \xd4\x47 - \xd4\x48 - \xd4\x49 - \xd4\x4a - \xd4\x4b - \xd4\x4c - \xd4\x4d - \xd4\x4e - \xd4\x4f - \xd4\x50 - \xd4\x51 - \xd4\x52 - \xd4\x53 - \xd4\x54 - \xd4\x55 - \xd4\x56 - \xd4\x57 - \xd4\x58 - \xd4\x59 - \xd4\x5a - \xd4\x5b - \xd4\x5c - \xd4\x5d - \xd4\x5e - \xd4\x5f - \xd4\x60 - \xd4\x61 - \xd4\x62 - \xd4\x63 - \xd4\x64 - \xd4\x65 - \xd4\x66 - \xd4\x67 - \xd4\x68 - \xd4\x69 - \xd4\x6a - \xd4\x6b - \xd4\x6c - \xd4\x6d - \xd4\x6e - \xd4\x6f - \xd4\x70 - \xd4\x71 - \xd4\x72 - \xd4\x73 - \xd4\x74 - \xd4\x75 - \xd4\x76 - \xd4\x77 - \xd4\x78 - \xd4\x79 - \xd4\x7a - \xd4\x7b - \xd4\x7c - \xd4\x7d - \xd4\x7e - \xd4\xa1 - \xd4\xa2 - \xd4\xa3 - \xd4\xa4 - \xd4\xa5 - \xd4\xa6 - \xd4\xa7 - \xd4\xa8 - \xd4\xa9 - \xd4\xaa - \xd4\xab - \xd4\xac - \xd4\xad - \xd4\xae - \xd4\xaf - \xd4\xb0 - \xd4\xb1 - \xd4\xb2 - \xd4\xb3 - \xd4\xb4 - \xd4\xb5 - \xd4\xb6 - \xd4\xb7 - \xd4\xb8 - \xd4\xb9 - \xd4\xba - \xd4\xbb - \xd4\xbc - \xd4\xbd - \xd4\xbe - \xd4\xbf - \xd4\xc0 - \xd4\xc1 - \xd4\xc2 - \xd4\xc3 - \xd4\xc4 - \xd4\xc5 - \xd4\xc6 - \xd4\xc7 - \xd4\xc8 - \xd4\xc9 - \xd4\xca - \xd4\xcb - \xd4\xcc - \xd4\xcd - \xd4\xce - \xd4\xcf - \xd4\xd0 - \xd4\xd1 - \xd4\xd2 - \xd4\xd3 - \xd4\xd4 - \xd4\xd5 - \xd4\xd6 - \xd4\xd7 - \xd4\xd8 - \xd4\xd9 - \xd4\xda - \xd4\xdb - \xd4\xdc - \xd4\xdd - \xd4\xde - \xd4\xdf - \xd4\xe0 - \xd4\xe1 - \xd4\xe2 - \xd4\xe3 - \xd4\xe4 - \xd4\xe5 - \xd4\xe6 - \xd4\xe7 - \xd4\xe8 - \xd4\xe9 - \xd4\xea - \xd4\xeb - \xd4\xec - \xd4\xed - \xd4\xee - \xd4\xef - \xd4\xf0 - \xd4\xf1 - \xd4\xf2 - \xd4\xf3 - \xd4\xf4 - \xd4\xf5 - \xd4\xf6 - \xd4\xf7 - \xd4\xf8 - \xd4\xf9 - \xd4\xfa - \xd4\xfb - \xd4\xfc - \xd4\xfd - \xd4\xfe - \xd5\x40 - \xd5\x41 - \xd5\x42 - \xd5\x43 - \xd5\x44 - \xd5\x45 - \xd5\x46 - \xd5\x47 - \xd5\x48 - \xd5\x49 - \xd5\x4a - \xd5\x4b - \xd5\x4c - \xd5\x4d - \xd5\x4e - \xd5\x4f - \xd5\x50 - \xd5\x51 - \xd5\x52 - \xd5\x53 - \xd5\x54 - \xd5\x55 - \xd5\x56 - \xd5\x57 - \xd5\x58 - \xd5\x59 - \xd5\x5a - \xd5\x5b - \xd5\x5c - \xd5\x5d - \xd5\x5e - \xd5\x5f - \xd5\x60 - \xd5\x61 - \xd5\x62 - \xd5\x63 - \xd5\x64 - \xd5\x65 - \xd5\x66 - \xd5\x67 - \xd5\x68 - \xd5\x69 - \xd5\x6a - \xd5\x6b - \xd5\x6c - \xd5\x6d - \xd5\x6e - \xd5\x6f - \xd5\x70 - \xd5\x71 - \xd5\x72 - \xd5\x73 - \xd5\x74 - \xd5\x75 - \xd5\x76 - \xd5\x77 - \xd5\x78 - \xd5\x79 - \xd5\x7a - \xd5\x7b - \xd5\x7c - \xd5\x7d - \xd5\x7e - \xd5\xa1 - \xd5\xa2 - \xd5\xa3 - \xd5\xa4 - \xd5\xa5 - \xd5\xa6 - \xd5\xa7 - \xd5\xa8 - \xd5\xa9 - \xd5\xaa - \xd5\xab - \xd5\xac - \xd5\xad - \xd5\xae - \xd5\xaf - \xd5\xb0 - \xd5\xb1 - \xd5\xb2 - \xd5\xb3 - \xd5\xb4 - \xd5\xb5 - \xd5\xb6 - \xd5\xb7 - \xd5\xb8 - \xd5\xb9 - \xd5\xba - \xd5\xbb - \xd5\xbc - \xd5\xbd - \xd5\xbe - \xd5\xbf - \xd5\xc0 - \xd5\xc1 - \xd5\xc2 - \xd5\xc3 - \xd5\xc4 - \xd5\xc5 - \xd5\xc6 - \xd5\xc7 - \xd5\xc8 - \xd5\xc9 - \xd5\xca - \xd5\xcb - \xd5\xcc - \xd5\xcd - \xd5\xce - \xd5\xcf - \xd5\xd0 - \xd5\xd1 - \xd5\xd2 - \xd5\xd3 - \xd5\xd4 - \xd5\xd5 - \xd5\xd6 - \xd5\xd7 - \xd5\xd8 - \xd5\xd9 - \xd5\xda - \xd5\xdb - \xd5\xdc - \xd5\xdd - \xd5\xde - \xd5\xdf - \xd5\xe0 - \xd5\xe1 - \xd5\xe2 - \xd5\xe3 - \xd5\xe4 - \xd5\xe5 - \xd5\xe6 - \xd5\xe7 - \xd5\xe8 - \xd5\xe9 - \xd5\xea - \xd5\xeb - \xd5\xec - \xd5\xed - \xd5\xee - \xd5\xef - \xd5\xf0 - \xd5\xf1 - \xd5\xf2 - \xd5\xf3 - \xd5\xf4 - \xd5\xf5 - \xd5\xf6 - \xd5\xf7 - \xd5\xf8 - \xd5\xf9 - \xd5\xfa - \xd5\xfb - \xd5\xfc - \xd5\xfd - \xd5\xfe - \xd6\x40 - \xd6\x41 - \xd6\x42 - \xd6\x43 - \xd6\x44 - \xd6\x45 - \xd6\x46 - \xd6\x47 - \xd6\x48 - \xd6\x49 - \xd6\x4a - \xd6\x4b - \xd6\x4c - \xd6\x4d - \xd6\x4e - \xd6\x4f - \xd6\x50 - \xd6\x51 - \xd6\x52 - \xd6\x53 - \xd6\x54 - \xd6\x55 - \xd6\x56 - \xd6\x57 - \xd6\x58 - \xd6\x59 - \xd6\x5a - \xd6\x5b - \xd6\x5c - \xd6\x5d - \xd6\x5e - \xd6\x5f - \xd6\x60 - \xd6\x61 - \xd6\x62 - \xd6\x63 - \xd6\x64 - \xd6\x65 - \xd6\x66 - \xd6\x67 - \xd6\x68 - \xd6\x69 - \xd6\x6a - \xd6\x6b - \xd6\x6c - \xd6\x6d - \xd6\x6e - \xd6\x6f - \xd6\x70 - \xd6\x71 - \xd6\x72 - \xd6\x73 - \xd6\x74 - \xd6\x75 - \xd6\x76 - \xd6\x77 - \xd6\x78 - \xd6\x79 - \xd6\x7a - \xd6\x7b - \xd6\x7c - \xd6\x7d - \xd6\x7e - \xd6\xa1 - \xd6\xa2 - \xd6\xa3 - \xd6\xa4 - \xd6\xa5 - \xd6\xa6 - \xd6\xa7 - \xd6\xa8 - \xd6\xa9 - \xd6\xaa - \xd6\xab - \xd6\xac - \xd6\xad - \xd6\xae - \xd6\xaf - \xd6\xb0 - \xd6\xb1 - \xd6\xb2 - \xd6\xb3 - \xd6\xb4 - \xd6\xb5 - \xd6\xb6 - \xd6\xb7 - \xd6\xb8 - \xd6\xb9 - \xd6\xba - \xd6\xbb - \xd6\xbc - \xd6\xbd - \xd6\xbe - \xd6\xbf - \xd6\xc0 - \xd6\xc1 - \xd6\xc2 - \xd6\xc3 - \xd6\xc4 - \xd6\xc5 - \xd6\xc6 - \xd6\xc7 - \xd6\xc8 - \xd6\xc9 - \xd6\xca - \xd6\xcb - \xd6\xcc - \xd6\xcd - \xd6\xce - \xd6\xcf - \xd6\xd0 - \xd6\xd1 - \xd6\xd2 - \xd6\xd3 - \xd6\xd4 - \xd6\xd5 - \xd6\xd6 - \xd6\xd7 - \xd6\xd8 - \xd6\xd9 - \xd6\xda - \xd6\xdb - \xd6\xdc - \xd6\xdd - \xd6\xde - \xd6\xdf - \xd6\xe0 - \xd6\xe1 - \xd6\xe2 - \xd6\xe3 - \xd6\xe4 - \xd6\xe5 - \xd6\xe6 - \xd6\xe7 - \xd6\xe8 - \xd6\xe9 - \xd6\xea - \xd6\xeb - \xd6\xec - \xd6\xed - \xd6\xee - \xd6\xef - \xd6\xf0 - \xd6\xf1 - \xd6\xf2 - \xd6\xf3 - \xd6\xf4 - \xd6\xf5 - \xd6\xf6 - \xd6\xf7 - \xd6\xf8 - \xd6\xf9 - \xd6\xfa - \xd6\xfb - \xd6\xfc - \xd6\xfd - \xd6\xfe - \xd7\x40 - \xd7\x41 - \xd7\x42 - \xd7\x43 - \xd7\x44 - \xd7\x45 - \xd7\x46 - \xd7\x47 - \xd7\x48 - \xd7\x49 - \xd7\x4a - \xd7\x4b - \xd7\x4c - \xd7\x4d - \xd7\x4e - \xd7\x4f - \xd7\x50 - \xd7\x51 - \xd7\x52 - \xd7\x53 - \xd7\x54 - \xd7\x55 - \xd7\x56 - \xd7\x57 - \xd7\x58 - \xd7\x59 - \xd7\x5a - \xd7\x5b - \xd7\x5c - \xd7\x5d - \xd7\x5e - \xd7\x5f - \xd7\x60 - \xd7\x61 - \xd7\x62 - \xd7\x63 - \xd7\x64 - \xd7\x65 - \xd7\x66 - \xd7\x67 - \xd7\x68 - \xd7\x69 - \xd7\x6a - \xd7\x6b - \xd7\x6c - \xd7\x6d - \xd7\x6e - \xd7\x6f - \xd7\x70 - \xd7\x71 - \xd7\x72 - \xd7\x73 - \xd7\x74 - \xd7\x75 - \xd7\x76 - \xd7\x77 - \xd7\x78 - \xd7\x79 - \xd7\x7a - \xd7\x7b - \xd7\x7c - \xd7\x7d - \xd7\x7e - \xd7\xa1 - \xd7\xa2 - \xd7\xa3 - \xd7\xa4 - \xd7\xa5 - \xd7\xa6 - \xd7\xa7 - \xd7\xa8 - \xd7\xa9 - \xd7\xaa - \xd7\xab - \xd7\xac - \xd7\xad - \xd7\xae - \xd7\xaf - \xd7\xb0 - \xd7\xb1 - \xd7\xb2 - \xd7\xb3 - \xd7\xb4 - \xd7\xb5 - \xd7\xb6 - \xd7\xb7 - \xd7\xb8 - \xd7\xb9 - \xd7\xba - \xd7\xbb - \xd7\xbc - \xd7\xbd - \xd7\xbe - \xd7\xbf - \xd7\xc0 - \xd7\xc1 - \xd7\xc2 - \xd7\xc3 - \xd7\xc4 - \xd7\xc5 - \xd7\xc6 - \xd7\xc7 - \xd7\xc8 - \xd7\xc9 - \xd7\xca - \xd7\xcb - \xd7\xcc - \xd7\xcd - \xd7\xce - \xd7\xcf - \xd7\xd0 - \xd7\xd1 - \xd7\xd2 - \xd7\xd3 - \xd7\xd4 - \xd7\xd5 - \xd7\xd6 - \xd7\xd7 - \xd7\xd8 - \xd7\xd9 - \xd7\xda - \xd7\xdb - \xd7\xdc - \xd7\xdd - \xd7\xde - \xd7\xdf - \xd7\xe0 - \xd7\xe1 - \xd7\xe2 - \xd7\xe3 - \xd7\xe4 - \xd7\xe5 - \xd7\xe6 - \xd7\xe7 - \xd7\xe8 - \xd7\xe9 - \xd7\xea - \xd7\xeb - \xd7\xec - \xd7\xed - \xd7\xee - \xd7\xef - \xd7\xf0 - \xd7\xf1 - \xd7\xf2 - \xd7\xf3 - \xd7\xf4 - \xd7\xf5 - \xd7\xf6 - \xd7\xf7 - \xd7\xf8 - \xd7\xf9 - \xd7\xfa - \xd7\xfb - \xd7\xfc - \xd7\xfd - \xd7\xfe - \xd8\x40 - \xd8\x41 - \xd8\x42 - \xd8\x43 - \xd8\x44 - \xd8\x45 - \xd8\x46 - \xd8\x47 - \xd8\x48 - \xd8\x49 - \xd8\x4a - \xd8\x4b - \xd8\x4c - \xd8\x4d - \xd8\x4e - \xd8\x4f - \xd8\x50 - \xd8\x51 - \xd8\x52 - \xd8\x53 - \xd8\x54 - \xd8\x55 - \xd8\x56 - \xd8\x57 - \xd8\x58 - \xd8\x59 - \xd8\x5a - \xd8\x5b - \xd8\x5c - \xd8\x5d - \xd8\x5e - \xd8\x5f - \xd8\x60 - \xd8\x61 - \xd8\x62 - \xd8\x63 - \xd8\x64 - \xd8\x65 - \xd8\x66 - \xd8\x67 - \xd8\x68 - \xd8\x69 - \xd8\x6a - \xd8\x6b - \xd8\x6c - \xd8\x6d - \xd8\x6e - \xd8\x6f - \xd8\x70 - \xd8\x71 - \xd8\x72 - \xd8\x73 - \xd8\x74 - \xd8\x75 - \xd8\x76 - \xd8\x77 - \xd8\x78 - \xd8\x79 - \xd8\x7a - \xd8\x7b - \xd8\x7c - \xd8\x7d - \xd8\x7e - \xd8\xa1 - \xd8\xa2 - \xd8\xa3 - \xd8\xa4 - \xd8\xa5 - \xd8\xa6 - \xd8\xa7 - \xd8\xa8 - \xd8\xa9 - \xd8\xaa - \xd8\xab - \xd8\xac - \xd8\xad - \xd8\xae - \xd8\xaf - \xd8\xb0 - \xd8\xb1 - \xd8\xb2 - \xd8\xb3 - \xd8\xb4 - \xd8\xb5 - \xd8\xb6 - \xd8\xb7 - \xd8\xb8 - \xd8\xb9 - \xd8\xba - \xd8\xbb - \xd8\xbc - \xd8\xbd - \xd8\xbe - \xd8\xbf - \xd8\xc0 - \xd8\xc1 - \xd8\xc2 - \xd8\xc3 - \xd8\xc4 - \xd8\xc5 - \xd8\xc6 - \xd8\xc7 - \xd8\xc8 - \xd8\xc9 - \xd8\xca - \xd8\xcb - \xd8\xcc - \xd8\xcd - \xd8\xce - \xd8\xcf - \xd8\xd0 - \xd8\xd1 - \xd8\xd2 - \xd8\xd3 - \xd8\xd4 - \xd8\xd5 - \xd8\xd6 - \xd8\xd7 - \xd8\xd8 - \xd8\xd9 - \xd8\xda - \xd8\xdb - \xd8\xdc - \xd8\xdd - \xd8\xde - \xd8\xdf - \xd8\xe0 - \xd8\xe1 - \xd8\xe2 - \xd8\xe3 - \xd8\xe4 - \xd8\xe5 - \xd8\xe6 - \xd8\xe7 - \xd8\xe8 - \xd8\xe9 - \xd8\xea - \xd8\xeb - \xd8\xec - \xd8\xed - \xd8\xee - \xd8\xef - \xd8\xf0 - \xd8\xf1 - \xd8\xf2 - \xd8\xf3 - \xd8\xf4 - \xd8\xf5 - \xd8\xf6 - \xd8\xf7 - \xd8\xf8 - \xd8\xf9 - \xd8\xfa - \xd8\xfb - \xd8\xfc - \xd8\xfd - \xd8\xfe - \xd9\x40 - \xd9\x41 - \xd9\x42 - \xd9\x43 - \xd9\x44 - \xd9\x45 - \xd9\x46 - \xd9\x47 - \xd9\x48 - \xd9\x49 - \xd9\x4a - \xd9\x4b - \xd9\x4c - \xd9\x4d - \xd9\x4e - \xd9\x4f - \xd9\x50 - \xd9\x51 - \xd9\x52 - \xd9\x53 - \xd9\x54 - \xd9\x55 - \xd9\x56 - \xd9\x57 - \xd9\x58 - \xd9\x59 - \xd9\x5a - \xd9\x5b - \xd9\x5c - \xd9\x5d - \xd9\x5e - \xd9\x5f - \xd9\x60 - \xd9\x61 - \xd9\x62 - \xd9\x63 - \xd9\x64 - \xd9\x65 - \xd9\x66 - \xd9\x67 - \xd9\x68 - \xd9\x69 - \xd9\x6a - \xd9\x6b - \xd9\x6c - \xd9\x6d - \xd9\x6e - \xd9\x6f - \xd9\x70 - \xd9\x71 - \xd9\x72 - \xd9\x73 - \xd9\x74 - \xd9\x75 - \xd9\x76 - \xd9\x77 - \xd9\x78 - \xd9\x79 - \xd9\x7a - \xd9\x7b - \xd9\x7c - \xd9\x7d - \xd9\x7e - \xd9\xa1 - \xd9\xa2 - \xd9\xa3 - \xd9\xa4 - \xd9\xa5 - \xd9\xa6 - \xd9\xa7 - \xd9\xa8 - \xd9\xa9 - \xd9\xaa - \xd9\xab - \xd9\xac - \xd9\xad - \xd9\xae - \xd9\xaf - \xd9\xb0 - \xd9\xb1 - \xd9\xb2 - \xd9\xb3 - \xd9\xb4 - \xd9\xb5 - \xd9\xb6 - \xd9\xb7 - \xd9\xb8 - \xd9\xb9 - \xd9\xba - \xd9\xbb - \xd9\xbc - \xd9\xbd - \xd9\xbe - \xd9\xbf - \xd9\xc0 - \xd9\xc1 - \xd9\xc2 - \xd9\xc3 - \xd9\xc4 - \xd9\xc5 - \xd9\xc6 - \xd9\xc7 - \xd9\xc8 - \xd9\xc9 - \xd9\xca - \xd9\xcb - \xd9\xcc - \xd9\xcd - \xd9\xce - \xd9\xcf - \xd9\xd0 - \xd9\xd1 - \xd9\xd2 - \xd9\xd3 - \xd9\xd4 - \xd9\xd5 - \xd9\xd6 - \xd9\xd7 - \xd9\xd8 - \xd9\xd9 - \xd9\xda - \xd9\xdb - \xd9\xdc - \xd9\xdd - \xd9\xde - \xd9\xdf - \xd9\xe0 - \xd9\xe1 - \xd9\xe2 - \xd9\xe3 - \xd9\xe4 - \xd9\xe5 - \xd9\xe6 - \xd9\xe7 - \xd9\xe8 - \xd9\xe9 - \xd9\xea - \xd9\xeb - \xd9\xec - \xd9\xed - \xd9\xee - \xd9\xef - \xd9\xf0 - \xd9\xf1 - \xd9\xf2 - \xd9\xf3 - \xd9\xf4 - \xd9\xf5 - \xd9\xf6 - \xd9\xf7 - \xd9\xf8 - \xd9\xf9 - \xd9\xfa - \xd9\xfb - \xd9\xfc - \xd9\xfd - \xd9\xfe - \xda\x40 - \xda\x41 - \xda\x42 - \xda\x43 - \xda\x44 - \xda\x45 - \xda\x46 - \xda\x47 - \xda\x48 - \xda\x49 - \xda\x4a - \xda\x4b - \xda\x4c - \xda\x4d - \xda\x4e - \xda\x4f - \xda\x50 - \xda\x51 - \xda\x52 - \xda\x53 - \xda\x54 - \xda\x55 - \xda\x56 - \xda\x57 - \xda\x58 - \xda\x59 - \xda\x5a - \xda\x5b - \xda\x5c - \xda\x5d - \xda\x5e - \xda\x5f - \xda\x60 - \xda\x61 - \xda\x62 - \xda\x63 - \xda\x64 - \xda\x65 - \xda\x66 - \xda\x67 - \xda\x68 - \xda\x69 - \xda\x6a - \xda\x6b - \xda\x6c - \xda\x6d - \xda\x6e - \xda\x6f - \xda\x70 - \xda\x71 - \xda\x72 - \xda\x73 - \xda\x74 - \xda\x75 - \xda\x76 - \xda\x77 - \xda\x78 - \xda\x79 - \xda\x7a - \xda\x7b - \xda\x7c - \xda\x7d - \xda\x7e - \xda\xa1 - \xda\xa2 - \xda\xa3 - \xda\xa4 - \xda\xa5 - \xda\xa6 - \xda\xa7 - \xda\xa8 - \xda\xa9 - \xda\xaa - \xda\xab - \xda\xac - \xda\xad - \xda\xae - \xda\xaf - \xda\xb0 - \xda\xb1 - \xda\xb2 - \xda\xb3 - \xda\xb4 - \xda\xb5 - \xda\xb6 - \xda\xb7 - \xda\xb8 - \xda\xb9 - \xda\xba - \xda\xbb - \xda\xbc - \xda\xbd - \xda\xbe - \xda\xbf - \xda\xc0 - \xda\xc1 - \xda\xc2 - \xda\xc3 - \xda\xc4 - \xda\xc5 - \xda\xc6 - \xda\xc7 - \xda\xc8 - \xda\xc9 - \xda\xca - \xda\xcb - \xda\xcc - \xda\xcd - \xda\xce - \xda\xcf - \xda\xd0 - \xda\xd1 - \xda\xd2 - \xda\xd3 - \xda\xd4 - \xda\xd5 - \xda\xd6 - \xda\xd7 - \xda\xd8 - \xda\xd9 - \xda\xda - \xda\xdb - \xda\xdc - \xda\xdd - \xda\xde - \xda\xdf - \xda\xe0 - \xda\xe1 - \xda\xe2 - \xda\xe3 - \xda\xe4 - \xda\xe5 - \xda\xe6 - \xda\xe7 - \xda\xe8 - \xda\xe9 - \xda\xea - \xda\xeb - \xda\xec - \xda\xed - \xda\xee - \xda\xef - \xda\xf0 - \xda\xf1 - \xda\xf2 - \xda\xf3 - \xda\xf4 - \xda\xf5 - \xda\xf6 - \xda\xf7 - \xda\xf8 - \xda\xf9 - \xda\xfa - \xda\xfb - \xda\xfc - \xda\xfd - \xda\xfe - \xdb\x40 - \xdb\x41 - \xdb\x42 - \xdb\x43 - \xdb\x44 - \xdb\x45 - \xdb\x46 - \xdb\x47 - \xdb\x48 - \xdb\x49 - \xdb\x4a - \xdb\x4b - \xdb\x4c - \xdb\x4d - \xdb\x4e - \xdb\x4f - \xdb\x50 - \xdb\x51 - \xdb\x52 - \xdb\x53 - \xdb\x54 - \xdb\x55 - \xdb\x56 - \xdb\x57 - \xdb\x58 - \xdb\x59 - \xdb\x5a - \xdb\x5b - \xdb\x5c - \xdb\x5d - \xdb\x5e - \xdb\x5f - \xdb\x60 - \xdb\x61 - \xdb\x62 - \xdb\x63 - \xdb\x64 - \xdb\x65 - \xdb\x66 - \xdb\x67 - \xdb\x68 - \xdb\x69 - \xdb\x6a - \xdb\x6b - \xdb\x6c - \xdb\x6d - \xdb\x6e - \xdb\x6f - \xdb\x70 - \xdb\x71 - \xdb\x72 - \xdb\x73 - \xdb\x74 - \xdb\x75 - \xdb\x76 - \xdb\x77 - \xdb\x78 - \xdb\x79 - \xdb\x7a - \xdb\x7b - \xdb\x7c - \xdb\x7d - \xdb\x7e - \xdb\xa1 - \xdb\xa2 - \xdb\xa3 - \xdb\xa4 - \xdb\xa5 - \xdb\xa6 - \xdb\xa7 - \xdb\xa8 - \xdb\xa9 - \xdb\xaa - \xdb\xab - \xdb\xac - \xdb\xad - \xdb\xae - \xdb\xaf - \xdb\xb0 - \xdb\xb1 - \xdb\xb2 - \xdb\xb3 - \xdb\xb4 - \xdb\xb5 - \xdb\xb6 - \xdb\xb7 - \xdb\xb8 - \xdb\xb9 - \xdb\xba - \xdb\xbb - \xdb\xbc - \xdb\xbd - \xdb\xbe - \xdb\xbf - \xdb\xc0 - \xdb\xc1 - \xdb\xc2 - \xdb\xc3 - \xdb\xc4 - \xdb\xc5 - \xdb\xc6 - \xdb\xc7 - \xdb\xc8 - \xdb\xc9 - \xdb\xca - \xdb\xcb - \xdb\xcc - \xdb\xcd - \xdb\xce - \xdb\xcf - \xdb\xd0 - \xdb\xd1 - \xdb\xd2 - \xdb\xd3 - \xdb\xd4 - \xdb\xd5 - \xdb\xd6 - \xdb\xd7 - \xdb\xd8 - \xdb\xd9 - \xdb\xda - \xdb\xdb - \xdb\xdc - \xdb\xdd - \xdb\xde - \xdb\xdf - \xdb\xe0 - \xdb\xe1 - \xdb\xe2 - \xdb\xe3 - \xdb\xe4 - \xdb\xe5 - \xdb\xe6 - \xdb\xe7 - \xdb\xe8 - \xdb\xe9 - \xdb\xea - \xdb\xeb - \xdb\xec - \xdb\xed - \xdb\xee - \xdb\xef - \xdb\xf0 - \xdb\xf1 - \xdb\xf2 - \xdb\xf3 - \xdb\xf4 - \xdb\xf5 - \xdb\xf6 - \xdb\xf7 - \xdb\xf8 - \xdb\xf9 - \xdb\xfa - \xdb\xfb - \xdb\xfc - \xdb\xfd - \xdb\xfe - \xdc\x40 - \xdc\x41 - \xdc\x42 - \xdc\x43 - \xdc\x44 - \xdc\x45 - \xdc\x46 - \xdc\x47 - \xdc\x48 - \xdc\x49 - \xdc\x4a - \xdc\x4b - \xdc\x4c - \xdc\x4d - \xdc\x4e - \xdc\x4f - \xdc\x50 - \xdc\x51 - \xdc\x52 - \xdc\x53 - \xdc\x54 - \xdc\x55 - \xdc\x56 - \xdc\x57 - \xdc\x58 - \xdc\x59 - \xdc\x5a - \xdc\x5b - \xdc\x5c - \xdc\x5d - \xdc\x5e - \xdc\x5f - \xdc\x60 - \xdc\x61 - \xdc\x62 - \xdc\x63 - \xdc\x64 - \xdc\x65 - \xdc\x66 - \xdc\x67 - \xdc\x68 - \xdc\x69 - \xdc\x6a - \xdc\x6b - \xdc\x6c - \xdc\x6d - \xdc\x6e - \xdc\x6f - \xdc\x70 - \xdc\x71 - \xdc\x72 - \xdc\x73 - \xdc\x74 - \xdc\x75 - \xdc\x76 - \xdc\x77 - \xdc\x78 - \xdc\x79 - \xdc\x7a - \xdc\x7b - \xdc\x7c - \xdc\x7d - \xdc\x7e - \xdc\xa1 - \xdc\xa2 - \xdc\xa3 - \xdc\xa4 - \xdc\xa5 - \xdc\xa6 - \xdc\xa7 - \xdc\xa8 - \xdc\xa9 - \xdc\xaa - \xdc\xab - \xdc\xac - \xdc\xad - \xdc\xae - \xdc\xaf - \xdc\xb0 - \xdc\xb1 - \xdc\xb2 - \xdc\xb3 - \xdc\xb4 - \xdc\xb5 - \xdc\xb6 - \xdc\xb7 - \xdc\xb8 - \xdc\xb9 - \xdc\xba - \xdc\xbb - \xdc\xbc - \xdc\xbd - \xdc\xbe - \xdc\xbf - \xdc\xc0 - \xdc\xc1 - \xdc\xc2 - \xdc\xc3 - \xdc\xc4 - \xdc\xc5 - \xdc\xc6 - \xdc\xc7 - \xdc\xc8 - \xdc\xc9 - \xdc\xca - \xdc\xcb - \xdc\xcc - \xdc\xcd - \xdc\xce - \xdc\xcf - \xdc\xd0 - \xdc\xd1 - \xdc\xd2 - \xdc\xd3 - \xdc\xd4 - \xdc\xd5 - \xdc\xd6 - \xdc\xd7 - \xdc\xd8 - \xdc\xd9 - \xdc\xda - \xdc\xdb - \xdc\xdc - \xdc\xdd - \xdc\xde - \xdc\xdf - \xdc\xe0 - \xdc\xe1 - \xdc\xe2 - \xdc\xe3 - \xdc\xe4 - \xdc\xe5 - \xdc\xe6 - \xdc\xe7 - \xdc\xe8 - \xdc\xe9 - \xdc\xea - \xdc\xeb - \xdc\xec - \xdc\xed - \xdc\xee - \xdc\xef - \xdc\xf0 - \xdc\xf1 - \xdc\xf2 - \xdc\xf3 - \xdc\xf4 - \xdc\xf5 - \xdc\xf6 - \xdc\xf7 - \xdc\xf8 - \xdc\xf9 - \xdc\xfa - \xdc\xfb - \xdc\xfc - \xdc\xfd - \xdc\xfe - \xdd\x40 - \xdd\x41 - \xdd\x42 - \xdd\x43 - \xdd\x44 - \xdd\x45 - \xdd\x46 - \xdd\x47 - \xdd\x48 - \xdd\x49 - \xdd\x4a - \xdd\x4b - \xdd\x4c - \xdd\x4d - \xdd\x4e - \xdd\x4f - \xdd\x50 - \xdd\x51 - \xdd\x52 - \xdd\x53 - \xdd\x54 - \xdd\x55 - \xdd\x56 - \xdd\x57 - \xdd\x58 - \xdd\x59 - \xdd\x5a - \xdd\x5b - \xdd\x5c - \xdd\x5d - \xdd\x5e - \xdd\x5f - \xdd\x60 - \xdd\x61 - \xdd\x62 - \xdd\x63 - \xdd\x64 - \xdd\x65 - \xdd\x66 - \xdd\x67 - \xdd\x68 - \xdd\x69 - \xdd\x6a - \xdd\x6b - \xdd\x6c - \xdd\x6d - \xdd\x6e - \xdd\x6f - \xdd\x70 - \xdd\x71 - \xdd\x72 - \xdd\x73 - \xdd\x74 - \xdd\x75 - \xdd\x76 - \xdd\x77 - \xdd\x78 - \xdd\x79 - \xdd\x7a - \xdd\x7b - \xdd\x7c - \xdd\x7d - \xdd\x7e - \xdd\xa1 - \xdd\xa2 - \xdd\xa3 - \xdd\xa4 - \xdd\xa5 - \xdd\xa6 - \xdd\xa7 - \xdd\xa8 - \xdd\xa9 - \xdd\xaa - \xdd\xab - \xdd\xac - \xdd\xad - \xdd\xae - \xdd\xaf - \xdd\xb0 - \xdd\xb1 - \xdd\xb2 - \xdd\xb3 - \xdd\xb4 - \xdd\xb5 - \xdd\xb6 - \xdd\xb7 - \xdd\xb8 - \xdd\xb9 - \xdd\xba - \xdd\xbb - \xdd\xbc - \xdd\xbd - \xdd\xbe - \xdd\xbf - \xdd\xc0 - \xdd\xc1 - \xdd\xc2 - \xdd\xc3 - \xdd\xc4 - \xdd\xc5 - \xdd\xc6 - \xdd\xc7 - \xdd\xc8 - \xdd\xc9 - \xdd\xca - \xdd\xcb - \xdd\xcc - \xdd\xcd - \xdd\xce - \xdd\xcf - \xdd\xd0 - \xdd\xd1 - \xdd\xd2 - \xdd\xd3 - \xdd\xd4 - \xdd\xd5 - \xdd\xd6 - \xdd\xd7 - \xdd\xd8 - \xdd\xd9 - \xdd\xda - \xdd\xdb - \xdd\xdc - \xdd\xdd - \xdd\xde - \xdd\xdf - \xdd\xe0 - \xdd\xe1 - \xdd\xe2 - \xdd\xe3 - \xdd\xe4 - \xdd\xe5 - \xdd\xe6 - \xdd\xe7 - \xdd\xe8 - \xdd\xe9 - \xdd\xea - \xdd\xeb - \xdd\xec - \xdd\xed - \xdd\xee - \xdd\xef - \xdd\xf0 - \xdd\xf1 - \xdd\xf2 - \xdd\xf3 - \xdd\xf4 - \xdd\xf5 - \xdd\xf6 - \xdd\xf7 - \xdd\xf8 - \xdd\xf9 - \xdd\xfa - \xdd\xfb - \xdd\xfc - \xdd\xfd - \xdd\xfe - \xde\x40 - \xde\x41 - \xde\x42 - \xde\x43 - \xde\x44 - \xde\x45 - \xde\x46 - \xde\x47 - \xde\x48 - \xde\x49 - \xde\x4a - \xde\x4b - \xde\x4c - \xde\x4d - \xde\x4e - \xde\x4f - \xde\x50 - \xde\x51 - \xde\x52 - \xde\x53 - \xde\x54 - \xde\x55 - \xde\x56 - \xde\x57 - \xde\x58 - \xde\x59 - \xde\x5a - \xde\x5b - \xde\x5c - \xde\x5d - \xde\x5e - \xde\x5f - \xde\x60 - \xde\x61 - \xde\x62 - \xde\x63 - \xde\x64 - \xde\x65 - \xde\x66 - \xde\x67 - \xde\x68 - \xde\x69 - \xde\x6a - \xde\x6b - \xde\x6c - \xde\x6d - \xde\x6e - \xde\x6f - \xde\x70 - \xde\x71 - \xde\x72 - \xde\x73 - \xde\x74 - \xde\x75 - \xde\x76 - \xde\x77 - \xde\x78 - \xde\x79 - \xde\x7a - \xde\x7b - \xde\x7c - \xde\x7d - \xde\x7e - \xde\xa1 - \xde\xa2 - \xde\xa3 - \xde\xa4 - \xde\xa5 - \xde\xa6 - \xde\xa7 - \xde\xa8 - \xde\xa9 - \xde\xaa - \xde\xab - \xde\xac - \xde\xad - \xde\xae - \xde\xaf - \xde\xb0 - \xde\xb1 - \xde\xb2 - \xde\xb3 - \xde\xb4 - \xde\xb5 - \xde\xb6 - \xde\xb7 - \xde\xb8 - \xde\xb9 - \xde\xba - \xde\xbb - \xde\xbc - \xde\xbd - \xde\xbe - \xde\xbf - \xde\xc0 - \xde\xc1 - \xde\xc2 - \xde\xc3 - \xde\xc4 - \xde\xc5 - \xde\xc6 - \xde\xc7 - \xde\xc8 - \xde\xc9 - \xde\xca - \xde\xcb - \xde\xcc - \xde\xcd - \xde\xce - \xde\xcf - \xde\xd0 - \xde\xd1 - \xde\xd2 - \xde\xd3 - \xde\xd4 - \xde\xd5 - \xde\xd6 - \xde\xd7 - \xde\xd8 - \xde\xd9 - \xde\xda - \xde\xdb - \xde\xdc - \xde\xdd - \xde\xde - \xde\xdf - \xde\xe0 - \xde\xe1 - \xde\xe2 - \xde\xe3 - \xde\xe4 - \xde\xe5 - \xde\xe6 - \xde\xe7 - \xde\xe8 - \xde\xe9 - \xde\xea - \xde\xeb - \xde\xec - \xde\xed - \xde\xee - \xde\xef - \xde\xf0 - \xde\xf1 - \xde\xf2 - \xde\xf3 - \xde\xf4 - \xde\xf5 - \xde\xf6 - \xde\xf7 - \xde\xf8 - \xde\xf9 - \xde\xfa - \xde\xfb - \xde\xfc - \xde\xfd - \xde\xfe - \xdf\x40 - \xdf\x41 - \xdf\x42 - \xdf\x43 - \xdf\x44 - \xdf\x45 - \xdf\x46 - \xdf\x47 - \xdf\x48 - \xdf\x49 - \xdf\x4a - \xdf\x4b - \xdf\x4c - \xdf\x4d - \xdf\x4e - \xdf\x4f - \xdf\x50 - \xdf\x51 - \xdf\x52 - \xdf\x53 - \xdf\x54 - \xdf\x55 - \xdf\x56 - \xdf\x57 - \xdf\x58 - \xdf\x59 - \xdf\x5a - \xdf\x5b - \xdf\x5c - \xdf\x5d - \xdf\x5e - \xdf\x5f - \xdf\x60 - \xdf\x61 - \xdf\x62 - \xdf\x63 - \xdf\x64 - \xdf\x65 - \xdf\x66 - \xdf\x67 - \xdf\x68 - \xdf\x69 - \xdf\x6a - \xdf\x6b - \xdf\x6c - \xdf\x6d - \xdf\x6e - \xdf\x6f - \xdf\x70 - \xdf\x71 - \xdf\x72 - \xdf\x73 - \xdf\x74 - \xdf\x75 - \xdf\x76 - \xdf\x77 - \xdf\x78 - \xdf\x79 - \xdf\x7a - \xdf\x7b - \xdf\x7c - \xdf\x7d - \xdf\x7e - \xdf\xa1 - \xdf\xa2 - \xdf\xa3 - \xdf\xa4 - \xdf\xa5 - \xdf\xa6 - \xdf\xa7 - \xdf\xa8 - \xdf\xa9 - \xdf\xaa - \xdf\xab - \xdf\xac - \xdf\xad - \xdf\xae - \xdf\xaf - \xdf\xb0 - \xdf\xb1 - \xdf\xb2 - \xdf\xb3 - \xdf\xb4 - \xdf\xb5 - \xdf\xb6 - \xdf\xb7 - \xdf\xb8 - \xdf\xb9 - \xdf\xba - \xdf\xbb - \xdf\xbc - \xdf\xbd - \xdf\xbe - \xdf\xbf - \xdf\xc0 - \xdf\xc1 - \xdf\xc2 - \xdf\xc3 - \xdf\xc4 - \xdf\xc5 - \xdf\xc6 - \xdf\xc7 - \xdf\xc8 - \xdf\xc9 - \xdf\xca - \xdf\xcb - \xdf\xcc - \xdf\xcd - \xdf\xce - \xdf\xcf - \xdf\xd0 - \xdf\xd1 - \xdf\xd2 - \xdf\xd3 - \xdf\xd4 - \xdf\xd5 - \xdf\xd6 - \xdf\xd7 - \xdf\xd8 - \xdf\xd9 - \xdf\xda - \xdf\xdb - \xdf\xdc - \xdf\xdd - \xdf\xde - \xdf\xdf - \xdf\xe0 - \xdf\xe1 - \xdf\xe2 - \xdf\xe3 - \xdf\xe4 - \xdf\xe5 - \xdf\xe6 - \xdf\xe7 - \xdf\xe8 - \xdf\xe9 - \xdf\xea - \xdf\xeb - \xdf\xec - \xdf\xed - \xdf\xee - \xdf\xef - \xdf\xf0 - \xdf\xf1 - \xdf\xf2 - \xdf\xf3 - \xdf\xf4 - \xdf\xf5 - \xdf\xf6 - \xdf\xf7 - \xdf\xf8 - \xdf\xf9 - \xdf\xfa - \xdf\xfb - \xdf\xfc - \xdf\xfd - \xdf\xfe - \xe0\x40 - \xe0\x41 - \xe0\x42 - \xe0\x43 - \xe0\x44 - \xe0\x45 - \xe0\x46 - \xe0\x47 - \xe0\x48 - \xe0\x49 - \xe0\x4a - \xe0\x4b - \xe0\x4c - \xe0\x4d - \xe0\x4e - \xe0\x4f - \xe0\x50 - \xe0\x51 - \xe0\x52 - \xe0\x53 - \xe0\x54 - \xe0\x55 - \xe0\x56 - \xe0\x57 - \xe0\x58 - \xe0\x59 - \xe0\x5a - \xe0\x5b - \xe0\x5c - \xe0\x5d - \xe0\x5e - \xe0\x5f - \xe0\x60 - \xe0\x61 - \xe0\x62 - \xe0\x63 - \xe0\x64 - \xe0\x65 - \xe0\x66 - \xe0\x67 - \xe0\x68 - \xe0\x69 - \xe0\x6a - \xe0\x6b - \xe0\x6c - \xe0\x6d - \xe0\x6e - \xe0\x6f - \xe0\x70 - \xe0\x71 - \xe0\x72 - \xe0\x73 - \xe0\x74 - \xe0\x75 - \xe0\x76 - \xe0\x77 - \xe0\x78 - \xe0\x79 - \xe0\x7a - \xe0\x7b - \xe0\x7c - \xe0\x7d - \xe0\x7e - \xe0\xa1 - \xe0\xa2 - \xe0\xa3 - \xe0\xa4 - \xe0\xa5 - \xe0\xa6 - \xe0\xa7 - \xe0\xa8 - \xe0\xa9 - \xe0\xaa - \xe0\xab - \xe0\xac - \xe0\xad - \xe0\xae - \xe0\xaf - \xe0\xb0 - \xe0\xb1 - \xe0\xb2 - \xe0\xb3 - \xe0\xb4 - \xe0\xb5 - \xe0\xb6 - \xe0\xb7 - \xe0\xb8 - \xe0\xb9 - \xe0\xba - \xe0\xbb - \xe0\xbc - \xe0\xbd - \xe0\xbe - \xe0\xbf - \xe0\xc0 - \xe0\xc1 - \xe0\xc2 - \xe0\xc3 - \xe0\xc4 - \xe0\xc5 - \xe0\xc6 - \xe0\xc7 - \xe0\xc8 - \xe0\xc9 - \xe0\xca - \xe0\xcb - \xe0\xcc - \xe0\xcd - \xe0\xce - \xe0\xcf - \xe0\xd0 - \xe0\xd1 - \xe0\xd2 - \xe0\xd3 - \xe0\xd4 - \xe0\xd5 - \xe0\xd6 - \xe0\xd7 - \xe0\xd8 - \xe0\xd9 - \xe0\xda - \xe0\xdb - \xe0\xdc - \xe0\xdd - \xe0\xde - \xe0\xdf - \xe0\xe0 - \xe0\xe1 - \xe0\xe2 - \xe0\xe3 - \xe0\xe4 - \xe0\xe5 - \xe0\xe6 - \xe0\xe7 - \xe0\xe8 - \xe0\xe9 - \xe0\xea - \xe0\xeb - \xe0\xec - \xe0\xed - \xe0\xee - \xe0\xef - \xe0\xf0 - \xe0\xf1 - \xe0\xf2 - \xe0\xf3 - \xe0\xf4 - \xe0\xf5 - \xe0\xf6 - \xe0\xf7 - \xe0\xf8 - \xe0\xf9 - \xe0\xfa - \xe0\xfb - \xe0\xfc - \xe0\xfd - \xe0\xfe - \xe1\x40 - \xe1\x41 - \xe1\x42 - \xe1\x43 - \xe1\x44 - \xe1\x45 - \xe1\x46 - \xe1\x47 - \xe1\x48 - \xe1\x49 - \xe1\x4a - \xe1\x4b - \xe1\x4c - \xe1\x4d - \xe1\x4e - \xe1\x4f - \xe1\x50 - \xe1\x51 - \xe1\x52 - \xe1\x53 - \xe1\x54 - \xe1\x55 - \xe1\x56 - \xe1\x57 - \xe1\x58 - \xe1\x59 - \xe1\x5a - \xe1\x5b - \xe1\x5c - \xe1\x5d - \xe1\x5e - \xe1\x5f - \xe1\x60 - \xe1\x61 - \xe1\x62 - \xe1\x63 - \xe1\x64 - \xe1\x65 - \xe1\x66 - \xe1\x67 - \xe1\x68 - \xe1\x69 - \xe1\x6a - \xe1\x6b - \xe1\x6c - \xe1\x6d - \xe1\x6e - \xe1\x6f - \xe1\x70 - \xe1\x71 - \xe1\x72 - \xe1\x73 - \xe1\x74 - \xe1\x75 - \xe1\x76 - \xe1\x77 - \xe1\x78 - \xe1\x79 - \xe1\x7a - \xe1\x7b - \xe1\x7c - \xe1\x7d - \xe1\x7e - \xe1\xa1 - \xe1\xa2 - \xe1\xa3 - \xe1\xa4 - \xe1\xa5 - \xe1\xa6 - \xe1\xa7 - \xe1\xa8 - \xe1\xa9 - \xe1\xaa - \xe1\xab - \xe1\xac - \xe1\xad - \xe1\xae - \xe1\xaf - \xe1\xb0 - \xe1\xb1 - \xe1\xb2 - \xe1\xb3 - \xe1\xb4 - \xe1\xb5 - \xe1\xb6 - \xe1\xb7 - \xe1\xb8 - \xe1\xb9 - \xe1\xba - \xe1\xbb - \xe1\xbc - \xe1\xbd - \xe1\xbe - \xe1\xbf - \xe1\xc0 - \xe1\xc1 - \xe1\xc2 - \xe1\xc3 - \xe1\xc4 - \xe1\xc5 - \xe1\xc6 - \xe1\xc7 - \xe1\xc8 - \xe1\xc9 - \xe1\xca - \xe1\xcb - \xe1\xcc - \xe1\xcd - \xe1\xce - \xe1\xcf - \xe1\xd0 - \xe1\xd1 - \xe1\xd2 - \xe1\xd3 - \xe1\xd4 - \xe1\xd5 - \xe1\xd6 - \xe1\xd7 - \xe1\xd8 - \xe1\xd9 - \xe1\xda - \xe1\xdb - \xe1\xdc - \xe1\xdd - \xe1\xde - \xe1\xdf - \xe1\xe0 - \xe1\xe1 - \xe1\xe2 - \xe1\xe3 - \xe1\xe4 - \xe1\xe5 - \xe1\xe6 - \xe1\xe7 - \xe1\xe8 - \xe1\xe9 - \xe1\xea - \xe1\xeb - \xe1\xec - \xe1\xed - \xe1\xee - \xe1\xef - \xe1\xf0 - \xe1\xf1 - \xe1\xf2 - \xe1\xf3 - \xe1\xf4 - \xe1\xf5 - \xe1\xf6 - \xe1\xf7 - \xe1\xf8 - \xe1\xf9 - \xe1\xfa - \xe1\xfb - \xe1\xfc - \xe1\xfd - \xe1\xfe - \xe2\x40 - \xe2\x41 - \xe2\x42 - \xe2\x43 - \xe2\x44 - \xe2\x45 - \xe2\x46 - \xe2\x47 - \xe2\x48 - \xe2\x49 - \xe2\x4a - \xe2\x4b - \xe2\x4c - \xe2\x4d - \xe2\x4e - \xe2\x4f - \xe2\x50 - \xe2\x51 - \xe2\x52 - \xe2\x53 - \xe2\x54 - \xe2\x55 - \xe2\x56 - \xe2\x57 - \xe2\x58 - \xe2\x59 - \xe2\x5a - \xe2\x5b - \xe2\x5c - \xe2\x5d - \xe2\x5e - \xe2\x5f - \xe2\x60 - \xe2\x61 - \xe2\x62 - \xe2\x63 - \xe2\x64 - \xe2\x65 - \xe2\x66 - \xe2\x67 - \xe2\x68 - \xe2\x69 - \xe2\x6a - \xe2\x6b - \xe2\x6c - \xe2\x6d - \xe2\x6e - \xe2\x6f - \xe2\x70 - \xe2\x71 - \xe2\x72 - \xe2\x73 - \xe2\x74 - \xe2\x75 - \xe2\x76 - \xe2\x77 - \xe2\x78 - \xe2\x79 - \xe2\x7a - \xe2\x7b - \xe2\x7c - \xe2\x7d - \xe2\x7e - \xe2\xa1 - \xe2\xa2 - \xe2\xa3 - \xe2\xa4 - \xe2\xa5 - \xe2\xa6 - \xe2\xa7 - \xe2\xa8 - \xe2\xa9 - \xe2\xaa - \xe2\xab - \xe2\xac - \xe2\xad - \xe2\xae - \xe2\xaf - \xe2\xb0 - \xe2\xb1 - \xe2\xb2 - \xe2\xb3 - \xe2\xb4 - \xe2\xb5 - \xe2\xb6 - \xe2\xb7 - \xe2\xb8 - \xe2\xb9 - \xe2\xba - \xe2\xbb - \xe2\xbc - \xe2\xbd - \xe2\xbe - \xe2\xbf - \xe2\xc0 - \xe2\xc1 - \xe2\xc2 - \xe2\xc3 - \xe2\xc4 - \xe2\xc5 - \xe2\xc6 - \xe2\xc7 - \xe2\xc8 - \xe2\xc9 - \xe2\xca - \xe2\xcb - \xe2\xcc - \xe2\xcd - \xe2\xce - \xe2\xcf - \xe2\xd0 - \xe2\xd1 - \xe2\xd2 - \xe2\xd3 - \xe2\xd4 - \xe2\xd5 - \xe2\xd6 - \xe2\xd7 - \xe2\xd8 - \xe2\xd9 - \xe2\xda - \xe2\xdb - \xe2\xdc - \xe2\xdd - \xe2\xde - \xe2\xdf - \xe2\xe0 - \xe2\xe1 - \xe2\xe2 - \xe2\xe3 - \xe2\xe4 - \xe2\xe5 - \xe2\xe6 - \xe2\xe7 - \xe2\xe8 - \xe2\xe9 - \xe2\xea - \xe2\xeb - \xe2\xec - \xe2\xed - \xe2\xee - \xe2\xef - \xe2\xf0 - \xe2\xf1 - \xe2\xf2 - \xe2\xf3 - \xe2\xf4 - \xe2\xf5 - \xe2\xf6 - \xe2\xf7 - \xe2\xf8 - \xe2\xf9 - \xe2\xfa - \xe2\xfb - \xe2\xfc - \xe2\xfd - \xe2\xfe - \xe3\x40 - \xe3\x41 - \xe3\x42 - \xe3\x43 - \xe3\x44 - \xe3\x45 - \xe3\x46 - \xe3\x47 - \xe3\x48 - \xe3\x49 - \xe3\x4a - \xe3\x4b - \xe3\x4c - \xe3\x4d - \xe3\x4e - \xe3\x4f - \xe3\x50 - \xe3\x51 - \xe3\x52 - \xe3\x53 - \xe3\x54 - \xe3\x55 - \xe3\x56 - \xe3\x57 - \xe3\x58 - \xe3\x59 - \xe3\x5a - \xe3\x5b - \xe3\x5c - \xe3\x5d - \xe3\x5e - \xe3\x5f - \xe3\x60 - \xe3\x61 - \xe3\x62 - \xe3\x63 - \xe3\x64 - \xe3\x65 - \xe3\x66 - \xe3\x67 - \xe3\x68 - \xe3\x69 - \xe3\x6a - \xe3\x6b - \xe3\x6c - \xe3\x6d - \xe3\x6e - \xe3\x6f - \xe3\x70 - \xe3\x71 - \xe3\x72 - \xe3\x73 - \xe3\x74 - \xe3\x75 - \xe3\x76 - \xe3\x77 - \xe3\x78 - \xe3\x79 - \xe3\x7a - \xe3\x7b - \xe3\x7c - \xe3\x7d - \xe3\x7e - \xe3\xa1 - \xe3\xa2 - \xe3\xa3 - \xe3\xa4 - \xe3\xa5 - \xe3\xa6 - \xe3\xa7 - \xe3\xa8 - \xe3\xa9 - \xe3\xaa - \xe3\xab - \xe3\xac - \xe3\xad - \xe3\xae - \xe3\xaf - \xe3\xb0 - \xe3\xb1 - \xe3\xb2 - \xe3\xb3 - \xe3\xb4 - \xe3\xb5 - \xe3\xb6 - \xe3\xb7 - \xe3\xb8 - \xe3\xb9 - \xe3\xba - \xe3\xbb - \xe3\xbc - \xe3\xbd - \xe3\xbe - \xe3\xbf - \xe3\xc0 - \xe3\xc1 - \xe3\xc2 - \xe3\xc3 - \xe3\xc4 - \xe3\xc5 - \xe3\xc6 - \xe3\xc7 - \xe3\xc8 - \xe3\xc9 - \xe3\xca - \xe3\xcb - \xe3\xcc - \xe3\xcd - \xe3\xce - \xe3\xcf - \xe3\xd0 - \xe3\xd1 - \xe3\xd2 - \xe3\xd3 - \xe3\xd4 - \xe3\xd5 - \xe3\xd6 - \xe3\xd7 - \xe3\xd8 - \xe3\xd9 - \xe3\xda - \xe3\xdb - \xe3\xdc - \xe3\xdd - \xe3\xde - \xe3\xdf - \xe3\xe0 - \xe3\xe1 - \xe3\xe2 - \xe3\xe3 - \xe3\xe4 - \xe3\xe5 - \xe3\xe6 - \xe3\xe7 - \xe3\xe8 - \xe3\xe9 - \xe3\xea - \xe3\xeb - \xe3\xec - \xe3\xed - \xe3\xee - \xe3\xef - \xe3\xf0 - \xe3\xf1 - \xe3\xf2 - \xe3\xf3 - \xe3\xf4 - \xe3\xf5 - \xe3\xf6 - \xe3\xf7 - \xe3\xf8 - \xe3\xf9 - \xe3\xfa - \xe3\xfb - \xe3\xfc - \xe3\xfd - \xe3\xfe - \xe4\x40 - \xe4\x41 - \xe4\x42 - \xe4\x43 - \xe4\x44 - \xe4\x45 - \xe4\x46 - \xe4\x47 - \xe4\x48 - \xe4\x49 - \xe4\x4a - \xe4\x4b - \xe4\x4c - \xe4\x4d - \xe4\x4e - \xe4\x4f - \xe4\x50 - \xe4\x51 - \xe4\x52 - \xe4\x53 - \xe4\x54 - \xe4\x55 - \xe4\x56 - \xe4\x57 - \xe4\x58 - \xe4\x59 - \xe4\x5a - \xe4\x5b - \xe4\x5c - \xe4\x5d - \xe4\x5e - \xe4\x5f - \xe4\x60 - \xe4\x61 - \xe4\x62 - \xe4\x63 - \xe4\x64 - \xe4\x65 - \xe4\x66 - \xe4\x67 - \xe4\x68 - \xe4\x69 - \xe4\x6a - \xe4\x6b - \xe4\x6c - \xe4\x6d - \xe4\x6e - \xe4\x6f - \xe4\x70 - \xe4\x71 - \xe4\x72 - \xe4\x73 - \xe4\x74 - \xe4\x75 - \xe4\x76 - \xe4\x77 - \xe4\x78 - \xe4\x79 - \xe4\x7a - \xe4\x7b - \xe4\x7c - \xe4\x7d - \xe4\x7e - \xe4\xa1 - \xe4\xa2 - \xe4\xa3 - \xe4\xa4 - \xe4\xa5 - \xe4\xa6 - \xe4\xa7 - \xe4\xa8 - \xe4\xa9 - \xe4\xaa - \xe4\xab - \xe4\xac - \xe4\xad - \xe4\xae - \xe4\xaf - \xe4\xb0 - \xe4\xb1 - \xe4\xb2 - \xe4\xb3 - \xe4\xb4 - \xe4\xb5 - \xe4\xb6 - \xe4\xb7 - \xe4\xb8 - \xe4\xb9 - \xe4\xba - \xe4\xbb - \xe4\xbc - \xe4\xbd - \xe4\xbe - \xe4\xbf - \xe4\xc0 - \xe4\xc1 - \xe4\xc2 - \xe4\xc3 - \xe4\xc4 - \xe4\xc5 - \xe4\xc6 - \xe4\xc7 - \xe4\xc8 - \xe4\xc9 - \xe4\xca - \xe4\xcb - \xe4\xcc - \xe4\xcd - \xe4\xce - \xe4\xcf - \xe4\xd0 - \xe4\xd1 - \xe4\xd2 - \xe4\xd3 - \xe4\xd4 - \xe4\xd5 - \xe4\xd6 - \xe4\xd7 - \xe4\xd8 - \xe4\xd9 - \xe4\xda - \xe4\xdb - \xe4\xdc - \xe4\xdd - \xe4\xde - \xe4\xdf - \xe4\xe0 - \xe4\xe1 - \xe4\xe2 - \xe4\xe3 - \xe4\xe4 - \xe4\xe5 - \xe4\xe6 - \xe4\xe7 - \xe4\xe8 - \xe4\xe9 - \xe4\xea - \xe4\xeb - \xe4\xec - \xe4\xed - \xe4\xee - \xe4\xef - \xe4\xf0 - \xe4\xf1 - \xe4\xf2 - \xe4\xf3 - \xe4\xf4 - \xe4\xf5 - \xe4\xf6 - \xe4\xf7 - \xe4\xf8 - \xe4\xf9 - \xe4\xfa - \xe4\xfb - \xe4\xfc - \xe4\xfd - \xe4\xfe - \xe5\x40 - \xe5\x41 - \xe5\x42 - \xe5\x43 - \xe5\x44 - \xe5\x45 - \xe5\x46 - \xe5\x47 - \xe5\x48 - \xe5\x49 - \xe5\x4a - \xe5\x4b - \xe5\x4c - \xe5\x4d - \xe5\x4e - \xe5\x4f - \xe5\x50 - \xe5\x51 - \xe5\x52 - \xe5\x53 - \xe5\x54 - \xe5\x55 - \xe5\x56 - \xe5\x57 - \xe5\x58 - \xe5\x59 - \xe5\x5a - \xe5\x5b - \xe5\x5c - \xe5\x5d - \xe5\x5e - \xe5\x5f - \xe5\x60 - \xe5\x61 - \xe5\x62 - \xe5\x63 - \xe5\x64 - \xe5\x65 - \xe5\x66 - \xe5\x67 - \xe5\x68 - \xe5\x69 - \xe5\x6a - \xe5\x6b - \xe5\x6c - \xe5\x6d - \xe5\x6e - \xe5\x6f - \xe5\x70 - \xe5\x71 - \xe5\x72 - \xe5\x73 - \xe5\x74 - \xe5\x75 - \xe5\x76 - \xe5\x77 - \xe5\x78 - \xe5\x79 - \xe5\x7a - \xe5\x7b - \xe5\x7c - \xe5\x7d - \xe5\x7e - \xe5\xa1 - \xe5\xa2 - \xe5\xa3 - \xe5\xa4 - \xe5\xa5 - \xe5\xa6 - \xe5\xa7 - \xe5\xa8 - \xe5\xa9 - \xe5\xaa - \xe5\xab - \xe5\xac - \xe5\xad - \xe5\xae - \xe5\xaf - \xe5\xb0 - \xe5\xb1 - \xe5\xb2 - \xe5\xb3 - \xe5\xb4 - \xe5\xb5 - \xe5\xb6 - \xe5\xb7 - \xe5\xb8 - \xe5\xb9 - \xe5\xba - \xe5\xbb - \xe5\xbc - \xe5\xbd - \xe5\xbe - \xe5\xbf - \xe5\xc0 - \xe5\xc1 - \xe5\xc2 - \xe5\xc3 - \xe5\xc4 - \xe5\xc5 - \xe5\xc6 - \xe5\xc7 - \xe5\xc8 - \xe5\xc9 - \xe5\xca - \xe5\xcb - \xe5\xcc - \xe5\xcd - \xe5\xce - \xe5\xcf - \xe5\xd0 - \xe5\xd1 - \xe5\xd2 - \xe5\xd3 - \xe5\xd4 - \xe5\xd5 - \xe5\xd6 - \xe5\xd7 - \xe5\xd8 - \xe5\xd9 - \xe5\xda - \xe5\xdb - \xe5\xdc - \xe5\xdd - \xe5\xde - \xe5\xdf - \xe5\xe0 - \xe5\xe1 - \xe5\xe2 - \xe5\xe3 - \xe5\xe4 - \xe5\xe5 - \xe5\xe6 - \xe5\xe7 - \xe5\xe8 - \xe5\xe9 - \xe5\xea - \xe5\xeb - \xe5\xec - \xe5\xed - \xe5\xee - \xe5\xef - \xe5\xf0 - \xe5\xf1 - \xe5\xf2 - \xe5\xf3 - \xe5\xf4 - \xe5\xf5 - \xe5\xf6 - \xe5\xf7 - \xe5\xf8 - \xe5\xf9 - \xe5\xfa - \xe5\xfb - \xe5\xfc - \xe5\xfd - \xe5\xfe - \xe6\x40 - \xe6\x41 - \xe6\x42 - \xe6\x43 - \xe6\x44 - \xe6\x45 - \xe6\x46 - \xe6\x47 - \xe6\x48 - \xe6\x49 - \xe6\x4a - \xe6\x4b - \xe6\x4c - \xe6\x4d - \xe6\x4e - \xe6\x4f - \xe6\x50 - \xe6\x51 - \xe6\x52 - \xe6\x53 - \xe6\x54 - \xe6\x55 - \xe6\x56 - \xe6\x57 - \xe6\x58 - \xe6\x59 - \xe6\x5a - \xe6\x5b - \xe6\x5c - \xe6\x5d - \xe6\x5e - \xe6\x5f - \xe6\x60 - \xe6\x61 - \xe6\x62 - \xe6\x63 - \xe6\x64 - \xe6\x65 - \xe6\x66 - \xe6\x67 - \xe6\x68 - \xe6\x69 - \xe6\x6a - \xe6\x6b - \xe6\x6c - \xe6\x6d - \xe6\x6e - \xe6\x6f - \xe6\x70 - \xe6\x71 - \xe6\x72 - \xe6\x73 - \xe6\x74 - \xe6\x75 - \xe6\x76 - \xe6\x77 - \xe6\x78 - \xe6\x79 - \xe6\x7a - \xe6\x7b - \xe6\x7c - \xe6\x7d - \xe6\x7e - \xe6\xa1 - \xe6\xa2 - \xe6\xa3 - \xe6\xa4 - \xe6\xa5 - \xe6\xa6 - \xe6\xa7 - \xe6\xa8 - \xe6\xa9 - \xe6\xaa - \xe6\xab - \xe6\xac - \xe6\xad - \xe6\xae - \xe6\xaf - \xe6\xb0 - \xe6\xb1 - \xe6\xb2 - \xe6\xb3 - \xe6\xb4 - \xe6\xb5 - \xe6\xb6 - \xe6\xb7 - \xe6\xb8 - \xe6\xb9 - \xe6\xba - \xe6\xbb - \xe6\xbc - \xe6\xbd - \xe6\xbe - \xe6\xbf - \xe6\xc0 - \xe6\xc1 - \xe6\xc2 - \xe6\xc3 - \xe6\xc4 - \xe6\xc5 - \xe6\xc6 - \xe6\xc7 - \xe6\xc8 - \xe6\xc9 - \xe6\xca - \xe6\xcb - \xe6\xcc - \xe6\xcd - \xe6\xce - \xe6\xcf - \xe6\xd0 - \xe6\xd1 - \xe6\xd2 - \xe6\xd3 - \xe6\xd4 - \xe6\xd5 - \xe6\xd6 - \xe6\xd7 - \xe6\xd8 - \xe6\xd9 - \xe6\xda - \xe6\xdb - \xe6\xdc - \xe6\xdd - \xe6\xde - \xe6\xdf - \xe6\xe0 - \xe6\xe1 - \xe6\xe2 - \xe6\xe3 - \xe6\xe4 - \xe6\xe5 - \xe6\xe6 - \xe6\xe7 - \xe6\xe8 - \xe6\xe9 - \xe6\xea - \xe6\xeb - \xe6\xec - \xe6\xed - \xe6\xee - \xe6\xef - \xe6\xf0 - \xe6\xf1 - \xe6\xf2 - \xe6\xf3 - \xe6\xf4 - \xe6\xf5 - \xe6\xf6 - \xe6\xf7 - \xe6\xf8 - \xe6\xf9 - \xe6\xfa - \xe6\xfb - \xe6\xfc - \xe6\xfd - \xe6\xfe - \xe7\x40 - \xe7\x41 - \xe7\x42 - \xe7\x43 - \xe7\x44 - \xe7\x45 - \xe7\x46 - \xe7\x47 - \xe7\x48 - \xe7\x49 - \xe7\x4a - \xe7\x4b - \xe7\x4c - \xe7\x4d - \xe7\x4e - \xe7\x4f - \xe7\x50 - \xe7\x51 - \xe7\x52 - \xe7\x53 - \xe7\x54 - \xe7\x55 - \xe7\x56 - \xe7\x57 - \xe7\x58 - \xe7\x59 - \xe7\x5a - \xe7\x5b - \xe7\x5c - \xe7\x5d - \xe7\x5e - \xe7\x5f - \xe7\x60 - \xe7\x61 - \xe7\x62 - \xe7\x63 - \xe7\x64 - \xe7\x65 - \xe7\x66 - \xe7\x67 - \xe7\x68 - \xe7\x69 - \xe7\x6a - \xe7\x6b - \xe7\x6c - \xe7\x6d - \xe7\x6e - \xe7\x6f - \xe7\x70 - \xe7\x71 - \xe7\x72 - \xe7\x73 - \xe7\x74 - \xe7\x75 - \xe7\x76 - \xe7\x77 - \xe7\x78 - \xe7\x79 - \xe7\x7a - \xe7\x7b - \xe7\x7c - \xe7\x7d - \xe7\x7e - \xe7\xa1 - \xe7\xa2 - \xe7\xa3 - \xe7\xa4 - \xe7\xa5 - \xe7\xa6 - \xe7\xa7 - \xe7\xa8 - \xe7\xa9 - \xe7\xaa - \xe7\xab - \xe7\xac - \xe7\xad - \xe7\xae - \xe7\xaf - \xe7\xb0 - \xe7\xb1 - \xe7\xb2 - \xe7\xb3 - \xe7\xb4 - \xe7\xb5 - \xe7\xb6 - \xe7\xb7 - \xe7\xb8 - \xe7\xb9 - \xe7\xba - \xe7\xbb - \xe7\xbc - \xe7\xbd - \xe7\xbe - \xe7\xbf - \xe7\xc0 - \xe7\xc1 - \xe7\xc2 - \xe7\xc3 - \xe7\xc4 - \xe7\xc5 - \xe7\xc6 - \xe7\xc7 - \xe7\xc8 - \xe7\xc9 - \xe7\xca - \xe7\xcb - \xe7\xcc - \xe7\xcd - \xe7\xce - \xe7\xcf - \xe7\xd0 - \xe7\xd1 - \xe7\xd2 - \xe7\xd3 - \xe7\xd4 - \xe7\xd5 - \xe7\xd6 - \xe7\xd7 - \xe7\xd8 - \xe7\xd9 - \xe7\xda - \xe7\xdb - \xe7\xdc - \xe7\xdd - \xe7\xde - \xe7\xdf - \xe7\xe0 - \xe7\xe1 - \xe7\xe2 - \xe7\xe3 - \xe7\xe4 - \xe7\xe5 - \xe7\xe6 - \xe7\xe7 - \xe7\xe8 - \xe7\xe9 - \xe7\xea - \xe7\xeb - \xe7\xec - \xe7\xed - \xe7\xee - \xe7\xef - \xe7\xf0 - \xe7\xf1 - \xe7\xf2 - \xe7\xf3 - \xe7\xf4 - \xe7\xf5 - \xe7\xf6 - \xe7\xf7 - \xe7\xf8 - \xe7\xf9 - \xe7\xfa - \xe7\xfb - \xe7\xfc - \xe7\xfd - \xe7\xfe - \xe8\x40 - \xe8\x41 - \xe8\x42 - \xe8\x43 - \xe8\x44 - \xe8\x45 - \xe8\x46 - \xe8\x47 - \xe8\x48 - \xe8\x49 - \xe8\x4a - \xe8\x4b - \xe8\x4c - \xe8\x4d - \xe8\x4e - \xe8\x4f - \xe8\x50 - \xe8\x51 - \xe8\x52 - \xe8\x53 - \xe8\x54 - \xe8\x55 - \xe8\x56 - \xe8\x57 - \xe8\x58 - \xe8\x59 - \xe8\x5a - \xe8\x5b - \xe8\x5c - \xe8\x5d - \xe8\x5e - \xe8\x5f - \xe8\x60 - \xe8\x61 - \xe8\x62 - \xe8\x63 - \xe8\x64 - \xe8\x65 - \xe8\x66 - \xe8\x67 - \xe8\x68 - \xe8\x69 - \xe8\x6a - \xe8\x6b - \xe8\x6c - \xe8\x6d - \xe8\x6e - \xe8\x6f - \xe8\x70 - \xe8\x71 - \xe8\x72 - \xe8\x73 - \xe8\x74 - \xe8\x75 - \xe8\x76 - \xe8\x77 - \xe8\x78 - \xe8\x79 - \xe8\x7a - \xe8\x7b - \xe8\x7c - \xe8\x7d - \xe8\x7e - \xe8\xa1 - \xe8\xa2 - \xe8\xa3 - \xe8\xa4 - \xe8\xa5 - \xe8\xa6 - \xe8\xa7 - \xe8\xa8 - \xe8\xa9 - \xe8\xaa - \xe8\xab - \xe8\xac - \xe8\xad - \xe8\xae - \xe8\xaf - \xe8\xb0 - \xe8\xb1 - \xe8\xb2 - \xe8\xb3 - \xe8\xb4 - \xe8\xb5 - \xe8\xb6 - \xe8\xb7 - \xe8\xb8 - \xe8\xb9 - \xe8\xba - \xe8\xbb - \xe8\xbc - \xe8\xbd - \xe8\xbe - \xe8\xbf - \xe8\xc0 - \xe8\xc1 - \xe8\xc2 - \xe8\xc3 - \xe8\xc4 - \xe8\xc5 - \xe8\xc6 - \xe8\xc7 - \xe8\xc8 - \xe8\xc9 - \xe8\xca - \xe8\xcb - \xe8\xcc - \xe8\xcd - \xe8\xce - \xe8\xcf - \xe8\xd0 - \xe8\xd1 - \xe8\xd2 - \xe8\xd3 - \xe8\xd4 - \xe8\xd5 - \xe8\xd6 - \xe8\xd7 - \xe8\xd8 - \xe8\xd9 - \xe8\xda - \xe8\xdb - \xe8\xdc - \xe8\xdd - \xe8\xde - \xe8\xdf - \xe8\xe0 - \xe8\xe1 - \xe8\xe2 - \xe8\xe3 - \xe8\xe4 - \xe8\xe5 - \xe8\xe6 - \xe8\xe7 - \xe8\xe8 - \xe8\xe9 - \xe8\xea - \xe8\xeb - \xe8\xec - \xe8\xed - \xe8\xee - \xe8\xef - \xe8\xf0 - \xe8\xf1 - \xe8\xf2 - \xe8\xf3 - \xe8\xf4 - \xe8\xf5 - \xe8\xf6 - \xe8\xf7 - \xe8\xf8 - \xe8\xf9 - \xe8\xfa - \xe8\xfb - \xe8\xfc - \xe8\xfd - \xe8\xfe - \xe9\x40 - \xe9\x41 - \xe9\x42 - \xe9\x43 - \xe9\x44 - \xe9\x45 - \xe9\x46 - \xe9\x47 - \xe9\x48 - \xe9\x49 - \xe9\x4a - \xe9\x4b - \xe9\x4c - \xe9\x4d - \xe9\x4e - \xe9\x4f - \xe9\x50 - \xe9\x51 - \xe9\x52 - \xe9\x53 - \xe9\x54 - \xe9\x55 - \xe9\x56 - \xe9\x57 - \xe9\x58 - \xe9\x59 - \xe9\x5a - \xe9\x5b - \xe9\x5c - \xe9\x5d - \xe9\x5e - \xe9\x5f - \xe9\x60 - \xe9\x61 - \xe9\x62 - \xe9\x63 - \xe9\x64 - \xe9\x65 - \xe9\x66 - \xe9\x67 - \xe9\x68 - \xe9\x69 - \xe9\x6a - \xe9\x6b - \xe9\x6c - \xe9\x6d - \xe9\x6e - \xe9\x6f - \xe9\x70 - \xe9\x71 - \xe9\x72 - \xe9\x73 - \xe9\x74 - \xe9\x75 - \xe9\x76 - \xe9\x77 - \xe9\x78 - \xe9\x79 - \xe9\x7a - \xe9\x7b - \xe9\x7c - \xe9\x7d - \xe9\x7e - \xe9\xa1 - \xe9\xa2 - \xe9\xa3 - \xe9\xa4 - \xe9\xa5 - \xe9\xa6 - \xe9\xa7 - \xe9\xa8 - \xe9\xa9 - \xe9\xaa - \xe9\xab - \xe9\xac - \xe9\xad - \xe9\xae - \xe9\xaf - \xe9\xb0 - \xe9\xb1 - \xe9\xb2 - \xe9\xb3 - \xe9\xb4 - \xe9\xb5 - \xe9\xb6 - \xe9\xb7 - \xe9\xb8 - \xe9\xb9 - \xe9\xba - \xe9\xbb - \xe9\xbc - \xe9\xbd - \xe9\xbe - \xe9\xbf - \xe9\xc0 - \xe9\xc1 - \xe9\xc2 - \xe9\xc3 - \xe9\xc4 - \xe9\xc5 - \xe9\xc6 - \xe9\xc7 - \xe9\xc8 - \xe9\xc9 - \xe9\xca - \xe9\xcb - \xe9\xcc - \xe9\xcd - \xe9\xce - \xe9\xcf - \xe9\xd0 - \xe9\xd1 - \xe9\xd2 - \xe9\xd3 - \xe9\xd4 - \xe9\xd5 - \xe9\xd6 - \xe9\xd7 - \xe9\xd8 - \xe9\xd9 - \xe9\xda - \xe9\xdb - \xe9\xdc - \xe9\xdd - \xe9\xde - \xe9\xdf - \xe9\xe0 - \xe9\xe1 - \xe9\xe2 - \xe9\xe3 - \xe9\xe4 - \xe9\xe5 - \xe9\xe6 - \xe9\xe7 - \xe9\xe8 - \xe9\xe9 - \xe9\xea - \xe9\xeb - \xe9\xec - \xe9\xed - \xe9\xee - \xe9\xef - \xe9\xf0 - \xe9\xf1 - \xe9\xf2 - \xe9\xf3 - \xe9\xf4 - \xe9\xf5 - \xe9\xf6 - \xe9\xf7 - \xe9\xf8 - \xe9\xf9 - \xe9\xfa - \xe9\xfb - \xe9\xfc - \xe9\xfd - \xe9\xfe - \xea\x40 - \xea\x41 - \xea\x42 - \xea\x43 - \xea\x44 - \xea\x45 - \xea\x46 - \xea\x47 - \xea\x48 - \xea\x49 - \xea\x4a - \xea\x4b - \xea\x4c - \xea\x4d - \xea\x4e - \xea\x4f - \xea\x50 - \xea\x51 - \xea\x52 - \xea\x53 - \xea\x54 - \xea\x55 - \xea\x56 - \xea\x57 - \xea\x58 - \xea\x59 - \xea\x5a - \xea\x5b - \xea\x5c - \xea\x5d - \xea\x5e - \xea\x5f - \xea\x60 - \xea\x61 - \xea\x62 - \xea\x63 - \xea\x64 - \xea\x65 - \xea\x66 - \xea\x67 - \xea\x68 - \xea\x69 - \xea\x6a - \xea\x6b - \xea\x6c - \xea\x6d - \xea\x6e - \xea\x6f - \xea\x70 - \xea\x71 - \xea\x72 - \xea\x73 - \xea\x74 - \xea\x75 - \xea\x76 - \xea\x77 - \xea\x78 - \xea\x79 - \xea\x7a - \xea\x7b - \xea\x7c - \xea\x7d - \xea\x7e - \xea\xa1 - \xea\xa2 - \xea\xa3 - \xea\xa4 - \xea\xa5 - \xea\xa6 - \xea\xa7 - \xea\xa8 - \xea\xa9 - \xea\xaa - \xea\xab - \xea\xac - \xea\xad - \xea\xae - \xea\xaf - \xea\xb0 - \xea\xb1 - \xea\xb2 - \xea\xb3 - \xea\xb4 - \xea\xb5 - \xea\xb6 - \xea\xb7 - \xea\xb8 - \xea\xb9 - \xea\xba - \xea\xbb - \xea\xbc - \xea\xbd - \xea\xbe - \xea\xbf - \xea\xc0 - \xea\xc1 - \xea\xc2 - \xea\xc3 - \xea\xc4 - \xea\xc5 - \xea\xc6 - \xea\xc7 - \xea\xc8 - \xea\xc9 - \xea\xca - \xea\xcb - \xea\xcc - \xea\xcd - \xea\xce - \xea\xcf - \xea\xd0 - \xea\xd1 - \xea\xd2 - \xea\xd3 - \xea\xd4 - \xea\xd5 - \xea\xd6 - \xea\xd7 - \xea\xd8 - \xea\xd9 - \xea\xda - \xea\xdb - \xea\xdc - \xea\xdd - \xea\xde - \xea\xdf - \xea\xe0 - \xea\xe1 - \xea\xe2 - \xea\xe3 - \xea\xe4 - \xea\xe5 - \xea\xe6 - \xea\xe7 - \xea\xe8 - \xea\xe9 - \xea\xea - \xea\xeb - \xea\xec - \xea\xed - \xea\xee - \xea\xef - \xea\xf0 - \xea\xf1 - \xea\xf2 - \xea\xf3 - \xea\xf4 - \xea\xf5 - \xea\xf6 - \xea\xf7 - \xea\xf8 - \xea\xf9 - \xea\xfa - \xea\xfb - \xea\xfc - \xea\xfd - \xea\xfe - \xeb\x40 - \xeb\x41 - \xeb\x42 - \xeb\x43 - \xeb\x44 - \xeb\x45 - \xeb\x46 - \xeb\x47 - \xeb\x48 - \xeb\x49 - \xeb\x4a - \xeb\x4b - \xeb\x4c - \xeb\x4d - \xeb\x4e - \xeb\x4f - \xeb\x50 - \xeb\x51 - \xeb\x52 - \xeb\x53 - \xeb\x54 - \xeb\x55 - \xeb\x56 - \xeb\x57 - \xeb\x58 - \xeb\x59 - \xeb\x5a - \xeb\x5b - \xeb\x5c - \xeb\x5d - \xeb\x5e - \xeb\x5f - \xeb\x60 - \xeb\x61 - \xeb\x62 - \xeb\x63 - \xeb\x64 - \xeb\x65 - \xeb\x66 - \xeb\x67 - \xeb\x68 - \xeb\x69 - \xeb\x6a - \xeb\x6b - \xeb\x6c - \xeb\x6d - \xeb\x6e - \xeb\x6f - \xeb\x70 - \xeb\x71 - \xeb\x72 - \xeb\x73 - \xeb\x74 - \xeb\x75 - \xeb\x76 - \xeb\x77 - \xeb\x78 - \xeb\x79 - \xeb\x7a - \xeb\x7b - \xeb\x7c - \xeb\x7d - \xeb\x7e - \xeb\xa1 - \xeb\xa2 - \xeb\xa3 - \xeb\xa4 - \xeb\xa5 - \xeb\xa6 - \xeb\xa7 - \xeb\xa8 - \xeb\xa9 - \xeb\xaa - \xeb\xab - \xeb\xac - \xeb\xad - \xeb\xae - \xeb\xaf - \xeb\xb0 - \xeb\xb1 - \xeb\xb2 - \xeb\xb3 - \xeb\xb4 - \xeb\xb5 - \xeb\xb6 - \xeb\xb7 - \xeb\xb8 - \xeb\xb9 - \xeb\xba - \xeb\xbb - \xeb\xbc - \xeb\xbd - \xeb\xbe - \xeb\xbf - \xeb\xc0 - \xeb\xc1 - \xeb\xc2 - \xeb\xc3 - \xeb\xc4 - \xeb\xc5 - \xeb\xc6 - \xeb\xc7 - \xeb\xc8 - \xeb\xc9 - \xeb\xca - \xeb\xcb - \xeb\xcc - \xeb\xcd - \xeb\xce - \xeb\xcf - \xeb\xd0 - \xeb\xd1 - \xeb\xd2 - \xeb\xd3 - \xeb\xd4 - \xeb\xd5 - \xeb\xd6 - \xeb\xd7 - \xeb\xd8 - \xeb\xd9 - \xeb\xda - \xeb\xdb - \xeb\xdc - \xeb\xdd - \xeb\xde - \xeb\xdf - \xeb\xe0 - \xeb\xe1 - \xeb\xe2 - \xeb\xe3 - \xeb\xe4 - \xeb\xe5 - \xeb\xe6 - \xeb\xe7 - \xeb\xe8 - \xeb\xe9 - \xeb\xea - \xeb\xeb - \xeb\xec - \xeb\xed - \xeb\xee - \xeb\xef - \xeb\xf0 - \xeb\xf1 - \xeb\xf2 - \xeb\xf3 - \xeb\xf4 - \xeb\xf5 - \xeb\xf6 - \xeb\xf7 - \xeb\xf8 - \xeb\xf9 - \xeb\xfa - \xeb\xfb - \xeb\xfc - \xeb\xfd - \xeb\xfe - \xec\x40 - \xec\x41 - \xec\x42 - \xec\x43 - \xec\x44 - \xec\x45 - \xec\x46 - \xec\x47 - \xec\x48 - \xec\x49 - \xec\x4a - \xec\x4b - \xec\x4c - \xec\x4d - \xec\x4e - \xec\x4f - \xec\x50 - \xec\x51 - \xec\x52 - \xec\x53 - \xec\x54 - \xec\x55 - \xec\x56 - \xec\x57 - \xec\x58 - \xec\x59 - \xec\x5a - \xec\x5b - \xec\x5c - \xec\x5d - \xec\x5e - \xec\x5f - \xec\x60 - \xec\x61 - \xec\x62 - \xec\x63 - \xec\x64 - \xec\x65 - \xec\x66 - \xec\x67 - \xec\x68 - \xec\x69 - \xec\x6a - \xec\x6b - \xec\x6c - \xec\x6d - \xec\x6e - \xec\x6f - \xec\x70 - \xec\x71 - \xec\x72 - \xec\x73 - \xec\x74 - \xec\x75 - \xec\x76 - \xec\x77 - \xec\x78 - \xec\x79 - \xec\x7a - \xec\x7b - \xec\x7c - \xec\x7d - \xec\x7e - \xec\xa1 - \xec\xa2 - \xec\xa3 - \xec\xa4 - \xec\xa5 - \xec\xa6 - \xec\xa7 - \xec\xa8 - \xec\xa9 - \xec\xaa - \xec\xab - \xec\xac - \xec\xad - \xec\xae - \xec\xaf - \xec\xb0 - \xec\xb1 - \xec\xb2 - \xec\xb3 - \xec\xb4 - \xec\xb5 - \xec\xb6 - \xec\xb7 - \xec\xb8 - \xec\xb9 - \xec\xba - \xec\xbb - \xec\xbc - \xec\xbd - \xec\xbe - \xec\xbf - \xec\xc0 - \xec\xc1 - \xec\xc2 - \xec\xc3 - \xec\xc4 - \xec\xc5 - \xec\xc6 - \xec\xc7 - \xec\xc8 - \xec\xc9 - \xec\xca - \xec\xcb - \xec\xcc - \xec\xcd - \xec\xce - \xec\xcf - \xec\xd0 - \xec\xd1 - \xec\xd2 - \xec\xd3 - \xec\xd4 - \xec\xd5 - \xec\xd6 - \xec\xd7 - \xec\xd8 - \xec\xd9 - \xec\xda - \xec\xdb - \xec\xdc - \xec\xdd - \xec\xde - \xec\xdf - \xec\xe0 - \xec\xe1 - \xec\xe2 - \xec\xe3 - \xec\xe4 - \xec\xe5 - \xec\xe6 - \xec\xe7 - \xec\xe8 - \xec\xe9 - \xec\xea - \xec\xeb - \xec\xec - \xec\xed - \xec\xee - \xec\xef - \xec\xf0 - \xec\xf1 - \xec\xf2 - \xec\xf3 - \xec\xf4 - \xec\xf5 - \xec\xf6 - \xec\xf7 - \xec\xf8 - \xec\xf9 - \xec\xfa - \xec\xfb - \xec\xfc - \xec\xfd - \xec\xfe - \xed\x40 - \xed\x41 - \xed\x42 - \xed\x43 - \xed\x44 - \xed\x45 - \xed\x46 - \xed\x47 - \xed\x48 - \xed\x49 - \xed\x4a - \xed\x4b - \xed\x4c - \xed\x4d - \xed\x4e - \xed\x4f - \xed\x50 - \xed\x51 - \xed\x52 - \xed\x53 - \xed\x54 - \xed\x55 - \xed\x56 - \xed\x57 - \xed\x58 - \xed\x59 - \xed\x5a - \xed\x5b - \xed\x5c - \xed\x5d - \xed\x5e - \xed\x5f - \xed\x60 - \xed\x61 - \xed\x62 - \xed\x63 - \xed\x64 - \xed\x65 - \xed\x66 - \xed\x67 - \xed\x68 - \xed\x69 - \xed\x6a - \xed\x6b - \xed\x6c - \xed\x6d - \xed\x6e - \xed\x6f - \xed\x70 - \xed\x71 - \xed\x72 - \xed\x73 - \xed\x74 - \xed\x75 - \xed\x76 - \xed\x77 - \xed\x78 - \xed\x79 - \xed\x7a - \xed\x7b - \xed\x7c - \xed\x7d - \xed\x7e - \xed\xa1 - \xed\xa2 - \xed\xa3 - \xed\xa4 - \xed\xa5 - \xed\xa6 - \xed\xa7 - \xed\xa8 - \xed\xa9 - \xed\xaa - \xed\xab - \xed\xac - \xed\xad - \xed\xae - \xed\xaf - \xed\xb0 - \xed\xb1 - \xed\xb2 - \xed\xb3 - \xed\xb4 - \xed\xb5 - \xed\xb6 - \xed\xb7 - \xed\xb8 - \xed\xb9 - \xed\xba - \xed\xbb - \xed\xbc - \xed\xbd - \xed\xbe - \xed\xbf - \xed\xc0 - \xed\xc1 - \xed\xc2 - \xed\xc3 - \xed\xc4 - \xed\xc5 - \xed\xc6 - \xed\xc7 - \xed\xc8 - \xed\xc9 - \xed\xca - \xed\xcb - \xed\xcc - \xed\xcd - \xed\xce - \xed\xcf - \xed\xd0 - \xed\xd1 - \xed\xd2 - \xed\xd3 - \xed\xd4 - \xed\xd5 - \xed\xd6 - \xed\xd7 - \xed\xd8 - \xed\xd9 - \xed\xda - \xed\xdb - \xed\xdc - \xed\xdd - \xed\xde - \xed\xdf - \xed\xe0 - \xed\xe1 - \xed\xe2 - \xed\xe3 - \xed\xe4 - \xed\xe5 - \xed\xe6 - \xed\xe7 - \xed\xe8 - \xed\xe9 - \xed\xea - \xed\xeb - \xed\xec - \xed\xed - \xed\xee - \xed\xef - \xed\xf0 - \xed\xf1 - \xed\xf2 - \xed\xf3 - \xed\xf4 - \xed\xf5 - \xed\xf6 - \xed\xf7 - \xed\xf8 - \xed\xf9 - \xed\xfa - \xed\xfb - \xed\xfc - \xed\xfd - \xed\xfe - \xee\x40 - \xee\x41 - \xee\x42 - \xee\x43 - \xee\x44 - \xee\x45 - \xee\x46 - \xee\x47 - \xee\x48 - \xee\x49 - \xee\x4a - \xee\x4b - \xee\x4c - \xee\x4d - \xee\x4e - \xee\x4f - \xee\x50 - \xee\x51 - \xee\x52 - \xee\x53 - \xee\x54 - \xee\x55 - \xee\x56 - \xee\x57 - \xee\x58 - \xee\x59 - \xee\x5a - \xee\x5b - \xee\x5c - \xee\x5d - \xee\x5e - \xee\x5f - \xee\x60 - \xee\x61 - \xee\x62 - \xee\x63 - \xee\x64 - \xee\x65 - \xee\x66 - \xee\x67 - \xee\x68 - \xee\x69 - \xee\x6a - \xee\x6b - \xee\x6c - \xee\x6d - \xee\x6e - \xee\x6f - \xee\x70 - \xee\x71 - \xee\x72 - \xee\x73 - \xee\x74 - \xee\x75 - \xee\x76 - \xee\x77 - \xee\x78 - \xee\x79 - \xee\x7a - \xee\x7b - \xee\x7c - \xee\x7d - \xee\x7e - \xee\xa1 - \xee\xa2 - \xee\xa3 - \xee\xa4 - \xee\xa5 - \xee\xa6 - \xee\xa7 - \xee\xa8 - \xee\xa9 - \xee\xaa - \xee\xab - \xee\xac - \xee\xad - \xee\xae - \xee\xaf - \xee\xb0 - \xee\xb1 - \xee\xb2 - \xee\xb3 - \xee\xb4 - \xee\xb5 - \xee\xb6 - \xee\xb7 - \xee\xb8 - \xee\xb9 - \xee\xba - \xee\xbb - \xee\xbc - \xee\xbd - \xee\xbe - \xee\xbf - \xee\xc0 - \xee\xc1 - \xee\xc2 - \xee\xc3 - \xee\xc4 - \xee\xc5 - \xee\xc6 - \xee\xc7 - \xee\xc8 - \xee\xc9 - \xee\xca - \xee\xcb - \xee\xcc - \xee\xcd - \xee\xce - \xee\xcf - \xee\xd0 - \xee\xd1 - \xee\xd2 - \xee\xd3 - \xee\xd4 - \xee\xd5 - \xee\xd6 - \xee\xd7 - \xee\xd8 - \xee\xd9 - \xee\xda - \xee\xdb - \xee\xdc - \xee\xdd - \xee\xde - \xee\xdf - \xee\xe0 - \xee\xe1 - \xee\xe2 - \xee\xe3 - \xee\xe4 - \xee\xe5 - \xee\xe6 - \xee\xe7 - \xee\xe8 - \xee\xe9 - \xee\xea - \xee\xeb - \xee\xec - \xee\xed - \xee\xee - \xee\xef - \xee\xf0 - \xee\xf1 - \xee\xf2 - \xee\xf3 - \xee\xf4 - \xee\xf5 - \xee\xf6 - \xee\xf7 - \xee\xf8 - \xee\xf9 - \xee\xfa - \xee\xfb - \xee\xfc - \xee\xfd - \xee\xfe - \xef\x40 - \xef\x41 - \xef\x42 - \xef\x43 - \xef\x44 - \xef\x45 - \xef\x46 - \xef\x47 - \xef\x48 - \xef\x49 - \xef\x4a - \xef\x4b - \xef\x4c - \xef\x4d - \xef\x4e - \xef\x4f - \xef\x50 - \xef\x51 - \xef\x52 - \xef\x53 - \xef\x54 - \xef\x55 - \xef\x56 - \xef\x57 - \xef\x58 - \xef\x59 - \xef\x5a - \xef\x5b - \xef\x5c - \xef\x5d - \xef\x5e - \xef\x5f - \xef\x60 - \xef\x61 - \xef\x62 - \xef\x63 - \xef\x64 - \xef\x65 - \xef\x66 - \xef\x67 - \xef\x68 - \xef\x69 - \xef\x6a - \xef\x6b - \xef\x6c - \xef\x6d - \xef\x6e - \xef\x6f - \xef\x70 - \xef\x71 - \xef\x72 - \xef\x73 - \xef\x74 - \xef\x75 - \xef\x76 - \xef\x77 - \xef\x78 - \xef\x79 - \xef\x7a - \xef\x7b - \xef\x7c - \xef\x7d - \xef\x7e - \xef\xa1 - \xef\xa2 - \xef\xa3 - \xef\xa4 - \xef\xa5 - \xef\xa6 - \xef\xa7 - \xef\xa8 - \xef\xa9 - \xef\xaa - \xef\xab - \xef\xac - \xef\xad - \xef\xae - \xef\xaf - \xef\xb0 - \xef\xb1 - \xef\xb2 - \xef\xb3 - \xef\xb4 - \xef\xb5 - \xef\xb6 - \xef\xb7 - \xef\xb8 - \xef\xb9 - \xef\xba - \xef\xbb - \xef\xbc - \xef\xbd - \xef\xbe - \xef\xbf - \xef\xc0 - \xef\xc1 - \xef\xc2 - \xef\xc3 - \xef\xc4 - \xef\xc5 - \xef\xc6 - \xef\xc7 - \xef\xc8 - \xef\xc9 - \xef\xca - \xef\xcb - \xef\xcc - \xef\xcd - \xef\xce - \xef\xcf - \xef\xd0 - \xef\xd1 - \xef\xd2 - \xef\xd3 - \xef\xd4 - \xef\xd5 - \xef\xd6 - \xef\xd7 - \xef\xd8 - \xef\xd9 - \xef\xda - \xef\xdb - \xef\xdc - \xef\xdd - \xef\xde - \xef\xdf - \xef\xe0 - \xef\xe1 - \xef\xe2 - \xef\xe3 - \xef\xe4 - \xef\xe5 - \xef\xe6 - \xef\xe7 - \xef\xe8 - \xef\xe9 - \xef\xea - \xef\xeb - \xef\xec - \xef\xed - \xef\xee - \xef\xef - \xef\xf0 - \xef\xf1 - \xef\xf2 - \xef\xf3 - \xef\xf4 - \xef\xf5 - \xef\xf6 - \xef\xf7 - \xef\xf8 - \xef\xf9 - \xef\xfa - \xef\xfb - \xef\xfc - \xef\xfd - \xef\xfe - \xf0\x40 - \xf0\x41 - \xf0\x42 - \xf0\x43 - \xf0\x44 - \xf0\x45 - \xf0\x46 - \xf0\x47 - \xf0\x48 - \xf0\x49 - \xf0\x4a - \xf0\x4b - \xf0\x4c - \xf0\x4d - \xf0\x4e - \xf0\x4f - \xf0\x50 - \xf0\x51 - \xf0\x52 - \xf0\x53 - \xf0\x54 - \xf0\x55 - \xf0\x56 - \xf0\x57 - \xf0\x58 - \xf0\x59 - \xf0\x5a - \xf0\x5b - \xf0\x5c - \xf0\x5d - \xf0\x5e - \xf0\x5f - \xf0\x60 - \xf0\x61 - \xf0\x62 - \xf0\x63 - \xf0\x64 - \xf0\x65 - \xf0\x66 - \xf0\x67 - \xf0\x68 - \xf0\x69 - \xf0\x6a - \xf0\x6b - \xf0\x6c - \xf0\x6d - \xf0\x6e - \xf0\x6f - \xf0\x70 - \xf0\x71 - \xf0\x72 - \xf0\x73 - \xf0\x74 - \xf0\x75 - \xf0\x76 - \xf0\x77 - \xf0\x78 - \xf0\x79 - \xf0\x7a - \xf0\x7b - \xf0\x7c - \xf0\x7d - \xf0\x7e - \xf0\xa1 - \xf0\xa2 - \xf0\xa3 - \xf0\xa4 - \xf0\xa5 - \xf0\xa6 - \xf0\xa7 - \xf0\xa8 - \xf0\xa9 - \xf0\xaa - \xf0\xab - \xf0\xac - \xf0\xad - \xf0\xae - \xf0\xaf - \xf0\xb0 - \xf0\xb1 - \xf0\xb2 - \xf0\xb3 - \xf0\xb4 - \xf0\xb5 - \xf0\xb6 - \xf0\xb7 - \xf0\xb8 - \xf0\xb9 - \xf0\xba - \xf0\xbb - \xf0\xbc - \xf0\xbd - \xf0\xbe - \xf0\xbf - \xf0\xc0 - \xf0\xc1 - \xf0\xc2 - \xf0\xc3 - \xf0\xc4 - \xf0\xc5 - \xf0\xc6 - \xf0\xc7 - \xf0\xc8 - \xf0\xc9 - \xf0\xca - \xf0\xcb - \xf0\xcc - \xf0\xcd - \xf0\xce - \xf0\xcf - \xf0\xd0 - \xf0\xd1 - \xf0\xd2 - \xf0\xd3 - \xf0\xd4 - \xf0\xd5 - \xf0\xd6 - \xf0\xd7 - \xf0\xd8 - \xf0\xd9 - \xf0\xda - \xf0\xdb - \xf0\xdc - \xf0\xdd - \xf0\xde - \xf0\xdf - \xf0\xe0 - \xf0\xe1 - \xf0\xe2 - \xf0\xe3 - \xf0\xe4 - \xf0\xe5 - \xf0\xe6 - \xf0\xe7 - \xf0\xe8 - \xf0\xe9 - \xf0\xea - \xf0\xeb - \xf0\xec - \xf0\xed - \xf0\xee - \xf0\xef - \xf0\xf0 - \xf0\xf1 - \xf0\xf2 - \xf0\xf3 - \xf0\xf4 - \xf0\xf5 - \xf0\xf6 - \xf0\xf7 - \xf0\xf8 - \xf0\xf9 - \xf0\xfa - \xf0\xfb - \xf0\xfc - \xf0\xfd - \xf0\xfe - \xf1\x40 - \xf1\x41 - \xf1\x42 - \xf1\x43 - \xf1\x44 - \xf1\x45 - \xf1\x46 - \xf1\x47 - \xf1\x48 - \xf1\x49 - \xf1\x4a - \xf1\x4b - \xf1\x4c - \xf1\x4d - \xf1\x4e - \xf1\x4f - \xf1\x50 - \xf1\x51 - \xf1\x52 - \xf1\x53 - \xf1\x54 - \xf1\x55 - \xf1\x56 - \xf1\x57 - \xf1\x58 - \xf1\x59 - \xf1\x5a - \xf1\x5b - \xf1\x5c - \xf1\x5d - \xf1\x5e - \xf1\x5f - \xf1\x60 - \xf1\x61 - \xf1\x62 - \xf1\x63 - \xf1\x64 - \xf1\x65 - \xf1\x66 - \xf1\x67 - \xf1\x68 - \xf1\x69 - \xf1\x6a - \xf1\x6b - \xf1\x6c - \xf1\x6d - \xf1\x6e - \xf1\x6f - \xf1\x70 - \xf1\x71 - \xf1\x72 - \xf1\x73 - \xf1\x74 - \xf1\x75 - \xf1\x76 - \xf1\x77 - \xf1\x78 - \xf1\x79 - \xf1\x7a - \xf1\x7b - \xf1\x7c - \xf1\x7d - \xf1\x7e - \xf1\xa1 - \xf1\xa2 - \xf1\xa3 - \xf1\xa4 - \xf1\xa5 - \xf1\xa6 - \xf1\xa7 - \xf1\xa8 - \xf1\xa9 - \xf1\xaa - \xf1\xab - \xf1\xac - \xf1\xad - \xf1\xae - \xf1\xaf - \xf1\xb0 - \xf1\xb1 - \xf1\xb2 - \xf1\xb3 - \xf1\xb4 - \xf1\xb5 - \xf1\xb6 - \xf1\xb7 - \xf1\xb8 - \xf1\xb9 - \xf1\xba - \xf1\xbb - \xf1\xbc - \xf1\xbd - \xf1\xbe - \xf1\xbf - \xf1\xc0 - \xf1\xc1 - \xf1\xc2 - \xf1\xc3 - \xf1\xc4 - \xf1\xc5 - \xf1\xc6 - \xf1\xc7 - \xf1\xc8 - \xf1\xc9 - \xf1\xca - \xf1\xcb - \xf1\xcc - \xf1\xcd - \xf1\xce - \xf1\xcf - \xf1\xd0 - \xf1\xd1 - \xf1\xd2 - \xf1\xd3 - \xf1\xd4 - \xf1\xd5 - \xf1\xd6 - \xf1\xd7 - \xf1\xd8 - \xf1\xd9 - \xf1\xda - \xf1\xdb - \xf1\xdc - \xf1\xdd - \xf1\xde - \xf1\xdf - \xf1\xe0 - \xf1\xe1 - \xf1\xe2 - \xf1\xe3 - \xf1\xe4 - \xf1\xe5 - \xf1\xe6 - \xf1\xe7 - \xf1\xe8 - \xf1\xe9 - \xf1\xea - \xf1\xeb - \xf1\xec - \xf1\xed - \xf1\xee - \xf1\xef - \xf1\xf0 - \xf1\xf1 - \xf1\xf2 - \xf1\xf3 - \xf1\xf4 - \xf1\xf5 - \xf1\xf6 - \xf1\xf7 - \xf1\xf8 - \xf1\xf9 - \xf1\xfa - \xf1\xfb - \xf1\xfc - \xf1\xfd - \xf1\xfe - \xf2\x40 - \xf2\x41 - \xf2\x42 - \xf2\x43 - \xf2\x44 - \xf2\x45 - \xf2\x46 - \xf2\x47 - \xf2\x48 - \xf2\x49 - \xf2\x4a - \xf2\x4b - \xf2\x4c - \xf2\x4d - \xf2\x4e - \xf2\x4f - \xf2\x50 - \xf2\x51 - \xf2\x52 - \xf2\x53 - \xf2\x54 - \xf2\x55 - \xf2\x56 - \xf2\x57 - \xf2\x58 - \xf2\x59 - \xf2\x5a - \xf2\x5b - \xf2\x5c - \xf2\x5d - \xf2\x5e - \xf2\x5f - \xf2\x60 - \xf2\x61 - \xf2\x62 - \xf2\x63 - \xf2\x64 - \xf2\x65 - \xf2\x66 - \xf2\x67 - \xf2\x68 - \xf2\x69 - \xf2\x6a - \xf2\x6b - \xf2\x6c - \xf2\x6d - \xf2\x6e - \xf2\x6f - \xf2\x70 - \xf2\x71 - \xf2\x72 - \xf2\x73 - \xf2\x74 - \xf2\x75 - \xf2\x76 - \xf2\x77 - \xf2\x78 - \xf2\x79 - \xf2\x7a - \xf2\x7b - \xf2\x7c - \xf2\x7d - \xf2\x7e - \xf2\xa1 - \xf2\xa2 - \xf2\xa3 - \xf2\xa4 - \xf2\xa5 - \xf2\xa6 - \xf2\xa7 - \xf2\xa8 - \xf2\xa9 - \xf2\xaa - \xf2\xab - \xf2\xac - \xf2\xad - \xf2\xae - \xf2\xaf - \xf2\xb0 - \xf2\xb1 - \xf2\xb2 - \xf2\xb3 - \xf2\xb4 - \xf2\xb5 - \xf2\xb6 - \xf2\xb7 - \xf2\xb8 - \xf2\xb9 - \xf2\xba - \xf2\xbb - \xf2\xbc - \xf2\xbd - \xf2\xbe - \xf2\xbf - \xf2\xc0 - \xf2\xc1 - \xf2\xc2 - \xf2\xc3 - \xf2\xc4 - \xf2\xc5 - \xf2\xc6 - \xf2\xc7 - \xf2\xc8 - \xf2\xc9 - \xf2\xca - \xf2\xcb - \xf2\xcc - \xf2\xcd - \xf2\xce - \xf2\xcf - \xf2\xd0 - \xf2\xd1 - \xf2\xd2 - \xf2\xd3 - \xf2\xd4 - \xf2\xd5 - \xf2\xd6 - \xf2\xd7 - \xf2\xd8 - \xf2\xd9 - \xf2\xda - \xf2\xdb - \xf2\xdc - \xf2\xdd - \xf2\xde - \xf2\xdf - \xf2\xe0 - \xf2\xe1 - \xf2\xe2 - \xf2\xe3 - \xf2\xe4 - \xf2\xe5 - \xf2\xe6 - \xf2\xe7 - \xf2\xe8 - \xf2\xe9 - \xf2\xea - \xf2\xeb - \xf2\xec - \xf2\xed - \xf2\xee - \xf2\xef - \xf2\xf0 - \xf2\xf1 - \xf2\xf2 - \xf2\xf3 - \xf2\xf4 - \xf2\xf5 - \xf2\xf6 - \xf2\xf7 - \xf2\xf8 - \xf2\xf9 - \xf2\xfa - \xf2\xfb - \xf2\xfc - \xf2\xfd - \xf2\xfe - \xf3\x40 - \xf3\x41 - \xf3\x42 - \xf3\x43 - \xf3\x44 - \xf3\x45 - \xf3\x46 - \xf3\x47 - \xf3\x48 - \xf3\x49 - \xf3\x4a - \xf3\x4b - \xf3\x4c - \xf3\x4d - \xf3\x4e - \xf3\x4f - \xf3\x50 - \xf3\x51 - \xf3\x52 - \xf3\x53 - \xf3\x54 - \xf3\x55 - \xf3\x56 - \xf3\x57 - \xf3\x58 - \xf3\x59 - \xf3\x5a - \xf3\x5b - \xf3\x5c - \xf3\x5d - \xf3\x5e - \xf3\x5f - \xf3\x60 - \xf3\x61 - \xf3\x62 - \xf3\x63 - \xf3\x64 - \xf3\x65 - \xf3\x66 - \xf3\x67 - \xf3\x68 - \xf3\x69 - \xf3\x6a - \xf3\x6b - \xf3\x6c - \xf3\x6d - \xf3\x6e - \xf3\x6f - \xf3\x70 - \xf3\x71 - \xf3\x72 - \xf3\x73 - \xf3\x74 - \xf3\x75 - \xf3\x76 - \xf3\x77 - \xf3\x78 - \xf3\x79 - \xf3\x7a - \xf3\x7b - \xf3\x7c - \xf3\x7d - \xf3\x7e - \xf3\xa1 - \xf3\xa2 - \xf3\xa3 - \xf3\xa4 - \xf3\xa5 - \xf3\xa6 - \xf3\xa7 - \xf3\xa8 - \xf3\xa9 - \xf3\xaa - \xf3\xab - \xf3\xac - \xf3\xad - \xf3\xae - \xf3\xaf - \xf3\xb0 - \xf3\xb1 - \xf3\xb2 - \xf3\xb3 - \xf3\xb4 - \xf3\xb5 - \xf3\xb6 - \xf3\xb7 - \xf3\xb8 - \xf3\xb9 - \xf3\xba - \xf3\xbb - \xf3\xbc - \xf3\xbd - \xf3\xbe - \xf3\xbf - \xf3\xc0 - \xf3\xc1 - \xf3\xc2 - \xf3\xc3 - \xf3\xc4 - \xf3\xc5 - \xf3\xc6 - \xf3\xc7 - \xf3\xc8 - \xf3\xc9 - \xf3\xca - \xf3\xcb - \xf3\xcc - \xf3\xcd - \xf3\xce - \xf3\xcf - \xf3\xd0 - \xf3\xd1 - \xf3\xd2 - \xf3\xd3 - \xf3\xd4 - \xf3\xd5 - \xf3\xd6 - \xf3\xd7 - \xf3\xd8 - \xf3\xd9 - \xf3\xda - \xf3\xdb - \xf3\xdc - \xf3\xdd - \xf3\xde - \xf3\xdf - \xf3\xe0 - \xf3\xe1 - \xf3\xe2 - \xf3\xe3 - \xf3\xe4 - \xf3\xe5 - \xf3\xe6 - \xf3\xe7 - \xf3\xe8 - \xf3\xe9 - \xf3\xea - \xf3\xeb - \xf3\xec - \xf3\xed - \xf3\xee - \xf3\xef - \xf3\xf0 - \xf3\xf1 - \xf3\xf2 - \xf3\xf3 - \xf3\xf4 - \xf3\xf5 - \xf3\xf6 - \xf3\xf7 - \xf3\xf8 - \xf3\xf9 - \xf3\xfa - \xf3\xfb - \xf3\xfc - \xf3\xfd - \xf3\xfe - \xf4\x40 - \xf4\x41 - \xf4\x42 - \xf4\x43 - \xf4\x44 - \xf4\x45 - \xf4\x46 - \xf4\x47 - \xf4\x48 - \xf4\x49 - \xf4\x4a - \xf4\x4b - \xf4\x4c - \xf4\x4d - \xf4\x4e - \xf4\x4f - \xf4\x50 - \xf4\x51 - \xf4\x52 - \xf4\x53 - \xf4\x54 - \xf4\x55 - \xf4\x56 - \xf4\x57 - \xf4\x58 - \xf4\x59 - \xf4\x5a - \xf4\x5b - \xf4\x5c - \xf4\x5d - \xf4\x5e - \xf4\x5f - \xf4\x60 - \xf4\x61 - \xf4\x62 - \xf4\x63 - \xf4\x64 - \xf4\x65 - \xf4\x66 - \xf4\x67 - \xf4\x68 - \xf4\x69 - \xf4\x6a - \xf4\x6b - \xf4\x6c - \xf4\x6d - \xf4\x6e - \xf4\x6f - \xf4\x70 - \xf4\x71 - \xf4\x72 - \xf4\x73 - \xf4\x74 - \xf4\x75 - \xf4\x76 - \xf4\x77 - \xf4\x78 - \xf4\x79 - \xf4\x7a - \xf4\x7b - \xf4\x7c - \xf4\x7d - \xf4\x7e - \xf4\xa1 - \xf4\xa2 - \xf4\xa3 - \xf4\xa4 - \xf4\xa5 - \xf4\xa6 - \xf4\xa7 - \xf4\xa8 - \xf4\xa9 - \xf4\xaa - \xf4\xab - \xf4\xac - \xf4\xad - \xf4\xae - \xf4\xaf - \xf4\xb0 - \xf4\xb1 - \xf4\xb2 - \xf4\xb3 - \xf4\xb4 - \xf4\xb5 - \xf4\xb6 - \xf4\xb7 - \xf4\xb8 - \xf4\xb9 - \xf4\xba - \xf4\xbb - \xf4\xbc - \xf4\xbd - \xf4\xbe - \xf4\xbf - \xf4\xc0 - \xf4\xc1 - \xf4\xc2 - \xf4\xc3 - \xf4\xc4 - \xf4\xc5 - \xf4\xc6 - \xf4\xc7 - \xf4\xc8 - \xf4\xc9 - \xf4\xca - \xf4\xcb - \xf4\xcc - \xf4\xcd - \xf4\xce - \xf4\xcf - \xf4\xd0 - \xf4\xd1 - \xf4\xd2 - \xf4\xd3 - \xf4\xd4 - \xf4\xd5 - \xf4\xd6 - \xf4\xd7 - \xf4\xd8 - \xf4\xd9 - \xf4\xda - \xf4\xdb - \xf4\xdc - \xf4\xdd - \xf4\xde - \xf4\xdf - \xf4\xe0 - \xf4\xe1 - \xf4\xe2 - \xf4\xe3 - \xf4\xe4 - \xf4\xe5 - \xf4\xe6 - \xf4\xe7 - \xf4\xe8 - \xf4\xe9 - \xf4\xea - \xf4\xeb - \xf4\xec - \xf4\xed - \xf4\xee - \xf4\xef - \xf4\xf0 - \xf4\xf1 - \xf4\xf2 - \xf4\xf3 - \xf4\xf4 - \xf4\xf5 - \xf4\xf6 - \xf4\xf7 - \xf4\xf8 - \xf4\xf9 - \xf4\xfa - \xf4\xfb - \xf4\xfc - \xf4\xfd - \xf4\xfe - \xf5\x40 - \xf5\x41 - \xf5\x42 - \xf5\x43 - \xf5\x44 - \xf5\x45 - \xf5\x46 - \xf5\x47 - \xf5\x48 - \xf5\x49 - \xf5\x4a - \xf5\x4b - \xf5\x4c - \xf5\x4d - \xf5\x4e - \xf5\x4f - \xf5\x50 - \xf5\x51 - \xf5\x52 - \xf5\x53 - \xf5\x54 - \xf5\x55 - \xf5\x56 - \xf5\x57 - \xf5\x58 - \xf5\x59 - \xf5\x5a - \xf5\x5b - \xf5\x5c - \xf5\x5d - \xf5\x5e - \xf5\x5f - \xf5\x60 - \xf5\x61 - \xf5\x62 - \xf5\x63 - \xf5\x64 - \xf5\x65 - \xf5\x66 - \xf5\x67 - \xf5\x68 - \xf5\x69 - \xf5\x6a - \xf5\x6b - \xf5\x6c - \xf5\x6d - \xf5\x6e - \xf5\x6f - \xf5\x70 - \xf5\x71 - \xf5\x72 - \xf5\x73 - \xf5\x74 - \xf5\x75 - \xf5\x76 - \xf5\x77 - \xf5\x78 - \xf5\x79 - \xf5\x7a - \xf5\x7b - \xf5\x7c - \xf5\x7d - \xf5\x7e - \xf5\xa1 - \xf5\xa2 - \xf5\xa3 - \xf5\xa4 - \xf5\xa5 - \xf5\xa6 - \xf5\xa7 - \xf5\xa8 - \xf5\xa9 - \xf5\xaa - \xf5\xab - \xf5\xac - \xf5\xad - \xf5\xae - \xf5\xaf - \xf5\xb0 - \xf5\xb1 - \xf5\xb2 - \xf5\xb3 - \xf5\xb4 - \xf5\xb5 - \xf5\xb6 - \xf5\xb7 - \xf5\xb8 - \xf5\xb9 - \xf5\xba - \xf5\xbb - \xf5\xbc - \xf5\xbd - \xf5\xbe - \xf5\xbf - \xf5\xc0 - \xf5\xc1 - \xf5\xc2 - \xf5\xc3 - \xf5\xc4 - \xf5\xc5 - \xf5\xc6 - \xf5\xc7 - \xf5\xc8 - \xf5\xc9 - \xf5\xca - \xf5\xcb - \xf5\xcc - \xf5\xcd - \xf5\xce - \xf5\xcf - \xf5\xd0 - \xf5\xd1 - \xf5\xd2 - \xf5\xd3 - \xf5\xd4 - \xf5\xd5 - \xf5\xd6 - \xf5\xd7 - \xf5\xd8 - \xf5\xd9 - \xf5\xda - \xf5\xdb - \xf5\xdc - \xf5\xdd - \xf5\xde - \xf5\xdf - \xf5\xe0 - \xf5\xe1 - \xf5\xe2 - \xf5\xe3 - \xf5\xe4 - \xf5\xe5 - \xf5\xe6 - \xf5\xe7 - \xf5\xe8 - \xf5\xe9 - \xf5\xea - \xf5\xeb - \xf5\xec - \xf5\xed - \xf5\xee - \xf5\xef - \xf5\xf0 - \xf5\xf1 - \xf5\xf2 - \xf5\xf3 - \xf5\xf4 - \xf5\xf5 - \xf5\xf6 - \xf5\xf7 - \xf5\xf8 - \xf5\xf9 - \xf5\xfa - \xf5\xfb - \xf5\xfc - \xf5\xfd - \xf5\xfe - \xf6\x40 - \xf6\x41 - \xf6\x42 - \xf6\x43 - \xf6\x44 - \xf6\x45 - \xf6\x46 - \xf6\x47 - \xf6\x48 - \xf6\x49 - \xf6\x4a - \xf6\x4b - \xf6\x4c - \xf6\x4d - \xf6\x4e - \xf6\x4f - \xf6\x50 - \xf6\x51 - \xf6\x52 - \xf6\x53 - \xf6\x54 - \xf6\x55 - \xf6\x56 - \xf6\x57 - \xf6\x58 - \xf6\x59 - \xf6\x5a - \xf6\x5b - \xf6\x5c - \xf6\x5d - \xf6\x5e - \xf6\x5f - \xf6\x60 - \xf6\x61 - \xf6\x62 - \xf6\x63 - \xf6\x64 - \xf6\x65 - \xf6\x66 - \xf6\x67 - \xf6\x68 - \xf6\x69 - \xf6\x6a - \xf6\x6b - \xf6\x6c - \xf6\x6d - \xf6\x6e - \xf6\x6f - \xf6\x70 - \xf6\x71 - \xf6\x72 - \xf6\x73 - \xf6\x74 - \xf6\x75 - \xf6\x76 - \xf6\x77 - \xf6\x78 - \xf6\x79 - \xf6\x7a - \xf6\x7b - \xf6\x7c - \xf6\x7d - \xf6\x7e - \xf6\xa1 - \xf6\xa2 - \xf6\xa3 - \xf6\xa4 - \xf6\xa5 - \xf6\xa6 - \xf6\xa7 - \xf6\xa8 - \xf6\xa9 - \xf6\xaa - \xf6\xab - \xf6\xac - \xf6\xad - \xf6\xae - \xf6\xaf - \xf6\xb0 - \xf6\xb1 - \xf6\xb2 - \xf6\xb3 - \xf6\xb4 - \xf6\xb5 - \xf6\xb6 - \xf6\xb7 - \xf6\xb8 - \xf6\xb9 - \xf6\xba - \xf6\xbb - \xf6\xbc - \xf6\xbd - \xf6\xbe - \xf6\xbf - \xf6\xc0 - \xf6\xc1 - \xf6\xc2 - \xf6\xc3 - \xf6\xc4 - \xf6\xc5 - \xf6\xc6 - \xf6\xc7 - \xf6\xc8 - \xf6\xc9 - \xf6\xca - \xf6\xcb - \xf6\xcc - \xf6\xcd - \xf6\xce - \xf6\xcf - \xf6\xd0 - \xf6\xd1 - \xf6\xd2 - \xf6\xd3 - \xf6\xd4 - \xf6\xd5 - \xf6\xd6 - \xf6\xd7 - \xf6\xd8 - \xf6\xd9 - \xf6\xda - \xf6\xdb - \xf6\xdc - \xf6\xdd - \xf6\xde - \xf6\xdf - \xf6\xe0 - \xf6\xe1 - \xf6\xe2 - \xf6\xe3 - \xf6\xe4 - \xf6\xe5 - \xf6\xe6 - \xf6\xe7 - \xf6\xe8 - \xf6\xe9 - \xf6\xea - \xf6\xeb - \xf6\xec - \xf6\xed - \xf6\xee - \xf6\xef - \xf6\xf0 - \xf6\xf1 - \xf6\xf2 - \xf6\xf3 - \xf6\xf4 - \xf6\xf5 - \xf6\xf6 - \xf6\xf7 - \xf6\xf8 - \xf6\xf9 - \xf6\xfa - \xf6\xfb - \xf6\xfc - \xf6\xfd - \xf6\xfe - \xf7\x40 - \xf7\x41 - \xf7\x42 - \xf7\x43 - \xf7\x44 - \xf7\x45 - \xf7\x46 - \xf7\x47 - \xf7\x48 - \xf7\x49 - \xf7\x4a - \xf7\x4b - \xf7\x4c - \xf7\x4d - \xf7\x4e - \xf7\x4f - \xf7\x50 - \xf7\x51 - \xf7\x52 - \xf7\x53 - \xf7\x54 - \xf7\x55 - \xf7\x56 - \xf7\x57 - \xf7\x58 - \xf7\x59 - \xf7\x5a - \xf7\x5b - \xf7\x5c - \xf7\x5d - \xf7\x5e - \xf7\x5f - \xf7\x60 - \xf7\x61 - \xf7\x62 - \xf7\x63 - \xf7\x64 - \xf7\x65 - \xf7\x66 - \xf7\x67 - \xf7\x68 - \xf7\x69 - \xf7\x6a - \xf7\x6b - \xf7\x6c - \xf7\x6d - \xf7\x6e - \xf7\x6f - \xf7\x70 - \xf7\x71 - \xf7\x72 - \xf7\x73 - \xf7\x74 - \xf7\x75 - \xf7\x76 - \xf7\x77 - \xf7\x78 - \xf7\x79 - \xf7\x7a - \xf7\x7b - \xf7\x7c - \xf7\x7d - \xf7\x7e - \xf7\xa1 - \xf7\xa2 - \xf7\xa3 - \xf7\xa4 - \xf7\xa5 - \xf7\xa6 - \xf7\xa7 - \xf7\xa8 - \xf7\xa9 - \xf7\xaa - \xf7\xab - \xf7\xac - \xf7\xad - \xf7\xae - \xf7\xaf - \xf7\xb0 - \xf7\xb1 - \xf7\xb2 - \xf7\xb3 - \xf7\xb4 - \xf7\xb5 - \xf7\xb6 - \xf7\xb7 - \xf7\xb8 - \xf7\xb9 - \xf7\xba - \xf7\xbb - \xf7\xbc - \xf7\xbd - \xf7\xbe - \xf7\xbf - \xf7\xc0 - \xf7\xc1 - \xf7\xc2 - \xf7\xc3 - \xf7\xc4 - \xf7\xc5 - \xf7\xc6 - \xf7\xc7 - \xf7\xc8 - \xf7\xc9 - \xf7\xca - \xf7\xcb - \xf7\xcc - \xf7\xcd - \xf7\xce - \xf7\xcf - \xf7\xd0 - \xf7\xd1 - \xf7\xd2 - \xf7\xd3 - \xf7\xd4 - \xf7\xd5 - \xf7\xd6 - \xf7\xd7 - \xf7\xd8 - \xf7\xd9 - \xf7\xda - \xf7\xdb - \xf7\xdc - \xf7\xdd - \xf7\xde - \xf7\xdf - \xf7\xe0 - \xf7\xe1 - \xf7\xe2 - \xf7\xe3 - \xf7\xe4 - \xf7\xe5 - \xf7\xe6 - \xf7\xe7 - \xf7\xe8 - \xf7\xe9 - \xf7\xea - \xf7\xeb - \xf7\xec - \xf7\xed - \xf7\xee - \xf7\xef - \xf7\xf0 - \xf7\xf1 - \xf7\xf2 - \xf7\xf3 - \xf7\xf4 - \xf7\xf5 - \xf7\xf6 - \xf7\xf7 - \xf7\xf8 - \xf7\xf9 - \xf7\xfa - \xf7\xfb - \xf7\xfc - \xf7\xfd - \xf7\xfe - \xf8\x40 - \xf8\x41 - \xf8\x42 - \xf8\x43 - \xf8\x44 - \xf8\x45 - \xf8\x46 - \xf8\x47 - \xf8\x48 - \xf8\x49 - \xf8\x4a - \xf8\x4b - \xf8\x4c - \xf8\x4d - \xf8\x4e - \xf8\x4f - \xf8\x50 - \xf8\x51 - \xf8\x52 - \xf8\x53 - \xf8\x54 - \xf8\x55 - \xf8\x56 - \xf8\x57 - \xf8\x58 - \xf8\x59 - \xf8\x5a - \xf8\x5b - \xf8\x5c - \xf8\x5d - \xf8\x5e - \xf8\x5f - \xf8\x60 - \xf8\x61 - \xf8\x62 - \xf8\x63 - \xf8\x64 - \xf8\x65 - \xf8\x66 - \xf8\x67 - \xf8\x68 - \xf8\x69 - \xf8\x6a - \xf8\x6b - \xf8\x6c - \xf8\x6d - \xf8\x6e - \xf8\x6f - \xf8\x70 - \xf8\x71 - \xf8\x72 - \xf8\x73 - \xf8\x74 - \xf8\x75 - \xf8\x76 - \xf8\x77 - \xf8\x78 - \xf8\x79 - \xf8\x7a - \xf8\x7b - \xf8\x7c - \xf8\x7d - \xf8\x7e - \xf8\xa1 - \xf8\xa2 - \xf8\xa3 - \xf8\xa4 - \xf8\xa5 - \xf8\xa6 - \xf8\xa7 - \xf8\xa8 - \xf8\xa9 - \xf8\xaa - \xf8\xab - \xf8\xac - \xf8\xad - \xf8\xae - \xf8\xaf - \xf8\xb0 - \xf8\xb1 - \xf8\xb2 - \xf8\xb3 - \xf8\xb4 - \xf8\xb5 - \xf8\xb6 - \xf8\xb7 - \xf8\xb8 - \xf8\xb9 - \xf8\xba - \xf8\xbb - \xf8\xbc - \xf8\xbd - \xf8\xbe - \xf8\xbf - \xf8\xc0 - \xf8\xc1 - \xf8\xc2 - \xf8\xc3 - \xf8\xc4 - \xf8\xc5 - \xf8\xc6 - \xf8\xc7 - \xf8\xc8 - \xf8\xc9 - \xf8\xca - \xf8\xcb - \xf8\xcc - \xf8\xcd - \xf8\xce - \xf8\xcf - \xf8\xd0 - \xf8\xd1 - \xf8\xd2 - \xf8\xd3 - \xf8\xd4 - \xf8\xd5 - \xf8\xd6 - \xf8\xd7 - \xf8\xd8 - \xf8\xd9 - \xf8\xda - \xf8\xdb - \xf8\xdc - \xf8\xdd - \xf8\xde - \xf8\xdf - \xf8\xe0 - \xf8\xe1 - \xf8\xe2 - \xf8\xe3 - \xf8\xe4 - \xf8\xe5 - \xf8\xe6 - \xf8\xe7 - \xf8\xe8 - \xf8\xe9 - \xf8\xea - \xf8\xeb - \xf8\xec - \xf8\xed - \xf8\xee - \xf8\xef - \xf8\xf0 - \xf8\xf1 - \xf8\xf2 - \xf8\xf3 - \xf8\xf4 - \xf8\xf5 - \xf8\xf6 - \xf8\xf7 - \xf8\xf8 - \xf8\xf9 - \xf8\xfa - \xf8\xfb - \xf8\xfc - \xf8\xfd - \xf8\xfe - \xf9\x40 - \xf9\x41 - \xf9\x42 - \xf9\x43 - \xf9\x44 - \xf9\x45 - \xf9\x46 - \xf9\x47 - \xf9\x48 - \xf9\x49 - \xf9\x4a - \xf9\x4b - \xf9\x4c - \xf9\x4d - \xf9\x4e - \xf9\x4f - \xf9\x50 - \xf9\x51 - \xf9\x52 - \xf9\x53 - \xf9\x54 - \xf9\x55 - \xf9\x56 - \xf9\x57 - \xf9\x58 - \xf9\x59 - \xf9\x5a - \xf9\x5b - \xf9\x5c - \xf9\x5d - \xf9\x5e - \xf9\x5f - \xf9\x60 - \xf9\x61 - \xf9\x62 - \xf9\x63 - \xf9\x64 - \xf9\x65 - \xf9\x66 - \xf9\x67 - \xf9\x68 - \xf9\x69 - \xf9\x6a - \xf9\x6b - \xf9\x6c - \xf9\x6d - \xf9\x6e - \xf9\x6f - \xf9\x70 - \xf9\x71 - \xf9\x72 - \xf9\x73 - \xf9\x74 - \xf9\x75 - \xf9\x76 - \xf9\x77 - \xf9\x78 - \xf9\x79 - \xf9\x7a - \xf9\x7b - \xf9\x7c - \xf9\x7d - \xf9\x7e - \xf9\xa1 - \xf9\xa2 - \xf9\xa3 - \xf9\xa4 - \xf9\xa5 - \xf9\xa6 - \xf9\xa7 - \xf9\xa8 - \xf9\xa9 - \xf9\xaa - \xf9\xab - \xf9\xac - \xf9\xad - \xf9\xae - \xf9\xaf - \xf9\xb0 - \xf9\xb1 - \xf9\xb2 - \xf9\xb3 - \xf9\xb4 - \xf9\xb5 - \xf9\xb6 - \xf9\xb7 - \xf9\xb8 - \xf9\xb9 - \xf9\xba - \xf9\xbb - \xf9\xbc - \xf9\xbd - \xf9\xbe - \xf9\xbf - \xf9\xc0 - \xf9\xc1 - \xf9\xc2 - \xf9\xc3 - \xf9\xc4 - \xf9\xc5 - \xf9\xc6 - \xf9\xc7 - \xf9\xc8 - \xf9\xc9 - \xf9\xca - \xf9\xcb - \xf9\xcc - \xf9\xcd - \xf9\xce - \xf9\xcf - \xf9\xd0 - \xf9\xd1 - \xf9\xd2 - \xf9\xd3 - \xf9\xd4 - \xf9\xd5 - \xf9\xd6 - \xf9\xd7 - \xf9\xd8 - \xf9\xd9 - \xf9\xda - \xf9\xdb - \xf9\xdc - \xf9\xdd - \xf9\xde - \xf9\xdf - \xf9\xe0 - \xf9\xe1 - \xf9\xe2 - \xf9\xe3 - \xf9\xe4 - \xf9\xe5 - \xf9\xe6 - \xf9\xe7 - \xf9\xe8 - \xf9\xec - \xf9\xed - \xf9\xee - \xf9\xef - \xf9\xf0 - \xf9\xf1 - \xf9\xf2 - \xf9\xf3 - \xf9\xf4 - \xf9\xf5 - \xf9\xf6 - \xf9\xf7 - \xf9\xf8 - \xf9\xfe - \xfa\x40 - \xfa\x41 - \xfa\x42 - \xfa\x43 - \xfa\x44 - \xfa\x45 - \xfa\x46 - \xfa\x47 - \xfa\x48 - \xfa\x49 - \xfa\x4a - \xfa\x4b - \xfa\x4c - \xfa\x4d - \xfa\x4e - \xfa\x4f - \xfa\x50 - \xfa\x51 - \xfa\x52 - \xfa\x53 - \xfa\x54 - \xfa\x55 - \xfa\x56 - \xfa\x57 - \xfa\x58 - \xfa\x59 - \xfa\x5a - \xfa\x5b - \xfa\x5c - \xfa\x5d - \xfa\x5e - \xfa\x60 - \xfa\x61 - \xfa\x62 - \xfa\x63 - \xfa\x64 - \xfa\x65 - \xfa\x67 - \xfa\x68 - \xfa\x69 - \xfa\x6a - \xfa\x6b - \xfa\x6c - \xfa\x6d - \xfa\x6e - \xfa\x6f - \xfa\x70 - \xfa\x71 - \xfa\x72 - \xfa\x73 - \xfa\x74 - \xfa\x75 - \xfa\x76 - \xfa\x77 - \xfa\x78 - \xfa\x79 - \xfa\x7a - \xfa\x7b - \xfa\x7c - \xfa\x7d - \xfa\x7e - \xfa\xa1 - \xfa\xa2 - \xfa\xa3 - \xfa\xa4 - \xfa\xa5 - \xfa\xa6 - \xfa\xa7 - \xfa\xa8 - \xfa\xa9 - \xfa\xaa - \xfa\xab - \xfa\xac - \xfa\xad - \xfa\xae - \xfa\xaf - \xfa\xb0 - \xfa\xb1 - \xfa\xb2 - \xfa\xb3 - \xfa\xb4 - \xfa\xb5 - \xfa\xb6 - \xfa\xb7 - \xfa\xb8 - \xfa\xb9 - \xfa\xba - \xfa\xbb - \xfa\xbc - \xfa\xbe - \xfa\xbf - \xfa\xc0 - \xfa\xc1 - \xfa\xc2 - \xfa\xc3 - \xfa\xc4 - \xfa\xc6 - \xfa\xc7 - \xfa\xc8 - \xfa\xc9 - \xfa\xca - \xfa\xcb - \xfa\xcc - \xfa\xcd - \xfa\xce - \xfa\xcf - \xfa\xd0 - \xfa\xd1 - \xfa\xd2 - \xfa\xd3 - \xfa\xd4 - \xfa\xd6 - \xfa\xd7 - \xfa\xd8 - \xfa\xd9 - \xfa\xda - \xfa\xdb - \xfa\xdc - \xfa\xdd - \xfa\xde - \xfa\xdf - \xfa\xe0 - \xfa\xe1 - \xfa\xe2 - \xfa\xe3 - \xfa\xe4 - \xfa\xe5 - \xfa\xe6 - \xfa\xe7 - \xfa\xe8 - \xfa\xe9 - \xfa\xea - \xfa\xeb - \xfa\xec - \xfa\xed - \xfa\xee - \xfa\xef - \xfa\xf0 - \xfa\xf1 - \xfa\xf2 - \xfa\xf3 - \xfa\xf4 - \xfa\xf5 - \xfa\xf6 - \xfa\xf7 - \xfa\xf8 - \xfa\xf9 - \xfa\xfa - \xfa\xfb - \xfa\xfc - \xfa\xfd - \xfa\xfe - \xfb\x40 - \xfb\x41 - \xfb\x42 - \xfb\x43 - \xfb\x44 - \xfb\x45 - \xfb\x46 - \xfb\x47 - \xfb\x49 - \xfb\x4a - \xfb\x4b - \xfb\x4c - \xfb\x4d - \xfb\x4e - \xfb\x4f - \xfb\x50 - \xfb\x51 - \xfb\x52 - \xfb\x53 - \xfb\x54 - \xfb\x55 - \xfb\x56 - \xfb\x57 - \xfb\x58 - \xfb\x59 - \xfb\x5a - \xfb\x5b - \xfb\x5c - \xfb\x5d - \xfb\x5e - \xfb\x5f - \xfb\x60 - \xfb\x61 - \xfb\x62 - \xfb\x63 - \xfb\x64 - \xfb\x65 - \xfb\x66 - \xfb\x67 - \xfb\x68 - \xfb\x69 - \xfb\x6a - \xfb\x6b - \xfb\x6c - \xfb\x6d - \xfb\x6e - \xfb\x6f - \xfb\x70 - \xfb\x71 - \xfb\x72 - \xfb\x73 - \xfb\x74 - \xfb\x75 - \xfb\x76 - \xfb\x77 - \xfb\x78 - \xfb\x79 - \xfb\x7a - \xfb\x7b - \xfb\x7c - \xfb\x7d - \xfb\x7e - \xfb\xa1 - \xfb\xa2 - \xfb\xa3 - \xfb\xa4 - \xfb\xa5 - \xfb\xa6 - \xfb\xa7 - \xfb\xa8 - \xfb\xa9 - \xfb\xaa - \xfb\xab - \xfb\xac - \xfb\xad - \xfb\xae - \xfb\xaf - \xfb\xb0 - \xfb\xb1 - \xfb\xb2 - \xfb\xb3 - \xfb\xb4 - \xfb\xb5 - \xfb\xb6 - \xfb\xb7 - \xfb\xb9 - \xfb\xba - \xfb\xbb - \xfb\xbc - \xfb\xbd - \xfb\xbe - \xfb\xbf - \xfb\xc0 - \xfb\xc1 - \xfb\xc2 - \xfb\xc3 - \xfb\xc4 - \xfb\xc5 - \xfb\xc6 - \xfb\xc7 - \xfb\xc8 - \xfb\xc9 - \xfb\xca - \xfb\xcb - \xfb\xcc - \xfb\xcd - \xfb\xce - \xfb\xcf - \xfb\xd0 - \xfb\xd1 - \xfb\xd2 - \xfb\xd3 - \xfb\xd4 - \xfb\xd5 - \xfb\xd6 - \xfb\xd7 - \xfb\xd8 - \xfb\xd9 - \xfb\xda - \xfb\xdb - \xfb\xdc - \xfb\xdd - \xfb\xde - \xfb\xdf - \xfb\xe0 - \xfb\xe1 - \xfb\xe2 - \xfb\xe3 - \xfb\xe4 - \xfb\xe5 - \xfb\xe6 - \xfb\xe7 - \xfb\xe8 - \xfb\xe9 - \xfb\xea - \xfb\xeb - \xfb\xec - \xfb\xed - \xfb\xee - \xfb\xef - \xfb\xf0 - \xfb\xf1 - \xfb\xf2 - \xfb\xf4 - \xfb\xf5 - \xfb\xf6 - \xfb\xf7 - \xfb\xf8 - \xfb\xfa - \xfb\xfb - \xfb\xfc - \xfb\xfd - \xfb\xfe - \xfc\x40 - \xfc\x41 - \xfc\x42 - \xfc\x43 - \xfc\x44 - \xfc\x45 - \xfc\x46 - \xfc\x47 - \xfc\x48 - \xfc\x49 - \xfc\x4a - \xfc\x4b - \xfc\x4c - \xfc\x4d - \xfc\x4e - \xfc\x50 - \xfc\x51 - \xfc\x52 - \xfc\x53 - \xfc\x54 - \xfc\x55 - \xfc\x56 - \xfc\x57 - \xfc\x58 - \xfc\x59 - \xfc\x5a - \xfc\x5b - \xfc\x5c - \xfc\x5d - \xfc\x5e - \xfc\x5f - \xfc\x60 - \xfc\x61 - \xfc\x62 - \xfc\x63 - \xfc\x64 - \xfc\x65 - \xfc\x66 - \xfc\x67 - \xfc\x68 - \xfc\x69 - \xfc\x6a - \xfc\x6b - \xfc\x6d - \xfc\x6e - \xfc\x6f - \xfc\x70 - \xfc\x71 - \xfc\x72 - \xfc\x73 - \xfc\x74 - \xfc\x75 - \xfc\x76 - \xfc\x77 - \xfc\x78 - \xfc\x79 - \xfc\x7a - \xfc\x7b - \xfc\x7c - \xfc\x7d - \xfc\x7e - \xfc\xa1 - \xfc\xa2 - \xfc\xa3 - \xfc\xa4 - \xfc\xa5 - \xfc\xa6 - \xfc\xa7 - \xfc\xa8 - \xfc\xa9 - \xfc\xaa - \xfc\xab - \xfc\xac - \xfc\xad - \xfc\xae - \xfc\xaf - \xfc\xb0 - \xfc\xb1 - \xfc\xb2 - \xfc\xb3 - \xfc\xb4 - \xfc\xb5 - \xfc\xb6 - \xfc\xb7 - \xfc\xb8 - \xfc\xba - \xfc\xbb - \xfc\xbc - \xfc\xbd - \xfc\xbe - \xfc\xbf - \xfc\xc0 - \xfc\xc1 - \xfc\xc2 - \xfc\xc3 - \xfc\xc4 - \xfc\xc5 - \xfc\xc6 - \xfc\xc7 - \xfc\xc8 - \xfc\xc9 - \xfc\xca - \xfc\xcb - \xfc\xcc - \xfc\xcd - \xfc\xce - \xfc\xcf - \xfc\xd0 - \xfc\xd1 - \xfc\xd2 - \xfc\xd3 - \xfc\xd4 - \xfc\xd5 - \xfc\xd6 - \xfc\xd7 - \xfc\xd8 - \xfc\xd9 - \xfc\xda - \xfc\xdb - \xfc\xdc - \xfc\xdd - \xfc\xde - \xfc\xdf - \xfc\xe0 - \xfc\xe1 - \xfc\xe3 - \xfc\xe4 - \xfc\xe5 - \xfc\xe6 - \xfc\xe7 - \xfc\xe8 - \xfc\xe9 - \xfc\xea - \xfc\xeb - \xfc\xec - \xfc\xed - \xfc\xee - \xfc\xef - \xfc\xf0 - \xfc\xf2 - \xfc\xf3 - \xfc\xf4 - \xfc\xf5 - \xfc\xf6 - \xfc\xf7 - \xfc\xf8 - \xfc\xf9 - \xfc\xfa - \xfc\xfb - \xfc\xfc - \xfc\xfd - \xfc\xfe - \xfd\x40 - \xfd\x41 - \xfd\x42 - \xfd\x43 - \xfd\x44 - \xfd\x45 - \xfd\x46 - \xfd\x47 - \xfd\x48 - \xfd\x49 - \xfd\x4a - \xfd\x4b - \xfd\x4c - \xfd\x4d - \xfd\x4e - \xfd\x4f - \xfd\x50 - \xfd\x51 - \xfd\x52 - \xfd\x53 - \xfd\x54 - \xfd\x55 - \xfd\x56 - \xfd\x57 - \xfd\x58 - \xfd\x59 - \xfd\x5a - \xfd\x5b - \xfd\x5c - \xfd\x5d - \xfd\x5e - \xfd\x5f - \xfd\x60 - \xfd\x61 - \xfd\x62 - \xfd\x63 - \xfd\x64 - \xfd\x65 - \xfd\x66 - \xfd\x67 - \xfd\x68 - \xfd\x69 - \xfd\x6a - \xfd\x6b - \xfd\x6c - \xfd\x6d - \xfd\x6e - \xfd\x6f - \xfd\x70 - \xfd\x71 - \xfd\x72 - \xfd\x73 - \xfd\x74 - \xfd\x75 - \xfd\x76 - \xfd\x77 - \xfd\x78 - \xfd\x79 - \xfd\x7a - \xfd\x7b - \xfd\x7c - \xfd\x7d - \xfd\x7e - \xfd\xa1 - \xfd\xa2 - \xfd\xa3 - \xfd\xa4 - \xfd\xa5 - \xfd\xa6 - \xfd\xa7 - \xfd\xa8 - \xfd\xa9 - \xfd\xaa - \xfd\xab - \xfd\xac - \xfd\xad - \xfd\xae - \xfd\xaf - \xfd\xb0 - \xfd\xb1 - \xfd\xb2 - \xfd\xb3 - \xfd\xb4 - \xfd\xb5 - \xfd\xb6 - \xfd\xb9 - \xfd\xba - \xfd\xbc - \xfd\xbd - \xfd\xbe - \xfd\xbf - \xfd\xc0 - \xfd\xc1 - \xfd\xc2 - \xfd\xc3 - \xfd\xc4 - \xfd\xc5 - \xfd\xc6 - \xfd\xc7 - \xfd\xc8 - \xfd\xc9 - \xfd\xca - \xfd\xcb - \xfd\xcc - \xfd\xcd - \xfd\xce - \xfd\xcf - \xfd\xd0 - \xfd\xd1 - \xfd\xd2 - \xfd\xd3 - \xfd\xd4 - \xfd\xd5 - \xfd\xd6 - \xfd\xd7 - \xfd\xd8 - \xfd\xd9 - \xfd\xda - \xfd\xdb - \xfd\xdc - \xfd\xdd - \xfd\xde - \xfd\xdf - \xfd\xe0 - \xfd\xe1 - \xfd\xe2 - \xfd\xe3 - \xfd\xe4 - \xfd\xe5 - \xfd\xe6 - \xfd\xe7 - \xfd\xe8 - \xfd\xe9 - \xfd\xea - \xfd\xeb - \xfd\xec - \xfd\xed - \xfd\xee - \xfd\xef - \xfd\xf0 - \xfd\xf2 - \xfd\xf3 - \xfd\xf4 - \xfd\xf5 - \xfd\xf6 - \xfd\xf7 - \xfd\xf8 - \xfd\xf9 - \xfd\xfa - \xfd\xfb - \xfd\xfc - \xfd\xfd - \xfd\xfe - \xfe\x40 - \xfe\x41 - \xfe\x42 - \xfe\x43 - \xfe\x44 - \xfe\x45 - \xfe\x46 - \xfe\x47 - \xfe\x48 - \xfe\x49 - \xfe\x4a - \xfe\x4b - \xfe\x4c - \xfe\x4d - \xfe\x4e - \xfe\x4f - \xfe\x50 - \xfe\x51 - \xfe\x53 - \xfe\x54 - \xfe\x55 - \xfe\x56 - \xfe\x57 - \xfe\x58 - \xfe\x59 - \xfe\x5a - \xfe\x5b - \xfe\x5c - \xfe\x5d - \xfe\x5e - \xfe\x5f - \xfe\x60 - \xfe\x61 - \xfe\x62 - \xfe\x63 - \xfe\x64 - \xfe\x65 - \xfe\x66 - \xfe\x67 - \xfe\x68 - \xfe\x69 - \xfe\x6a - \xfe\x6b - \xfe\x6c - \xfe\x6d - \xfe\x6e - \xfe\x70 - \xfe\x71 - \xfe\x72 - \xfe\x73 - \xfe\x74 - \xfe\x75 - \xfe\x76 - \xfe\x77 - \xfe\x78 - \xfe\x79 - \xfe\x7a - \xfe\x7b - \xfe\x7c - \xfe\x7d - \xfe\x7e - \xfe\xa1 - \xfe\xa2 - \xfe\xa3 - \xfe\xa4 - \xfe\xa5 - \xfe\xa6 - \xfe\xa7 - \xfe\xa8 - \xfe\xa9 - \xfe\xab - \xfe\xac - \xfe\xad - \xfe\xae - \xfe\xaf - \xfe\xb0 - \xfe\xb1 - \xfe\xb2 - \xfe\xb3 - \xfe\xb4 - \xfe\xb5 - \xfe\xb6 - \xfe\xb7 - \xfe\xb8 - \xfe\xb9 - \xfe\xba - \xfe\xbb - \xfe\xbc - \xfe\xbd - \xfe\xbe - \xfe\xbf - \xfe\xc0 - \xfe\xc1 - \xfe\xc2 - \xfe\xc3 - \xfe\xc4 - \xfe\xc5 - \xfe\xc6 - \xfe\xc7 - \xfe\xc8 - \xfe\xc9 - \xfe\xca - \xfe\xcb - \xfe\xcc - \xfe\xcd - \xfe\xce - \xfe\xcf - \xfe\xd0 - \xfe\xd1 - \xfe\xd2 - \xfe\xd3 - \xfe\xd4 - \xfe\xd5 - \xfe\xd6 - \xfe\xd7 - \xfe\xd8 - \xfe\xd9 - \xfe\xda - \xfe\xdb - \xfe\xdc - \xfe\xde - \xfe\xdf - \xfe\xe0 - \xfe\xe1 - \xfe\xe2 - \xfe\xe3 - \xfe\xe4 - \xfe\xe5 - \xfe\xe6 - \xfe\xe7 - \xfe\xe8 - \xfe\xe9 - \xfe\xea - \xfe\xeb - \xfe\xec - \xfe\xed - \xfe\xee - \xfe\xef - \xfe\xf0 - \xfe\xf1 - \xfe\xf2 - \xfe\xf3 - \xfe\xf4 - \xfe\xf5 - \xfe\xf6 - \xfe\xf7 - \xfe\xf8 - \xfe\xf9 - \xfe\xfa - \xfe\xfb - \xfe\xfc - \xfe\xfd - \xfe\xfe -END CHARMAP diff --git a/tools/tools/locale/etc/final-maps/widths.txt b/tools/tools/locale/etc/final-maps/widths.txt index 74c28ac5846..fe168ebbe20 100644 --- a/tools/tools/locale/etc/final-maps/widths.txt +++ b/tools/tools/locale/etc/final-maps/widths.txt @@ -835,6 +835,166 @@ WIDTH 2 2 2 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 0 0 0 diff --git a/tools/tools/locale/tools/getwidths.c b/tools/tools/locale/tools/getwidths.c index 2790b803191..63c62791253 100644 --- a/tools/tools/locale/tools/getwidths.c +++ b/tools/tools/locale/tools/getwidths.c @@ -28,6 +28,21 @@ #include +static int +width_of(int32_t wc) +{ + + /* + * Hangul Jamo medial vowels and final consonants are more of + * a combining character, and should be considered zero-width. + */ + if (wc >= 0x1160 && wc <= 0x11ff) + return (0); + + /* No override by default, trust utf8proc's width. */ + return (utf8proc_charwidth(wc)); +} + int main(void) { @@ -43,9 +58,10 @@ main(void) wcc = utf8proc_category(wc); if (wcc == UTF8PROC_CATEGORY_CC) continue; - wcw = utf8proc_charwidth(wc); + wcw = width_of(wc); if (wcw == 1) continue; + printf("%04X %d\n", wc, wcw); } diff --git a/usr.bin/sed/main.c b/usr.bin/sed/main.c index efa28b5e723..1632b823cc6 100644 --- a/usr.bin/sed/main.c +++ b/usr.bin/sed/main.c @@ -148,10 +148,8 @@ main(int argc, char *argv[]) break; case 'e': eflag = 1; - if ((temp_arg = malloc(strlen(optarg) + 2)) == NULL) - err(1, "malloc"); - strcpy(temp_arg, optarg); - strcat(temp_arg, "\n"); + if (asprintf(&temp_arg, "%s\n", optarg) == -1) + err(1, "asprintf"); add_compunit(CU_STRING, temp_arg); break; case 'f': @@ -184,7 +182,9 @@ main(int argc, char *argv[]) /* First usage case; script is the first arg */ if (!eflag && !fflag && *argv) { - add_compunit(CU_STRING, *argv); + if (asprintf(&temp_arg, "%s\n", *argv) == -1) + err(1, "asprintf"); + add_compunit(CU_STRING, temp_arg); argv++; } diff --git a/usr.bin/sed/tests/sed2_test.sh b/usr.bin/sed/tests/sed2_test.sh index a7408b2560a..f5061961256 100755 --- a/usr.bin/sed/tests/sed2_test.sh +++ b/usr.bin/sed/tests/sed2_test.sh @@ -147,6 +147,18 @@ bracket_y_body() echo 'bra[ke]' | sed 'y[\[][ct[' } +atf_test_case minus_e +minus_e_head() +{ + atf_set "descr" "Verify that -e and implicit arg do the same thing" +} +minus_e_body() +{ + printf "ab\n" > a + atf_check -o 'inline:--\nab\n' sed -e $'1 i\\\n--' a + atf_check -o 'inline:--\nab\n' sed $'1 i\\\n--' a +} + atf_init_test_cases() { atf_add_test_case inplace_command_q @@ -156,4 +168,5 @@ atf_init_test_cases() atf_add_test_case commands_on_stdin atf_add_test_case hex_subst atf_add_test_case bracket_y + atf_add_test_case minus_e } diff --git a/usr.sbin/bhyve/pci_ahci.c b/usr.sbin/bhyve/pci_ahci.c index 8a48eb00e9b..67c13a043e0 100644 --- a/usr.sbin/bhyve/pci_ahci.c +++ b/usr.sbin/bhyve/pci_ahci.c @@ -126,6 +126,7 @@ struct ahci_ioreq { STAILQ_ENTRY(ahci_ioreq) io_flist; TAILQ_ENTRY(ahci_ioreq) io_blist; uint8_t *cfis; + uint8_t *dsm; uint32_t len; uint32_t done; int slot; @@ -213,6 +214,8 @@ struct pci_ahci_softc { }; #define ahci_ctx(sc) ((sc)->asc_pi->pi_vmctx) +static void ahci_handle_next_trim(struct ahci_port *p, int slot, uint8_t *cfis, + uint8_t *buf, uint32_t len, uint32_t done); static void ahci_handle_port(struct ahci_port *p); static inline void lba_to_msf(uint8_t *buf, int lba) @@ -781,7 +784,7 @@ ahci_handle_flush(struct ahci_port *p, int slot, uint8_t *cfis) assert(err == 0); } -static inline void +static inline unsigned int read_prdt(struct ahci_port *p, int slot, uint8_t *cfis, void *buf, unsigned int size) { @@ -808,20 +811,18 @@ read_prdt(struct ahci_port *p, int slot, uint8_t *cfis, void *buf, to += sublen; prdt++; } + return (size - len); } static void -ahci_handle_dsm_trim(struct ahci_port *p, int slot, uint8_t *cfis, uint32_t done) +ahci_handle_dsm_trim(struct ahci_port *p, int slot, uint8_t *cfis) { - struct ahci_ioreq *aior; - struct blockif_req *breq; - uint8_t *entry; - uint64_t elba; - uint32_t len, elen; - int err, first, ncq; - uint8_t buf[512]; + uint32_t len; + int ncq; + uint8_t *buf; + unsigned int nread; - first = (done == 0); + buf = NULL; if (cfis[2] == ATA_DATA_SET_MANAGEMENT) { len = (uint16_t)cfis[13] << 8 | cfis[12]; len *= 512; @@ -831,36 +832,84 @@ ahci_handle_dsm_trim(struct ahci_port *p, int slot, uint8_t *cfis, uint32_t done len *= 512; ncq = 1; } - read_prdt(p, slot, cfis, buf, sizeof(buf)); - -next: - entry = &buf[done]; - elba = ((uint64_t)entry[5] << 40) | - ((uint64_t)entry[4] << 32) | - ((uint64_t)entry[3] << 24) | - ((uint64_t)entry[2] << 16) | - ((uint64_t)entry[1] << 8) | - entry[0]; - elen = (uint16_t)entry[7] << 8 | entry[6]; - done += 8; - if (elen == 0) { - if (done >= len) { - if (ncq) { - if (first) - ahci_write_fis_d2h_ncq(p, slot); - ahci_write_fis_sdb(p, slot, cfis, - ATA_S_READY | ATA_S_DSC); - } else { - ahci_write_fis_d2h(p, slot, cfis, - ATA_S_READY | ATA_S_DSC); - } + + /* Support for only a single block is advertised via IDENTIFY. */ + if (len > 512) { + goto invalid_command; + } + + buf = malloc(len); + nread = read_prdt(p, slot, cfis, buf, len); + if (nread != len) { + goto invalid_command; + } + ahci_handle_next_trim(p, slot, cfis, buf, len, 0); + return; + +invalid_command: + free(buf); + if (ncq) { + ahci_write_fis_d2h_ncq(p, slot); + ahci_write_fis_sdb(p, slot, cfis, + (ATA_E_ABORT << 8) | ATA_S_READY | ATA_S_ERROR); + } else { + ahci_write_fis_d2h(p, slot, cfis, + (ATA_E_ABORT << 8) | ATA_S_READY | ATA_S_ERROR); + } +} + +static void +ahci_handle_next_trim(struct ahci_port *p, int slot, uint8_t *cfis, + uint8_t *buf, uint32_t len, uint32_t done) +{ + struct ahci_ioreq *aior; + struct blockif_req *breq; + uint8_t *entry; + uint64_t elba; + uint32_t elen; + int err; + bool first, ncq; + + first = (done == 0); + if (cfis[2] == ATA_DATA_SET_MANAGEMENT) { + ncq = false; + } else { /* ATA_SEND_FPDMA_QUEUED */ + ncq = true; + } + + /* Find the next range to TRIM. */ + while (done < len) { + entry = &buf[done]; + elba = ((uint64_t)entry[5] << 40) | + ((uint64_t)entry[4] << 32) | + ((uint64_t)entry[3] << 24) | + ((uint64_t)entry[2] << 16) | + ((uint64_t)entry[1] << 8) | + entry[0]; + elen = (uint16_t)entry[7] << 8 | entry[6]; + done += 8; + if (elen != 0) + break; + } + + /* All remaining ranges were empty. */ + if (done == len) { + free(buf); + if (ncq) { + if (first) + ahci_write_fis_d2h_ncq(p, slot); + ahci_write_fis_sdb(p, slot, cfis, + ATA_S_READY | ATA_S_DSC); + } else { + ahci_write_fis_d2h(p, slot, cfis, + ATA_S_READY | ATA_S_DSC); + } + if (!first) { p->pending &= ~(1 << slot); ahci_check_stopped(p); - if (!first) - ahci_handle_port(p); - return; + ahci_handle_port(p); } - goto next; + return; } /* @@ -873,6 +922,7 @@ ahci_handle_dsm_trim(struct ahci_port *p, int slot, uint8_t *cfis, uint32_t done aior->slot = slot; aior->len = len; aior->done = done; + aior->dsm = buf; aior->more = (len != done); breq = &aior->io_req; @@ -1750,7 +1800,7 @@ ahci_handle_cmd(struct ahci_port *p, int slot, uint8_t *cfis) case ATA_DATA_SET_MANAGEMENT: if (cfis[11] == 0 && cfis[3] == ATA_DSM_TRIM && cfis[13] == 0 && cfis[12] == 1) { - ahci_handle_dsm_trim(p, slot, cfis, 0); + ahci_handle_dsm_trim(p, slot, cfis); break; } ahci_write_fis_d2h(p, slot, cfis, @@ -1760,7 +1810,7 @@ ahci_handle_cmd(struct ahci_port *p, int slot, uint8_t *cfis) if ((cfis[13] & 0x1f) == ATA_SFPDMA_DSM && cfis[17] == 0 && cfis[16] == ATA_DSM_TRIM && cfis[11] == 0 && cfis[3] == 1) { - ahci_handle_dsm_trim(p, slot, cfis, 0); + ahci_handle_dsm_trim(p, slot, cfis); break; } ahci_write_fis_d2h(p, slot, cfis, @@ -1898,12 +1948,12 @@ ata_ioreq_cb(struct blockif_req *br, int err) struct ahci_port *p; struct pci_ahci_softc *sc; uint32_t tfd; - uint8_t *cfis; - int slot, ncq, dsm; + uint8_t *cfis, *dsm; + int slot, ncq; DPRINTF("%s %d", __func__, err); - ncq = dsm = 0; + ncq = 0; aior = br->br_param; p = aior->io_pr; cfis = aior->cfis; @@ -1915,10 +1965,8 @@ ata_ioreq_cb(struct blockif_req *br, int err) cfis[2] == ATA_READ_FPDMA_QUEUED || cfis[2] == ATA_SEND_FPDMA_QUEUED) ncq = 1; - if (cfis[2] == ATA_DATA_SET_MANAGEMENT || - (cfis[2] == ATA_SEND_FPDMA_QUEUED && - (cfis[13] & 0x1f) == ATA_SFPDMA_DSM)) - dsm = 1; + dsm = aior->dsm; + aior->dsm = NULL; pthread_mutex_lock(&sc->mtx); @@ -1936,8 +1984,9 @@ ata_ioreq_cb(struct blockif_req *br, int err) hdr->prdbc = aior->done; if (!err && aior->more) { - if (dsm) - ahci_handle_dsm_trim(p, slot, cfis, aior->done); + if (dsm != NULL) + ahci_handle_next_trim(p, slot, cfis, dsm, + aior->len, aior->done); else ahci_handle_rw(p, slot, cfis, aior->done); goto out; @@ -1959,6 +2008,7 @@ ata_ioreq_cb(struct blockif_req *br, int err) ahci_check_stopped(p); ahci_handle_port(p); + free(dsm); out: pthread_mutex_unlock(&sc->mtx); DPRINTF("%s exit", __func__);

\x50 - \x51 - \x51 - \x52 - \x52 - \x53 - \x53 - \x54 - \x54 - \x55 - \x55 - \x56 - \x56 - \x57 - \x57 - \x58 - \x58 - \x59 - \x59 - \x5a - \x5a - \x5b - \x5c - \x5d - \x5e - \x5f - \x60 - \x61 - \x61 - \x62 - \x62 - \x63 - \x63 - \x64 - \x64 - \x65 - \x65 - \x66 - \x66 - \x67 - \x67 - \x68 - \x68 - \x69 - \x69 - \x6a - \x6a - \x6b - \x6b - \x6c - \x6c - \x6d - \x6d - \x6e - \x6e - \x6f - \x6f - \x70 -