Projects :
S5SCC/DMA
S5LinBOX
Hardware
Boot
ETNC
uCLinux NEW
Tools
Links
oooooooooooooooo
Last update:
14.3.2005
| |
Back
Home
S5linBOX boot
Features:
Flash partitioning support,
BOOTP/TFTP Ethernet download support,
Flash write support,
Automatic boot from flash or network (BOOTP/TFTP),
Compressed image boot. >>>>> NEW in V0.2
<<<<<
Files:
Download V0.1 binary file (to run from flash or network)
Download V0.1 S19 file (for JTAG download)
Download V0.2 binary file (to run from flash or network)
Download V0.2 S19 file (for JTAG download)
Description
We use S5LinBOX boot to get programs from Flash or network and make them running.
It includes also flash organizing tool, which makes booting from flash or network and
writing
to flash simple job. We must download boot program (uclboot.S19) to RAM at address 0x0
using JTAG cable and OCD_Commander
to run it for first time.
Boot program is resident in lower part (64KB) of onboard flash. It starts running after
reset.
After initialization it waits for any key from the console (UARTA) for 3 seconds. At the
same time it broadcasts BOOTP request over Ethernet to find if there is an BOOTP server
on the network which has boot file for us. If any key pressed in this time interval we
will get
Boot prompt. After this waiting time expires we check if we got any response to our BOOTP
request. If Yes then we proceed with TFTP file transfer from BOOTP server and run
downloaded program. If we did not get any response from our BOOTP request we proceed
with boot from flash, based on flash partitioning table.
Init uart
Init txd 100
PHY AN 000041E1 100MB FULLDUP
Init lan
Init mac
Press any key for boot prompt .
S5LinBOX boot (V0.1, S57MMK 12/2002)
Flash, Bootp, Tftp, Go_downloaded, go_fRom_flash, myIp, txDelay, bOot_files :
->
Heart of boot program is flash partitioning table. It resides in serial EEPROM at
offset of
2048 bytes. Table has maximum 10 entries. Each entry includes partition name (char
file_name[12]),
partition offset (U32 flash_addr), partition run address (U32 run_addr) and partition
length
(U32 max_len). Partition run address is the address in RAM where we copy the contents off
the
partition and run. We can build or edit partition table with command "bOot_files" from boot
prompt. Partition name is important when we are booting from the network using BOOTP/TFTP.
After we get response to our BOOTP request we check if returned file name exists in
partition
table. If Yes then we use information from partition table for that file to copy and run.
The name is
also important when we are writing a file to flash after downloading from network.
->O
Clear, List, Add, Delete, Edit, Flash_boot_default, Quit [] : _
With command "C" we can clear whole partition table. With "L"
we list the table. With "A" we
add new entry to table. We can delete or edit existing entry with command "D" or
"E" and with
table entry number. With "F" we mark flash file as default boot file. That file
will be automatically
booted if no key pressed or BOOTP response after reset. Here is typical example of
partition table:
Clear, List, Add, Delete, Edit, Flash_boot_default,
Quit [] : l
File Flash_add Run_add Max_len
0: uclboot 00000 00000 10000
1: config 10000 00000 10000
2: uclinux 20000 08000 1D0000
3: etnc13 1F0000 00000 10000 Default boot
Clear, List, Add, Delete, Edit, Flash_boot_default, Quit [l] :
From boot prompt we can send Bootp request to check our bootp server
availability. If we get
response its information is used for possible subsequent TFTP file transfers. With Tftp
command
we download file from our bootp/tftp server to RAM address 0xC00000. Downloaded file can
be run or written to flash.
One can write downloaded file to Flash if its name exists in flash
partition table. Information from
the table is used to erase and program appropriate flash segments. There is no way to
write
downloaded file to flash if it is not included in partition table.
One can run downloaded file from boot prompt with command "Go_downloaded".
If downloaded
file name does not exist in partition table we will be asked for run address.
One can run program for any flash partition with command "go_fRom_flash". We will be prompted
with default boot file name. If we agree just press enter, otherwise enter any file name
from the
partition table.
Command "myIp"
allows us to change default boot time IP number (10.0.0.10). Note that bootp
request uses broadcast method to find bootp server on the network. After it get reply it
changes
IP address accordingly.
Using command "txDelay"
we can change txdelay parameter for on board scrambler. At the same
time one can choose between "auto enable" or "no auto enable" hdlc
operation. Use "no auto enable"
when you have ax25 link to older SuperVozelj nodes with Zilog SCC chips. (This option is
only
temporarily included here until I make I2C support under uClinux).
Back Home
|