Hi Jim,
you need to program the FPGA configuration prom. Use Impact and make a PROM file from the download.bit file. Doing a JTAG boundary scan in Impact will show which PROM you have. Set the configuration jumper on the board accordingly to bring up the FPGA from the Xilinx serial prom. Refer to the Spartan 3E doc on the Xilinx website for the correct settings.
Hope this helps,
Marco
-----Original Message-----
From: owner-microblaze-uclinux@xxxxxxxxxxxxxx on behalf of Sims, Jim
Sent: Tue 3/10/2009 7:34 PM
To: microblaze-uclinux@xxxxxxxxxxxxxx
Subject: [microblaze-uclinux] U-boot and the Spartan s3e500revD
Hi,
I have managed to get the Petalinux reference design loaded on to my Spartan s3e500revD starter board. I am stumped regarding getting the board to boot automatically after a power cycle. I have managed to get U-boot and the Linux kernel into flash. But the only way I can boot Linux is to push download.bit to the board again using Impact. Once I do that, FS-boot will load, then U-boot will load from flash, then the Linux kernel will load from flash. But if I power cycle the board, I get nothing in Kermit and nothing from the httpd server until I push the download.bit file again. What am I missing? Do I have to put FS-boot or download.bit into the flash too? Or should it boot from U-boot after powering up?
Thanks in advance,
Jim
FWIW, here's what I see in Kermit after I issue $make -f system.make download from the command line:
=================================================
FS-BOOT First Stage Bootloader (c) 2006 PetaLogix
=================================================
FS-BOOT: System initialisation completed.
FS-BOOT: Booting from FLASH. Press 's' for image download.
FS-BOOT: Booting image...
SDRAM :
Enabling caches :
Icache:OK
Dcache:OK
U-Boot Start:0x8dfc0000
Malloc Start:0x8df60000
Board Info Start:0x8df5ffd0
Boot Parameters Start:0x8df4ffd0
FLASH: 16 MB
ETHERNET: MAC:00:0a:35:00:22:01
Hit any key to stop autoboot: 0
## Booting image at 890c0000 ...
Image Name: PetaLinux Kernel 2.6
Image Type: Microblaze Linux Kernel Image (uncompressed)
Data Size: 4374563 Bytes = 4.2 MB
Load Address: 8c000000
Entry Point: 8c000000
Verifying Checksum ... OK
OK
Linux version 2.6.20-uc0 (sysadmin@freekbox) (gcc version 3.4.1 ( PetaLinux 0.20 Build -rc1 050607 )) #6 Tue Mar 10 08:57:46 PDT 2009
setup_cpuinfo: initialising
setup_cpuinfo: Using full CPU PVR support
setup_memory: max_mapnr: 0x8dfff
setup_memory: min_low_pfn: 0x8c000
setup_memory: max_low_pfn: 0x2000
On node 0 totalpages: 8192
DMA zone: 64 pages used for memmap
DMA zone: 0 pages reserved
DMA zone: 8128 pages, LIFO batch:0
Normal zone: 0 pages used for memmap
Built 1 zonelists. Total pages: 8128
Kernel command line: mtdparts=physmap-flash.0:256K(boot),256K(bootenv),256K(config),5M(image),10M(spare) macaddr=00:0a:35:00:22:01
OPB INTC #0 at 0x81800000
PID hash table entries: 128 (order: 7, 512 bytes)
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 28116k/32768k available
Calibrating delay loop... 49.56 BogoMIPS (lpj=247808)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 0, 4096 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
TCP reno registered
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered (default)
uartlite.0: ttyS0 at MMIO 0x84000000 (irq = 6) is a uartlite
RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize
eth0: using fifo mode.
eth0: No PHY detected. Assuming a PHY at address 0.
eth0: Xilinx EMACLite #0 at 0x81000000 mapped to 0x81000000, irq=1
physmap platform flash device: 01000000 at 89000000
physmap-flash.0: Found 1 x16 devices at 0x0 in 8-bit bank
Intel/Sharp Extended Query Table at 0x0031
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
erase region 0: offset=0x0,size=0x20000,blocks=128
5 cmdlinepart partitions found on MTD device physmap-flash.0
Creating 5 MTD partitions on "physmap-flash.0":
0x00000000-0x00040000 : "boot"
0x00040000-0x00080000 : "bootenv"
0x00080000-0x000c0000 : "config"
0x000c0000-0x005c0000 : "image"
0x005c0000-0x00fc0000 : "spare"
uclinux[mtd]: RAM probe address=0x8c212904 size=0x230000
Creating 1 MTD partitions on "RAM":
0x00000000-0x00230000 : "ROMfs"
uclinux[mtd]: set ROMfs to be root filesystem index=5
i8042.c: i8042 controller self test timeout.
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
VFS: Mounted root (cramfs filesystem) readonly.
Freeing unused kernel memory: 88k freed
Mounting proc:
Mounting var:
Populating /var:
Running local start scripts.
Mounting /etc/config:
Populating /etc/config:
flatfsd: Created 6 configuration files (192 bytes)
Mounting sysfs:
Setting hostname:
Setting up interface lo:
Starting DHCP client:
Starting portmap:
Starting thttpd:
S3E-500 login: