Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 17 Mar 2007 16:03:34 GMT
From:      Alexander Leidinger <netchild@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 116028 for review
Message-ID:  <200703171603.l2HG3YsH075492@repoman.freebsd.org>

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

Change 116028 by netchild@netchild_magellan on 2007/03/17 16:03:00

	IFC

Affected files ...

.. //depot/projects/linuxolator/src/sys/amd64/amd64/identcpu.c#3 integrate
.. //depot/projects/linuxolator/src/sys/amd64/include/specialreg.h#3 integrate
.. //depot/projects/linuxolator/src/sys/arm/xscale/ixp425/avila_ata.c#3 integrate
.. //depot/projects/linuxolator/src/sys/arm/xscale/ixp425/ixp425.c#4 integrate
.. //depot/projects/linuxolator/src/sys/arm/xscale/ixp425/ixp425reg.h#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/bootspi/loader_prompt.c#3 integrate
.. //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/Makefile#4 integrate
.. //depot/projects/linuxolator/src/sys/boot/pc98/boot0.5/boot.s#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/pc98/boot0.5/boot0.5.s#2 integrate
.. //depot/projects/linuxolator/src/sys/boot/pc98/boot0.5/disk.s#2 integrate
.. //depot/projects/linuxolator/src/sys/cam/cam_xpt.c#8 integrate
.. //depot/projects/linuxolator/src/sys/coda/coda_vnops.c#3 integrate
.. //depot/projects/linuxolator/src/sys/conf/NOTES#20 integrate
.. //depot/projects/linuxolator/src/sys/conf/files#23 integrate
.. //depot/projects/linuxolator/src/sys/dev/acpica/Osd/OsdDebug.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/ata/ata-queue.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/ata/atapi-cam.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/bge/if_bge.c#16 integrate
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_ael1002.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_common.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_firmware_exports.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_mc5.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_mv88e1xxx.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_regs.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_sge_defs.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_t3_cpl.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_t3_hw.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_tcb.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_version.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_vsc8211.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/common/cxgb_xgmac.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/cxgb_adapter.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/cxgb_config.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/cxgb_ioctl.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/cxgb_lro.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/cxgb_main.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/cxgb_osdep.h#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/cxgb_sge.c#1 branch
.. //depot/projects/linuxolator/src/sys/dev/cxgb/t3fw-3.2.bin.gz.uu#1 branch
.. //depot/projects/linuxolator/src/sys/dev/firewire/firewire.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/firewirereg.h#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/fwdev.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/fwmem.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/fwohci.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/fwohci_pci.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/fwohcivar.h#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/if_fwe.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/if_fwip.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/sbp.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/firewire/sbp_targ.c#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/ichwd/ichwd.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/isp/isp.c#12 integrate
.. //depot/projects/linuxolator/src/sys/dev/isp/isp_freebsd.h#10 integrate
.. //depot/projects/linuxolator/src/sys/dev/isp/isp_pci.c#14 integrate
.. //depot/projects/linuxolator/src/sys/dev/isp/isp_sbus.c#8 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/isa/ad1816.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/isa/mss.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/isa/sbc.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/midi/midi.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/midi/sequencer.c#6 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/als4000.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/atiixp.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/cmi.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/ds1.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/emu10k1.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/emu10kx-pcm.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/envy24.c#7 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/envy24ht.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/es137x.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/hda/hdac.c#16 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/ich.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/maestro.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/maestro3.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/solo.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/t4dwave.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/via8233.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pci/via82c686.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/ac97.c#6 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/buffer.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/channel.c#6 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/channel_if.m#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/dsp.c#8 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/fake.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/feeder.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/feeder.h#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/feeder_fmt.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/feeder_rate.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/feeder_volume.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/sndstat.c#3 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/sound.c#6 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/sound.h#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/pcm/vchan.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/sbus/cs4231.c#4 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/usb/uaudio.c#5 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/usb/uaudio.h#2 integrate
.. //depot/projects/linuxolator/src/sys/dev/sound/usb/uaudio_pcm.c#4 integrate
.. //depot/projects/linuxolator/src/sys/fs/cd9660/cd9660_vfsops.c#3 integrate
.. //depot/projects/linuxolator/src/sys/fs/devfs/devfs_vnops.c#5 integrate
.. //depot/projects/linuxolator/src/sys/fs/fdescfs/fdesc_vnops.c#2 integrate
.. //depot/projects/linuxolator/src/sys/fs/hpfs/hpfs_vfsops.c#4 integrate
.. //depot/projects/linuxolator/src/sys/fs/msdosfs/msdosfs_denode.c#3 integrate
.. //depot/projects/linuxolator/src/sys/fs/ntfs/ntfs_vfsops.c#5 integrate
.. //depot/projects/linuxolator/src/sys/fs/nullfs/null_subr.c#2 integrate
.. //depot/projects/linuxolator/src/sys/fs/nwfs/nwfs_node.c#2 integrate
.. //depot/projects/linuxolator/src/sys/fs/portalfs/portal_vfsops.c#3 integrate
.. //depot/projects/linuxolator/src/sys/fs/portalfs/portal_vnops.c#2 integrate
.. //depot/projects/linuxolator/src/sys/fs/pseudofs/pseudofs_vncache.c#3 integrate
.. //depot/projects/linuxolator/src/sys/fs/smbfs/smbfs_node.c#3 integrate
.. //depot/projects/linuxolator/src/sys/fs/udf/udf_vfsops.c#6 integrate
.. //depot/projects/linuxolator/src/sys/fs/umapfs/umap_subr.c#2 integrate
.. //depot/projects/linuxolator/src/sys/fs/unionfs/union_subr.c#5 integrate
.. //depot/projects/linuxolator/src/sys/gnu/fs/ext2fs/ext2_vfsops.c#6 integrate
.. //depot/projects/linuxolator/src/sys/gnu/fs/reiserfs/reiserfs_inode.c#2 integrate
.. //depot/projects/linuxolator/src/sys/gnu/fs/xfs/FreeBSD/xfs_freebsd_iget.c#2 integrate
.. //depot/projects/linuxolator/src/sys/i386/acpica/acpi_wakeup.c#2 integrate
.. //depot/projects/linuxolator/src/sys/i386/i386/identcpu.c#4 integrate
.. //depot/projects/linuxolator/src/sys/i386/i386/pmap.c#9 integrate
.. //depot/projects/linuxolator/src/sys/i386/include/specialreg.h#3 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_descrip.c#8 integrate
.. //depot/projects/linuxolator/src/sys/kern/kern_rwlock.c#6 integrate
.. //depot/projects/linuxolator/src/sys/kern/uipc_mqueue.c#6 integrate
.. //depot/projects/linuxolator/src/sys/kern/uipc_socket.c#14 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_hash.c#2 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_mount.c#10 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_subr.c#9 integrate
.. //depot/projects/linuxolator/src/sys/kern/vfs_syscalls.c#10 integrate
.. //depot/projects/linuxolator/src/sys/modules/Makefile#10 integrate
.. //depot/projects/linuxolator/src/sys/modules/cxgb/Makefile#1 branch
.. //depot/projects/linuxolator/src/sys/net/bridgestp.c#11 integrate
.. //depot/projects/linuxolator/src/sys/net/if_bridge.c#13 integrate
.. //depot/projects/linuxolator/src/sys/net/if_vlan.c#6 integrate
.. //depot/projects/linuxolator/src/sys/netinet/ip_mroute.c#11 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp.h#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_asconf.c#8 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_asconf.h#4 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_auth.c#5 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_auth.h#3 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_bsd_addr.c#4 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_bsd_addr.h#3 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_constants.h#7 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_header.h#2 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_indata.c#8 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_input.c#8 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_lock_bsd.h#3 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_os.h#5 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_os_bsd.h#7 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_output.c#8 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_output.h#3 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_pcb.c#8 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_pcb.h#6 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_peeloff.c#5 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_structs.h#8 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_sysctl.c#1 branch
.. //depot/projects/linuxolator/src/sys/netinet/sctp_sysctl.h#1 branch
.. //depot/projects/linuxolator/src/sys/netinet/sctp_timer.c#6 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_uio.h#6 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_usrreq.c#8 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctp_var.h#6 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctputil.c#8 integrate
.. //depot/projects/linuxolator/src/sys/netinet/sctputil.h#7 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp.h#3 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp_input.c#11 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp_output.c#7 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp_subr.c#7 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp_syncache.c#6 integrate
.. //depot/projects/linuxolator/src/sys/netinet/tcp_var.h#5 integrate
.. //depot/projects/linuxolator/src/sys/netinet6/sctp6_usrreq.c#8 integrate
.. //depot/projects/linuxolator/src/sys/nfsclient/nfs_node.c#5 integrate
.. //depot/projects/linuxolator/src/sys/sys/acl.h#2 integrate
.. //depot/projects/linuxolator/src/sys/sys/extattr.h#4 integrate
.. //depot/projects/linuxolator/src/sys/sys/ucred.h#2 integrate
.. //depot/projects/linuxolator/src/sys/sys/vnode.h#6 integrate
.. //depot/projects/linuxolator/src/sys/ufs/ffs/ffs_vfsops.c#8 integrate
.. //depot/projects/linuxolator/src/sys/ufs/ufs/quota.h#3 integrate
.. //depot/projects/linuxolator/src/sys/ufs/ufs/ufs_lookup.c#2 integrate
.. //depot/projects/linuxolator/src/sys/ufs/ufs/ufs_quota.c#9 integrate
.. //depot/projects/linuxolator/src/sys/ufs/ufs/ufs_vnops.c#10 integrate

