ts-7000
[Top] [All Lists]

[ts-7000] TS-7800: Linux kernel 2.6.36.4 uploaded

To:
Subject: [ts-7000] TS-7800: Linux kernel 2.6.36.4 uploaded
From: "Jaan" <>
Date: Thu, 03 Mar 2011 11:40:40 -0000
Hi all,

I figured out what is missing in Linux mainline kernels. TS-7800 boards with 
revision 6 and above didn't work because they are not mentioned in the code. 
Here's how I compiled a new kernel with support to new revisions 6 to 9.

Build environment: openSUSE 11.3, x86_64, kernel 2.6.34, cross compiler from 
build.opensuse.org (home:duwe version, cross-arm-linux-gnueabi-gcc 4.4.4).

My steps were:
1. Downloaded & unpacked kernel 2.6.36.4 from www.kernel.org
2. Applied YAFFS patch (start your search from www.yaffs.net) from yaffs 
directory:
   ./patch-ker.sh c m ../linux-2.6.36.4/
3. Changed Makefile
   ARCH ?= arm
   CROSS_COMPILE ?= /opt/cross/bin/arm-linux-gnueabi-
4. Changed ./arch/arm/kernel/head.S:

        beq     __error_p                       @ yes, error 'p'

        /* Change added on Mar 03, 2011 by Jaan <> */
        #ifdef CONFIG_MACH_TS78XX
        ldr r1, =0x00000674                     @ TS-7800 is 0x674
        #endif

        bl      __lookup_machine_type           @ r5=machinfo

5. Changed ./arch/arm/mach-orion5x/ts78xx-fpga.h near beginning (added REV_6 to 
REV_9):
        TS7800_REV_5    = FPGAID(0x00b480, 0x05),
        TS7800_REV_6    = FPGAID(0x00b480, 0x06),
        TS7800_REV_7    = FPGAID(0x00b480, 0x07),
        TS7800_REV_8    = FPGAID(0x00b480, 0x08),
        TS7800_REV_9    = FPGAID(0x00b480, 0x09),

        /* Unaffordable & Expensive */

6. Changed ./arch/arm/mach-orion5x/ts78xx-setup.c from line 336:
        case TS7800_REV_5:
        case TS7800_REV_6:
        case TS7800_REV_7:
        case TS7800_REV_8:
        case TS7800_REV_9:
                ts78xx_fpga.supports.ts_rtc.present = 1;

And line 242 in the same file:
        .flags = IORESOURCE_MEM,
(was IORESOURCE_IO; should be fixed since kernel 2.6.37)

7. From ./ I ran
   make orion5x_defconfig

8. make menuconfig
   (made some changes)

9. make

10. Copied ./arch/arm/boot/zImage to SD card partition 2 with dd
    (example: dd if=./arch/arm/boot/zImage of=/dev/sdd2)

11. Closed jumper 1 and applied power to TS-7800.

Booted to Busybox, but couldn't run old Debian OABI; Debian Armel worked from 
USB stick.

As before, you should know that no microSD or SD card is recognised with 
orion5x kernels. You can boot the kernel from microSD/SD, but you cannot mount 
any filesystems from microSD/SD cards.

Today I uploaded 2 related files to TS-7000 Yahoo! group Files section. One 
.tar contains the kernel zImage and config file and another .tar.gz contains 
some kernel modules.

Jaan



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

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