Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Oct 2006 14:24:38 GMT
From:      Roman Divacky <rdivacky@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 108267 for review
Message-ID:  <200610221424.k9MEOceU065470@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=108267

Change 108267 by rdivacky@rdivacky_witten on 2006/10/22 14:23:58

	IFC

Affected files ...

.. //depot/projects/linuxolator/src/sys/amd64/amd64/busdma_machdep.c#2 integrate
.. //depot/projects/linuxolator/src/sys/amd64/amd64/db_trace.c#2 integrate
.. //depot/projects/linuxolator/src/sys/amd64/amd64/intr_machdep.c#4 integrate
.. //depot/projects/linuxolator/src/sys/amd64/amd64/pmap.c#2 integrate
.. //depot/projects/linuxolator/src/sys/amd64/amd64/support.S#3 integrate
.. //depot/projects/linuxolator/src/sys/amd64/conf/GENERIC.hints#2 integrate
.. //depot/projects/linuxolator/src/sys/amd64/conf/NOTES#3 integrate
.. //depot/projects/linuxolator/src/sys/arm/arm/cpufunc.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/arm/elf_trampoline.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/arm/fusu.S#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/arm/nexus_io.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/arm/trap.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/arm/undefined.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/at91/at91_mci.c#1 branch
.. //depot/projects/linuxolator/src/sys/arm/at91/at91_mcireg.h#1 branch
.. //depot/projects/linuxolator/src/sys/arm/at91/at91_spi.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/at91/at91_ssc.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/at91/at91_sscreg.h#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/at91/at91_twi.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/at91/if_ate.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/at91/kb920x_machdep.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/sa11x0/sa11x0.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/sa11x0/sa11x0_io.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/sa11x0/sa11x0_irqhandler.c#2 integrate
.. //depot/projects/linuxolator/src/sys/arm/sa11x0/sa11x0_ost.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/Makefile.inc#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/boot0spi/main.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/boot2/Makefile#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/boot2/boot2.c#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/boot2/kb920x_board.c#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootiic/env_vars.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootiic/loader_prompt.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootspi/Makefile#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootspi/arm_init.S#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootspi/ee.c#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootspi/ee.h#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootspi/env_vars.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootspi/loader_prompt.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootspi/main.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/Makefile#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/at91rm9200.h#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/emac.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/emac.h#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/emac_init.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/lib.h#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/lib_AT91RM9200.h#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/mci_device.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/mci_device.h#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/memcmp.c#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/memcpy.c#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/memset.c#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/p_string.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/printf.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/putchar.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/sd-card.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/spi_flash.c#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/strcmp.c#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/strcpy.c#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/strcvt.c#1 branch
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/strlen.c#1 branch
.. //depot/projects/linuxolator/src/sys/compat/freebsd32/freebsd32_proto.h#5 integrate
.. //depot/projects/linuxolator/src/sys/compat/freebsd32/freebsd32_syscall.h#5 integrate
.. //depot/projects/linuxolator/src/sys/compat/freebsd32/freebsd32_syscalls.c#5 integrate
.. //depot/projects/linuxolator/src/sys/compat/freebsd32/freebsd32_sysent.c#5 integrate
.. //depot/projects/linuxolator/src/sys/compat/freebsd32/syscalls.master#5 integrate
.. //depot/projects/linuxolator/src/sys/compat/linux/linux_file.c#6 integrate
.. //depot/projects/linuxolator/src/sys/compat/linux/linux_getcwd.c#2 integrate
.. //depot/projects/linuxolator/src/sys/compat/linux/linux_misc.c#16 integrate
.. //depot/projects/linuxolator/src/sys/compat/linux/linux_stats.c#2 integrate
.. //depot/projects/linuxolator/src/sys/compat/svr4/svr4_fcntl.c#2 integrate
.. //depot/projects/linuxolator/src/sys/compat/svr4/svr4_misc.c#2 integrate
.. //depot/projects/linuxolator/src/sys/conf/NOTES#6 integrate
.. //depot/projects/linuxolator/src/sys/conf/files#6 integrate
.. //depot/projects/linuxolator/src/sys/conf/files.pc98#2 integrate
.. //depot/projects/linuxolator/src/sys/conf/kmod.mk#3 integrate
.. //depot/projects/linuxolator/src/sys/contrib/pf/net/pf.c#3 integrate
.. //depot/projects/linuxolator/src/sys/crypto/sha2/sha2.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/awi/if_awi_pccard.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/bce/if_bce.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/bce/if_bcereg.h#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/bge/if_bge.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/mfi/mfi.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/mfi/mfi_debug.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/mfi/mfi_disk.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/mfi/mfireg.h#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/mfi/mfivar.h#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/mmc/bridge.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/mmc/mmc.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/mmc/mmcbr_if.m#1 branch
.. //depot/projects/linuxolator/src/sys/dev/mmc/mmcbrvar.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/mmc/mmcbus_if.m#1 branch
.. //depot/projects/linuxolator/src/sys/dev/mmc/mmcreg.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/mmc/mmcsd.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/mmc/mmcvar.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/mxge/if_mxge.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/nfe/if_nfe.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/nfe/if_nfereg.h#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/pci/pci.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/ray/if_ray.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/hda/hdac.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/spibus/spibus.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/usb/ehci.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/usb/if_axe.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/usb/if_udav.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/usb/if_ural.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/usb/ohci.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/usb/uhci.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/usb/usb.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/usb/usbdi.h#2 integrate
.. //depot/projects/linuxolator/src/sys/fs/devfs/devfs.h#3 integrate
.. //depot/projects/linuxolator/src/sys/fs/devfs/devfs_devs.c#3 integrate
.. //depot/projects/linuxolator/src/sys/fs/devfs/devfs_int.h#2 integrate
.. //depot/projects/linuxolator/src/sys/fs/devfs/devfs_vnops.c#3 integrate
.. //depot/projects/linuxolator/src/sys/fs/ntfs/ntfs_vnops.c#2 integrate
.. //depot/projects/linuxolator/src/sys/i386/acpica/Makefile#2 integrate
.. //depot/projects/linuxolator/src/sys/i386/conf/NOTES#4 integrate
.. //depot/projects/linuxolator/src/sys/i386/i386/db_trace.c#2 integrate
.. //depot/projects/linuxolator/src/sys/i386/i386/pmap.c#2 integrate
.. //depot/projects/linuxolator/src/sys/i386/i386/support.s#3 integrate
.. //depot/projects/linuxolator/src/sys/i386/i386/sys_machdep.c#2 integrate
.. //depot/projects/linuxolator/src/sys/i386/ibcs2/ibcs2_misc.c#2 integrate
.. //depot/projects/linuxolator/src/sys/i386/linux/linux_machdep.c#10 integrate
.. //depot/projects/linuxolator/src/sys/ia64/conf/NOTES#2 integrate
.. //depot/projects/linuxolator/src/sys/ia64/ia64/busdma_machdep.c#2 integrate
.. //depot/projects/linuxolator/src/sys/ia64/ia64/clock.c#3 integrate
.. //depot/projects/linuxolator/src/sys/ia64/ia64/pmap.c#2 integrate
.. //depot/projects/linuxolator/src/sys/ia64/ia64/support.S#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/init_main.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/init_sysent.c#5 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_acct.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_acl.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_alq.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_conf.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_environment.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_exec.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_exit.c#6 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_fork.c#6 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_intr.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_jail.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_ktrace.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_linker.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_mac.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_mbuf.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_prot.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_shutdown.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_sig.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_sysctl.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_time.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_umtx.c#4 integrate
.. //depot/projects/linuxolator/src/sys/kern/link_elf.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/link_elf_obj.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/subr_trap.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/sys_pipe.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/sys_socket.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/syscalls.c#5 integrate
.. //depot/projects/linuxolator/src/sys/kern/syscalls.master#5 integrate
.. //depot/projects/linuxolator/src/sys/kern/systrace_args.c#5 integrate
.. //depot/projects/linuxolator/src/sys/kern/sysv_msg.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/sysv_sem.c#6 integrate
.. //depot/projects/linuxolator/src/sys/kern/sysv_shm.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/uipc_mbuf.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/uipc_mbuf2.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/uipc_sem.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/uipc_socket.c#4 integrate
.. //depot/projects/linuxolator/src/sys/kern/uipc_syscalls.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/uipc_usrreq.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_bio.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_cluster.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_lookup.c#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_mount.c#5 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_subr.c#4 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_syscalls.c#4 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_vnops.c#2 integrate
.. //depot/projects/linuxolator/src/sys/modules/mem/Makefile#2 integrate
.. //depot/projects/linuxolator/src/sys/modules/mmc/Makefile#1 branch
.. //depot/projects/linuxolator/src/sys/modules/mmcsd/Makefile#1 branch
.. //depot/projects/linuxolator/src/sys/modules/uart/Makefile#2 integrate
.. //depot/projects/linuxolator/src/sys/net/bpf.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/bsd_comp.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if_atmsubr.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if_ethersubr.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if_fddisubr.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if_fwsubr.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if_gif.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if_iso88025subr.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if_ppp.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if_stf.c#2 integrate
.. //depot/projects/linuxolator/src/sys/net/if_tun.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netatalk/aarp.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netatalk/ddp_input.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netatalk/ddp_output.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netgraph/netgraph.h#2 integrate
.. //depot/projects/linuxolator/src/sys/netgraph/ng_message.h#2 integrate
.. //depot/projects/linuxolator/src/sys/netgraph/ng_socket.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netgraph/ng_socket.h#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/if_ether.c#4 integrate
.. //depot/projects/linuxolator/src/sys/netinet/igmp.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/in_pcb.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/ip_divert.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/ip_fw2.c#5 integrate
.. //depot/projects/linuxolator/src/sys/netinet/ip_fw_pfil.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/ip_icmp.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/ip_input.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/ip_mroute.c#4 integrate
.. //depot/projects/linuxolator/src/sys/netinet/ip_options.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/ip_output.c#5 integrate
.. //depot/projects/linuxolator/src/sys/netinet/raw_ip.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp_input.c#5 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp_output.c#4 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp_subr.c#3 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp_syncache.c#3 integrate
.. //depot/projects/linuxolator/src/sys/netinet/udp_usrreq.c#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet6/nd6.c#4 integrate
.. //depot/projects/linuxolator/src/sys/nfsclient/nfs.h#2 integrate
.. //depot/projects/linuxolator/src/sys/nfsserver/nfs_srvsock.c#2 integrate
.. //depot/projects/linuxolator/src/sys/nfsserver/nfs_syscalls.c#2 integrate
.. //depot/projects/linuxolator/src/sys/pc98/conf/NOTES#2 integrate
.. //depot/projects/linuxolator/src/sys/pci/nfsmb.c#3 integrate
.. //depot/projects/linuxolator/src/sys/powerpc/powerpc/copyinout.c#2 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_framework.h#2 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_inet.c#4 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_label.c#2 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_net.c#3 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_pipe.c#3 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_posix_sem.c#3 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_process.c#3 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_socket.c#3 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_system.c#2 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_sysv_msg.c#3 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_sysv_sem.c#3 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_sysv_shm.c#3 integrate
.. //depot/projects/linuxolator/src/sys/security/mac/mac_vfs.c#3 integrate
.. //depot/projects/linuxolator/src/sys/security/mac_lomac/mac_lomac.c#3 integrate
.. //depot/projects/linuxolator/src/sys/sparc64/conf/NOTES#2 integrate
.. //depot/projects/linuxolator/src/sys/sparc64/sparc64/support.S#2 integrate
.. //depot/projects/linuxolator/src/sys/sun4v/conf/NOTES#4 integrate
.. //depot/projects/linuxolator/src/sys/sun4v/sun4v/support.S#2 integrate
.. //depot/projects/linuxolator/src/sys/sun4v/sun4v/trap.c#2 integrate
.. //depot/projects/linuxolator/src/sys/sys/conf.h#2 integrate
.. //depot/projects/linuxolator/src/sys/sys/elf32.h#3 integrate
.. //depot/projects/linuxolator/src/sys/sys/elf64.h#3 integrate
.. //depot/projects/linuxolator/src/sys/sys/mac.h#3 integrate
.. //depot/projects/linuxolator/src/sys/sys/mac_policy.h#3 integrate
.. //depot/projects/linuxolator/src/sys/sys/sem.h#3 integrate
.. //depot/projects/linuxolator/src/sys/sys/syscall.h#5 integrate
.. //depot/projects/linuxolator/src/sys/sys/syscall.mk#5 integrate
.. //depot/projects/linuxolator/src/sys/sys/sysproto.h#5 integrate
.. //depot/projects/linuxolator/src/sys/sys/systm.h#3 integrate
.. //depot/projects/linuxolator/src/sys/sys/umtx.h#3 integrate
.. //depot/projects/linuxolator/src/sys/ufs/ffs/ffs_vfsops.c#3 integrate
.. //depot/projects/linuxolator/src/sys/ufs/ufs/ufs_vnops.c#4 integrate
.. //depot/projects/linuxolator/src/sys/vm/device_pager.c#2 integrate
.. //depot/projects/linuxolator/src/sys/vm/phys_pager.c#2 integrate
.. //depot/projects/linuxolator/src/sys/vm/swap_pager.c#2 integrate
.. //depot/projects/linuxolator/src/sys/vm/vm_contig.c#3 integrate
.. //depot/projects/linuxolator/src/sys/vm/vm_fault.c#2 integrate
.. //depot/projects/linuxolator/src/sys/vm/vm_map.c#2 integrate
.. //depot/projects/linuxolator/src/sys/vm/vm_mmap.c#2 integrate
.. //depot/projects/linuxolator/src/sys/vm/vm_object.c#2 integrate
.. //depot/projects/linuxolator/src/sys/vm/vm_page.c#3 integrate
.. //depot/projects/linuxolator/src/sys/vm/vm_page.h#2 integrate
.. //depot/projects/linuxolator/src/sys/vm/vm_pageout.c#2 integrate

