avionic design with actual uboot and tooling
submodule of avionic design uboot bootloader and with included tools to get you started , read readme.md and readme-tk1-loader.md
This commit is contained in:
367
u-boot/board/freescale/t104xrdb/README
Normal file
367
u-boot/board/freescale/t104xrdb/README
Normal file
@@ -0,0 +1,367 @@
|
||||
Overview
|
||||
--------
|
||||
The T1040RDB is a Freescale reference board that hosts the T1040 SoC
|
||||
(and variants). Variants inclued T1042 presonality of T1040, in which
|
||||
case T1040RDB can also be called T1042RDB.
|
||||
|
||||
The T1042RDB is a Freescale reference board that hosts the T1042 SoC
|
||||
(and variants). The board is similar to T1040RDB, T1040 is a reduced
|
||||
personality of T1040 SoC without Integrated 8-port Gigabit(L2 Switch).
|
||||
|
||||
The T1042RDB_PI is a Freescale reference board that hosts the T1042 SoC.
|
||||
(a personality of T1040 SoC). The board is similar to T1040RDB but is
|
||||
designed specially with low power features targeted for Printing Image Market.
|
||||
|
||||
The T1040D4RDB is a Freescale reference board that hosts the T1040 SoC.
|
||||
The board is re-designed T1040RDB board with following changes :
|
||||
- Support of DDR4 memory and some enhancements
|
||||
|
||||
The T1042D4RDB is a Freescale reference board that hosts the T1042 SoC.
|
||||
The board is re-designed T1040RDB board with following changes :
|
||||
- Support of DDR4 memory
|
||||
- Support for 0x86 serdes protocol which can support following interfaces
|
||||
- 2 RGMII's on DTSEC4, DTSEC5
|
||||
- 3 SGMII on DTSEC1, DTSEC2 & DTSEC3
|
||||
|
||||
Basic difference's among T1040RDB, T1042RDB_PI, T1042RDB
|
||||
-------------------------------------------------------------------------
|
||||
Board Si Protocol Targeted Market
|
||||
-------------------------------------------------------------------------
|
||||
T1040RDB T1040 0x66 Networking
|
||||
T1040RDB T1042 0x86 Networking
|
||||
T1042RDB_PI T1042 0x06 Printing & Imaging
|
||||
T1040D4RDB T1040 0x66 Networking
|
||||
T1042D4RDB T1042 0x86 Networking
|
||||
|
||||
|
||||
T1040 SoC Overview
|
||||
------------------
|
||||
The QorIQ T1040/T1042 processor support four integrated 64-bit e5500 PA
|
||||
processor cores with high-performance data path acceleration architecture
|
||||
and network peripheral interfaces required for networking & telecommunications.
|
||||
|
||||
The T1040/T1042 SoC includes the following function and features:
|
||||
|
||||
- Four e5500 cores, each with a private 256 KB L2 cache
|
||||
- 256 KB shared L3 CoreNet platform cache (CPC)
|
||||
- Interconnect CoreNet platform
|
||||
- 32-/64-bit DDR3L/DDR4 SDRAM memory controller with ECC and interleaving
|
||||
support
|
||||
- Data Path Acceleration Architecture (DPAA) incorporating acceleration
|
||||
for the following functions:
|
||||
- Packet parsing, classification, and distribution
|
||||
- Queue management for scheduling, packet sequencing, and congestion
|
||||
management
|
||||
- Cryptography Acceleration (SEC 5.0)
|
||||
- RegEx Pattern Matching Acceleration (PME 2.2)
|
||||
- IEEE Std 1588 support
|
||||
- Hardware buffer management for buffer allocation and deallocation
|
||||
- Ethernet interfaces
|
||||
- Integrated 8-port Gigabit Ethernet switch (T1040 only)
|
||||
- Four 1 Gbps Ethernet controllers
|
||||
- Two RGMII interfaces or one RGMII and one MII interfaces
|
||||
- High speed peripheral interfaces
|
||||
- Four PCI Express 2.0 controllers running at up to 5 GHz
|
||||
- Two SATA controllers supporting 1.5 and 3.0 Gb/s operation
|
||||
- Upto two QSGMII interface
|
||||
- Upto six SGMII interface supporting 1000 Mbps
|
||||
- One SGMII interface supporting upto 2500 Mbps
|
||||
- Additional peripheral interfaces
|
||||
- Two USB 2.0 controllers with integrated PHY
|
||||
- SD/eSDHC/eMMC
|
||||
- eSPI controller
|
||||
- Four I2C controllers
|
||||
- Four UARTs
|
||||
- Four GPIO controllers
|
||||
- Integrated flash controller (IFC)
|
||||
- LCD and HDMI interface (DIU) with 12 bit dual data rate
|
||||
- TDM interface
|
||||
- Multicore programmable interrupt controller (PIC)
|
||||
- Two 8-channel DMA engines
|
||||
- Single source clocking implementation
|
||||
- Deep Sleep power implementaion (wakeup from GPIO/Timer/Ethernet/USB)
|
||||
|
||||
T1040 SoC Personalities
|
||||
-------------------------
|
||||
T1022 Personality:
|
||||
T1022 is a reduced personality of T1040 with less core/clusters.
|
||||
|
||||
T1042 Personality:
|
||||
T1042 is a reduced personality of T1040 without Integrated 8-port Gigabit
|
||||
Ethernet switch. Rest of the blocks are same as T1040
|
||||
|
||||
|
||||
T1040RDB board Overview
|
||||
-------------------------
|
||||
- SERDES Connections, 8 lanes information:
|
||||
1: None
|
||||
2: SGMII
|
||||
3: QSGMII
|
||||
4: QSGMII
|
||||
5: PCIe1 x1 slot
|
||||
6: mini PCIe connector
|
||||
7: mini PCIe connector
|
||||
8: SATA connector
|
||||
- DDR Controller
|
||||
- Supports rates of up to 1600 MHz data-rate
|
||||
- Supports one DDR3LP UDIMM/RDIMMs, of single-, dual- or quad-rank types.
|
||||
- IFC/Local Bus
|
||||
- NAND flash: 1GB 8-bit NAND flash
|
||||
- NOR: 128MB 16-bit NOR Flash
|
||||
- Ethernet
|
||||
- Two on-board RGMII 10/100/1G ethernet ports.
|
||||
- CPLD
|
||||
- Clocks
|
||||
- System and DDR clock (SYSCLK, “DDRCLK”)
|
||||
- SERDES clocks
|
||||
- Power Supplies
|
||||
- USB
|
||||
- Supports two USB 2.0 ports with integrated PHYs
|
||||
- Two type A ports with 5V@1.5A per port.
|
||||
- SDHC
|
||||
- SDHC/SDXC connector
|
||||
- SPI
|
||||
- On-board 64MB SPI flash
|
||||
- Other IO
|
||||
- Two Serial ports
|
||||
- Four I2C ports
|
||||
|
||||
T1042RDB_PI board Overview
|
||||
-------------------------
|
||||
- SERDES Connections, 8 lanes information:
|
||||
1, 2, 3, 4 : PCIe x4 slot
|
||||
5: mini PCIe connector
|
||||
6: mini PCIe connector
|
||||
7: NA
|
||||
8: SATA connector
|
||||
- DDR Controller
|
||||
- Supports rates of up to 1600 MHz data-rate
|
||||
- Supports one DDR3LP UDIMM/RDIMMs, of single-, dual- or quad-rank types.
|
||||
- IFC/Local Bus
|
||||
- NAND flash: 1GB 8-bit NAND flash
|
||||
- NOR: 128MB 16-bit NOR Flash
|
||||
- Ethernet
|
||||
- Two on-board RGMII 10/100/1G ethernet ports.
|
||||
- CPLD
|
||||
- Clocks
|
||||
- System and DDR clock (SYSCLK, “DDRCLK”)
|
||||
- SERDES clocks
|
||||
- Video
|
||||
- DIU supports video at up to 1280x1024x32bpp
|
||||
- Power Supplies
|
||||
- USB
|
||||
- Supports two USB 2.0 ports with integrated PHYs
|
||||
- Two type A ports with 5V@1.5A per port.
|
||||
- SDHC
|
||||
- SDHC/SDXC connector
|
||||
- SPI
|
||||
- On-board 64MB SPI flash
|
||||
- Other IO
|
||||
- Two Serial ports
|
||||
- Four I2C ports
|
||||
|
||||
Memory map
|
||||
-----------
|
||||
The addresses in brackets are physical addresses.
|
||||
|
||||
Start Address End Address Description Size
|
||||
0xF_FFDF_0000 0xF_FFDF_0FFF IFC - CPLD 4KB
|
||||
0xF_FF80_0000 0xF_FF80_FFFF IFC - NAND Flash 64KB
|
||||
0xF_FE00_0000 0xF_FEFF_FFFF CCSRBAR 16MB
|
||||
0xF_F803_0000 0xF_F803_FFFF PCI Express 4 I/O Space 64KB
|
||||
0xF_F802_0000 0xF_F802_FFFF PCI Express 3 I/O Space 64KB
|
||||
0xF_F801_0000 0xF_F801_FFFF PCI Express 2 I/O Space 64KB
|
||||
0xF_F800_0000 0xF_F800_FFFF PCI Express 1 I/O Space 64KB
|
||||
0xF_F600_0000 0xF_F7FF_FFFF Queue manager software portal 32MB
|
||||
0xF_F400_0000 0xF_F5FF_FFFF Buffer manager software portal 32MB
|
||||
0xF_E800_0000 0xF_EFFF_FFFF IFC - NOR Flash 128MB
|
||||
0xF_0000_0000 0xF_003F_FFFF DCSR 4MB
|
||||
0xC_3000_0000 0xC_3FFF_FFFF PCI Express 4 Mem Space 256MB
|
||||
0xC_2000_0000 0xC_2FFF_FFFF PCI Express 3 Mem Space 256MB
|
||||
0xC_1000_0000 0xC_1FFF_FFFF PCI Express 2 Mem Space 256MB
|
||||
0xC_0000_0000 0xC_0FFF_FFFF PCI Express 1 Mem Space 256MB
|
||||
0x0_0000_0000 0x0_ffff_ffff DDR 2GB
|
||||
|
||||
|
||||
NOR Flash memory Map
|
||||
---------------------
|
||||
Start End Definition Size
|
||||
0xEFF40000 0xEFFFFFFF U-Boot (current bank) 768KB
|
||||
0xEFF20000 0xEFF3FFFF U-Boot env (current bank) 128KB
|
||||
0xEFF00000 0xEFF1FFFF FMAN Ucode (current bank) 128KB
|
||||
0xED300000 0xEFEFFFFF rootfs (alt bank) 44MB
|
||||
0xEC800000 0xEC8FFFFF Hardware device tree (alt bank) 1MB
|
||||
0xEC020000 0xEC7FFFFF Linux.uImage (alt bank) 7MB + 875KB
|
||||
0xEC000000 0xEC01FFFF RCW (alt bank) 128KB
|
||||
0xEBF40000 0xEBFFFFFF U-Boot (alt bank) 768KB
|
||||
0xEBF20000 0xEBF3FFFF U-Boot env (alt bank) 128KB
|
||||
0xEBF00000 0xEBF1FFFF FMAN ucode (alt bank) 128KB
|
||||
0xE9300000 0xEBEFFFFF rootfs (current bank) 44MB
|
||||
0xE8800000 0xE88FFFFF Hardware device tree (cur bank) 11MB + 512KB
|
||||
0xE8020000 0xE86FFFFF Linux.uImage (current bank) 7MB + 875KB
|
||||
0xE8000000 0xE801FFFF RCW (current bank) 128KB
|
||||
|
||||
|
||||
Various Software configurations/environment variables/commands
|
||||
--------------------------------------------------------------
|
||||
The below commands apply to the board
|
||||
|
||||
1. U-Boot environment variable hwconfig
|
||||
The default hwconfig is:
|
||||
hwconfig=fsl_ddr:ctlr_intlv=null,bank_intlv=cs0_cs1;usb1:
|
||||
dr_mode=host,phy_type=utmi
|
||||
Note: For USB gadget set "dr_mode=peripheral"
|
||||
|
||||
2. FMAN Ucode versions
|
||||
fsl_fman_ucode_t1040.bin
|
||||
|
||||
3. Switching to alternate bank
|
||||
Commands for switching to alternate bank.
|
||||
|
||||
1. To change from vbank0 to vbank4
|
||||
=> cpld reset altbank (it will boot using vbank4)
|
||||
|
||||
2.To change from vbank4 to vbank0
|
||||
=> cpld reset (it will boot using vbank0)
|
||||
|
||||
NAND boot with 2 Stage boot loader
|
||||
----------------------------------
|
||||
PBL initialise the internal SRAM and copy SPL(160KB) in SRAM.
|
||||
SPL further initialise DDR using SPD and environment variables and copy
|
||||
U-Boot(768 KB) from flash to DDR.
|
||||
Finally SPL transer control to U-Boot for futher booting.
|
||||
|
||||
SPL has following features:
|
||||
- Executes within 256K
|
||||
- No relocation required
|
||||
|
||||
Run time view of SPL framework during boot :-
|
||||
-----------------------------------------------
|
||||
Area | Address |
|
||||
-----------------------------------------------
|
||||
Secure boot | 0xFFFC0000 (32KB) |
|
||||
headers | |
|
||||
-----------------------------------------------
|
||||
GD, BD | 0xFFFC8000 (4KB) |
|
||||
-----------------------------------------------
|
||||
ENV | 0xFFFC9000 (8KB) |
|
||||
-----------------------------------------------
|
||||
HEAP | 0xFFFCB000 (30KB) |
|
||||
-----------------------------------------------
|
||||
STACK | 0xFFFD8000 (22KB) |
|
||||
-----------------------------------------------
|
||||
U-Boot SPL | 0xFFFD8000 (160KB) |
|
||||
-----------------------------------------------
|
||||
|
||||
NAND Flash memory Map on T104xRDB
|
||||
------------------------------------------
|
||||
Start End Definition Size
|
||||
0x000000 0x0FFFFF U-Boot 1MB
|
||||
0x180000 0x19FFFF U-Boot env 128KB
|
||||
0x280000 0x29FFFF FMAN Ucode 128KB
|
||||
0x380000 0x39FFFF QE Firmware 128KB
|
||||
|
||||
SD Card memory Map on T104xRDB
|
||||
------------------------------------------
|
||||
Block #blocks Definition Size
|
||||
0x008 2048 U-Boot 1MB
|
||||
0x800 0024 U-Boot env 8KB
|
||||
0x820 0256 FMAN Ucode 128KB
|
||||
0x920 0256 QE Firmware 128KB
|
||||
|
||||
SPI Flash memory Map on T104xRDB
|
||||
------------------------------------------
|
||||
Start End Definition Size
|
||||
0x000000 0x0FFFFF U-Boot 1MB
|
||||
0x100000 0x101FFF U-Boot env 8KB
|
||||
0x110000 0x12FFFF FMAN Ucode 128KB
|
||||
0x130000 0x14FFFF QE Firmware 128KB
|
||||
|
||||
Please note QE Firmware is only valid for T1040RDB
|
||||
|
||||
|
||||
Switch Settings for T104xRDB boards: (ON is 0, OFF is 1)
|
||||
==========================================================
|
||||
NOR boot SW setting:
|
||||
SW1: 00010011
|
||||
SW2: 10111011
|
||||
SW3: 11100001
|
||||
|
||||
NAND boot SW setting:
|
||||
SW1: 10001000
|
||||
SW2: 00111011
|
||||
SW3: 11110001
|
||||
|
||||
SPI boot SW setting:
|
||||
SW1: 00100010
|
||||
SW2: 10111011
|
||||
SW3: 11100001
|
||||
|
||||
SD boot SW setting:
|
||||
SW1: 00100000
|
||||
SW2: 00111011
|
||||
SW3: 11100001
|
||||
|
||||
Switch Settings for T104xD4RDB boards: (ON is 0, OFF is 1)
|
||||
=============================================================
|
||||
NOR boot SW setting:
|
||||
SW1: 00010011
|
||||
SW2: 10111001
|
||||
SW3: 11100001
|
||||
|
||||
NAND boot SW setting:
|
||||
SW1: 10001000
|
||||
SW2: 00111001
|
||||
SW3: 11110001
|
||||
|
||||
SPI boot SW setting:
|
||||
SW1: 00100010
|
||||
SW2: 10111001
|
||||
SW3: 11100001
|
||||
|
||||
SD boot SW setting:
|
||||
SW1: 00100000
|
||||
SW2: 00111001
|
||||
SW3: 11100001
|
||||
|
||||
PBL-based image generation
|
||||
==========================
|
||||
Changes only the required register bit in in PBI commands.
|
||||
|
||||
Provides reference code which might needs some
|
||||
modification as per requirement.
|
||||
example:
|
||||
By default PBI_SRC=14 (which is for IFC-NAND/NOR) in rcw.cfg file
|
||||
which needs to be changed for SPI and SD.
|
||||
|
||||
For SD-boot
|
||||
==============
|
||||
1. Set RCW[192:195], PBI_SRC bits as 6 in RCW file (t1040d4_rcw.cfg type files)
|
||||
|
||||
example:
|
||||
RCW file: board/freescale/t104xrdb/t1040d4_rcw.cfg
|
||||
|
||||
Change
|
||||
66000002 40000002 ec027000 01000000
|
||||
to
|
||||
66000002 40000002 6c027000 01000000
|
||||
|
||||
2. SD does not support flush so remove flush from pbl, make changes in
|
||||
tools/pblimage.c file, Update value of pbl_end_cmd[0] = 0x09138000
|
||||
with 0x091380c0
|
||||
|
||||
For SPI-boot
|
||||
==============
|
||||
1. Set RCW[192:195], PBI_SRC bits as 5 in RCW file (t1040d4_rcw.cfg type files)
|
||||
|
||||
example:
|
||||
RCW file: board/freescale/t104xrdb/t1040d4_rcw.cfg
|
||||
|
||||
Change
|
||||
66000002 40000002 ec027000 01000000
|
||||
to
|
||||
66000002 40000002 5c027000 01000000
|
||||
|
||||
2. SPI does not support flush so remove flush from pbl, make changes in
|
||||
tools/pblimage.c file, Update value of pbl_end_cmd[0] = 0x09138000
|
||||
with 0x091380c0
|
||||
Reference in New Issue
Block a user