ts-7000
[Top] [All Lists]

[ts-7000] Re: Rebuilding a kernel

To:
Subject: [ts-7000] Re: Rebuilding a kernel
From: "j.chitte" <>
Date: Thu, 05 Feb 2009 19:50:38 -0000
--- In  "Anouk Ahamitet" <> 
wrote:
>
> We asked Technologic for instructions when we wanted to change the 
timer
> resolution from 10ms to 1ms (by changing CONFIG_HZ from 100 to 1000 
in
> the kernel build settings).  I thought that others in this group 
would
> be interested in the steps for rebuilding the kernel that we got 
from
> Technologic:
> 
> In order to build a TS-7800 Kernel:
> 
> 1) Download the Kernel:
> 
>  
> <ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/sources/
linux-2.6.21-\
> ts-src-latest.tar.gz> 
> <ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/sources/
linux-2.6.21-\
> ts-src-latest.tar.gz%20> 
> <ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/sources/
linux-2.6.21-\
> ts-src-latest.tar.gz> 
> <ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/sources/
linux-2.6.21-\
> ts-sr>
> ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/sources/
linux-2.6.21-t\
> s-src-latest.tar.gz
> <ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/sources/
linux-2.6.21-\
> ts-src-latest.tar.gz>
> 
> 2) Download the Crosstool:
> 
>  
> <ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/cross-toolchains/
ts78\
> 00-crosstool-linux-gnueabi-2005q3-2.tar.gz> 
> <ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/cross-toolchains/
ts78\
> 00-cr>
> ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/cross-toolchains/
ts780\
> 0-crosstool-linux-gnueabi-2005q3-2.tar.gz 
> <ftp://oz.embeddedarm.com/ts-arm-sbc/ts-7800-linux/cross-toolchains/
ts78\
> 00-crosstool-linux-gnueabi-2005q3-2.tar.gz%20%20>
> 
> 3) Install/Extract both on a Linux X86 box
> 
> 4) Adjust the Makefile of the Kernel to use the right CROSSTOOL
> 
> 5) Compile the kernel:
> 
> # make ts7800_defconfig
> # make
> 
> 6) The new kernel will show up at arch/arm/boot/Image
> 
> In order to ensure that I didn't have any extras to mess things up, 
I
> installed a fresh, clean Ubuntu 8.10 system where I would perform 
the
> steps above.  I made sure that it had all of the current updates.  
I did
> all of the steps under my non-root account (I asked and was assured 
that
> despite the indication that root was running the make commands in 
the
> instructions, I didn't need to be root to build their kernel).  In
> between steps 4 and 5, I edited arch/arm/config/ts7800_defconfig and
> arch/arm/config/ts7800full_defconfig to change CONFIG_HZ=100 to
> CONFIG_HZ=1000 in both (since I wasn't positive which would be 
used).
> 
> The first make ran fine, with just a few warnings.  But the second 
make
> fails with this output:
> 
> scripts/kconfig/conf -s arch/arm/Kconfig
> drivers/crypto/cesa/Kconfig:16:warning: type of 'MV_CESA_TEST' 
redefined
> from 'tristate' to 'boolean'
>    CHK     include/linux/version.h
>    SYMLINK include/asm-arm/arch -> include/asm-arm/arch-mv88fxx81
> make[1]: `include/asm-arm/mach-types.h' is up to date.
>    CHK     include/linux/utsrelease.h
>    HOSTCC  scripts/mod/sumversion.o
> scripts/mod/sumversion.c: In function `get_src_version':
> scripts/mod/sumversion.c:384: error: `PATH_MAX' undeclared
> (first use in this function)
> scripts/mod/sumversion.c:384: error: (Each undeclared identifier is
> reported only once
> scripts/mod/sumversion.c:384: error: for each function it appears 
in.)
> scripts/mod/sumversion.c:384: warning: unused variable
> `filelist'
> make[2]: *** [scripts/mod/sumversion.o] Error 1
> make[1]: *** [scripts/mod] Error 2
> make: *** [scripts] Error 2
> 
> 
> I found a simple patch at
> m(".../msg02788.html","//www.mail-archive.com/linux-arch");">http:
> <m(".../msg02788.html","//www.mail-archive.com/linux-arch");">http:>
>    (a required header was not included) and now the kernel builds.
> 
> HOWEVER...
> 
> The fact that the source Technologic told me to download from their 
site
> did not build makes me wonder if the source contains all of the 
other
> adjustments they've make (which include several things for the 
7800),
> since they obviously have never actually used the source that they 
make
> available for download.  If they had, they'd know that it doesn't
> compile as-is.
> 
> When I reporting the bug, the fix and asked my contact at 
Technologic
> about this, he told me that I probably needed to run make 
menuconfig to
> change a setting (but he didn't say which one that might be) so 
that the
> broken file is not included.  If that is true, then it concerns me 
even
> more than the bug, because I wanted to start with exactly the same
> settings as Technologic so that the kernel we built as just like 
theirs
> except for the things we specifically wanted to change.
> 
> Perhaps these things don't bother the linux gurus among 
Technologic's
> customers, but they concern me.
> 
> Hopefully, this will at least provide a starting point to anyone 
else
> who needs (or wants) to rebuild the kernel for their Technologic 
board.
>

You should be able to create a byte for byte identical kernel if they 
supply the exact same source tree as they use (as is required by GPL) 
and the same compiler tool chain.

If they say that you just need to turn some feature on/off the simple 
answer would be to ask them for the .config they use to build the 
kernel.

That would not seem to be unreasonable to ask or too difficult to 
agree to. I'm rather surprised that they don't seem to provide the 
config on their site along with the various source trees.

Providing the .config would probably take no longer than replying to 
your message. I suggest you request it.

;)




------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/ts-7000/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/ts-7000/join
    (Yahoo! ID required)

<*> To change settings via email:
     
    

<*> To unsubscribe from this group, send an email to:
    

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/

<Prev in Thread] Current Thread [Next in Thread>
Admin

Disclaimer: Neither Andrew Taylor nor the University of NSW School of Computer and Engineering take any responsibility for the contents of this archive. It is purely a compilation of material sent by many people to the birding-aus mailing list. It has not been checked for accuracy nor its content verified in any way. If you wish to get material removed from the archive or have other queries about the archive e-mail Andrew Taylor at this address: andrewt@cse.unsw.EDU.AU