Browse Source

Fix multi-reboot stuck bug.

1. change the HT CRC error reset to infinite loop to fix boot stuck.
2. modify ls7a_config.h to make change HT GEN 1/3 easy.

Change-Id: Ifc0e003d73a4203284947a843ac67126fad71dc5
master
Chen Xinke 7 years ago
committed by zhangbaoqi
parent
commit
8ec430b0f4
  1. 2
      Targets/Bonito3a3000_7a/Bonito/ls7a_config.h
  2. 2
      Targets/Bonito3a3000_7a/Bonito/start.S
  3. 20
      pmon/arch/mips/ls7a/ls3a7a_setup_ht_link.S

2
Targets/Bonito3a3000_7a/Bonito/ls7a_config.h

@ -13,7 +13,7 @@
//HT GEN1.0/3.0 cfg
#define HT1_GEN_CFG 3
//HT1 width cfg
#ifdef LS7A_2WAY_CONNECT
#if defined(LS7A_2WAY_CONNECT) || (HT1_GEN_CFG == 1)
#define HT1_WIDTH_CFG HT_WIDTH_CTRL_8BIT //only support 8 bit
#else
#define HT1_WIDTH_CFG HT_WIDTH_CTRL_16BIT

2
Targets/Bonito3a3000_7a/Bonito/start.S

@ -601,7 +601,7 @@ bsp_start:
move a1, t2
bal reset_ht_link
nop
li a0, 0x5353
li a0, 0x0303
and a0, a0, v0
beqz a0, 8f
nop

20
pmon/arch/mips/ls7a/ls3a7a_setup_ht_link.S

@ -611,8 +611,9 @@ reset_ht_link:
bnez t5, 2f
nop
or t8, t8, (0x1 << HT1_CPU_CRC_FAIL_OFFSET)
b 88f
nop
li t5, MAX_HT_CRC_ERR_COUNT
//b 88f
//nop
2:
lw a0, 0x44(t0)
li a1, 0x300
@ -640,8 +641,9 @@ reset_ht_link:
bnez t5, 2f
nop
or t8, t8, (0x1 << HT1_SB_CRC_FAIL_OFFSET)
b 88f
nop
li t5, MAX_HT_CRC_ERR_COUNT
//b 88f
//nop
2:
lw a0, 0x44(t1)
li a1, 0x300
@ -672,8 +674,9 @@ reset_ht_link:
bnez t5, 2f
nop
or t8, t8, (0x1 << HT1_CPU_CRC_FAIL_OFFSET + N1_OFFSET)
b 88f
nop
li t5, MAX_HT_CRC_ERR_COUNT
//b 88f
//nop
2:
lw a0, 0x44(t2)
li a1, 0x300
@ -701,8 +704,9 @@ reset_ht_link:
bnez t5, 2f
nop
or t8, t8, (0x1 << HT1_SB_CRC_FAIL_OFFSET + N1_OFFSET)
b 88f
nop
li t5, MAX_HT_CRC_ERR_COUNT
//b 88f
//nop
2:
lw a0, 0x44(t3)
li a1, 0x300

Loading…
Cancel
Save