From owner-p4-projects@FreeBSD.ORG Fri Apr 17 17:07:14 2009 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DA09C10656EA; Fri, 17 Apr 2009 17:07:13 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8B3A81065689 for ; Fri, 17 Apr 2009 17:07:13 +0000 (UTC) (envelope-from zec@fer.hr) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 768178FC1F for ; Fri, 17 Apr 2009 17:07:13 +0000 (UTC) (envelope-from zec@fer.hr) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n3HH7DAR060304 for ; Fri, 17 Apr 2009 17:07:13 GMT (envelope-from zec@fer.hr) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n3HH7Dr9060302 for perforce@freebsd.org; Fri, 17 Apr 2009 17:07:13 GMT (envelope-from zec@fer.hr) Date: Fri, 17 Apr 2009 17:07:13 GMT Message-Id: <200904171707.n3HH7Dr9060302@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zec@fer.hr using -f From: Marko Zec To: Perforce Change Reviews Cc: Subject: PERFORCE change 160749 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Apr 2009 17:07:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=160749 Change 160749 by zec@zec_tpx32 on 2009/04/17 17:06:34 IFC @ 160745 Affected files ... .. //depot/projects/vimage/src/share/man/man4/man4.i386/Makefile#2 integrate .. //depot/projects/vimage/src/share/man/man4/man4.i386/ar.4#2 delete .. //depot/projects/vimage/src/share/man/man4/man4.i386/ray.4#2 delete .. //depot/projects/vimage/src/share/man/man4/man4.i386/sr.4#2 delete .. //depot/projects/vimage/src/sys/amd64/amd64/busdma_machdep.c#10 integrate .. //depot/projects/vimage/src/sys/amd64/conf/DEFAULTS#7 integrate .. //depot/projects/vimage/src/sys/amd64/include/metadata.h#2 integrate .. //depot/projects/vimage/src/sys/amd64/include/pc/bios.h#3 integrate .. //depot/projects/vimage/src/sys/arm/arm/busdma_machdep.c#15 integrate .. //depot/projects/vimage/src/sys/arm/arm/cpufunc_asm_armv5_ec.S#2 integrate .. //depot/projects/vimage/src/sys/arm/arm/cpufunc_asm_sheeva.S#2 integrate .. //depot/projects/vimage/src/sys/arm/mv/common.c#4 integrate .. //depot/projects/vimage/src/sys/arm/mv/gpio.c#3 integrate .. //depot/projects/vimage/src/sys/arm/mv/ic.c#2 integrate .. //depot/projects/vimage/src/sys/arm/mv/mv_pci.c#4 integrate .. //depot/projects/vimage/src/sys/arm/mv/mvreg.h#4 integrate .. //depot/projects/vimage/src/sys/boot/i386/libi386/biossmap.c#4 integrate .. //depot/projects/vimage/src/sys/boot/sparc64/loader/main.c#11 integrate .. //depot/projects/vimage/src/sys/bsm/audit_fcntl.h#1 branch .. //depot/projects/vimage/src/sys/conf/NOTES#46 integrate .. //depot/projects/vimage/src/sys/conf/files#62 integrate .. //depot/projects/vimage/src/sys/conf/options#45 integrate .. //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#16 integrate .. //depot/projects/vimage/src/sys/contrib/pf/net/if_pflog.c#5 integrate .. //depot/projects/vimage/src/sys/contrib/pf/net/if_pfsync.c#9 integrate .. //depot/projects/vimage/src/sys/contrib/pf/net/pf.c#22 integrate .. //depot/projects/vimage/src/sys/dev/ar/if_ar.c#4 delete .. //depot/projects/vimage/src/sys/dev/ar/if_ar.h#2 delete .. //depot/projects/vimage/src/sys/dev/ar/if_ar_isa.c#2 delete .. //depot/projects/vimage/src/sys/dev/ar/if_ar_pci.c#2 delete .. //depot/projects/vimage/src/sys/dev/ar/if_arregs.h#2 delete .. //depot/projects/vimage/src/sys/dev/atkbdc/atkbd.c#3 integrate .. //depot/projects/vimage/src/sys/dev/e1000/if_em.c#7 integrate .. //depot/projects/vimage/src/sys/dev/fb/creator.c#6 integrate .. //depot/projects/vimage/src/sys/dev/fb/machfb.c#4 integrate .. //depot/projects/vimage/src/sys/dev/if_ndis/if_ndis.c#24 integrate .. //depot/projects/vimage/src/sys/dev/iicbus/if_ic.c#5 integrate .. //depot/projects/vimage/src/sys/dev/ipw/if_ipw.c#13 integrate .. //depot/projects/vimage/src/sys/dev/lmc/if_lmc.c#9 integrate .. //depot/projects/vimage/src/sys/dev/lmc/if_lmc.h#4 integrate .. //depot/projects/vimage/src/sys/dev/mge/if_mge.c#3 integrate .. //depot/projects/vimage/src/sys/dev/pci/pci.c#22 integrate .. //depot/projects/vimage/src/sys/dev/ppbus/if_plip.c#9 integrate .. //depot/projects/vimage/src/sys/dev/ray/if_ray.c#5 delete .. //depot/projects/vimage/src/sys/dev/ray/if_raydbg.h#2 delete .. //depot/projects/vimage/src/sys/dev/ray/if_raymib.h#2 delete .. //depot/projects/vimage/src/sys/dev/ray/if_rayreg.h#2 delete .. //depot/projects/vimage/src/sys/dev/ray/if_rayvar.h#3 delete .. //depot/projects/vimage/src/sys/dev/sr/if_sr.c#4 delete .. //depot/projects/vimage/src/sys/dev/sr/if_sr.h#2 delete .. //depot/projects/vimage/src/sys/dev/sr/if_sr_isa.c#2 delete .. //depot/projects/vimage/src/sys/dev/sr/if_sr_pci.c#2 delete .. //depot/projects/vimage/src/sys/dev/sr/if_srregs.h#2 delete .. //depot/projects/vimage/src/sys/geom/part/g_part.c#19 integrate .. //depot/projects/vimage/src/sys/geom/part/g_part_ebr.c#6 integrate .. //depot/projects/vimage/src/sys/geom/part/g_part_if.m#6 integrate .. //depot/projects/vimage/src/sys/i386/conf/DEFAULTS#11 integrate .. //depot/projects/vimage/src/sys/i386/i386/busdma_machdep.c#12 integrate .. //depot/projects/vimage/src/sys/i386/include/metadata.h#2 integrate .. //depot/projects/vimage/src/sys/i386/include/pc/bios.h#3 integrate .. //depot/projects/vimage/src/sys/ia64/ia64/busdma_machdep.c#8 integrate .. //depot/projects/vimage/src/sys/kern/kern_conf.c#19 integrate .. //depot/projects/vimage/src/sys/kern/kern_descrip.c#24 integrate .. //depot/projects/vimage/src/sys/kern/vfs_bio.c#20 integrate .. //depot/projects/vimage/src/sys/kern/vfs_cache.c#24 integrate .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_aue.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_auereg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_axe.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_axereg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_cdce.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_cdcereg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_cue.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_cuereg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_kue.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_kuereg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_rue.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_ruereg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_rum.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_rumreg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_rumvar.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_udav.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_udavreg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_ural.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_uralreg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_uralvar.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_zyd.c#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_zydfw.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/if_zydreg.h#2 delete .. //depot/projects/vimage/src/sys/legacy/dev/usb/kue_fw.h#2 delete .. //depot/projects/vimage/src/sys/modules/Makefile#44 integrate .. //depot/projects/vimage/src/sys/modules/ar/Makefile#3 delete .. //depot/projects/vimage/src/sys/modules/netgraph/sync_ar/Makefile#3 delete .. //depot/projects/vimage/src/sys/modules/netgraph/sync_sr/Makefile#3 delete .. //depot/projects/vimage/src/sys/modules/ray/Makefile#2 delete .. //depot/projects/vimage/src/sys/modules/sr/Makefile#3 delete .. //depot/projects/vimage/src/sys/net/ethernet.h#9 integrate .. //depot/projects/vimage/src/sys/net/if.c#77 integrate .. //depot/projects/vimage/src/sys/net/if_arc.h#2 integrate .. //depot/projects/vimage/src/sys/net/if_arcsubr.c#6 integrate .. //depot/projects/vimage/src/sys/net/if_atm.h#2 integrate .. //depot/projects/vimage/src/sys/net/if_atmsubr.c#7 integrate .. //depot/projects/vimage/src/sys/net/if_disc.c#4 integrate .. //depot/projects/vimage/src/sys/net/if_enc.c#8 integrate .. //depot/projects/vimage/src/sys/net/if_ethersubr.c#39 integrate .. //depot/projects/vimage/src/sys/net/if_faith.c#9 integrate .. //depot/projects/vimage/src/sys/net/if_fddisubr.c#9 integrate .. //depot/projects/vimage/src/sys/net/if_fwsubr.c#11 integrate .. //depot/projects/vimage/src/sys/net/if_gif.c#29 integrate .. //depot/projects/vimage/src/sys/net/if_gif.h#12 integrate .. //depot/projects/vimage/src/sys/net/if_gre.c#13 integrate .. //depot/projects/vimage/src/sys/net/if_iso88025subr.c#9 integrate .. //depot/projects/vimage/src/sys/net/if_lagg.c#21 integrate .. //depot/projects/vimage/src/sys/net/if_lagg.h#8 integrate .. //depot/projects/vimage/src/sys/net/if_llatbl.c#4 integrate .. //depot/projects/vimage/src/sys/net/if_llatbl.h#3 integrate .. //depot/projects/vimage/src/sys/net/if_loop.c#44 integrate .. //depot/projects/vimage/src/sys/net/if_spppsubr.c#17 integrate .. //depot/projects/vimage/src/sys/net/if_stf.c#16 integrate .. //depot/projects/vimage/src/sys/net/if_tun.c#15 integrate .. //depot/projects/vimage/src/sys/net/if_var.h#32 integrate .. //depot/projects/vimage/src/sys/net/iso88025.h#2 integrate .. //depot/projects/vimage/src/sys/net/radix_mpath.c#6 integrate .. //depot/projects/vimage/src/sys/net/route.c#47 integrate .. //depot/projects/vimage/src/sys/net/route.h#9 integrate .. //depot/projects/vimage/src/sys/net/rtsock.c#30 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211.c#31 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_output.c#22 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_proto.h#15 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_var.h#24 integrate .. //depot/projects/vimage/src/sys/netgraph/ng_fec.c#4 integrate .. //depot/projects/vimage/src/sys/netgraph/ng_iface.c#21 integrate .. //depot/projects/vimage/src/sys/netinet/if_ether.c#42 integrate .. //depot/projects/vimage/src/sys/netinet/in_pcb.h#31 integrate .. //depot/projects/vimage/src/sys/netinet/in_var.h#18 integrate .. //depot/projects/vimage/src/sys/netinet/ip_carp.c#21 integrate .. //depot/projects/vimage/src/sys/netinet/ip_fastfwd.c#19 integrate .. //depot/projects/vimage/src/sys/netinet/ip_output.c#34 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_bsd_addr.c#18 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_structs.h#22 integrate .. //depot/projects/vimage/src/sys/netinet6/in6.h#9 integrate .. //depot/projects/vimage/src/sys/netinet6/nd6.c#47 integrate .. //depot/projects/vimage/src/sys/netinet6/nd6.h#16 integrate .. //depot/projects/vimage/src/sys/netipx/ipx_outputfl.c#4 integrate .. //depot/projects/vimage/src/sys/pc98/cbus/olpt.c#4 integrate .. //depot/projects/vimage/src/sys/rpc/svc.h#3 integrate .. //depot/projects/vimage/src/sys/security/audit/audit_bsm_fcntl.c#1 branch .. //depot/projects/vimage/src/sys/security/audit/audit_pipe.c#13 integrate .. //depot/projects/vimage/src/sys/sys/param.h#48 integrate .. //depot/projects/vimage/src/sys/ufs/ufs/ufs_lookup.c#12 integrate Differences ... ==== //depot/projects/vimage/src/share/man/man4/man4.i386/Makefile#2 (text+ko) ==== @@ -1,10 +1,9 @@ -# $FreeBSD: src/share/man/man4/man4.i386/Makefile,v 1.193 2008/09/10 18:36:58 jhb Exp $ +# $FreeBSD: src/share/man/man4/man4.i386/Makefile,v 1.194 2009/04/16 11:09:59 rwatson Exp $ MAN= aic.4 \ alpm.4 \ amdpm.4 \ apm.4 \ - ar.4 \ ce.4 \ cp.4 \ CPU_ELAN.4 \ @@ -29,12 +28,10 @@ perfmon.4 \ pnp.4 \ pnpbios.4 \ - ray.4 \ sbni.4 \ scd.4 \ smapi.4 \ snc.4 \ - sr.4 \ streams.4 \ svr4.4 \ viapm.4 \ ==== //depot/projects/vimage/src/sys/amd64/amd64/busdma_machdep.c#10 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.89 2009/04/13 19:20:32 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.90 2009/04/17 13:22:18 jhb Exp $"); #include #include @@ -1137,9 +1137,7 @@ mtx_unlock(&bounce_lock); if (dmat->flags & BUS_DMA_KEEP_PG_OFFSET) { - /* page offset needs to be preserved */ - bpage->vaddr &= ~PAGE_MASK; - bpage->busaddr &= ~PAGE_MASK; + /* Page offset needs to be preserved. */ bpage->vaddr |= vaddr & PAGE_MASK; bpage->busaddr |= vaddr & PAGE_MASK; } @@ -1158,6 +1156,15 @@ bz = dmat->bounce_zone; bpage->datavaddr = 0; bpage->datacount = 0; + if (dmat->flags & BUS_DMA_KEEP_PG_OFFSET) { + /* + * Reset the bounce page to start at offset 0. Other uses + * of this bounce page may need to store a full page of + * data and/or assume it starts on a page boundary. + */ + bpage->vaddr &= ~PAGE_MASK; + bpage->busaddr &= ~PAGE_MASK; + } mtx_lock(&bounce_lock); STAILQ_INSERT_HEAD(&bz->bounce_page_list, bpage, links); ==== //depot/projects/vimage/src/sys/amd64/conf/DEFAULTS#7 (text+ko) ==== @@ -1,7 +1,7 @@ # # DEFAULTS -- Default kernel configuration file for FreeBSD/amd64 # -# $FreeBSD: src/sys/amd64/conf/DEFAULTS,v 1.15 2009/02/10 00:08:39 marcel Exp $ +# $FreeBSD: src/sys/amd64/conf/DEFAULTS,v 1.16 2009/04/15 22:38:22 marcel Exp $ machine amd64 @@ -18,4 +18,5 @@ # Default partitioning schemes options GEOM_PART_BSD options GEOM_PART_EBR +options GEOM_PART_EBR_COMPAT options GEOM_PART_MBR ==== //depot/projects/vimage/src/sys/amd64/include/metadata.h#2 (text+ko) ==== @@ -23,12 +23,13 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/metadata.h,v 1.2 2005/01/05 20:17:20 imp Exp $ + * $FreeBSD: src/sys/amd64/include/metadata.h,v 1.3 2009/04/15 17:31:22 jkim Exp $ */ #ifndef _MACHINE_METADATA_H_ #define _MACHINE_METADATA_H_ #define MODINFOMD_SMAP 0x1001 +#define MODINFOMD_SMAP_XATTR 0x1002 #endif /* !_MACHINE_METADATA_H_ */ ==== //depot/projects/vimage/src/sys/amd64/include/pc/bios.h#3 (text+ko) ==== @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/pc/bios.h,v 1.20 2007/10/28 21:23:49 jhb Exp $ + * $FreeBSD: src/sys/amd64/include/pc/bios.h,v 1.21 2009/04/15 17:31:22 jkim Exp $ */ #ifndef _MACHINE_PC_BIOS_H_ @@ -48,6 +48,10 @@ #define SMAP_TYPE_ACPI_NVS 4 #define SMAP_TYPE_ACPI_ERROR 5 +#define SMAP_XATTR_ENABLED 0x00000001 +#define SMAP_XATTR_NON_VOLATILE 0x00000002 +#define SMAP_XATTR_MASK (SMAP_XATTR_ENABLED | SMAP_XATTR_NON_VOLATILE) + struct bios_smap { u_int64_t base; u_int64_t length; ==== //depot/projects/vimage/src/sys/arm/arm/busdma_machdep.c#15 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.45 2009/04/13 19:20:32 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/busdma_machdep.c,v 1.46 2009/04/17 13:22:18 jhb Exp $"); /* * ARM bus dma support routines @@ -1427,9 +1427,7 @@ mtx_unlock(&bounce_lock); if (dmat->flags & BUS_DMA_KEEP_PG_OFFSET) { - /* page offset needs to be preserved */ - bpage->vaddr &= ~PAGE_MASK; - bpage->busaddr &= ~PAGE_MASK; + /* Page offset needs to be preserved. */ bpage->vaddr |= vaddr & PAGE_MASK; bpage->busaddr |= vaddr & PAGE_MASK; } @@ -1448,6 +1446,15 @@ bz = dmat->bounce_zone; bpage->datavaddr = 0; bpage->datacount = 0; + if (dmat->flags & BUS_DMA_KEEP_PG_OFFSET) { + /* + * Reset the bounce page to start at offset 0. Other uses + * of this bounce page may need to store a full page of + * data and/or assume it starts on a page boundary. + */ + bpage->vaddr &= ~PAGE_MASK; + bpage->busaddr &= ~PAGE_MASK; + } mtx_lock(&bounce_lock); STAILQ_INSERT_HEAD(&bz->bounce_page_list, bpage, links); ==== //depot/projects/vimage/src/sys/arm/arm/cpufunc_asm_armv5_ec.S#2 (text+ko) ==== @@ -37,7 +37,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc_asm_armv5_ec.S,v 1.1 2007/10/18 05:33:05 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc_asm_armv5_ec.S,v 1.2 2009/04/16 11:21:52 raj Exp $"); /* * Functions to set the MMU Translation Table Base register @@ -204,3 +204,4 @@ bne 1b /* More to do? */ mcr p15, 0, r0, c7, c10, 4 /* drain the write buffer */ RET + ==== //depot/projects/vimage/src/sys/arm/arm/cpufunc_asm_sheeva.S#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc_asm_sheeva.S,v 1.1 2009/01/09 10:55:33 raj Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc_asm_sheeva.S,v 1.2 2009/04/16 11:21:52 raj Exp $"); #include @@ -375,6 +375,14 @@ mcr p15, 0, r0, c7, c10, 4 /* drain the write buffer */ RET +/* This function modifies register value as follows: + * + * arg1 arg EFFECT (bit value saved into register) + * 0 0 not changed + * 0 1 negated + * 1 0 cleared + * 1 1 set + */ ENTRY(sheeva_control_ext) mrc p15, 1, r3, c15, c1, 0 /* Read the control register */ bic r2, r3, r0 /* Clear bits */ ==== //depot/projects/vimage/src/sys/arm/mv/common.c#4 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/mv/common.c,v 1.5 2009/01/08 18:31:43 raj Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/mv/common.c,v 1.6 2009/04/16 11:20:18 raj Exp $"); #include #include @@ -91,7 +91,8 @@ uint32_t ef = 0; soc_id(&dev, &rev); - if (dev == MV_DEV_88F6281 || dev == MV_DEV_MV78100) + if (dev == MV_DEV_88F6281 || dev == MV_DEV_MV78100_Z0 || + dev == MV_DEV_MV78100) __asm __volatile("mrc p15, 1, %0, c15, c1, 0" : "=r" (ef)); else if (dev == MV_DEV_88F5182 || dev == MV_DEV_88F5281) __asm __volatile("mrc p15, 0, %0, c14, c0, 0" : "=r" (ef)); @@ -166,6 +167,9 @@ else if (r == 2) rev = "A0"; break; + case MV_DEV_MV78100_Z0: + dev = "Marvell MV78100 Z0"; + break; case MV_DEV_MV78100: dev = "Marvell MV78100"; break; @@ -199,15 +203,16 @@ decode_win_cpu_setup(); decode_win_usb_setup(); decode_win_eth_setup(MV_ETH0_BASE); - if (dev == MV_DEV_MV78100) + if (dev == MV_DEV_MV78100 || dev == MV_DEV_MV78100_Z0) decode_win_eth_setup(MV_ETH1_BASE); - if (dev == MV_DEV_88F6281 || dev == MV_DEV_MV78100) + if (dev == MV_DEV_88F6281 || dev == MV_DEV_MV78100 || + dev == MV_DEV_MV78100_Z0) decode_win_cesa_setup(); decode_win_idma_setup(); decode_win_xor_setup(); - if (dev == MV_DEV_MV78100) { + if (dev == MV_DEV_MV78100 || dev == MV_DEV_MV78100_Z0) { decode_win_pcie_setup(MV_PCIE00_BASE); decode_win_pcie_setup(MV_PCIE01_BASE); decode_win_pcie_setup(MV_PCIE02_BASE); @@ -360,7 +365,8 @@ if ((dev == MV_DEV_88F5182 && i < 2) || (dev == MV_DEV_88F5281 && i < 4) || (dev == MV_DEV_88F6281 && i < 4) || - (dev == MV_DEV_MV78100 && i < 8)) + (dev == MV_DEV_MV78100 && i < 8) || + (dev == MV_DEV_MV78100_Z0 && i < 8)) return (1); return (0); @@ -590,7 +596,7 @@ uint32_t dev, rev; soc_id(&dev, &rev); - return (dev == MV_DEV_MV78100 ? 3 : 1); + return ((dev == MV_DEV_MV78100 || dev == MV_DEV_MV78100_Z0) ? 3 : 1); } static void @@ -1109,14 +1115,18 @@ return (0); } -static __inline int +static int xor_max_eng(void) { uint32_t dev, rev; soc_id(&dev, &rev); - return ((dev == MV_DEV_88F6281) ? 2 : - (dev == MV_DEV_MV78100) ? 1 : 0); + if (dev == MV_DEV_88F6281) + return (2); + else if ((dev == MV_DEV_MV78100) || (dev == MV_DEV_MV78100_Z0)) + return (1); + else + return (0); } static void ==== //depot/projects/vimage/src/sys/arm/mv/gpio.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/mv/gpio.c,v 1.3 2009/01/08 18:31:43 raj Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/mv/gpio.c,v 1.4 2009/04/16 11:20:18 raj Exp $"); #include #include @@ -123,12 +123,13 @@ return (ENXIO); mv_gpio_softc = sc; - /* Get board id and revision */ + /* Get chip id and revision */ soc_id(&dev_id, &rev_id); if (dev_id == MV_DEV_88F5182 || dev_id == MV_DEV_88F5281 || - dev_id == MV_DEV_MV78100) { + dev_id == MV_DEV_MV78100 || + dev_id == MV_DEV_MV78100_Z0 ) { sc->pin_num = 32; sc->irq_num = 4; sc->use_high = 0; @@ -139,7 +140,7 @@ sc->use_high = 1; } else { - device_printf(dev, "unknown board id=0x%x\n", dev_id); + device_printf(dev, "unknown chip id=0x%x\n", dev_id); return (ENXIO); } ==== //depot/projects/vimage/src/sys/arm/mv/ic.c#2 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/mv/ic.c,v 1.1 2008/10/13 20:07:13 raj Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/mv/ic.c,v 1.2 2009/04/16 11:20:18 raj Exp $"); #include #include @@ -98,10 +98,11 @@ sc->ic_high_regs = 0; sc->ic_error_regs = 0; - if (dev_id == MV_DEV_88F6281 || dev_id == MV_DEV_MV78100) + if (dev_id == MV_DEV_88F6281 || dev_id == MV_DEV_MV78100 || + dev_id == MV_DEV_MV78100_Z0) sc->ic_high_regs = 1; - if (dev_id == MV_DEV_MV78100) + if (dev_id == MV_DEV_MV78100 || dev_id == MV_DEV_MV78100_Z0) sc->ic_error_regs = 1; error = bus_alloc_resources(dev, mv_ic_spec, sc->ic_res); ==== //depot/projects/vimage/src/sys/arm/mv/mv_pci.c#4 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/mv/mv_pci.c,v 1.5 2009/01/09 12:38:41 raj Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/mv/mv_pci.c,v 1.6 2009/04/16 11:20:18 raj Exp $"); #include #include @@ -459,8 +459,18 @@ id = "88F6281"; break; case 0x6381: + id = "MV78100 Z0"; + break; + case 0x7810: id = "MV78100"; break; + case 0x7820: + /* + * According to documentation ID 0x7820 is assigned to MV78200. + * However some MV78100 chips also use it. + */ + id = "MV78100/MV78200"; + break; default: device_printf(self, "unknown Marvell PCI bridge: %x\n", val); goto out; ==== //depot/projects/vimage/src/sys/arm/mv/mvreg.h#4 (text+ko) ==== @@ -28,7 +28,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/arm/mv/mvreg.h,v 1.4 2009/01/08 18:31:43 raj Exp $ + * $FreeBSD: src/sys/arm/mv/mvreg.h,v 1.5 2009/04/16 11:20:18 raj Exp $ */ #ifndef _MVREG_H_ @@ -471,11 +471,12 @@ /* * Chip ID */ -#define MV_DEV_88F5181 0x5181 -#define MV_DEV_88F5182 0x5182 -#define MV_DEV_88F5281 0x5281 -#define MV_DEV_88F6281 0x6281 -#define MV_DEV_MV78100 0x6381 +#define MV_DEV_88F5181 0x5181 +#define MV_DEV_88F5182 0x5182 +#define MV_DEV_88F5281 0x5281 +#define MV_DEV_88F6281 0x6281 +#define MV_DEV_MV78100_Z0 0x6381 +#define MV_DEV_MV78100 0x7810 /* * Decode windows definitions and macros ==== //depot/projects/vimage/src/sys/boot/i386/libi386/biossmap.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biossmap.c,v 1.8 2008/06/07 03:07:32 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biossmap.c,v 1.9 2009/04/15 17:31:22 jkim Exp $"); /* * Obtain memory configuration information from the BIOS @@ -33,74 +33,107 @@ #include #include #include +#include +#include #include +#include #include #include "bootstrap.h" #include "libi386.h" #include "btxv86.h" -static struct { - struct bios_smap _smap_entry; - char pad[8]; /* Bad BIOS writer, no cookie! */ -} smap; +#define V86_CY(x) ((x) & PSL_C) + +struct smap_buf { + struct bios_smap smap; + uint32_t xattr; /* Extended attribute from ACPI 3.0 */ + STAILQ_ENTRY(smap_buf) bufs; +}; + +#define SMAP_BUFSIZE offsetof(struct smap_buf, bufs) -static struct bios_smap *smapbase; -static int smaplen; +static struct bios_smap *smapbase; +static uint32_t *smapattr; +static u_int smaplen; void bios_getsmap(void) { - int n; + struct smap_buf buf; + STAILQ_HEAD(smap_head, smap_buf) head = + STAILQ_HEAD_INITIALIZER(head); + struct smap_buf *cur, *next; + u_int n, x; + STAILQ_INIT(&head); n = 0; - smaplen = 0; - /* Count up segments in system memory map */ + x = 0; v86.ebx = 0; do { v86.ctl = V86_FLAGS; - v86.addr = 0x15; /* int 0x15 function 0xe820*/ - v86.eax = 0xe820; - v86.ecx = sizeof(struct bios_smap); + v86.addr = 0x15; + v86.eax = 0xe820; /* int 0x15 function 0xe820 */ + v86.ecx = SMAP_BUFSIZE; v86.edx = SMAP_SIG; - v86.es = VTOPSEG(&smap); - v86.edi = VTOPOFF(&smap); + v86.es = VTOPSEG(&buf); + v86.edi = VTOPOFF(&buf); v86int(); - if ((v86.efl & 1) || (v86.eax != SMAP_SIG)) + if (V86_CY(v86.efl) || v86.eax != SMAP_SIG || + v86.ecx < sizeof(buf.smap) || v86.ecx > SMAP_BUFSIZE) + break; + + next = malloc(sizeof(*next)); + if (next == NULL) break; + next->smap = buf.smap; + if (v86.ecx == SMAP_BUFSIZE) { + next->xattr = buf.xattr; + x++; + } + STAILQ_INSERT_TAIL(&head, next, bufs); n++; } while (v86.ebx != 0); - if (n == 0) - return; - n += 10; /* spare room */ - smapbase = malloc(n * sizeof(*smapbase)); + smaplen = n; - /* Save system memory map */ - v86.ebx = 0; - do { - v86.ctl = V86_FLAGS; - v86.addr = 0x15; /* int 0x15 function 0xe820*/ - v86.eax = 0xe820; - v86.ecx = sizeof(struct bios_smap); - v86.edx = SMAP_SIG; - v86.es = VTOPSEG(&smap); - v86.edi = VTOPOFF(&smap); - v86int(); - bcopy(&smap, &smapbase[smaplen], sizeof(struct bios_smap)); - smaplen++; - if ((v86.efl & 1) || (v86.eax != SMAP_SIG)) - break; - } while (v86.ebx != 0 && smaplen < n); + if (smaplen > 0) { + smapbase = malloc(smaplen * sizeof(*smapbase)); + if (smapbase != NULL) { + n = 0; + STAILQ_FOREACH(cur, &head, bufs) + smapbase[n++] = cur->smap; + } + if (smaplen == x) { + smapattr = malloc(smaplen * sizeof(*smapattr)); + if (smapattr != NULL) { + n = 0; + STAILQ_FOREACH(cur, &head, bufs) + smapattr[n++] = cur->xattr & + SMAP_XATTR_MASK; + } + } else + smapattr = NULL; + cur = STAILQ_FIRST(&head); + while (cur != NULL) { + next = STAILQ_NEXT(cur, bufs); + free(cur); + cur = next; + } + } } void bios_addsmapdata(struct preloaded_file *kfp) { - int len; + size_t size; - if (smapbase == 0 || smaplen == 0) + if (smapbase == NULL || smaplen == 0) return; - len = smaplen * sizeof(*smapbase); - file_addmetadata(kfp, MODINFOMD_SMAP, len, smapbase); + size = smaplen * sizeof(*smapbase); + file_addmetadata(kfp, MODINFOMD_SMAP, size, smapbase); + if (smapattr != NULL) { + size = smaplen * sizeof(*smapattr); + file_addmetadata(kfp, MODINFOMD_SMAP_XATTR, size, smapattr); + } } COMMAND_SET(smap, "smap", "show BIOS SMAP", command_smap); @@ -108,12 +141,22 @@ static int command_smap(int argc, char *argv[]) { - int i; + u_int i; - if (smapbase == 0 || smaplen == 0) + if (smapbase == NULL || smaplen == 0) return (CMD_ERROR); - for (i = 0; i < smaplen; i++) - printf("SMAP type=%02x base=%016llx len=%016llx\n", - smapbase[i].type, smapbase[i].base, smapbase[i].length); + if (smapattr != NULL) + for (i = 0; i < smaplen; i++) + printf("SMAP type=%02x base=%016llx len=%016llx attr=%02x\n", + (unsigned int)smapbase[i].type, + (unsigned long long)smapbase[i].base, + (unsigned long long)smapbase[i].length, + (unsigned int)smapattr[i]); + else + for (i = 0; i < smaplen; i++) + printf("SMAP type=%02x base=%016llx len=%016llx\n", + (unsigned int)smapbase[i].type, + (unsigned long long)smapbase[i].base, + (unsigned long long)smapbase[i].length); return (CMD_OK); } ==== //depot/projects/vimage/src/sys/boot/sparc64/loader/main.c#11 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/sparc64/loader/main.c,v 1.41 2009/04/13 19:43:37 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/sparc64/loader/main.c,v 1.42 2009/04/14 19:02:34 marius Exp $"); /* * FreeBSD/sparc64 kernel loader - machine dependent part @@ -434,9 +434,10 @@ continue; reg = dtlb_get_data_sun4u(i); wrpr(pstate, pstate, 0); + reg >>= TD_PA_SHIFT; if (cpu_impl >= CPU_IMPL_ULTRASPARCIII) - return ((reg & TD_PA_CH_MASK) >> TD_PA_SHIFT); - return ((reg & TD_PA_SF_MASK) >> TD_PA_SHIFT); + return (reg & TD_PA_CH_MASK); + return (reg & TD_PA_SF_MASK); } wrpr(pstate, pstate, 0); return (-1); @@ -456,9 +457,10 @@ continue; reg = itlb_get_data_sun4u(i); wrpr(pstate, pstate, 0); + reg >>= TD_PA_SHIFT; if (cpu_impl >= CPU_IMPL_ULTRASPARCIII) - return ((reg & TD_PA_CH_MASK) >> TD_PA_SHIFT); - return ((reg & TD_PA_SF_MASK) >> TD_PA_SHIFT); + return (reg & TD_PA_CH_MASK); + return (reg & TD_PA_SF_MASK); } wrpr(pstate, pstate, 0); return (-1); @@ -846,7 +848,7 @@ { printf("%s %s ", - page_sizes[(tte & TD_SIZE_MASK) >> TD_SIZE_SHIFT], + page_sizes[(tte >> TD_SIZE_SHIFT) & TD_SIZE_MASK], tag & TD_G ? "G" : " "); printf(tte & TD_W ? "W " : " "); printf(tte & TD_P ? "\e[33mP\e[0m " : " "); ==== //depot/projects/vimage/src/sys/conf/NOTES#46 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1533 2009/04/10 00:34:55 jfv Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1534 2009/04/15 22:38:22 marcel Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -148,6 +148,7 @@ options GEOM_PART_APM # Apple partitioning options GEOM_PART_BSD # BSD disklabel options GEOM_PART_EBR # Extended Boot Records +options GEOM_PART_EBR_COMPAT # Backward compatible partition names options GEOM_PART_GPT # GPT partitioning options GEOM_PART_MBR # MBR partitioning options GEOM_PART_PC98 # PC-9800 disk partitioning ==== //depot/projects/vimage/src/sys/conf/files#62 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1390 2009/04/12 19:04:27 rmacklem Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1391 2009/04/17 09:42:26 rwatson Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1501,7 +1501,6 @@ legacy/dev/usb/ehci_ddb.c optional oehci legacy/dev/usb/ehci_pci.c optional oehci pci legacy/dev/usb/hid.c optional ousb -legacy/dev/usb/if_aue.c optional oaue legacy/dev/usb/ohci.c optional oohci legacy/dev/usb/ohci_pci.c optional oohci pci legacy/dev/usb/sl811hs.c optional oslhci ==== //depot/projects/vimage/src/sys/conf/options#45 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.664 2009/03/30 19:23:49 sam Exp $ +# $FreeBSD: src/sys/conf/options,v 1.665 2009/04/15 22:38:22 marcel Exp $ # # On the handling of kernel options # @@ -93,6 +93,7 @@ GEOM_PART_APM opt_geom.h GEOM_PART_BSD opt_geom.h GEOM_PART_EBR opt_geom.h +GEOM_PART_EBR_COMPAT opt_geom.h GEOM_PART_GPT opt_geom.h GEOM_PART_MBR opt_geom.h GEOM_PART_PC98 opt_geom.h ==== //depot/projects/vimage/src/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#16 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c,v 1.15 2009/02/27 13:29:18 bz Exp $ */ +/* $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c,v 1.16 2009/04/16 20:30:28 kmacy Exp $ */ /* * Copyright (C) 1993-2003 by Darren Reed. @@ -1051,7 +1051,7 @@ if (!ip->ip_sum) ip->ip_sum = in_cksum(m, hlen); error = (*ifp->if_output)(ifp, m, (struct sockaddr *)dst, - ro->ro_rt); + ro); goto done; } /* @@ -1132,7 +1132,7 @@ m->m_act = 0; if (error == 0) error = (*ifp->if_output)(ifp, m, - (struct sockaddr *)dst, ro->ro_rt); + (struct sockaddr *)dst, ro); else FREE_MB_T(m); } ==== //depot/projects/vimage/src/sys/contrib/pf/net/if_pflog.c#5 (text+ko) ==== @@ -40,7 +40,7 @@ #include "opt_pf.h" #include -__FBSDID("$FreeBSD: src/sys/contrib/pf/net/if_pflog.c,v 1.21 2007/07/03 12:16:07 mlaier Exp $"); +__FBSDID("$FreeBSD: src/sys/contrib/pf/net/if_pflog.c,v 1.22 2009/04/16 20:30:28 kmacy Exp $"); #ifdef DEV_BPF #define NBPFILTER DEV_BPF @@ -113,7 +113,7 @@ void pflogattach(int); int pflogoutput(struct ifnet *, struct mbuf *, struct sockaddr *, - struct rtentry *); + struct route *); int pflogioctl(struct ifnet *, u_long, caddr_t); void pflogstart(struct ifnet *); #ifdef __FreeBSD__ @@ -287,7 +287,7 @@ int pflogoutput(struct ifnet *ifp, struct mbuf *m, struct sockaddr *dst, - struct rtentry *rt) + struct route *ro) { m_freem(m); return (0); ==== //depot/projects/vimage/src/sys/contrib/pf/net/if_pfsync.c#9 (text+ko) ==== @@ -34,7 +34,7 @@ #include "opt_pf.h" #include -__FBSDID("$FreeBSD: src/sys/contrib/pf/net/if_pfsync.c,v 1.36 2007/07/28 07:31:29 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/contrib/pf/net/if_pfsync.c,v 1.37 2009/04/16 20:30:28 kmacy Exp $"); #ifdef DEV_BPF #define NBPFILTER DEV_BPF @@ -152,7 +152,7 @@ void pfsync_update_net_tdb(struct pfsync_tdb *); #endif int pfsyncoutput(struct ifnet *, struct mbuf *, struct sockaddr *, - struct rtentry *); + struct route *); int pfsyncioctl(struct ifnet *, u_long, caddr_t); void pfsyncstart(struct ifnet *); @@ -1083,7 +1083,7 @@ int pfsyncoutput(struct ifnet *ifp, struct mbuf *m, struct sockaddr *dst, - struct rtentry *rt) + struct route *ro) { m_freem(m); return (0); ==== //depot/projects/vimage/src/sys/contrib/pf/net/pf.c#22 (text+ko) ==== @@ -41,7 +41,7 @@ #include "opt_inet6.h" #include -__FBSDID("$FreeBSD: src/sys/contrib/pf/net/pf.c,v 1.64 2009/04/12 13:22:33 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/contrib/pf/net/pf.c,v 1.65 2009/04/16 20:30:28 kmacy Exp $"); #endif #ifdef __FreeBSD__ @@ -6245,7 +6245,7 @@ } } PF_UNLOCK(); - error = (*ifp->if_output)(ifp, m0, sintosa(dst), ro->ro_rt); + error = (*ifp->if_output)(ifp, m0, sintosa(dst), ro); PF_LOCK(); goto done; } ==== //depot/projects/vimage/src/sys/dev/atkbdc/atkbd.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbd.c,v 1.53 2007/12/29 21:55:22 wkoszek Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/atkbdc/atkbd.c,v 1.54 2009/04/17 00:30:56 emax Exp $"); #include "opt_compat.h" #include "opt_kbd.h" @@ -476,7 +476,7 @@ static int atkbd_intr(keyboard_t *kbd, void *arg) { - atkbd_state_t *state; + atkbd_state_t *state = (atkbd_state_t *)kbd->kb_data; int delay[2]; int c; @@ -485,7 +485,6 @@ * The keyboard was not detected before; * it must have been reconnected! >>> TRUNCATED FOR MAIL (1000 lines) <<<