Differences ...

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

@@ -39,7 +39,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.149 2007/01/09 19:23:21 jkim Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.150 2007/03/12 20:27:21 jkim Exp $");
 
 #include "opt_cpu.h"
 
@@ -312,7 +312,7 @@
 				"\006<b5>"
 				"\007<b6>"
 				"\010<b7>"
-				"\011<b8>"
+				"\011Prefetch"	/* 3DNow! Prefetch/PrefetchW */
 				"\012<b9>"
 				"\013<b10>"
 				"\014<b11>"

==== //depot/projects/linuxolator/src/sys/amd64/include/specialreg.h#3 (text+ko) ====

@@ -27,7 +27,7 @@
  * SUCH DAMAGE.
  *
  *	from: @(#)specialreg.h	7.1 (Berkeley) 5/9/91
- * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.36 2007/01/09 19:23:21 jkim Exp $
+ * $FreeBSD: src/sys/amd64/include/specialreg.h,v 1.37 2007/03/12 20:27:21 jkim Exp $
  */
 
 #ifndef _MACHINE_SPECIALREG_H_
@@ -112,35 +112,36 @@
 #define	CPUID_IA64	0x40000000
 #define	CPUID_PBE	0x80000000
 
-#define CPUID2_SSE3	0x00000001
-#define CPUID2_MON	0x00000008
-#define CPUID2_DS_CPL	0x00000010
-#define CPUID2_VMX	0x00000020
-#define CPUID2_EST	0x00000080
-#define CPUID2_TM2	0x00000100
-#define CPUID2_SSSE3	0x00000200
-#define CPUID2_CNXTID	0x00000400
-#define CPUID2_CX16	0x00002000
-#define CPUID2_XTPR	0x00004000
+#define	CPUID2_SSE3	0x00000001
+#define	CPUID2_MON	0x00000008
+#define	CPUID2_DS_CPL	0x00000010
+#define	CPUID2_VMX	0x00000020
+#define	CPUID2_EST	0x00000080
+#define	CPUID2_TM2	0x00000100
+#define	CPUID2_SSSE3	0x00000200
+#define	CPUID2_CNXTID	0x00000400
+#define	CPUID2_CX16	0x00002000
+#define	CPUID2_XTPR	0x00004000
 
 /*
  * Important bits in the AMD extended cpuid flags
  */
-#define AMDID_SYSCALL	0x00000800
-#define AMDID_MP	0x00080000
-#define AMDID_NX	0x00100000
-#define AMDID_EXT_MMX	0x00400000
-#define AMDID_FFXSR	0x01000000
-#define AMDID_RDTSCP	0x08000000
-#define AMDID_LM	0x20000000
-#define AMDID_EXT_3DNOW	0x40000000
-#define AMDID_3DNOW	0x80000000
+#define	AMDID_SYSCALL	0x00000800
+#define	AMDID_MP	0x00080000
+#define	AMDID_NX	0x00100000
+#define	AMDID_EXT_MMX	0x00400000
+#define	AMDID_FFXSR	0x01000000
+#define	AMDID_RDTSCP	0x08000000
+#define	AMDID_LM	0x20000000
+#define	AMDID_EXT_3DNOW	0x40000000
+#define	AMDID_3DNOW	0x80000000
 
-#define AMDID2_LAHF	0x00000001
-#define AMDID2_CMP	0x00000002
-#define AMDID2_SVM	0x00000004
-#define AMDID2_EXT_APIC	0x00000008
-#define AMDID2_CR8	0x00000010
+#define	AMDID2_LAHF	0x00000001
+#define	AMDID2_CMP	0x00000002
+#define	AMDID2_SVM	0x00000004
+#define	AMDID2_EXT_APIC	0x00000008
+#define	AMDID2_CR8	0x00000010
+#define	AMDID2_PREFETCH	0x00000100
 
 /*
  * CPUID instruction 1 ebx info
@@ -153,29 +154,29 @@
 /*
  * AMD extended function 8000_0008h ecx info
  */
-#define AMDID_CMP_CORES		0x000000ff
+#define	AMDID_CMP_CORES		0x000000ff
 
 /*
  * Model-specific registers for the i386 family
  */
-#define MSR_P5_MC_ADDR		0x000
-#define MSR_P5_MC_TYPE		0x001
-#define MSR_TSC			0x010
+#define	MSR_P5_MC_ADDR		0x000
+#define	MSR_P5_MC_TYPE		0x001
+#define	MSR_TSC			0x010
 #define	MSR_P5_CESR		0x011
 #define	MSR_P5_CTR0		0x012
 #define	MSR_P5_CTR1		0x013
 #define	MSR_IA32_PLATFORM_ID	0x017
-#define MSR_APICBASE		0x01b
-#define MSR_EBL_CR_POWERON	0x02a
+#define	MSR_APICBASE		0x01b
+#define	MSR_EBL_CR_POWERON	0x02a
 #define	MSR_TEST_CTL		0x033
-#define MSR_BIOS_UPDT_TRIG	0x079
+#define	MSR_BIOS_UPDT_TRIG	0x079
 #define	MSR_BBL_CR_D0		0x088
 #define	MSR_BBL_CR_D1		0x089
 #define	MSR_BBL_CR_D2		0x08a
-#define MSR_BIOS_SIGN		0x08b
-#define MSR_PERFCTR0		0x0c1
-#define MSR_PERFCTR1		0x0c2
-#define MSR_MTRRcap		0x0fe
+#define	MSR_BIOS_SIGN		0x08b
+#define	MSR_PERFCTR0		0x0c1
+#define	MSR_PERFCTR1		0x0c2
+#define	MSR_MTRRcap		0x0fe
 #define	MSR_BBL_CR_ADDR		0x116
 #define	MSR_BBL_CR_DECC		0x118
 #define	MSR_BBL_CR_CTL		0x119
@@ -185,47 +186,47 @@
 #define	MSR_SYSENTER_CS_MSR	0x174
 #define	MSR_SYSENTER_ESP_MSR	0x175
 #define	MSR_SYSENTER_EIP_MSR	0x176
-#define MSR_MCG_CAP		0x179
-#define MSR_MCG_STATUS		0x17a
-#define MSR_MCG_CTL		0x17b
-#define MSR_EVNTSEL0		0x186
-#define MSR_EVNTSEL1		0x187
-#define MSR_THERM_CONTROL	0x19a
-#define MSR_THERM_INTERRUPT	0x19b
-#define MSR_THERM_STATUS	0x19c
+#define	MSR_MCG_CAP		0x179
+#define	MSR_MCG_STATUS		0x17a
+#define	MSR_MCG_CTL		0x17b
+#define	MSR_EVNTSEL0		0x186
+#define	MSR_EVNTSEL1		0x187
+#define	MSR_THERM_CONTROL	0x19a
+#define	MSR_THERM_INTERRUPT	0x19b
+#define	MSR_THERM_STATUS	0x19c
 #define	MSR_IA32_MISC_ENABLE	0x1a0
-#define MSR_DEBUGCTLMSR		0x1d9
-#define MSR_LASTBRANCHFROMIP	0x1db
-#define MSR_LASTBRANCHTOIP	0x1dc
-#define MSR_LASTINTFROMIP	0x1dd
-#define MSR_LASTINTTOIP		0x1de
-#define MSR_ROB_CR_BKUPTMPDR6	0x1e0
-#define MSR_MTRRVarBase		0x200
-#define MSR_MTRR64kBase		0x250
-#define MSR_MTRR16kBase		0x258
-#define MSR_MTRR4kBase		0x268
-#define MSR_PAT			0x277
-#define MSR_MTRRdefType		0x2ff
-#define MSR_MC0_CTL		0x400
-#define MSR_MC0_STATUS		0x401
-#define MSR_MC0_ADDR		0x402
-#define MSR_MC0_MISC		0x403
-#define MSR_MC1_CTL		0x404
-#define MSR_MC1_STATUS		0x405
-#define MSR_MC1_ADDR		0x406
-#define MSR_MC1_MISC		0x407
-#define MSR_MC2_CTL		0x408
-#define MSR_MC2_STATUS		0x409
-#define MSR_MC2_ADDR		0x40a
-#define MSR_MC2_MISC		0x40b
-#define MSR_MC3_CTL		0x40c
-#define MSR_MC3_STATUS		0x40d
-#define MSR_MC3_ADDR		0x40e
-#define MSR_MC3_MISC		0x40f
-#define MSR_MC4_CTL		0x410
-#define MSR_MC4_STATUS		0x411
-#define MSR_MC4_ADDR		0x412
-#define MSR_MC4_MISC		0x413
+#define	MSR_DEBUGCTLMSR		0x1d9
+#define	MSR_LASTBRANCHFROMIP	0x1db
+#define	MSR_LASTBRANCHTOIP	0x1dc
+#define	MSR_LASTINTFROMIP	0x1dd
+#define	MSR_LASTINTTOIP		0x1de
+#define	MSR_ROB_CR_BKUPTMPDR6	0x1e0
+#define	MSR_MTRRVarBase		0x200
+#define	MSR_MTRR64kBase		0x250
+#define	MSR_MTRR16kBase		0x258
+#define	MSR_MTRR4kBase		0x268
+#define	MSR_PAT			0x277
+#define	MSR_MTRRdefType		0x2ff
+#define	MSR_MC0_CTL		0x400
+#define	MSR_MC0_STATUS		0x401
+#define	MSR_MC0_ADDR		0x402
+#define	MSR_MC0_MISC		0x403
+#define	MSR_MC1_CTL		0x404
+#define	MSR_MC1_STATUS		0x405
+#define	MSR_MC1_ADDR		0x406
+#define	MSR_MC1_MISC		0x407
+#define	MSR_MC2_CTL		0x408
+#define	MSR_MC2_STATUS		0x409
+#define	MSR_MC2_ADDR		0x40a
+#define	MSR_MC2_MISC		0x40b
+#define	MSR_MC3_CTL		0x40c
+#define	MSR_MC3_STATUS		0x40d
+#define	MSR_MC3_ADDR		0x40e
+#define	MSR_MC3_MISC		0x40f
+#define	MSR_MC4_CTL		0x410
+#define	MSR_MC4_STATUS		0x411
+#define	MSR_MC4_ADDR		0x412
+#define	MSR_MC4_MISC		0x413
 
 /*
  * Constants related to MSR's.
@@ -250,9 +251,9 @@
 /*
  * Constants related to MTRRs
  */
-#define MTRR_N64K		8	/* numbers of fixed-size entries */
-#define MTRR_N16K		16
-#define MTRR_N4K		64
+#define	MTRR_N64K		8	/* numbers of fixed-size entries */
+#define	MTRR_N16K		16
+#define	MTRR_N4K		64
 
 /* Performance Control Register (5x86 only). */
 #define	PCR0			0x20
@@ -349,11 +350,11 @@
 #define	RCR6	0xe2
 #define	RCR7	0xe3
 
-#define RCR_RCD	0x01	/* Disables caching for ARRx (x = 0-6). */
-#define RCR_RCE	0x01	/* Enables caching for ARR7. */
-#define RCR_WWO	0x02	/* Weak write ordering. */
+#define	RCR_RCD	0x01	/* Disables caching for ARRx (x = 0-6). */
+#define	RCR_RCE	0x01	/* Enables caching for ARR7. */
+#define	RCR_WWO	0x02	/* Weak write ordering. */
 #define	RCR_WL	0x04	/* Weak locking. */
-#define RCR_WG	0x08	/* Write gathering. */
+#define	RCR_WG	0x08	/* Write gathering. */
 #define	RCR_WT	0x10	/* Write-through. */
 #define	RCR_NLB	0x20	/* LBA# pin is not asserted. */
 

==== //depot/projects/linuxolator/src/sys/arm/xscale/ixp425/avila_ata.c#3 (text+ko) ====

@@ -28,13 +28,16 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/avila_ata.c,v 1.2 2007/02/25 22:17:54 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/avila_ata.c,v 1.3 2007/03/14 18:05:04 jhay Exp $");
 
 /*
  * Compact Flash Support for the Avila Gateworks XScale boards.
- * There are 1 or 2 optional CF slots operated in "True IDE" mode.
- * Registers are on the Expansion Bus connected to CS1.  Interrupts
- * are tied to GPIO pin 12.  No DMA, just PIO.
+ * The CF slot is operated in "True IDE" mode. Registers are on
+ * the Expansion Bus connected to CS1 and CS2. Interrupts are
+ * tied to GPIO pin 12.  No DMA, just PIO.
+ *
+ * The ADI Pronghorn Metro is very similar. It use CS3 and CS4 and
+ * GPIO pin 0 for interrupts.
  *
  * See also http://www.intel.com/design/network/applnots/302456.htm.
  */
@@ -64,17 +67,24 @@
 #include <dev/ata/ata-all.h>
 #include <ata_if.h>
 
-#define	AVILA_IDE_GPIN	12		/* GPIO pin # */
-#define	AVILA_IDE_IRQ	IXP425_INT_GPIO_12
-#define	AVILA_IDE_CTRL	0x1e		/* control register */
+#define	AVILA_IDE_GPIN		12		/* GPIO pin # */
+#define	AVILA_IDE_IRQ		IXP425_INT_GPIO_12
+#define	AVILA_IDE_CTRL		0x06		/* control register */
+
+#define	PRONGHORN_IDE_GPIN	0	/* GPIO pin # */
+#define	PRONGHORN_IDE_IRQ	IXP425_INT_GPIO_0
+#define	PRONGHORN_IDE_CNTRL	0x06	/* control register */
 
 struct ata_avila_softc {
 	device_t		sc_dev;
 	bus_space_tag_t		sc_iot;
 	bus_space_handle_t	sc_exp_ioh;	/* Exp Bus config registers */
-	bus_space_handle_t	sc_ioh;		/* CS1 data registers */
+	bus_space_handle_t	sc_ioh;		/* CS1/3 data registers */
+	bus_space_handle_t	sc_alt_ioh;	/* CS2/4 data registers */
 	struct bus_space	sc_expbus_tag;
 	struct resource		sc_ata;		/* hand-crafted for ATA */
+	struct resource		sc_alt_ata;	/* hand-crafted for ATA */
+	u_int32_t		sc_16bit_off;	/* EXP_TIMING_CSx_OFFSET */
 	int			sc_rid;		/* rid for IRQ */
 	struct resource		*sc_irq;	/* IRQ resource */
 	void			*sc_ih;		/* interrupt handler */
@@ -94,8 +104,14 @@
 static int
 ata_avila_probe(device_t dev)
 {
+	struct ixp425_softc *sa = device_get_softc(device_get_parent(dev));
+
 	/* XXX any way to check? */
-	device_set_desc_copy(dev, "Gateworks Avila IDE/CF Controller");
+	if (EXP_BUS_READ_4(sa, EXP_TIMING_CS2_OFFSET) != 0)
+		device_set_desc_copy(dev, "Gateworks Avila IDE/CF Controller");
+	else
+		device_set_desc_copy(dev,
+		    "ADI Pronghorn Metro IDE/CF Controller");
 	return 0;
 }
 
@@ -104,14 +120,43 @@
 {
 	struct ata_avila_softc *sc = device_get_softc(dev);
 	struct ixp425_softc *sa = device_get_softc(device_get_parent(dev));
+	u_int32_t alt_t_off, board_type, ide_gpin, ide_irq;
 
+	board_type = 0;
 	sc->sc_dev = dev;
 	/* NB: borrow from parent */
 	sc->sc_iot = sa->sc_iot;
 	sc->sc_exp_ioh = sa->sc_exp_ioh;
-	if (bus_space_map(sc->sc_iot,
-	    IXP425_EXP_BUS_CS1_HWBASE, IXP425_EXP_BUS_CS1_SIZE, 0, &sc->sc_ioh))
-		panic("%s: unable to map Expansion Bus CS1 window", __func__);
+	if (EXP_BUS_READ_4(sc, EXP_TIMING_CS2_OFFSET) != 0)
+		board_type = 1;		/* Avila board */
+
+	if (board_type == 1) {
+		if (bus_space_map(sc->sc_iot, IXP425_EXP_BUS_CS1_HWBASE,
+		    IXP425_EXP_BUS_CS1_SIZE, 0, &sc->sc_ioh))
+			panic("%s: unable to map Expansion Bus CS1 window",
+			    __func__);
+		if (bus_space_map(sc->sc_iot, IXP425_EXP_BUS_CS2_HWBASE,
+		    IXP425_EXP_BUS_CS2_SIZE, 0, &sc->sc_alt_ioh))
+			panic("%s: unable to map Expansion Bus CS2 window",
+			    __func__);
+		ide_gpin = AVILA_IDE_GPIN;
+		ide_irq = AVILA_IDE_IRQ;
+		sc->sc_16bit_off = EXP_TIMING_CS1_OFFSET;
+		alt_t_off = EXP_TIMING_CS2_OFFSET;
+	} else {
+		if (bus_space_map(sc->sc_iot, IXP425_EXP_BUS_CS3_HWBASE,
+		    IXP425_EXP_BUS_CS3_SIZE, 0, &sc->sc_ioh))
+			panic("%s: unable to map Expansion Bus CS3 window",
+			    __func__);
+		if (bus_space_map(sc->sc_iot, IXP425_EXP_BUS_CS4_HWBASE,
+		    IXP425_EXP_BUS_CS4_SIZE, 0, &sc->sc_alt_ioh))
+			panic("%s: unable to map Expansion Bus CS4 window",
+			    __func__);
+		ide_gpin = PRONGHORN_IDE_GPIN;
+		ide_irq = PRONGHORN_IDE_IRQ;
+		sc->sc_16bit_off = EXP_TIMING_CS3_OFFSET;
+		alt_t_off = EXP_TIMING_CS4_OFFSET;
+	}
 
 	/*
 	 * Craft special resource for ATA bus space ops
@@ -137,27 +182,34 @@
 
 	rman_set_bustag(&sc->sc_ata, &sc->sc_expbus_tag);
 	rman_set_bushandle(&sc->sc_ata, sc->sc_ioh);
+	rman_set_bustag(&sc->sc_alt_ata, &sc->sc_expbus_tag);
+	rman_set_bushandle(&sc->sc_alt_ata, sc->sc_alt_ioh);
 
 	GPIO_CONF_WRITE_4(sa, IXP425_GPIO_GPOER, 
-	    GPIO_CONF_READ_4(sa, IXP425_GPIO_GPOER) | (1<<AVILA_IDE_GPIN));
-	/* interrupt is active low */
-	GPIO_CONF_WRITE_4(sa, GPIO_TYPE_REG(AVILA_IDE_GPIN),
-	    GPIO_CONF_READ_4(sa, GPIO_TYPE_REG(AVILA_IDE_GPIN) |
-	    GPIO_TYPE(AVILA_IDE_GPIN, GPIO_TYPE_ACT_LOW)));
+	    GPIO_CONF_READ_4(sa, IXP425_GPIO_GPOER) | (1<<ide_gpin));
+	/* interrupt is active high */
+	GPIO_CONF_WRITE_4(sa, GPIO_TYPE_REG(ide_gpin),
+	    (GPIO_CONF_READ_4(sa, GPIO_TYPE_REG(ide_gpin)) &
+	    ~GPIO_TYPE(ide_gpin, GPIO_TYPE_MASK)) |
+	    GPIO_TYPE(ide_gpin, GPIO_TYPE_ACT_HIGH));
 
 	/* clear ISR */
-	GPIO_CONF_WRITE_4(sa, IXP425_GPIO_GPISR, (1<<AVILA_IDE_GPIN));
+	GPIO_CONF_WRITE_4(sa, IXP425_GPIO_GPISR, (1<<ide_gpin));
 
-	/* configure CS1 window, leaving timing unchanged */
-	EXP_BUS_WRITE_4(sc, EXP_TIMING_CS1_OFFSET,
-	    EXP_BUS_READ_4(sc, EXP_TIMING_CS1_OFFSET) |
+	/* configure CS1/3 window, leaving timing unchanged */
+	EXP_BUS_WRITE_4(sc, sc->sc_16bit_off,
+	    EXP_BUS_READ_4(sc, sc->sc_16bit_off) |
+	        EXP_BYTE_EN | EXP_WR_EN | EXP_BYTE_RD16 | EXP_CS_EN);
+	/* configure CS2/4 window, leaving timing unchanged */
+	EXP_BUS_WRITE_4(sc, alt_t_off,
+	    EXP_BUS_READ_4(sc, alt_t_off) |
 	        EXP_BYTE_EN | EXP_WR_EN | EXP_BYTE_RD16 | EXP_CS_EN);
 
 	/* setup interrupt */
 	sc->sc_irq = bus_alloc_resource(dev, SYS_RES_IRQ, &sc->sc_rid,
-	    AVILA_IDE_IRQ, AVILA_IDE_IRQ, 1, RF_ACTIVE);
+	    ide_irq, ide_irq, 1, RF_ACTIVE);
 	if (!sc->sc_irq)
-		panic("Unable to allocate irq %u.\n", AVILA_IDE_IRQ);
+		panic("Unable to allocate irq %u.\n", ide_irq);
 	bus_setup_intr(dev, sc->sc_irq,
 	    INTR_TYPE_BIO | INTR_MPSAFE | INTR_ENTROPY,
 	    NULL, ata_avila_intr, sc, &sc->sc_ih);
@@ -261,8 +313,8 @@
 static void __inline
 enable_16(struct ata_avila_softc *sc)
 {
-	EXP_BUS_WRITE_4(sc, EXP_TIMING_CS1_OFFSET,
-	    EXP_BUS_READ_4(sc, EXP_TIMING_CS1_OFFSET) &~ EXP_BYTE_EN);
+	EXP_BUS_WRITE_4(sc, sc->sc_16bit_off,
+	    EXP_BUS_READ_4(sc, sc->sc_16bit_off) &~ EXP_BYTE_EN);
 	DELAY(100);		/* XXX? */
 }
 
@@ -270,8 +322,8 @@
 disable_16(struct ata_avila_softc *sc)
 {
 	DELAY(100);		/* XXX? */
-	EXP_BUS_WRITE_4(sc, EXP_TIMING_CS1_OFFSET,
-	    EXP_BUS_READ_4(sc, EXP_TIMING_CS1_OFFSET) | EXP_BYTE_EN);
+	EXP_BUS_WRITE_4(sc, sc->sc_16bit_off,
+	    EXP_BUS_READ_4(sc, sc->sc_16bit_off) | EXP_BYTE_EN);
 }
 
 uint8_t
@@ -439,10 +491,11 @@
 	/* NB: should be used only for ATAPI devices */
 	ch->r_io[ATA_IREASON].offset = ATA_COUNT;
 	ch->r_io[ATA_STATUS].offset = ATA_COMMAND;
-	/* alias this; required by ata_generic_status */
-	ch->r_io[ATA_ALTSTAT].offset = ch->r_io[ATA_STATUS].offset;
 
-	/* NB: the control register is special */
+	/* NB: the control and alt status registers are special */
+	ch->r_io[ATA_ALTSTAT].res = &sc->sc_alt_ata;
+	ch->r_io[ATA_ALTSTAT].offset = AVILA_IDE_CTRL;
+	ch->r_io[ATA_CONTROL].res = &sc->sc_alt_ata;
 	ch->r_io[ATA_CONTROL].offset = AVILA_IDE_CTRL;
 
 	/* NB: by convention this points at the base of registers */
@@ -452,88 +505,6 @@
 	return ata_attach(dev);
 }
 
-/* XXX override ata_generic_reset to handle non-standard status */
-static void
-avila_channel_reset(device_t dev)
-{
-	struct ata_channel *ch = device_get_softc(dev);
-	u_int8_t ostat0 = 0, stat0 = 0;
-	u_int8_t err = 0, lsb = 0, msb = 0;
-	int mask = 0, timeout;
-
-	/* do we have any signs of ATA/ATAPI HW being present ? */
-	ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | ATA_D_LBA | ATA_MASTER);
-	DELAY(10);
-	ostat0 = ATA_IDX_INB(ch, ATA_STATUS);
-	if ((ostat0 & 0xf8) != 0xf8 && ostat0 != 0xa5) {
-		stat0 = ATA_S_BUSY;
-		mask |= 0x01;
-	}
-
-	if (bootverbose)
-		device_printf(dev, "%s: reset tp1 mask=%02x ostat0=%02x\n",
-		    __func__, mask, ostat0);
-
-	/* if nothing showed up there is no need to get any further */
-	/* XXX SOS is that too strong?, we just might loose devices here */
-	ch->devices = 0;
-	if (!mask)
-		return;
-
-	/* reset (both) devices on this channel */
-	ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | ATA_D_LBA | ATA_MASTER);
-	DELAY(10);
-	ATA_IDX_OUTB(ch, ATA_CONTROL, ATA_A_IDS | ATA_A_RESET);
-	ata_udelay(10000); 
-	ATA_IDX_OUTB(ch, ATA_CONTROL, ATA_A_IDS);
-	ata_udelay(100000);
-	ATA_IDX_INB(ch, ATA_ERROR);
-
-	/* wait for BUSY to go inactive */
-	for (timeout = 0; timeout < 310; timeout++) {
-		if ((mask & 0x01) && (stat0 & ATA_S_BUSY)) {
-			ATA_IDX_OUTB(ch, ATA_DRIVE, ATA_D_IBM | ATA_MASTER);
-			DELAY(10);
-			err = ATA_IDX_INB(ch, ATA_ERROR);
-			lsb = ATA_IDX_INB(ch, ATA_CYL_LSB);
-			msb = ATA_IDX_INB(ch, ATA_CYL_MSB);
-			stat0 = ATA_IDX_INB(ch, ATA_STATUS);
-			if (bootverbose)
-				device_printf(dev,
-				    "%s: stat0=0x%02x err=0x%02x lsb=0x%02x "
-				    "msb=0x%02x\n", __func__,
-				    stat0, err, lsb, msb);
-			if (stat0 == err && lsb == err && msb == err &&
-			    timeout > (stat0 & ATA_S_BUSY ? 100 : 10))
-				mask &= ~0x01;
-			if (!(stat0 & ATA_S_BUSY)) {
-				if ((err & 0x7f) == ATA_E_ILI || err == 0) {
-					if (lsb == ATAPI_MAGIC_LSB &&
-					    msb == ATAPI_MAGIC_MSB) {
-						ch->devices |= ATA_ATAPI_MASTER;
-					} else if (stat0 & ATA_S_READY) {
-						ch->devices |= ATA_ATA_MASTER;
-					}
-				} else if ((stat0 & 0x0f) &&
-				    err == lsb && err == msb) {
-					stat0 |= ATA_S_BUSY;
-				}
-			}
-		}
-		if (mask == 0x00)       /* nothing to wait for */
-			break;
-		/* wait for master */
-		if (!(stat0 & ATA_S_BUSY) || (stat0 == 0xff && timeout > 10))
-			break;
-		ata_udelay(100000);
-	}
-
-	if (bootverbose)
-		device_printf(dev, "%s: reset tp2 stat0=%02x devices=0x%b\n",
-		    __func__, stat0, ch->devices,
-		    "\20\4ATAPI_SLAVE\3ATAPI_MASTER\2ATA_SLAVE\1ATA_MASTER");
-}
-
 static device_method_t avila_channel_methods[] = {
 	/* device interface */
 	DEVMETHOD(device_probe,     avila_channel_probe),
@@ -543,8 +514,6 @@
 	DEVMETHOD(device_suspend,   ata_suspend),
 	DEVMETHOD(device_resume,    ata_resume),
 
-	DEVMETHOD(ata_reset,	    avila_channel_reset),
-
 	{ 0, 0 }
 };
 

