x3 sdb 升级yocto系统后,使用 hrut_ipfull 修改ip重启后在uboot里循环

用户您好,请详细描述您所遇到的问题:

  1. 系统软件版本: 目前已经无法启动了,只保存了之前 uname -a 的信息
  2. `Linux x3sdbx3-samsung2G-3200 4.14.74 #67 SMP PREEMPT Thu Mar 3 16:39:50 CST 2022 aarch64 GNU/Linux`
  3. 问题涉及的技术领域: 操作系统、驱动
  4. 问题描述:
  5. 首先拿到的板子内核为`Linux x3sdbx3-samsung2G-3200 4.14.74 #67 SMP PREEMPT Thu Mar 3 16:39:50 CST 2022 aarch64 GNU/Linux`,然后使用hbupdate V1.3(AIOT)升级 `disk.img` 后可以正常开机,`uname -a` 查看版本如下 `Linux x3sdbx3-samsung2G-3200 4.14.87 #1 SMP PREEMPT Sat Jan 28 11:53:21 CST 2023 aarch64 GNU/Linux`, 此时有修改ip的需求,首先使用`ip del` `ip add` 命令虽然可以生效,但是重启后ip还是会恢复成`192.168.1.10`, 然后使用 `hrut_ipfull` 进行ip修改,修改后重启,就发现串口数据一直在重复,其中完整的一次数据如下:

