[U-Boot-Users] u-boot 1.1.2 on mpc852t : decrementer exception in interrupt_init()
gautam borad
gautam at eisodus.com
Thu Oct 20 15:00:29 CEST 2005
Vladimir Gurevich wrote:
> Hello Gautam.
>
> gautam borad wrote:
>
>> I'm trying to port u-boot-1.1.2 to mpc852t on ep852 board (from
>> embedded planet). I'm using RPXClassic as reference.
>
>
> I've successfully ported U-boot to EP852 sometime ago. Unfortunately,
> I still didn't get a chance to update to the latest U-boot so that I
> could submit the patches officially. These patches are based on a
> snapshot of U-boot repository made sometime in April 2005, but I hope
> they should apply more or less cleanly to the current source as well.
>
> Give'em a shot if you want and let me know whether they work for you.
>
> Thanks,
> Vladimir
>
Hi,
Thanks for giving the patch. I tried using your patch but it doesnt
work, i get the following on the console:
--------------------------------------------------------------------------------------------------------------------------------------------------------
U-Boot 1.1.3 (Oct 20 2005 - 15:35:24) EP852
CPU: MPC852TxxZPnn at 50 MHz [25.0...125.0 MHz]
4 kB I-Cache 4 kB D-Cache FEC present
Board: EP852 (Rev. e4). CPLD Rev: 00 DIP Switch: 1111
DRAM: 16 MB
FLASH: Bus Fault @ 0x00fab008, fixup 0x00000000
Machine check in kernel mode.
Caused by (from msr): regs 00f5bdd8 Unknown values in msr
NIP: 00FAB008 XER: 20002800 LR: 00FAAF5C REGS: 00f5bdd8 TRAP:
0200 DAR: 7172EEC4
MSR: 00001002 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00
GPR00: FF800000 00F5BEC8 00000000 0000003E 00FCF314 000000C4
00000059 00002088
GPR08: 00000000 FF800000 FF8000C4 FF8000D0 28000022 000080A0
00FCFF00 0179C000
GPR16: 00800080 40002400 00010000 00000035 00000002 00000047
00000002 00000002
GPR24: 00000000 00FCF430 00FCF43C 00000000 00FCF467 00F5BF8C
00FD0548 00FCF314
Call backtrace:
00FAAE94 00FA9F24 00FA4EA8 00F9E3B0
machine check
Bus Fault @ 0x00fa439c, fixup 0x00000000
Machine check in kernel mode.
Caused by (from msr): regs 00f5bc18 Unknown values in msr
NIP: 00FA439C XER: 00002800 LR: 00FA07F4 REGS: 00f5bc18 TRAP:
0200 DAR: 66D64FEB
MSR: 00001002 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00
GPR00: 039A5080 00F5BD08 00000000 00000000 00000000 00000000
00000000 002845D3
GPR08: 00FA3874 FA200000 00000000 00989680 00000000 000080A0
00FCFF00 0179C000
GPR16: 00800080 40002400 00010000 00000035 00001002 00F5BDC8
00000000 00F9E09C
GPR24: 00F9E654 00FCF430 00FCF43C 00000000 00FCF467 00F5BF8C
00FCFF24 00F5BDD8
Call backtrace:
00FA3870 00FA07F4 00F9E730 00F9E09C 00FAAE94 00FA9F24 00FA4EA8
00F9E3B0
machine check
Bus Fault @ 0x00fa439c, fixup 0x00000000
Machine check in kernel mode.
Caused by (from msr): regs 00f5ba58 Unknown values in msr
NIP: 00FA439C XER: 00002800 LR: 00FA07F4 REGS: 00f5ba58 TRAP:
0200 DAR: 00F5BDD8
MSR: 00001002 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00
GPR00: 039A5080 00F5BB48 00000000 00000000 00000000 00000000
00000000 0047D480
GPR08: 00FA3874 FA200000 00000000 00989680 00000000 000080A0
00FCFF00 0179C000
GPR16: 008.
--------------------------------------------------------------------------------------------------------------------------------------------------------
I realized the problem was cfi_flash when i tried it with u-boot 1.1.2
which also gave the above error.(previously it didnt give the above error)
So I took the flash.c file from RPXClassic directory.
The board has 2 AMD AM29LV320MB (8 MB each) flash. In the flash.c the
auto select command (to read manufactor ID) returns 0x227e227e.
However in include/flash.h i have #define AMD_ID_LV320B 0x22F922F9 .
227E227E is defined for AMD_ID_DL640. Why is this so??
I've modified #define AMD_ID_LV320B to 0x227E227E , but is this the
right way??
The flash starts at 0xFF800000.
Got the following dump:
--------------------------------------------------------------------------------------------------------------------------------------------------------
U-Boot 1.1.3 (Oct 20 2005 - 17:29:22) EP852
CPU: MPC852TxxZPnn at 50 MHz [25.0...125.0 MHz]
4 kB I-Cache 4 kB D-Cache FEC present
Board: EP852 (Rev. e4). CPLD Rev: 00 DIP Switch: 1111
DRAM: 16 MB
FLASH: Flash addr:ff800000### ERROR ### Please RESET the board ###
--------------------------------------------------------------------------------------------------------------------------------------------------------
I've made some modifications to the original config files . Here are the
changes:
#define CFG_PRELIM_OR_AM 0xFF800000
#define CFG_OR_TIMING_FLASH (OR_SCY_4_CLK | OR_BI)
#define CFG_BR0_PRELIM 0xFF800001
#define CFG_OR1_PRELIM 0xFF000600
#define CFG_MPTPR MPTPR_PTP_DIV2
#define CFG_BR3_PRELIM 0xFA400001
#define CFG_OR3_PRELIM 0xFF7F8970
#define CFG_PLPRCR 0x000A4000
If I dont give these values the board does not work.I got these values
from the config file i got from embedded planet.
I dont have any other option.Is it OK to modify these values?
Also what actually does U-Boot does when a decrementer exception is
generated?
Please see my previous post. The code gave a decrementer exception went
into timer_interrupt and halted.
Thanks in advance.
More information about the U-Boot
mailing list