==== //depot/projects/linuxolator/src/sys/arm/xscale/ixp425/ixp425.c#4 (text+ko) ====

@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425.c,v 1.4 2007/02/23 12:18:28 piso Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425.c,v 1.5 2007/03/14 19:03:07 jhay Exp $");
 
 #define _ARM32_BUS_DMA_PRIVATE
 #include <sys/param.h>
@@ -86,6 +86,13 @@
 	/* Gateworks Avila IDE/CF is mapped here */
 	{ IXP425_EXP_BUS_CS1_HWBASE, IXP425_EXP_BUS_SIZE,
 	  IXP425_EXP_BUS_CS1_VBASE },
+	{ IXP425_EXP_BUS_CS2_HWBASE, IXP425_EXP_BUS_SIZE,
+	  IXP425_EXP_BUS_CS2_VBASE },
+	/* ADI Pronghorn Metro IDE/CF is mapped here */
+	{ IXP425_EXP_BUS_CS3_HWBASE, IXP425_EXP_BUS_SIZE,
+	  IXP425_EXP_BUS_CS3_VBASE },
+	{ IXP425_EXP_BUS_CS4_HWBASE, IXP425_EXP_BUS_SIZE,
+	  IXP425_EXP_BUS_CS4_VBASE },
 };
 
 static int

