svn commit: r213838 - in user/nwhitehorn/ps3: amd64/amd64 amd64/conf amd64/include amd64/linux32 arm/arm arm/at91 arm/conf arm/include arm/mv boot/common boot/forth boot/i386/boot2 boot/i386/common...

Nathan Whitehorn nwhitehorn at FreeBSD.org
Thu Oct 14 15:42:33 UTC 2010


Author: nwhitehorn
Date: Thu Oct 14 15:42:32 2010
New Revision: 213838
URL: http://svn.freebsd.org/changeset/base/213838

Log:
  IFC @ r213837
  
  Take advantage of new features, including grehan's MMU inheritance code,
  to simplify PS3 bits. Also map the PS3 framebuffer write-combining now
  that we can do that.

Added:
  user/nwhitehorn/ps3/arm/at91/at91_pio_sam9g20.h
     - copied unchanged from r213837, head/sys/arm/at91/at91_pio_sam9g20.h
  user/nwhitehorn/ps3/arm/at91/at91_reset.S
     - copied unchanged from r213837, head/sys/arm/at91/at91_reset.S
  user/nwhitehorn/ps3/arm/at91/at91_rst.c
     - copied unchanged from r213837, head/sys/arm/at91/at91_rst.c
  user/nwhitehorn/ps3/arm/at91/at91_rstreg.h
     - copied unchanged from r213837, head/sys/arm/at91/at91_rstreg.h
  user/nwhitehorn/ps3/arm/at91/at91_wdt.c
     - copied unchanged from r213837, head/sys/arm/at91/at91_wdt.c
  user/nwhitehorn/ps3/arm/at91/at91_wdtreg.h
     - copied unchanged from r213837, head/sys/arm/at91/at91_wdtreg.h
  user/nwhitehorn/ps3/arm/at91/at91reg.h
     - copied unchanged from r213837, head/sys/arm/at91/at91reg.h
  user/nwhitehorn/ps3/arm/at91/at91rm9200.c
     - copied unchanged from r213837, head/sys/arm/at91/at91rm9200.c
  user/nwhitehorn/ps3/arm/at91/at91sam9260.c
     - copied unchanged from r213837, head/sys/arm/at91/at91sam9260.c
  user/nwhitehorn/ps3/arm/at91/at91sam9260reg.h
     - copied unchanged from r213837, head/sys/arm/at91/at91sam9260reg.h
  user/nwhitehorn/ps3/arm/at91/at91sam9g20.c
     - copied unchanged from r213837, head/sys/arm/at91/at91sam9g20.c
  user/nwhitehorn/ps3/arm/at91/board_qila9g20.c
     - copied unchanged from r213837, head/sys/arm/at91/board_qila9g20.c
  user/nwhitehorn/ps3/arm/at91/board_sam9g20ek.c
     - copied unchanged from r213837, head/sys/arm/at91/board_sam9g20ek.c
  user/nwhitehorn/ps3/arm/at91/std.qila9g20
     - copied unchanged from r213837, head/sys/arm/at91/std.qila9g20
  user/nwhitehorn/ps3/arm/at91/std.sam9g20ek
     - copied unchanged from r213837, head/sys/arm/at91/std.sam9g20ek
  user/nwhitehorn/ps3/arm/conf/QILA9G20
     - copied unchanged from r213837, head/sys/arm/conf/QILA9G20
  user/nwhitehorn/ps3/arm/conf/QILA9G20.hints
     - copied unchanged from r213837, head/sys/arm/conf/QILA9G20.hints
  user/nwhitehorn/ps3/arm/conf/SAM9G20EK
     - copied unchanged from r213837, head/sys/arm/conf/SAM9G20EK
  user/nwhitehorn/ps3/arm/conf/SAM9G20EK.hints
     - copied unchanged from r213837, head/sys/arm/conf/SAM9G20EK.hints
  user/nwhitehorn/ps3/boot/common/crc32.c
     - copied unchanged from r213837, head/sys/boot/common/crc32.c
  user/nwhitehorn/ps3/boot/common/crc32.h
     - copied unchanged from r213837, head/sys/boot/common/crc32.h
  user/nwhitehorn/ps3/boot/common/gpt.c
     - copied unchanged from r213837, head/sys/boot/common/gpt.c
  user/nwhitehorn/ps3/boot/common/gpt.h
     - copied unchanged from r213837, head/sys/boot/common/gpt.h
  user/nwhitehorn/ps3/boot/common/util.c
     - copied unchanged from r213837, head/sys/boot/common/util.c
  user/nwhitehorn/ps3/boot/common/util.h
     - copied unchanged from r213837, head/sys/boot/common/util.h
  user/nwhitehorn/ps3/boot/i386/common/
     - copied from r213837, head/sys/boot/i386/common/
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslmessages.h
     - copied unchanged from r213837, head/sys/contrib/dev/acpica/compiler/aslmessages.h
  user/nwhitehorn/ps3/contrib/dev/acpica/hardware/hwpci.c
     - copied unchanged from r213837, head/sys/contrib/dev/acpica/hardware/hwpci.c
  user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utxferror.c
     - copied unchanged from r213837, head/sys/contrib/dev/acpica/utilities/utxferror.c
  user/nwhitehorn/ps3/dev/gpio/
     - copied from r213837, head/sys/dev/gpio/
  user/nwhitehorn/ps3/dev/usb/controller/xhci.c
     - copied unchanged from r213837, head/sys/dev/usb/controller/xhci.c
  user/nwhitehorn/ps3/dev/usb/controller/xhci.h
     - copied unchanged from r213837, head/sys/dev/usb/controller/xhci.h
  user/nwhitehorn/ps3/dev/usb/controller/xhci_pci.c
     - copied unchanged from r213837, head/sys/dev/usb/controller/xhci_pci.c
  user/nwhitehorn/ps3/dev/usb/controller/xhcireg.h
     - copied unchanged from r213837, head/sys/dev/usb/controller/xhcireg.h
  user/nwhitehorn/ps3/dev/usb/net/if_ipheth.c
     - copied unchanged from r213837, head/sys/dev/usb/net/if_ipheth.c
  user/nwhitehorn/ps3/dev/usb/net/if_iphethvar.h
     - copied unchanged from r213837, head/sys/dev/usb/net/if_iphethvar.h
  user/nwhitehorn/ps3/fs/devfs/devfs_dir.c
     - copied unchanged from r213837, head/sys/fs/devfs/devfs_dir.c
  user/nwhitehorn/ps3/kern/vfs_mountroot.c
     - copied unchanged from r213837, head/sys/kern/vfs_mountroot.c
  user/nwhitehorn/ps3/libkern/inet_ntop.c
     - copied unchanged from r213837, head/sys/libkern/inet_ntop.c
  user/nwhitehorn/ps3/libkern/inet_pton.c
     - copied unchanged from r213837, head/sys/libkern/inet_pton.c
  user/nwhitehorn/ps3/mips/atheros/ar71xx_gpio.c
     - copied unchanged from r213837, head/sys/mips/atheros/ar71xx_gpio.c
  user/nwhitehorn/ps3/mips/atheros/ar71xx_gpiovar.h
     - copied unchanged from r213837, head/sys/mips/atheros/ar71xx_gpiovar.h
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-mv88e61xx.c
     - copied unchanged from r213837, head/sys/mips/cavium/octe/ethernet-mv88e61xx.c
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-mv88e61xx.h
     - copied unchanged from r213837, head/sys/mips/cavium/octe/ethernet-mv88e61xx.h
  user/nwhitehorn/ps3/mips/cavium/octe/mv88e61xxphy.c
     - copied unchanged from r213837, head/sys/mips/cavium/octe/mv88e61xxphy.c
  user/nwhitehorn/ps3/mips/cavium/octe/mv88e61xxphyreg.h
     - copied unchanged from r213837, head/sys/mips/cavium/octe/mv88e61xxphyreg.h
  user/nwhitehorn/ps3/modules/usb/ipheth/
     - copied from r213837, head/sys/modules/usb/ipheth/
  user/nwhitehorn/ps3/modules/usb/xhci/
     - copied from r213837, head/sys/modules/usb/xhci/
  user/nwhitehorn/ps3/sys/gpio.h
     - copied unchanged from r213837, head/sys/sys/gpio.h
Replaced:
  user/nwhitehorn/ps3/kern/Makefile
     - copied unchanged from r213837, head/sys/kern/Makefile
Deleted:
  user/nwhitehorn/ps3/arm/at91/at91_pio_sam9.h
  user/nwhitehorn/ps3/arm/at91/at91sam9.c
  user/nwhitehorn/ps3/arm/at91/at91sam9_machdep.c
  user/nwhitehorn/ps3/dev/mii/axphyreg.h
  user/nwhitehorn/ps3/mips/rmi/dev/sec/stats.h
  user/nwhitehorn/ps3/rpc/inet_ntop.c
  user/nwhitehorn/ps3/rpc/inet_pton.c
Modified:
  user/nwhitehorn/ps3/amd64/amd64/busdma_machdep.c
  user/nwhitehorn/ps3/amd64/amd64/identcpu.c
  user/nwhitehorn/ps3/amd64/amd64/machdep.c
  user/nwhitehorn/ps3/amd64/amd64/mp_machdep.c
  user/nwhitehorn/ps3/amd64/conf/GENERIC
  user/nwhitehorn/ps3/amd64/conf/NOTES
  user/nwhitehorn/ps3/amd64/include/specialreg.h
  user/nwhitehorn/ps3/amd64/include/vmparam.h
  user/nwhitehorn/ps3/amd64/linux32/linux32_proto.h
  user/nwhitehorn/ps3/amd64/linux32/linux32_syscall.h
  user/nwhitehorn/ps3/amd64/linux32/linux32_sysent.c
  user/nwhitehorn/ps3/amd64/linux32/linux32_sysvec.c
  user/nwhitehorn/ps3/amd64/linux32/syscalls.master
  user/nwhitehorn/ps3/arm/arm/cpufunc.c
  user/nwhitehorn/ps3/arm/arm/cpufunc_asm_sheeva.S
  user/nwhitehorn/ps3/arm/at91/at91.c
  user/nwhitehorn/ps3/arm/at91/at91_machdep.c
  user/nwhitehorn/ps3/arm/at91/at91_mci.c
  user/nwhitehorn/ps3/arm/at91/at91_pio.c
  user/nwhitehorn/ps3/arm/at91/at91_pio_rm9200.h
  user/nwhitehorn/ps3/arm/at91/at91_pioreg.h
  user/nwhitehorn/ps3/arm/at91/at91_pit.c
  user/nwhitehorn/ps3/arm/at91/at91_pmc.c
  user/nwhitehorn/ps3/arm/at91/at91_pmcreg.h
  user/nwhitehorn/ps3/arm/at91/at91_pmcvar.h
  user/nwhitehorn/ps3/arm/at91/at91_twi.c
  user/nwhitehorn/ps3/arm/at91/at91_twireg.h
  user/nwhitehorn/ps3/arm/at91/at91rm92reg.h
  user/nwhitehorn/ps3/arm/at91/at91sam9g20reg.h
  user/nwhitehorn/ps3/arm/at91/at91var.h
  user/nwhitehorn/ps3/arm/at91/board_hl201.c
  user/nwhitehorn/ps3/arm/at91/board_kb920x.c
  user/nwhitehorn/ps3/arm/at91/files.at91
  user/nwhitehorn/ps3/arm/at91/files.at91sam9
  user/nwhitehorn/ps3/arm/at91/if_ate.c
  user/nwhitehorn/ps3/arm/at91/if_atereg.h
  user/nwhitehorn/ps3/arm/at91/if_macb.c
  user/nwhitehorn/ps3/arm/at91/std.at91sam9
  user/nwhitehorn/ps3/arm/at91/std.kb920x
  user/nwhitehorn/ps3/arm/at91/uart_cpu_at91rm9200usart.c
  user/nwhitehorn/ps3/arm/at91/uart_dev_at91usart.c
  user/nwhitehorn/ps3/arm/include/cpufunc.h
  user/nwhitehorn/ps3/arm/mv/timer.c
  user/nwhitehorn/ps3/boot/common/loader.8
  user/nwhitehorn/ps3/boot/forth/loader.conf
  user/nwhitehorn/ps3/boot/i386/boot2/Makefile
  user/nwhitehorn/ps3/boot/i386/gptboot/Makefile
  user/nwhitehorn/ps3/boot/i386/gptboot/gptboot.c
  user/nwhitehorn/ps3/boot/i386/gptzfsboot/Makefile
  user/nwhitehorn/ps3/boot/i386/libi386/biosdisk.c
  user/nwhitehorn/ps3/boot/i386/zfsboot/Makefile
  user/nwhitehorn/ps3/boot/i386/zfsboot/zfsboot.c
  user/nwhitehorn/ps3/boot/pc98/boot2/Makefile
  user/nwhitehorn/ps3/boot/zfs/Makefile
  user/nwhitehorn/ps3/boot/zfs/zfs.c
  user/nwhitehorn/ps3/boot/zfs/zfsimpl.c
  user/nwhitehorn/ps3/cam/cam_xpt.c
  user/nwhitehorn/ps3/cam/scsi/scsi_pass.c
  user/nwhitehorn/ps3/cddl/compat/opensolaris/kern/opensolaris_cmn_err.c
  user/nwhitehorn/ps3/cddl/compat/opensolaris/kern/opensolaris_kmem.c
  user/nwhitehorn/ps3/cddl/compat/opensolaris/kern/opensolaris_taskq.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scrub.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev.h
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_disk.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fm.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c
  user/nwhitehorn/ps3/compat/linprocfs/linprocfs.c
  user/nwhitehorn/ps3/compat/linux/linux_futex.c
  user/nwhitehorn/ps3/compat/ndis/subr_ntoskrnl.c
  user/nwhitehorn/ps3/compat/svr4/svr4_sysvec.c
  user/nwhitehorn/ps3/compat/x86bios/x86bios.c
  user/nwhitehorn/ps3/conf/NOTES
  user/nwhitehorn/ps3/conf/files
  user/nwhitehorn/ps3/conf/files.amd64
  user/nwhitehorn/ps3/conf/files.powerpc
  user/nwhitehorn/ps3/conf/ldscript.mips.octeon1.64
  user/nwhitehorn/ps3/conf/newvers.sh
  user/nwhitehorn/ps3/conf/options
  user/nwhitehorn/ps3/conf/options.arm
  user/nwhitehorn/ps3/contrib/dev/acpica/acpica_prep.sh
  user/nwhitehorn/ps3/contrib/dev/acpica/changes.txt
  user/nwhitehorn/ps3/contrib/dev/acpica/common/adfile.c
  user/nwhitehorn/ps3/contrib/dev/acpica/common/adisasm.c
  user/nwhitehorn/ps3/contrib/dev/acpica/common/adwalk.c
  user/nwhitehorn/ps3/contrib/dev/acpica/common/dmrestag.c
  user/nwhitehorn/ps3/contrib/dev/acpica/common/getopt.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslanalyze.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslcodegen.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslcompile.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslcompiler.h
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/asldefine.h
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslerror.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslfiles.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/asllisting.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/asllookup.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslmain.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslopcodes.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslpredef.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslresource.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslrestype1.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslrestype1i.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslrestype2d.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslrestype2e.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslrestype2q.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslrestype2w.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslstartup.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/asltypes.h
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/aslutils.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/dtcompile.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/dtio.c
  user/nwhitehorn/ps3/contrib/dev/acpica/compiler/dttemplate.c
  user/nwhitehorn/ps3/contrib/dev/acpica/debugger/dbexec.c
  user/nwhitehorn/ps3/contrib/dev/acpica/events/evrgnini.c
  user/nwhitehorn/ps3/contrib/dev/acpica/events/evxfregn.c
  user/nwhitehorn/ps3/contrib/dev/acpica/executer/exmutex.c
  user/nwhitehorn/ps3/contrib/dev/acpica/include/acapps.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/acglobal.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/achware.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/aclocal.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/acmacros.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/acnamesp.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/acpiosxf.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/acpixf.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/actypes.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/acutils.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/platform/acenv.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/platform/acfreebsd.h
  user/nwhitehorn/ps3/contrib/dev/acpica/include/platform/acgcc.h
  user/nwhitehorn/ps3/contrib/dev/acpica/namespace/nsrepair2.c
  user/nwhitehorn/ps3/contrib/dev/acpica/namespace/nsutils.c
  user/nwhitehorn/ps3/contrib/dev/acpica/osunixxf.c
  user/nwhitehorn/ps3/contrib/dev/acpica/tables/tbfadt.c
  user/nwhitehorn/ps3/contrib/dev/acpica/tools/acpiexec/aecommon.h
  user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utdebug.c
  user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utglobal.c
  user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utids.c
  user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utmath.c
  user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utmisc.c
  user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utmutex.c
  user/nwhitehorn/ps3/contrib/dev/acpica/utilities/utosi.c
  user/nwhitehorn/ps3/contrib/ipfilter/netinet/mlfk_ipl.c
  user/nwhitehorn/ps3/contrib/ngatm/netnatm/api/cc_conn.c
  user/nwhitehorn/ps3/contrib/ngatm/netnatm/msg/privmsg.c
  user/nwhitehorn/ps3/contrib/ngatm/netnatm/msg/uni_ie.c
  user/nwhitehorn/ps3/contrib/ngatm/netnatm/sig/sig_call.c
  user/nwhitehorn/ps3/contrib/ngatm/netnatm/sig/sig_reset.c
  user/nwhitehorn/ps3/contrib/octeon-sdk/cvmx-app-init.h
  user/nwhitehorn/ps3/contrib/octeon-sdk/cvmx-helper-board.c
  user/nwhitehorn/ps3/contrib/octeon-sdk/cvmx-helper-spi.c
  user/nwhitehorn/ps3/contrib/octeon-sdk/cvmx-helper.c
  user/nwhitehorn/ps3/contrib/octeon-sdk/cvmx-spi.c
  user/nwhitehorn/ps3/contrib/pf/netinet/in4_cksum.c
  user/nwhitehorn/ps3/crypto/aesni/aeskeys_i386.S
  user/nwhitehorn/ps3/crypto/aesni/aesni.c
  user/nwhitehorn/ps3/crypto/aesni/aesni.h
  user/nwhitehorn/ps3/crypto/aesni/aesni_wrap.c
  user/nwhitehorn/ps3/dev/aac/aac.c
  user/nwhitehorn/ps3/dev/aac/aac_cam.c
  user/nwhitehorn/ps3/dev/aac/aac_disk.c
  user/nwhitehorn/ps3/dev/aac/aacreg.h
  user/nwhitehorn/ps3/dev/aac/aacvar.h
  user/nwhitehorn/ps3/dev/acpi_support/acpi_wmi.c
  user/nwhitehorn/ps3/dev/acpica/Osd/OsdHardware.c
  user/nwhitehorn/ps3/dev/acpica/acpi.c
  user/nwhitehorn/ps3/dev/acpica/acpi_cpu.c
  user/nwhitehorn/ps3/dev/acpica/acpi_ec.c
  user/nwhitehorn/ps3/dev/acpica/acpi_hpet.c
  user/nwhitehorn/ps3/dev/ae/if_ae.c
  user/nwhitehorn/ps3/dev/aic7xxx/aicasm/aicasm_macro_scan.l
  user/nwhitehorn/ps3/dev/aic7xxx/aicasm/aicasm_scan.l
  user/nwhitehorn/ps3/dev/alc/if_alc.c
  user/nwhitehorn/ps3/dev/ata/chipsets/ata-ahci.c
  user/nwhitehorn/ps3/dev/ata/chipsets/ata-siliconimage.c
  user/nwhitehorn/ps3/dev/ata/chipsets/ata-via.c
  user/nwhitehorn/ps3/dev/bce/if_bce.c
  user/nwhitehorn/ps3/dev/bce/if_bcereg.h
  user/nwhitehorn/ps3/dev/bge/if_bge.c
  user/nwhitehorn/ps3/dev/bge/if_bgereg.h
  user/nwhitehorn/ps3/dev/bwn/if_bwn.c
  user/nwhitehorn/ps3/dev/ciss/ciss.c
  user/nwhitehorn/ps3/dev/cxgb/cxgb_sge.c
  user/nwhitehorn/ps3/dev/dc/dcphy.c
  user/nwhitehorn/ps3/dev/dc/pnphy.c
  user/nwhitehorn/ps3/dev/e1000/e1000_82571.c
  user/nwhitehorn/ps3/dev/e1000/e1000_82571.h
  user/nwhitehorn/ps3/dev/e1000/e1000_82575.c
  user/nwhitehorn/ps3/dev/e1000/e1000_82575.h
  user/nwhitehorn/ps3/dev/e1000/e1000_api.c
  user/nwhitehorn/ps3/dev/e1000/e1000_api.h
  user/nwhitehorn/ps3/dev/e1000/e1000_defines.h
  user/nwhitehorn/ps3/dev/e1000/e1000_hw.h
  user/nwhitehorn/ps3/dev/e1000/e1000_ich8lan.c
  user/nwhitehorn/ps3/dev/e1000/e1000_ich8lan.h
  user/nwhitehorn/ps3/dev/e1000/e1000_mac.c
  user/nwhitehorn/ps3/dev/e1000/e1000_nvm.c
  user/nwhitehorn/ps3/dev/e1000/e1000_nvm.h
  user/nwhitehorn/ps3/dev/e1000/e1000_phy.c
  user/nwhitehorn/ps3/dev/e1000/e1000_phy.h
  user/nwhitehorn/ps3/dev/e1000/e1000_regs.h
  user/nwhitehorn/ps3/dev/e1000/if_em.c
  user/nwhitehorn/ps3/dev/e1000/if_em.h
  user/nwhitehorn/ps3/dev/e1000/if_igb.c
  user/nwhitehorn/ps3/dev/e1000/if_igb.h
  user/nwhitehorn/ps3/dev/e1000/if_lem.c
  user/nwhitehorn/ps3/dev/e1000/if_lem.h
  user/nwhitehorn/ps3/dev/et/if_et.c
  user/nwhitehorn/ps3/dev/hifn/hifn7751.c
  user/nwhitehorn/ps3/dev/hifn/hifn7751var.h
  user/nwhitehorn/ps3/dev/hptrr/hptrr_osm_bsd.c
  user/nwhitehorn/ps3/dev/hwpmc/pmc_events.h
  user/nwhitehorn/ps3/dev/if_ndis/if_ndis.c
  user/nwhitehorn/ps3/dev/iwi/if_iwi.c
  user/nwhitehorn/ps3/dev/iwi/if_iwivar.h
  user/nwhitehorn/ps3/dev/iwn/if_iwn.c
  user/nwhitehorn/ps3/dev/iwn/if_iwnvar.h
  user/nwhitehorn/ps3/dev/kbd/kbd.c
  user/nwhitehorn/ps3/dev/kbdmux/kbdmux.c
  user/nwhitehorn/ps3/dev/mii/acphy.c
  user/nwhitehorn/ps3/dev/mii/amphy.c
  user/nwhitehorn/ps3/dev/mii/atphy.c
  user/nwhitehorn/ps3/dev/mii/axphy.c
  user/nwhitehorn/ps3/dev/mii/bmtphy.c
  user/nwhitehorn/ps3/dev/mii/brgphy.c
  user/nwhitehorn/ps3/dev/mii/ciphy.c
  user/nwhitehorn/ps3/dev/mii/e1000phy.c
  user/nwhitehorn/ps3/dev/mii/exphy.c
  user/nwhitehorn/ps3/dev/mii/gentbi.c
  user/nwhitehorn/ps3/dev/mii/icsphy.c
  user/nwhitehorn/ps3/dev/mii/inphy.c
  user/nwhitehorn/ps3/dev/mii/ip1000phy.c
  user/nwhitehorn/ps3/dev/mii/jmphy.c
  user/nwhitehorn/ps3/dev/mii/lxtphy.c
  user/nwhitehorn/ps3/dev/mii/mii.c
  user/nwhitehorn/ps3/dev/mii/mii.h
  user/nwhitehorn/ps3/dev/mii/mii_physubr.c
  user/nwhitehorn/ps3/dev/mii/mlphy.c
  user/nwhitehorn/ps3/dev/mii/nsgphy.c
  user/nwhitehorn/ps3/dev/mii/nsphy.c
  user/nwhitehorn/ps3/dev/mii/nsphyter.c
  user/nwhitehorn/ps3/dev/mii/pnaphy.c
  user/nwhitehorn/ps3/dev/mii/qsphy.c
  user/nwhitehorn/ps3/dev/mii/rgephy.c
  user/nwhitehorn/ps3/dev/mii/rlphy.c
  user/nwhitehorn/ps3/dev/mii/rlswitch.c
  user/nwhitehorn/ps3/dev/mii/ruephy.c
  user/nwhitehorn/ps3/dev/mii/smcphy.c
  user/nwhitehorn/ps3/dev/mii/tdkphy.c
  user/nwhitehorn/ps3/dev/mii/tlphy.c
  user/nwhitehorn/ps3/dev/mii/tlphyreg.h
  user/nwhitehorn/ps3/dev/mii/truephy.c
  user/nwhitehorn/ps3/dev/mii/ukphy.c
  user/nwhitehorn/ps3/dev/mii/ukphy_subr.c
  user/nwhitehorn/ps3/dev/mii/xmphy.c
  user/nwhitehorn/ps3/dev/mps/mps.c
  user/nwhitehorn/ps3/dev/mps/mps_ioctl.h
  user/nwhitehorn/ps3/dev/mps/mps_sas.c
  user/nwhitehorn/ps3/dev/mps/mps_user.c
  user/nwhitehorn/ps3/dev/mps/mpsvar.h
  user/nwhitehorn/ps3/dev/mpt/mpt.c
  user/nwhitehorn/ps3/dev/mpt/mpt.h
  user/nwhitehorn/ps3/dev/ral/rt2560.c
  user/nwhitehorn/ps3/dev/sf/if_sf.c
  user/nwhitehorn/ps3/dev/sound/pci/envy24ht.c
  user/nwhitehorn/ps3/dev/sound/pci/spicds.c
  user/nwhitehorn/ps3/dev/stge/if_stge.c
  user/nwhitehorn/ps3/dev/syscons/scvgarndr.c
  user/nwhitehorn/ps3/dev/syscons/syscons.c
  user/nwhitehorn/ps3/dev/usb/controller/at91dci.c
  user/nwhitehorn/ps3/dev/usb/controller/atmegadci.c
  user/nwhitehorn/ps3/dev/usb/controller/avr32dci.c
  user/nwhitehorn/ps3/dev/usb/controller/musb_otg.c
  user/nwhitehorn/ps3/dev/usb/controller/ohci.c
  user/nwhitehorn/ps3/dev/usb/controller/usb_controller.c
  user/nwhitehorn/ps3/dev/usb/controller/uss820dci.c
  user/nwhitehorn/ps3/dev/usb/net/if_axe.c
  user/nwhitehorn/ps3/dev/usb/net/if_axereg.h
  user/nwhitehorn/ps3/dev/usb/net/if_cdce.c
  user/nwhitehorn/ps3/dev/usb/net/if_cdcereg.h
  user/nwhitehorn/ps3/dev/usb/net/uhso.c
  user/nwhitehorn/ps3/dev/usb/net/usb_ethernet.c
  user/nwhitehorn/ps3/dev/usb/serial/u3g.c
  user/nwhitehorn/ps3/dev/usb/storage/umass.c
  user/nwhitehorn/ps3/dev/usb/usb.h
  user/nwhitehorn/ps3/dev/usb/usb_cdc.h
  user/nwhitehorn/ps3/dev/usb/usb_controller.h
  user/nwhitehorn/ps3/dev/usb/usb_dev.c
  user/nwhitehorn/ps3/dev/usb/usb_device.c
  user/nwhitehorn/ps3/dev/usb/usb_device.h
  user/nwhitehorn/ps3/dev/usb/usb_generic.c
  user/nwhitehorn/ps3/dev/usb/usb_handle_request.c
  user/nwhitehorn/ps3/dev/usb/usb_hub.c
  user/nwhitehorn/ps3/dev/usb/usb_hub.h
  user/nwhitehorn/ps3/dev/usb/usb_msctest.c
  user/nwhitehorn/ps3/dev/usb/usb_msctest.h
  user/nwhitehorn/ps3/dev/usb/usb_parse.c
  user/nwhitehorn/ps3/dev/usb/usb_request.c
  user/nwhitehorn/ps3/dev/usb/usb_request.h
  user/nwhitehorn/ps3/dev/usb/usb_transfer.c
  user/nwhitehorn/ps3/dev/usb/usb_transfer.h
  user/nwhitehorn/ps3/dev/usb/usbdevs
  user/nwhitehorn/ps3/dev/usb/usbdi.h
  user/nwhitehorn/ps3/dev/usb/usbdi_util.h
  user/nwhitehorn/ps3/dev/usb/wlan/if_rum.c
  user/nwhitehorn/ps3/dev/usb/wlan/if_upgt.c
  user/nwhitehorn/ps3/fs/cd9660/cd9660_mount.h
  user/nwhitehorn/ps3/fs/cd9660/cd9660_vfsops.c
  user/nwhitehorn/ps3/fs/devfs/devfs.h
  user/nwhitehorn/ps3/fs/devfs/devfs_devs.c
  user/nwhitehorn/ps3/fs/devfs/devfs_int.h
  user/nwhitehorn/ps3/fs/devfs/devfs_vnops.c
  user/nwhitehorn/ps3/fs/hpfs/hpfs_vfsops.c
  user/nwhitehorn/ps3/fs/hpfs/hpfsmount.h
  user/nwhitehorn/ps3/fs/msdosfs/msdosfs_denode.c
  user/nwhitehorn/ps3/fs/msdosfs/msdosfs_vfsops.c
  user/nwhitehorn/ps3/fs/msdosfs/msdosfs_vnops.c
  user/nwhitehorn/ps3/fs/msdosfs/msdosfsmount.h
  user/nwhitehorn/ps3/fs/nfsserver/nfs_nfsdport.c
  user/nwhitehorn/ps3/fs/nfsserver/nfs_nfsdstate.c
  user/nwhitehorn/ps3/fs/ntfs/ntfs_vfsops.c
  user/nwhitehorn/ps3/fs/ntfs/ntfsmount.h
  user/nwhitehorn/ps3/fs/nwfs/nwfs_vfsops.c
  user/nwhitehorn/ps3/fs/smbfs/smbfs_vfsops.c
  user/nwhitehorn/ps3/fs/tmpfs/tmpfs_vnops.c
  user/nwhitehorn/ps3/gdb/gdb_cons.c
  user/nwhitehorn/ps3/geom/concat/g_concat.c
  user/nwhitehorn/ps3/geom/eli/g_eli.c
  user/nwhitehorn/ps3/geom/eli/g_eli.h
  user/nwhitehorn/ps3/geom/eli/g_eli_crypto.c
  user/nwhitehorn/ps3/geom/eli/g_eli_ctl.c
  user/nwhitehorn/ps3/geom/eli/g_eli_integrity.c
  user/nwhitehorn/ps3/geom/eli/g_eli_key.c
  user/nwhitehorn/ps3/geom/eli/g_eli_privacy.c
  user/nwhitehorn/ps3/geom/part/g_part.c
  user/nwhitehorn/ps3/geom/part/g_part_ebr.c
  user/nwhitehorn/ps3/geom/part/g_part_gpt.c
  user/nwhitehorn/ps3/geom/part/g_part_mbr.c
  user/nwhitehorn/ps3/geom/part/g_part_pc98.c
  user/nwhitehorn/ps3/geom/vinum/geom_vinum_move.c
  user/nwhitehorn/ps3/geom/vinum/geom_vinum_rename.c
  user/nwhitehorn/ps3/geom/virstor/g_virstor.c
  user/nwhitehorn/ps3/gnu/fs/reiserfs/reiserfs_mount.h
  user/nwhitehorn/ps3/gnu/fs/reiserfs/reiserfs_vfsops.c
  user/nwhitehorn/ps3/i386/conf/GENERIC
  user/nwhitehorn/ps3/i386/conf/NOTES
  user/nwhitehorn/ps3/i386/i386/busdma_machdep.c
  user/nwhitehorn/ps3/i386/i386/identcpu.c
  user/nwhitehorn/ps3/i386/i386/locore.s
  user/nwhitehorn/ps3/i386/i386/machdep.c
  user/nwhitehorn/ps3/i386/i386/mp_machdep.c
  user/nwhitehorn/ps3/i386/i386/pmap.c
  user/nwhitehorn/ps3/i386/i386/support.s
  user/nwhitehorn/ps3/i386/ibcs2/ibcs2_sysvec.c
  user/nwhitehorn/ps3/i386/include/pmap.h
  user/nwhitehorn/ps3/i386/include/specialreg.h
  user/nwhitehorn/ps3/i386/linux/linux_sysvec.c
  user/nwhitehorn/ps3/ia64/ia64/busdma_machdep.c
  user/nwhitehorn/ps3/ia64/include/_stdint.h
  user/nwhitehorn/ps3/ia64/include/bus.h
  user/nwhitehorn/ps3/kern/imgact_shell.c
  user/nwhitehorn/ps3/kern/init_main.c
  user/nwhitehorn/ps3/kern/kern_clocksource.c
  user/nwhitehorn/ps3/kern/kern_conf.c
  user/nwhitehorn/ps3/kern/kern_exit.c
  user/nwhitehorn/ps3/kern/kern_fork.c
  user/nwhitehorn/ps3/kern/kern_kthread.c
  user/nwhitehorn/ps3/kern/kern_linker.c
  user/nwhitehorn/ps3/kern/kern_malloc.c
  user/nwhitehorn/ps3/kern/kern_ntptime.c
  user/nwhitehorn/ps3/kern/kern_proc.c
  user/nwhitehorn/ps3/kern/kern_resource.c
  user/nwhitehorn/ps3/kern/kern_shutdown.c
  user/nwhitehorn/ps3/kern/kern_sig.c
  user/nwhitehorn/ps3/kern/kern_sysctl.c
  user/nwhitehorn/ps3/kern/kern_tc.c
  user/nwhitehorn/ps3/kern/kern_thr.c
  user/nwhitehorn/ps3/kern/kern_thread.c
  user/nwhitehorn/ps3/kern/kern_time.c
  user/nwhitehorn/ps3/kern/kern_umtx.c
  user/nwhitehorn/ps3/kern/link_elf.c
  user/nwhitehorn/ps3/kern/link_elf_obj.c
  user/nwhitehorn/ps3/kern/p1003_1b.c
  user/nwhitehorn/ps3/kern/sched_ule.c
  user/nwhitehorn/ps3/kern/subr_acl_nfs4.c
  user/nwhitehorn/ps3/kern/subr_bus.c
  user/nwhitehorn/ps3/kern/subr_kdb.c
  user/nwhitehorn/ps3/kern/subr_lock.c
  user/nwhitehorn/ps3/kern/subr_sbuf.c
  user/nwhitehorn/ps3/kern/subr_sleepqueue.c
  user/nwhitehorn/ps3/kern/subr_smp.c
  user/nwhitehorn/ps3/kern/subr_stack.c
  user/nwhitehorn/ps3/kern/subr_taskqueue.c
  user/nwhitehorn/ps3/kern/subr_trap.c
  user/nwhitehorn/ps3/kern/subr_witness.c
  user/nwhitehorn/ps3/kern/sys_process.c
  user/nwhitehorn/ps3/kern/tty.c
  user/nwhitehorn/ps3/kern/uipc_mqueue.c
  user/nwhitehorn/ps3/kern/uipc_socket.c
  user/nwhitehorn/ps3/kern/vfs_aio.c
  user/nwhitehorn/ps3/kern/vfs_mount.c
  user/nwhitehorn/ps3/mips/atheros/ar71xx_machdep.c
  user/nwhitehorn/ps3/mips/atheros/ar71xxreg.h
  user/nwhitehorn/ps3/mips/atheros/files.ar71xx
  user/nwhitehorn/ps3/mips/cavium/ciu.c
  user/nwhitehorn/ps3/mips/cavium/files.octeon1
  user/nwhitehorn/ps3/mips/cavium/obio.c
  user/nwhitehorn/ps3/mips/cavium/octe/cavium-ethernet.h
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-common.c
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-headers.h
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-mdio.c
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-rgmii.c
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-rx.c
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-sgmii.c
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-tx.c
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet-xaui.c
  user/nwhitehorn/ps3/mips/cavium/octe/ethernet.c
  user/nwhitehorn/ps3/mips/cavium/octe/octe.c
  user/nwhitehorn/ps3/mips/cavium/octeon_machdep.c
  user/nwhitehorn/ps3/mips/cavium/octopci.c
  user/nwhitehorn/ps3/mips/cavium/octopcireg.h
  user/nwhitehorn/ps3/mips/cavium/std.octeon1
  user/nwhitehorn/ps3/mips/cavium/uart_bus_octeonusart.c
  user/nwhitehorn/ps3/mips/cavium/uart_cpu_octeonusart.c
  user/nwhitehorn/ps3/mips/cavium/uart_dev_oct16550.c
  user/nwhitehorn/ps3/mips/cavium/usb/octusb.c
  user/nwhitehorn/ps3/mips/conf/AR71XX
  user/nwhitehorn/ps3/mips/conf/AR71XX.hints
  user/nwhitehorn/ps3/mips/conf/OCTEON1
  user/nwhitehorn/ps3/mips/include/cpuregs.h
  user/nwhitehorn/ps3/mips/include/md_var.h
  user/nwhitehorn/ps3/mips/include/pmap.h
  user/nwhitehorn/ps3/mips/mips/locore.S
  user/nwhitehorn/ps3/mips/mips/machdep.c
  user/nwhitehorn/ps3/mips/mips/pmap.c
  user/nwhitehorn/ps3/mips/rmi/board.c
  user/nwhitehorn/ps3/mips/rmi/board.h
  user/nwhitehorn/ps3/mips/rmi/dev/nlge/if_nlge.c
  user/nwhitehorn/ps3/mips/rmi/dev/nlge/if_nlge.h
  user/nwhitehorn/ps3/mips/rmi/dev/sec/desc.h
  user/nwhitehorn/ps3/mips/rmi/dev/sec/rmilib.c
  user/nwhitehorn/ps3/mips/rmi/dev/sec/rmilib.h
  user/nwhitehorn/ps3/mips/rmi/dev/sec/rmisec.c
  user/nwhitehorn/ps3/mips/rmi/dev/xlr/rge.c
  user/nwhitehorn/ps3/mips/rmi/dev/xlr/rge.h
  user/nwhitehorn/ps3/mips/rmi/fmn.c
  user/nwhitehorn/ps3/mips/rmi/iodi.c
  user/nwhitehorn/ps3/mips/rmi/msgring.h
  user/nwhitehorn/ps3/mips/rmi/pic.h
  user/nwhitehorn/ps3/mips/rmi/rmi_mips_exts.h
  user/nwhitehorn/ps3/mips/rmi/xlr_machdep.c
  user/nwhitehorn/ps3/mips/rmi/xlr_pci.c
  user/nwhitehorn/ps3/mips/sibyte/sb_zbpci.c
  user/nwhitehorn/ps3/modules/acpi/acpi/Makefile
  user/nwhitehorn/ps3/modules/cryptodev/Makefile
  user/nwhitehorn/ps3/modules/krpc/Makefile
  user/nwhitehorn/ps3/modules/mem/Makefile
  user/nwhitehorn/ps3/modules/sysvipc/sysvmsg/Makefile
  user/nwhitehorn/ps3/modules/sysvipc/sysvsem/Makefile
  user/nwhitehorn/ps3/modules/usb/Makefile
  user/nwhitehorn/ps3/net/bpf.c
  user/nwhitehorn/ps3/net/if_tap.c
  user/nwhitehorn/ps3/net/if_tun.c
  user/nwhitehorn/ps3/net80211/ieee80211_scan_sta.c
  user/nwhitehorn/ps3/netgraph/ng_UI.c
  user/nwhitehorn/ps3/netgraph/ng_async.c
  user/nwhitehorn/ps3/netgraph/ng_frame_relay.c
  user/nwhitehorn/ps3/netgraph/ng_gif_demux.c
  user/nwhitehorn/ps3/netgraph/ng_iface.c
  user/nwhitehorn/ps3/netgraph/ng_rfc1490.c
  user/nwhitehorn/ps3/netgraph/ng_socket.c
  user/nwhitehorn/ps3/netgraph/ng_tty.c
  user/nwhitehorn/ps3/netinet/igmp.c
  user/nwhitehorn/ps3/netinet/in.h
  user/nwhitehorn/ps3/netinet/in_rmx.c
  user/nwhitehorn/ps3/netinet/ip_carp.c
  user/nwhitehorn/ps3/netinet/ip_options.c
  user/nwhitehorn/ps3/netinet/ip_output.c
  user/nwhitehorn/ps3/netinet/ipfw/dn_sched.h
  user/nwhitehorn/ps3/netinet/ipfw/dn_sched_qfq.c
  user/nwhitehorn/ps3/netinet/ipfw/dn_sched_wf2q.c
  user/nwhitehorn/ps3/netinet/ipfw/ip_dn_glue.c
  user/nwhitehorn/ps3/netinet/ipfw/ip_dn_io.c
  user/nwhitehorn/ps3/netinet/ipfw/ip_dn_private.h
  user/nwhitehorn/ps3/netinet/ipfw/ip_dummynet.c
  user/nwhitehorn/ps3/netinet/ipfw/ip_fw_pfil.c
  user/nwhitehorn/ps3/netinet/sctp_auth.c
  user/nwhitehorn/ps3/netinet/sctp_cc_functions.c
  user/nwhitehorn/ps3/netinet/sctp_constants.h
  user/nwhitehorn/ps3/netinet/sctp_indata.c
  user/nwhitehorn/ps3/netinet/sctp_output.c
  user/nwhitehorn/ps3/netinet/sctp_pcb.c
  user/nwhitehorn/ps3/netinet/sctp_sysctl.c
  user/nwhitehorn/ps3/netinet/sctp_sysctl.h
  user/nwhitehorn/ps3/netinet/sctp_timer.c
  user/nwhitehorn/ps3/netinet/siftr.c
  user/nwhitehorn/ps3/netinet/tcp.h
  user/nwhitehorn/ps3/netinet/tcp_input.c
  user/nwhitehorn/ps3/netinet/tcp_output.c
  user/nwhitehorn/ps3/netinet/tcp_reass.c
  user/nwhitehorn/ps3/netinet/tcp_subr.c
  user/nwhitehorn/ps3/netinet/tcp_timer.h
  user/nwhitehorn/ps3/netinet/tcp_usrreq.c
  user/nwhitehorn/ps3/netinet/tcp_var.h
  user/nwhitehorn/ps3/netinet6/in6_cksum.c
  user/nwhitehorn/ps3/netinet6/in6_rmx.c
  user/nwhitehorn/ps3/netinet6/ip6_output.c
  user/nwhitehorn/ps3/netipsec/ipsec_output.c
  user/nwhitehorn/ps3/nlm/nlm_prot_impl.c
  user/nwhitehorn/ps3/opencrypto/cryptodev.c
  user/nwhitehorn/ps3/opencrypto/cryptodev.h
  user/nwhitehorn/ps3/opencrypto/cryptosoft.c
  user/nwhitehorn/ps3/opencrypto/xform.c
  user/nwhitehorn/ps3/opencrypto/xform.h
  user/nwhitehorn/ps3/pc98/conf/GENERIC
  user/nwhitehorn/ps3/pc98/pc98/machdep.c
  user/nwhitehorn/ps3/pci/if_rl.c
  user/nwhitehorn/ps3/powerpc/aim/machdep.c
  user/nwhitehorn/ps3/powerpc/aim/mmu_oea.c
  user/nwhitehorn/ps3/powerpc/aim/mmu_oea64.c
  user/nwhitehorn/ps3/powerpc/aim/mmu_oea64.h
  user/nwhitehorn/ps3/powerpc/aim/trap.c
  user/nwhitehorn/ps3/powerpc/conf/GENERIC
  user/nwhitehorn/ps3/powerpc/conf/GENERIC64
  user/nwhitehorn/ps3/powerpc/include/altivec.h
  user/nwhitehorn/ps3/powerpc/include/memdev.h
  user/nwhitehorn/ps3/powerpc/include/pcb.h
  user/nwhitehorn/ps3/powerpc/include/pmap.h
  user/nwhitehorn/ps3/powerpc/include/trap_aim.h
  user/nwhitehorn/ps3/powerpc/include/vm.h
  user/nwhitehorn/ps3/powerpc/ofw/ofw_syscons.c
  user/nwhitehorn/ps3/powerpc/powerpc/bus_machdep.c
  user/nwhitehorn/ps3/powerpc/powerpc/busdma_machdep.c
  user/nwhitehorn/ps3/powerpc/powerpc/mem.c
  user/nwhitehorn/ps3/powerpc/powerpc/mmu_if.m
  user/nwhitehorn/ps3/powerpc/powerpc/pmap_dispatch.c
  user/nwhitehorn/ps3/powerpc/ps3/mmu_ps3.c
  user/nwhitehorn/ps3/powerpc/ps3/ps3_syscons.c
  user/nwhitehorn/ps3/rpc/clnt_dg.c
  user/nwhitehorn/ps3/rpc/clnt_vc.c
  user/nwhitehorn/ps3/rpc/rpc_com.h
  user/nwhitehorn/ps3/rpc/rpc_generic.c
  user/nwhitehorn/ps3/sparc64/conf/GENERIC
  user/nwhitehorn/ps3/sparc64/include/endian.h
  user/nwhitehorn/ps3/sparc64/sparc64/bus_machdep.c
  user/nwhitehorn/ps3/sparc64/sparc64/elf_machdep.c
  user/nwhitehorn/ps3/sun4v/conf/GENERIC
  user/nwhitehorn/ps3/sun4v/include/endian.h
  user/nwhitehorn/ps3/sys/_task.h
  user/nwhitehorn/ps3/sys/acl.h
  user/nwhitehorn/ps3/sys/conf.h
  user/nwhitehorn/ps3/sys/disklabel.h
  user/nwhitehorn/ps3/sys/exec.h
  user/nwhitehorn/ps3/sys/gpt.h
  user/nwhitehorn/ps3/sys/module.h
  user/nwhitehorn/ps3/sys/mount.h
  user/nwhitehorn/ps3/sys/mutex.h
  user/nwhitehorn/ps3/sys/param.h
  user/nwhitehorn/ps3/sys/proc.h
  user/nwhitehorn/ps3/sys/sched.h
  user/nwhitehorn/ps3/sys/signalvar.h
  user/nwhitehorn/ps3/sys/socketvar.h
  user/nwhitehorn/ps3/sys/sysctl.h
  user/nwhitehorn/ps3/sys/taskqueue.h
  user/nwhitehorn/ps3/sys/time.h
  user/nwhitehorn/ps3/sys/unistd.h
  user/nwhitehorn/ps3/sys/user.h
  user/nwhitehorn/ps3/ufs/ffs/ffs_softdep.c
  user/nwhitehorn/ps3/ufs/ffs/ffs_vfsops.c
  user/nwhitehorn/ps3/ufs/ufs/ufsmount.h
  user/nwhitehorn/ps3/vm/uma_core.c
  user/nwhitehorn/ps3/vm/vm_kern.c
  user/nwhitehorn/ps3/vm/vm_map.c
  user/nwhitehorn/ps3/vm/vm_map.h
  user/nwhitehorn/ps3/vm/vm_mmap.c
  user/nwhitehorn/ps3/vm/vm_phys.c
  user/nwhitehorn/ps3/vm/vm_reserv.c
  user/nwhitehorn/ps3/x86/isa/clock.c
Directory Properties:
  user/nwhitehorn/ps3/   (props changed)
  user/nwhitehorn/ps3/amd64/include/xen/   (props changed)
  user/nwhitehorn/ps3/boot/powerpc/ps3/   (props changed)
  user/nwhitehorn/ps3/cddl/contrib/opensolaris/   (props changed)
  user/nwhitehorn/ps3/contrib/dev/acpica/   (props changed)
  user/nwhitehorn/ps3/contrib/pf/   (props changed)
  user/nwhitehorn/ps3/contrib/x86emu/   (props changed)
  user/nwhitehorn/ps3/dev/usb/controller/   (props changed)
  user/nwhitehorn/ps3/dev/xen/xenpci/   (props changed)
  user/nwhitehorn/ps3/powerpc/ps3/   (props changed)

Modified: user/nwhitehorn/ps3/amd64/amd64/busdma_machdep.c
==============================================================================
--- user/nwhitehorn/ps3/amd64/amd64/busdma_machdep.c	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/amd64/busdma_machdep.c	Thu Oct 14 15:42:32 2010	(r213838)
@@ -526,7 +526,7 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, voi
 		CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d",
 		    __func__, dmat, dmat->flags, ENOMEM);
 		return (ENOMEM);
-	} else if ((uintptr_t)*vaddr & (dmat->alignment - 1)) {
+	} else if (vtophys(*vaddr) & (dmat->alignment - 1)) {
 		printf("bus_dmamem_alloc failed to align memory properly.\n");
 	}
 	if (flags & BUS_DMA_NOCACHE)

Modified: user/nwhitehorn/ps3/amd64/amd64/identcpu.c
==============================================================================
--- user/nwhitehorn/ps3/amd64/amd64/identcpu.c	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/amd64/identcpu.c	Thu Oct 14 15:42:32 2010	(r213838)
@@ -278,7 +278,7 @@ printcpuinfo(void)
 				"\017xTPR"	/* Send Task Priority Messages*/
 				"\020PDCM"	/* Perf/Debug Capability MSR */
 				"\021<b16>"
-				"\022<b17>"
+				"\022PCID"	/* Process-context Identifiers */
 				"\023DCA"	/* Direct Cache Access */
 				"\024SSE4.1"
 				"\025SSE4.2"

Modified: user/nwhitehorn/ps3/amd64/amd64/machdep.c
==============================================================================
--- user/nwhitehorn/ps3/amd64/amd64/machdep.c	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/amd64/machdep.c	Thu Oct 14 15:42:32 2010	(r213838)
@@ -795,7 +795,8 @@ idle_sysctl_available(SYSCTL_HANDLER_ARG
 		if (strcmp(idle_tbl[i].id_name, "acpi") == 0 &&
 		    cpu_idle_hook == NULL)
 			continue;
-		p += sprintf(p, "%s, ", idle_tbl[i].id_name);
+		p += sprintf(p, "%s%s", p != avail ? ", " : "",
+		    idle_tbl[i].id_name);
 	}
 	error = sysctl_handle_string(oidp, avail, 0, req);
 	free(avail, M_TEMP);
@@ -1799,7 +1800,7 @@ makectx(struct trapframe *tf, struct pcb
 	pcb->pcb_rbp = tf->tf_rbp;
 	pcb->pcb_rbx = tf->tf_rbx;
 	pcb->pcb_rip = tf->tf_rip;
-	pcb->pcb_rsp = (ISPL(tf->tf_cs)) ? tf->tf_rsp : (long)(tf + 1) - 8;
+	pcb->pcb_rsp = tf->tf_rsp;
 }
 
 int

Modified: user/nwhitehorn/ps3/amd64/amd64/mp_machdep.c
==============================================================================
--- user/nwhitehorn/ps3/amd64/amd64/mp_machdep.c	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/amd64/mp_machdep.c	Thu Oct 14 15:42:32 2010	(r213838)
@@ -126,7 +126,6 @@ extern inthand_t IDTVEC(fast_syscall), I
  * Local data and functions.
  */
 
-static u_int logical_cpus;
 static volatile cpumask_t ipi_nmi_pending;
 
 /* used to hold the AP's until we are ready to release them */
@@ -152,8 +151,8 @@ int apic_cpuids[MAX_APIC_ID + 1];
 static volatile u_int cpu_ipi_pending[MAXCPU];
 
 static u_int boot_address;
-static int cpu_logical;
-static int cpu_cores;
+static int cpu_logical;			/* logical cpus per core */
+static int cpu_cores;			/* cores per package */
 
 static void	assign_cpu_ids(void);
 static void	set_interrupt_apic_ids(void);
@@ -162,7 +161,7 @@ static int	start_ap(int apic_id);
 static void	release_aps(void *dummy);
 
 static int	hlt_logical_cpus;
-static u_int	hyperthreading_cpus;
+static u_int	hyperthreading_cpus;	/* logical cpus sharing L1 cache */
 static cpumask_t	hyperthreading_cpus_mask;
 static int	hyperthreading_allowed = 1;
 static struct	sysctl_ctx_list logical_cpu_clist;
@@ -176,24 +175,105 @@ mem_range_AP_init(void)
 }
 
 static void
+topo_probe_amd(void)
+{
+
+	/* AMD processors do not support HTT. */
+	cpu_cores = (amd_feature2 & AMDID2_CMP) != 0 ?
+	    (cpu_procinfo2 & AMDID_CMP_CORES) + 1 : 1;
+	cpu_logical = 1;
+}
+
+/*
+ * Round up to the next power of two, if necessary, and then
+ * take log2.
+ * Returns -1 if argument is zero.
+ */
+static __inline int
+mask_width(u_int x)
+{
+
+	return (fls(x << (1 - powerof2(x))) - 1);
+}
+
+static void
+topo_probe_0x4(void)
+{
+	u_int p[4];
+	int pkg_id_bits;
+	int core_id_bits;
+	int max_cores;
+	int max_logical;
+	int id;
+
+	/* Both zero and one here mean one logical processor per package. */
+	max_logical = (cpu_feature & CPUID_HTT) != 0 ?
+	    (cpu_procinfo & CPUID_HTT_CORES) >> 16 : 1;
+	if (max_logical <= 1)
+		return;
+
+	/*
+	 * Because of uniformity assumption we examine only
+	 * those logical processors that belong to the same
+	 * package as BSP.  Further, we count number of
+	 * logical processors that belong to the same core
+	 * as BSP thus deducing number of threads per core.
+	 */
+	cpuid_count(0x04, 0, p);
+	max_cores = ((p[0] >> 26) & 0x3f) + 1;
+	core_id_bits = mask_width(max_logical/max_cores);
+	if (core_id_bits < 0)
+		return;
+	pkg_id_bits = core_id_bits + mask_width(max_cores);
+
+	for (id = 0; id <= MAX_APIC_ID; id++) {
+		/* Check logical CPU availability. */
+		if (!cpu_info[id].cpu_present || cpu_info[id].cpu_disabled)
+			continue;
+		/* Check if logical CPU has the same package ID. */
+		if ((id >> pkg_id_bits) != (boot_cpu_id >> pkg_id_bits))
+			continue;
+		cpu_cores++;
+		/* Check if logical CPU has the same package and core IDs. */
+		if ((id >> core_id_bits) == (boot_cpu_id >> core_id_bits))
+			cpu_logical++;
+	}
+
+	cpu_cores /= cpu_logical;
+	hyperthreading_cpus = cpu_logical;
+}
+
+static void
 topo_probe_0xb(void)
 {
-	int logical;
-	int p[4];
+	u_int p[4];
 	int bits;
-	int type;
 	int cnt;
 	int i;
+	int logical;
+	int type;
 	int x;
 
-	/* We only support two levels for now. */
+	/* We only support three levels for now. */
 	for (i = 0; i < 3; i++) {
-		cpuid_count(0x0B, i, p);
+		cpuid_count(0x0b, i, p);
+
+		/* Fall back if CPU leaf 11 doesn't really exist. */
+		if (i == 0 && p[1] == 0) {
+			topo_probe_0x4();
+			return;
+		}
+
 		bits = p[0] & 0x1f;
 		logical = p[1] &= 0xffff;
 		type = (p[2] >> 8) & 0xff;
 		if (type == 0 || logical == 0)
 			break;
+		/*
+		 * Because of uniformity assumption we examine only
+		 * those logical processors that belong to the same
+		 * package as BSP.
+		 */
 		for (cnt = 0, x = 0; x <= MAX_APIC_ID; x++) {
 			if (!cpu_info[x].cpu_present ||
 			    cpu_info[x].cpu_disabled)
@@ -211,76 +291,16 @@ topo_probe_0xb(void)
 	cpu_cores /= cpu_logical;
 }
 
-static void
-topo_probe_0x4(void)
-{
-	u_int threads_per_cache, p[4];
-	u_int htt, cmp;
-	int i;
-
-	htt = cmp = 1;
-	/*
-	 * If this CPU supports HTT or CMP then mention the
-	 * number of physical/logical cores it contains.
-	 */
-	if (cpu_feature & CPUID_HTT)
-		htt = (cpu_procinfo & CPUID_HTT_CORES) >> 16;
-	if (cpu_vendor_id == CPU_VENDOR_AMD && (amd_feature2 & AMDID2_CMP))
-		cmp = (cpu_procinfo2 & AMDID_CMP_CORES) + 1;
-	else if (cpu_vendor_id == CPU_VENDOR_INTEL && (cpu_high >= 4)) {
-		cpuid_count(4, 0, p);
-		if ((p[0] & 0x1f) != 0)
-			cmp = ((p[0] >> 26) & 0x3f) + 1;
-	}
-	cpu_cores = cmp;
-	cpu_logical = htt / cmp;
-
-	/* Setup the initial logical CPUs info. */
-	if (cpu_feature & CPUID_HTT)
-		logical_cpus = (cpu_procinfo & CPUID_HTT_CORES) >> 16;
-
-	/*
-	 * Work out if hyperthreading is *really* enabled.  This
-	 * is made really ugly by the fact that processors lie: Dual
-	 * core processors claim to be hyperthreaded even when they're
-	 * not, presumably because they want to be treated the same
-	 * way as HTT with respect to per-cpu software licensing.
-	 * At the time of writing (May 12, 2005) the only hyperthreaded
-	 * cpus are from Intel, and Intel's dual-core processors can be
-	 * identified via the "deterministic cache parameters" cpuid
-	 * calls.
-	 */
-	/*
-	 * First determine if this is an Intel processor which claims
-	 * to have hyperthreading support.
-	 */
-	if ((cpu_feature & CPUID_HTT) && cpu_vendor_id == CPU_VENDOR_INTEL) {
-		/*
-		 * If the "deterministic cache parameters" cpuid calls
-		 * are available, use them.
-		 */
-		if (cpu_high >= 4) {
-			/* Ask the processor about the L1 cache. */
-			for (i = 0; i < 1; i++) {
-				cpuid_count(4, i, p);
-				threads_per_cache = ((p[0] & 0x3ffc000) >> 14) + 1;
-				if (hyperthreading_cpus < threads_per_cache)
-					hyperthreading_cpus = threads_per_cache;
-				if ((p[0] & 0x1f) == 0)
-					break;
-			}
-		}
-
-		/*
-		 * If the deterministic cache parameters are not
-		 * available, or if no caches were reported to exist,
-		 * just accept what the HTT flag indicated.
-		 */
-		if (hyperthreading_cpus == 0)
-			hyperthreading_cpus = logical_cpus;
-	}
-}
-
+/*
+ * Both topology discovery code and code that consumes topology
+ * information assume top-down uniformity of the topology.
+ * That is, all physical packages must be identical and each
+ * core in a package must have the same number of threads.
+ * Topology information is queried only on BSP, on which this
+ * code runs and for which it can query CPUID information.
+ * Then topology is extrapolated on all packages using the
+ * uniformity assumption.
+ */
 static void
 topo_probe(void)
 {
@@ -289,13 +309,31 @@ topo_probe(void)
 	if (cpu_topo_probed)
 		return;
 
-	logical_cpus = logical_cpus_mask = 0;
-	if (cpu_high >= 0xb)
-		topo_probe_0xb();
-	else if (cpu_high)
-		topo_probe_0x4();
+	logical_cpus_mask = 0;
+	if (cpu_vendor_id == CPU_VENDOR_AMD)
+		topo_probe_amd();
+	else if (cpu_vendor_id == CPU_VENDOR_INTEL) {
+		/*
+		 * See Intel(R) 64 Architecture Processor
+		 * Topology Enumeration article for details.
+		 *
+		 * Note that 0x1 <= cpu_high < 4 case should be
+		 * compatible with topo_probe_0x4() logic when
+		 * CPUID.1:EBX[23:16] > 0 (cpu_cores will be 1)
+		 * or it should trigger the fallback otherwise.
+		 */
+		if (cpu_high >= 0xb)
+			topo_probe_0xb();
+		else if (cpu_high >= 0x1)
+			topo_probe_0x4();
+	}
+
+	/*
+	 * Fallback: assume each logical CPU is in separate
+	 * physical package.  That is, no multi-core, no SMT.
+	 */
 	if (cpu_cores == 0)
-		cpu_cores = mp_ncpus > 0 ? mp_ncpus : 1;
+		cpu_cores = 1;
 	if (cpu_logical == 0)
 		cpu_logical = 1;
 	cpu_topo_probed = 1;
@@ -675,7 +713,8 @@ init_secondary(void)
 	printf("SMP: AP CPU #%d Launched!\n", PCPU_GET(cpuid));
 
 	/* Determine if we are a logical CPU. */
-	if (logical_cpus > 1 && PCPU_GET(apic_id) % logical_cpus != 0)
+	/* XXX Calculation depends on cpu_logical being a power of 2, e.g. 2 */
+	if (cpu_logical > 1 && PCPU_GET(apic_id) % cpu_logical != 0)
 		logical_cpus_mask |= PCPU_GET(cpumask);
 	
 	/* Determine if we are a hyperthread. */

Modified: user/nwhitehorn/ps3/amd64/conf/GENERIC
==============================================================================
--- user/nwhitehorn/ps3/amd64/conf/GENERIC	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/conf/GENERIC	Thu Oct 14 15:42:32 2010	(r213838)
@@ -55,7 +55,6 @@ options 	STACK			# stack(9) support
 options 	SYSVSHM			# SYSV-style shared memory
 options 	SYSVMSG			# SYSV-style message queues
 options 	SYSVSEM			# SYSV-style semaphores
-options 	P1003_1B_SEMAPHORES	# POSIX-style semaphores
 options 	_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
 options 	PRINTF_BUFR_SIZE=128	# Prevent printf output being interspersed.
 options 	KBD_INSTALL_CDEV	# install a CDEV entry in /dev

Modified: user/nwhitehorn/ps3/amd64/conf/NOTES
==============================================================================
--- user/nwhitehorn/ps3/amd64/conf/NOTES	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/conf/NOTES	Thu Oct 14 15:42:32 2010	(r213838)
@@ -421,6 +421,7 @@ options 	SAFE_RNDTEST	# enable rndtest s
 # vpd: Vital Product Data kernel interface
 # asmc: Apple System Management Controller
 # si: Specialix International SI/XIO or SX intelligent serial card
+# tpm: Trusted Platform Module
 
 # Notes on the Specialix SI/XIO driver:
 #  The host card is memory, not IO mapped.
@@ -436,6 +437,7 @@ device		smbios
 device		vpd
 device		asmc
 #device		si
+device		tpm
 
 #
 # Laptop/Notebook options:

Modified: user/nwhitehorn/ps3/amd64/include/specialreg.h
==============================================================================
--- user/nwhitehorn/ps3/amd64/include/specialreg.h	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/include/specialreg.h	Thu Oct 14 15:42:32 2010	(r213838)
@@ -126,6 +126,7 @@
 #define	CPUID2_CX16	0x00002000
 #define	CPUID2_XTPR	0x00004000
 #define	CPUID2_PDCM	0x00008000
+#define	CPUID2_PCID	0x00020000
 #define	CPUID2_DCA	0x00040000
 #define	CPUID2_SSE41	0x00080000
 #define	CPUID2_SSE42	0x00100000

Modified: user/nwhitehorn/ps3/amd64/include/vmparam.h
==============================================================================
--- user/nwhitehorn/ps3/amd64/include/vmparam.h	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/include/vmparam.h	Thu Oct 14 15:42:32 2010	(r213838)
@@ -205,7 +205,7 @@
  * is the total KVA space allocated for kmem_map.
  */
 #ifndef VM_KMEM_SIZE_SCALE
-#define	VM_KMEM_SIZE_SCALE	(3)
+#define	VM_KMEM_SIZE_SCALE	(1)
 #endif
 
 /*

Modified: user/nwhitehorn/ps3/amd64/linux32/linux32_proto.h
==============================================================================
--- user/nwhitehorn/ps3/amd64/linux32/linux32_proto.h	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/linux32/linux32_proto.h	Thu Oct 14 15:42:32 2010	(r213838)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 210431 2010-07-23 21:30:33Z kib 
+ * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 213544 2010-10-08 07:18:44Z kib 
  */
 
 #ifndef _LINUX_SYSPROTO_H_

Modified: user/nwhitehorn/ps3/amd64/linux32/linux32_syscall.h
==============================================================================
--- user/nwhitehorn/ps3/amd64/linux32/linux32_syscall.h	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/linux32/linux32_syscall.h	Thu Oct 14 15:42:32 2010	(r213838)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 210431 2010-07-23 21:30:33Z kib 
+ * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 213544 2010-10-08 07:18:44Z kib 
  */
 
 #define	LINUX_SYS_exit	1

Modified: user/nwhitehorn/ps3/amd64/linux32/linux32_sysent.c
==============================================================================
--- user/nwhitehorn/ps3/amd64/linux32/linux32_sysent.c	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/linux32/linux32_sysent.c	Thu Oct 14 15:42:32 2010	(r213838)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 210431 2010-07-23 21:30:33Z kib 
+ * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 213544 2010-10-08 07:18:44Z kib 
  */
 
 #include "opt_compat.h"
@@ -267,7 +267,7 @@ struct sysent linux_sysent[] = {
 	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT },			/* 245 = linux_io_setup */
 	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT },			/* 246 = linux_io_destroy */
 	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT },			/* 247 = linux_io_getevents */
-	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT },			/* 248 = inux_io_submit */
+	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT },			/* 248 = linux_io_submit */
 	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT },			/* 249 = linux_io_cancel */
 	{ 0, (sy_call_t *)linux_fadvise64, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 250 = linux_fadvise64 */
 	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT },			/* 251 =  */

Modified: user/nwhitehorn/ps3/amd64/linux32/linux32_sysvec.c
==============================================================================
--- user/nwhitehorn/ps3/amd64/linux32/linux32_sysvec.c	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/linux32/linux32_sysvec.c	Thu Oct 14 15:42:32 2010	(r213838)
@@ -1210,4 +1210,4 @@ static moduledata_t linux_elf_mod = {
 	0
 };
 
-DECLARE_MODULE(linuxelf, linux_elf_mod, SI_SUB_EXEC, SI_ORDER_ANY);
+DECLARE_MODULE_TIED(linuxelf, linux_elf_mod, SI_SUB_EXEC, SI_ORDER_ANY);

Modified: user/nwhitehorn/ps3/amd64/linux32/syscalls.master
==============================================================================
--- user/nwhitehorn/ps3/amd64/linux32/syscalls.master	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/amd64/linux32/syscalls.master	Thu Oct 14 15:42:32 2010	(r213838)
@@ -416,7 +416,7 @@
 245	AUE_NULL	UNIMPL	linux_io_setup
 246	AUE_NULL	UNIMPL	linux_io_destroy
 247	AUE_NULL	UNIMPL	linux_io_getevents
-248	AUE_NULL	UNIMPL	inux_io_submit
+248	AUE_NULL	UNIMPL	linux_io_submit
 249	AUE_NULL	UNIMPL	linux_io_cancel
 250	AUE_NULL	STD	{ int linux_fadvise64(void); }
 251	AUE_NULL	UNIMPL

Modified: user/nwhitehorn/ps3/arm/arm/cpufunc.c
==============================================================================
--- user/nwhitehorn/ps3/arm/arm/cpufunc.c	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/arm/arm/cpufunc.c	Thu Oct 14 15:42:32 2010	(r213838)
@@ -397,7 +397,7 @@ struct cpu_functions sheeva_cpufuncs = {
 	cpufunc_nullop,			/* flush_brnchtgt_C	*/
 	(void *)cpufunc_nullop,		/* flush_brnchtgt_E	*/
 
-	(void *)cpufunc_nullop,		/* sleep		*/
+	sheeva_cpu_sleep,		/* sleep		*/
 
 	/* Soft functions */
 
@@ -1076,6 +1076,9 @@ set_cpufuncs()
 				    FC_DCACHE_STREAM_EN | FC_WR_ALLOC_EN |
 				    FC_BRANCH_TARG_BUF_DIS | FC_L2CACHE_EN);
 			}
+
+			/* Use powersave on this CPU. */
+			cpu_do_powersave = 1;
 		} else
 			cpufuncs = armv5_ec_cpufuncs;
 

Modified: user/nwhitehorn/ps3/arm/arm/cpufunc_asm_sheeva.S
==============================================================================
--- user/nwhitehorn/ps3/arm/arm/cpufunc_asm_sheeva.S	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/arm/arm/cpufunc_asm_sheeva.S	Thu Oct 14 15:42:32 2010	(r213838)
@@ -392,3 +392,10 @@ ENTRY(sheeva_control_ext)
 	mcrne	p15, 1, r2, c15, c1, 0	/* Write new control register */
 	mov	r0, r3			/* Return old value */
 	RET
+
+ENTRY(sheeva_cpu_sleep)
+	mov	r0, #0
+	mcr	p15, 0, r0, c7, c10, 4	/* Drain write buffer */
+	mcr	p15, 0, r0, c7, c0, 4	/* Wait for interrupt */
+	mov	pc, lr
+

Modified: user/nwhitehorn/ps3/arm/at91/at91.c
==============================================================================
--- user/nwhitehorn/ps3/arm/at91/at91.c	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/arm/at91/at91.c	Thu Oct 14 15:42:32 2010	(r213838)
@@ -1,5 +1,6 @@
 /*-
  * Copyright (c) 2005 Olivier Houchard.  All rights reserved.
+ * Copyright (c) 2010 Greg Ansley.  All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -43,14 +44,23 @@ __FBSDID("$FreeBSD$");
 #include <machine/bus.h>
 #include <machine/intr.h>
 
-#include <arm/at91/at91rm92reg.h>
 #include <arm/at91/at91var.h>
+#include <arm/at91/at91_pmcvar.h>
+#include <arm/at91/at91_aicreg.h>
 
 static struct at91_softc *at91_softc;
 
 static void at91_eoi(void *);
 
+extern const struct pmap_devmap at91_devmap[];
+
+uint32_t at91_chip_id;
+
+#ifdef AT91C_MASTER_CLOCK
 uint32_t at91_master_clock = AT91C_MASTER_CLOCK;
+#else
+uint32_t at91_master_clock;
+#endif
 
 static int
 at91_bs_map(void *t, bus_addr_t bpa, bus_size_t size, int flags,
@@ -99,6 +109,19 @@ at91_barrier(void *t, bus_space_handle_t
 {
 }
 
+struct arm32_dma_range *
+bus_dma_get_range(void)
+{
+
+	return (NULL);
+}
+
+int
+bus_dma_get_range_nb(void)
+{
+	return (0);
+}
+
 bs_protos(generic);
 bs_protos(generic_armv4);
 
@@ -212,6 +235,7 @@ struct bus_space at91_bs_tag = {
 static int
 at91_probe(device_t dev)
 {
+
 	device_set_desc(dev, "AT91 device bus");
 	arm_post_filter = at91_eoi;
 	return (0);
@@ -224,324 +248,38 @@ at91_identify(driver_t *drv, device_t pa
 	BUS_ADD_CHILD(parent, 0, "atmelarm", 0);
 }
 
-struct arm32_dma_range *
-bus_dma_get_range(void)
-{
-
-	return (NULL);
-}
-
-int
-bus_dma_get_range_nb(void)
-{
-	return (0);
-}
-
-extern void irq_entry(void);
-
-static void
-at91_add_child(device_t dev, int prio, const char *name, int unit,
-    bus_addr_t addr, bus_size_t size, int irq0, int irq1, int irq2)
-{
-	device_t kid;
-	struct at91_ivar *ivar;
-
-	kid = device_add_child_ordered(dev, prio, name, unit);
-	if (kid == NULL) {
-	    printf("Can't add child %s%d ordered\n", name, unit);
-	    return;
-	}
-	ivar = malloc(sizeof(*ivar), M_DEVBUF, M_NOWAIT | M_ZERO);
-	if (ivar == NULL) {
-		device_delete_child(dev, kid);
-		printf("Can't add alloc ivar\n");
-		return;
-	}
-	device_set_ivars(kid, ivar);
-	resource_list_init(&ivar->resources);
-	if (irq0 != -1)
-		bus_set_resource(kid, SYS_RES_IRQ, 0, irq0, 1);
-	if (irq1 != 0)
-		bus_set_resource(kid, SYS_RES_IRQ, 1, irq1, 1);
-	if (irq2 != 0)
-		bus_set_resource(kid, SYS_RES_IRQ, 2, irq2, 1);
-	if (addr != 0)
-		bus_set_resource(kid, SYS_RES_MEMORY, 0, addr, size);
-}
-
-struct cpu_devs
-{
-	const char *name;
-	int unit;
-	bus_addr_t mem_base;
-	bus_size_t mem_len;
-	int irq0;
-	int irq1;
-	int irq2;
-};
-
-struct cpu_devs at91rm9200_devs[] =
-{
-	// All the "system" devices
-	{
-		"at91_st", 0,
-		AT91RM92_BASE + AT91RM92_ST_BASE, AT91RM92_ST_SIZE,
-		AT91RM92_IRQ_SYSTEM
-	},
-	{
-		"at91_pio", 0,
-		AT91RM92_BASE + AT91RM92_PIOA_BASE, AT91RM92_PIO_SIZE,
-		AT91RM92_IRQ_SYSTEM
-	},
-	{
-		"at91_pio", 1,
-		AT91RM92_BASE + AT91RM92_PIOB_BASE, AT91RM92_PIO_SIZE,
-		AT91RM92_IRQ_SYSTEM
-	},
-	{
-		"at91_pio", 2,
-		AT91RM92_BASE + AT91RM92_PIOC_BASE, AT91RM92_PIO_SIZE,
-		AT91RM92_IRQ_SYSTEM
-	},
-	{
-		"at91_pio", 3,
-		AT91RM92_BASE + AT91RM92_PIOD_BASE, AT91RM92_PIO_SIZE,
-		AT91RM92_IRQ_SYSTEM
-	},
-	{
-		"at91_pmc", 0,
-		AT91RM92_BASE + AT91RM92_PMC_BASE, AT91RM92_PMC_SIZE,
-		AT91RM92_IRQ_SYSTEM
-	},
-	{
-		"at91_aic", 0,
-		AT91RM92_BASE + AT91RM92_AIC_BASE, AT91RM92_AIC_SIZE,
-		0	// Interrupt controller has no interrupts!
-	},
-	{
-		"at91_rtc", 0,
-		AT91RM92_BASE + AT91RM92_RTC_BASE, AT91RM92_RTC_SIZE,
-		AT91RM92_IRQ_SYSTEM
-	},
-	{
-		"at91_mc", 0,
-		AT91RM92_BASE + AT91RM92_MC_BASE, AT91RM92_MC_SIZE,
-		AT91RM92_IRQ_SYSTEM
-	},
-
-	// All other devices
-	{
-		"at91_tc", 0,
-		AT91RM92_BASE + AT91RM92_TC0_BASE, AT91RM92_TC_SIZE,
-		AT91RM92_IRQ_TC0, AT91RM92_IRQ_TC1, AT91RM92_IRQ_TC2
-	},
-	{
-		"at91_tc", 1,
-		AT91RM92_BASE + AT91RM92_TC1_BASE, AT91RM92_TC_SIZE,
-		AT91RM92_IRQ_TC3, AT91RM92_IRQ_TC4, AT91RM92_IRQ_TC5
-	},
-	{
-		"at91_udp", 0,
-		AT91RM92_BASE + AT91RM92_UDP_BASE, AT91RM92_UDP_SIZE,
-		AT91RM92_IRQ_UDP, AT91RM92_IRQ_PIOB
-	},
-	{
-		"at91_mci", 0,
-		AT91RM92_BASE + AT91RM92_MCI_BASE, AT91RM92_MCI_SIZE,
-		AT91RM92_IRQ_MCI
-	},
-	{
-		"at91_twi", 0,
-		AT91RM92_BASE + AT91RM92_TWI_BASE, AT91RM92_TWI_SIZE,
-		AT91RM92_IRQ_TWI
-	},
-	{
-		"ate", 0,
-		AT91RM92_BASE + AT91RM92_EMAC_BASE, AT91RM92_EMAC_SIZE,
-		AT91RM92_IRQ_EMAC
-	},
-#ifndef SKYEYE_WORKAROUNDS
-	{
-		"uart", 0,
-		AT91RM92_BASE + AT91RM92_DBGU_BASE, AT91RM92_DBGU_SIZE,
-		AT91RM92_IRQ_SYSTEM
-	},
-	{
-		"uart", 1,
-		AT91RM92_BASE + AT91RM92_USART0_BASE, AT91RM92_USART_SIZE,
-		AT91RM92_IRQ_USART0
-	},
-	{
-		"uart", 2,
-		AT91RM92_BASE + AT91RM92_USART1_BASE, AT91RM92_USART_SIZE,
-		AT91RM92_IRQ_USART1
-	},
-	{
-		"uart", 3,
-		AT91RM92_BASE + AT91RM92_USART2_BASE, AT91RM92_USART_SIZE,
-		AT91RM92_IRQ_USART2
-	},
-	{
-		"uart", 4,
-		AT91RM92_BASE + AT91RM92_USART3_BASE, AT91RM92_USART_SIZE,
-		AT91RM92_IRQ_USART3
-	},
-#else
-	{
-		"uart", 0,
-		AT91RM92_BASE + AT91RM92_USART0_BASE, AT91RM92_USART_SIZE,
-		AT91RM92_IRQ_USART0
-	},
-#endif
-	{
-		"at91_ssc", 0,
-		AT91RM92_BASE + AT91RM92_SSC0_BASE, AT91RM92_SSC_SIZE,
-		AT91RM92_IRQ_SSC0
-	},
-	{
-		"at91_ssc", 1,
-		AT91RM92_BASE + AT91RM92_SSC1_BASE, AT91RM92_SSC_SIZE,
-		AT91RM92_IRQ_SSC1
-	},
-	{
-		"at91_ssc", 2,
-		AT91RM92_BASE + AT91RM92_SSC2_BASE, AT91RM92_SSC_SIZE,
-		AT91RM92_IRQ_SSC2
-	},
-	{
-		"spi", 0,
-		AT91RM92_BASE + AT91RM92_SPI_BASE, AT91RM92_SPI_SIZE,
-		AT91RM92_IRQ_SPI
-	},
-	{
-		"ohci", 0,
-		AT91RM92_OHCI_BASE, AT91RM92_OHCI_SIZE,
-		AT91RM92_IRQ_UHP
-	},
-	{
-		"at91_cfata", 0,
-		AT91RM92_CF_BASE, AT91RM92_CF_SIZE,
-		-1
-	},
-	{	0, 0, 0, 0, 0 }
-};
-
-static void
-at91_cpu_add_builtin_children(device_t dev, struct at91_softc *sc)
-{
-	int i;
-	struct cpu_devs *walker;
-	
-	// XXX should look at the device id in the DBGU register and
-	// XXX based on the CPU load in these devices
-	for (i = 0, walker = at91rm9200_devs; walker->name; i++, walker++) {
-		at91_add_child(dev, i, walker->name, walker->unit,
-		    walker->mem_base, walker->mem_len, walker->irq0,
-		    walker->irq1, walker->irq2);
-	}
-}
-
-#define NORMDEV 50
-
-/*
- * Standard priority levels for the system.  0 is lowest and 7 is highest.
- * These values are the ones Atmel uses for its Linux port, which differ
- * a little form the ones that are in the standard distribution.  Also,
- * the ones marked with 'TWEEK' are different based on experience.
- */
-static int irq_prio[32] =
-{
-	7,	/* Advanced Interrupt Controller (FIQ) */
-	7,	/* System Peripherals */
-	1,	/* Parallel IO Controller A */
-	1,	/* Parallel IO Controller B */
-	1,	/* Parallel IO Controller C */
-	1,	/* Parallel IO Controller D */
-	5,	/* USART 0 */
-	5,	/* USART 1 */
-	5,	/* USART 2 */
-	5,	/* USART 3 */
-	0,	/* Multimedia Card Interface */
-	2,	/* USB Device Port */
-	4,	/* Two-Wire Interface */		/* TWEEK */
-	5,	/* Serial Peripheral Interface */
-	4,	/* Serial Synchronous Controller 0 */
-	6,	/* Serial Synchronous Controller 1 */	/* TWEEK */
-	4,	/* Serial Synchronous Controller 2 */
-	0,	/* Timer Counter 0 */
-	6,	/* Timer Counter 1 */			/* TWEEK */
-	0,	/* Timer Counter 2 */
-	0,	/* Timer Counter 3 */
-	0,	/* Timer Counter 4 */
-	0,	/* Timer Counter 5 */
-	2,	/* USB Host port */
-	3,	/* Ethernet MAC */
-	0,	/* Advanced Interrupt Controller (IRQ0) */
-	0,	/* Advanced Interrupt Controller (IRQ1) */
-	0,	/* Advanced Interrupt Controller (IRQ2) */
-	0,	/* Advanced Interrupt Controller (IRQ3) */
-	0,	/* Advanced Interrupt Controller (IRQ4) */
-	0,	/* Advanced Interrupt Controller (IRQ5) */
- 	0	/* Advanced Interrupt Controller (IRQ6) */
-};
-
 static int
 at91_attach(device_t dev)
 {
 	struct at91_softc *sc = device_get_softc(dev);
-	int i;
+	const struct pmap_devmap *pdevmap;
 
 	at91_softc = sc;
 	sc->sc_st = &at91_bs_tag;
-	sc->sc_sh = AT91RM92_BASE;
+	sc->sc_sh = AT91_BASE;
 	sc->dev = dev;
-	if (bus_space_subregion(sc->sc_st, sc->sc_sh, AT91RM92_SYS_BASE,
-	    AT91RM92_SYS_SIZE, &sc->sc_sys_sh) != 0)
-		panic("Enable to map IRQ registers");
+
 	sc->sc_irq_rman.rm_type = RMAN_ARRAY;
 	sc->sc_irq_rman.rm_descr = "AT91 IRQs";
-	sc->sc_mem_rman.rm_type = RMAN_ARRAY;
-	sc->sc_mem_rman.rm_descr = "AT91 Memory";
 	if (rman_init(&sc->sc_irq_rman) != 0 ||
 	    rman_manage_region(&sc->sc_irq_rman, 1, 31) != 0)
 		panic("at91_attach: failed to set up IRQ rman");
-	if (rman_init(&sc->sc_mem_rman) != 0 ||
-	    rman_manage_region(&sc->sc_mem_rman, 0xdff00000ul,
-	    0xdffffffful) != 0)
+
+	sc->sc_mem_rman.rm_type = RMAN_ARRAY;
+	sc->sc_mem_rman.rm_descr = "AT91 Memory";
+	if (rman_init(&sc->sc_mem_rman) != 0)
 		panic("at91_attach: failed to set up memory rman");
-	if (rman_manage_region(&sc->sc_mem_rman, AT91RM92_OHCI_BASE,
-	    AT91RM92_OHCI_BASE + AT91RM92_OHCI_SIZE - 1) != 0)
-		panic("at91_attach: failed to set up ohci memory");
-	if (rman_manage_region(&sc->sc_mem_rman, AT91RM92_CF_BASE,
-	    AT91RM92_CF_BASE + AT91RM92_CF_SIZE - 1) != 0)
-		panic("at91_attach: failed to set up CompactFlash ATA memory");
-
-	for (i = 0; i < 32; i++) {
-		bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_SVR + 
-		    i * 4, i);
-		/* Priority. */
-		bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_SMR + i * 4,
-		    irq_prio[i]);
-		if (i < 8)
-			bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_EOICR,
-			    1);
+	for ( pdevmap = at91_devmap; pdevmap->pd_va != 0; pdevmap++) {
+		if (rman_manage_region(&sc->sc_mem_rman, pdevmap->pd_va,
+		    pdevmap->pd_va + pdevmap->pd_size - 1) != 0)
+			panic("at91_attach: failed to set up memory rman");
 	}
