Introduction.
CodeWarrior TAP combined with a host debugger provide control and visibility into your target embedded system through a debugging process.
Main tasks to test a Reference Design Board with are:
Flash an storage device for userspace debugging and recovering a board.
RCW and PBL configuration.
DDR and SerDes configuration.
DDR and SerDes validation.
U-Boot and Kernel debug
For all of them and every activity involving real hardware, a link is needed nevertheless is a very straightforward process that is going to be crawled in this document.
Hardware List.
CodeWarrior TAP USB cable. USB A-Mini-B.
CodeWarrior TAP TIP CWH-CTP-CTX10-YE. COP connector.
CodeWarrior TAP Base Unit. CWH-CTP-BASE-HE.
Host computer.
Processor:
Windows® OS: Intel® Pentium® 4 processor, 2 GHz or faster, Intel® Xeon™, Intel® Core™, AMD Athlon™ 64, AMD Opteron™, or later
Linux® OS: 1.8 GHz Intel® Pentium® class processor (or better). 64-bit host OS required.
Operating System:
Microsoft® Windows 7 64-bit
Microsoft® Windows 10 64-bit
RHEL 7.8, 8.2 64-bit
CentOS 7.8, 8.2 64-bit
Ubuntu 16.04 64-bit
Ubuntu 18.04 64-bit
Ubuntu 20.04 64-bit
Fedora 31 64-bit
Mint 19.3 64-bit
Memory.
At least 2 GB of RAM
At least 3 GB of free disk space
NXP Reference Board featuring.
LS2088A.
LS1012A.
LS1043A.
LS1088A.
LS1046A.
Power-up set-up.
Connect debugger and target's end to each other, while both of them are powered off.
Connect TAP TIP multipin connector to TAP multipin socket pushing them.
Ribbon cable red side has to be on TIP pin 1 side and Target COP pin 1 side, look for CPU/Processor silkscreen and pin 1 label. See below examples.
Note that CPU JTAG silkscreen label is in the red box, but also may be visible the 1 label.
Power up CWTAP. The most efficient way to set up CWTAP is using USB cable, due to can be both powered and communicated with just one cable. Connect USB to Host PC and wait for TX LED to go green blinking.
If communication is directly to host, considerate that you'll be joined into a private network and you will not have internet access.
Power up Target. Connect target to DC supply and turn on power switch and press reset button (needed for boards which don't have a power switch).
Create a connection in CodeWarrior.
Open CodeWarrior previously previously set up and with a workspace selected. Make sure that Target Connections window is visible, if not, look for it in Window > Show view > Other.
Every target connection desired has to be based on CW predefined board connections.
Predefined connections are processor oriented and have a default configuration, you cannot and should not override this values, e.g., MAC field for TAP probe, you should duplicate and then customize it.
Click on the reference board that you have, then duplicate, name new target and save.
Double click or click edit to enter TAP MAC value.
Settings are initialized based on the duplicated board, it's recommended to just update MAC. Click on look for probes, select the one that matches your MAC and save.
Save.
Serial number field is updated and you are notified of unsaved changes, is the asterisk at the left of your duplicate name, save (ctrl + s) and you may close the connection data is done now.
Open a project or create a new one.
I created a new project to simply read RCW inside NOR Flash Bank 0 of LS1043ARDB following the below process.
Then, open Connections View to test the new connection based on custom connection data created before.
Click on recheck connection button (green play button) and connection status should change from no-link (connection button right side) to connection working.
Diagnose connection.
Go to Target Connections view and click diagnose connection, Connection Diagnostics view should be popped up and log different tests to ensure that there is a target connection and SOC modules are accessible.
At this point, the connection is made and is already tested, but in this document, RCW will also be dumped into our project just to work ourselves with the connection already made.
Under Component Inspector view go to Import tab, select Import From Target and click Read from target.
Results are display in text box as:
RCWSR registers were successfully read from the target and imported!
RCWSR1:0x08100010
RCWSR2:0x0A000000
RCWSR3:0x00000000
RCWSR4:0x00000000
RCWSR5:0x14550002
RCWSR6:0x80004012
RCWSR7:0xE0025000
RCWSR8:0xC1002000
RCWSR9:0x00000000
RCWSR10:0x00000000
RCWSR11:0x00000000
RCWSR12:0x00038800
RCWSR13:0x00000000
RCWSR14:0x00001101
RCWSR15:0x00000096
RCWSR16:0x00000001
That should save a connection to a CWTAP to reuse with that same MAC intended to a any RDB that features the selected processor. Later on you can recover LS Series processors, flash, configure or validate a board. Please ask any question you may have.
Best regards, Joseph
View full article