Date: Sun, 14 Dec 2008 02:51:17 +0000 (UTC) From: Kip Macy <kmacy@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r186072 - in projects/arpv2_merge_1: contrib/openpam gnu/usr.bin/groff/tmac sbin/geom/misc sbin/newfs share/man/man4 sys/amd64/amd64 sys/amd64/include sys/compat/linprocfs sys/contrib/p... Message-ID: <200812140251.mBE2pHFR047062@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kmacy Date: Sun Dec 14 02:51:17 2008 New Revision: 186072 URL: http://svn.freebsd.org/changeset/base/186072 Log: IFC 185966:186071 merge latest from HEAD Modified: projects/arpv2_merge_1/contrib/openpam/ (props changed) projects/arpv2_merge_1/gnu/usr.bin/groff/tmac/mdoc.local projects/arpv2_merge_1/sbin/geom/misc/subr.c projects/arpv2_merge_1/sbin/newfs/newfs.c projects/arpv2_merge_1/share/man/man4/acpi_aiboost.4 projects/arpv2_merge_1/share/man/man4/cxgb.4 projects/arpv2_merge_1/share/man/man4/ddb.4 projects/arpv2_merge_1/sys/amd64/amd64/exception.S projects/arpv2_merge_1/sys/amd64/amd64/genassym.c projects/arpv2_merge_1/sys/amd64/amd64/identcpu.c projects/arpv2_merge_1/sys/amd64/include/specialreg.h projects/arpv2_merge_1/sys/compat/linprocfs/linprocfs.c projects/arpv2_merge_1/sys/contrib/pf/net/pf_if.c projects/arpv2_merge_1/sys/contrib/pf/net/pf_subr.c projects/arpv2_merge_1/sys/dev/acpica/acpi_smbat.c projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah.c (contents, props changed) projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_eeprom_v14.c projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_eeprom_v3.c (contents, props changed) projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_internal.h (contents, props changed) projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5212/ar5111.c (contents, props changed) projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5312/ar5312.h (contents, props changed) projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5312/ar5312_attach.c (contents, props changed) projects/arpv2_merge_1/sys/dev/hwpmc/hwpmc_mod.c projects/arpv2_merge_1/sys/dev/mfi/mfi_pci.c projects/arpv2_merge_1/sys/dev/snp/snp.c projects/arpv2_merge_1/sys/dev/usb/usbdevs projects/arpv2_merge_1/sys/dev/usb2/include/usb2_devid.h projects/arpv2_merge_1/sys/dev/usb2/include/usb2_devtable.h projects/arpv2_merge_1/sys/fs/devfs/devfs_vnops.c projects/arpv2_merge_1/sys/fs/procfs/procfs_map.c projects/arpv2_merge_1/sys/i386/i386/exception.s projects/arpv2_merge_1/sys/i386/i386/genassym.c projects/arpv2_merge_1/sys/i386/i386/identcpu.c projects/arpv2_merge_1/sys/i386/include/specialreg.h projects/arpv2_merge_1/sys/kern/kern_proc.c projects/arpv2_merge_1/sys/kern/kern_prot.c projects/arpv2_merge_1/sys/kern/kern_sysctl.c projects/arpv2_merge_1/sys/kern/subr_trap.c projects/arpv2_merge_1/sys/kern/tty.c projects/arpv2_merge_1/sys/kern/tty_pts.c projects/arpv2_merge_1/sys/net/if_var.h projects/arpv2_merge_1/sys/net/pfil.h projects/arpv2_merge_1/sys/net/route.c projects/arpv2_merge_1/sys/net/route.h projects/arpv2_merge_1/sys/net/rtsock.c projects/arpv2_merge_1/sys/netgraph/netgraph.h projects/arpv2_merge_1/sys/netgraph/ng_base.c projects/arpv2_merge_1/sys/netgraph/ng_tty.c projects/arpv2_merge_1/sys/netinet/icmp6.h projects/arpv2_merge_1/sys/netinet/icmp_var.h projects/arpv2_merge_1/sys/netinet/in_rmx.c projects/arpv2_merge_1/sys/netinet/in_var.h projects/arpv2_merge_1/sys/netinet/ip_fw.h projects/arpv2_merge_1/sys/netinet/ip_fw2.c projects/arpv2_merge_1/sys/netinet/tcp_subr.c projects/arpv2_merge_1/sys/netinet/tcp_var.h projects/arpv2_merge_1/sys/netinet/vinet.h projects/arpv2_merge_1/sys/netinet6/in6_rmx.c projects/arpv2_merge_1/sys/netinet6/in6_var.h projects/arpv2_merge_1/sys/netinet6/ip6_input.c projects/arpv2_merge_1/sys/netinet6/ip6_var.h projects/arpv2_merge_1/sys/netinet6/raw_ip6.h projects/arpv2_merge_1/sys/netipsec/ipip_var.h projects/arpv2_merge_1/sys/powerpc/ofw/ofw_syscons.c projects/arpv2_merge_1/sys/powerpc/ofw/ofw_syscons.h projects/arpv2_merge_1/sys/powerpc/powermac/cuda.c projects/arpv2_merge_1/sys/powerpc/powermac/cudavar.h projects/arpv2_merge_1/sys/sys/param.h projects/arpv2_merge_1/sys/sys/pmc.h projects/arpv2_merge_1/sys/sys/ttyhook.h projects/arpv2_merge_1/usr.bin/cpuset/cpuset.1 projects/arpv2_merge_1/usr.bin/fetch/fetch.1 projects/arpv2_merge_1/usr.bin/fetch/fetch.c projects/arpv2_merge_1/usr.sbin/fwcontrol/fwcontrol.c projects/arpv2_merge_1/usr.sbin/fwcontrol/fwmpegts.c projects/arpv2_merge_1/usr.sbin/sysinstall/config.c projects/arpv2_merge_1/usr.sbin/sysinstall/install.c projects/arpv2_merge_1/usr.sbin/sysinstall/menus.c projects/arpv2_merge_1/usr.sbin/sysinstall/sysinstall.h Modified: projects/arpv2_merge_1/gnu/usr.bin/groff/tmac/mdoc.local ============================================================================== --- projects/arpv2_merge_1/gnu/usr.bin/groff/tmac/mdoc.local Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/gnu/usr.bin/groff/tmac/mdoc.local Sun Dec 14 02:51:17 2008 (r186072) @@ -69,6 +69,8 @@ . .\" FreeBSD releases not found in doc-common .ds doc-operating-system-FreeBSD-6.3 6.3 +.ds doc-operating-system-FreeBSD-6.4 6.4 +.ds doc-operating-system-FreeBSD-7.1 7.1 .ds doc-operating-system-FreeBSD-8.0 8.0 . .ec Modified: projects/arpv2_merge_1/sbin/geom/misc/subr.c ============================================================================== --- projects/arpv2_merge_1/sbin/geom/misc/subr.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sbin/geom/misc/subr.c Sun Dec 14 02:51:17 2008 (r186072) @@ -211,7 +211,7 @@ g_metadata_store(const char *name, u_cha sector = NULL; error = 0; - fd = open(path, O_WRONLY); + fd = open(path, O_RDWR); if (fd == -1) return (errno); mediasize = g_get_mediasize(name); Modified: projects/arpv2_merge_1/sbin/newfs/newfs.c ============================================================================== --- projects/arpv2_merge_1/sbin/newfs/newfs.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sbin/newfs/newfs.c Sun Dec 14 02:51:17 2008 (r186072) @@ -354,11 +354,6 @@ main(int argc, char *argv[]) mediasize = st.st_size; /* set fssize from the partition */ } else { - part_name = special[strlen(special) - 1]; - if ((part_name < 'a' || part_name > 'h') && !isdigit(part_name)) - errx(1, "%s: can't figure out file system partition", - special); - if (sectorsize == 0) if (ioctl(disk.d_fd, DIOCGSECTORSIZE, §orsize) == -1) sectorsize = 0; /* back out on error for safety */ @@ -368,6 +363,12 @@ main(int argc, char *argv[]) pp = NULL; lp = getdisklabel(special); if (lp != NULL) { + if (!is_file) /* already set for files */ + part_name = special[strlen(special) - 1]; + if ((part_name < 'a' || part_name - 'a' >= MAXPARTITIONS) && + !isdigit(part_name)) + errx(1, "%s: can't figure out file system partition", + special); cp = &part_name; if (isdigit(*cp)) pp = &lp->d_partitions[RAW_PART]; Modified: projects/arpv2_merge_1/share/man/man4/acpi_aiboost.4 ============================================================================== --- projects/arpv2_merge_1/share/man/man4/acpi_aiboost.4 Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/share/man/man4/acpi_aiboost.4 Sun Dec 14 02:51:17 2008 (r186072) @@ -56,8 +56,8 @@ The driver uses ACPI as the backend to f 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. +Descriptions for these values are available +with sysctl -d. .Pp The .Nm Modified: projects/arpv2_merge_1/share/man/man4/cxgb.4 ============================================================================== --- projects/arpv2_merge_1/share/man/man4/cxgb.4 Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/share/man/man4/cxgb.4 Sun Dec 14 02:51:17 2008 (r186072) @@ -1,4 +1,4 @@ -.\" Copyright (c) 2007, Chelsio Inc +.\" Copyright (c) 2007-2008, Chelsio Inc .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -56,7 +56,8 @@ if_cxgb_load="YES" The .Nm driver supports Transmit/Receive checksum offload, -Jumbo Frames as well as TCP segmentation offload (TSO). +Jumbo Frames, TCP segmentation offload (TSO), Large Receive Offload (LRO), +VLAN hardware insertion / extraction, and VLAN checksum offload. For further hardware information, see .Pa http://www.chelsio.com/ . .Pp @@ -76,7 +77,7 @@ For more information on configuring this .Sh HARDWARE The .Nm -driver supports 10 Gigabit Ethernet adapters based on the T3 and T3B chipset: +driver supports 10 Gigabit and 1 Gigabit Ethernet adapters based on the T3 and T3B chipset: .Pp .Bl -bullet -compact .It @@ -111,7 +112,7 @@ go to the Chelsio support website at: If an issue is identified with the released source code on the supported kernel with a supported adapter, email the specific information related to the issue to -.Aq help@chelsio.com . +.Aq support@chelsio.com . .Sh SEE ALSO .Xr altq 4 , .Xr arp 4 , Modified: projects/arpv2_merge_1/share/man/man4/ddb.4 ============================================================================== --- projects/arpv2_merge_1/share/man/man4/ddb.4 Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/share/man/man4/ddb.4 Sun Dec 14 02:51:17 2008 (r186072) @@ -102,10 +102,7 @@ is possible, include: .Sh DESCRIPTION The .Nm -kernel debugger has most of the features of the old -.Nm kdb , -but with a more rational syntax -inspired by +kernel debugger is an interactive debugger with a syntax inspired by .Xr gdb 1 . If linked into the running kernel, it can be invoked locally with the @@ -202,7 +199,7 @@ the .Nm emacs control keys, the usual .Tn ANSI -arrow keys might be used to +arrow keys may be used to browse through the history buffer, and move the cursor within the current line. .Sh COMMANDS @@ -254,8 +251,6 @@ display as an instruction display as an instruction with possible alternate formats depending on the machine: .Bl -tag -width ".Tn powerpc" -compact -.It Tn alpha -Show the registers of the instruction. .It Tn amd64 No alternate format. .It Tn i386 Modified: projects/arpv2_merge_1/sys/amd64/amd64/exception.S ============================================================================== --- projects/arpv2_merge_1/sys/amd64/amd64/exception.S Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/amd64/amd64/exception.S Sun Dec 14 02:51:17 2008 (r186072) @@ -480,16 +480,20 @@ outofnmi: /* * At this point the processor has exited NMI mode and is running * with interrupts turned off on the normal kernel stack. - * We turn interrupts back on, and take the usual 'doreti' exit - * path. * * If a pending NMI gets recognized at or after this point, it - * will cause a kernel callchain to be traced. Since this path - * is only taken for NMI interrupts from user space, our `swapgs' - * state is correct for taking the doreti path. + * will cause a kernel callchain to be traced. + * + * We turn interrupts back on, and call the user callchain capture hook. */ + movq pmc_hook,%rax + orq %rax,%rax + jz nocallchain + movq PCPU(CURTHREAD),%rdi /* thread */ + movq $PMC_FN_USER_CALLCHAIN,%rsi /* command */ + movq %rsp,%rdx /* frame */ sti - jmp doreti + call *%rax nocallchain: #endif testl %ebx,%ebx Modified: projects/arpv2_merge_1/sys/amd64/amd64/genassym.c ============================================================================== --- projects/arpv2_merge_1/sys/amd64/amd64/genassym.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/amd64/amd64/genassym.c Sun Dec 14 02:51:17 2008 (r186072) @@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$"); #include "opt_compat.h" +#include "opt_hwpmc_hooks.h" #include "opt_kstack_pages.h" #include <sys/param.h> @@ -44,6 +45,9 @@ __FBSDID("$FreeBSD$"); #include <sys/bio.h> #include <sys/buf.h> #include <sys/proc.h> +#ifdef HWPMC_HOOKS +#include <sys/pmckern.h> +#endif #include <sys/errno.h> #include <sys/mount.h> #include <sys/mutex.h> @@ -216,3 +220,7 @@ ASSYM(KUC32SEL, GSEL(GUCODE32_SEL, SEL_U ASSYM(SEL_RPL_MASK, SEL_RPL_MASK); ASSYM(MSR_GSBASE, MSR_GSBASE); + +#ifdef HWPMC_HOOKS +ASSYM(PMC_FN_USER_CALLCHAIN, PMC_FN_USER_CALLCHAIN); +#endif Modified: projects/arpv2_merge_1/sys/amd64/amd64/identcpu.c ============================================================================== --- projects/arpv2_merge_1/sys/amd64/amd64/identcpu.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/amd64/amd64/identcpu.c Sun Dec 14 02:51:17 2008 (r186072) @@ -322,15 +322,15 @@ printcpuinfo(void) "\003SVM" /* Secure Virtual Mode */ "\004ExtAPIC" /* Extended APIC register */ "\005CR8" /* CR8 in legacy mode */ - "\006<b5>" - "\007<b6>" - "\010<b7>" + "\006ABM" /* LZCNT instruction */ + "\007SSE4A" /* SSE4A */ + "\010MAS" /* Misaligned SSE mode */ "\011Prefetch" /* 3DNow! Prefetch/PrefetchW */ - "\012<b9>" - "\013<b10>" - "\014<b11>" - "\015<b12>" - "\016<b13>" + "\012OSVW" /* OS visible workaround */ + "\013IBS" /* Instruction based sampling */ + "\014SSE5" /* SSE5 */ + "\015SKINIT" /* SKINIT/STGI */ + "\016WDT" /* Watchdog timer */ "\017<b14>" "\020<b15>" "\021<b16>" Modified: projects/arpv2_merge_1/sys/amd64/include/specialreg.h ============================================================================== --- projects/arpv2_merge_1/sys/amd64/include/specialreg.h Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/amd64/include/specialreg.h Sun Dec 14 02:51:17 2008 (r186072) @@ -150,7 +150,15 @@ #define AMDID2_SVM 0x00000004 #define AMDID2_EXT_APIC 0x00000008 #define AMDID2_CR8 0x00000010 +#define AMDID2_ABM 0x00000020 +#define AMDID2_SSE4A 0x00000040 +#define AMDID2_MAS 0x00000080 #define AMDID2_PREFETCH 0x00000100 +#define AMDID2_OSVW 0x00000200 +#define AMDID2_IBS 0x00000400 +#define AMDID2_SSE5 0x00000800 +#define AMDID2_SKINIT 0x00001000 +#define AMDID2_WDT 0x00002000 /* * CPUID instruction 1 eax info Modified: projects/arpv2_merge_1/sys/compat/linprocfs/linprocfs.c ============================================================================== --- projects/arpv2_merge_1/sys/compat/linprocfs/linprocfs.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/compat/linprocfs/linprocfs.c Sun Dec 14 02:51:17 2008 (r186072) @@ -79,6 +79,7 @@ __FBSDID("$FreeBSD$"); #include <net/vnet.h> #include <vm/vm.h> +#include <vm/vm_extern.h> #include <vm/pmap.h> #include <vm/vm_map.h> #include <vm/vm_param.h> @@ -874,7 +875,8 @@ linprocfs_doprocenviron(PFS_FILL_ARGS) static int linprocfs_doprocmaps(PFS_FILL_ARGS) { - vm_map_t map = &p->p_vmspace->vm_map; + struct vmspace *vm; + vm_map_t map; vm_map_entry_t entry, tmp_entry; vm_object_t obj, tobj, lobj; vm_offset_t e_start, e_end; @@ -899,6 +901,10 @@ linprocfs_doprocmaps(PFS_FILL_ARGS) return (EOPNOTSUPP); error = 0; + vm = vmspace_acquire_ref(p); + if (vm == NULL) + return (ESRCH); + map = &vm->vm_map; vm_map_lock_read(map); for (entry = map->header.next; entry != &map->header; entry = entry->next) { @@ -985,6 +991,7 @@ linprocfs_doprocmaps(PFS_FILL_ARGS) } } vm_map_unlock_read(map); + vmspace_free(vm); return (error); } Modified: projects/arpv2_merge_1/sys/contrib/pf/net/pf_if.c ============================================================================== --- projects/arpv2_merge_1/sys/contrib/pf/net/pf_if.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/contrib/pf/net/pf_if.c Sun Dec 14 02:51:17 2008 (r186072) @@ -115,8 +115,10 @@ void pfi_change_group_event(void * __u void pfi_detach_group_event(void * __unused, struct ifg_group *); void pfi_ifaddr_event(void * __unused, struct ifnet *); +#ifdef VIMAGE_GLOBALS extern struct ifgrouphead ifg_head; #endif +#endif RB_PROTOTYPE(pfi_ifhead, pfi_kif, pfik_tree, pfi_if_compare); RB_GENERATE(pfi_ifhead, pfi_kif, pfik_tree, pfi_if_compare); Modified: projects/arpv2_merge_1/sys/contrib/pf/net/pf_subr.c ============================================================================== --- projects/arpv2_merge_1/sys/contrib/pf/net/pf_subr.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/contrib/pf/net/pf_subr.c Sun Dec 14 02:51:17 2008 (r186072) @@ -116,22 +116,22 @@ __FBSDID("$FreeBSD$"); #define ISN_STATIC_INCREMENT 4096 #define ISN_RANDOM_INCREMENT (4096 - 1) -static u_char isn_secret[32]; -static int isn_last_reseed; -static u_int32_t isn_offset; -static MD5_CTX isn_ctx; +static u_char pf_isn_secret[32]; +static int pf_isn_last_reseed; +static u_int32_t pf_isn_offset; u_int32_t pf_new_isn(struct pf_state *s) { + MD5_CTX isn_ctx; u_int32_t md5_buffer[4]; u_int32_t new_isn; struct pf_state_host *src, *dst; /* Seed if this is the first use, reseed if requested. */ - if (isn_last_reseed == 0) { - read_random(&isn_secret, sizeof(isn_secret)); - isn_last_reseed = ticks; + if (pf_isn_last_reseed == 0) { + read_random(&pf_isn_secret, sizeof(pf_isn_secret)); + pf_isn_last_reseed = ticks; } if (s->direction == PF_IN) { @@ -160,11 +160,11 @@ pf_new_isn(struct pf_state *s) MD5Update(&isn_ctx, (u_char *) &src->addr, sizeof(struct in_addr)); } - MD5Update(&isn_ctx, (u_char *) &isn_secret, sizeof(isn_secret)); + MD5Update(&isn_ctx, (u_char *) &pf_isn_secret, sizeof(pf_isn_secret)); MD5Final((u_char *) &md5_buffer, &isn_ctx); new_isn = (tcp_seq) md5_buffer[0]; - isn_offset += ISN_STATIC_INCREMENT + + pf_isn_offset += ISN_STATIC_INCREMENT + (arc4random() & ISN_RANDOM_INCREMENT); - new_isn += isn_offset; + new_isn += pf_isn_offset; return (new_isn); } Modified: projects/arpv2_merge_1/sys/dev/acpica/acpi_smbat.c ============================================================================== --- projects/arpv2_merge_1/sys/dev/acpica/acpi_smbat.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/acpica/acpi_smbat.c Sun Dec 14 02:51:17 2008 (r186072) @@ -61,6 +61,23 @@ static int acpi_smbat_get_bst(device_t d ACPI_SERIAL_DECL(smbat, "ACPI Smart Battery"); +SYSCTL_DECL(_debug_acpi); +SYSCTL_NODE(_debug_acpi, OID_AUTO, batt, CTLFLAG_RD, NULL, "Battery debugging"); + +/* On some laptops with smart batteries, enabling battery monitoring + * software causes keystrokes from atkbd to be lost. This has also been + * reported on Linux, and is apparently due to the keyboard and I2C line + * for the battery being routed through the same chip. Whether that's + * accurate or not, adding extra sleeps to the status checking code + * causes the problem to go away. + * + * If you experience that problem, try a value of 10ms and move up + * from there. + */ +static int batt_sleep_ms; +SYSCTL_INT(_debug_acpi_batt, OID_AUTO, batt_sleep_ms, CTLFLAG_RW, &batt_sleep_ms, 0, + "Sleep during battery status updates to prevent keystroke loss."); + static device_method_t acpi_smbat_methods[] = { /* device interface */ DEVMETHOD(device_probe, acpi_smbat_probe), @@ -176,6 +193,9 @@ acpi_smbus_read_2(struct acpi_smbat_soft ACPI_SERIAL_ASSERT(smbat); + if (batt_sleep_ms) + AcpiOsSleep(batt_sleep_ms); + val = addr; error = ACPI_EC_WRITE(sc->ec_dev, sc->sb_base_addr + SMBUS_ADDR, val, 1); @@ -194,6 +214,9 @@ acpi_smbus_read_2(struct acpi_smbat_soft if (error) goto out; + if (batt_sleep_ms) + AcpiOsSleep(batt_sleep_ms); + for (to = SMBUS_TIMEOUT; to != 0; to--) { error = ACPI_EC_READ(sc->ec_dev, sc->sb_base_addr + SMBUS_PRTCL, &val, 1); @@ -239,6 +262,9 @@ acpi_smbus_read_multi_1(struct acpi_smba ACPI_SERIAL_ASSERT(smbat); + if (batt_sleep_ms) + AcpiOsSleep(batt_sleep_ms); + val = addr; error = ACPI_EC_WRITE(sc->ec_dev, sc->sb_base_addr + SMBUS_ADDR, val, 1); @@ -257,6 +283,9 @@ acpi_smbus_read_multi_1(struct acpi_smba if (error) goto out; + if (batt_sleep_ms) + AcpiOsSleep(batt_sleep_ms); + for (to = SMBUS_TIMEOUT; to != 0; to--) { error = ACPI_EC_READ(sc->ec_dev, sc->sb_base_addr + SMBUS_PRTCL, &val, 1); @@ -292,6 +321,9 @@ acpi_smbus_read_multi_1(struct acpi_smba if (len > val) len = val; + if (batt_sleep_ms) + AcpiOsSleep(batt_sleep_ms); + while (len--) { error = ACPI_EC_READ(sc->ec_dev, sc->sb_base_addr + SMBUS_DATA + len, &val, 1); @@ -299,6 +331,8 @@ acpi_smbus_read_multi_1(struct acpi_smba goto out; ptr[len] = val; + if (batt_sleep_ms) + AcpiOsSleep(batt_sleep_ms); } out: Modified: projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah.c ============================================================================== --- projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah.c Sun Dec 14 02:51:17 2008 (r186072) @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: ah.c,v 1.15 2008/11/15 22:15:44 sam Exp $ + * $FreeBSD$ */ #include "opt_ah.h" @@ -32,7 +32,7 @@ OS_SET_DECLARE(ah_chips, struct ath_hal_ const char* ath_hal_probe(uint16_t vendorid, uint16_t devid) { - struct ath_hal_chip **pchip; + struct ath_hal_chip * const *pchip; OS_SET_FOREACH(pchip, ah_chips) { const char *name = (*pchip)->probe(vendorid, devid); @@ -53,7 +53,7 @@ struct ath_hal* ath_hal_attach(uint16_t devid, HAL_SOFTC sc, HAL_BUS_TAG st, HAL_BUS_HANDLE sh, HAL_STATUS *error) { - struct ath_hal_chip **pchip; + struct ath_hal_chip * const *pchip; OS_SET_FOREACH(pchip, ah_chips) { struct ath_hal_chip *chip = *pchip; @@ -88,7 +88,7 @@ OS_SET_DECLARE(ah_rfs, struct ath_hal_rf struct ath_hal_rf * ath_hal_rfprobe(struct ath_hal *ah, HAL_STATUS *ecode) { - struct ath_hal_rf **prf; + struct ath_hal_rf * const *prf; OS_SET_FOREACH(prf, ah_rfs) { struct ath_hal_rf *rf = *prf; Modified: projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_eeprom_v14.c ============================================================================== --- projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_eeprom_v14.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_eeprom_v14.c Sun Dec 14 02:51:17 2008 (r186072) @@ -160,18 +160,6 @@ v14EepromDiag(struct ath_hal *ah, int re return AH_FALSE; } -/* XXX conditionalize by target byte order */ -#ifndef bswap16 -static __inline__ uint16_t -__bswap16(uint16_t _x) -{ - return ((uint16_t)( - (((const uint8_t *)(&_x))[0] ) | - (((const uint8_t *)(&_x))[1]<< 8)) - ); -} -#endif - /* Do structure specific swaps if Eeprom format is non native to host */ static void eepromSwap(struct ar5416eeprom *ee) Modified: projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_eeprom_v3.c ============================================================================== --- projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_eeprom_v3.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_eeprom_v3.c Sun Dec 14 02:51:17 2008 (r186072) @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: ah_eeprom_v3.c,v 1.4 2008/11/27 22:39:42 sam Exp $ + * $FreeBSD$ */ #include "opt_ah.h" @@ -26,9 +26,9 @@ static void getPcdacInterceptsFromPcdacMinMax(HAL_EEPROM *ee, uint16_t pcdacMin, uint16_t pcdacMax, uint16_t *vp) { - const static uint16_t intercepts3[] = + static const uint16_t intercepts3[] = { 0, 5, 10, 20, 30, 50, 70, 85, 90, 95, 100 }; - const static uint16_t intercepts3_2[] = + static const uint16_t intercepts3_2[] = { 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 }; const uint16_t *ip = ee->ee_version < AR_EEPROM_VER3_2 ? intercepts3 : intercepts3_2; Modified: projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_internal.h ============================================================================== --- projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_internal.h Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/ath/ath_hal/ah_internal.h Sun Dec 14 02:51:17 2008 (r186072) @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: ah_internal.h,v 1.21 2008/11/27 22:29:27 sam Exp $ + * $FreeBSD$ */ #ifndef _ATH_AH_INTERAL_H_ #define _ATH_AH_INTERAL_H_ @@ -42,23 +42,6 @@ #define offsetof(type, field) ((size_t)(&((type *)0)->field)) #endif -/* - * Remove const in a way that keeps the compiler happy. - * This works for gcc but may require other magic for - * other compilers (not sure where this should reside). - * Note that uintptr_t is C99. - */ -#ifndef __DECONST -#ifndef _UINTPTR_T -#if AH_WORDSIZE == 64 -typedef unsigned long int uintptr_t; -#else -typedef unsigned int uintptr_t; -#endif -#endif -#define __DECONST(type, var) ((type)(uintptr_t)(const void *)(var)) -#endif - typedef struct { uint16_t start; /* first register */ uint16_t end; /* ending register or zero */ @@ -114,12 +97,12 @@ struct ath_hal_rf { }; #ifndef AH_RF #define AH_RF(_name, _probe, _attach) \ -static struct ath_hal_rf name##_rf = { \ - .name = #_name, \ +static struct ath_hal_rf _name##_rf = { \ + .name = __STRING(_name), \ .probe = _probe, \ .attach = _attach \ }; \ -OS_DATA_SET(ah_rfs, name##_rf) +OS_DATA_SET(ah_rfs, _name##_rf) #endif struct ath_hal_rf *ath_hal_rfprobe(struct ath_hal *ah, HAL_STATUS *ecode); Modified: projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5212/ar5111.c ============================================================================== --- projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5212/ar5111.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5212/ar5111.c Sun Dec 14 02:51:17 2008 (r186072) @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: ar5111.c,v 1.7 2008/11/10 04:08:03 sam Exp $ + * $FreeBSD$ */ #include "opt_ah.h" @@ -90,7 +90,7 @@ ar5111SetChannel(struct ath_hal *ah, HA uint16_t channel5111; /* 11a channel for 5111 */ } CHAN_INFO_2GHZ; - const static CHAN_INFO_2GHZ chan2GHzData[] = { + static const CHAN_INFO_2GHZ chan2GHzData[] = { { 1, 0x46, 96 }, /* 2312 -19 */ { 1, 0x46, 97 }, /* 2317 -18 */ { 1, 0x46, 98 }, /* 2322 -17 */ Modified: projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5312/ar5312.h ============================================================================== --- projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5312/ar5312.h Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5312/ar5312.h Sun Dec 14 02:51:17 2008 (r186072) @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: ar5312.h,v 1.5 2008/11/22 07:37:40 sam Exp $ + * $FreeBSD$ */ #ifndef _ATH_AR5312_H_ #define _ATH_AR5312_H_ @@ -38,8 +38,6 @@ AH_PRIVATE(ah)->ah_devid == AR5212_AR2317_REV1 || \ AH_PRIVATE(ah)->ah_devid == AR5212_AR2317_REV2) -extern struct ath_hal * ar5312Attach(uint16_t devid, HAL_SOFTC sc, - HAL_BUS_TAG st, HAL_BUS_HANDLE sh, HAL_STATUS *status); extern HAL_BOOL ar5312IsInterruptPending(struct ath_hal *ah); /* AR5312 */ Modified: projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5312/ar5312_attach.c ============================================================================== --- projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5312/ar5312_attach.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/ath/ath_hal/ar5312/ar5312_attach.c Sun Dec 14 02:51:17 2008 (r186072) @@ -14,7 +14,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: ar5312_attach.c,v 1.8 2008/11/27 22:30:03 sam Exp $ + * $FreeBSD$ */ #include "opt_ah.h" @@ -318,7 +318,6 @@ ar5312Probe(uint16_t vendorid, uint16_t case AR5212_AR2313_REV8: return "Atheros 2313 WiSoC"; case AR5212_AR2315_REV6: - case AR5212_AR2315_REV6: case AR5212_AR2315_REV7: return "Atheros 2315 WiSoC"; case AR5212_AR2317_REV1: Modified: projects/arpv2_merge_1/sys/dev/hwpmc/hwpmc_mod.c ============================================================================== --- projects/arpv2_merge_1/sys/dev/hwpmc/hwpmc_mod.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/hwpmc/hwpmc_mod.c Sun Dec 14 02:51:17 2008 (r186072) @@ -1863,8 +1863,11 @@ pmc_hook_handler(struct thread *td, int /* * Record a call chain. */ + KASSERT(td == curthread, ("[pmc,%d] td != curthread", + __LINE__)); pmc_capture_user_callchain(PCPU_GET(cpuid), (struct trapframe *) arg); + td->td_pflags &= ~TDP_CALLCHAIN; break; default: @@ -3794,30 +3797,28 @@ pmc_syscall_handler(struct thread *td, v */ static void -pmc_post_callchain_ast(void) +pmc_post_callchain_callback(void) { struct thread *td; td = curthread; + KASSERT((td->td_pflags & TDP_CALLCHAIN) == 0, + ("[pmc,%d] thread %p already marked for callchain capture", + __LINE__, (void *) td)); + /* - * Mark this thread as needing processing in ast(). - * td->td_pflags will be safe to touch as the process was in - * user space when it was interrupted. + * Mark this thread as needing callchain capture. + * `td->td_pflags' will be safe to touch because this thread + * was in user space when it was interrupted. */ td->td_pflags |= TDP_CALLCHAIN; /* - * Again, since we've entered this function directly from - * userland, `td' is guaranteed to be not locked by this CPU, - * so its safe to try acquire the thread lock even though we - * are executing in an NMI context. We need to acquire this - * lock before touching `td_flags' because other CPUs may be - * in the process of touching this field. - */ - thread_lock(td); - td->td_flags |= TDF_ASTPENDING; - thread_unlock(td); + * Don't let this thread migrate between CPUs until callchain + * capture completes. + */ + sched_pin(); return; } @@ -3869,6 +3870,10 @@ pmc_process_interrupt(int cpu, struct pm (int) (psb->ps_write - psb->ps_samples), (int) (psb->ps_read - psb->ps_samples)); + KASSERT(pm->pm_runcount >= 0, + ("[pmc,%d] pm=%p runcount %d", __LINE__, (void *) pm, + pm->pm_runcount)); + atomic_add_rel_32(&pm->pm_runcount, 1); /* hold onto PMC */ ps->ps_pmc = pm; if ((td = curthread) && td->td_proc) @@ -3876,6 +3881,7 @@ pmc_process_interrupt(int cpu, struct pm else ps->ps_pid = -1; ps->ps_cpu = cpu; + ps->ps_td = td; ps->ps_flags = inuserspace ? PMC_CC_F_USERSPACE : 0; callchaindepth = (pm->pm_flags & PMC_F_CALLCHAIN) ? @@ -3893,7 +3899,7 @@ pmc_process_interrupt(int cpu, struct pm pmc_save_kernel_callchain(ps->ps_pc, callchaindepth, tf); else { - pmc_post_callchain_ast(); + pmc_post_callchain_callback(); callchaindepth = PMC_SAMPLE_INUSE; } } @@ -3925,20 +3931,41 @@ pmc_capture_user_callchain(int cpu, stru { int i; struct pmc *pm; + struct thread *td; struct pmc_sample *ps; struct pmc_samplebuffer *psb; +#ifdef INVARIANTS + int ncallchains; +#endif + + sched_unpin(); /* Can migrate safely now. */ psb = pmc_pcpu[cpu]->pc_sb; + td = curthread; + + KASSERT(td->td_pflags & TDP_CALLCHAIN, + ("[pmc,%d] Retrieving callchain for thread that doesn't want it", + __LINE__)); + +#ifdef INVARIANTS + ncallchains = 0; +#endif /* * Iterate through all deferred callchain requests. */ - for (i = 0; i < pmc_nsamples; i++) { + ps = psb->ps_samples; + for (i = 0; i < pmc_nsamples; i++, ps++) { - ps = &psb->ps_samples[i]; if (ps->ps_nsamples != PMC_SAMPLE_INUSE) continue; + if (ps->ps_td != td) + continue; + + KASSERT(ps->ps_cpu == cpu, + ("[pmc,%d] cpu mismatch ps_cpu=%d pcpu=%d", __LINE__, + ps->ps_cpu, PCPU_GET(cpuid))); pm = ps->ps_pmc; @@ -3946,14 +3973,26 @@ pmc_capture_user_callchain(int cpu, stru ("[pmc,%d] Retrieving callchain for PMC that doesn't " "want it", __LINE__)); + KASSERT(pm->pm_runcount > 0, + ("[pmc,%d] runcount %d", __LINE__, pm->pm_runcount)); + /* * Retrieve the callchain and mark the sample buffer * as 'processable' by the timer tick sweep code. */ ps->ps_nsamples = pmc_save_user_callchain(ps->ps_pc, pmc_callchaindepth, tf); + +#ifdef INVARIANTS + ncallchains++; +#endif + } + KASSERT(ncallchains > 0, + ("[pmc,%d] cpu %d didn't find a sample to collect", __LINE__, + cpu)); + return; } @@ -3991,6 +4030,11 @@ pmc_process_samples(int cpu) } pm = ps->ps_pmc; + + KASSERT(pm->pm_runcount > 0, + ("[pmc,%d] pm=%p runcount %d", __LINE__, (void *) pm, + pm->pm_runcount)); + po = pm->pm_owner; KASSERT(PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm)), Modified: projects/arpv2_merge_1/sys/dev/mfi/mfi_pci.c ============================================================================== --- projects/arpv2_merge_1/sys/dev/mfi/mfi_pci.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/mfi/mfi_pci.c Sun Dec 14 02:51:17 2008 (r186072) @@ -114,18 +114,21 @@ struct mfi_ident { int flags; const char *desc; } mfi_identifiers[] = { - {0x1000, 0x0411, 0xffff, 0xffff, MFI_FLAGS_1064R, "LSI MegaSAS 1064R"}, /* Brocton IOP */ - {0x1000, 0x0413, 0xffff, 0xffff, MFI_FLAGS_1064R, "LSI MegaSAS 1064R"}, /* Verde ZCR */ - {0x1028, 0x0015, 0xffff, 0xffff, MFI_FLAGS_1064R, "Dell PERC 5/i"}, {0x1000, 0x0060, 0x1028, 0xffff, MFI_FLAGS_1078, "Dell PERC 6"}, - {0x1000, 0x0060, 0xffff, 0xffff, MFI_FLAGS_1078, "LSI MegaSAS 1078"}, + {0x1000, 0x0060, 0xffff, 0xffff, MFI_FLAGS_1078, "LSI MegaSAS 1078"}, + {0x1000, 0x0078, 0xffff, 0xffff, MFI_FLAGS_GEN2, "LSI MegaSAS Gen2"}, {0x1000, 0x0079, 0x1028, 0x1f15, MFI_FLAGS_GEN2, "Dell PERC H800 Adapter"}, {0x1000, 0x0079, 0x1028, 0x1f16, MFI_FLAGS_GEN2, "Dell PERC H700 Adapter"}, {0x1000, 0x0079, 0x1028, 0x1f17, MFI_FLAGS_GEN2, "Dell PERC H700 Integrated"}, {0x1000, 0x0079, 0x1028, 0x1f18, MFI_FLAGS_GEN2, "Dell PERC H700 Modular"}, - {0x1000, 0x0078, 0xffff, 0xffff, MFI_FLAGS_GEN2, "LSI MegaSAS Gen2"}, + {0x1000, 0x0079, 0x1028, 0x1f19, MFI_FLAGS_GEN2, "Dell PERC H700"}, + {0x1000, 0x0079, 0x1028, 0x1f1b, MFI_FLAGS_GEN2, "Dell PERC H800"}, + {0x1000, 0x0079, 0x1028, 0xffff, MFI_FLAGS_GEN2, "Dell PERC H700/H800"}, {0x1000, 0x0079, 0xffff, 0xffff, MFI_FLAGS_GEN2, "LSI MegaSAS Gen2"}, {0x1000, 0x007c, 0xffff, 0xffff, MFI_FLAGS_1078, "LSI MegaSAS 1078"}, + {0x1000, 0x0411, 0xffff, 0xffff, MFI_FLAGS_1064R, "LSI MegaSAS 1064R"}, /* Brocton IOP */ + {0x1000, 0x0413, 0xffff, 0xffff, MFI_FLAGS_1064R, "LSI MegaSAS 1064R"}, /* Verde ZCR */ + {0x1028, 0x0015, 0xffff, 0xffff, MFI_FLAGS_1064R, "Dell PERC 5/i"}, {0, 0, 0, 0, 0, NULL} }; Modified: projects/arpv2_merge_1/sys/dev/snp/snp.c ============================================================================== --- projects/arpv2_merge_1/sys/dev/snp/snp.c Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/snp/snp.c Sun Dec 14 02:51:17 2008 (r186072) @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include <sys/malloc.h> #include <sys/module.h> #include <sys/poll.h> +#include <sys/proc.h> #include <sys/snoop.h> #include <sys/sx.h> #include <sys/systm.h> @@ -246,7 +247,7 @@ snp_ioctl(struct cdev *dev, u_long cmd, sx_xunlock(&snp_register_lock); return (EBUSY); } - error = ttyhook_register(&ss->snp_tty, td, *(int *)data, + error = ttyhook_register(&ss->snp_tty, td->td_proc, *(int *)data, &snp_hook, ss); sx_xunlock(&snp_register_lock); if (error != 0) Modified: projects/arpv2_merge_1/sys/dev/usb/usbdevs ============================================================================== --- projects/arpv2_merge_1/sys/dev/usb/usbdevs Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/usb/usbdevs Sun Dec 14 02:51:17 2008 (r186072) @@ -205,7 +205,7 @@ vendor ELAN 0x04f3 Elan vendor NEWNEX 0x04f7 Newnex vendor BROTHER 0x04f9 Brother Industries vendor DALLAS 0x04fa Dallas Semiconductor -vendor SUNPLUS 0x04fc Sunplus +vendor AIPTEK2 0x04fc AIPTEK International vendor PFU 0x04fe PFU vendor FUJIKURA 0x0501 Fujikura/DDK vendor ACER 0x0502 Acer @@ -503,7 +503,7 @@ vendor ADDONICS2 0x0bf6 Addonics Technol vendor FSC 0x0bf8 Fujitsu Siemens Computers vendor AGATE 0x0c08 Agate Technologies vendor DMI 0x0c0b DMI -vendor MICRODIA 0x0c45 Chicony +vendor CHICONY2 0x0c45 Chicony vendor SEALEVEL 0x0c52 Sealevel System vendor LUWEN 0x0c76 Luwen vendor KYOCERA2 0x0c88 Kyocera Wireless Corp. @@ -1688,9 +1688,6 @@ product MSI RT2573_2 0x6877 RT2573 product MSI RT2573_3 0xa861 RT2573 product MSI RT2573_4 0xa874 RT2573 -/* Microdia products */ -product MICRODIA TWINKLECAM 0x600d TwinkleCam USB camera - /* Microsoft products */ product MICROSOFT SIDEPREC 0x0008 SideWinder Precision Pro product MICROSOFT INTELLIMOUSE 0x0009 IntelliMouse Modified: projects/arpv2_merge_1/sys/dev/usb2/include/usb2_devid.h ============================================================================== --- projects/arpv2_merge_1/sys/dev/usb2/include/usb2_devid.h Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/usb2/include/usb2_devid.h Sun Dec 14 02:51:17 2008 (r186072) @@ -4,7 +4,7 @@ * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. * * generated from: - * FreeBSD: src/sys/dev/usb/usbdevs,v 1.383 2008/11/12 13:58:59 keramida Exp + * FreeBSD: head/sys/dev/usb/usbdevs 185998 2008-12-12 18:34:27Z thompsa */ /* $NetBSD: usbdevs,v 1.392 2004/12/29 08:38:44 imp Exp $ */ @@ -212,7 +212,7 @@ #define USB_VENDOR_NEWNEX 0x04f7 /* Newnex */ #define USB_VENDOR_BROTHER 0x04f9 /* Brother Industries */ #define USB_VENDOR_DALLAS 0x04fa /* Dallas Semiconductor */ -#define USB_VENDOR_SUNPLUS 0x04fc /* Sunplus */ +#define USB_VENDOR_AIPTEK2 0x04fc /* AIPTEK International */ #define USB_VENDOR_PFU 0x04fe /* PFU */ #define USB_VENDOR_FUJIKURA 0x0501 /* Fujikura/DDK */ #define USB_VENDOR_ACER 0x0502 /* Acer */ @@ -510,7 +510,7 @@ #define USB_VENDOR_FSC 0x0bf8 /* Fujitsu Siemens Computers */ #define USB_VENDOR_AGATE 0x0c08 /* Agate Technologies */ #define USB_VENDOR_DMI 0x0c0b /* DMI */ -#define USB_VENDOR_MICRODIA 0x0c45 /* Chicony */ +#define USB_VENDOR_CHICONY2 0x0c45 /* Chicony */ #define USB_VENDOR_SEALEVEL 0x0c52 /* Sealevel System */ #define USB_VENDOR_LUWEN 0x0c76 /* Luwen */ #define USB_VENDOR_KYOCERA2 0x0c88 /* Kyocera Wireless Corp. */ @@ -627,6 +627,7 @@ #define USB_VENDOR_QCOM 0x18e8 /* Qcom */ #define USB_VENDOR_LINKSYS3 0x1915 /* Linksys */ #define USB_VENDOR_QUALCOMMINC 0x19d2 /* Qualcomm, Incorporated */ +#define USB_VENDOR_STELERA 0x1a8d /* Stelera Wireless */ #define USB_VENDOR_DLINK 0x2001 /* D-Link */ #define USB_VENDOR_PLANEX2 0x2019 /* Planex Communications */ #define USB_VENDOR_ERICSSON 0x2282 /* Ericsson */ @@ -802,7 +803,7 @@ /* AIPTEK products */ #define USB_PRODUCT_AIPTEK_POCKETCAM3M 0x2011 /* PocketCAM 3Mega */ -#define USB_PRODUCT_SUNPLUS_PENCAM_MEGA_1_3 0x504a /* PenCam Mega 1.3 */ +#define USB_PRODUCT_AIPTEK2_PENCAM_MEGA_1_3 0x504a /* PenCam Mega 1.3 */ /* AirPrime products */ #define USB_PRODUCT_AIRPRIME_PC5220 0x0112 /* CDMA Wireless PC Card */ @@ -1014,7 +1015,7 @@ /* Chicony products */ #define USB_PRODUCT_CHICONY_KB8933 0x0001 /* KB-8933 keyboard */ -#define USB_PRODUCT_MICRODIA_TWINKLECAM 0x600d /* TwinkleCam USB camera */ +#define USB_PRODUCT_CHICONY2_TWINKLECAM 0x600d /* TwinkleCam USB camera */ /* CH Products */ #define USB_PRODUCT_CHPRODUCTS_PROTHROTTLE 0x00f1 /* Pro Throttle */ @@ -1436,6 +1437,7 @@ #define USB_PRODUCT_HP_OJ4215 0x3d11 /* OfficeJet 4215 */ #define USB_PRODUCT_HP_HN210E 0x811c /* Ethernet HN210E */ #define USB_PRODUCT_HP2_C500 0x6002 /* PhotoSmart C500 */ +#define USB_PRODUCT_HP_HS2300 0x1e1d /* hs2300 HSDPA (aka MC8775) */ /* HTC products */ #define USB_PRODUCT_HTC_WINMOBILE 0x00ce /* HTC USB Sync */ @@ -1693,9 +1695,6 @@ #define USB_PRODUCT_MSI_RT2573_3 0xa861 /* RT2573 */ #define USB_PRODUCT_MSI_RT2573_4 0xa874 /* RT2573 */ -/* Microdia products */ -#define USB_PRODUCT_MICRODIA_TWINKLECAM 0x600d /* TwinkleCam USB camera */ - /* Microsoft products */ #define USB_PRODUCT_MICROSOFT_SIDEPREC 0x0008 /* SideWinder Precision Pro */ #define USB_PRODUCT_MICROSOFT_INTELLIMOUSE 0x0009 /* IntelliMouse */ @@ -1882,6 +1881,7 @@ #define USB_PRODUCT_OPTION_GT3G 0x6000 /* GlobeTrotter 3G datacard */ #define USB_PRODUCT_OPTION_GT3GQUAD 0x6300 /* GlobeTrotter 3G QUAD datacard */ #define USB_PRODUCT_OPTION_GT3GPLUS 0x6600 /* GlobeTrotter 3G+ datacard */ +#define USB_PRODUCT_OPTION_GTICON322 0xd033 /* GlobeTrotter Icon322 storage */ #define USB_PRODUCT_OPTION_GTMAX36 0x6701 /* GlobeTrotter Max 3.6 Modem */ #define USB_PRODUCT_OPTION_GTMAXHSUPA 0x7001 /* GlobeTrotter HSUPA */ @@ -2131,12 +2131,14 @@ #define USB_PRODUCT_SIERRA_AC595U 0x0120 /* Sierra Wireless AirCard 595U */ #define USB_PRODUCT_SIERRA_AC597E 0x0021 /* Sierra Wireless AirCard 597E */ #define USB_PRODUCT_SIERRA_C597 0x0023 /* Sierra Wireless Compass 597 */ +#define USB_PRODUCT_SIERRA_AC875 0x6820 /* Sierra Wireless AirCard 875 */ #define USB_PRODUCT_SIERRA_AC880 0x6850 /* Sierra Wireless AirCard 880 */ #define USB_PRODUCT_SIERRA_AC881 0x6851 /* Sierra Wireless AirCard 881 */ #define USB_PRODUCT_SIERRA_AC880E 0x6852 /* Sierra Wireless AirCard 880E */ #define USB_PRODUCT_SIERRA_AC881E 0x6853 /* Sierra Wireless AirCard 881E */ #define USB_PRODUCT_SIERRA_AC880U 0x6855 /* Sierra Wireless AirCard 880U */ #define USB_PRODUCT_SIERRA_AC881U 0x6856 /* Sierra Wireless AirCard 881U */ +#define USB_PRODUCT_SIERRA_AC885U 0x6880 /* Sierra Wireless AirCard 885U */ #define USB_PRODUCT_SIERRA_EM5625 0x0017 /* EM5625 */ #define USB_PRODUCT_SIERRA_MC5720 0x0218 /* MC5720 Wireless Modem */ #define USB_PRODUCT_SIERRA_MC5720_2 0x0018 /* MC5720 */ @@ -2259,6 +2261,10 @@ /* Sphairon Access Systems GmbH products */ #define USB_PRODUCT_SPHAIRON_UB801R 0x0110 /* UB801R */ +/* Stelera Wireless products */ +#define USB_PRODUCT_STELERA_ZEROCD 0x1000 /* Zerocd Installer */ +#define USB_PRODUCT_STELERA_C105 0x1002 /* Stelera/Bandrish C105 USB */ + /* STMicroelectronics products */ #define USB_PRODUCT_STMICRO_BIOCPU 0x2016 /* Biometric Coprocessor */ #define USB_PRODUCT_STMICRO_COMMUNICATOR 0x7554 /* USB Communicator */ Modified: projects/arpv2_merge_1/sys/dev/usb2/include/usb2_devtable.h ============================================================================== --- projects/arpv2_merge_1/sys/dev/usb2/include/usb2_devtable.h Sun Dec 14 02:44:58 2008 (r186071) +++ projects/arpv2_merge_1/sys/dev/usb2/include/usb2_devtable.h Sun Dec 14 02:51:17 2008 (r186072) @@ -4,7 +4,7 @@ * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. * * generated from: - * FreeBSD: src/sys/dev/usb/usbdevs,v 1.383 2008/11/12 13:58:59 keramida Exp + * FreeBSD: head/sys/dev/usb/usbdevs 185998 2008-12-12 18:34:27Z thompsa */ /* $NetBSD: usbdevs,v 1.392 2004/12/29 08:38:44 imp Exp $ */ @@ -599,9 +599,9 @@ const struct usb_knowndev usb_knowndevs[ "PocketCAM 3Mega", }, { - USB_VENDOR_SUNPLUS, USB_PRODUCT_SUNPLUS_PENCAM_MEGA_1_3, + USB_VENDOR_AIPTEK2, USB_PRODUCT_AIPTEK2_PENCAM_MEGA_1_3, 0, - "Sunplus", + "AIPTEK International", "PenCam Mega 1.3", }, { @@ -1397,7 +1397,7 @@ const struct usb_knowndev usb_knowndevs[ "KB-8933 keyboard", }, { - USB_VENDOR_MICRODIA, USB_PRODUCT_MICRODIA_TWINKLECAM, + USB_VENDOR_CHICONY2, USB_PRODUCT_CHICONY2_TWINKLECAM, 0, "Chicony", "TwinkleCam USB camera", @@ -3125,6 +3125,12 @@ const struct usb_knowndev usb_knowndevs[ "PhotoSmart C500", }, { + USB_VENDOR_HP, USB_PRODUCT_HP_HS2300, + 0, + "Hewlett Packard", + "hs2300 HSDPA (aka MC8775)", *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200812140251.mBE2pHFR047062>