==== //depot/projects/linuxolator/src/sys/arm/xscale/ixp425/ixp425reg.h#2 (text+ko) ====

@@ -31,7 +31,7 @@
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  *
- * $FreeBSD: src/sys/arm/xscale/ixp425/ixp425reg.h,v 1.1 2006/11/19 23:55:23 sam Exp $
+ * $FreeBSD: src/sys/arm/xscale/ixp425/ixp425reg.h,v 1.2 2007/03/14 19:03:07 jhay Exp $
  *
  */
 
@@ -566,15 +566,24 @@
 #define	IXP425_EXP_BUS_CSx_HWBASE(i) \
 	(IXP425_EXP_BUS_HWBASE + (i)*IXP425_EXP_BUS_SIZE)
 
+#define	IXP425_EXP_BUS_CSx_VBASE(i) \
+	(IXP425_MAC_B_VBASE + (i)*IXP425_MAC_B_SIZE)
+
 #define	IXP425_EXP_BUS_CS1_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(1)
-#define IXP425_EXP_BUS_CS1_VBASE	(IXP425_MAC_B_VBASE + IXP425_MAC_B_SIZE)
+#define IXP425_EXP_BUS_CS1_VBASE	IXP425_EXP_BUS_CSx_VBASE(1)
 #define IXP425_EXP_BUS_CS1_SIZE		0x1000
