[U-Boot-Users] Problem with Linux Porting at the time of memory mapping

Vikrant_Basotra Vikrant_Basotra at Satyam.com
Sun Apr 17 10:29:24 CEST 2005


Hi,

We are having a problem with porting of Linux.

We are using the Linux kernel image modified to work on an EP8248
(having the MPC8248 Processor) Board. U-boot is used as the bootloader
which is working perfectly.We have our board configured the same as the
EP8248 board. We have made no changes to the Kernel Image and it
crashes. The last message it shows on the console is "Uncompressing
Kernel....ok" and the console log_buffer has the following: 

"<6>Memory BAT mapping: BAT2=32Mb, BAT3=0Mb, residual: 0Mb.
<4>Oops: kernel access of bad area, sig: 11.<4>NIP: 00000000 XER:
00000000 LR: 00000000 SP: 00000000 REGS: c0150000 TRAP: 0000    Not
tainted.<4>MSR: 00000000 EE: 0PR: 0 FP: 0 ME:0 IR/DR: 00.<4> TASK =
c014f470[0] 'swapper' Last syscall: 0 .<4>last math 00000000 last
altivec 00000000.<4>Call backtrace: 00000004 ."

The environment variable bootargs is set as :
bootargs=console=ttyS0,115200 root=1f00

But when I changed bootargs to bootargs=console=ttyS0,115200 root=1f00
mem=4M
The contents of the log buffer were as follows:

<4><6>Memory BAT mapping: BAT2=4Mb, BAT3=0Mb, residual: 0Mb.<4>Linux
version 2.4.27-1.3.1-432 (root at pmcserver) (gcc version 3.3.4) #6 Wed Apr
1315:06:06 IST 2005.<4>On node 0 totae 0 tota1024.<4>zone(0): ...4
pages.........................

But this happened only for once, after that it is consistently showing:
<6>Memory BAT mapping: BAT2=16Mb, BAT3=0Mb, residual: 0Mb.<4>Oops:
kernel access of bad area, sig: 11.<4>NIP: 00000000 XER: 00000000 LR:
00000000 SP: 00000000 REGS: c0150000 TRAP: 0000    Not
tainted.<4>MSR:00000000 EE: 0 PR: 0 FP: 0 ME: 0 IR/DR: 00.<4>TA


The EP8248 Board has the following configurations:

1. 8MB Flash 
	Port Size = 32 Bit
	Bottom Boot

2. 16MB SDRAM 
	Port Size = 32 Bit

3. EEPROM

4. Memory Map
=====================================================================
Memory Region            Size                       Address Range
=====================================================================
SDRAM                    16MByte         	       0000_0000 -
00FF_FFFF
Flash                    8MByte               	 FF80_0000 - FFFF_FFFF


The board we are using has 

1. 16MB Flash 
	Port Size = 32 Bit
	Bottom Boot

2. 32MB SDRAM 
	Port Size = 64 Bit

3. No EEPROM

4. Memory Map 
=====================================================================
Memory Region            Size                       Address Range

======================================================================
SDRAM                    32MByte               	0000_0000 - 01FF_FFFF
Flash                    16MByte              	FF00_0000 - FFFF_FFFF


The value of the IMMR in HCRW is both boards is configured to
0xF0000000. The value of IMAP_ADDR in linux/arch/ppc/platforms/ep8248.h
and u-boot/include/configs/ep8248.h is 0xF0000000. The BD_INFO structure
and the values are being passed perfectly from u-boot to Linux. The
cmd_start and cmd_end are also perfect - verified using the memory dump
command in u-boot. 

The Kernel start address is 0xC0000000.

We have performed RAM test through u-boot and it has passed it.


We would be grateful if you could throw more light on where we are going
wrong and help us successful port Linux. If you require any more info I
would be more than glad to provide you with the same.

Thanks and Regards
Vikrant





DISCLAIMER:
This email (including any attachments) is intended for the sole use of the intended recipient/s and may contain material that is CONFIDENTIAL AND PRIVATE COMPANY INFORMATION. Any review or reliance by others or copying or distribution or forwarding of any or all of the contents in this message is STRICTLY PROHIBITED. If you are not the intended recipient, please contact the sender by email and delete all copies; your cooperation in this regard is appreciated.




More information about the U-Boot mailing list