Differences ...

==== //depot/projects/linuxolator/src/sys/amd64/amd64/busdma_machdep.c#2 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.77 2006/06/01 04:49:29 silby Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.78 2006/10/15 16:52:59 hrs Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -520,7 +520,7 @@
 		    __func__, dmat, dmat->flags, ENOMEM);
 		return (ENOMEM);
 	} else if ((uintptr_t)*vaddr & (dmat->alignment - 1)) {
-		printf("bus_dmamem_alloc failed to align memory properly.");
+		printf("bus_dmamem_alloc failed to align memory properly.\n");
 	}
 	CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d",
 	    __func__, dmat, dmat->flags, ENOMEM);

==== //depot/projects/linuxolator/src/sys/amd64/amd64/db_trace.c#2 (text+ko) ====

@@ -25,7 +25,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.75 2006/07/12 21:22:42 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_trace.c,v 1.76 2006/10/20 09:44:20 bde Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -91,6 +91,7 @@
 	{ "r15",	DB_OFFSET(tf_r15),	db_frame },
 	{ "rip",	DB_OFFSET(tf_rip),	db_frame },
 	{ "rflags",	DB_OFFSET(tf_rflags),	db_frame },
+#define	DB_N_SHOW_REGS	20	/* Don't show registers after here. */
 	{ "dr0",	NULL,			db_dr0 },
 	{ "dr1",	NULL,			db_dr1 },
 	{ "dr2",	NULL,			db_dr2 },
