bdi
GDB
for BDI3000 (QorIQ P3/P4/P5)
User Manual
23
© Copyright 1997-2012 by ABATRON AG Switzerland
V 1.03
WTLB mas1_mas2 mas0/mas7_mas3
Adds an entry to the TLB0 or TLB1 array. The two 64-bit values of an init
list entry are used to define MAS0 (upper 16 bits), MAS1, MAS2, MAS3
and MAS7 (lower 16 bits) before a tlbwe instruction is executed. If other
MASx registers needs a special value, use the WSPR init list entry. A TLB
entry can also be addd via a Telnet command (enter WTLB at the telnet
for a description).
mas1
value to load into MAS1
mas2
value to load into MAS2 (only lower 32 bits)
mas3
value to load into MAS3
mas0
value to load into upper 16-bits of MAS0
mas7
value to load into lower 16-bits of MAS7
Some examples how to write TLB entries:
; Setup TLB1
; MAS1 MAS2 MAS0/MAS7 MAS3
WTLB 0x80000700_0xfe00000a 0x10010000_0xfe00003f ;1/1: fe000000->0_fe000000 16MB -I-G- RWXRWX
WTLB 0x80000900_0xe000000a 0x10020000_0xe000003f ;1/2: e0000000->0_e0000000 256MB -I-G- RWXRWX
WTLB 0x80000a00_0x00000000 0x10030000_0x0000003f ;1/3: 00000000->0_00000000 1GB ----- RWXRWX
WTLB 0x80000a00_0x40000000 0x10040000_0x4000003f ;1/4: 40000000->0_40000000 1GB ----- RWXRWX
WTLB 0x80000500_0x80000000 0x10050000_0x8000003f ;1/5: 80000000->0_80000000 1MB ----- RWXRWX
; Setup TLB0
; MAS1 MAS2 MAS0/MAS7 MAS3
WTLB 0x80000100_0xc0000000 0x00000000_0x0000003f ;WAY0: c0000000->0_00000000 4KB ----- RWXRWX
WTLB 0x80000100_0xc0001000 0x00000000_0x0000103f ;WAY0: c0001000->0_00001000 4KB ----- RWXRWX
WTLB 0x80000100_0xc0002000 0x00000000_0x0000203f ;WAY0: c0002000->0_00002000 4KB ----- RWXRWX
WTLB 0x80000100_0xc0003000 0x00000000_0x0000303f ;WAY0: c0003000->0_00003000 4KB ----- RWXRWX
;
In order to set the upper 32 bits of MAS2 in 64-bit mode write directly to MAS2:
WREG MAS2 0x00000064_0x00000000 ;set MAS2 upper word
WTLB 0x80000700_0xff00000a 0x10060000_0xff00003f ;1/1: 64_ff000000->0_ff000000 16MB -I-G- RWXRWX
MAS2 is a predefined register name but WSPR will also work.
WSPR 626 0x00000064_0x00000000 ;set MAS2 upper word
WTLB 0x80000700_0xff00000a 0x10060000_0xff00003f ;1/1: 64_ff000000->0_ff000000 16MB -I-G- RWXRWX