PERFORCE change 109891 for review
John Baldwin
jhb at FreeBSD.org
Mon Nov 13 22:09:27 UTC 2006
http://perforce.freebsd.org/chv.cgi?CH=109891
Change 109891 by jhb at jhb_mutex on 2006/11/13 22:08:01
IFC @109890.
Affected files ...
.. //depot/projects/smpng/sys/Makefile#14 integrate
.. //depot/projects/smpng/sys/amd64/amd64/db_disasm.c#5 integrate
.. //depot/projects/smpng/sys/amd64/amd64/pmap.c#69 integrate
.. //depot/projects/smpng/sys/amd64/include/pmap.h#25 integrate
.. //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#18 integrate
.. //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#18 integrate
.. //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#18 integrate
.. //depot/projects/smpng/sys/arm/arm/pmap.c#36 integrate
.. //depot/projects/smpng/sys/arm/at91/kb920x_machdep.c#12 integrate
.. //depot/projects/smpng/sys/arm/include/pmap.h#20 integrate
.. //depot/projects/smpng/sys/arm/sa11x0/assabet_machdep.c#13 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/Makefile#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/Makefile.inc#4 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/boot0iic/main.c#3 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/boot2/Makefile#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/boot2/board.h#1 branch
.. //depot/projects/smpng/sys/boot/arm/at91/boot2/boot2.c#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/boot2/kb920x_board.c#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/bootiic/Makefile#3 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/bootspi/Makefile#4 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/Makefile#5 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#3 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.h#3 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/emac.c#5 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/emac.h#5 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/emac_init.c#3 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/mci_device.h#3 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/memcmp.c#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/memcpy.c#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/memset.c#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/sd-card.c#3 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/strcmp.c#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/strcpy.c#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/strcvt.c#2 integrate
.. //depot/projects/smpng/sys/boot/arm/at91/libat91/strlen.c#2 integrate
.. //depot/projects/smpng/sys/boot/pc98/btx/btx/btx.S#6 integrate
.. //depot/projects/smpng/sys/boot/pc98/libpc98/biossmap.c#1 branch
.. //depot/projects/smpng/sys/coda/coda_vnops.c#27 integrate
.. //depot/projects/smpng/sys/coda/coda_vnops.h#11 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_proto.h#36 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscall.h#36 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_syscalls.c#36 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_sysent.c#36 integrate
.. //depot/projects/smpng/sys/compat/linux/linux_misc.c#74 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4_proto.h#19 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4_syscall.h#18 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4_syscallnames.c#18 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4_sysent.c#18 integrate
.. //depot/projects/smpng/sys/conf/NOTES#130 integrate
.. //depot/projects/smpng/sys/conf/files#190 integrate
.. //depot/projects/smpng/sys/conf/files.arm#10 integrate
.. //depot/projects/smpng/sys/conf/files.sun4v#2 integrate
.. //depot/projects/smpng/sys/conf/options#129 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#36 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_pcib_acpi.c#22 integrate
.. //depot/projects/smpng/sys/dev/acpica/acpi_pcib_pci.c#12 integrate
.. //depot/projects/smpng/sys/dev/aha/ahareg.h#7 integrate
.. //depot/projects/smpng/sys/dev/em/if_em.c#76 integrate
.. //depot/projects/smpng/sys/dev/em/if_em.h#37 integrate
.. //depot/projects/smpng/sys/dev/pci/pci.c#76 integrate
.. //depot/projects/smpng/sys/dev/pci/pci_if.m#7 integrate
.. //depot/projects/smpng/sys/dev/pci/pci_pci.c#30 integrate
.. //depot/projects/smpng/sys/dev/pci/pci_private.h#18 integrate
.. //depot/projects/smpng/sys/dev/pci/pcib_if.m#5 integrate
.. //depot/projects/smpng/sys/dev/pci/pcib_private.h#8 integrate
.. //depot/projects/smpng/sys/dev/pci/pcireg.h#16 integrate
.. //depot/projects/smpng/sys/dev/pci/pcivar.h#21 integrate
.. //depot/projects/smpng/sys/dev/usb/usb_quirks.c#21 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdevs#96 integrate
.. //depot/projects/smpng/sys/fs/nullfs/null_vnops.c#28 integrate
.. //depot/projects/smpng/sys/i386/i386/pmap.c#109 integrate
.. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_proto.h#18 integrate
.. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_xenix.h#13 integrate
.. //depot/projects/smpng/sys/i386/include/pmap.h#32 integrate
.. //depot/projects/smpng/sys/i386/linux/linux_proto.h#37 integrate
.. //depot/projects/smpng/sys/i386/pci/pci_pir.c#11 integrate
.. //depot/projects/smpng/sys/ia64/ia64/pmap.c#82 integrate
.. //depot/projects/smpng/sys/ia64/include/pmap.h#25 integrate
.. //depot/projects/smpng/sys/kern/Make.tags.inc#5 integrate
.. //depot/projects/smpng/sys/kern/init_main.c#63 integrate
.. //depot/projects/smpng/sys/kern/init_sysent.c#79 integrate
.. //depot/projects/smpng/sys/kern/kern_idle.c#27 integrate
.. //depot/projects/smpng/sys/kern/kern_lock.c#57 integrate
.. //depot/projects/smpng/sys/kern/kern_mutex.c#137 integrate
.. //depot/projects/smpng/sys/kern/kern_rwlock.c#9 integrate
.. //depot/projects/smpng/sys/kern/kern_sig.c#128 integrate
.. //depot/projects/smpng/sys/kern/kern_sx.c#39 integrate
.. //depot/projects/smpng/sys/kern/kern_thr.c#39 integrate
.. //depot/projects/smpng/sys/kern/kern_time.c#48 integrate
.. //depot/projects/smpng/sys/kern/ksched.c#1 branch
.. //depot/projects/smpng/sys/kern/makesyscalls.sh#23 integrate
.. //depot/projects/smpng/sys/kern/p1003_1b.c#1 branch
.. //depot/projects/smpng/sys/kern/posix4_mib.c#1 branch
.. //depot/projects/smpng/sys/kern/sched_4bsd.c#62 integrate
.. //depot/projects/smpng/sys/kern/subr_lock.c#4 integrate
.. //depot/projects/smpng/sys/kern/subr_witness.c#156 integrate
.. //depot/projects/smpng/sys/kern/syscalls.c#79 integrate
.. //depot/projects/smpng/sys/kern/systrace_args.c#6 integrate
.. //depot/projects/smpng/sys/kern/uipc_mqueue.c#10 integrate
.. //depot/projects/smpng/sys/kern/uipc_sem.c#22 integrate
.. //depot/projects/smpng/sys/kern/uipc_syscalls.c#96 integrate
.. //depot/projects/smpng/sys/kern/vfs_aio.c#76 integrate
.. //depot/projects/smpng/sys/kern/vfs_default.c#48 integrate
.. //depot/projects/smpng/sys/kern/vfs_subr.c#136 integrate
.. //depot/projects/smpng/sys/kern/vfs_vnops.c#77 integrate
.. //depot/projects/smpng/sys/kern/vnode_if.src#29 integrate
.. //depot/projects/smpng/sys/modules/Makefile#129 integrate
.. //depot/projects/smpng/sys/modules/acpi/Makefile#30 integrate
.. //depot/projects/smpng/sys/modules/if_ppp/Makefile#9 integrate
.. //depot/projects/smpng/sys/net/bridgestp.c#15 integrate
.. //depot/projects/smpng/sys/net/bridgestp.h#5 integrate
.. //depot/projects/smpng/sys/net/if_bridge.c#40 integrate
.. //depot/projects/smpng/sys/net/if_bridgevar.h#14 integrate
.. //depot/projects/smpng/sys/net/if_ppp.c#44 integrate
.. //depot/projects/smpng/sys/net/if_pppvar.h#11 integrate
.. //depot/projects/smpng/sys/netinet/ip_fw2.c#80 integrate
.. //depot/projects/smpng/sys/netinet/sctp_constants.h#2 integrate
.. //depot/projects/smpng/sys/netinet/sctp_indata.c#2 integrate
.. //depot/projects/smpng/sys/netinet/sctp_input.c#2 integrate
.. //depot/projects/smpng/sys/netinet/sctp_output.c#2 integrate
.. //depot/projects/smpng/sys/netinet/sctp_uio.h#2 integrate
.. //depot/projects/smpng/sys/netinet/sctp_usrreq.c#2 integrate
.. //depot/projects/smpng/sys/netinet/sctputil.c#2 integrate
.. //depot/projects/smpng/sys/netinet/sctputil.h#2 integrate
.. //depot/projects/smpng/sys/pc98/pc98/machdep.c#18 integrate
.. //depot/projects/smpng/sys/posix4/_semaphore.h#6 delete
.. //depot/projects/smpng/sys/posix4/ksched.c#21 delete
.. //depot/projects/smpng/sys/posix4/ksem.h#2 delete
.. //depot/projects/smpng/sys/posix4/p1003_1b.c#16 delete
.. //depot/projects/smpng/sys/posix4/posix4.h#8 delete
.. //depot/projects/smpng/sys/posix4/posix4_mib.c#7 delete
.. //depot/projects/smpng/sys/posix4/sched.h#4 delete
.. //depot/projects/smpng/sys/posix4/semaphore.h#7 delete
.. //depot/projects/smpng/sys/powerpc/powerpc/mmu_oea.c#8 integrate
.. //depot/projects/smpng/sys/powerpc/powerpc/pmap_dispatch.c#7 integrate
.. //depot/projects/smpng/sys/security/mac/mac_posix_sem.c#4 integrate
.. //depot/projects/smpng/sys/security/mac_biba/mac_biba.c#42 integrate
.. //depot/projects/smpng/sys/security/mac_mls/mac_mls.c#37 integrate
.. //depot/projects/smpng/sys/security/mac_stub/mac_stub.c#18 integrate
.. //depot/projects/smpng/sys/security/mac_test/mac_test.c#34 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/pmap.c#69 integrate
.. //depot/projects/smpng/sys/sun4v/conf/GENERIC#2 integrate
.. //depot/projects/smpng/sys/sun4v/include/cpufunc.h#2 integrate
.. //depot/projects/smpng/sys/sun4v/include/pmap.h#2 integrate
.. //depot/projects/smpng/sys/sun4v/sun4v/hcall.S#3 integrate
.. //depot/projects/smpng/sys/sun4v/sun4v/interrupt.S#2 integrate
.. //depot/projects/smpng/sys/sun4v/sun4v/intr_machdep.c#2 integrate
.. //depot/projects/smpng/sys/sun4v/sun4v/pmap.c#4 integrate
.. //depot/projects/smpng/sys/sun4v/sun4v/rtc.c#2 integrate
.. //depot/projects/smpng/sys/sun4v/sun4v/support.S#3 integrate
.. //depot/projects/smpng/sys/sun4v/sun4v/trap.c#4 integrate
.. //depot/projects/smpng/sys/sys/_lock.h#14 integrate
.. //depot/projects/smpng/sys/sys/_mutex.h#16 integrate
.. //depot/projects/smpng/sys/sys/_semaphore.h#1 branch
.. //depot/projects/smpng/sys/sys/ksem.h#1 branch
.. //depot/projects/smpng/sys/sys/lock.h#40 integrate
.. //depot/projects/smpng/sys/sys/lock_profile.h#1 branch
.. //depot/projects/smpng/sys/sys/lockmgr.h#19 integrate
.. //depot/projects/smpng/sys/sys/mutex.h#66 integrate
.. //depot/projects/smpng/sys/sys/param.h#106 integrate
.. //depot/projects/smpng/sys/sys/posix4.h#1 branch
.. //depot/projects/smpng/sys/sys/proc.h#173 integrate
.. //depot/projects/smpng/sys/sys/sched.h#24 integrate
.. //depot/projects/smpng/sys/sys/semaphore.h#1 branch
.. //depot/projects/smpng/sys/sys/syscall.h#78 integrate
.. //depot/projects/smpng/sys/sys/syscall.mk#78 integrate
.. //depot/projects/smpng/sys/sys/sysproto.h#82 integrate
.. //depot/projects/smpng/sys/sys/thr.h#11 integrate
.. //depot/projects/smpng/sys/sys/umtx.h#18 integrate
.. //depot/projects/smpng/sys/sys/vnode.h#75 integrate
.. //depot/projects/smpng/sys/ufs/ffs/ffs_vnops.c#48 integrate
.. //depot/projects/smpng/sys/vm/vm_fault.c#63 integrate
.. //depot/projects/smpng/sys/vm/vm_kern.c#34 integrate
Differences ...
==== //depot/projects/smpng/sys/Makefile#14 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/Makefile,v 1.38 2006/08/10 06:29:43 imp Exp $
+# $FreeBSD: src/sys/Makefile,v 1.39 2006/11/11 16:26:55 trhodes Exp $
.include <bsd.own.mk>
@@ -11,7 +11,7 @@
CSCOPEDIRS= coda compat conf contrib crypto ddb dev fs geom gnu i4b isa \
isofs kern libkern modules net net80211 netatalk netatm \
netgraph netinet netinet6 netipx netkey netnatm netncp \
- netsmb nfs nfsclient nfs4client rpc pccard pci posix4 sys \
+ netsmb nfs nfsclient nfs4client rpc pccard pci sys \
ufs vm ${ARCHDIR}
ARCHDIR ?= ${MACHINE}
==== //depot/projects/smpng/sys/amd64/amd64/db_disasm.c#5 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_disasm.c,v 1.30 2005/03/30 22:57:41 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/db_disasm.c,v 1.31 2006/11/13 21:14:54 jhb Exp $");
/*
* Instruction disassembler.
@@ -84,6 +84,7 @@
#define Ib 21 /* byte immediate, unsigned */
#define Ibs 22 /* byte immediate, signed */
#define Iw 23 /* word immediate, unsigned */
+#define Ilq 24 /* long/quad immediate, unsigned */
#define O 25 /* direct address */
#define Db 26 /* byte displacement from EIP */
#define Dl 27 /* long displacement from EIP */
@@ -351,7 +352,6 @@
0,
0,
0,
- 0,
db_inst_0f8x,
db_inst_0f9x,
db_inst_0fax,
@@ -752,14 +752,14 @@
/*b6*/ { "mov", FALSE, BYTE, op2(I, Ri), 0 },
/*b7*/ { "mov", FALSE, BYTE, op2(I, Ri), 0 },
-/*b8*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*b9*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*ba*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*bb*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*bc*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*bd*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*be*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
-/*bf*/ { "mov", FALSE, LONG, op2(I, Ri), 0 },
+/*b8*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*b9*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*ba*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*bb*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*bc*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*bd*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*be*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
+/*bf*/ { "mov", FALSE, LONG, op2(Ilq, Ri), 0 },
/*c0*/ { "", TRUE, BYTE, op2(Ib, E), db_Grp2 },
/*c1*/ { "", TRUE, LONG, op2(Ib, E), db_Grp2 },
@@ -854,17 +854,6 @@
int ss;
};
-static const char * const db_index_reg_16[8] = {
- "%bx,%si",
- "%bx,%di",
- "%bp,%si",
- "%bp,%di",
- "%si",
- "%di",
- "%bp",
- "%bx"
-};
-
static const char * const db_reg[2][4][16] = {
{{"%al", "%cl", "%dl", "%bl", "%ah", "%ch", "%dh", "%bh",
@@ -927,7 +916,7 @@
int regmodrm;
struct i_addr * addrp; /* out */
{
- int mod, rm, sib, index, disp;
+ int mod, rm, sib, index, disp, size, have_sib;
mod = f_mod(rex, regmodrm);
rm = f_rm(rex, regmodrm);
@@ -940,68 +929,49 @@
addrp->is_reg = FALSE;
addrp->index = 0;
- if (short_addr) {
- addrp->index = 0;
- addrp->ss = 0;
- switch (mod) {
- case 0:
- if (rm == 6) {
- get_value_inc(disp, loc, 2, FALSE);
- addrp->disp = disp;
- addrp->base = 0;
- }
- else {
- addrp->disp = 0;
- addrp->base = db_index_reg_16[rm];
- }
- break;
- case 1:
- get_value_inc(disp, loc, 1, TRUE);
- disp &= 0xFFFF;
- addrp->disp = disp;
- addrp->base = db_index_reg_16[rm];
- break;
- case 2:
- get_value_inc(disp, loc, 2, FALSE);
- addrp->disp = disp;
- addrp->base = db_index_reg_16[rm];
- break;
- }
- }
- else {
- if (mod != 3 && rm == 4) {
- get_value_inc(sib, loc, 1, FALSE);
- rm = sib_base(rex, sib);
- index = sib_index(rex, sib);
- if (index != 4)
- addrp->index = db_reg[1][QUAD][index];
- addrp->ss = sib_ss(rex, sib);
- }
+ if (short_addr)
+ size = LONG;
+ else
+ size = QUAD;
+
+ if ((rm & 0x7) == 4) {
+ get_value_inc(sib, loc, 1, FALSE);
+ rm = sib_base(rex, sib);
+ index = sib_index(rex, sib);
+ if (index != 4)
+ addrp->index = db_reg[1][size][index];
+ addrp->ss = sib_ss(rex, sib);
+ have_sib = 1;
+ } else
+ have_sib = 0;
- switch (mod) {
- case 0:
- if (rm == 5) {
- get_value_inc(addrp->disp, loc, 4, FALSE);
+ switch (mod) {
+ case 0:
+ if (rm == 5) {
+ get_value_inc(addrp->disp, loc, 4, FALSE);
+ if (have_sib)
addrp->base = 0;
- }
- else {
- addrp->disp = 0;
- addrp->base = db_reg[1][QUAD][rm];
- }
- break;
+ else if (short_addr)
+ addrp->base = "%eip";
+ else
+ addrp->base = "%rip";
+ } else {
+ addrp->disp = 0;
+ addrp->base = db_reg[1][size][rm];
+ }
+ break;
- case 1:
- get_value_inc(disp, loc, 1, TRUE);
- addrp->disp = disp;
- addrp->base = db_reg[1][QUAD][rm];
- break;
+ case 1:
+ get_value_inc(disp, loc, 1, TRUE);
+ addrp->disp = disp;
+ addrp->base = db_reg[1][size][rm];
+ break;
- case 2:
- get_value_inc(disp, loc, 4, FALSE);
- addrp->disp = disp;
- addrp->base = db_reg[1][QUAD][rm];
- break;
- }
+ case 2:
+ get_value_inc(disp, loc, 4, FALSE);
+ addrp->disp = disp;
+ addrp->base = db_reg[1][size][rm];
+ break;
}
return (loc);
}
@@ -1022,7 +992,8 @@
db_printf("%s:", seg);
}
- db_printsym((db_addr_t)addrp->disp, DB_STGY_ANY);
+ if (addrp->disp != 0 || (addrp->base == 0 && addrp->index == 0))
+ db_printsym((db_addr_t)addrp->disp, DB_STGY_ANY);
if (addrp->base != 0 || addrp->index != 0) {
db_printf("(");
if (addrp->base)
@@ -1154,6 +1125,7 @@
int prefix;
int imm;
int imm2;
+ long imm64;
int len;
struct i_addr address;
@@ -1426,6 +1398,12 @@
db_printf("$%#r", imm);
break;
+ case Ilq:
+ len = db_lengths[rex & REX_W ? QUAD : LONG];
+ get_value_inc(imm64, loc, len, FALSE);
+ db_printf("$%#lr", imm64);
+ break;
+
case O:
len = (short_addr ? 2 : 4);
get_value_inc(displ, loc, len, FALSE);
==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#69 (text+ko) ====
@@ -77,7 +77,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.572 2006/10/22 04:18:01 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.573 2006/11/12 21:48:32 alc Exp $");
/*
* Manages physical address maps.
@@ -2357,8 +2357,10 @@
* Now validate mapping with desired protection/wiring.
*/
newpte = (pt_entry_t)(pa | PG_V);
- if ((prot & VM_PROT_WRITE) != 0)
+ if ((prot & VM_PROT_WRITE) != 0) {
newpte |= PG_RW;
+ vm_page_flag_set(m, PG_WRITEABLE);
+ }
if ((prot & VM_PROT_EXECUTE) == 0)
newpte |= pg_nx;
if (wired)
==== //depot/projects/smpng/sys/amd64/include/pmap.h#25 (text+ko) ====
@@ -39,7 +39,7 @@
*
* from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90
* from: @(#)pmap.h 7.4 (Berkeley) 5/12/91
- * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.134 2006/08/11 19:22:56 jhb Exp $
+ * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.136 2006/11/13 20:33:54 ru Exp $
*/
#ifndef _MACHINE_PMAP_H_
@@ -101,9 +101,10 @@
((unsigned long)(l2) << PDRSHIFT) | \
((unsigned long)(l1) << PAGE_SHIFT))
-/* Initial number of kernel page tables */
+/* Initial number of kernel page tables. */
#ifndef NKPT
-#define NKPT 240 /* Enough for 16GB (2MB page tables) */
+/* 240 page tables needed to map 16G (120B "struct vm_page", 2M page tables). */
+#define NKPT 240
#endif
#define NKPML4E 1 /* number of kernel PML4 slots */
@@ -262,7 +263,7 @@
/*
* For each vm_page_t, there is a list of all currently valid virtual
- * mappings of that page. An entry is a pv_entry_t, the list is pv_table.
+ * mappings of that page. An entry is a pv_entry_t, the list is pv_list.
*/
typedef struct pv_entry {
vm_offset_t pv_va; /* virtual address for mapping */
==== //depot/projects/smpng/sys/amd64/linux32/linux32_proto.h#18 (text+ko) ====
@@ -2,7 +2,7 @@
* System call prototypes.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.25 2006/10/29 14:12:44 netchild Exp $
+ * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.26 2006/11/11 21:49:07 ru Exp $
* created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.23 2006/10/29 14:02:38 netchild Exp
*/
@@ -11,7 +11,7 @@
#include <sys/signal.h>
#include <sys/acl.h>
-#include <posix4/_semaphore.h>
+#include <sys/_semaphore.h>
#include <sys/ucontext.h>
#include <bsm/audit_kevents.h>
==== //depot/projects/smpng/sys/amd64/linux32/linux32_syscall.h#18 (text+ko) ====
@@ -2,7 +2,7 @@
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.25 2006/10/29 14:12:44 netchild Exp $
+ * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.26 2006/11/11 21:49:07 ru Exp $
* created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.23 2006/10/29 14:02:38 netchild Exp
*/
==== //depot/projects/smpng/sys/amd64/linux32/linux32_sysent.c#18 (text+ko) ====
@@ -2,7 +2,7 @@
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.25 2006/10/29 14:12:44 netchild Exp $
+ * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.26 2006/11/11 21:49:07 ru Exp $
* created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.23 2006/10/29 14:02:38 netchild Exp
*/
==== //depot/projects/smpng/sys/arm/arm/pmap.c#36 (text+ko) ====
@@ -147,7 +147,7 @@
#include "opt_vm.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.71 2006/11/08 06:31:28 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.73 2006/11/12 21:48:32 alc Exp $");
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/kernel.h>
@@ -218,7 +218,6 @@
static MALLOC_DEFINE(M_VMPMAP, "pmap", "PMAP L1");
-vm_offset_t avail_end; /* PA of last available physical page */
vm_offset_t virtual_avail; /* VA of first avail page (after kernel bss) */
vm_offset_t virtual_end; /* VA of last avail page (end of kernel AS) */
vm_offset_t pmap_curmaxkvaddr;
@@ -3397,8 +3396,11 @@
npte |= L2_TYPE_INV;
}
- if (prot & VM_PROT_WRITE)
+ if (prot & VM_PROT_WRITE) {
npte |= L2_S_PROT_W;
+ if (m != NULL)
+ vm_page_flag_set(m, PG_WRITEABLE);
+ }
npte |= pte_l2_s_cache_mode;
if (m && m == opg) {
/*
==== //depot/projects/smpng/sys/arm/at91/kb920x_machdep.c#12 (text) ====
@@ -48,7 +48,7 @@
#include "opt_at91.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.18 2006/10/26 21:42:17 jb Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/kb920x_machdep.c,v 1.19 2006/11/11 20:57:52 alc Exp $");
#define _ARM32_BUS_DMA_PRIVATE
#include <sys/param.h>
@@ -129,7 +129,6 @@
vm_paddr_t phys_avail[10];
vm_paddr_t dump_avail[4];
vm_offset_t physical_pages;
-vm_offset_t clean_sva, clean_eva;
struct pv_addr systempage;
struct pv_addr msgbufpv;
@@ -496,7 +495,6 @@
/* Do basic tuning, hz etc */
init_param1();
init_param2(physmem);
- avail_end = KERNPHYSADDR + memsize - 1;
kdb_init();
return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP -
sizeof(struct pcb)));
==== //depot/projects/smpng/sys/arm/include/pmap.h#20 (text+ko) ====
@@ -44,7 +44,7 @@
* from: @(#)pmap.h 7.4 (Berkeley) 5/12/91
* from: FreeBSD: src/sys/i386/include/pmap.h,v 1.70 2000/11/30
*
- * $FreeBSD: src/sys/arm/include/pmap.h,v 1.21 2006/11/07 22:36:56 cognet Exp $
+ * $FreeBSD: src/sys/arm/include/pmap.h,v 1.23 2006/11/13 06:26:56 ru Exp $
*/
#ifndef _MACHINE_PMAP_H_
@@ -170,7 +170,7 @@
/*
* For each vm_page_t, there is a list of all currently valid virtual
- * mappings of that page. An entry is a pv_entry_t, the list is pv_table.
+ * mappings of that page. An entry is a pv_entry_t, the list is pv_list.
*/
typedef struct pv_entry {
pmap_t pv_pmap; /* pmap where mapping lies */
@@ -213,9 +213,6 @@
return (ptep);
}
-extern vm_offset_t avail_end;
-extern vm_offset_t clean_eva;
-extern vm_offset_t clean_sva;
extern vm_offset_t phys_avail[];
extern vm_offset_t virtual_avail;
extern vm_offset_t virtual_end;
==== //depot/projects/smpng/sys/arm/sa11x0/assabet_machdep.c#13 (text+ko) ====
@@ -47,7 +47,7 @@
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/sa11x0/assabet_machdep.c,v 1.19 2006/10/26 21:42:17 jb Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/sa11x0/assabet_machdep.c,v 1.20 2006/11/11 20:57:52 alc Exp $");
#include "opt_md.h"
@@ -146,7 +146,6 @@
vm_paddr_t physical_end;
vm_paddr_t physical_freestart;
vm_offset_t physical_pages;
-vm_offset_t clean_sva, clean_eva;
struct pv_addr systempage;
struct pv_addr irqstack;
@@ -455,7 +454,6 @@
init_param1();
init_param2(physmem);
kdb_init();
- avail_end = 0xc0000000 + memsize - 1;
return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP -
sizeof(struct pcb)));
}
==== //depot/projects/smpng/sys/boot/arm/at91/Makefile#2 (text) ====
@@ -1,5 +1,5 @@
-# $FreeBSD: src/sys/boot/arm/at91/Makefile,v 1.2 2006/04/21 06:43:32 imp Exp $
+# $FreeBSD: src/sys/boot/arm/at91/Makefile,v 1.3 2006/11/09 20:45:21 imp Exp $
-SUBDIR= libat91 boot0 boot0iic boot0spi bootiic bootspi
+SUBDIR= libat91 boot0 boot0iic boot0spi boot2 bootiic bootspi
.include <bsd.subdir.mk>
==== //depot/projects/smpng/sys/boot/arm/at91/Makefile.inc#4 (text) ====
@@ -1,11 +1,14 @@
-# $FreeBSD: src/sys/boot/arm/at91/Makefile.inc,v 1.4 2006/10/21 22:51:20 imp Exp $
+# $FreeBSD: src/sys/boot/arm/at91/Makefile.inc,v 1.5 2006/11/09 19:58:14 imp Exp $
.if !target(__at91_boot_Makefile.inc__)
.PATH: ${.CURDIR}/../../../../libkern ${.CURDIR}/../../../../libkern/arm
__at91_boot_Makefile.inc__:
-CFLAGS=-O2 -mcpu=arm9 -ffreestanding \
+# tsc, kb920x are the supported flavors
+BOOT_FLAVOR=kb920x
+
+CFLAGS=-Os -mcpu=arm9 -ffreestanding \
-I${.CURDIR}/../libat91 \
-I${.CURDIR}/../../../.. \
-I${.CURDIR}/../../../../arm \
@@ -13,13 +16,12 @@
-Wall -Waggregate-return \
-Wnested-externs \
-Wpointer-arith -Wshadow -Wwrite-strings \
- -Werror
-# -Wmissing-prototypes
-# -Wmissing-declarations
+ -Werror \
+ -Wmissing-prototypes \
+ -Wmissing-declarations
# -Wstrict-prototypes
-#CFLAGS+=-DBOOT_TSC
-CFLAGS+=-DBOOT_KB9202
+CFLAGS+=-DBOOT_${BOOT_FLAVOR:U}
LIBAT91=${.OBJDIR}/../libat91/libat91.a
==== //depot/projects/smpng/sys/boot/arm/at91/boot0iic/main.c#3 (text) ====
@@ -21,7 +21,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/arm/at91/boot0iic/main.c,v 1.2 2006/08/16 23:14:52 imp Exp $
+ * $FreeBSD: src/sys/boot/arm/at91/boot0iic/main.c,v 1.3 2006/11/09 19:55:25 imp Exp $
*/
#include "at91rm9200.h"
@@ -36,8 +36,8 @@
while (xmodem_rx(addr) == -1)
continue;
InitEEPROM();
- printf("Writing EEPROM from 0x%x to addr 0\r\n", addr);
+ printf("Writing EEPROM from 0x%x to addr 0\n", addr);
WriteEEPROM(0, addr, 8192);
- printf("Write complete. Press reset\r\n");
+ printf("Write complete. Press reset\n");
return (1);
}
==== //depot/projects/smpng/sys/boot/arm/at91/boot2/Makefile#2 (text+ko) ====
@@ -1,16 +1,22 @@
-# $FreeBSD: src/sys/boot/arm/at91/boot2/Makefile,v 1.1 2006/10/20 09:12:05 imp Exp $
+# $FreeBSD: src/sys/boot/arm/at91/boot2/Makefile,v 1.2 2006/11/09 20:07:26 imp Exp $
-.PATH: ${.CURDIR}/../bootspi
+.PATH: ${.CURDIR}/../libat91
P=boot2
FILES=${P}
-SRCS=arm_init.S boot2.c kb920x_board.c ee.c
+SRCS=arm_init.S boot2.c ${BOOT_FLAVOR}_board.c
NO_MAN=
LDFLAGS=-e 0 -T ${.CURDIR}/../linker.cfg
OBJS+= ${SRCS:N*.h:R:S/$/.o/g}
.include <bsd.prog.mk>
+.if ${BOOT_FLAVOR} == "tsc"
+SRCS+=ee.c
+.endif
+.if ${BOOT_FLAVOR} == "kb920x"
+CFLAGS+=-DBOOT_IIC
+.endif
CFLAGS+= \
-I${.CURDIR}/../bootspi \
-I${.CURDIR}/../../../common \
==== //depot/projects/smpng/sys/boot/arm/at91/boot2/boot2.c#2 (text+ko) ====
@@ -14,7 +14,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/arm/at91/boot2/boot2.c,v 1.1 2006/10/20 09:12:05 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/arm/at91/boot2/boot2.c,v 1.2 2006/11/09 20:07:26 imp Exp $");
#include <sys/param.h>
#include <sys/disklabel.h>
@@ -30,6 +30,7 @@
#include "lib.h"
#include "sd-card.h"
#include "ee.h"
+#include "board.h"
#define RBX_ASKNAME 0x0 /* -a */
#define RBX_SINGLE 0x1 /* -s */
@@ -66,7 +67,7 @@
#define PATH_CONFIG "/boot.config"
//#define PATH_KERNEL "/boot/kernel/kernel"
-#define PATH_KERNEL "/kernel.gz.tramp"
+#define PATH_KERNEL "/boot/kernel/kernel.gz.tramp"
#define NOPT 5
@@ -141,9 +142,6 @@
}
}
-// Each board has to provide one of these.
-void board_init(void);
-
int
main(void)
{
==== //depot/projects/smpng/sys/boot/arm/at91/boot2/kb920x_board.c#2 (text+ko) ====
@@ -1,11 +1,36 @@
+/*-
+ * Copyright (c) 2006 M. Warner Losh. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/arm/at91/boot2/kb920x_board.c,v 1.1 2006/10/20 09:12:05 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/arm/at91/boot2/kb920x_board.c,v 1.3 2006/11/09 20:08:46 imp Exp $");
#include <sys/param.h>
#include "emac.h"
#include "lib.h"
-#include "ee.h"
+#include "board.h"
extern unsigned char mac[];
@@ -14,10 +39,10 @@
{
uint32_t sig;
sig = 0;
- EERead(12 * 1024, (uint8_t *)&sig, sizeof(sig));
+ ReadEEPROM(12 * 1024, (uint8_t *)&sig, sizeof(sig));
if (sig != 0xaa55aa55)
return;
- EERead(12 * 1024 + 4, mac, 6);
+ ReadEEPROM(12 * 1024 + 4, mac, 6);
printf("MAC %x:%x:%x:%x:%x:%x\n", mac[0],
mac[1], mac[2], mac[3], mac[4], mac[5]);
}
@@ -30,6 +55,6 @@
void
board_init(void)
{
- EEInit();
+ InitEEPROM();
MacFromEE();
}
==== //depot/projects/smpng/sys/boot/arm/at91/bootiic/Makefile#3 (text) ====
@@ -1,4 +1,6 @@
-# $FreeBSD: src/sys/boot/arm/at91/bootiic/Makefile,v 1.3 2006/08/10 19:55:52 imp Exp $
+# $FreeBSD: src/sys/boot/arm/at91/bootiic/Makefile,v 1.4 2006/11/09 20:23:51 imp Exp $
+
+.PATH: ${.CURDIR}/../libat91
P=bootiic
FILES=${P}
@@ -8,3 +10,5 @@
OBJS+= ${SRCS:N*.h:R:S/$/.o/g}
.include <bsd.prog.mk>
+
+CFLAGS += -DBOOT_IIC
==== //depot/projects/smpng/sys/boot/arm/at91/bootspi/Makefile#4 (text) ====
@@ -1,4 +1,6 @@
-# $FreeBSD: src/sys/boot/arm/at91/bootspi/Makefile,v 1.4 2006/10/21 22:51:21 imp Exp $
+# $FreeBSD: src/sys/boot/arm/at91/bootspi/Makefile,v 1.5 2006/11/09 20:45:22 imp Exp $
+
+.PATH: ${.CURDIR}/../libat91
P=bootspi
FILES=${P}
==== //depot/projects/smpng/sys/boot/arm/at91/libat91/Makefile#5 (text) ====
@@ -1,12 +1,12 @@
-# $FreeBSD: src/sys/boot/arm/at91/libat91/Makefile,v 1.6 2006/10/20 16:57:30 imp Exp $
+# $FreeBSD: src/sys/boot/arm/at91/libat91/Makefile,v 1.7 2006/11/09 20:32:36 imp Exp $
.include "${.CURDIR}/../Makefile.inc"
LIB= at91
INTERNALLIB=
-SRCS=at91rm9200_lowlevel.c delay.c eeprom.c emac.c emac_init.c getc.c \
+SRCS=at91rm9200_lowlevel.c delay.c eeprom.c emac.c emac_init.c fpga.c getc.c \
putchar.c printf.c reset.c spi_flash.c xmodem.c \
- sd-card.c mci_device.c strcvt.c strlen.c strcmp.c memcpy.c strcpy.c \
+ sd-card.c strcvt.c strlen.c strcmp.c memcpy.c strcpy.c \
memset.c memcmp.c
SRCS+=ashldi3.c divsi3.S
NO_MAN=
==== //depot/projects/smpng/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#3 (text) ====
@@ -24,7 +24,7 @@
* This software is derived from software provide by Kwikbyte who specifically
* disclaimed copyright on the code.
*
- * $FreeBSD: src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c,v 1.3 2006/10/20 09:12:05 imp Exp $
+ * $FreeBSD: src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c,v 1.4 2006/11/09 20:32:36 imp Exp $
*/
#include "at91rm9200.h"
@@ -53,7 +53,6 @@
register unsigned value;
volatile sdram_size_t *p = (sdram_size_t *)SDRAM_BASE;
-#if 0
#ifdef BOOT_TSC
// For the TSC board, we turn ON the one LED we have while
// early in boot.
@@ -61,6 +60,15 @@
AT91C_BASE_PIOC->PIO_OER = AT91C_PIO_PC10;
AT91C_BASE_PIOC->PIO_CODR = AT91C_PIO_PC10;
#endif
+
+#ifdef BOOT_KB920X
+ AT91C_BASE_PIOC->PIO_PER = AT91C_PIO_PC18 | AT91C_PIO_PC19 |
+ AT91C_PIO_PC20;
+ AT91C_BASE_PIOC->PIO_OER = AT91C_PIO_PC18 | AT91C_PIO_PC19 |
+ AT91C_PIO_PC20;
+ AT91C_BASE_PIOC->PIO_SODR = AT91C_PIO_PC18 | AT91C_PIO_PC19 |
+ AT91C_PIO_PC20;
+ AT91C_BASE_PIOC->PIO_CODR = AT91C_PIO_PC18;
#endif
// configure clocks
@@ -100,7 +108,7 @@
while (!(AT91C_BASE_PMC->PMC_SR & AT91C_PMC_MCKRDY))
continue;
-#ifdef BOOT_KB9202
+#ifdef BOOT_KB920X
// setup flash access (allow ample margin)
// 9 wait states, 1 setup, 1 hold, 1 float for 8-bit device
((AT91PS_SMC2)AT91C_BASE_SMC2)->SMC2_CSR[0] =
==== //depot/projects/smpng/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.h#3 (text) ====
@@ -21,7 +21,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/arm/at91/libat91/at91rm9200_lowlevel.h,v 1.2 2006/08/10 17:59:22 imp Exp $
+ * $FreeBSD: src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.h,v 1.3 2006/11/09 20:32:36 imp Exp $
*/
#ifndef _AT91RM9200_LOWLEVEL_H_
@@ -31,7 +31,7 @@
#define SDRAM_BASE 0x20000000
-#ifdef BOOT_KB9202
+#ifdef BOOT_KB920X
/* The following divisor sets PLLA frequency: e.g. 10/5 * 90 = 180MHz */
#define OSC_MAIN_FREQ_DIV 5 /* for 10MHz osc */
#define SDRAM_WIDTH AT91C_SDRC_DBW_16_BITS
==== //depot/projects/smpng/sys/boot/arm/at91/libat91/emac.c#5 (text) ====
@@ -19,7 +19,7 @@
* only.
* END_BLOCK
*
- * $FreeBSD: src/sys/boot/arm/at91/libat91/emac.c,v 1.4 2006/10/20 09:12:05 imp Exp $
+ * $FreeBSD: src/sys/boot/arm/at91/libat91/emac.c,v 1.5 2006/11/09 20:32:36 imp Exp $
******************************************************************************/
#include "at91rm9200.h"
@@ -384,7 +384,7 @@
unsigned sec;
int i;
#endif
-#ifdef BOOT_KB9202
+#ifdef BOOT_KB920X
stat2 = AT91F_MII_ReadPhy(pEmac, MII_STS2_REG);
if (!(stat2 & MII_STS2_LINK))
return ;
==== //depot/projects/smpng/sys/boot/arm/at91/libat91/emac.h#5 (text) ====
@@ -17,7 +17,7 @@
* only.
* END_BLOCK
*
- * $FreeBSD: src/sys/boot/arm/at91/libat91/emac.h,v 1.4 2006/10/20 09:12:05 imp Exp $
+ * $FreeBSD: src/sys/boot/arm/at91/libat91/emac.h,v 1.5 2006/11/09 20:32:36 imp Exp $
*****************************************************************************/
@@ -114,7 +114,7 @@
/* MII registers definition */
#define MII_STS_REG 0x01
#define MII_STS_LINK_STAT 0x04
-#ifdef BOOT_KB9202
+#ifdef BOOT_KB920X
#define MII_STS2_REG 0x11
#define MII_STS2_LINK 0x400
#define MII_STS2_100TX 0x4000
==== //depot/projects/smpng/sys/boot/arm/at91/libat91/emac_init.c#3 (text+ko) ====
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list