We have a custom board with LS1012A-Rev1.
Using PBL_0x35_0x08_800_250_1000_default.bin supplied in the LSDK, the CPU works perfectly with u-boot, linux and SD-card, but we cannot get the board to run with a custom RCW we generate with Processor Expert in CodeWarrior 11.3.0.
As a basic test we did the following procedure:
1) Start a new Quoriq configuration project
2) import PBL_0x35_0x08_800_250_1000_default.bin from LSDK into the PBL in Processor Expert (Ignore constraints and non-critical errors enabled). Not touching iany registers.
3) Generate RCW with Processor Expert.
4) Upload RCW to board with Codewarrior TAP (erase, program, validate).
5) Reset board
6) The board will not load u-boot and asserts RST REQ low.
7) Uploading PBL_0x35_0x08_800_250_1000_default.bin, and the board works again
A binary compare of the original file and the generated file reveals that something has changed. Both files attached.
We need to control the RCW to get all features on our board up and running.
Thanks in advance for any assistance on this subject!
Eivind
Solved! Go to Solution.
Confirmed in our end as well.
Step-by step re-generating LS1012ARDB RCW from SDK with QCVS:
1) Start Codewarrior 11.3.0, running QCVS 4.2.0 Build: 0001-20180118
2) Create new Quoriq Configuration project called nxptest, select cpu LS1012A rev 1.0
3) Select PBL component
4) Import configuration from existing PBL file
5) Select PBL_0x35_0x08_800_250_1000_default.bin, file format binary.
6) Receive warning -> Turn on “Ignore constraints and non-Critical errors”.
7) Check Configuration Registers: RCWSR6 is 11??000??????00??????000?100
8) In component inspector: Change RCW source to Quad SPI.
9) Save all
10) Select PBL:PBL in components explorer and push the “Generate Processor Expert Code” button (Document with brown arrow)
11) PBL_swapped_CRC_not_swapped.bin is generated by PE.
This was replicated on a different PC running the same software versions.
> select cpu LS1012A rev 1.0
I do not see the issue for the Rev.2.0
Version 4.12.0
Build: 0001-20180118
Do you see that the RCWSR06[SRDS1_REFCLK_SEL]=0 immediately after importing the "PBL_0x35_0x08_800_250_1000_default.bin"?
Please provide step-by-step explanation of the "PBL_swapped_CRC_not_swapped.bin.zip" generation.
Additional information: Its a bit in RCWSR06 that changed during import of the original file. It seems it is SRDS1_REFCLK_SEL. Not available for manipulation from PE.
Which QCVS version is used?
I do not see the reported issue with the 4.12.0