@@ -100,7 +101,7 @@
 	{ "dr6",	NULL,			db_dr6 },
 	{ "dr7",	NULL,			db_dr7 },
 };
-struct db_variable *db_eregs = db_regs + sizeof(db_regs)/sizeof(db_regs[0]);
+struct db_variable *db_eregs = db_regs + DB_N_SHOW_REGS;
 
 #define DB_DRX_FUNC(reg)		\
 static int				\

==== //depot/projects/linuxolator/src/sys/amd64/amd64/intr_machdep.c#4 (text+ko) ====

@@ -26,7 +26,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.24 2006/10/13 17:31:57 jhb Exp $
+ * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.25 2006/10/16 21:40:46 jhb Exp $
  */
 
 /*
@@ -58,6 +58,7 @@
 
 #ifndef DEV_ATPIC
 #include <machine/segments.h>
+#include <machine/frame.h>
 #include <dev/ic/i8259.h>
 #include <amd64/isa/icu.h>
 #include <amd64/isa/isa.h>

==== //depot/projects/linuxolator/src/sys/amd64/amd64/pmap.c#2 (text+ko) ====

@@ -77,7 +77,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.571 2006/08/14 15:39:41 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.572 2006/10/22 04:18:01 alc Exp $");
 
 /*
  *	Manages physical address maps.
@@ -1665,7 +1665,7 @@
 	vm_page_t m;
 
 	TAILQ_FOREACH(m, &vpq->pl, pageq) {
-		if (m->hold_count || m->busy || (m->flags & PG_BUSY))
+		if (m->hold_count || m->busy)
 			continue;
 		TAILQ_FOREACH_SAFE(pv, &m->md.pv_list, pv_list, next_pv) {
 			va = pv->pv_va;

==== //depot/projects/linuxolator/src/sys/amd64/amd64/support.S#3 (text+ko) ====

@@ -27,7 +27,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/amd64/amd64/support.S,v 1.120 2006/08/28 02:28:14 davidxu Exp $
+ * $FreeBSD: src/sys/amd64/amd64/support.S,v 1.121 2006/10/17 02:24:45 davidxu Exp $
  */
 
 #include "opt_ddb.h"
