svn commit: r232699 - projects/bigbb/sys/boot/i386/boot2

Jung-uk Kim jkim at FreeBSD.org
Thu Mar 8 19:17:03 UTC 2012


Author: jkim
Date: Thu Mar  8 19:17:02 2012
New Revision: 232699
URL: http://svn.freebsd.org/changeset/base/232699

Log:
  Increase UFS2-only boot block size to 16KB (32 sectors).

Modified:
  projects/bigbb/sys/boot/i386/boot2/Makefile
  projects/bigbb/sys/boot/i386/boot2/boot1.S

Modified: projects/bigbb/sys/boot/i386/boot2/Makefile
==============================================================================
--- projects/bigbb/sys/boot/i386/boot2/Makefile	Thu Mar  8 18:36:51 2012	(r232698)
+++ projects/bigbb/sys/boot/i386/boot2/Makefile	Thu Mar  8 19:17:02 2012	(r232699)
@@ -2,7 +2,7 @@
 
 .include <bsd.own.mk>
 
-FILES=		boot${BOOT_SUFFIX} boot2${BOOT2_SUFFIX}
+FILES=		boot${BOOT_SUFFIX} boot1${BOOT2_SUFFIX} boot2${BOOT2_SUFFIX}
 
 SRCDIR=		${.CURDIR}/../boot2
 
@@ -23,9 +23,6 @@ ORG2=	0x2000
 BOOT2_UFS?=	UFS2_ONLY
 #BOOT2_UFS?=	UFS1_AND_UFS2
 
-.if ${BOOT2_UFS} != UFS1_ONLY
-FILES+=		boot1
-.endif
 .if ${BOOT2_UFS} == UFS1_ONLY
 BOOT_SUFFIX=	.ufs1
 BOOT2_SUFFIX=	ufs1
@@ -33,9 +30,18 @@ BOOT2_SUFFIX=	ufs1
 BOOT_SUFFIX=	.ufs2
 BOOT2_SUFFIX=	ufs2
 LINKS=		${BINDIR}/boot${BOOT_SUFFIX} ${BINDIR}/boot \
+		${BINDIR}/boot1${BOOT2_SUFFIX} ${BINDIR}/boot1 \
 		${BINDIR}/boot2${BOOT2_SUFFIX} ${BINDIR}/boot2
 .endif
 
+# Decide boot block size.
+.if ${BOOT2_UFS} == UFS2_ONLY
+BOOT_NSECT=	32
+.else
+BOOT_NSECT=	16
+.endif
+BOOT2_SIZE=	(${BOOT_NSECT}-1)*512
+
 CFLAGS=	-Os \
 	-fno-guess-branch-probability \
 	-fomit-frame-pointer \
@@ -46,6 +52,7 @@ CFLAGS=	-Os \
 	-DUSE_XREAD \
 	-D${BOOT2_UFS} \
 	-DFLAGS=${BOOT_BOOT1_FLAGS} \
+	-DNSECT=${BOOT_NSECT} \
 	-DSIOPRT=${BOOT_COMCONSOLE_PORT} \
 	-DSIOFMT=${B2SIOFMT} \
 	-DSIOSPD=${BOOT_COMCONSOLE_SPEED} \
@@ -62,26 +69,26 @@ LDFLAGS=-static -N --gc-sections
 # Pick up ../Makefile.inc early.
 .include <bsd.init.mk>
 
-CLEANFILES=	boot
+CLEANFILES=	boot${BOOT_SUFFIX}
 
-boot${BOOT_SUFFIX}: boot1 boot2${BOOT2_SUFFIX}
+boot${BOOT_SUFFIX}: boot1${BOOT2_SUFFIX} boot2${BOOT2_SUFFIX}
 	cat ${.ALLSRC} > ${.TARGET}
 
-CLEANFILES+=	boot1 boot1.out boot1.o
+CLEANFILES+=	boot1${BOOT2_SUFFIX} boot1.out boot1.o
 
-boot1: boot1.out
+boot1${BOOT2_SUFFIX}: boot1.out
 	objcopy -S -O binary boot1.out ${.TARGET}
 
 boot1.out: boot1.o
 	${LD} ${LDFLAGS} -e start -Ttext ${ORG1} -o ${.TARGET} boot1.o
 
-CLEANFILES+=	boot2 boot2.ld boot2.ldr boot2.bin boot2.out boot2.o \
-		boot2.s boot2.s.tmp boot2.h sio.o
+CLEANFILES+=	boot2${BOOT2_SUFFIX} boot2.ld boot2.ldr boot2.bin boot2.out \
+		boot2.o boot2.s boot2.s.tmp boot2.h sio.o
 
 boot2${BOOT2_SUFFIX}: boot2.ld
-	@set -- `ls -l boot2.ld`; x=$$((7680-$$5)); \
+	@set -- `ls -l boot2.ld`; x=$$((${BOOT2_SIZE}-$$5)); \
 	    echo "$$x bytes available"; test $$x -ge 0
-	dd if=boot2.ld of=${.TARGET} obs=7680 conv=osync
+	dd if=boot2.ld of=${.TARGET} obs=$$((${BOOT2_SIZE})) conv=osync
 
 boot2.ld: boot2.ldr boot2.bin ${BTXKERN}
 	btxld -v -E ${ORG2} -f bin -b ${BTXKERN} -l boot2.ldr \

Modified: projects/bigbb/sys/boot/i386/boot2/boot1.S
==============================================================================
--- projects/bigbb/sys/boot/i386/boot2/boot1.S	Thu Mar  8 18:36:51 2012	(r232698)
+++ projects/bigbb/sys/boot/i386/boot2/boot1.S	Thu Mar  8 19:17:02 2012	(r232699)
@@ -37,7 +37,6 @@
 		.set SIZ_PAG,0x1000		# Page size
 		.set SIZ_SEC,0x200		# Sector size
 
-		.set NSECT,0x10
 		.globl start
 		.globl xread
 		.code16


More information about the svn-src-projects mailing list