The FPGA variant of balloon has not been getting much attention
recently so it's not much of a surprise that 'latest' build from
balloonboard SVN seems to be broken.
Most likely culprit is the VLIO changes to speed up samosa bus access,
and that also means we can't just go back and easily try earlier
versions.
But there was also the serial-port forwarding to pinko used by TCL,
which accidentally ended up checked in as the default (I guess we
need to extend the variant support to the VHDL). I reverted that and
made a new image which is what was tested below.
Looks loading the image is not in fact not working. Anyone care to
guess why (CJ?)
----- Forwarded message from Paul Fidler <
praf1@cam.ac.uk> -----
From: Paul Fidler <praf1@cam.ac.uk>
Date: 06 Nov 2009 14:37:15 +0000
To: Wookey <wookey@wookware.org>
Subject: Re: Fw: FPGA file
X-Spam-Status: No, score=-6.6 required=4.5 tests=AWL,BAYES_00,
RCVD_IN_DNSWL_MED autolearn=ham version=3.2.5
On Nov 6 2009, Wookey wrote:
> I haven't tried this yet, but I believe it should be correctly
> configured. I will try it shortly, but thought I'd forward in case you
> were itching to have a go.
Well I tried it - no joy I'm afraid...
However, I'm not convinced that the bootldr is actually programming
the FPGA when it starts (unless it does so silently). Manually
prodding it to program the FPGA (using 'fpga' or 'balloon_init') doesn't
succeed:-
boot> fpga
DDR 0x000201FE
DDR 0x000201FE
DDR 0x22E3FFFF
DDR 0x22E3FFFF
DDR 0x000201FE
Set 0x00000080
Clr 0x00000100
Set 0x00000080
Clr 0x00000100
Clr 0x00000080
Clr 0x00000100
Set 0x00000080
Clr 0x00000100
Checking FPGA Image data...
Data = 0x000000FF
Data = 0x000000FF
Data = 0x000000FF
Data = 0x000000FF
Data = 0x000000AA
Data = 0x00000099
Data = 0x00000055
Data = 0x00000066
Using bit swapping...
Programming Device...
FPGA image size (bytes)=0x000625F8
Timed out waiting for Done.
Set 0x00000080
Clr 0x00000100
Failed to load FPGA
The rescue kernel still stops at 'console [ttyS2] enabled':-
boot> boot flash kernel booting kernel from partition >kernel< kernel
partition base 50200000 kernel_magic=E1A00000
kernel_region_words[9]=016F2818 Linux ELF flash_imgstart=50200000
size=00400000 dest=A0000000 offset=00008000 MMU Control=00000079 MMU
PIDVAM=00000000 copying Linux kernel ... done A0008000: E1A00000 A0008004:
E1A00000 A0008008: E1A00000 A000800C: E1A00000 A0008010: E1A00000 A0008014:
E1A00000 A0008018: E1A00000 A000801C: E1A00000 A0008020: EA000002 A0008024:
016F2818 root_filesystem_name=initrd Grabbed linuxargs, argc = 00000002
Using mach_type 00000405 pre unparse setting boot parameters to
noinitrd root=/dev/mtdblock1 init=/linuxrc console=ttyS2,115200
setting boot parameters to
noinitrd root=/dev/mtdblock1 init=/linuxrc console=ttyS2,115200 kernel
Making core tag at A0000100 Making cmdline tag at A0000114 Making mem32 tag
at A00001CC Making mem32 tag at A00001DC command line is: noinitrd
root=/dev/mtdblock1 init=/linuxrc console=ttyS2,115200 kernel
rootfstype=yaffs cpufreq=59000-206400 machine_id=0000000000000000
board=2.05 build=tcl lcd=480x144x4 linuxEntryPoint=A0008000 Booting Linux
image Uncompressing
Linux................................................................................................
done, booting the kernel. Linux version 2.6.31-rc4-pxa270 (root@virtual)
(gcc version 4.1.3 20080704 (prerelease) (Debian 4.1.2-25)) #2 Tue Nov 3
19:21:55 GMT 2009 CPU: XScale-PXA270 [69054117] revision 7 (ARMv5TE),
cr=0000397f CPU: VIVT data cache, VIVT instruction cache Machine: Balloon3
Memory policy: ECC disabled, Data cache writeback Run Mode clock: 208.00MHz
(*16) Turbo Mode clock: 520.00MHz (*2.5, active) Memory clock: 104.00MHz
(/2) System bus clock: 104.00MHz Built 1 zonelists in Zone order, mobility
grouping on. Total pages: 64768 Kernel command line: noinitrd
root=/dev/mtdblock1 init=/linuxrc console=ttyS2,115200 kernel
rootfstype=yaffs cpufreq=59000-206400 machine_id=0000000000000000
board=2.05 build=tcl lcd=480x144x4 PID hash table entries: 1024 (order: 10,
4096 bytes) Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes) Memory: 128MB
128MB = 256MB total Memory: 256512KB available (2652K code, 199K data, 108K
init, 0K highmem) NR_IRQS:208 Console: colour dummy device 80x30
Calibrating delay loop... 519.37 BogoMIPS (lpj=2596864) Mount-cache hash
table entries: 512 CPU: Testing write buffer coherency: ok NET: Registered
protocol family 16 Initialising Balloon3 bio: create slab <bio-0> at 0 NET:
Registered protocol family 2 IP route cache hash table entries: 2048
(order: 1, 8192 bytes) TCP established hash table entries: 8192 (order: 4,
65536 bytes) TCP bind hash table entries: 8192 (order: 3, 32768 bytes) TCP:
Hash tables configured (established 8192 bind 8192) TCP reno registered
NET: Registered protocol family 1 PXA CPU 27x max frequency not defined
(pxa27x_maxfreq), assuming pxa271 with 416000kHz maxfreq PXA CPU frequency
change support initialized NetWinder Floating Point Emulator V0.97 (double
precision) VFS: Disk quotas dquot_6.5.2 Dquot-cache hash table entries:
1024 (order 0, 4096 bytes) yaffs Nov 3 2009 17:33:29 Installing. msgmni has
been set to 501 io scheduler noop registered io scheduler anticipatory
registered (default) io scheduler deadline registered io scheduler cfq
registered Platform driver 'pxa2xx-fb' needs updating - please use
dev_pm_ops Console: switching to colour frame buffer device 60x40 Platform
driver 'pxa2xx-uart' needs updating - please use dev_pm_ops pxa2xx-uart.0:
ttyS0 at MMIO 0x40100000 (irq = 22) is a FFUART pxa2xx-uart.1: ttyS1 at
MMIO 0x40200000 (irq = 21) is a BTUART pxa2xx-uart.2: ttyS2 at MMIO
0x40700000 (irq = 20) is a STUART console [ttyS2] enabled
My thoughts are:
1) Bootldr not loading FPGA.
2) l3fpga.bin not working (serial to Pinko).
3) Wrong l3fpga.bin that doesn't know about location of NAND.
4) Rescue kernel doesn't know about location of NAND (but it shouldn't
need to...)
The bootldr clearly can't find NAND:-
boot> nand
MTD device not found ...
No NAND mtd found
Oh - one other thing I've just noticed... the zImageBoot and zImageInitrd
files only differ in length by a few bytes, so in addition to my other
problems, zImageInitrd must be missing it's initrd...
Any ideas?
Paul.
Paul Fidler
--
Cambridge University Engineering Department | Tel: +44 1223 332816
Trumpington Street, Cambridge, CB2 1PZ, UK | Fax: +44 1223 332662
----- End forwarded message -----
Wookey
--
Principal hats: iEndian - Balloonboard - Toby Churchill - Emdebian
http://wookware.org/