mirror of
https://github.com/Ysurac/openmptcprouter.git
synced 2025-03-09 15:40:20 +00:00
Kernel 5.4 RUTX support
This commit is contained in:
parent
839fcf1cab
commit
cfce9f52b2
7376 changed files with 3902 additions and 546 deletions
|
|
@ -1,358 +0,0 @@
|
|||
|
||||
This file contains basic information on the port of U-Boot to IPHASE4539
|
||||
(Interphase 4539 T1/E1/J1 PMC Communications Controller).
|
||||
All the changes fit in the common U-Boot infrastructure, providing a new
|
||||
IPHASE4539-specific entry in makefiles. To build U-Boot for IPHASE4539,
|
||||
type "make IPHASE4539_config", edit the "include/config_IPHASE4539.h"
|
||||
file if necessary, then type "make".
|
||||
|
||||
|
||||
Common file modifications:
|
||||
--------------------------
|
||||
|
||||
The following common files have been modified by this project:
|
||||
(starting from the ppcboot-1.1.5/ directory)
|
||||
|
||||
MAKEALL - IPHASE4539 entry added
|
||||
Makefile - IPHASE4539_config entry added
|
||||
|
||||
|
||||
New files:
|
||||
----------
|
||||
|
||||
The following new files have been added by this project:
|
||||
(starting from the ppcboot-1.1.5/ directory)
|
||||
|
||||
board/iphase4539/ - board-specific directory
|
||||
board/iphase4539/Makefile - board-specific makefile
|
||||
board/iphase4539/config.mk - config file
|
||||
board/iphase4539/flash.c - flash driver (for AM29LV033C)
|
||||
board/iphase4539/ppcboot.lds - linker script
|
||||
board/iphase4539/iphase4539.c - ioport and memory initialization
|
||||
include/config_IPHASE4539.h - main configuration file
|
||||
|
||||
|
||||
New configuration options:
|
||||
--------------------------
|
||||
|
||||
CONFIG_IPHASE4539
|
||||
|
||||
Main board-specific option (should be defined for IPHASE4539).
|
||||
|
||||
|
||||
Acceptance criteria tests:
|
||||
--------------------------
|
||||
|
||||
The following tests have been conducted to validate the port of U-Boot
|
||||
to IPHASE4539:
|
||||
|
||||
1. Operation on serial console:
|
||||
|
||||
With SMC1 defined as console in the main configuration file, the U-Boot
|
||||
output appeared on the serial terminal connected to the 2.5mm stereo jack
|
||||
connector as follows:
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
=> help
|
||||
base - print or set address offset
|
||||
bdinfo - print Board Info structure
|
||||
bootm - boot application image from memory
|
||||
bootp - boot image via network using BootP/TFTP protocol
|
||||
bootd - boot default, i.e., run 'bootcmd'
|
||||
cmp - memory compare
|
||||
coninfo - print console devices and informations
|
||||
cp - memory copy
|
||||
crc32 - checksum calculation
|
||||
dcache - enable or disable data cache
|
||||
echo - echo args to console
|
||||
erase - erase FLASH memory
|
||||
flinfo - print FLASH memory information
|
||||
go - start application at address 'addr'
|
||||
help - print online help
|
||||
icache - enable or disable instruction cache
|
||||
iminfo - print header information for application image
|
||||
loadb - load binary file over serial line (kermit mode)
|
||||
loads - load S-Record file over serial line
|
||||
loop - infinite loop on address range
|
||||
md - memory display
|
||||
mm - memory modify (auto-incrementing)
|
||||
mtest - simple RAM test
|
||||
mw - memory write (fill)
|
||||
nm - memory modify (constant address)
|
||||
printenv- print environment variables
|
||||
protect - enable or disable FLASH write protection
|
||||
rarpboot- boot image via network using RARP/TFTP protocol
|
||||
reset - Perform RESET of the CPU
|
||||
run - run commands in an environment variable
|
||||
saveenv - save environment variables to persistent storage
|
||||
setenv - set environment variables
|
||||
sleep - delay execution for some time
|
||||
source - run script from memory
|
||||
tftpboot- boot image via network using TFTP protocol
|
||||
and env variables ipaddr and serverip
|
||||
version - print monitor version
|
||||
? - alias for 'help'
|
||||
=>
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
|
||||
2. Flash driver operation
|
||||
|
||||
The following sequence was performed to test the "flinfo" command:
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
=> flinfo
|
||||
|
||||
Bank # 1: AMD AM29LV033C (32 Mbit, uniform sectors)
|
||||
Size: 4 MB in 64 Sectors
|
||||
Sector Start Addresses:
|
||||
FF800000 (RO) FF810000 (RO) FF820000 FF830000 FF840000
|
||||
FF850000 FF860000 FF870000 FF880000 FF890000
|
||||
FF8A0000 FF8B0000 FF8C0000 FF8D0000 FF8E0000
|
||||
FF8F0000 FF900000 FF910000 FF920000 FF930000
|
||||
FF940000 FF950000 FF960000 FF970000 FF980000
|
||||
FF990000 FF9A0000 FF9B0000 FF9C0000 FF9D0000
|
||||
FF9E0000 FF9F0000 FFA00000 FFA10000 FFA20000
|
||||
FFA30000 FFA40000 FFA50000 FFA60000 FFA70000
|
||||
FFA80000 FFA90000 FFAA0000 FFAB0000 FFAC0000
|
||||
FFAD0000 FFAE0000 FFAF0000 FFB00000 (RO) FFB10000 (RO)
|
||||
FFB20000 (RO) FFB30000 (RO) FFB40000 FFB50000 FFB60000
|
||||
FFB70000 FFB80000 FFB90000 FFBA0000 FFBB0000
|
||||
FFBC0000 FFBD0000 FFBE0000 FFBF0000
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
Note: the Hardware Configuration Word (HWC) of the 8260 is on the
|
||||
first sector of the flash and should not be touched. The U-Boot
|
||||
environment variables are stored on second sector and U-Boot
|
||||
starts at the address 0xFFB00000.
|
||||
|
||||
|
||||
The following sequence was performed to test the erase command:
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
=> cp 0 ff880000 10
|
||||
Copy to Flash... done
|
||||
=> md ff880000 20
|
||||
ff880000: ff000000 60000000 60000000 7c7f1b78 ....`...`...|..x
|
||||
ff880010: 7c9e2378 7cbd2b78 7cdc3378 7cfb3b78 |.#x|.+x|.3x|.;x
|
||||
ff880020: 3b000000 4811e0f5 48003719 480036a5 ;...H...H.7.H.6.
|
||||
ff880030: 480036f9 48003731 48005c5d 7c7a1b78 H.6.H.71H.\]|z.x
|
||||
ff880040: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880050: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880060: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880070: ffffffff ffffffff ffffffff ffffffff ................
|
||||
=> erase ff880000 ff88ffff
|
||||
Erase Flash from 0xff880000 to 0xff88ffff
|
||||
.. done
|
||||
Erased 1 sectors
|
||||
=> md ff880000
|
||||
ff880000: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880010: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880020: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880030: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880040: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880050: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880060: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880070: ffffffff ffffffff ffffffff ffffffff ................
|
||||
=> cp 0 ff880000 10
|
||||
Copy to Flash... done
|
||||
=> md ff880000 20
|
||||
ff880000: ff000000 60000000 60000000 7c7f1b78 ....`...`...|..x
|
||||
ff880010: 7c9e2378 7cbd2b78 7cdc3378 7cfb3b78 |.#x|.+x|.3x|.;x
|
||||
ff880020: 3b000000 4811e0f5 48003719 480036a5 ;...H...H.7.H.6.
|
||||
ff880030: 480036f9 48003731 48005c5d 7c7a1b78 H.6.H.71H.\]|z.x
|
||||
ff880040: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880050: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880060: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880070: ffffffff ffffffff ffffffff ffffffff ................
|
||||
=> erase 1:8
|
||||
Erase Flash Sectors 8-8 in Bank # 1
|
||||
.. done
|
||||
=> md ff880000 20
|
||||
ff880000: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880010: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880020: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880030: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880040: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880050: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880060: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880070: ffffffff ffffffff ffffffff ffffffff ................
|
||||
=> cp 0 ff880000 10
|
||||
Copy to Flash... done
|
||||
=> cp 0 ff890000 10
|
||||
=> md ff880000 20
|
||||
ff880000: ff000000 60000000 60000000 7c7f1b78 ....`...`...|..x
|
||||
ff880010: 7c9e2378 7cbd2b78 7cdc3378 7cfb3b78 |.#x|.+x|.3x|.;x
|
||||
ff880020: 3b000000 4811e0f5 48003719 480036a5 ;...H...H.7.H.6.
|
||||
ff880030: 480036f9 48003731 48005c5d 7c7a1b78 H.6.H.71H.\]|z.x
|
||||
ff880040: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880050: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880060: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880070: ffffffff ffffffff ffffffff ffffffff ................
|
||||
=> md ff890000
|
||||
ff890000: ff000000 60000000 60000000 7c7f1b78 ....`...`...|..x
|
||||
ff890010: 7c9e2378 7cbd2b78 7cdc3378 7cfb3b78 |.#x|.+x|.3x|.;x
|
||||
ff890020: 3b000000 4811e0f5 48003719 480036a5 ;...H...H.7.H.6.
|
||||
ff890030: 480036f9 48003731 48005c5d 7c7a1b78 H.6.H.71H.\]|z.x
|
||||
ff890040: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890050: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890060: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890070: ffffffff ffffffff ffffffff ffffffff ................
|
||||
=> erase 1:8-9
|
||||
Erase Flash Sectors 8-9 in Bank # 1
|
||||
.... done
|
||||
=> md ff880000 20
|
||||
ff880000: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880010: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880020: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880030: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880040: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880050: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880060: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880070: ffffffff ffffffff ffffffff ffffffff ................
|
||||
=> md ff890000
|
||||
ff890000: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890010: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890020: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890030: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890040: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890050: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890060: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff890070: ffffffff ffffffff ffffffff ffffffff ................
|
||||
=>
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
|
||||
The following sequence was performed to test the Flash programming commands:
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
=> erase ff880000 ff88ffff
|
||||
Erase Flash from 0xff880000 to 0xff88ffff
|
||||
.. done
|
||||
Erased 1 sectors
|
||||
=> cp 0 ff880000 10
|
||||
Copy to Flash... done
|
||||
=> md 0 20
|
||||
00000000: ff000000 60000000 60000000 7c7f1b78 ....`...`...|..x
|
||||
00000010: 7c9e2378 7cbd2b78 7cdc3378 7cfb3b78 |.#x|.+x|.3x|.;x
|
||||
00000020: 3b000000 4811e0f5 48003719 480036a5 ;...H...H.7.H.6.
|
||||
00000030: 480036f9 48003731 48005c5d 7c7a1b78 H.6.H.71H.\]|z.x
|
||||
00000040: 3c83c000 2c040000 40823378 7c0000a6 <...,...@.3x|...
|
||||
00000050: 60000030 7c1b03a6 3c00c000 600035ec `..0|...<...`.5.
|
||||
00000060: 7c1a03a6 4c000064 00000000 00000000 |...L..d........
|
||||
00000070: 00000000 00000000 00000000 00000000 ................
|
||||
=> md ff880000 20
|
||||
ff880000: ff000000 60000000 60000000 7c7f1b78 ....`...`...|..x
|
||||
ff880010: 7c9e2378 7cbd2b78 7cdc3378 7cfb3b78 |.#x|.+x|.3x|.;x
|
||||
ff880020: 3b000000 4811e0f5 48003719 480036a5 ;...H...H.7.H.6.
|
||||
ff880030: 480036f9 48003731 48005c5d 7c7a1b78 H.6.H.71H.\]|z.x
|
||||
ff880040: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880050: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880060: ffffffff ffffffff ffffffff ffffffff ................
|
||||
ff880070: ffffffff ffffffff ffffffff ffffffff ................
|
||||
=>
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
|
||||
The following sequence was performed to test storage of the environment
|
||||
variables in Flash:
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
=> setenv foo bar
|
||||
=> saveenv
|
||||
Un-Protected 1 sectors
|
||||
Erasing Flash...
|
||||
.. done
|
||||
Erased 1 sectors
|
||||
Saving Environment to Flash...
|
||||
Protected 1 sectors
|
||||
=> reset
|
||||
...
|
||||
=> printenv
|
||||
...
|
||||
foo=bar
|
||||
...
|
||||
Environment size: 339/65532 bytes
|
||||
=>
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
|
||||
The following sequence was performed to test image download and run over
|
||||
Ethernet interface (both interfaces were tested):
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
=> tftpboot 40000 hello_world.bin
|
||||
ARP broadcast 1
|
||||
TFTP from server 10.0.0.1; our IP address is 10.0.0.8
|
||||
Filename 'hello_world.bin'.
|
||||
Load address: 0x40000
|
||||
Loading: #############
|
||||
done
|
||||
Bytes transferred = 65932 (1018c hex)
|
||||
=> go 40004
|
||||
## Starting application at 0x00040004 ...
|
||||
Hello World
|
||||
argc = 1
|
||||
argv[0] = "40004"
|
||||
argv[1] = "<NULL>"
|
||||
Hit any key to exit ...
|
||||
|
||||
## Application terminated, rc = 0x0
|
||||
=>
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
|
||||
3. Known Problems
|
||||
|
||||
None for the moment.
|
||||
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
U-Boot and Linux for Interphase 4539 T1/E1/J1 PMC Communications Controller
|
||||
----------------------------------------------------------------------------
|
||||
|
||||
U-Boot:
|
||||
|
||||
Configure and make U-Boot:
|
||||
|
||||
$ cd <path>/u-boot
|
||||
$ make IPHASE4539_config
|
||||
$ make dep
|
||||
$ make
|
||||
$ cp -p u-boot.bin /tftpboot
|
||||
|
||||
Load u-boot.bin into the Flash memory at 0xffb00000.
|
||||
|
||||
|
||||
Linux:
|
||||
|
||||
Configure and make Linux:
|
||||
|
||||
$ cd <patch>/linux-2.4
|
||||
$ make IPHASE4539_config
|
||||
$ make oldconfig
|
||||
$ make dep
|
||||
$ make uImage
|
||||
$ cp -p arch/powerpc/mbxboot/uImage /tftpboot
|
||||
|
||||
Load uImage via tftp and boot it.
|
||||
|
||||
|
||||
Flash organisation:
|
||||
|
||||
The following preliminary layout of the Flash memory
|
||||
is defined:
|
||||
|
||||
0xff800000 ( 0 - 64 kB): Hardware Configuration Word.
|
||||
0xff810000 ( 64 kB - 128 kB): U-Boot Environment.
|
||||
0xff820000 ( 128 kB - 3 MB): RAMdisk.
|
||||
0xffb00000 ( 3 MB - 3328 kB): U-Boot.
|
||||
0xffb40000 (3328 KB - 4 MB): Linux Kernel.
|
||||
|
||||
|
||||
For further information concerning U-Boot and Linux please consult
|
||||
the "DENX U-Boot and Linux Guide".
|
||||
|
||||
|
||||
(C) 2002 Wolfgang Grandegger, DENX Software Engineering, wg@denx.de
|
||||
===================================================================
|
||||
Loading…
Add table
Add a link
Reference in a new issue