From owner-p4-projects@FreeBSD.ORG Wed Jun 25 18:23:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F380C37B404; Wed, 25 Jun 2003 18:23:08 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8F81637B401 for ; Wed, 25 Jun 2003 18:23:08 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 326AE43FE3 for ; Wed, 25 Jun 2003 18:23:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h5Q1N50U027354 for ; Wed, 25 Jun 2003 18:23:05 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h5Q1N43l027348 for perforce@freebsd.org; Wed, 25 Jun 2003 18:23:04 -0700 (PDT) Date: Wed, 25 Jun 2003 18:23:04 -0700 (PDT) Message-Id: <200306260123.h5Q1N43l027348@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 33676 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Jun 2003 01:23:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=33676 Change 33676 by peter@peter_hammer on 2003/06/25 18:22:37 IFC @33675 Affected files ... .. //depot/projects/hammer/include/paths.h#5 integrate .. //depot/projects/hammer/include/rune.h#3 integrate .. //depot/projects/hammer/lib/libc/locale/setlocale.c#4 integrate .. //depot/projects/hammer/lib/libc/locale/setlocale.h#2 integrate .. //depot/projects/hammer/lib/libc/locale/setrunelocale.c#4 integrate .. //depot/projects/hammer/lib/libc/locale/table.c#2 integrate .. //depot/projects/hammer/lib/libc/stdlib/alloca.3#3 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#20 integrate .. //depot/projects/hammer/sys/dev/ips/ips.c#3 integrate .. //depot/projects/hammer/sys/dev/ips/ips.h#2 integrate .. //depot/projects/hammer/sys/dev/ips/ips_commands.c#3 integrate .. //depot/projects/hammer/sys/dev/ips/ips_pci.c#2 integrate .. //depot/projects/hammer/sys/dev/sym/sym_hipd.c#7 integrate .. //depot/projects/hammer/sys/dev/usb/usbdevs#12 integrate .. //depot/projects/hammer/sys/dev/usb/usbdevs.h#12 integrate .. //depot/projects/hammer/sys/dev/usb/usbdevs_data.h#12 integrate .. //depot/projects/hammer/sys/kern/kern_tc.c#8 integrate .. //depot/projects/hammer/usr.bin/locale/Makefile#3 integrate .. //depot/projects/hammer/usr.bin/locale/locale.c#3 integrate Differences ... ==== //depot/projects/hammer/include/paths.h#5 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)paths.h 8.1 (Berkeley) 6/2/93 - * $FreeBSD: src/include/paths.h,v 1.20 2003/06/20 22:50:33 phk Exp $ + * $FreeBSD: src/include/paths.h,v 1.21 2003/06/25 22:28:33 phantom Exp $ */ #ifndef _PATHS_H_ @@ -62,6 +62,7 @@ #define _PATH_IFCONFIG "/sbin/ifconfig" #define _PATH_KMEM "/dev/kmem" #define _PATH_LIBMAP_CONF "/etc/libmap.conf" +#define _PATH_LOCALE "/usr/share/locale" #define _PATH_LOGIN "/usr/bin/login" #define _PATH_MAILDIR "/var/mail" #define _PATH_MAN "/usr/share/man" ==== //depot/projects/hammer/include/rune.h#3 (text+ko) ==== @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)rune.h 8.1 (Berkeley) 6/27/93 - * $FreeBSD: src/include/rune.h,v 1.3 2002/09/06 04:22:54 mike Exp $ + * $FreeBSD: src/include/rune.h,v 1.4 2003/06/25 22:28:33 phantom Exp $ */ #ifndef _RUNE_H_ @@ -48,8 +48,6 @@ typedef __rune_t rune_t; #endif -#define _PATH_LOCALE "/usr/share/locale" - #define _INVALID_RUNE _CurrentRuneLocale->invalid_rune #define __sgetrune _CurrentRuneLocale->sgetrune ==== //depot/projects/hammer/lib/libc/locale/setlocale.c#4 (text+ko) ==== @@ -39,14 +39,14 @@ static char sccsid[] = "@(#)setlocale.c 8.1 (Berkeley) 7/4/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/setlocale.c,v 1.43 2003/05/01 19:03:13 nectar Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/setlocale.c,v 1.46 2003/06/25 22:42:33 phantom Exp $"); #include #include #include #include #include -#include +#include /* for _PATH_LOCALE */ #include #include #include @@ -85,6 +85,11 @@ }; /* + * Path to locale storage directory + */ +char *_PathLocale; + +/* * The locales we are going to try and load */ static char new_categories[_LC_LAST][ENCODING_LEN + 1]; @@ -257,6 +262,7 @@ char *new = new_categories[category]; char *old = current_categories[category]; int (*func)(const char *); + int saved_errno; if ((new[0] == '.' && (new[1] == '\0' || (new[1] == '.' && new[2] == '\0'))) || @@ -265,27 +271,11 @@ return (NULL); } - if (_PathLocale == NULL) { - char *p = getenv("PATH_LOCALE"); - - if (p != NULL -#ifndef __NETBSD_SYSCALLS - && !issetugid() -#endif - ) { - if (strlen(p) + 1/*"/"*/ + ENCODING_LEN + - 1/*"/"*/ + CATEGORY_LEN >= PATH_MAX) { - errno = ENAMETOOLONG; - return (NULL); - } - _PathLocale = strdup(p); - if (_PathLocale == NULL) { - errno = ENOMEM; - return (NULL); - } - } else - _PathLocale = _PATH_LOCALE; - } + saved_errno = errno; + errno = __detect_path_locale(); + if (errno != 0) + return (NULL); + errno = saved_errno; switch (category) { case LC_CTYPE: @@ -322,3 +312,29 @@ return (NULL); } +/* + * Detect locale storage location and store its value to _PathLocale variable + */ +int +__detect_path_locale(void) +{ + if (_PathLocale == NULL) { + char *p = getenv("PATH_LOCALE"); + + if (p != NULL +#ifndef __NETBSD_SYSCALLS + && !issetugid() +#endif + ) { + if (strlen(p) + 1/*"/"*/ + ENCODING_LEN + + 1/*"/"*/ + CATEGORY_LEN >= PATH_MAX) + return (ENAMETOOLONG); + _PathLocale = strdup(p); + if (_PathLocale == NULL) + return (errno == 0 ? ENOMEM : errno); + } else + _PathLocale = _PATH_LOCALE; + } + return (0); +} + ==== //depot/projects/hammer/lib/libc/locale/setlocale.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libc/locale/setlocale.h,v 1.4 2001/12/20 18:28:52 phantom Exp $ + * $FreeBSD: src/lib/libc/locale/setlocale.h,v 1.5 2003/06/25 22:42:33 phantom Exp $ */ #ifndef _SETLOCALE_H_ @@ -34,4 +34,6 @@ extern char *_PathLocale; +int __detect_path_locale(void); + #endif /* !_SETLOCALE_H_ */ ==== //depot/projects/hammer/lib/libc/locale/setrunelocale.c#4 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/setrunelocale.c,v 1.27 2003/06/01 15:30:56 ache Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/setrunelocale.c,v 1.28 2003/06/25 22:42:33 phantom Exp $"); #include #include @@ -95,23 +95,10 @@ /* * Slurp the locale file into the cache. */ - if (_PathLocale == NULL) { - char *p = getenv("PATH_LOCALE"); + ret = __detect_path_locale(); + if (ret != 0) + return (ret); - if (p != NULL -#ifndef __NETBSD_SYSCALLS - && !issetugid() -#endif - ) { - if (strlen(p) + 1/*"/"*/ + ENCODING_LEN + - 1/*"/"*/ + CATEGORY_LEN >= PATH_MAX) - return (ENAMETOOLONG); - _PathLocale = strdup(p); - if (_PathLocale == NULL) - return (errno == 0 ? ENOMEM : errno); - } else - _PathLocale = _PATH_LOCALE; - } /* Range checking not needed, encoding length already checked above */ (void) strcpy(name, _PathLocale); (void) strcat(name, "/"); ==== //depot/projects/hammer/lib/libc/locale/table.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)table.c 8.1 (Berkeley) 6/27/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/table.c,v 1.16 2002/03/22 21:52:18 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/table.c,v 1.17 2003/06/25 22:34:13 phantom Exp $"); #include #include @@ -255,4 +255,3 @@ int __mb_cur_max = 1; -char *_PathLocale; ==== //depot/projects/hammer/lib/libc/stdlib/alloca.3#3 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)alloca.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/stdlib/alloca.3,v 1.9 2003/06/25 19:18:44 obrien Exp $ +.\" $FreeBSD: src/lib/libc/stdlib/alloca.3,v 1.10 2003/06/25 21:31:43 obrien Exp $ .\" .Dd June 4, 1993 .Dt ALLOCA 3 @@ -66,12 +66,6 @@ .Xr getpagesize 3 , .Xr malloc 3 , .Xr realloc 3 -.Sh BUGS -The -.Fn alloca -function -is machine and compiler dependent; -its use is discouraged. .Sh HISTORY The .Fn alloca @@ -81,3 +75,9 @@ .\" The function appeared in 32v, pwb and pwb.2 and in 3bsd 4bsd .\" The first man page (or link to a man page that I can find at the .\" moment is 4.3... +.Sh BUGS +The +.Fn alloca +function +is machine and compiler dependent; +its use is discouraged. ==== //depot/projects/hammer/sys/amd64/amd64/pmap.c#20 (text+ko) ==== @@ -39,7 +39,7 @@ * SUCH DAMAGE. * * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.416 2003/06/23 06:10:52 alc Exp $ + * $FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.417 2003/06/26 01:04:31 peter Exp $ */ /*- * Copyright (c) 2003 Networks Associates Technology, Inc. @@ -492,7 +492,7 @@ va = virtual_avail; pte = vtopte(va); - /* + /* * CMAP1 is only used for the memory test. */ SYSMAP(caddr_t, CMAP1, CADDR1, 1) @@ -2900,7 +2900,7 @@ pt_entry_t *pte; /* If we gave a direct map region in pmap_mapdev, do nothing */ - if (va >= DMAP_MIN_ADDRESS && va < DMAP_MAX_ADDRESS) + if (va >= DMAP_MIN_ADDRESS && va < DMAP_MAX_ADDRESS) return; base = va & PG_FRAME; offset = va & PAGE_MASK; ==== //depot/projects/hammer/sys/dev/ips/ips.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ips/ips.c,v 1.1 2003/05/11 06:36:49 scottl Exp $ + * $FreeBSD: src/sys/dev/ips/ips.c,v 1.2 2003/06/26 00:03:58 scottl Exp $ */ @@ -322,6 +322,7 @@ /* check card and initialize it */ int ips_adapter_init(ips_softc_t *sc) { + int i; DEVICE_PRINTF(1,sc->dev, "initializing\n"); if (bus_dma_tag_create( /* parent */ sc->adapter_dmatag, /* alignemnt */ 1, @@ -359,13 +360,18 @@ can handle */ sc->max_cmds = 1; ips_cmdqueue_init(sc); + callout_handle_init(&sc->timer); if(sc->ips_adapter_reinit(sc, 0)) goto error; mtx_init(&sc->cmd_mtx, "ips command mutex", NULL, MTX_DEF); - if(ips_get_adapter_info(sc) || ips_get_drive_info(sc)){ - device_printf(sc->dev, "failed to get configuration data from device\n"); + if ((i = ips_get_adapter_info(sc)) != 0) { + device_printf(sc->dev, "failed to get adapter configuration data from device (%d)\n", i); + goto error; + } + if ((i = ips_get_drive_info(sc)) != 0) { + device_printf(sc->dev, "failed to get drive configuration data from device (%d)\n", i); goto error; } ips_update_nvram(sc); /* no error check as failure doesn't matter */ ==== //depot/projects/hammer/sys/dev/ips/ips.h#2 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ips/ips.h,v 1.1 2003/05/11 06:36:49 scottl Exp $ + * $FreeBSD: src/sys/dev/ips/ips.h,v 1.2 2003/06/26 00:03:59 scottl Exp $ */ @@ -343,7 +343,8 @@ typedef struct ips_softc{ struct resource * iores; struct resource * irqres; - int state; + int configured; + int state; int iotype; int rid; int irqrid; ==== //depot/projects/hammer/sys/dev/ips/ips_commands.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ips/ips_commands.c,v 1.1 2003/05/11 06:36:49 scottl Exp $ + * $FreeBSD: src/sys/dev/ips/ips_commands.c,v 1.2 2003/06/26 00:03:59 scottl Exp $ */ @@ -266,7 +266,7 @@ { int error = 0; ips_cmd_status_t *status; - status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT); + status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT|M_ZERO); if(!status) return ENOMEM; if(ips_get_free_cmd(sc, ips_send_adapter_info_cmd, status, @@ -275,7 +275,7 @@ free(status, M_DEVBUF); return ENXIO; } - if(COMMAND_ERROR(status)){ + if (COMMAND_ERROR(status)){ error = ENXIO; } free(status, M_DEVBUF); @@ -372,7 +372,7 @@ { int error = 0; ips_cmd_status_t *status; - status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT); + status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT|M_ZERO); if(!status) return ENOMEM; if(ips_get_free_cmd(sc, ips_send_drive_info_cmd, status, @@ -415,7 +415,7 @@ int ips_flush_cache(ips_softc_t *sc) { ips_cmd_status_t *status; - status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT); + status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT|M_ZERO); if(!status) return ENOMEM; device_printf(sc->dev, "flushing cache\n"); @@ -534,7 +534,7 @@ int ips_update_nvram(ips_softc_t *sc) { ips_cmd_status_t *status; - status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT); + status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT|M_ZERO); if(!status) return ENOMEM; if(ips_get_free_cmd(sc, ips_read_nvram, status, IPS_NOWAIT_FLAG)){ @@ -602,7 +602,7 @@ int ips_clear_adapter(ips_softc_t *sc) { ips_cmd_status_t *status; - status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT); + status = malloc(sizeof(ips_cmd_status_t), M_DEVBUF, M_NOWAIT|M_ZERO); if(!status) return ENOMEM; device_printf(sc->dev, "syncing config\n"); ==== //depot/projects/hammer/sys/dev/ips/ips_pci.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ips/ips_pci.c,v 1.1 2003/05/11 06:36:49 scottl Exp $ + * $FreeBSD: src/sys/dev/ips/ips_pci.c,v 1.2 2003/06/26 00:03:59 scottl Exp $ */ @@ -50,8 +50,17 @@ static int ips_pci_attach(device_t dev) { u_int32_t command; + int tval; ips_softc_t *sc; + + tval = 0; + if (resource_int_value(device_get_name(dev), device_get_unit(dev), + "disable", &tval) == 0 && tval) { + device_printf(dev, "device is disabled\n"); + /* but return 0 so the !$)$)*!$*) unit isn't reused */ + return (0); + } DEVICE_PRINTF(1, dev, "in attach.\n"); sc = (ips_softc_t *)device_get_softc(dev); if(!sc){ @@ -125,6 +134,7 @@ } if(ips_adapter_init(sc)) goto error; + sc->configured = 1; return 0; error: ips_pci_free(sc); @@ -141,6 +151,7 @@ bus_release_resource(sc->dev, SYS_RES_IRQ, sc->irqrid, sc->irqres); if(sc->iores) bus_release_resource(sc->dev, sc->iotype, sc->rid, sc->iores); + sc->configured = 0; return 0; } @@ -149,18 +160,23 @@ ips_softc_t *sc; DEVICE_PRINTF(1, dev, "detaching ServeRaid\n"); sc = (ips_softc_t *) device_get_softc(dev); - ips_flush_cache(sc); - if(ips_adapter_free(sc)) - return EBUSY; - ips_pci_free(sc); - mtx_destroy(&sc->cmd_mtx); + if (sc->configured) { + sc->configured = 0; + ips_flush_cache(sc); + if(ips_adapter_free(sc)) + return EBUSY; + ips_pci_free(sc); + mtx_destroy(&sc->cmd_mtx); + } return 0; } static int ips_pci_shutdown(device_t dev) { ips_softc_t *sc = (ips_softc_t *) device_get_softc(dev); - ips_flush_cache(sc); + if (sc->configured) { + ips_flush_cache(sc); + } return 0; } ==== //depot/projects/hammer/sys/dev/sym/sym_hipd.c#7 (text+ko) ==== @@ -55,7 +55,7 @@ * SUCH DAMAGE. */ -/* $FreeBSD: src/sys/dev/sym/sym_hipd.c,v 1.41 2003/06/14 22:17:41 njl Exp $ */ +/* $FreeBSD: src/sys/dev/sym/sym_hipd.c,v 1.42 2003/06/26 01:10:24 peter Exp $ */ #define SYM_DRIVER_NAME "sym-1.6.5-20000902" ==== //depot/projects/hammer/sys/dev/usb/usbdevs#12 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/sys/dev/usb/usbdevs,v 1.126 2003/06/13 11:20:26 joe Exp $ +$FreeBSD: src/sys/dev/usb/usbdevs,v 1.127 2003/06/25 22:50:57 joe Exp $ /* * Copyright (c) 1998, 1999, 2000 The NetBSD Foundation, Inc. @@ -267,6 +267,7 @@ vendor COREGA 0x07aa Corega vendor FREECOM 0x07ab Freecom vendor MICROTECH 0x07af Microtech +vendor GENERALINSTMNTS 0x07b2 General Instruments (Motorola) vendor OLYMPUS 0x07b4 Olympus vendor ABOCOM 0x07b8 AboCom Systems vendor KEISOKUGIKEN 0x07c1 Keisokugiken @@ -494,9 +495,11 @@ product BTC BTC7932 0x6782 Keyboard with mouse port /* Canon, Inc. products */ -product CANON N656U 0x2206 CANOSCAN N656U +product CANON N656U 0x2206 CanoScan N656U +product CANON N1240U 0x220e CanoScan N1240U product CANON S10 0x3041 PowerShot S10 product CANON S100 0x3045 PowerShot S100 +product CANON S200 0x3065 PowerShot S200 /* CATC products */ product CATC NETMATE 0x000a Netmate ethernet adapter @@ -607,8 +610,8 @@ product EPSON 1600 0x0107 Expression 1600 scanner product EPSON 1640 0x010a Perfection 1640SU scanner product EPSON 1240 0x010b Perfection 1240U / 1240Photo scanner +product EPSON 640U 0x010c Perfection 640U scanner product EPSON 1250 0x010f Perfection 1250U / 1250Photo scanner -product EPSON 640U 0x010c Perfection 640U scanner product EPSON 1650 0x0110 Perfection 1650 scanner product EPSON GT9700F 0x0112 GT-9700F scanner product EPSON 1260 0x011d Perfection 1260 scanner @@ -645,6 +648,9 @@ /* Fujitsu protducts */ product FUJITSU AH_F401U 0x105b AH-F401U Air H device +/* General Instruments (Motorola) products */ +product GENERALINSTMNTS SB5100 0x5100 SURFboard SB5100 Cable modem + /* Genesys Logic products */ product GENESYS GL650 0x0604 GL650 Hub product GENESYS GL641USB 0x0700 GL641USB CompactFlash Card Reader @@ -815,6 +821,7 @@ product LOGITECH WMJOY 0xc281 WingMan Force joystick product LOGITECH RK53 0xc501 Cordless mouse product LOGITECH RB6 0xc503 Cordless keyboard +product LOGITECH MX700 0xc506 Cordless optical mouse product LOGITECH QUICKCAMPRO2 0xd001 QuickCam Pro /* Lucent products */ @@ -848,8 +855,9 @@ product MICROSOFT NATURALKBD 0x000b Natural Keyboard Elite product MICROSOFT DDS80 0x0014 Digital Sound System 80 product MICROSOFT SIDEWINDER 0x001a Sidewinder Precision Racing Wheel +product MICROSOFT INETPRO 0x001c Internet Keyboard Pro product MICROSOFT INTELLIEYE 0x0025 IntelliEye mouse -product MICROSOFT INETPRO 0x002b Internet Keyboard Pro +product MICROSOFT INETPRO2 0x002b Internet Keyboard Pro /* Microtech products */ product MICROTECH SCSIDB25 0x0004 USB-SCSI-DB25 @@ -1039,6 +1047,7 @@ product SHUTTLE EUSCSI_B 0x000b eUSCSI Bridge product SHUTTLE EUSCSI_C 0x000c eUSCSI Bridge product SHUTTLE CDRW 0x0101 CD-RW Device +product SHUTTLE EUSBORCA 0x0325 eUSB ORCA Quad Reader /* Siemens products */ product SIEMENS SPEEDSTREAM 0x1001 SpeedStream USB @@ -1156,6 +1165,7 @@ product WACOM CT0405U 0x0000 CT-0405-U Tablet product WACOM GRAPHIRE 0x0010 Graphire product WACOM INTUOSA5 0x0021 Intuos A5 +product WACOM GD0912U 0x0022 Intuos 9x12 Graphics Tablet /* Xirlink products */ product XIRLINK PCCAM 0x8080 IBM PC Camera ==== //depot/projects/hammer/sys/dev/usb/usbdevs.h#12 (text+ko) ==== @@ -1,10 +1,10 @@ -/* $FreeBSD: src/sys/dev/usb/usbdevs.h,v 1.135 2003/06/13 11:24:45 joe Exp $ */ +/* $FreeBSD: src/sys/dev/usb/usbdevs.h,v 1.136 2003/06/25 22:53:46 joe Exp $ */ /* * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. * * generated from: - * FreeBSD: src/sys/dev/usb/usbdevs,v 1.126 2003/06/13 11:20:26 joe Exp + * FreeBSD: src/sys/dev/usb/usbdevs,v 1.127 2003/06/25 22:50:57 joe Exp */ /* @@ -274,6 +274,7 @@ #define USB_VENDOR_COREGA 0x07aa /* Corega */ #define USB_VENDOR_FREECOM 0x07ab /* Freecom */ #define USB_VENDOR_MICROTECH 0x07af /* Microtech */ +#define USB_VENDOR_GENERALINSTMNTS 0x07b2 /* General Instruments (Motorola) */ #define USB_VENDOR_OLYMPUS 0x07b4 /* Olympus */ #define USB_VENDOR_ABOCOM 0x07b8 /* AboCom Systems */ #define USB_VENDOR_KEISOKUGIKEN 0x07c1 /* Keisokugiken */ @@ -501,9 +502,11 @@ #define USB_PRODUCT_BTC_BTC7932 0x6782 /* Keyboard with mouse port */ /* Canon, Inc. products */ -#define USB_PRODUCT_CANON_N656U 0x2206 /* CANOSCAN N656U */ +#define USB_PRODUCT_CANON_N656U 0x2206 /* CanoScan N656U */ +#define USB_PRODUCT_CANON_N1240U 0x220e /* CanoScan N1240U */ #define USB_PRODUCT_CANON_S10 0x3041 /* PowerShot S10 */ #define USB_PRODUCT_CANON_S100 0x3045 /* PowerShot S100 */ +#define USB_PRODUCT_CANON_S200 0x3065 /* PowerShot S200 */ /* CATC products */ #define USB_PRODUCT_CATC_NETMATE 0x000a /* Netmate ethernet adapter */ @@ -614,8 +617,8 @@ #define USB_PRODUCT_EPSON_1600 0x0107 /* Expression 1600 scanner */ #define USB_PRODUCT_EPSON_1640 0x010a /* Perfection 1640SU scanner */ #define USB_PRODUCT_EPSON_1240 0x010b /* Perfection 1240U / 1240Photo scanner */ +#define USB_PRODUCT_EPSON_640U 0x010c /* Perfection 640U scanner */ #define USB_PRODUCT_EPSON_1250 0x010f /* Perfection 1250U / 1250Photo scanner */ -#define USB_PRODUCT_EPSON_640U 0x010c /* Perfection 640U scanner */ #define USB_PRODUCT_EPSON_1650 0x0110 /* Perfection 1650 scanner */ #define USB_PRODUCT_EPSON_GT9700F 0x0112 /* GT-9700F scanner */ #define USB_PRODUCT_EPSON_1260 0x011d /* Perfection 1260 scanner */ @@ -652,6 +655,9 @@ /* Fujitsu protducts */ #define USB_PRODUCT_FUJITSU_AH_F401U 0x105b /* AH-F401U Air H device */ +/* General Instruments (Motorola) products */ +#define USB_PRODUCT_GENERALINSTMNTS_SB5100 0x5100 /* SURFboard SB5100 Cable modem */ + /* Genesys Logic products */ #define USB_PRODUCT_GENESYS_GL650 0x0604 /* GL650 Hub */ #define USB_PRODUCT_GENESYS_GL641USB 0x0700 /* GL641USB CompactFlash Card Reader */ @@ -822,6 +828,7 @@ #define USB_PRODUCT_LOGITECH_WMJOY 0xc281 /* WingMan Force joystick */ #define USB_PRODUCT_LOGITECH_RK53 0xc501 /* Cordless mouse */ #define USB_PRODUCT_LOGITECH_RB6 0xc503 /* Cordless keyboard */ +#define USB_PRODUCT_LOGITECH_MX700 0xc506 /* Cordless optical mouse */ #define USB_PRODUCT_LOGITECH_QUICKCAMPRO2 0xd001 /* QuickCam Pro */ /* Lucent products */ @@ -855,8 +862,9 @@ #define USB_PRODUCT_MICROSOFT_NATURALKBD 0x000b /* Natural Keyboard Elite */ #define USB_PRODUCT_MICROSOFT_DDS80 0x0014 /* Digital Sound System 80 */ #define USB_PRODUCT_MICROSOFT_SIDEWINDER 0x001a /* Sidewinder Precision Racing Wheel */ +#define USB_PRODUCT_MICROSOFT_INETPRO 0x001c /* Internet Keyboard Pro */ #define USB_PRODUCT_MICROSOFT_INTELLIEYE 0x0025 /* IntelliEye mouse */ -#define USB_PRODUCT_MICROSOFT_INETPRO 0x002b /* Internet Keyboard Pro */ +#define USB_PRODUCT_MICROSOFT_INETPRO2 0x002b /* Internet Keyboard Pro */ /* Microtech products */ #define USB_PRODUCT_MICROTECH_SCSIDB25 0x0004 /* USB-SCSI-DB25 */ @@ -1046,6 +1054,7 @@ #define USB_PRODUCT_SHUTTLE_EUSCSI_B 0x000b /* eUSCSI Bridge */ #define USB_PRODUCT_SHUTTLE_EUSCSI_C 0x000c /* eUSCSI Bridge */ #define USB_PRODUCT_SHUTTLE_CDRW 0x0101 /* CD-RW Device */ +#define USB_PRODUCT_SHUTTLE_EUSBORCA 0x0325 /* eUSB ORCA Quad Reader */ /* Siemens products */ #define USB_PRODUCT_SIEMENS_SPEEDSTREAM 0x1001 /* SpeedStream USB */ @@ -1163,6 +1172,7 @@ #define USB_PRODUCT_WACOM_CT0405U 0x0000 /* CT-0405-U Tablet */ #define USB_PRODUCT_WACOM_GRAPHIRE 0x0010 /* Graphire */ #define USB_PRODUCT_WACOM_INTUOSA5 0x0021 /* Intuos A5 */ +#define USB_PRODUCT_WACOM_GD0912U 0x0022 /* Intuos 9x12 Graphics Tablet */ /* Xirlink products */ #define USB_PRODUCT_XIRLINK_PCCAM 0x8080 /* IBM PC Camera */ ==== //depot/projects/hammer/sys/dev/usb/usbdevs_data.h#12 (text+ko) ==== @@ -1,10 +1,10 @@ -/* $FreeBSD: src/sys/dev/usb/usbdevs_data.h,v 1.135 2003/06/13 11:24:45 joe Exp $ */ +/* $FreeBSD: src/sys/dev/usb/usbdevs_data.h,v 1.136 2003/06/25 22:53:46 joe Exp $ */ /* * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. * * generated from: - * FreeBSD: src/sys/dev/usb/usbdevs,v 1.126 2003/06/13 11:20:26 joe Exp + * FreeBSD: src/sys/dev/usb/usbdevs,v 1.127 2003/06/25 22:50:57 joe Exp */ /* @@ -511,7 +511,13 @@ USB_VENDOR_CANON, USB_PRODUCT_CANON_N656U, 0, "Canon", - "CANOSCAN N656U", + "CanoScan N656U", + }, + { + USB_VENDOR_CANON, USB_PRODUCT_CANON_N1240U, + 0, + "Canon", + "CanoScan N1240U", }, { USB_VENDOR_CANON, USB_PRODUCT_CANON_S10, @@ -526,6 +532,12 @@ "PowerShot S100", }, { + USB_VENDOR_CANON, USB_PRODUCT_CANON_S200, + 0, + "Canon", + "PowerShot S200", + }, + { USB_VENDOR_CATC, USB_PRODUCT_CATC_NETMATE, 0, "Computer Access Technology", @@ -916,16 +928,16 @@ "Perfection 1240U / 1240Photo scanner", }, { - USB_VENDOR_EPSON, USB_PRODUCT_EPSON_1250, + USB_VENDOR_EPSON, USB_PRODUCT_EPSON_640U, 0, "Seiko Epson", - "Perfection 1250U / 1250Photo scanner", + "Perfection 640U scanner", }, { - USB_VENDOR_EPSON, USB_PRODUCT_EPSON_640U, + USB_VENDOR_EPSON, USB_PRODUCT_EPSON_1250, 0, "Seiko Epson", - "Perfection 640U scanner", + "Perfection 1250U / 1250Photo scanner", }, { USB_VENDOR_EPSON, USB_PRODUCT_EPSON_1650, @@ -1018,6 +1030,12 @@ "AH-F401U Air H device", }, { + USB_VENDOR_GENERALINSTMNTS, USB_PRODUCT_GENERALINSTMNTS_SB5100, + 0, + "General Instruments (Motorola)", + "SURFboard SB5100 Cable modem", + }, + { USB_VENDOR_GENESYS, USB_PRODUCT_GENESYS_GL650, 0, "Genesys Logic", @@ -1696,6 +1714,12 @@ "Cordless keyboard", }, { + USB_VENDOR_LOGITECH, USB_PRODUCT_LOGITECH_MX700, + 0, + "Logitech", + "Cordless optical mouse", + }, + { USB_VENDOR_LOGITECH, USB_PRODUCT_LOGITECH_QUICKCAMPRO2, 0, "Logitech", @@ -1810,13 +1834,19 @@ "Sidewinder Precision Racing Wheel", }, { + USB_VENDOR_MICROSOFT, USB_PRODUCT_MICROSOFT_INETPRO, + 0, + "Microsoft", + "Internet Keyboard Pro", + }, + { USB_VENDOR_MICROSOFT, USB_PRODUCT_MICROSOFT_INTELLIEYE, 0, "Microsoft", "IntelliEye mouse", }, { - USB_VENDOR_MICROSOFT, USB_PRODUCT_MICROSOFT_INETPRO, + USB_VENDOR_MICROSOFT, USB_PRODUCT_MICROSOFT_INETPRO2, 0, "Microsoft", "Internet Keyboard Pro", @@ -2500,6 +2530,12 @@ "CD-RW Device", }, { + USB_VENDOR_SHUTTLE, USB_PRODUCT_SHUTTLE_EUSBORCA, + 0, + "Shuttle Technology", + "eUSB ORCA Quad Reader", + }, + { USB_VENDOR_SIEMENS, USB_PRODUCT_SIEMENS_SPEEDSTREAM, 0, "Siemens", @@ -2872,6 +2908,12 @@ "Intuos A5", }, { + USB_VENDOR_WACOM, USB_PRODUCT_WACOM_GD0912U, + 0, + "WACOM", + "Intuos 9x12 Graphics Tablet", + }, + { USB_VENDOR_XIRLINK, USB_PRODUCT_XIRLINK_PCCAM, 0, "Xirlink", @@ -4108,6 +4150,12 @@ NULL, }, { + USB_VENDOR_GENERALINSTMNTS, 0, + USB_KNOWNDEV_NOPROD, + "General Instruments (Motorola)", + NULL, + }, + { USB_VENDOR_OLYMPUS, 0, USB_KNOWNDEV_NOPROD, "Olympus", ==== //depot/projects/hammer/sys/kern/kern_tc.c#8 (text+ko) ==== @@ -8,7 +8,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_tc.c,v 1.150 2003/06/23 20:14:08 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_tc.c,v 1.151 2003/06/25 21:23:51 imp Exp $"); #include "opt_ntp.h" @@ -21,6 +21,14 @@ #include /* + * a large step happens on boot. This constant detects such + * a steps. It is relatively small so that ntp_update_second gets called + * enough in the typical 'missed a couple of seconds' case, but doesn't + * loop forever when the time step is large. + */ +#define LARGE_STEP 200 + +/* * Implement a dummy timecounter which we can use until we get a real one * in the air. This allows the console and other early stuff to use * time services. @@ -344,6 +352,7 @@ u_int64_t scale; u_int delta, ncount, ogen; int i; + time_t t; /* * Make the next timehands a copy of the current one, but do not @@ -381,13 +390,28 @@ if (tho->th_counter->tc_poll_pps) tho->th_counter->tc_poll_pps(tho->th_counter); + /* + * Compute the UTC time, before any leapsecond adjustments, are + * made. + */ + bt = th->th_offset; + bintime_add(&bt, &boottimebin); + /* * Deal with NTP second processing. The for loop normally only * iterates once, but in extreme situations it might keep NTP sane - * if timeouts are not run for several seconds. + * if timeouts are not run for several seconds. At boot, the + * time step can be large when the TOD hardware has been read, so + * on really large steps, we call ntp_update_second only once. */ - for (i = th->th_offset.sec - tho->th_offset.sec; i > 0; i--) - ntp_update_second(&th->th_adjustment, &th->th_offset.sec); + for (i = bt.sec - tho->th_microtime.tv_sec; i > 0; i--) { + t = bt.sec; + ntp_update_second(&th->th_adjustment, &bt.sec); + if (bt.sec != t) + boottimebin.sec += bt.sec - t; + if (i > LARGE_STEP) + break; + } /* Now is a good time to change timecounters. */ if (th->th_counter != timecounter) { @@ -423,9 +447,6 @@ scale /= th->th_counter->tc_frequency; th->th_scale = scale * 2; - /* Update the UTC timestamps used for the get*() functions. */ - bt = th->th_offset; - bintime_add(&bt, &boottimebin); bintime2timeval(&bt, &th->th_microtime); bintime2timespec(&bt, &th->th_nanotime); ==== //depot/projects/hammer/usr.bin/locale/Makefile#3 (text+ko) ==== @@ -1,6 +1,7 @@ -# $FreeBSD: src/usr.bin/locale/Makefile,v 1.3 2003/06/22 08:24:53 phantom Exp $ +# $FreeBSD: src/usr.bin/locale/Makefile,v 1.4 2003/06/25 23:05:11 phantom Exp $ PROG = locale +CFLAGS += -I${.CURDIR}/../../lib/libc/locale WARNS ?= 1 .include ==== //depot/projects/hammer/usr.bin/locale/locale.c#3 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/usr.bin/locale/locale.c,v 1.5 2003/06/22 08:34:27 phantom Exp $ + * $FreeBSD: src/usr.bin/locale/locale.c,v 1.7 2003/06/25 23:05:11 phantom Exp $ */ /* @@ -40,12 +40,12 @@ #include #include #include -#include /* for _PATH_LOCALE */ #include #include #include #include #include +#include "setlocale.h" /* Local prototypes */ void init_locales_list(void); @@ -320,7 +320,6 @@ { DIR *dirp; struct dirent *dp; - const char *dirname; /* why call this function twice ? */ if (locales != NULL) @@ -332,14 +331,13 @@ err(1, "could not allocate memory"); /* get actual locales directory name */ - dirname = getenv("PATH_LOCALE"); - if (dirname == NULL) - dirname = _PATH_LOCALE; + if (__detect_path_locale() != 0) + err(1, "unable to find locales storage"); /* open locales directory */ - dirp = opendir(dirname); + dirp = opendir(_PathLocale); if (dirp == NULL) - err(1, "could not open directory '%s'", dirname); + err(1, "could not open directory '%s'", _PathLocale); /* scan directory and store its contents except "." and ".." */ while ((dp = readdir(dirp)) != NULL) {