Re: Linux on Au1350 using Yamon

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Sanjay Kumar wrote:
> Hi ,
> 
> We are trying to port Linux on Au1350 Board. We are using Linux port of db1300 board. We have Yamon bootloader running on the board.
> 
> The board does not have Ethernet port ,so we are loading Linux and rootfile system thru serial port and running using "go" command from Yamon. Linux is working as expected.
> 
> We have BDI3000 debugger and was wondering if it is possible to load the kernel and rootfile system to SDRAM using the debugger and execute it using Yamon ?
> 
> 
> 
> I tried this but could not succeed . Below are the steps I tried :
> 
> 
> 
> 1. Start Yamon using BDI.
> 
> 2. Halt the CPU and dump the kernel and rootfile system to SDRAM at free memory location ( 0x80093bf8 as per Yamon prompt).
> 
> 3. We observed TLB exception while loading .
> 
>    "
> 
>    Au1350>load 0x80093bf8 vmlinux-rmi.srec srec

I'm not sure if BDI can load .srec file, unless it can parse srec syntax.

> 
>    Loading vmlinux-rmi.srec , please wait ....
> 
>    # TLB exception raised
> 
>    "
> 
>    If we reset the target using BDI reset command and then load is successful.
> 
> 
> 
> 4. After load we gave go command from BDI to start the yamon.
> 
> 5. Memory dump from Yamon shows correct download , but when I gave go command followed by load address its giving exception.
> 

You should dump memory to compare vmlinux directly, not vmlinux.srec. .srec did
wrapper on vmlinux.

> "                                                      
> 
> YAMON> go 0x80093bf8  

And this is not correct start address since the start address is not same as
load address on YAMON.

Firstly you should get the offset from entry address to load address on vmlinux.
You can refer to Makefile and System.map. Then add this offset on your real load
address to get your real entry address.

Best Regards
Tiejun


> 
>                                                                                 
> 
> * Exception (user) : TLB (load or instruction fetch) *                          
> 
>                                                                                 
> 
> CAUSE    = 0x00808008  STATUS   = 0x00000002                                    
> 
> EPC      = 0x8010201c  ERROREPC = 0xb02f52ce                                    
> 
> BADVADDR = 0x000008c2                                                           
> 
>                                                                                 
> 
> $ 0(zr):0x00000000  $ 8(t0):0x00000000  $16(s0):0x00000000  $24(t8):0x00000000  
> 
> $ 1(at):0x00000000  $ 9(t1):0x00000000  $17(s1):0x00000000  $25(t9):0x00000000  
> 
> $ 2(v0):0x00000000  $10(t2):0x00000000  $18(s2):0x00000000  $26(k0):0x00000000  
> 
> $ 3(v1):0x00000000  $11(t3):0x00000000  $19(s3):0x00000000  $27(k1):0x00000000  
> 
> $ 4(a0):0x00000001  $12(t4):0x00000000  $20(s4):0x00000000  $28(gp):0x00000000  
> 
> $ 5(a1):0x80087340  $13(t5):0x00000000  $21(s5):0x00000000  $29(sp):0x80093be8  
> 
> $ 6(a2):0x00000000  $14(t6):0x00000000  $22(s6):0x00000000  $30(s8):0x80093be8  
> 
> $ 7(a3):0x10000000  $15(t7):0x00000000  $23(s7):0x00000000  $31(ra):0x8002f608  
> 
>                                                                                 
> 
> YAMON>
> 
> "
> 
> 
> 
> Any suggestion will be highly appreciated.
> 
> 
> 
> Thanks
> 
> Sanjay
> 
> 



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux