[U-Boot-Users] Booting MPC8272ADS from flash base

Hi list,
I would like to boot my MPC8272ADS board from the base of flash memory. By default the BCSR delivers a fixed HRCW which tells the CPU to boot from 0xff700000. But there is a jumper on the board which allows you to specify that the CPU should retrieve the HRCW from flash.
In an attempt to get it to boot from 0x0 I tried the following:
1. Moved jumper JP9 from "BCSR" to "MEMORY" to tell the CPU to get its HRCW from flash rather than the BCSR.
2. Set TEXT_BASE in config.mk to 0x0
3. define CFG_HRCW_MASTER in MPC8260ADS.h to be the value normally delivered by the BCSR or'd with (HRCW_CIP | HRCW_BMS). This should move the reset vector from 0xfff00100 to 0x100 and cause the flash to be mapped from 0x0 to 0x01ffffff.
Unfortunately this didn't work.
Has anybody else managed to get the MPC8272ADS to boot WITHOUT using the BCSR to deliver the HRCW?
Regards,
Alex

Alex Zeffertt wrote:
Hi list,
I would like to boot my MPC8272ADS board from the base of flash memory. By default the BCSR delivers a fixed HRCW which tells the CPU to boot from 0xff700000. But there is a jumper on the board which allows you to specify that the CPU should retrieve the HRCW from flash.
In an attempt to get it to boot from 0x0 I tried the following:
Moved jumper JP9 from "BCSR" to "MEMORY" to tell the CPU to get its HRCW from flash rather than the BCSR.
Set TEXT_BASE in config.mk to 0x0
define CFG_HRCW_MASTER in MPC8260ADS.h to be the value normally delivered by the BCSR or'd with (HRCW_CIP | HRCW_BMS). This should move the reset vector from 0xfff00100 to 0x100 and cause the flash to be mapped from 0x0 to 0x01ffffff.
Unfortunately this didn't work.
Has anybody else managed to get the MPC8272ADS to boot WITHOUT using the BCSR to deliver the HRCW?
Regards,
Alex
Hi Alex,
I did this for the PQ2FADS board, which should be very similar to the MPC8260ADS board. Check out the "bootlow" configuration for PQ2FADS.
I cannot give you specific advice, but I would review each and every bit in the HRCW (step #3 doesn't sound thorough enough). Ahhh, looking at my patch email (below), the IMMR that your board defaults to may not be a happy choice.
References: ----------- Gmane archive, includes the patch Wolfgang applied. http://search.gmane.org/?query=PATCH%3A+add+low-boot+configuration+to+MPC8260ADS+family+of+boards+&email=&group=&sort=relevance&DEFAULTOP=and&xP=patch.add.low.boot.configuration.mpc8260ads.family.boards.&xFILTERS=Gu-boot---A
Sourceforge's email list (no attachments): http://sourceforge.net/mailarchive/message.php?msg_id=9992822
Follow-up posting: http://article.gmane.org/gmane.comp.boot-loaders.u-boot/17917
gvb

On Thu, 13 Oct 2005 07:55:36 -0400 Jerry Van Baren gerald.vanbaren@smiths-aerospace.com wrote:
Alex Zeffertt wrote:
Hi list,
I would like to boot my MPC8272ADS board from the base of flash memory. By default the BCSR delivers a fixed HRCW which tells the CPU to boot from 0xff700000. But there is a jumper on the board which allows you to specify that the CPU should retrieve the HRCW from flash.
In an attempt to get it to boot from 0x0 I tried the following:
Moved jumper JP9 from "BCSR" to "MEMORY" to tell the CPU to get its HRCW from flash rather than the BCSR.
Set TEXT_BASE in config.mk to 0x0
define CFG_HRCW_MASTER in MPC8260ADS.h to be the value
normally delivered by the BCSR or'd with (HRCW_CIP | HRCW_BMS). This should move the reset vector from 0xfff00100 to 0x100 and cause the flash to be mapped from 0x0 to 0x01ffffff.
Unfortunately this didn't work.
Has anybody else managed to get the MPC8272ADS to boot WITHOUT using the BCSR to deliver the HRCW?
Regards,
Alex
Hi Alex,
I did this for the PQ2FADS board, which should be very similar to the MPC8260ADS board. Check out the "bootlow" configuration for PQ2FADS.
I cannot give you specific advice, but I would review each and every bit in the HRCW (step #3 doesn't sound thorough enough). Ahhh, looking at my patch email (below), the IMMR that your board defaults to may not be a happy choice.
Hi Jerry,
Thanks for writing back. I've had a go with your patch but I still can't get it to work! I think I've tried every combination now....
Alex

Alex Zeffertt writes:
Alex> Hi list, I would like to boot my MPC8272ADS board from the Alex> base of flash memory. By default the BCSR delivers a fixed Alex> HRCW which tells the CPU to boot from 0xff700000.
No, it tells CPU to boot from 0xfff00000. There are only two possible start addresses: 0x100 and 0xfff00100.
Alex> But there is a jumper on the board which allows you to specify Alex> that the CPU should retrieve the HRCW from flash.
Alex> In an attempt to get it to boot from 0x0 I tried the Alex> following:
Alex> 1. Moved jumper JP9 from "BCSR" to "MEMORY" to tell the CPU to Alex> get its HRCW from flash rather than the BCSR.
Correct. Also make sure it boots from flash and not from EEPROM (SW2 #1).
Alex> 2. Set TEXT_BASE in config.mk to 0x0
This is wrong. You have to set TEXT_BASE to the address at which you will burn the U-Boot image to flash. If you're going to burn U-Boot to the first flash sector, TEXT_BASE must be equal to CFG_FLASH_BASE.
Alex> 3. define CFG_HRCW_MASTER in MPC8260ADS.h to be the value Alex> normally delivered by the BCSR or'd with (HRCW_CIP | Alex> HRCW_BMS). This should move the reset vector from Alex> 0xfff00100 to 0x100
Correct.
Alex> and cause the flash to be mapped from Alex> 0x0 to 0x01ffffff.
Initially mapped. It's remapped to CFG_BR0_PRELIM by the U-Boot's code. This is the reason why TEXT_BASE=0 can't work.
Alex> Unfortunately this didn't work.
Alex> Has anybody else managed to get the MPC8272ADS to boot WITHOUT Alex> using the BCSR to deliver the HRCW?

On Thu, 13 Oct 2005 19:51:29 +0200 Yuli Barcohen yuli@arabellasw.com wrote:
Alex> 2. Set TEXT_BASE in config.mk to 0x0
This is wrong. You have to set TEXT_BASE to the address at which you will burn the U-Boot image to flash. If you're going to burn U-Boot to the first flash sector, TEXT_BASE must be equal to CFG_FLASH_BASE.
Yippee! I've finally done it. Thanks Yuli - your advice was what I was missing.
For the record here is the change I needed to make to u-boot-1.1.3.
Index: board/mpc8260ads/config.mk =================================================================== RCS file: /newcvs/pq2-linux/u-boot/board/mpc8260ads/config.mk,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 config.mk --- board/mpc8260ads/config.mk 24 Aug 2005 12:16:55 -0000 1.1.1.1 +++ board/mpc8260ads/config.mk 14 Oct 2005 08:36:46 -0000 @@ -29,4 +29,4 @@ # MPC8260ADS, MPC8266ADS, and PQ2FADS-ZU/VR boards #
-TEXT_BASE = 0xfff00000 +TEXT_BASE = 0xff800000 Index: include/configs/MPC8260ADS.h =================================================================== RCS file: /newcvs/pq2-linux/u-boot/include/configs/MPC8260ADS.h,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 MPC8260ADS.h --- include/configs/MPC8260ADS.h 24 Aug 2005 12:17:01 -0000 1.1.1.1 +++ include/configs/MPC8260ADS.h 14 Oct 2005 08:36:46 -0000 @@ -294,13 +294,8 @@ #define CFG_GBL_DATA_OFFSET (CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE) #define CFG_INIT_SP_OFFSET CFG_GBL_DATA_OFFSET
+#define CFG_HRCW_MASTER 0x0e72b605 /* like BCSR version, but with CIP=1, BMS=1 */
-/* 0x0EA28205 */ -#define CFG_HRCW_MASTER ( ( HRCW_BPS11 | HRCW_CIP ) |\ - ( HRCW_L2CPC10 | HRCW_DPPC10 | HRCW_ISB010 ) |\ - ( HRCW_BMS | HRCW_APPC10 ) |\ - ( HRCW_MODCK_H0101 ) \ - ) /* no slaves */ #define CFG_HRCW_SLAVE1 0 #define CFG_HRCW_SLAVE2 0
Thanks again,
Alex
participants (3)
-
Alex Zeffertt
-
Jerry Van Baren
-
Yuli Barcohen