[U-Boot-Users] The problem on porting to similar FADS860 board
John
john at gelake.com
Tue May 13 15:40:25 CEST 2003
Thank you very much!
But, I built same codes in rominit.S based on Vxworks, the LED is lighting.(
codes is following ) What's problem in u-boot? is it possible to change the IMMR
address by me? Next, are there any introduction on the file of u-boot.lds or how
to modify it according to customized board?
because it is my personal interest in u-boot, so I have no debuger as BDI on
hand and only to debug the U-boot using lighting LEDs on board. Is there lower
cost debuger to be ordered ?
Next, can anyone help give the used assemble codes to light LED? I'm not
familiar with assemble.
any help are appreciated!
--------------------------------------------------------
located in /target/config/my860board/rominit.s
_rominit:
rominit:
lis r3, 0x220 /* my IMMR addr is 0x2200000 */
ori r3, r3, 0x0000
mtspr 638, r3 /*IMMR SPR is 638*/
bl testLed /* this is to light LEDs on board(PA0 - PA3)*/
--------------------------------------------------------------------------
located in /target/config/all/bootinit.c
void testLed(void)
{
int i,k;
for(k=0;k<5;k++)
{
* ( (volatile unsigned short *) (0x2200000 + 0x950) ) = 0xA000; /* light LED
*/
for (i=0; i<0xFFFF;i++)
{;};
* ( (volatile unsigned short *) (0x2200000 + 0x950) ) = 0x0000; /* unlight
LED */
for (i=0; i<0xFFFF;i++)
{;};
};
};
----- Original Message -----
From: "Wolfgang Denk" <wd at denx.de>
To: "John" <john at gelake.com>
Cc: <u-boot-users at lists.sourceforge.net>
Sent: Tuesday, May 13, 2003 4:15 PM
Subject: Re: [U-Boot-Users] The problem on porting to similar FADS860 board
| Dear John,
|
| in message <001d01c31902$4c141780$844da93d at john> you wrote:
| >
| > I've checked the archives, but have not found anyone using the 860 with my
| > problem.
| >
| > I have a MPC860 board ported from FADS860 board. ( TEXT_BASE is also
0x2800000,
| > but IMMR is 0x2200000). I have vxworks run OK on it. But when I am porting
|
| Don;t do thiis. There is good reason NOT to chose an IMMR address
| below 0xF0000000 - at least if you intend to run Linux one day.
|
| > For Example as following: (ELDK1.0 + U-boot-0.3.0)
| > --------------------------------------------------------
| > located in /cpu/mpc8xx/start.S
| > .globl _start
| > .extern testLed
| > _start:
| > lis r3, 0x220 /* my IMMR addr is 0x2200000 */
| > ori r3, r3, 0x0000
| > mtspr 638, r3 /*IMMR SPR is 638*/
| >
| > bl testLed /* this is to light LEDs on board(PA0 - PA3)*/
| > ----------------------------------------------------------
| > located in /cpu/mpc8xx/cpu_init.c
| > void testLed(void)
| > {
| > int i,k;
| > for(k=0;k<5;k++)
| > {
|
| This cannot work. You added your code much too early, where no stack
| has been set up yet.
|
| My recommendation is not to change cpu/mpc8xx/start.S if you don't
| know EXACTLY what you are doing. If you want to insert your own debug
| code written in C, then you cannot do this before the comment reading
| "let the C-code set up the rest" (but then you can alos include your
| code in cpu_init_f().
|
|
| Also, you should get yourself a BDI2000 so you can debug your system.
|
|
| Best regards,
|
| Wolfgang Denk
|
| --
| Software Engineering: Embedded and Realtime Systems, Embedded Linux
| Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: wd at denx.de
| There are bugs and then there are bugs. And then there are bugs.
| - Karl Lehenbauer
|
More information about the U-Boot
mailing list