@@ -342,10 +342,10 @@
 	ret
 
 /*
- * casuptr.  Compare and set user pointer.  Returns -1 or the current value.
+ * casuword.  Compare and set user word.  Returns -1 or the current value.
  *        dst = %rdi, old = %rsi, new = %rdx
  */
-ENTRY(casuptr)
+ENTRY(casuword)
 	movq	PCPU(CURPCB),%rcx
 	movq	$fusufault,PCB_ONFAULT(%rcx)
 

==== //depot/projects/linuxolator/src/sys/amd64/conf/GENERIC.hints#2 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/amd64/conf/GENERIC.hints,v 1.15 2004/07/22 22:28:34 imp Exp $
+# $FreeBSD: src/sys/amd64/conf/GENERIC.hints,v 1.16 2006/10/21 12:52:46 ru Exp $
 hint.fdc.0.at="isa"
 hint.fdc.0.port="0x3F0"
 hint.fdc.0.irq="6"
@@ -11,7 +11,6 @@
 hint.atkbdc.0.port="0x060"
 hint.atkbd.0.at="atkbdc"
 hint.atkbd.0.irq="1"
-hint.atkbd.0.flags="0x1"
 hint.psm.0.at="atkbdc"
 hint.psm.0.irq="12"
 hint.vga.0.at="isa"

==== //depot/projects/linuxolator/src/sys/amd64/conf/NOTES#3 (text+ko) ====

@@ -4,7 +4,7 @@
 # This file contains machine dependent kernel configuration notes.  For
 # machine independent notes, look in /sys/conf/NOTES.
 #
-# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.59 2006/09/22 22:11:28 jhb Exp $
+# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.62 2006/10/20 09:52:26 des Exp $
 #
 
 #
@@ -103,7 +103,7 @@
 
 # 
 # sio: serial ports (see sio(4)), including support for various
-#      PC Card devices, such as Modem and NICs (see etc/defaults/pccard.conf)
+#      PC Card devices, such as Modem and NICs
 #
 device		sio
 hint.sio.0.at="isa"
@@ -202,6 +202,63 @@
 # Optional devices:
 #
 
+# PS/2 mouse
+device		psm
+hint.psm.0.at="atkbdc"
+hint.psm.0.irq="12"
+
+# Options for psm:
+options 	PSM_HOOKRESUME		#hook the system resume event, useful
+					#for some laptops
+options 	PSM_RESETAFTERSUSPEND	#reset the device at the resume event
+
+# The keyboard controller; it controls the keyboard and the PS/2 mouse.
+device		atkbdc
+hint.atkbdc.0.at="isa"
+hint.atkbdc.0.port="0x060"
+
+# The AT keyboard
+device		atkbd
+hint.atkbd.0.at="atkbdc"
+hint.atkbd.0.irq="1"
+
+# Options for atkbd:
+options 	ATKBD_DFLT_KEYMAP	# specify the built-in keymap
+makeoptions	ATKBD_DFLT_KEYMAP=jp.106
+
+# `flags' for atkbd:
+#       0x01    Force detection of keyboard, else we always assume a keyboard
+#       0x02    Don't reset keyboard, useful for some newer ThinkPads
+#	0x03	Force detection and avoid reset, might help with certain
+#		dockingstations
+#       0x04    Old-style (XT) keyboard support, useful for older ThinkPads
+
+# Video card driver for VGA adapters.
+device		vga
+hint.vga.0.at="isa"
+
+# Options for vga:
+# Try the following option if the mouse pointer is not drawn correctly
+# or font does not seem to be loaded properly.  May cause flicker on
+# some systems.
+options 	VGA_ALT_SEQACCESS
+
+# If you can dispense with some vga driver features, you may want to
+# use the following options to save some memory.
+#options 	VGA_NO_FONT_LOADING	# don't save/load font
+#options 	VGA_NO_MODE_CHANGE	# don't change video modes
+
+# Older video cards may require this option for proper operation.
+options 	VGA_SLOW_IOACCESS	# do byte-wide i/o's to TS and GDC regs
+
+# The following option probably won't work with the LCD displays.
+options 	VGA_WIDTH90		# support 90 column modes
+
+# Debugging.
+options 	VGA_DEBUG
+
+device		splash			# Splash screen and screen saver support
+
 # 3Dfx Voodoo Graphics, Voodoo II /dev/3dfx CDEV support.  This will create
 # the /dev/3dfx0 device to work with glide implementations.  This should get
 # linked to /dev/3dfx and /dev/voodoo.  Note that this is not the same as
@@ -257,7 +314,7 @@
 
 # ath:  Atheros a/b/g WiFi adapters (requires ath_hal and wlan)
 # ed:   Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503
-#       HP PC Lan+, various PC Card devices (refer to etc/defaults/pccard.conf)
+#       HP PC Lan+, various PC Card devices
 #       (requires miibus)
 # ipw:	Intel PRO/Wireless 2100 IEEE 802.11 adapter
 # iwi:	Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters
@@ -609,7 +666,3 @@
 # Enable NDIS binary driver support
 options 	NDISAPI
 device		ndis
-
-
-# The I/O device
-device		io

==== //depot/projects/linuxolator/src/sys/arm/arm/cpufunc.c#2 (text+ko) ====

@@ -45,11 +45,8 @@
  * Created      : 30/01/97
  */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc.c,v 1.11 2006/08/24 23:51:27 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc.c,v 1.12 2006/10/21 04:25:00 kevlo Exp $");
 
-#include <sys/cdefs.h>
-
-#include <sys/types.h>
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/lock.h>

==== //depot/projects/linuxolator/src/sys/arm/arm/elf_trampoline.c#2 (text+ko) ====

@@ -23,9 +23,8 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.13 2006/08/24 23:51:27 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.14 2006/10/21 04:25:00 kevlo Exp $");
 #include <machine/asm.h>
-#include <sys/types.h>
 #include <sys/elf32.h>
 #include <sys/param.h>
 #include <sys/inflate.h>

==== //depot/projects/linuxolator/src/sys/arm/arm/fusu.S#2 (text+ko) ====

@@ -37,7 +37,7 @@
 #include <machine/asmacros.h>
 #include <machine/armreg.h>
 #include "assym.s"
-__FBSDID("$FreeBSD: src/sys/arm/arm/fusu.S,v 1.10 2006/08/30 11:44:37 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/fusu.S,v 1.11 2006/10/17 02:24:46 davidxu Exp $");
 
 #ifdef MULTIPROCESSOR
 .Lcpu_info:
@@ -53,7 +53,7 @@
  */
 
 ENTRY_NP(casuword32)
-ENTRY(casuptr)
+ENTRY(casuword)
 #ifdef MULTIPROCESSOR
 	/* XXX Probably not appropriate for non-Hydra SMPs */
 	stmfd	sp!, {r0, r14}
@@ -72,7 +72,7 @@
 	beq	.Lfusupcbfault
 #endif
 	stmfd	sp!, {r4, r5}
-	adr	r4, .Lcasuptrfault
+	adr	r4, .Lcasuwordfault
 	str	r4, [r3, #PCB_ONFAULT]
 	ldrt	r5, [r0]
 	cmp	r5, r1
@@ -85,10 +85,10 @@
 	RET
 
 /*
- * Handle faults from casuptr.  Clean up and return -1.
+ * Handle faults from casuword.  Clean up and return -1.
  */
 
-.Lcasuptrfault:
+.Lcasuwordfault:
 	mov	r0, #0x00000000
 	str	r0, [r3, #PCB_ONFAULT]
 	mvn	r0, #0x00000000

==== //depot/projects/linuxolator/src/sys/arm/arm/nexus_io.c#2 (text+ko) ====

@@ -37,12 +37,11 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/nexus_io.c,v 1.5 2005/01/05 21:58:47 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/nexus_io.c,v 1.6 2006/10/21 04:25:00 kevlo Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/queue.h>
-#include <sys/types.h>
 #include <sys/bus.h>
 #include <sys/lock.h>
 #include <sys/mutex.h>

==== //depot/projects/linuxolator/src/sys/arm/arm/trap.c#2 (text+ko) ====

@@ -82,9 +82,7 @@
 #include "opt_ktrace.h"
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/trap.c,v 1.27 2006/07/28 20:22:57 jhb Exp $");
-
-#include <sys/types.h>
+__FBSDID("$FreeBSD: src/sys/arm/arm/trap.c,v 1.31 2006/10/21 04:25:00 kevlo Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -900,9 +898,9 @@
 		
 		nap--;
 	} else if (code == SYS___syscall) {
-		code = *ap++;
+		code = ap[_QUAD_LOWWORD];
 		nap -= 2;
-		ap++;
+		ap += 2;
 	}
 	if (p->p_sysent->sv_mask)
 		code &= p->p_sysent->sv_mask;
@@ -941,21 +939,22 @@
 	switch (error) {
 	case 0: 
 #ifdef __ARMEB__
-		if ((insn & 0x000fffff) &&
+		if ((insn & 0x000fffff) == SYS___syscall &&
 		    (code != SYS_lseek)) {
 			/*
 			 * 64-bit return, 32-bit syscall. Fixup byte order
-			 */
+			 */ 
 			frame->tf_r0 = 0;
 			frame->tf_r1 = td->td_retval[0];
 		} else {
-                        frame->tf_r0 = td->td_retval[0];
-                        frame->tf_r1 = td->td_retval[1];
+			frame->tf_r0 = td->td_retval[0];
+			frame->tf_r1 = td->td_retval[1];
 		}
 #else
-      		frame->tf_r0 = td->td_retval[0];
-		frame->tf_r1 = td->td_retval[1];
-#endif		
+		frame->tf_r0 = td->td_retval[0];
+	  	frame->tf_r1 = td->td_retval[1];
+#endif
+					      
 		frame->tf_spsr &= ~PSR_C_bit;   /* carry bit */
 		break;
 		

==== //depot/projects/linuxolator/src/sys/arm/arm/undefined.c#2 (text+ko) ====

@@ -48,7 +48,7 @@
 #include "opt_ddb.h"
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/undefined.c,v 1.13 2006/04/09 20:16:47 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/undefined.c,v 1.14 2006/10/21 04:25:00 kevlo Exp $");
 
 #include <sys/param.h>
 #include <sys/malloc.h>
@@ -58,7 +58,6 @@
 #include <sys/proc.h>
 #include <sys/syslog.h>
 #include <sys/vmmeter.h>
-#include <sys/types.h>
 #include <sys/lock.h>
 #include <sys/mutex.h>
 #include <sys/signalvar.h>

==== //depot/projects/linuxolator/src/sys/arm/at91/at91_spi.c#2 (text) ====

@@ -23,14 +23,13 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/at91_spi.c,v 1.2 2006/07/14 21:35:59 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/at91_spi.c,v 1.3 2006/10/20 07:10:13 imp Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/bus.h>
 #include <sys/conf.h>
 #include <sys/kernel.h>
-#include <sys/lock.h>
 #include <sys/mbuf.h>
 #include <sys/malloc.h>
 #include <sys/module.h>
@@ -50,9 +49,9 @@
 	void *intrhand;			/* Interrupt handle */
 	struct resource *irq_res;	/* IRQ resource */
 	struct resource	*mem_res;	/* Memory resource */
-	struct mtx sc_mtx;		/* basically a perimeter lock */
 	bus_dma_tag_t dmatag;		/* bus dma tag for mbufs */
 	bus_dmamap_t map[4];		/* Maps for the transaction */
+	int rxdone;
 };
 
 static inline uint32_t
@@ -67,19 +66,7 @@
 	bus_write_4(sc->mem_res, off, val);
 }
 
-#define AT91_SPI_LOCK(_sc)		mtx_lock(&(_sc)->sc_mtx)
-#define	AT91_SPI_UNLOCK(_sc)		mtx_unlock(&(_sc)->sc_mtx)
-#define AT91_SPI_LOCK_INIT(_sc) \
-	mtx_init(&_sc->sc_mtx, device_get_nameunit(_sc->dev), \
-	    "spi", MTX_DEF)
-#define AT91_SPI_LOCK_DESTROY(_sc)	mtx_destroy(&_sc->sc_mtx);
-#define AT91_SPI_ASSERT_LOCKED(_sc)	mtx_assert(&_sc->sc_mtx, MA_OWNED);
-#define AT91_SPI_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED);
-
-static devclass_t at91_spi_devclass;
-
 /* bus entry points */
-
 static int at91_spi_probe(device_t dev);
 static int at91_spi_attach(device_t dev);
 static int at91_spi_detach(device_t dev);
@@ -87,6 +74,7 @@
 /* helper routines */
 static int at91_spi_activate(device_t dev);
 static void at91_spi_deactivate(device_t dev);
+static void at91_spi_intr(void *arg);
 
 static int
 at91_spi_probe(device_t dev)
@@ -106,8 +94,6 @@
 	if (err)
 		goto out;
 
-	AT91_SPI_LOCK_INIT(sc);
-
 	/*
 	 * Allocate DMA tags and maps
 	 */
@@ -124,6 +110,7 @@
 
 	// reset the SPI
 	WR4(sc, SPI_CR, SPI_CR_SWRST);
+	WR4(sc, SPI_IDR, 0xffffffff);
 
 	WR4(sc, SPI_MR, (0xf << 24) | SPI_MR_MSTR | SPI_MR_MODFDIS |
 	    (0xE << 16));
@@ -141,8 +128,6 @@
 	WR4(sc, PDC_RCR, 0);
 	WR4(sc, PDC_TPR, 0);
 	WR4(sc, PDC_TCR, 0);
-	WR4(sc, PDC_PTCR, PDC_PTCR_RXTEN);
-	WR4(sc, PDC_PTCR, PDC_PTCR_TXTEN);
 	RD4(sc, SPI_RDR);
 	RD4(sc, SPI_SR);
 
@@ -164,7 +149,7 @@
 at91_spi_activate(device_t dev)
 {
 	struct at91_spi_softc *sc;
-	int rid;
+	int rid, err = ENOMEM;
 
 	sc = device_get_softc(dev);
 	rid = 0;
@@ -175,12 +160,16 @@
 	rid = 0;
 	sc->irq_res = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid,
 	    RF_ACTIVE);
-	if (sc->mem_res == NULL)
+	if (sc->irq_res == NULL)
+		goto errout;
+	err = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_MISC | INTR_MPSAFE,
+	    at91_spi_intr, sc, &sc->intrhand);
+	if (err != 0)
 		goto errout;
 	return (0);
 errout:
 	at91_spi_deactivate(dev);
-	return (ENOMEM);
+	return (err);
 }
 
 static void
@@ -216,7 +205,7 @@
 at91_spi_transfer(device_t dev, device_t child, struct spi_command *cmd)
 {
 	struct at91_spi_softc *sc;
-	int i;
+	int i, j, rxdone, err, mode[4];
 	bus_addr_t addr;
 
 	sc = device_get_softc(dev);
@@ -228,49 +217,73 @@
 	WR4(sc, PDC_TPR, addr);
 	WR4(sc, PDC_TCR, cmd->tx_cmd_sz);
 	bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREWRITE);
-	i++;
-	if (bus_dmamap_load(sc->dmatag, sc->map[i], cmd->tx_data,
-	    cmd->tx_data_sz, at91_getaddr, &addr, 0) != 0)
-		goto out;
-	WR4(sc, PDC_TNPR, addr);
-	WR4(sc, PDC_TNCR, cmd->tx_cmd_sz);
-	bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREWRITE);
-	i++;
+	mode[i++] = BUS_DMASYNC_POSTWRITE;
+	if (cmd->tx_data_sz > 0) {
+		if (bus_dmamap_load(sc->dmatag, sc->map[i], cmd->tx_data,
+			cmd->tx_data_sz, at91_getaddr, &addr, 0) != 0)
+			goto out;
+		WR4(sc, PDC_TNPR, addr);
+		WR4(sc, PDC_TNCR, cmd->tx_cmd_sz);
+		bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREWRITE);
+		mode[i++] = BUS_DMASYNC_POSTWRITE;
+	}
 	if (bus_dmamap_load(sc->dmatag, sc->map[i], cmd->rx_cmd,
 	    cmd->tx_cmd_sz, at91_getaddr, &addr, 0) != 0)
 		goto out;
 	WR4(sc, PDC_RPR, addr);
 	WR4(sc, PDC_RCR, cmd->tx_cmd_sz);
 	bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREREAD);
-	i++;
-	if (bus_dmamap_load(sc->dmatag, sc->map[i], cmd->rx_data,
-	    cmd->tx_data_sz, at91_getaddr, &addr, 0) != 0)
-		goto out;
-	WR4(sc, PDC_RNPR, addr);
-	WR4(sc, PDC_RNCR, cmd->tx_data_sz);
-	bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREREAD);
-
+	mode[i++] = BUS_DMASYNC_POSTREAD;
+	if (cmd->tx_data_sz > 0) {
+		if (bus_dmamap_load(sc->dmatag, sc->map[i], cmd->rx_data,
+			cmd->tx_data_sz, at91_getaddr, &addr, 0) != 0)
+			goto out;
+		WR4(sc, PDC_RNPR, addr);
+		WR4(sc, PDC_RNCR, cmd->tx_data_sz);
+		bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREREAD);
+		mode[i++] = BUS_DMASYNC_POSTREAD;
+	}
+	WR4(sc, SPI_IER, SPI_SR_ENDRX);
 	WR4(sc, PDC_PTCR, PDC_PTCR_TXTEN | PDC_PTCR_RXTEN);
 
-	// wait for completion
-	// XXX should be done as an ISR of some sort.
-	while (RD4(sc, SPI_SR) & SPI_SR_ENDRX)
-		DELAY(700);
-
-	// Sync the buffers after the DMA is done, and unload them.
-	bus_dmamap_sync(sc->dmatag, sc->map[0], BUS_DMASYNC_POSTWRITE);
-	bus_dmamap_sync(sc->dmatag, sc->map[1], BUS_DMASYNC_POSTWRITE);
-	bus_dmamap_sync(sc->dmatag, sc->map[2], BUS_DMASYNC_POSTREAD);
-	bus_dmamap_sync(sc->dmatag, sc->map[3], BUS_DMASYNC_POSTREAD);
-	for (i = 0; i < 4; i++)
-		bus_dmamap_unload(sc->dmatag, sc->map[i]);
-	return (0);
+	rxdone = sc->rxdone;
+	do {
+		err = msleep(&sc->rxdone, NULL, PCATCH | PZERO, "spi", hz);
+	} while (rxdone == sc->rxdone && err != EINTR);
+	WR4(sc, PDC_PTCR, PDC_PTCR_TXTDIS | PDC_PTCR_RXTDIS);
+	if (err == 0) {
+		for (j = 0; j < i; j++) 
+			bus_dmamap_sync(sc->dmatag, sc->map[j], mode[j]);
+	}
+	for (j = 0; j < i; j++)
+		bus_dmamap_unload(sc->dmatag, sc->map[j]);
+	return (err);
 out:;
