2008-10-23 15:34:44     Did I mess up the BF548 board?

Document created by Aaronwu Employee on Sep 18, 2013
Version 1Show Document
  • View in full screen mode

2008-10-23 15:34:44     Did I mess up the BF548 board?

Dong Ye (UNITED STATES)

Message: 64134   

 

OK, I was able to load a u-boot548_uart.ldr (I name the file name according to their identities so save some typing) via UART.

 

I configured tftp server on my Linux host, I didn't set up a DHCP server as I intended to configure the board to use static ip.

 

Once I got the "bfin>" prompt, I did the following session:

 

bfin> setenv ipaddr blah.blah

bfin> setenv gatewayip blah.blah

bfin> setenv netmask blah.blah

bfin> setenv serverip blah.blah

bfin> save

Saving Environment to Flash...

. done

Un-Protected 1 sectors

Erasing Flash...

. done

Erased 1 sectors

Writing to Flash... done

. done

Protected 1 sectors

bfin> tftp 0x1000 u-boot548_spi.ldr

start Auto negotiation... (take ~2sec)

Auto negotiation complete, 100BaseTX, full duplex

TFTP from server x.x.x.x; our IP address is y.y.y.y; sending through gateway z.z.z.z

Filename 'u-boot548_spi.ldr'.

Load address: 0x1000

Loading: T ########################################

done

Bytes transferred = 209164 (3310c hex)

bfin> go 0x1000

## Starting application at 0x00001000 ...

 

Ack! Something bad happened to the Blackfin!

 

SEQUENCER STATUS:

SEQSTAT: 00000021  IPEND: 3fa00aa  SYSCFG: 0032

  HWERRCAUSE: 0x0

  EXCAUSE   : 0x21

  physical IVG7 asserted : <0x03fa0264> { _evt_default + 0x0 }

RETE: <0x0c04f874> { ___udivdi3 + 0x8096020 }

RETN: <0x100b3064> { ___udivdi3 + 0xc0f9810 }

RETX: <0x00001006> /* unknown address */

RETS: <0x03faa1aa> { _do_go + 0x62 }

PC  : <0x03fa00aa> { _start + 0xaa }

DCPLB_FAULT_ADDR: <0x03efc014> /* unknown address */

ICPLB_FAULT_ADDR: <0x00001006> /* unknown address */

 

PROCESSOR STATE:

R0 : 03efbed5    R1 : 03efbed4    R2 : 03efba9e    R3 : ffffffff

R4 : 00000000    R5 : 00000000    R6 : 03efbed4    R7 : 00000001

P0 : 00000004    P1 : 00000128    P2 : ffe00004    P3 : 00000002

P4 : 00000000    P5 : 03efc000    FP : 03efbcd9    SP : 03efbac4

LB0: 03fb9758    LT0: 03fb974c    LC0: 00000000

LB1: 03fb2e0a    LT1: 03fb2e04    LC1: 00000000

B0 : ffb00400    L0 : 00000000    M0 : febffd2b    I0 : 00001000

B1 : 00000000    L1 : 00000000    M1 : f952dfcb    I1 : 03fcab8c

B2 : 00000000    L2 : 00000000    M2 : f6ff75ab    I2 : 7a3cf04a

B3 : 00000000    L3 : 00000000    M3 : 4dbedd59    I3 : f676b3be

A0.w: 5f436db7   A0.x: 00000000   A1.w: 0000977b   A1.x: 00000000

USP : ffb00ffc  ASTAT: 00000000

 

Hardware Trace:

   0 Target : <0x03fa0734> { _bfin_panic + 0x0 }

     Source : <0x03fa08ac> { _trap_c + 0x13c }

   1 Target : <0x03fa08a0> { _trap_c + 0x130 }

     Source : <0x03fa078c> { _trap_c + 0x1c }

   2 Target : <0x03fa0770> { _trap_c + 0x0 }

     Source : <0x03fa020a> { _trap + 0x56 }

   3 Target : <0x03fa01b4> { _trap + 0x0 }

     Source : <0x00001004> /* unknown address */

   4 Target : <0x00001000> /* unknown address */

     Source : <0x03faa1a8> { _do_go + 0x60 }

   5 Target : <0x03faa1a2> { _do_go + 0x5a }

     Source : <0x03fa1184> { _dcache_disable + 0x18 }

   6 Target : <0x03fa116c> { _dcache_disable + 0x0 }

     Source : <0x03faa19e> { _do_go + 0x56 }

   7 Target : <0x03faa19a> { _do_go + 0x52 }

     Source : <0x03fa114c> { _dcache_status + 0x10 }

   8 Target : <0x03fa113c> { _dcache_status + 0x0 }

     Source : <0x03faa196> { _do_go + 0x4e }

   9 Target : <0x03faa196> { _do_go + 0x4e }

     Source : <0x03fa1124> { _icache_disable + 0x18 }

  10 Target : <0x03fa110c> { _icache_disable + 0x0 }

     Source : <0x03faa192> { _do_go + 0x4a }

  11 Target : <0x03faa18e> { _do_go + 0x46 }

     Source : <0x03fa1138> { _icache_status + 0x10 }

  12 Target : <0x03fa1128> { _icache_status + 0x0 }

     Source : <0x03faa18a> { _do_go + 0x42 }

  13 Target : <0x03faa18a> { _do_go + 0x42 }

     Source : <0x03fb039e> { _printf + 0x42 }

  14 Target : <0x03fb0394> { _printf + 0x38 }

     Source : <0x03fb61bc> { _serial_puts + 0x1c }

  15 Target : <0x03fb61b0> { _serial_puts + 0x10 }

     Source : <0x03fb618c> { _serial_putc + 0x48 }

 

Please reset the board

 

### ERROR ### Please RESET the board ###

 

 

Apparently something bad happened but I don't know what went wrong.

 

So I started over to load u-boot548_uart.ldr over UART. This time I directly wrote the external memory content (u-boot549_spi.ldr) to SPI flash w/o testing it.

 

bfin> eeprom write 0x1000 0 $(filesize)

 

I then downloaded the kernel image and booted it up. I saw the shell prompt both on the terminal and the on-board LCD.

 

bfin> tftp 0x1000000 uImage

bfin> bootm

 

However when I put SW1 to position 3 and reboot, nothing happened. Besides, I lost the nice animation previously seen upon reboot when SW1 is on position 1. So before I go ahead and may mess more things up, I want to ask what things I did wrong here, and whether and why I unintentionally change the content of parallel flash?

 

Thanks,

Dong

QuoteReplyEditDelete

 

 

2008-10-23 16:59:51     Re: Did I mess up the BF548 board?

Mike Frysinger (UNITED STATES)

Message: 64135   

 

doing "go" on an LDR doesnt make sense.  please review the documentation:

http://docs.blackfin.uclinux.org/doku.php?id=bootloaders:u-boot:compiling#binaries

Attachments

    Outcomes