+#define	IXP425_EXP_BUS_CS2_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(2)
+#define IXP425_EXP_BUS_CS2_VBASE	IXP425_EXP_BUS_CSx_VBASE(2)
+#define IXP425_EXP_BUS_CS2_SIZE		0x1000
+#define	IXP425_EXP_BUS_CS3_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(3)
+#define IXP425_EXP_BUS_CS3_VBASE	IXP425_EXP_BUS_CSx_VBASE(3)
+#define IXP425_EXP_BUS_CS3_SIZE		0x1000
+#define	IXP425_EXP_BUS_CS4_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(4)
+#define IXP425_EXP_BUS_CS4_VBASE	IXP425_EXP_BUS_CSx_VBASE(4)
+#define IXP425_EXP_BUS_CS4_SIZE		0x1000
 
 /* NB: not mapped (yet) */
 #define	IXP425_EXP_BUS_CS0_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(0)
-#define	IXP425_EXP_BUS_CS2_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(2)
-#define	IXP425_EXP_BUS_CS3_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(3)
-#define	IXP425_EXP_BUS_CS4_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(4)
 #define	IXP425_EXP_BUS_CS5_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(5)
 #define	IXP425_EXP_BUS_CS6_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(6)
 #define	IXP425_EXP_BUS_CS7_HWBASE	IXP425_EXP_BUS_CSx_HWBASE(7)

==== //depot/projects/linuxolator/src/sys/boot/arm/at91/bootspi/loader_prompt.c#3 (text+ko) ====

@@ -19,7 +19,7 @@
  * only.
  * END_BLOCK
  *
- * $FreeBSD: src/sys/boot/arm/at91/bootspi/loader_prompt.c,v 1.3 2006/10/21 22:51:21 imp Exp $
+ * $FreeBSD: src/sys/boot/arm/at91/bootspi/loader_prompt.c,v 1.4 2007/03/15 03:31:48 imp Exp $
  *****************************************************************************/
 
 #include "at91rm9200_lowlevel.h"
@@ -43,8 +43,6 @@
 static char	*argv[MAX_COMMAND_PARAMS];
 
 #define FLASH_OFFSET (0 * FLASH_PAGE_SIZE)
-#define FPGA_OFFSET  (15 * FLASH_PAGE_SIZE)
-#define FPGA_LEN     (212608)
 #define KERNEL_OFFSET (220 * FLASH_PAGE_SIZE)
 #define KERNEL_LEN (6 * 1024 * FLASH_PAGE_SIZE)
 static const char *backspaceString = "\010 \010";
@@ -61,41 +59,10 @@
 	{COMMAND_LOAD_SPI_KERNEL, "k"},
 	{COMMAND_REPLACE_KERNEL_VIA_XMODEM, "K"},
 	{COMMAND_REPLACE_FLASH_VIA_XMODEM, "I"},
-	{COMMAND_REPLACE_FPGA_VIA_XMODEM, "F"},
 	{COMMAND_REPLACE_ID_EEPROM, "E"},
 	{COMMAND_FINAL_FLAG, 0}
 };
 
-#ifdef TSC_FPGA
-#include "fpga.h"
-
-const struct fpga main_fpga = 
-{
-    AT91C_BASE_PIOB, AT91C_PIO_PB0,
-    AT91C_BASE_PIOC, AT91C_PIO_PC11,
-    AT91C_BASE_PIOB, AT91C_PIO_PB2,
-    AT91C_BASE_PIOC, AT91C_PIO_PC12
-};
-
-void
-fpga_load(void)
-{
-	int len, off, i, offset;
-	char *addr = (char *)SDRAM_BASE + (1 << 20); /* Load to base + 1MB */
-
-	len = FPGA_LEN;
-	offset = FPGA_OFFSET;
-	for (i = 0; i < len; i+= FLASH_PAGE_SIZE) {
-		off = i + offset;
-		SPI_ReadFlash(off, addr + i, FLASH_PAGE_SIZE);
-	}
-	fpga_init(&main_fpga);
-	fpga_clear(&main_fpga);
-	fpga_write_bytes(&main_fpga, addr, len);
-	fpga_done(&main_fpga);
-}
-#endif
-
 /*
  * .KB_C_FN_DEFINITION_START
  * unsigned BuildIP(void)
@@ -310,10 +277,6 @@
 		printf("Updating KERNEL image\n");
 		UpdateFlash(KERNEL_OFFSET);
 		break;
-	case COMMAND_REPLACE_FPGA_VIA_XMODEM:
-		printf("Updating FPGA image\n");
-		UpdateFlash(FPGA_OFFSET);
-		break;
 	case COMMAND_REPLACE_FLASH_VIA_XMODEM: 
 		printf("Updating FLASH image\n");
 		UpdateFlash(FLASH_OFFSET);

==== //depot/projects/linuxolator/src/sys/boot/arm/at91/libat91/Makefile#4 (text) ====

@@ -1,10 +1,10 @@
-#  $FreeBSD: src/sys/boot/arm/at91/libat91/Makefile,v 1.7 2006/11/09 20:32:36 imp Exp $
+#  $FreeBSD: src/sys/boot/arm/at91/libat91/Makefile,v 1.8 2007/03/15 03:31:49 imp Exp $
 
 .include "${.CURDIR}/../Makefile.inc"
 
 LIB=		at91
 INTERNALLIB=
-SRCS=at91rm9200_lowlevel.c delay.c eeprom.c emac.c emac_init.c fpga.c getc.c \
+SRCS=at91rm9200_lowlevel.c delay.c eeprom.c emac.c emac_init.c getc.c \
 	putchar.c printf.c reset.c spi_flash.c xmodem.c \
 	sd-card.c strcvt.c strlen.c strcmp.c memcpy.c strcpy.c \
 	memset.c memcmp.c

==== //depot/projects/linuxolator/src/sys/boot/pc98/boot0.5/boot.s#2 (text+ko) ====

@@ -25,7 +25,7 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #
-# $FreeBSD: src/sys/boot/pc98/boot0.5/boot.s,v 1.2 2000/08/03 13:01:45 kato Exp $
+# $FreeBSD: src/sys/boot/pc98/boot0.5/boot.s,v 1.3 2007/03/17 05:30:03 kato Exp $
 #
 
 	.code16
@@ -60,7 +60,7 @@
 	movw	parttable(%si), %ax
 	movw	%ax, b_cylinder
 
-	# Step 2: Calculate egment address of bootstrap routine
+	# Step 2: Calculate the segment address of the bootstrap routine
 	movw	$0x1d00, %ax
 	movw	b_secsize, %cx
 	shrw	%cx

==== //depot/projects/linuxolator/src/sys/boot/pc98/boot0.5/boot0.5.s#2 (text+ko) ====

@@ -25,7 +25,7 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #
-# $FreeBSD: src/sys/boot/pc98/boot0.5/boot0.5.s,v 1.2 2000/08/06 14:35:37 kato Exp $
+# $FreeBSD: src/sys/boot/pc98/boot0.5/boot0.5.s,v 1.3 2007/03/17 05:30:03 kato Exp $
 #
 	.global	main
 	.code16
@@ -60,7 +60,7 @@
 	jmp	exit			# No hard drives
 
 drives_found:
-	# Setup sector size depended parameters
+	# Setup sector size dependent parameters
 	movw	%si, %cx		# %cx = number of devices
 setup_loop:
 	movw	%cx, %di
@@ -254,16 +254,9 @@
 	ret
 
 	.data
-	.global	curdevice, daua, secsize, defflagoff, defpartoff
-	.global	maxpart, partoff, ndevice
+	.global	curdevice, ndevice
 ndevice:	.word	0		# number of device
 curdevice:	.word	0		# current device
-daua:		.space	12		# DA/DU list
-secsize:	.space	12 * 2		# Sector soize
-defflagoff:	.space	12 * 2
-defpartoff:	.space	12 * 2
-maxpart:	.space	12 * 2
-partoff:	.space	12 * 2
 
 	.global	ishireso
 ishireso:	.byte	0
@@ -288,3 +281,13 @@
 msg_usage10:	.asciz	">>: selected device/slice"
 msg_usage11:	.asciz	"*: default slice to boot"
 msg_usage12:	.asciz	"!: unbootable slice"
+
+	.bss
+	.global	daua, secsize, defflagoff, defpartoff
+	.global	maxpart, partoff
+daua:		.space	12		# DA/DU list
+secsize:	.space	12 * 2		# Sector soize
+defflagoff:	.space	12 * 2
+defpartoff:	.space	12 * 2
+maxpart:	.space	12 * 2
+partoff:	.space	12 * 2

==== //depot/projects/linuxolator/src/sys/boot/pc98/boot0.5/disk.s#2 (text+ko) ====

@@ -25,7 +25,7 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #
-# $FreeBSD: src/sys/boot/pc98/boot0.5/disk.s,v 1.4 2000/08/31 10:24:06 kato Exp $
+# $FreeBSD: src/sys/boot/pc98/boot0.5/disk.s,v 1.5 2007/03/17 05:30:03 kato Exp $
 #
 
 	.code16
@@ -284,11 +284,13 @@
 	ret
 
 	.data
-	.global	partnum, parttable, defpartflag, defpartnum, npartition
-partnum:	.space	32		# Index of parttable
-parttable:	.space	1024		# Copy of valid partition table
+	.global	defpartflag, defpartnum, npartition
 defpartflag:	.byte	0
 defpartnum:	.byte	0
 npartition:	.word	0		# number of partitions
+
 	.bss
-iplbuf:		.space	0x400
+	.global	partnum, parttable
+iplbuf:		.space	0x400		# Read buffer for IPL
+partnum:	.space	32		# Index of parttable
+parttable:	.space	1024		# Copy of valid partition table

==== //depot/projects/linuxolator/src/sys/cam/cam_xpt.c#8 (text+ko) ====

@@ -28,7 +28,7 @@
  */

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



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