-	while (i-- > 0)
-		bus_dmamap_unload(sc->dmatag, sc->map[i]);
+	for (j = 0; j < i; j++)
+		bus_dmamap_unload(sc->dmatag, sc->map[j]);
 	return (EIO);
 }
 
+static void
+at91_spi_intr(void *arg)
+{
+	struct at91_spi_softc *sc = (struct at91_spi_softc*)arg;
+	uint32_t sr;
+
+	sr = RD4(sc, SPI_SR) & RD4(sc, SPI_IMR);
+	if (sr & SPI_SR_ENDRX) {
+		sc->rxdone++;
+		WR4(sc, SPI_IDR, SPI_SR_ENDRX);
+		wakeup(&sc->rxdone);
+	}
+	if (sr & ~SPI_SR_ENDRX) {
+		device_printf(sc->dev, "Unexpected ISR %#x\n", sr);
+		WR4(sc, SPI_IDR, sr & ~SPI_SR_ENDRX);
+	}
+}
+
+static devclass_t at91_spi_devclass;
+
 static device_method_t at91_spi_methods[] = {
 	/* Device interface */
 	DEVMETHOD(device_probe,		at91_spi_probe),

==== //depot/projects/linuxolator/src/sys/arm/at91/at91_ssc.c#2 (text) ====

@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/at91_ssc.c,v 1.2 2006/07/14 22:30:44 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/at91_ssc.c,v 1.3 2006/10/20 07:08:59 imp Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -88,14 +88,16 @@
 /* cdev routines */
 static d_open_t at91_ssc_open;
 static d_close_t at91_ssc_close;
-static d_ioctl_t at91_ssc_ioctl;
+static d_read_t at91_ssc_read;
+static d_write_t at91_ssc_write;
 
 static struct cdevsw at91_ssc_cdevsw =
 {
 	.d_version = D_VERSION,
 	.d_open = at91_ssc_open,
 	.d_close = at91_ssc_close,
-	.d_ioctl = at91_ssc_ioctl
+	.d_read = at91_ssc_read,
+	.d_write = at91_ssc_write,
 };
 
 static int
@@ -134,6 +136,19 @@
 		goto out;
 	}
 	sc->cdev->si_drv1 = sc;
+
+	// Init for TSC needs
+	WR4(sc, SSC_CR, SSC_CR_SWRST);
+	WR4(sc, SSC_CMR, 0);		// clock divider unused
+	WR4(sc, SSC_RCMR,
+	    SSC_RCMR_CKS_RK | SSC_RCMR_CKO_NONE | SSC_RCMR_START_FALL_EDGE_RF);
+	WR4(sc, SSC_RFMR,
+	    0x1f | SSC_RFMR_MSFBF | SSC_RFMR_FSOS_NONE);
+	WR4(sc, SSC_TCMR,
+	    SSC_TCMR_CKS_TK | SSC_TCMR_CKO_NONE |  SSC_RCMR_START_CONT);
+	WR4(sc, SSC_TFMR,
+	    0x1f | SSC_TFMR_DATDEF | SSC_TFMR_MSFBF | SSC_TFMR_FSOS_NEG_PULSE);
+
 out:;
 	if (err)
 		at91_ssc_deactivate(dev);
@@ -161,7 +176,7 @@
 	rid = 0;
 	sc->irq_res = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid,
 	    RF_ACTIVE);
-	if (sc->mem_res == NULL)
+	if (sc->irq_res == NULL)
 		goto errout;
 	return (0);
 errout:
@@ -241,10 +256,15 @@
 }
 
 static int
-at91_ssc_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int fflag,
-    struct thread *td)
+at91_ssc_read(struct cdev *dev, struct uio *uio, int flag)
+{
+	return EIO;
+}
+
+static int
+at91_ssc_write(struct cdev *dev, struct uio *uio, int flag)
 {
-	return (ENXIO);
+	return EIO;
 }
 
 static device_method_t at91_ssc_methods[] = {

==== //depot/projects/linuxolator/src/sys/arm/at91/at91_sscreg.h#2 (text) ====

@@ -22,9 +22,114 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-/* $FreeBSD: src/sys/arm/at91/at91_sscreg.h,v 1.1 2006/03/24 07:42:33 imp Exp $ */
+/* $FreeBSD: src/sys/arm/at91/at91_sscreg.h,v 1.2 2006/10/20 07:08:15 imp Exp $ */
 
 #ifndef ARM_AT91_AT91_SSCREG_H
 #define ARM_AT91_AT91_SSCREG_H
 
+/* Registers */
+#define	SSC_CR		0x00		/* Control Register */
+#define	SSC_CMR		0x04		/* Clock Mode Register */
+		/*	0x08		Reserved */
+		/*	0x0c		Reserved */
+#define	SSC_RCMR	0x10		/* Receive Clock Mode Register */
+#define	SSC_RFMR	0x14		/* Receive Frame Mode Register */
+#define	SSC_TCMR	0x18		/* Transmit Clock Mode Register */
+#define	SSC_TFMR	0x1c		/* Transmit Frame Mode register */

>>> TRUNCATED FOR MAIL (1000 lines) <<<



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