[uClinux-dev]linux-2.6.11.8-hsc0.patch.gz Cannot build successful for MMU-less ARM

Paul G. Allen pgallen at gmail.com
Fri Aug 5 17:57:24 EDT 2005


>from my notes on the very same thing (and my fix, as reported some
time ago), as well as the rest of the process I've gone through to
build a base kernel:

Untar uClinux
Untar 2.6.11-8 kernel in same dir.
Untar ARM 2.6 patch
Backup kernel and uClinux dirs.
patch kernel:
	patch -p0<[patchfile-name]

Copy or move the patched kernel tree to the uClinux-dist tree,
replacing 'linux-2.6.x' with the patched kernel
Update the GDB config file:
	cp /usr/local/Quake/uClinux-dist/linux-2.6.x/arch/arm/configs/GDB_ARMulator_defconfig
/usr/local/Quake/uClinux-dist/vendors/GDB/GDB_ARMulator_defconfig
	*** This step is unclear at this time as the documentation seems out
of date ***

[root at telgar uClinux-dist.org]# grep -rn short-load-bytes *
linux-2.0.x/arch/armnommu/Makefile:96:CFLAGS_PROC       += -mapcs-26
-mshort-load-bytes
linux-2.4.x/arch/arm/Makefile:77:CFLAGS_BOOT    :=$(apcs-y) $(arch-y)
$(tune-y) -mshort-load-bytes -msoft-float -Uarm
linux-2.4.x/arch/arm/Makefile:78:CFLAGS         +=$(apcs-y) $(arch-y)
$(tune-y) -mshort-load-bytes -msoft-float -Uarm
linux-2.4.x/arch/armnommu/Makefile:60:CFLAGS            += $(apcs-y)
$(arch-y) $(tune-y) -mshort-load-bytes -msoft-float
linux-2.6.x/arch/arm/Makefile:50:CFLAGS_BOOT    :=-mapcs-32 $(arch-y)
$(tune-y) -mshort-load-bytes -msoft-float -Wa,-mno-fpu -Uarm
linux-2.6.x/arch/arm/Makefile:51:CFLAGS         +=-mapcs-32 $(arch-y)
$(tune-y) -mshort-load-bytes -msoft-float -Wa,-mno-fpu -Uarm
linux-2.6.x/arch/arm26/Makefile:26:CFLAGS_BOOT  :=-mapcs-26 -mcpu=arm3
-mshort-load-bytes -msoft-float -Wa,-mno-fpu -Uarm
linux-2.6.x/arch/arm26/Makefile:27:CFLAGS               +=-mapcs-26
-mcpu=arm3 -mshort-load-bytes -msoft-float -Wa,-mno-fpu -Uarm
user/perl/epoc/config.sh:55:ccflags='-Wno-ctor-dtor-privacy
-mcpu-arm710 -mapcs-32 -mshort-load-bytes -msoft-float -fcheck-new
-fvtable-thunks'
[root at telgar uClinux-dist.org]#


make a symlink for linux-2.6.x/arch/armnommu:
	ln -s arm armnommu


Make this change in linux/include/asm-armnommu/arch-atmel/memory.h:
/*
 * This decides where the kernel will search for a free chunk of vm
 * space during mmap's.
 */

/* PGA 6/27/05: This was undefined in sched.h so I added it here
 *              in the hopes that it will fix the compile.
 */
#define TASK_UNMAPPED_BASE (TASK_SIZE / 3)

// PGAEND



Use this command to build because armnommu has merged with arm:
	make V=1 ARCH=arm CROSS_COMPILE=arm-elf- -C linux-2.6.x  || exit 1


Now my problem is the Armulator (patched GDB) will not configure.

PGA

On 8/5/05, Greg Ungerer <gerg at snapgear.com> wrote:
> Hi Christopher,
> 
> Christopher wrote:
> > I download the linux-2.6.11.8-hsc0.patch.gz from
> > http://opensrc.sec.samsung.com/ .
> >
> > Using some steps to build linux-2.6.11.8
> >
> > tar -zxvf linux-2.6.11.8.tar.gz
> > gzip -dc linux-2.6.11.8-hsc0.patch.gz | patch -p0
> > cd linux-2.6.11.8
> > cp arch/arm/configs/s3c24a0_nommu_defconfig .config
> > make ARCH=arm CROSS_COMPILE=arm-elf-
> >
> > It have error like below . Do I miss some things ?
> > Thanks
> > ---------------------------------------------------------------------------------
> >  CHK     include/linux/version.h
> >  CC      arch/arm/kernel/asm-offsets.s
> > In file included from arch/arm/kernel/asm-offsets.c:13:
> > include/linux/sched.h: In function `arch_pick_mmap_layout':
> > include/linux/sched.h:1174: error: `TASK_UNMAPPED_BASE' undeclared
> > (first use in this function)
> > include/linux/sched.h:1174: error: (Each undeclared identifier is
> > reported only once
> > include/linux/sched.h:1174: error: for each function it appears in.)
> > make[1]: *** [arch/arm/kernel/asm-offsets.s] Error 1
> > make: *** [arch/arm/kernel/asm-offsets.s] Error 2
> > ---------------------------------------------------------------------------------
> 
> I think this was reported recently (Lucy I think you found this
> on the lpc22xx port, is that right?).
> 
> Fix looks to be adding a definition of it in
> ~/include/asm-arm/arch-s3c24a0/memory.h, like:
> 
>    #define TASK_UNMAPPED_BASE      (0x0)
> 
> Regards
> Greg
> 
> 
> 
> ------------------------------------------------------------------------
> Greg Ungerer  --  Chief Software Dude       EMAIL:     gerg at snapgear.com
> SnapGear -- a CyberGuard Company            PHONE:       +61 7 3435 2888
> 825 Stanley St,                             FAX:         +61 7 3891 3630
> Woolloongabba, QLD, 4102, Australia         WEB: http://www.SnapGear.com
> _______________________________________________
> uClinux-dev mailing list
> uClinux-dev at uclinux.org
> http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
> This message was resent by uclinux-dev at uclinux.org
> 

PGA
-- 
Paul G. Allen
Random Logic Consulting
www.randomlogic.com



More information about the uClinux-dev mailing list