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/
|