-	bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_SPU, 32);
-	/* No debug. */
-	bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_DCR, 0);
-	/* Disable and clear all interrupts. */
-	bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_IDCR, 0xffffffff);
-	bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_ICCR, 0xffffffff);
-
-	/* XXX */
-	/* Disable all interrupts for RTC (0xe24 == RTC_IDR) */
-	bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0xe24, 0xffffffff);
-	/* DIsable all interrupts for DBGU */
-	bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0x20c, 0xffffffff);
-	/* Disable all interrupts for the SDRAM controller */
-	bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0xfa8, 0xffffffff);
 
-	at91_cpu_add_builtin_children(dev, sc);
+
+	/* Our device list will be added automatically by the cpu device
+	 * e.g. at91rm9200.c when it is identified. To ensure that the
+	 * CPU and PMC are attached first any other "identified" devices 
+	 * call BUS_ADD_CHILD(9) with an "order" of at least 2. */
 
 	bus_generic_probe(dev);
 	bus_generic_attach(dev);
@@ -630,11 +368,11 @@ at91_setup_intr(device_t dev, device_t c
 {
 	struct at91_softc *sc = device_get_softc(dev);
 
-	if (rman_get_start(ires) == AT91RM92_IRQ_SYSTEM && filt == NULL)
+	if (rman_get_start(ires) == sc->sc_irq_system && filt == NULL)
 		panic("All system interrupt ISRs must be FILTER");
 	BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, filt, 
 	    intr, arg, cookiep);
-	bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_IECR,
+	bus_space_write_4(sc->sc_st, sc->sc_aic_sh, IC_IECR,
 	    1 << rman_get_start(ires));
 	return (0);
 }
@@ -645,7 +383,7 @@ at91_teardown_intr(device_t dev, device_
 {
 	struct at91_softc *sc = device_get_softc(dev);
 
-	bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_IDCR, 
+	bus_space_write_4(sc->sc_st, sc->sc_aic_sh, IC_IDCR, 
 	    1 << rman_get_start(res));
 	return (BUS_TEARDOWN_INTR(device_get_parent(dev), child, res, cookie));
 }
@@ -697,8 +435,7 @@ arm_mask_irq(uintptr_t nb)
 {
 	
 	bus_space_write_4(at91_softc->sc_st, 
-	    at91_softc->sc_sys_sh, IC_IDCR, 1 << nb);
-
+	    at91_softc->sc_aic_sh, IC_IDCR, 1 << nb);
 }
 
 int
@@ -708,12 +445,12 @@ arm_get_next_irq(int last __unused)
 	int irq;
 	
 	irq = bus_space_read_4(at91_softc->sc_st,
-	    at91_softc->sc_sys_sh, IC_IVR);
+	    at91_softc->sc_aic_sh, IC_IVR);
 	status = bus_space_read_4(at91_softc->sc_st,
-	    at91_softc->sc_sys_sh, IC_ISR);
+	    at91_softc->sc_aic_sh, IC_ISR);
 	if (status == 0) {
 		bus_space_write_4(at91_softc->sc_st,
-		    at91_softc->sc_sys_sh, IC_EOICR, 1);
+		    at91_softc->sc_aic_sh, IC_EOICR, 1);
 		return (-1);
 	}
 	return (irq);
@@ -724,16 +461,15 @@ arm_unmask_irq(uintptr_t nb)
 {
 	
 	bus_space_write_4(at91_softc->sc_st, 
-	at91_softc->sc_sys_sh, IC_IECR, 1 << nb);
-	bus_space_write_4(at91_softc->sc_st, at91_softc->sc_sys_sh,
+	at91_softc->sc_aic_sh, IC_IECR, 1 << nb);
+	bus_space_write_4(at91_softc->sc_st, at91_softc->sc_aic_sh,
 	    IC_EOICR, 0);
-
 }
 
 static void
 at91_eoi(void *unused)
 {
-	bus_space_write_4(at91_softc->sc_st, at91_softc->sc_sys_sh,
+	bus_space_write_4(at91_softc->sc_st, at91_softc->sc_aic_sh,
 	    IC_EOICR, 0);
 }
 
@@ -761,6 +497,7 @@ static driver_t at91_driver = {
 	at91_methods,
 	sizeof(struct at91_softc),
 };
+
 static devclass_t at91_devclass;
 
 DRIVER_MODULE(atmelarm, nexus, at91_driver, at91_devclass, 0, 0);

Modified: user/nwhitehorn/ps3/arm/at91/at91_machdep.c
==============================================================================
--- user/nwhitehorn/ps3/arm/at91/at91_machdep.c	Thu Oct 14 15:15:22 2010	(r213837)
+++ user/nwhitehorn/ps3/arm/at91/at91_machdep.c	Thu Oct 14 15:42:32 2010	(r213838)
@@ -90,9 +90,10 @@ __FBSDID("$FreeBSD$");
 #include <sys/reboot.h>
 
 #include <arm/at91/at91board.h>
+#include <arm/at91/at91var.h>
 #include <arm/at91/at91rm92reg.h>
-#include <arm/at91/at91_piovar.h>
-#include <arm/at91/at91_pio_rm9200.h>
+#include <arm/at91/at91sam9g20reg.h>
+#include <arm/at91/at91board.h>
 
 #define KERNEL_PT_SYS		0	/* Page table for mapping proc0 zero page */
 #define KERNEL_PT_KERN		1
@@ -140,7 +141,7 @@ static void *boot_arg2;
 static struct trapframe proc0_tf;
 
 /* Static device mappings. */
-static const struct pmap_devmap at91rm9200_devmap[] = {
+const struct pmap_devmap at91_devmap[] = {
 	/*
 	 * Map the on-board devices VA == PA so that we can access them
 	 * with the MMU on or off.
@@ -153,60 +154,88 @@ static const struct pmap_devmap at91rm92
 		 */
 		0xdff00000,
 		0xfff00000,
-		0x100000,
+		0x00100000,
 		VM_PROT_READ|VM_PROT_WRITE,
 		PTE_NOCACHE,
 	},
-	/*
-	 * We can't just map the OHCI registers VA == PA, because
-	 * AT91RM92_OHCI_BASE belongs to the userland address space.
+	/* We can't just map the OHCI registers VA == PA, because
+	 * AT91xx_xxx_BASE belongs to the userland address space.
 	 * We could just choose a different virtual address, but a better
 	 * solution would probably be to just use pmap_mapdev() to allocate
 	 * KVA, as we don't need the OHCI controller before the vm
 	 * initialization is done. However, the AT91 resource allocation
 	 * system doesn't know how to use pmap_mapdev() yet.
+	 * Care must be taken to ensure PA and VM address do not overlap
+	 * between entries.
 	 */
 	{
 		/*
 		 * Add the ohci controller, and anything else that might be
 		 * on this chip select for a VA/PA mapping.
 		 */
+		/* Internal Memory 1MB  */
 		AT91RM92_OHCI_BASE,
 		AT91RM92_OHCI_PA_BASE,
-		AT91RM92_OHCI_SIZE,
+		0x00100000,
 		VM_PROT_READ|VM_PROT_WRITE,

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


More information about the svn-src-user mailing list