Flashing instructions for MPC8315E-RDBA board

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Flashing instructions for MPC8315E-RDBA board

1,329 Views
eduardbartosh
Contributor II

Hi,

Can anybody explain how to flash u-boot on NOR flash of MPC8315E-RDBA board?

I'm using CodeWarrior 8.8 + patch 8.8.6 and CodeWarrior TAP.

I tried all possible combination of CW flasher with no visible result so far. Please, help.

Thank you,

Ed

8 Replies

1,109 Views
wallyqin
Contributor I

=== Execute: Blank Check

=== Timestamp:  Tue May 26 19:19:15 2020

=== Flash Device:             S29GL256P

=== Flash Organization:   16Mx16x1

=== Flash Mem Start Addr: 0xFE000000

=== Flash Mem End Addr:   0xFFFFFFFF

Informing other connection clients that the target is being 'clobbered'.
Loading Flash Utility Driver at: 0x00000000

Performing Blank Check from 0xFE000000 to 0xFE01FFFF ... 65536 Failures

Non Blank Found at 0xFE000000 expected: FF actual: 00
Non Blank Found at 0xFE000002 expected: FF actual: 00
Non Blank Found at 0xFE000004 expected: FF actual: 00
Non Blank Found at 0xFE000006 expected: FF actual: 00
Non Blank Found at 0xFE000008 expected: FF actual: 00
Non Blank Found at 0xFE00000A expected: FF actual: 00
Non Blank Found at 0xFE00000C expected: FF actual: 00
Non Blank Found at 0xFE00000E expected: FF actual: 00
Non Blank Found at 0xFE000010 expected: FF actual: 00
Non Blank Found at 0xFE000012 expected: FF actual: 00
Non Blank Found at 0xFE000014 expected: FF actual: 00
Non Blank Found at 0xFE000016 expected: FF actual: 00

what is reason for eraze flash for MPC8315?

0 Kudos

1,109 Views
eduardbartosh
Contributor II

Hi Alexander,

Thank you!

I was able to flash u-boot, load kernel and dtb from ext partition on usb stick and boot the board!

I set offset address to 0xff800000 and that did the trick! So, step 5 of your instructions should mention offset address  0xff800000 instead of 0xfe000000. This part is still a bit confusing as 0xfe000000 mentioned in other sources as a starting address of NOR flash for this board.

Other than that the procedure you've explained worked just fine for me. Thank you very much!

Regards,

Ed

0 Kudos

1,109 Views
eduardbartosh
Contributor II

Hi Alexander,

Are you suggesting to set start address to 0xFE000000 in .cfg file and start again?

May I ask why the address is 0xFF800000 in 8315RDB_NOR_FLASH.xml ? Is it just incorrect or this xml is not exactly for my board or anything else?

Where can I get 8315_8M_diag_p2.bin file mentioned in your instructions?

Thank you!

0 Kudos

1,109 Views
alexander_yakov
NXP Employee
NXP Employee

The cfg file contains the following initialization for OR0/BR0 registers:

# WINDOW 0 - NOR FLASH
writemem.l 0xe0000020 0xff800000 # LBLAWBAR0  - begining at 0xff800000
writemem.l 0xe0000024 0x80000016 # LBLAWAR0   - enable, size = 8MB

This means you will have 8MB starting from 0xff800000, and flashing this flash should be done with starting address 0xff800000. I see no reason to change cfg file and modify starting address, you can leave it as is, but modify your flash programmer settings to 0xff800000 starting address

Binary files are distributed as a part of Linux BSP image *.iso file, please mount and check /images/ folder.

1,109 Views
alexander_yakov
NXP Employee
NXP Employee

 (For a new board, please set S3 to 1011 (off-on-off-off) for a default HCW)

 

  1. Open “Tools” à “Flash Programmer” panel.
  2. Click “Load Settings …” button and select 8315RDB_NOR_FLASH.xml file.
  3. Click the “Target Configuration” tag at the left hand side navigation panel, and select the “Use Target initialization” checkbox. Ensure the correct path for the MPC8315E-RDB configuration file (8315-rdb_init.cfg) is listed at the textbox nearby.
  4. Click “Erase / Blank Check” tag at the left hand side navigation panel and select “All Sectors” checkbox. Click the “Erase” button. Few minutes would be taken for erasing non-empty NOR flash. “Erase Command Succeeded” would be shown at the “Status” textbox once the erase process complete.
  5. Click “Program / Verify” tag at the left hand side navigation panel. Ensure the correct path of the 8 MByte combined image (8315_8M_diag_p2.bin), and applies offset address at 0xfe00_0000. Click the “Program” button to start the programming process. Few minutes would be taken for the flash process to complete. “Program Command Succeeded” would be shown at the “Status” textbox once the program process complete.


After programming the NOR flash, power down the board and detach the USBTap. Power-up the board again and system booting up messages have been shown at the COM1terminal emulation program.

Note

To power down the board, press the Power On (S2) button and hold till the LEDs (D22 and D15) are gone.

 
Have a great day,
Alexander
TIC

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

1,109 Views
eduardbartosh
Contributor II

Hi Alexander,

I've managed to erase the flash after setting S3 to 1011 as you've suggested. Thank you!

Step 4 still doesn't work for me. It complains that 0xFE000000 is not within flash boundaries, which is true as flash starts from 0xFF800000.

I've read somewhere in u-boot sources that 0xFE000000 is the start of NOR flash on this board. Now I'm confused as CW used 0xFF800000 as a base address. Please, help.

Here is the log:

Programming file C:\Users\IEUser\Temp\u-boot.bin

Using Algorithm: amd16x1.elf

 

======================================================================

=== Target Configuration Settings

=== Connection:    CodeWarrior USB TAP

=== Target Processor: 8315

=== Target Init File: C:\Program Files\Freescale\CodeWarrior PA V8.8\PowerPC_EABI_Support\Initialization_Files\PQ2\8315RDB_init.cfg

======================================================================

Connecting......Connected

======================================================================

=== Execute: Program

=== Timestamp:  Mon Jun  5 07:14:11 2017

=== Flash Device:                S29GL064M(R5,R6,R7)

=== Flash Organization:   4Mx16x1

=== Flash Mem Start Addr: 0xFF800000

=== Flash Mem End Addr:   0xFFFFFFFF

======================================================================

Informing other connection clients that the target is being 'clobbered'.

Loading Flash Device Driver at: 0x00002000

Flash Driver Buffer is at:        0x00003D70

Flash Driver Buffer Size is:    0x0005E290

Done

Initialization Command Succeeded

0x00010000 bytes of Target Memory at 0xFE000000 is not within flash boundaries.

Timestamp:  Mon Jun  5 07:14:18 2017

0 Kudos

1,109 Views
alexander_yakov
NXP Employee
NXP Employee

Flash start address is configurable and actually configured in *.cfg file

0 Kudos

1,109 Views
eduardbartosh
Contributor II

Hi Alexander,

Thank you very much for the detailed instructions!

Unfortunately I was not able to even erase the flash. I've got "Error: Connect Failed: See Details for additional information"

Here is a log:

======================================================================

=== Target Configuration Settings

=== Connection:    CodeWarrior USB TAP

=== Target Processor: 8315

=== Target Init File: C:\Program Files\Freescale\CodeWarrior PA V8.8\PowerPC_EABI_Support\Initialization_Files\PQ2\8315RDB_init.cfg

======================================================================

Connecting...

Flash Programmer: CCSProtocolPlugin::Could not connect to the requested core core #0.

Timestamp:  Mon Jun  5 03:17:21 2017

It's not a new board, so I didn't set S3 to 1011 as you've suggested. S3 is on-on-on-on and S4 off-off-off-off.

I also noticed that D15 led is always off even when device is powered up.

Can you suggest how to proceed further?

Regards,

Ed

0 Kudos