```text

U-Boot 2018.09 (Jan 28 2023 - 11:44:00 +0800)

Model: Hobot XJ3 Soc Board

DRAM: system DDR size: 0x7fe00000

2 GiB

MMC: dwmmc@A5010000 clock set: 52000000.

dwmmc@A5010000: 0 (eMMC), dwmmc@A5011000: 1, dwmmc@A5012000: 2

Loading Environment from MMC… *** Warning - bad CRC, using default environment

In: serial@a5000000

Out: serial@a5000000

Err: serial@a5000000

Net: x3 sdb reset eth phy done

Warning: ethernet@A5014000 (eth0) using random MAC address - 46:87:0e:cd:16:9c

eth0: ethernet@A5014000

Disable cnn cores ..

base board type: X3 SDB

bootmode: EMMC

board_id = 31520324

hb_boot_args_cmd_set custom_bootargs 0 ubuntu_boot 0

Hit any key to stop autoboot: 0

enable watchdog success !

MMC read: dev # 0, block # 30976, count 51200 … 51200 blocks read: OK

## Booting Android Image at 0x10000000 …

Android’s image name: x3j3

Kernel load addr 0x00200000 size 16714 KiB

Kernel compress with: lz4

board_type = 604

error: board_type 604 not support

dtb_name =

“Synchronous Abort” handler, esr 0x96000006

elr: 000000000408eefc lr : 0000000004026ac4 (reloc)

elr: 000000000408eefc lr : 0000000004026ac4

x0 : 0000000000000000 x1 : 0000000000000000

x2 : 0000000000001e80 x3 : 0000000004fda4a7

x4 : 0000000000000020 x5 : 0000000000000000

x6 : 0000000000000006 x7 : 000000000000000f

x8 : 0000000004fda938 x9 : 0000000000000004

x10: 00000000ffffffd0 x11: 0000000004fe53b0

x12: 0000000000000000 x13: 0000000000000200

x14: 00000000040c14d0 x15: 0000000000000021

x16: 0000000004055754 x17: 0000000000000000

x18: 0000000004fdb670 x19: 0000000000000000

x20: 0000000000000000 x21: 0000000010000000

x22: 0000000000000000 x23: 00000000040dce28

x24: 00000000040dce20 x25: 0000000004fdaba0

x26: 00000000040cac70 x27: 0000000000000000

x28: 00000000040dc000 x29: 0000000004fda9a0

Resetting CPU …

resetting …

NOTICE: fast_boot:0

S

F

L

O

NOTICE: efuse cpu_cfg = 0

W

NOTICE: Booting Trusted Firmware

NOTICE: BL1: v1.4(release):HR-ROM-Rel-v1.1-141-ga91d4dd-dirty

NOTICE: BL1: Built : 11:24:44, Oct 23 2019

NOTICE: boot src: 0

NOTICE: eMMC : 0xd6

NOTICE: BL1: Booting BL2

Auth pass

NOTICE: bl1_main exit

SPL normal reset flow

check_reset_state (2): wakeup address = 0x0, hw wakeup status = 0x3, wakeup src=0x100

patch for sys_pll 1200 with 100M eth

SFLOW_INIT

CHIP ID:P2R188/WAFER: W19/ X: X16/ Y: Y22

secondary_jump_to_spl: secure chip flow

X3 SPL : secondary core wake up and jump to spl done (cpu_core_cfg=0)

SFLOW_FIN_HW_A

U-Boot SPL 2018.09-ge9420b2419 (Nov 14 2022 - 19:33:24 +0800)

SPACC Init - ID: (00000061)

SPL emmc boot mode (from strap)

emmc: width = 4, mclk = 48000000, sclk = 24000000

ddr_type = 1 (LPDDR4)

hb_chip_package_type:3

ddr_hdr.ecc_gran: 0x0

ddr_hdr.ecc_map: 0x0

ddr_hdr.sbr_pattern0: 0x0

ddr_hdr.sbr_pattern1: 0x0

ddr_freq = 05

board id = 31520324

ddr datarate: 3200

### SAMSUNG DDR ###

no ddr pin set

detect part number: 108

detect ddr freq: c80

board id alternative:0x2

index is 12

index is 15

hb_ddr_index: 15

ddr_type = 1, ddr_vendor=3, ddr_freq=3200

dram_pll_init

sscg disabled

control load ddrc src_addr: b3000, load_addr: 802caa20, src_len: 928

[DDR INFO] ==ddr_release_info==

[DDR INFO] VERSION: develop

[DDR INFO] BUILD: 2022-11-14-19:33

[DDR INFO] GIT COMMIT: e9420b2419c75e3d5e98c20012c945b5b2798cc6

[DDR INFO] GIT TIME: Mon, 14 Nov 2022 19:15:27 +0800

[DDR INFO] ==ddr_features==

[DDR INFO] RDBI: 0

[DDR INFO] WDBI: 1

[DDR INFO] InlineECC: 0

[DDR INFO] DM: 1

[DDR INFO] DDC: 1

[DDR INFO] SSCG: 0

[DDR INFO] BOARD: XS_ENABLE

[DDR INFO] ddr_controller_cfg done

load ddr phy src_addr: b3c00, load_addr: 802caa20, src_len: 420

ATxSlewRate : 15f

ATxImpedance : 7f

TxSlewRate : 19f

TxOdtDrvStren : 600

TxImpedanceCtrl : e3f

CalDrvStr0 : 11

VrefInGlobal : 104

board_type = 4 (CUSTOMER_BOARD)

load dqmap src addr: c2200, load_addr: 802caa20, src_len: 20

[DDR INFO] dwc_ddrphy_train start

magic = 544f4248

load imem1 src_addr: 81e00, load_addr: 802caa20, src_len: 8000

load dmem1 src_addr: b2200, load_addr: 802caa20, src_len: 684

executing 1D fw

load imem2 src_addr: 89e00, load_addr: 802caa20, src_len: 8000

load dmem2 src_addr: b2a00, load_addr: 802caa20, src_len: 564

*******************************************************

p_dmem_lpddr4_2d_16b->MR11_A0:43

p_dmem_lpddr4_2d_16b->MR14_A0:5c

p_dmem_lpddr4_2d_16b->MR12_A0:54

p_dmem_lpddr4_2d_16b->MR22_A0:14

p_dmem_lpddr4_2d_16b->MR3_A0:b3

p_dmem_lpddr4_2d_16b->Reserved00:40

p_dmem_lpddr4_2d_16b->Reserved0E:4

p_dmem_lpddr4_2d_16b->Delay_Weight2D:20

p_dmem_lpddr4_2d_16b->Voltage_Weight2D:80

*******************************************************

executing 2D fw

load pie src_addr: b4600, load_addr: 802caa20, src_len: 11f0

Set QoS.

get_ddr_mr_info:cs_num=1, mr5=0x1, mr8=0x10

SPL_VERSION:7

no magic in efuse file,bypass efuse

total_sz = 2048

SPL_VERSION:7

boot reason: recovery

uboot partition is uboot_B

load u-boot: src_addr=0x300000, dest_addr=0x4000000, len=2097152

load warm boot spl: addr=0x45000, dest_addr=0x80000000, len=31232

load bl31: addr=0xe7000, dest_addr=0x0, len=102400

SFLOW_AUTH_BL31

verify signature of header: verify ok!

verify signature of image: verify ok!

bypass bpu image

clear keybank!!!

SFLOW_DBG_EN

Trying to boot from RAM

SPL: bl31 will jump to u-boot or other entry (0x4000000)

SFLOW_CLR_KEY

SFLOW_REG_LD

install_portal copy portal

install_portal call smc and jump to bl31 cold entry(0x0)

hb som type: 6

X3 PI reset VDD_SD done

```

此时以为是uboot出问题了,然后按照如下文档进行uart升级: 升级所需 `disk.img` 就是在[官网](https://developer.horizon.ai/forumDetail/136488103547258769)里下载的 `horizon_xj3_open_explorer_v1.10.7_20220304.tar.gz` 里面提取出来的.

升级时出现的问题:

下面是详细日志:

  1. 复现概率:必现
  2. 软件上是否有做自定义修改: 听说是第三方厂家的,不支持刷系统, 可是矛盾的地方是升级是ok的,我只是想改一下ip