Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 May 2009 17:55:47 +0000 (UTC)
From:      Rui Paulo <rpaulo@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r192560 - in projects/mesh11s: . contrib/bind9 contrib/cpio contrib/csup contrib/file contrib/gdb contrib/gdtoa contrib/less contrib/libpcap contrib/ncurses contrib/netcat contrib/ntp c...
Message-ID:  <200905211755.n4LHtlcU074476@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rpaulo
Date: Thu May 21 17:55:47 2009
New Revision: 192560
URL: http://svn.freebsd.org/changeset/base/192560

Log:
  MFC 192402:192554

Added:
  projects/mesh11s/sys/dev/usb/controller/avr32dci.c
     - copied unchanged from r192554, head/sys/dev/usb/controller/avr32dci.c
  projects/mesh11s/sys/dev/usb/controller/avr32dci.h
     - copied unchanged from r192554, head/sys/dev/usb/controller/avr32dci.h
  projects/mesh11s/sys/net80211/ieee80211_radiotap.c
     - copied unchanged from r192554, head/sys/net80211/ieee80211_radiotap.c
  projects/mesh11s/sys/powerpc/booke/mp_cpudep.c
     - copied unchanged from r192554, head/sys/powerpc/booke/mp_cpudep.c
  projects/mesh11s/tools/regression/bin/date/
     - copied from r192554, head/tools/regression/bin/date/
Deleted:
  projects/mesh11s/share/man/man4/usb2_core.4
Modified:
  projects/mesh11s/   (props changed)
  projects/mesh11s/UPDATING
  projects/mesh11s/contrib/bind9/   (props changed)
  projects/mesh11s/contrib/cpio/   (props changed)
  projects/mesh11s/contrib/csup/   (props changed)
  projects/mesh11s/contrib/file/   (props changed)
  projects/mesh11s/contrib/gdb/   (props changed)
  projects/mesh11s/contrib/gdtoa/   (props changed)
  projects/mesh11s/contrib/less/   (props changed)
  projects/mesh11s/contrib/libpcap/   (props changed)
  projects/mesh11s/contrib/ncurses/   (props changed)
  projects/mesh11s/contrib/netcat/   (props changed)
  projects/mesh11s/contrib/ntp/   (props changed)
  projects/mesh11s/contrib/openbsm/   (props changed)
  projects/mesh11s/contrib/openpam/   (props changed)
  projects/mesh11s/contrib/pf/   (props changed)
  projects/mesh11s/contrib/sendmail/   (props changed)
  projects/mesh11s/contrib/tcpdump/   (props changed)
  projects/mesh11s/contrib/top/   (props changed)
  projects/mesh11s/contrib/top/install-sh   (props changed)
  projects/mesh11s/contrib/wpa/   (props changed)
  projects/mesh11s/crypto/openssh/   (props changed)
  projects/mesh11s/crypto/openssl/   (props changed)
  projects/mesh11s/etc/mtree/BSD.include.dist
  projects/mesh11s/include/Makefile
  projects/mesh11s/lib/libc/   (props changed)
  projects/mesh11s/lib/libc/posix1e/posix1e.3
  projects/mesh11s/lib/libc/stdio/asprintf.c   (props changed)
  projects/mesh11s/lib/libc/stdtime/   (props changed)
  projects/mesh11s/lib/libc/string/ffsll.c   (props changed)
  projects/mesh11s/lib/libc/string/flsll.c   (props changed)
  projects/mesh11s/lib/libc/string/wcpcpy.c   (props changed)
  projects/mesh11s/lib/libc/string/wcpncpy.c   (props changed)
  projects/mesh11s/lib/libdisk/open_ia64_disk.c
  projects/mesh11s/lib/libusb/   (props changed)
  projects/mesh11s/lib/libusb/libusb.3   (contents, props changed)
  projects/mesh11s/lib/libusb/usb.h   (props changed)
  projects/mesh11s/lib/libutil/   (props changed)
  projects/mesh11s/release/doc/share/misc/dev.archlist.txt
  projects/mesh11s/sbin/   (props changed)
  projects/mesh11s/sbin/ipfw/   (props changed)
  projects/mesh11s/share/man/man4/altq.4
  projects/mesh11s/share/man/man4/nge.4
  projects/mesh11s/share/man/man4/usb.4
  projects/mesh11s/share/man/man9/atomic.9
  projects/mesh11s/share/zoneinfo/   (props changed)
  projects/mesh11s/sys/   (props changed)
  projects/mesh11s/sys/amd64/amd64/mca.c
  projects/mesh11s/sys/amd64/include/xen/   (props changed)
  projects/mesh11s/sys/cddl/contrib/opensolaris/common/atomic/amd64/opensolaris_atomic.S   (props changed)
  projects/mesh11s/sys/cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S   (props changed)
  projects/mesh11s/sys/cddl/contrib/opensolaris/common/atomic/ia64/opensolaris_atomic.S   (props changed)
  projects/mesh11s/sys/cddl/contrib/opensolaris/common/atomic/sparc64/opensolaris_atomic.S   (props changed)
  projects/mesh11s/sys/cddl/contrib/opensolaris/uts/common/rpc/opensolaris_xdr.c   (props changed)
  projects/mesh11s/sys/cddl/contrib/opensolaris/uts/common/rpc/opensolaris_xdr_array.c   (props changed)
  projects/mesh11s/sys/cddl/contrib/opensolaris/uts/common/rpc/opensolaris_xdr_mem.c   (props changed)
  projects/mesh11s/sys/cddl/contrib/opensolaris/uts/common/zmod/opensolaris_crc32.c   (props changed)
  projects/mesh11s/sys/compat/svr4/svr4_misc.c
  projects/mesh11s/sys/conf/files
  projects/mesh11s/sys/conf/files.powerpc
  projects/mesh11s/sys/contrib/dev/acpica/   (props changed)
  projects/mesh11s/sys/contrib/pf/   (props changed)
  projects/mesh11s/sys/dev/aac/aac.c
  projects/mesh11s/sys/dev/acpica/acpi.c
  projects/mesh11s/sys/dev/age/if_age.c
  projects/mesh11s/sys/dev/amr/amr.c
  projects/mesh11s/sys/dev/amr/amr_linux.c
  projects/mesh11s/sys/dev/arcmsr/arcmsr.c
  projects/mesh11s/sys/dev/ata/ata-usb.c   (contents, props changed)
  projects/mesh11s/sys/dev/ata/chipsets/ata-promise.c
  projects/mesh11s/sys/dev/ath/if_ath.c
  projects/mesh11s/sys/dev/ath/if_athvar.h
  projects/mesh11s/sys/dev/bwi/if_bwi.c
  projects/mesh11s/sys/dev/bwi/if_bwivar.h
  projects/mesh11s/sys/dev/ciss/ciss.c
  projects/mesh11s/sys/dev/cxgb/   (props changed)
  projects/mesh11s/sys/dev/cxgb/common/cxgb_ael1002.c
  projects/mesh11s/sys/dev/cxgb/common/cxgb_common.h
  projects/mesh11s/sys/dev/cxgb/common/cxgb_t3_hw.c
  projects/mesh11s/sys/dev/cxgb/cxgb_adapter.h
  projects/mesh11s/sys/dev/cxgb/cxgb_main.c
  projects/mesh11s/sys/dev/cxgb/cxgb_sge.c
  projects/mesh11s/sys/dev/if_ndis/if_ndis.c
  projects/mesh11s/sys/dev/if_ndis/if_ndis_usb.c
  projects/mesh11s/sys/dev/iir/iir_ctrl.c
  projects/mesh11s/sys/dev/ipw/if_ipw.c
  projects/mesh11s/sys/dev/ipw/if_ipwvar.h
  projects/mesh11s/sys/dev/iwi/if_iwi.c
  projects/mesh11s/sys/dev/iwi/if_iwivar.h
  projects/mesh11s/sys/dev/iwn/if_iwn.c
  projects/mesh11s/sys/dev/iwn/if_iwnvar.h
  projects/mesh11s/sys/dev/malo/if_malo.c
  projects/mesh11s/sys/dev/malo/if_malo.h
  projects/mesh11s/sys/dev/mfi/mfi.c
  projects/mesh11s/sys/dev/mfi/mfi_linux.c
  projects/mesh11s/sys/dev/mpt/mpt_raid.c
  projects/mesh11s/sys/dev/mpt/mpt_user.c
  projects/mesh11s/sys/dev/nge/if_nge.c
  projects/mesh11s/sys/dev/nge/if_ngereg.h
  projects/mesh11s/sys/dev/ral/rt2560.c
  projects/mesh11s/sys/dev/ral/rt2560var.h
  projects/mesh11s/sys/dev/ral/rt2661.c
  projects/mesh11s/sys/dev/ral/rt2661var.h
  projects/mesh11s/sys/dev/sound/midi/midi.c
  projects/mesh11s/sys/dev/sound/pci/emu10kx-midi.c
  projects/mesh11s/sys/dev/sound/pci/via82c686.h
  projects/mesh11s/sys/dev/sound/sbus/cs4231.h
  projects/mesh11s/sys/dev/sound/usb/uaudio.c   (contents, props changed)
  projects/mesh11s/sys/dev/sound/usb/uaudio.h   (props changed)
  projects/mesh11s/sys/dev/sound/usb/uaudio_pcm.c   (props changed)
  projects/mesh11s/sys/dev/sound/usb/uaudioreg.h   (contents, props changed)
  projects/mesh11s/sys/dev/twa/tw_osl_freebsd.c
  projects/mesh11s/sys/dev/twe/twe_freebsd.c
  projects/mesh11s/sys/dev/usb/README.TXT   (props changed)
  projects/mesh11s/sys/dev/usb/bluetooth/TODO.TXT   (props changed)
  projects/mesh11s/sys/dev/usb/bluetooth/ng_ubt.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/bluetooth/ng_ubt_var.h   (props changed)
  projects/mesh11s/sys/dev/usb/bluetooth/ubtbcmfw.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/at91dci.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/at91dci.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/at91dci_atmelarm.c   (props changed)
  projects/mesh11s/sys/dev/usb/controller/atmegadci.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/atmegadci.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/atmegadci_atmelarm.c   (props changed)
  projects/mesh11s/sys/dev/usb/controller/ehci.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/ehci.h   (props changed)
  projects/mesh11s/sys/dev/usb/controller/ehci_ixp4xx.c   (props changed)
  projects/mesh11s/sys/dev/usb/controller/ehci_mbus.c   (props changed)
  projects/mesh11s/sys/dev/usb/controller/ehci_pci.c   (props changed)
  projects/mesh11s/sys/dev/usb/controller/musb_otg.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/musb_otg.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/musb_otg_atmelarm.c   (props changed)
  projects/mesh11s/sys/dev/usb/controller/ohci.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/ohci.h   (props changed)
  projects/mesh11s/sys/dev/usb/controller/ohci_atmelarm.c   (props changed)
  projects/mesh11s/sys/dev/usb/controller/ohci_pci.c   (props changed)
  projects/mesh11s/sys/dev/usb/controller/uhci.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/uhci.h   (props changed)
  projects/mesh11s/sys/dev/usb/controller/uhci_pci.c   (props changed)
  projects/mesh11s/sys/dev/usb/controller/usb_controller.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/uss820dci.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/uss820dci.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/controller/uss820dci_atmelarm.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/input/uhid.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/input/ukbd.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/input/ums.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/input/usb_rdesc.h   (props changed)
  projects/mesh11s/sys/dev/usb/misc/udbp.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/misc/udbp.h   (props changed)
  projects/mesh11s/sys/dev/usb/misc/ufm.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/net/if_aue.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/net/if_auereg.h   (props changed)
  projects/mesh11s/sys/dev/usb/net/if_axe.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/net/if_axereg.h   (props changed)
  projects/mesh11s/sys/dev/usb/net/if_cdce.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/net/if_cdcereg.h   (props changed)
  projects/mesh11s/sys/dev/usb/net/if_cue.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/net/if_cuereg.h   (props changed)
  projects/mesh11s/sys/dev/usb/net/if_kue.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/net/if_kuefw.h   (props changed)
  projects/mesh11s/sys/dev/usb/net/if_kuereg.h   (props changed)
  projects/mesh11s/sys/dev/usb/net/if_rue.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/net/if_ruereg.h   (props changed)
  projects/mesh11s/sys/dev/usb/net/if_udav.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/net/if_udavreg.h   (props changed)
  projects/mesh11s/sys/dev/usb/net/usb_ethernet.c   (props changed)
  projects/mesh11s/sys/dev/usb/net/usb_ethernet.h   (props changed)
  projects/mesh11s/sys/dev/usb/quirk/usb_quirk.c   (props changed)
  projects/mesh11s/sys/dev/usb/quirk/usb_quirk.h   (props changed)
  projects/mesh11s/sys/dev/usb/serial/u3g.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/uark.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/ubsa.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/ubser.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/uchcom.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/ucycom.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/ufoma.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/uftdi.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/uftdi_reg.h   (props changed)
  projects/mesh11s/sys/dev/usb/serial/ugensa.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/uipaq.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/ulpt.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/umct.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/umodem.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/umoscom.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/uplcom.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/usb_serial.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/usb_serial.h   (props changed)
  projects/mesh11s/sys/dev/usb/serial/uslcom.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/uvisor.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/serial/uvscom.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/storage/rio500_usb.h   (props changed)
  projects/mesh11s/sys/dev/usb/storage/umass.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/storage/urio.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/storage/ustorage_fs.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/template/usb_template.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/template/usb_template.h   (props changed)
  projects/mesh11s/sys/dev/usb/template/usb_template_cdce.c   (props changed)
  projects/mesh11s/sys/dev/usb/template/usb_template_msc.c   (props changed)
  projects/mesh11s/sys/dev/usb/template/usb_template_mtp.c   (props changed)
  projects/mesh11s/sys/dev/usb/ufm_ioctl.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_bus.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_busdma.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_busdma.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_cdc.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_compat_linux.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_compat_linux.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_controller.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_core.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_core.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_debug.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_debug.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_defs.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_dev.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_dev.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_device.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_device.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_dynamic.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_dynamic.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_endian.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_error.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_error.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_generic.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_generic.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_handle_request.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_handle_request.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_hid.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_hid.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_hub.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_hub.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_if.m   (props changed)
  projects/mesh11s/sys/dev/usb/usb_ioctl.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_lookup.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_lookup.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_mbuf.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_mbuf.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_mfunc.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_msctest.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_msctest.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_parse.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_parse.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_pci.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_process.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_process.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_request.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_request.h   (props changed)
  projects/mesh11s/sys/dev/usb/usb_revision.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_transfer.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_transfer.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/usb_util.c   (props changed)
  projects/mesh11s/sys/dev/usb/usb_util.h   (props changed)
  projects/mesh11s/sys/dev/usb/usbdevs   (props changed)
  projects/mesh11s/sys/dev/usb/usbhid.h   (props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_rum.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_rumfw.h   (props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_rumreg.h   (props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_rumvar.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_uath.c
  projects/mesh11s/sys/dev/usb/wlan/if_uathvar.h
  projects/mesh11s/sys/dev/usb/wlan/if_upgt.c
  projects/mesh11s/sys/dev/usb/wlan/if_ural.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_uralreg.h   (props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_uralvar.h   (contents, props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_zyd.c   (contents, props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_zydfw.h   (props changed)
  projects/mesh11s/sys/dev/usb/wlan/if_zydreg.h   (props changed)
  projects/mesh11s/sys/dev/wi/if_wi.c
  projects/mesh11s/sys/dev/wi/if_wireg.h
  projects/mesh11s/sys/dev/wi/if_wivar.h
  projects/mesh11s/sys/dev/wpi/if_wpi.c
  projects/mesh11s/sys/dev/wpi/if_wpivar.h
  projects/mesh11s/sys/dev/xen/netfront/   (props changed)
  projects/mesh11s/sys/dev/xen/xenpci/   (props changed)
  projects/mesh11s/sys/fs/nfsserver/nfs_nfsdport.c
  projects/mesh11s/sys/fs/nfsserver/nfs_nfsdstate.c
  projects/mesh11s/sys/i386/acpica/acpi_machdep.c
  projects/mesh11s/sys/i386/bios/smapi.c
  projects/mesh11s/sys/i386/i386/mca.c
  projects/mesh11s/sys/kern/kern_conf.c
  projects/mesh11s/sys/kern/kern_descrip.c
  projects/mesh11s/sys/kern/kern_mutex.c
  projects/mesh11s/sys/kern/kern_poll.c
  projects/mesh11s/sys/kern/subr_bus.c
  projects/mesh11s/sys/kern/subr_witness.c
  projects/mesh11s/sys/kern/tty_inq.c
  projects/mesh11s/sys/kern/vfs_bio.c
  projects/mesh11s/sys/legacy/dev/ata/ata-usb.c   (props changed)
  projects/mesh11s/sys/legacy/dev/sound/usb/uaudio.c   (props changed)
  projects/mesh11s/sys/legacy/dev/sound/usb/uaudio.h   (props changed)
  projects/mesh11s/sys/legacy/dev/sound/usb/uaudio_pcm.c   (props changed)
  projects/mesh11s/sys/legacy/dev/sound/usb/uaudioreg.h   (props changed)
  projects/mesh11s/sys/legacy/dev/usb/   (props changed)
  projects/mesh11s/sys/legacy/dev/usb/ehci_ixp4xx.c   (props changed)
  projects/mesh11s/sys/modules/dtrace/dtnfsclient/   (props changed)
  projects/mesh11s/sys/modules/ip6_mroute_mod/   (props changed)
  projects/mesh11s/sys/modules/ipmi/ipmi_linux/   (props changed)
  projects/mesh11s/sys/net/if_llatbl.c
  projects/mesh11s/sys/net/if_llatbl.h
  projects/mesh11s/sys/net80211/ieee80211.c
  projects/mesh11s/sys/net80211/ieee80211_adhoc.c
  projects/mesh11s/sys/net80211/ieee80211_ddb.c
  projects/mesh11s/sys/net80211/ieee80211_freebsd.c
  projects/mesh11s/sys/net80211/ieee80211_freebsd.h
  projects/mesh11s/sys/net80211/ieee80211_hostap.c
  projects/mesh11s/sys/net80211/ieee80211_ht.c
  projects/mesh11s/sys/net80211/ieee80211_input.c
  projects/mesh11s/sys/net80211/ieee80211_monitor.c
  projects/mesh11s/sys/net80211/ieee80211_node.c
  projects/mesh11s/sys/net80211/ieee80211_node.h
  projects/mesh11s/sys/net80211/ieee80211_output.c
  projects/mesh11s/sys/net80211/ieee80211_proto.c
  projects/mesh11s/sys/net80211/ieee80211_proto.h
  projects/mesh11s/sys/net80211/ieee80211_scan.c
  projects/mesh11s/sys/net80211/ieee80211_scan.h
  projects/mesh11s/sys/net80211/ieee80211_scan_sta.c
  projects/mesh11s/sys/net80211/ieee80211_sta.c
  projects/mesh11s/sys/net80211/ieee80211_superg.c
  projects/mesh11s/sys/net80211/ieee80211_tdma.c
  projects/mesh11s/sys/net80211/ieee80211_tdma.h
  projects/mesh11s/sys/net80211/ieee80211_var.h
  projects/mesh11s/sys/net80211/ieee80211_wds.c
  projects/mesh11s/sys/netinet/in.c
  projects/mesh11s/sys/netinet/ip_output.c
  projects/mesh11s/sys/netinet6/in6.c
  projects/mesh11s/sys/netinet6/mld6.c
  projects/mesh11s/sys/netnatm/natm.c
  projects/mesh11s/sys/nfs4client/nfs4_dev.c
  projects/mesh11s/sys/nlm/nlm.h
  projects/mesh11s/sys/nlm/nlm_prot_impl.c
  projects/mesh11s/sys/powerpc/booke/clock.c
  projects/mesh11s/sys/powerpc/booke/locore.S
  projects/mesh11s/sys/powerpc/booke/machdep.c
  projects/mesh11s/sys/powerpc/booke/platform_bare.c
  projects/mesh11s/sys/powerpc/booke/pmap.c
  projects/mesh11s/sys/powerpc/booke/trap_subr.S
  projects/mesh11s/sys/powerpc/booke/vm_machdep.c
  projects/mesh11s/sys/powerpc/include/mutex.h
  projects/mesh11s/sys/powerpc/include/pcpu.h
  projects/mesh11s/sys/powerpc/include/spr.h
  projects/mesh11s/sys/powerpc/mpc85xx/ocpbus.c
  projects/mesh11s/sys/powerpc/mpc85xx/ocpbus.h
  projects/mesh11s/sys/powerpc/powerpc/busdma_machdep.c
  projects/mesh11s/sys/powerpc/powerpc/genassym.c
  projects/mesh11s/sys/powerpc/powerpc/mp_machdep.c
  projects/mesh11s/sys/powerpc/powerpc/openpic.c
  projects/mesh11s/sys/sparc64/conf/GENERIC
  projects/mesh11s/sys/sys/interrupt.h
  projects/mesh11s/sys/sys/param.h
  projects/mesh11s/sys/sys/proc.h
  projects/mesh11s/sys/xen/evtchn.h   (props changed)
  projects/mesh11s/sys/xen/hypervisor.h   (props changed)
  projects/mesh11s/sys/xen/xen_intr.h   (props changed)
  projects/mesh11s/tools/regression/lib/msun/test-conj.t   (props changed)
  projects/mesh11s/tools/regression/usr.bin/pkill/pgrep-_g.t   (props changed)
  projects/mesh11s/tools/regression/usr.bin/pkill/pgrep-_s.t   (props changed)
  projects/mesh11s/tools/regression/usr.bin/pkill/pkill-_g.t   (props changed)
  projects/mesh11s/tools/tools/ath/common/dumpregs.h   (props changed)
  projects/mesh11s/tools/tools/ath/common/dumpregs_5210.c   (props changed)
  projects/mesh11s/tools/tools/ath/common/dumpregs_5211.c   (props changed)
  projects/mesh11s/tools/tools/ath/common/dumpregs_5212.c   (props changed)
  projects/mesh11s/tools/tools/ath/common/dumpregs_5416.c   (props changed)
  projects/mesh11s/usr.bin/csup/   (props changed)
  projects/mesh11s/usr.bin/perror/Makefile
  projects/mesh11s/usr.bin/perror/perror.c
  projects/mesh11s/usr.bin/procstat/   (props changed)
  projects/mesh11s/usr.sbin/dumpcis/cardinfo.h   (props changed)
  projects/mesh11s/usr.sbin/dumpcis/cis.h   (props changed)
  projects/mesh11s/usr.sbin/makefs/ffs/ffs_bswap.c   (props changed)
  projects/mesh11s/usr.sbin/makefs/ffs/ffs_subr.c   (props changed)
  projects/mesh11s/usr.sbin/makefs/ffs/ufs_bswap.h   (props changed)
  projects/mesh11s/usr.sbin/makefs/getid.c   (props changed)
  projects/mesh11s/usr.sbin/pwd_mkdb/pwd_mkdb.c
  projects/mesh11s/usr.sbin/zic/   (props changed)

Modified: projects/mesh11s/UPDATING
==============================================================================
--- projects/mesh11s/UPDATING	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/UPDATING	Thu May 21 17:55:47 2009	(r192560)
@@ -22,6 +22,18 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 8.
 	to maximize performance.  (To disable malloc debugging, run
 	ln -s aj /etc/malloc.conf.)
 
+20090520:
+	The sysctl tree for the usb stack has renamed from hw.usb2.* to
+	hw.usb.* and is now consistent again with previous releases.
+
+20090520:
+	802.11 monitor mode support was revised and driver api's
+	were changed.  Drivers dependent on net80211 now support
+	DLT_IEEE802_11_RADIO instead of DLT_IEEE802_11.  No
+	user-visible data structures were changed but applications
+	that use DLT_IEEE802_11 may require changes.
+	Bump __FreeBSD_version to 800088.
+
 20090430:
 	The layout of the following structs has changed: sysctl_oid,
 	socket, ifnet, inpcbinfo, tcpcb, syncache_head, vnet_inet,

Modified: projects/mesh11s/etc/mtree/BSD.include.dist
==============================================================================
--- projects/mesh11s/etc/mtree/BSD.include.dist	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/etc/mtree/BSD.include.dist	Thu May 21 17:55:47 2009	(r192560)
@@ -136,6 +136,8 @@
         ..
         msdosfs
         ..
+        nfs
+        ..
         ntfs
         ..
         nullfs

Modified: projects/mesh11s/include/Makefile
==============================================================================
--- projects/mesh11s/include/Makefile	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/include/Makefile	Thu May 21 17:55:47 2009	(r192560)
@@ -43,7 +43,7 @@ LSUBDIRS=	cam/scsi \
 	dev/ic dev/iicbus ${_dev_ieee488} dev/lmc dev/ofw \
 	dev/pbio ${_dev_powermac_nvram} dev/ppbus dev/smbus \
 	dev/speaker dev/usb dev/utopia dev/vkbd dev/wi \
-	fs/devfs fs/fdescfs fs/fifofs fs/msdosfs fs/ntfs fs/nullfs \
+	fs/devfs fs/fdescfs fs/fifofs fs/msdosfs fs/nfs fs/ntfs fs/nullfs \
 	${_fs_nwfs} fs/portalfs fs/procfs fs/smbfs fs/udf fs/unionfs \
 	geom/cache geom/concat geom/eli geom/gate geom/journal geom/label \
 	geom/mirror geom/multipath geom/nop \

Modified: projects/mesh11s/lib/libc/posix1e/posix1e.3
==============================================================================
--- projects/mesh11s/lib/libc/posix1e/posix1e.3	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/lib/libc/posix1e/posix1e.3	Thu May 21 17:55:47 2009	(r192560)
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd January 17, 2000
+.Dd May 20, 2009
 .Dt POSIX1E 3
 .Os
 .Sh NAME
@@ -36,7 +36,6 @@
 .Sh SYNOPSIS
 .In sys/types.h
 .In sys/acl.h
-.\" .In sys/audit.h
 .\" .In sys/capability.h
 .In sys/mac.h
 .Sh DESCRIPTION
@@ -104,6 +103,7 @@ structure.
 .Sh SEE ALSO
 .Xr extattr 2 ,
 .Xr acl 3 ,
+.Xr libbsm 3 ,
 .Xr mac 3 ,
 .Xr acl 9 ,
 .Xr extattr 9 ,

Modified: projects/mesh11s/lib/libdisk/open_ia64_disk.c
==============================================================================
--- projects/mesh11s/lib/libdisk/open_ia64_disk.c	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/lib/libdisk/open_ia64_disk.c	Thu May 21 17:55:47 2009	(r192560)
@@ -40,16 +40,9 @@ __FBSDID("$FreeBSD$");
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
-#include <uuid.h>
 
 #include "libdisk.h"
 
-static uuid_t _efi = GPT_ENT_TYPE_EFI;
-static uuid_t _mbr = GPT_ENT_TYPE_MBR;
-static uuid_t _fbsd = GPT_ENT_TYPE_FREEBSD;
-static uuid_t _swap = GPT_ENT_TYPE_FREEBSD_SWAP;
-static uuid_t _ufs = GPT_ENT_TYPE_FREEBSD_UFS;
-
 static struct disk *
 parse_disk(char *conftxt, const char *name)
 {
@@ -147,11 +140,9 @@ struct disk *
 Int_Open_Disk(const char *name, char *conftxt)
 {
 	struct chunk chunk;
-	uuid_t uuid;
 	struct disk *disk;
-	char *p, *q, *r, *s, *sd, *type;
+	char *p, *q, *r, *s, *sd;
 	u_long i;
-	uint32_t status;
 
 	p = conftxt;
 	while (p != NULL && *p != 0) {
@@ -186,17 +177,27 @@ Int_Open_Disk(const char *name, char *co
 		if (conftxt != NULL)
 			*conftxt++ = '\0';
 
+		/*
+		 * 1 PART da0p4 34359738368 512
+		 *	i 4 o 52063912960 ty freebsd-ufs
+		 *	xs GPT xt 516e7cb6-6ecf-11d6-8ff8-00022d09712b
+		 */
 		sd = strsep(&p, " ");			/* depth */
 		if (strcmp(sd, "0") == 0)
 			break;
 
-		type = strsep(&p, " ");			/* type */
+		q = strsep(&p, " ");			/* type */
+		if (strcmp(q, "PART") != 0)
+			continue;
+
 		chunk.name = strsep(&p, " ");		/* name */
+
 		q = strsep(&p, " ");			/* length */
 		i = strtoimax(q, &r, 0);
 		if (*r)
 			abort();
 		chunk.end = i / disk->sector_size;
+
 		q = strsep(&p, " ");			/* sector size */
 
 		for (;;) {
@@ -205,82 +206,30 @@ Int_Open_Disk(const char *name, char *co
 				break;
 			r = strsep(&p, " ");
 			i = strtoimax(r, &s, 0);
-			if (*s) {
-				status = uuid_s_ok;
+			if (strcmp(q, "ty") == 0 && *s != '\0') {
 				if (!strcmp(r, "efi"))
-					uuid = _efi;
-				else if (!strcmp(r, "mbr"))
-					uuid = _mbr;
-				else if (!strcmp(r, "freebsd"))
-					uuid = _fbsd;
-				else if (!strcmp(r, "freebsd-swap"))
-					uuid = _swap;
-				else if (!strcmp(r, "freebsd-ufs"))
-					uuid = _ufs;
-				else {
-					if (!strcmp(type, "PART"))
-						uuid_from_string(r + 1, &uuid,
-						    &status);
-					else
-						uuid_from_string(r, &uuid,
-						    &status);
+					chunk.type = efi;
+				else if (!strcmp(r, "freebsd")) {
+					chunk.type = freebsd;
+					chunk.subtype = 0xa5;
+				} else if (!strcmp(r, "freebsd-swap")) {
+					chunk.type = part;
+					chunk.subtype = FS_SWAP;
+				} else if (!strcmp(r, "freebsd-ufs")) {
+					chunk.type = part;
+					chunk.subtype = FS_BSDFFS;
+				} else {
+					chunk.type = part;
+					chunk.subtype = FS_OTHER;
 				}
-			} else
-				status = uuid_s_invalid_string_uuid;
-			if (!strcmp(q, "o"))
-				chunk.offset = i / disk->sector_size;
-			else if (!strcmp(q, "i"))
-				chunk.flags = CHUNK_ITOF(i) | CHUNK_HAS_INDEX;
-			else if (!strcmp(q, "ty"))
-				chunk.subtype = i;
-		}
-
-		if (strncmp(type, "MBR", 3) == 0) {
-			switch (chunk.subtype) {
-			case 0xa5:
-				chunk.type = freebsd;
-				break;
-			case 0x01:
-			case 0x04:
-			case 0x06:
-			case 0x0b:
-			case 0x0c:
-			case 0x0e:
-				chunk.type = fat;
-				break;
-			case 0xef:	/* EFI */
-				chunk.type = efi;
-				break;
-			default:
-				chunk.type = mbr;
-				break;
+			} else {
+				if (!strcmp(q, "o"))
+					chunk.offset = i / disk->sector_size;
+				else if (!strcmp(q, "i"))
+					chunk.flags = CHUNK_ITOF(i) |
+					    CHUNK_HAS_INDEX;
 			}
-		} else if (strcmp(type, "BSD") == 0) {
-			chunk.type = part;
-		} else if (strcmp(type, "GPT") == 0 ||
-		    strcmp(type, "PART") == 0) {
-			chunk.subtype = 0;
-			if (status != uuid_s_ok)
-				abort();
-			if (uuid_is_nil(&uuid, NULL))
-				chunk.type = unused;
-			else if (uuid_equal(&uuid, &_efi, NULL))
-				chunk.type = efi;
-			else if (uuid_equal(&uuid, &_mbr, NULL))
-				chunk.type = mbr;
-			else if (uuid_equal(&uuid, &_fbsd, NULL)) {
-				chunk.type = freebsd;
-				chunk.subtype = 0xa5;
-			} else if (uuid_equal(&uuid, &_swap, NULL)) {
-				chunk.type = part;
-				chunk.subtype = FS_SWAP;
-			} else if (uuid_equal(&uuid, &_ufs, NULL)) {
-				chunk.type = part;
-				chunk.subtype = FS_BSDFFS;
-			} else
-				chunk.type = part;
-		} else
-			abort();
+		}
 
 		Add_Chunk(disk, chunk.offset, chunk.end, chunk.name,
 		    chunk.type, chunk.subtype, chunk.flags, 0);

Modified: projects/mesh11s/lib/libusb/libusb.3
==============================================================================
--- projects/mesh11s/lib/libusb/libusb.3	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/lib/libusb/libusb.3	Thu May 21 17:55:47 2009	(r192560)
@@ -26,7 +26,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd April 5, 2009
+.Dd May 21, 2009
 .Dt LIBUSB 3
 .Os
 .Sh NAME
@@ -148,8 +148,8 @@ USB access library (libusb -lusb)
 .Fn libusb20_dev_get_power_mode "struct libusb20_device *pdev"
 .Ft int
 .Fn libusb20_dev_set_alt_index "struct libusb20_device *pdev" "uint8_t iface_index" "uint8_t alt_index"
-.Ft int
-.Fn libusb20_dev_get_device_desc "struct libusb20_device *pdev" "uint8_t iface_indexr", "char *buf" "uint8_t len"
+.Ft struct LIBUSB20_DEVICE_DESC_DECODED *
+.Fn libusb20_dev_get_device_desc "struct libusb20_device *pdev"
 .Ft struct libusb20_config *
 .Fn libusb20_dev_alloc_config "struct libusb20_device *pdev" "uint8_t config_index"
 .Ft struct libusb20_device *
@@ -945,7 +945,7 @@ These functions are compliant with LibUS
 .
 /dev/usb
 .Sh SEE ALSO
-.Xr usb2_core 4 ,
+.Xr usb 4 ,
 .Xr usbconfig 8
 .
 .

Modified: projects/mesh11s/release/doc/share/misc/dev.archlist.txt
==============================================================================
--- projects/mesh11s/release/doc/share/misc/dev.archlist.txt	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/release/doc/share/misc/dev.archlist.txt	Thu May 21 17:55:47 2009	(r192560)
@@ -93,7 +93,6 @@ ncv	i386,pc98
 nfe	i386,amd64
 ng_bt3c	i386,pc98,amd64
 ng_ubt	i386,pc98,amd64
-nge	i386,pc98,amd64
 nsp	i386,pc98
 nve	i386,amd64
 nxge	i386,amd64

Modified: projects/mesh11s/share/man/man4/altq.4
==============================================================================
--- projects/mesh11s/share/man/man4/altq.4	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/share/man/man4/altq.4	Thu May 21 17:55:47 2009	(r192560)
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd March 12, 2009
+.Dd May 21, 2009
 .Dt ALTQ 4
 .Os
 .Sh NAME
@@ -140,6 +140,7 @@ They have been applied to the following 
 .Xr mxge 4 ,
 .Xr my 4 ,
 .Xr nfe 4 ,
+.Xr nge 4 ,
 .Xr npe 4 ,
 .Xr nve 4 ,
 .Xr ral 4 ,

Modified: projects/mesh11s/share/man/man4/nge.4
==============================================================================
--- projects/mesh11s/share/man/man4/nge.4	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/share/man/man4/nge.4	Thu May 21 17:55:47 2009	(r192560)
@@ -31,7 +31,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd January 23, 2009
+.Dd May 21, 2009
 .Dt NGE 4
 .Os
 .Sh NAME
@@ -69,8 +69,8 @@ Most cards also use the DP83861 10/100/1
 chip, which supports autonegotiation of 10, 100 and 1000Mbps modes in
 full or half duplex.
 .Pp
-The DP83820 also supports jumbo frames, which can be configured
-via the interface MTU setting.
+The DP83820 and DP83821 also support jumbo frames, which can be
+configured via the interface MTU setting.
 Selecting an MTU larger than 1500 bytes with the
 .Xr ifconfig 8
 utility configures the adapter to receive and transmit jumbo frames.
@@ -182,6 +182,21 @@ Surecom Technology EP-320G-TX
 .It
 Trendware TEG-PCITX (32-bit PCI) and TEG-PCITX2 (64-bit PCI)
 .El
+.Sh SYSCTL VARIABLES
+The following variables are available as both
+.Xr sysctl 8
+variables and
+.Xr loader 8
+tunables:
+.Bl -tag -width "xxxxxx"
+.It Va dev.nge.%d.int_holdoff
+Maximum amount of time to delay interrupt processing in units of
+100us.
+The accepted range is 0 to 255, the default is 1(100us).
+Value 0 completely disables the interrupt moderation.
+The interface has to be brought down and up again before a change
+takes effect.
+.El
 .Sh DIAGNOSTICS
 .Bl -diag
 .It "nge%d: couldn't map memory"
@@ -205,6 +220,7 @@ The device has stopped responding to the
 the network connection (cable).
 .El
 .Sh SEE ALSO
+.Xr altq 4 ,
 .Xr arp 4 ,
 .Xr miibus 4 ,
 .Xr netintro 4 ,

Modified: projects/mesh11s/share/man/man4/usb.4
==============================================================================
--- projects/mesh11s/share/man/man4/usb.4	Thu May 21 17:55:18 2009	(r192559)
+++ projects/mesh11s/share/man/man4/usb.4	Thu May 21 17:55:47 2009	(r192560)
@@ -25,9 +25,32 @@
 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 .\" THE POSSIBILITY OF SUCH DAMAGE.
 .\"
+.\" Copyright (c) 2008 Hans Petter Selasky. 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 November 22, 2006
+.Dd May 20, 2009
 .Dt USB 4
 .Os
 .Sh NAME
@@ -47,22 +70,29 @@ module at boot time, place the following
 .Bd -literal -offset indent
 usb_load="YES"
 .Ed
-.Pp
-.In dev/usb/usb.h
-.In dev/usb/usbhid.h
+.Sh USERLAND PROGRAMMING
+USB functions can be accessed from userland through the libusb library.
+See
+.Xr libusb 3
+for more information.
 .Sh DESCRIPTION
 .Fx
 provides machine-independent bus support and drivers for
 .Tn USB
-devices.
+devices in host and device side mode.
 .Pp
 The
 .Nm
-driver has three layers: the controller, the bus, and the
-device layer.
+driver has three layers:
+.Bl -tag
+.It USB Controller (Bus)
+.It USB Device
+.It USB Driver
+.El
+.Pp
 The controller attaches to a physical bus
-(like
-.Xr pci 4 ) .
+like
+.Xr pci 4 .
 The
 .Tn USB
 bus attaches to the controller, and the root hub attaches
@@ -79,14 +109,20 @@ root hub.
 .Sh INTRODUCTION TO USB
 The
 .Tn USB
-is a 12 Mb/s serial bus (1.5 Mb/s for low speed devices).
+is a system where external devices can be connected to a PC.
+The most common USB speeds are:
+.Bl -tag
+.It Low Speed (1.5MBit/sec)
+.It Full Speed (12MBit/sec)
+.It High Speed (480MBit/sec)
+.El
+.Pp
 Each
 .Tn USB
-has a host controller that is the master of the bus;
-all other devices on the bus only speak when spoken to.
+has a USB controller that is the master of the bus.
+The physical communication is simplex which means the host controller only communicates with one USB device at a time.
 .Pp
-There can be up to 127 devices (apart from the host controller)
-on a bus, each with its own address.
+There can be up to 127 devices connected to an USB HUB tree.
 The addresses are assigned
 dynamically by the host when each device is attached to the bus.
 .Pp
@@ -116,286 +152,558 @@ A device may operate in different config
 Depending on the
 configuration, the device may present different sets of endpoints
 and interfaces.
-.\" .Pp
-.\" Each device located on a hub has several
-.\" .Xr config 8
-.\" locators:
-.\" .Bl -tag -compact -width xxxxxx
-.\" .It Cd port
-.\" this is the number of the port on the closest upstream hub.
-.\" .It Cd configuration
-.\" this is the configuration the device must be in for this driver to attach.
-.\" This locator does not set the configuration; it is iterated by the bus
-.\" enumeration.
-.\" .It Cd interface
-.\" this is the interface number within a device that an interface driver
-.\" attaches to.
-.\" .It Cd vendor
-.\" this is the 16 bit vendor id of the device.
-.\" .It Cd product
-.\" this is the 16 bit product id of the device.
-.\" .It Cd release
-.\" this is the 16 bit release (revision) number of the device.
-.\" .El
-.\" The first locator can be used to pin down a particular device
-.\" according to its physical position in the device tree.
-.\" The last three locators can be used to pin down a particular
-.\" device according to what device it actually is.
 .Pp
 The bus enumeration of the
 .Tn USB
 bus proceeds in several steps:
 .Bl -enum
 .It
-Any device specific driver can attach to the device.
-.It
-If none is found, any device class specific driver can attach.
+Any interface specific driver can attach to the device.
 .It
-If none is found, all configurations are iterated over.
-For each configuration, all the interfaces are iterated over, and interface
-drivers can attach.
-If any interface driver attached in a certain
-configuration, the iteration over configurations is stopped.
-.It
-If still no drivers have been found, the generic
-.Tn USB
-driver can attach.
+If none is found, generic interface class drivers can attach.
 .El
-.Sh USB CONTROLLER INTERFACE
-Use the following to get access to the
-.Tn USB
-specific structures and defines.
+.Sh USB KERNEL PROGRAMMING
+Here is a list of commonly used functions:
 .Pp
+.
+.Ft "usb2_error_t"
+.Fo "usb2_transfer_setup"
+.Fa "udev"
+.Fa "ifaces"
+.Fa "pxfer"
+.Fa "setup_start"
+.Fa "n_setup"
+.Fa "priv_sc"
+.Fa "priv_mtx"
+.Fc
+.
+.Pp
+.
+.Ft "void"
+.Fo "usb2_transfer_unsetup"
+.Fa "pxfer"
+.Fa "n_setup"
+.Fc
+.
+.Pp
+.
+.Ft "void"
+.Fo "usb2_transfer_start"
+.Fa "xfer"
+.Fc
+.
+.Pp
+.
+.Ft "void"
+.Fo "usb2_transfer_stop"
+.Fa "xfer"
+.Fc
+.
+.Pp
+.
+.Ft "void"
+.Fo "usb2_transfer_drain"
+.Fa "xfer"
+.Fc
+.
+.
+.Sh DESCRIPTION
 The
-.Pa /dev/usb Ns Ar N
-can be opened and a few operations can be performed on it.
-The
-.Xr poll 2
-system call will say that I/O is possible on the controller device when a
-.Tn USB
-device has been connected or disconnected to the bus.
-.Pp
-The following
-.Xr ioctl 2
-commands are supported on the controller device:
-.Bl -tag -width xxxxxx
-.It Dv USB_DISCOVER
-This command will cause a complete bus discovery to be initiated.
-If any devices attached or detached from the bus they will be
-processed during this command.
-This is the only way that new devices are found on the bus.
-.It Dv USB_DEVICEINFO Vt "struct usb_device_info"
-This command can be used to retrieve some information about a device
-on the bus.
+.Nm
+module implements the core functionality of the USB standard and many
+helper functions to make USB device driver programming easier and more
+safe.
+.
 The
-.Va udi_addr
-field should be filled before the call and the other fields will
-be filled by information about the device on that address.
-Should no such device exist, an error is reported.
-.Bd -literal
-#define USB_MAX_DEVNAMES 4
-#define USB_MAX_DEVNAMELEN 16
-struct usb_device_info {
-	u_int8_t	udi_bus;
-	u_int8_t	udi_addr;	/* device address */
-	usb_event_cookie_t udi_cookie;
-	char		udi_product[USB_MAX_STRING_LEN];
-	char		udi_vendor[USB_MAX_STRING_LEN];
-	char		udi_release[8];
-	u_int16_t	udi_productNo;
-	u_int16_t	udi_vendorNo;
-	u_int16_t	udi_releaseNo;
-	u_int8_t	udi_class;
-	u_int8_t	udi_subclass;
-	u_int8_t	udi_protocol;
-	u_int8_t	udi_config;
-	u_int8_t	udi_speed;
-#define USB_SPEED_LOW  1
-#define USB_SPEED_FULL 2
-#define USB_SPEED_HIGH 3
-	int		udi_power;/* power consumption in mA, 0 if selfpowered */
-	int		udi_nports;
-	char		udi_devnames[USB_MAX_DEVNAMES][USB_MAX_DEVNAMELEN];
-	u_int8_t	udi_ports[16];/* hub only: addresses of devices on ports */
-#define USB_PORT_ENABLED 0xff
-#define USB_PORT_SUSPENDED 0xfe
-#define USB_PORT_POWERED 0xfd
-#define USB_PORT_DISABLED 0xfc
-};
+.Nm
+module supports both USB Host and USB Device side mode!
+.
+.Sh USB TRANSFER MANAGEMENT FUNCTIONS
+The USB standard defines four types of USB transfers.
+.
+Control transfers, Bulk transfers, Interrupt transfers and Isochronous
+transfers.
+.
+All the transfer types are managed using the following five functions:
+.
+.Pp
+.
+.Fn usb2_transfer_setup
+This function will allocate memory for and initialise an array of USB
+transfers and all required DMA memory.
+.
+This function can sleep or block waiting for resources to become
+available.
+.Fa udev
+is a pointer to "struct usb2_device".
+.Fa ifaces
+is an array of interface index numbers to use. See "if_index".
+.Fa pxfer
+is a pointer to an array of USB transfer pointers that are initialized
+to NULL, and then pointed to allocated USB transfers.
+.Fa setup_start
+is a pointer to an array of USB config structures.
+.Fa n_setup
+is a number telling the USB system how many USB transfers should be
+setup.
+.Fa priv_sc
+is the private softc pointer, which will be used to initialize
+"xfer->priv_sc".
+.Fa priv_mtx
+is the private mutex protecting the transfer structure and the
+softc. This pointer is used to initialize "xfer->priv_mtx".
+This function returns
+zero upon success. A non-zero return value indicates failure.
+.
+.Pp
+.
+.Fn usb2_transfer_unsetup
+This function will release the given USB transfers and all allocated
+resources associated with these USB transfers. 
+.Fa pxfer
+is a pointer to an array of USB transfer pointers, that may be NULL,
+that should be freed by the USB system.
+.Fa n_setup
+is a number telling the USB system how many USB transfers should be
+unsetup.
+.
+This function can sleep waiting for USB transfers to complete.
+.
+This function is NULL safe with regard to the USB transfer structure
+pointer.
+.
+It is not allowed to call this function from the USB transfer
+callback.
+.
+.Pp
+.
+.Fn usb2_transfer_start
+This function will start the USB transfer pointed to by
+.Fa xfer,
+if not already started.
+.
+This function is always non-blocking and must be called with the
+so-called private USB mutex locked.
+.
+This function is NULL safe with regard to the USB transfer structure
+pointer.
+.
+.Pp
+.
+.Fn usb2_transfer_stop
+This function will stop the USB transfer pointed to by
+.Fa xfer,
+if not already stopped.
+.
+This function is always non-blocking and must be called with the
+so-called private USB mutex locked.
+.
+This function can return before the USB callback has been called.
+.
+This function is NULL safe with regard to the USB transfer structure
+pointer.
+.
+If the transfer was in progress, the callback will called with
+"USB_ST_ERROR" and "xfer->error = USB_ERR_CANCELLED".
+.
+.Pp
+.
+.Fn usb2_transfer_drain
+This function will stop an USB transfer, if not already stopped and
+wait for any additional USB hardware operations to complete.
+.
+Buffers that are loaded into DMA using "usb2_set_frame_data()" can
+safely be freed after that this function has returned.
+.
+This function can block the caller and will not return before the USB
+callback has been called.
+.
+This function is NULL safe with regard to the USB transfer structure
+pointer.
+.
+.Sh USB TRANSFER CALLBACK
+.
+The USB callback has three states.
+.
+USB_ST_SETUP, USB_ST_TRANSFERRED and USB_ST_ERROR. USB_ST_SETUP is the
+initial state.
+.
+After the callback has been called with this state it will always be
+called back at a later stage in one of the other two states.
+.
+In the USB_ST_ERROR state the "error" field of the USB transfer
+structure is set to the error cause.
+.
+The USB callback should not restart the USB transfer in case the error
+cause is USB_ERR_CANCELLED.
+.
+The USB callback is protected from recursion.
+.
+That means one can start and stop whatever transfer from the callback
+of another transfer one desires.
+.
+Also the transfer that is currently called back.
+.
+Recursion is handled like this that when the callback that wants to
+recurse returns it is called one more time.
+.
+.
+.Pp
+.
+.Fn usb2_start_hardware
+This function should only be called from within the USB callback and
+is used to start the USB hardware.
+.
+Typical parameters that should be set in the USB transfer structure
+before this function is called are "frlengths[]", "nframes" and
+"frbuffers[]".
+.
+An USB transfer can have multiple frames consisting of one or more USB
+packets making up an I/O vector for all USB transfer types.
+.
+After the USB transfer is complete "frlengths[]" is updated to the
+actual USB transfer length for the given frame.
+.Bd -literal -offset indent
+void
+usb2_default_callback(struct usb2_xfer *xfer)
+{
+	switch (USB_GET_STATE(xfer)) {
+	case USB_ST_SETUP: 
+		/*
+		 * Setup xfer->frlengths[], xfer->nframes
+		 * and write data to xfer->frbuffers[], if any
+		 */
+		usb2_start_hardware(xfer);
+		break;
+
+	case USB_ST_TRANSFERRED: 
+		/* 
+		 * Read	data from xfer->frbuffers[], if any.
+		 * "xfer->frlengths[]" should now have been
+		 * updated to the actual length.
+		 */
+		break;
+
+	default: /* Error */
+		/*
+		 * Print error message and clear stall 
+		 * for example.
+		 */
+		break;
+	}
+	/* 
+	 * Here it is safe to do something without the private 
+	 * USB mutex locked.
+	 */
+	return;
+}
 .Ed
-.Pp
-.Va udi_bus
-and
-.Va udi_addr
-contain the topological information for the device.
-.Va udi_devnames
-contains the device names of the connected drivers.
-For example, the
-third
-.Tn USB
-Zip drive connected will be
-.Li umass2 .
-The
-.Va udi_product , udi_vendor
-and
-.Va udi_release
-fields contain self-explanatory descriptions of the device.
-.Va udi_productNo , udi_vendorNo , udi_releaseNo , udi_class , udi_subclass
-and
-.Va udi_protocol
-contain the corresponding values from the device descriptors.
-The
-.Va udi_config
-field shows the current configuration of the device.
-.Pp
-.Va udi_speed
-indicates whether the device is at low speed
-.Pq Dv USB_SPEED_LOW ,
-full speed
-.Pq Dv USB_SPEED_FULL
-or high speed
-.Pq Dv USB_SPEED_HIGH .
-The
-.Va udi_power
-field shows the power consumption in milli-amps drawn at 5 volts,
-or zero if the device is self powered.
-.Pp
-If the device is a hub, the
-.Va udi_nports
-field is non-zero, and the
-.Va udi_ports
-field contains the addresses of the connected devices.
-If no device is connected to a port, one of the
-.Dv USB_PORT_*
-values indicates its status.
-.It Dv USB_DEVICESTATS Vt "struct usb_device_stats"
-This command retrieves statistics about the controller.
-.Bd -literal
-struct usb_device_stats {
-        u_long  uds_requests[4];
+.
+.Sh USB CONTROL TRANSFERS
+An USB control transfer has three parts.
+.
+First the SETUP packet, then DATA packet(s) and then a STATUS
+packet.
+.
+The SETUP packet is always pointed to by "xfer->frbuffers[0]" and the
+length is stored in "xfer->frlengths[0]" also if there should not be
+sent any SETUP packet! If an USB control transfer has no DATA stage,
+then "xfer->nframes" should be set to 1.
+.
+Else the default value is "xfer->nframes" equal to 2.
+.
+.Bd -literal -offset indent
+
+Example1: SETUP + STATUS
+ xfer->nframes = 1;
+ xfer->frlenghts[0] = 8;
+ usb2_start_hardware(xfer);
+
+Example2: SETUP + DATA + STATUS
+ xfer->nframes = 2;
+ xfer->frlenghts[0] = 8;
+ xfer->frlenghts[1] = 1;
+ usb2_start_hardware(xfer);
+
+Example3: SETUP + DATA + STATUS - split
+1st callback:
+ xfer->nframes = 1;
+ xfer->frlenghts[0] = 8;
+ usb2_start_hardware(xfer);
+
+2nd callback:
+ /* IMPORTANT: frbuffers[0] must still point at the setup packet! */
+ xfer->nframes = 2;
+ xfer->frlenghts[0] = 0;
+ xfer->frlenghts[1] = 1;
+ usb2_start_hardware(xfer);
+
+Example4: SETUP + STATUS - split
+1st callback:
+ xfer->nframes = 1;
+ xfer->frlenghts[0] = 8;
+ xfer->flags.manual_status = 1;
+ usb2_start_hardware(xfer);
+
+2nd callback:
+ xfer->nframes = 1;
+ xfer->frlenghts[0] = 0;
+ xfer->flags.manual_status = 0;
+ usb2_start_hardware(xfer);
+
+.Ed
+.Sh USB TRANSFER CONFIG
+To simply the search for endpoints the
+.Nm
+module defines a USB config structure where it is possible to specify
+the characteristics of the wanted endpoint.
+.Bd -literal -offset indent
+
+struct usb2_config { 
+	bufsize,
+	callback
+	direction,
+	endpoint,
+	frames,
+	index flags,
+	interval,
+	timeout,
+	type,
 };
+
 .Ed
+.
 .Pp
-The
-.Va udi_requests
-field is indexed by the transfer kind, i.e.\&
-.Dv UE_* ,
-and indicates how many transfers of each kind that has been completed
-by the controller.
-.It Dv USB_REQUEST Vt "struct usb_ctl_request"
-This command can be used to execute arbitrary requests on the control pipe.
-This is
-.Em DANGEROUS
-and should be used with great care since it
-can destroy the bus integrity.
-.El
+.Fa type
+field selects the USB pipe type.
+.
+Valid values are: UE_INTERRUPT, UE_CONTROL, UE_BULK,
+UE_ISOCHRONOUS.
+.
+The special value UE_BULK_INTR will select BULK and INTERRUPT pipes.
+.
+This field is mandatory.
+.
+.Pp
+.Fa endpoint
+field selects the USB endpoint number.
+.
+A value of 0xFF, "-1" or "UE_ADDR_ANY" will select the first matching
+endpoint.
+.
+This field is mandatory.
+.
+.Pp
+.Fa direction
+field selects the USB endpoint direction.
+.
+A value of "UE_DIR_ANY" will select the first matching endpoint.
+.
+Else valid values are: "UE_DIR_IN" and "UE_DIR_OUT".
+.
+"UE_DIR_IN" and "UE_DIR_OUT" can be binary OR'ed by "UE_DIR_SID" which
+means that the direction will be swapped in case of
+USB_MODE_DEVICE.
+.
+Note that "UE_DIR_IN" refers to the data transfer direction of the
+"IN" tokens and "UE_DIR_OUT" refers to the data transfer direction of
+the "OUT" tokens.
+.
+This field is mandatory.
+.
+.Pp
+.Fa interval
+field selects the interrupt interval.
+.
+The value of this field is given in milliseconds and is independent of
+device speed.
+.
+Depending on the endpoint type, this field has different meaning:
+.Bl -tag
+.It UE_INTERRUPT
+"0" use the default interrupt interval based on endpoint descriptor.
+"Else" use the given value for polling rate.
+.It UE_ISOCHRONOUS
+"0" use default. "Else" the value is ignored.
+.It UE_BULK
+.It UE_CONTROL
+"0" no transfer pre-delay. "Else" a delay as given by this field in
+milliseconds is inserted before the hardware is started when
+"usb2_start_hardware()" is called.
 .Pp
-The include file
-.In dev/usb/usb.h
-contains definitions for the types used by the various
-.Xr ioctl 2
-calls.
-The naming convention of the fields for the various
-.Tn USB
-descriptors exactly follows the naming in the
-.Tn USB
-specification.
-Byte sized fields can be accessed directly, but word (16 bit)
-sized fields must be access by the

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200905211755.n4LHtlcU074476>