找回密码
 立即注册
楼主: fhh

[教程] 自编译猫盘u-boot,解决掉IP

  [复制链接]

4

主题

71

回帖

280

积分

中级渣柚V1

积分
280
QQ
 楼主| fhh 发表于 2022-4-27 08:04:02 | 显示全部楼层 IP:–浙江–杭州 移动
mynetdisk 发表于 2022-4-27 01:52
% C7 ^; b% N, t1 N  W" z* b刷这个成功迁移并进入群晖$ ^# r- R: N0 Q7 P4 |. y8 z
0 g9 e9 O- h' ~" T- R2 k
可惜重启后又出现卡 Starting kernel ... 问题

& {) O7 F0 B! Q' Q4 m哦,那应该是因为emmc引导顺序在群晖之前,但是群晖的u-boot提供的设备树与Linux不兼容。/ m  Y7 ~7 m- V  m
你把emmc中的Debian抹掉就好了。

0

主题

32

回帖

50

积分

初级渣柚V2

积分
50
QQ
mynetdisk 发表于 2022-4-27 09:13:43 | 显示全部楼层 IP:–福建–厦门 电信
本帖最后由 mynetdisk 于 2022-4-29 02:33 编辑
: t9 Z2 n( u, w/ a$ a+ F0 G# h
fhh 发表于 2022-4-27 08:04
7 \( e7 w3 |! M- R: f哦,那应该是因为emmc引导顺序在群晖之前,但是群晖的u-boot提供的设备树与Linux不兼容。
+ [' p5 s1 s2 N你把emmc中的De ...

) ^2 u6 Y( v7 ~; g8 `8 u谢谢 F 大5 s5 [9 t" `. b5 L* ]+ ~
我前面没描述清楚,我的情况是这样:5 ]# x- X( B# K& q/ P* i

" _0 E, [9 p) w  c" P! X- d1.
# s, q( S$ X5 k' H" _/ C! j6 u; P0 t启动时 TTL 默认显示 syno mode,然后在 Starting kernel ... 卡住
7 s- s# m/ c* v/ ]按住 RESET 5S 上电启动 TTL 显示 mmc mode,能正常进 Debian) ^0 \6 R' n$ w$ [; D, s, c# b

0 `: f/ W: h% w6 y. U. L8 L, K2.* {' R  G7 M9 m) V7 x
刚刷 u-boot 之后可以进群晖(也有一次刚刷完 uboot 就进不了群晖)
$ ^' J2 x& H8 C- @4 V$ q* \! p之后某次重启后 syno mode 就卡在 Starting kernel ...(但 mmc mode 仍然可以进 debian). B" b+ Z/ _/ P  G( G) d
一旦出现卡 Starting kernel ...,再重启 N 次也还是卡 Starting kernel ...,直到下次刷 uboot 通常可以暂时解决
/ A2 Z" a% e3 |3 A, H0 u+ `$ N0 E8 P3 e9 h
3.
/ E' {& D1 n" T5 i/ q一次 saveenv 后重启卡 Starting kernel ...,以为跟这个有关,之后试验排除了此可能【2022-04-29 修订:我又不确定了,今天试了刷 uboot 重启几次正常启动群晖的情况下,saveenv 后重启就卡 Starting kernel ... 了,也许真像你说的是 uboot 分区表有问题(从而导致 saveenv 破坏了什么东西?)】9 Z, P7 `! D. q: C% u/ V$ A4 c
一次进 debian 后重启卡 Starting kernel ...,以为是 debian 自动修改了 uboot 环境变量,之后试验排除了此可能2 M& f5 \) r9 l: E5 q. o
U盘、硬盘都拔掉试过,排除了这两种设备问题的可能

4

主题

71

回帖

280

积分

中级渣柚V1

积分
280
QQ
 楼主| fhh 发表于 2022-4-27 10:15:13 | 显示全部楼层 IP:–浙江–杭州 移动
mynetdisk 发表于 2022-4-27 09:13# a8 j) k; t1 i. T6 `
谢谢 F 大, V1 l% ^& [9 V5 B7 Y& t
我前面没描述清楚,我的情况是这样:
; |( w# u$ Q  i- p4 d5 C# h
看上去像是u-boot中分区表配置错误,或者是你的spi nor flash出现了故障。  E0 S4 v* L7 A& h9 U2 b: |
我想询问一下:
1 N; E4 G$ w9 |* x! z6 _7 E% E1.在刷我修改之前的u-boot之前(也就是在使用Soul的U-boot的时候),你会遇到这个情况吗?% n0 m: R* V+ S, M
2.在你卡在Starting kernel的时候,还能够进入emmc环境下的Debian吗?如果能,请问你能够在Debian下把spi flash的数据读取出来,以分析一下是否出现了错误吗?
/ S" v6 [5 a+ V% e  _! c9 p如果可以的话,请提供一下无法正常启动时期的spi nor flash的备份镜像(应该是/dev目录下的各个mtdblock,以及/proc/mtd分区表),我需要根据这些信息进行分析。
7 l( Y2 k- G% ?$ J. k2 P9 d. X5 B谢谢!

0

主题

32

回帖

50

积分

初级渣柚V2

积分
50
QQ
mynetdisk 发表于 2022-4-27 10:50:00 | 显示全部楼层 IP:–福建–厦门 电信
本帖最后由 mynetdisk 于 2022-4-27 10:53 编辑 1 x: m$ i% n) c
fhh 发表于 2022-4-27 10:150 t! t" m0 k: \: x# N% E: {
看上去像是u-boot中分区表配置错误,或者是你的spi nor flash出现了故障。3 C+ L( ^7 p" h" `
我想询问一下:) L9 ~* M! W7 u
1.在刷我修改之 ...

- `4 J7 j  B; w9 P4 `看上去像是u-boot中分区表配置错误
& ?! L1 w1 C, G  d8 V* ~) T2 k+ i--- 应该不是,因为并不是换了 uboot 之后出现卡 Starting kernel ... 问题,刚刷 uboot 后通常可以用,第 N 次重启之后可能出现 Starting kernel ...,之后再重启也必然这样,只能重新刷 uboot(注:不代表一定是 uboot 这里出了错,因为每次重刷 uboot 后需要重装群晖 DSM,所以也可能是因为重装 DSM 而暂时解决了问题)! X3 p+ ^! b; L' j; k' Z
. u! j' ?+ k, ^( W6 R4 x, v
或者是你的spi nor flash出现了故障' j! O! L% z, i+ a' x% b
--- uboot bubt 命令刷写 SPI FLASH 后会不会校验呢,如果有校验,证明 FLASH 本身读写应该没问题,而是否后续 FLASH 数据出问题待确定; ^9 f$ H- i: l0 _  j
$ G8 i$ M' Y/ ]( F& u
在刷我修改之前的u-boot之前(也就是在使用Soul的U-boot的时候),你会遇到这个情况吗?
, G6 Z, ~8 c! }& r' b6 n7 X2 |) u; k--- 原来的 uboot 就会,并非你的修改导致的,是在 emmc 装了 debian 之后出现的(没改 uboot 启动顺序),不知道是不是巧合
" j; n6 ], ^( B/ ~7 ^2 u2 Y. f2 u. _& x3 Z/ r2 L: D& ?' W1 o! u
在你卡在Starting kernel的时候,还能够进入emmc环境下的Debian吗?
) ^9 w* o" y- S& I--- 能,引导群晖卡在 Starting kernel ...,而按住 RESET 5S 重新上电引导 Debian 能正常进系统1 Q1 R- S) v; C) [% P- Q5 f

: E; Q% x! Q; U" `% C3 V! E) h请问你能够在Debian下把spi flash的数据读取出来,以分析一下是否出现了错误吗?., o, M7 G/ G9 S4 u! Z
--- 卡 Starting kernel ... 前后的 uboot 环境变量我对比过,是一样的。而整个 spi 的 flash 8M 镜像没有前后对比过,按理说除了环境变量以外其它部分应该是只读的?
. ?0 D8 y7 n, G6 x- P  z: N" v
+ B$ Q' q5 ?/ p) F% D+ l请提供一下无法正常启动时期的spi nor flash的备份镜像(应该是/dev目录下的各个mtdblock,以及/proc/mtd分区表  G& s' v; b, K/ m% B# @$ I. N
--- 好的,晚上回家备份

0

主题

32

回帖

50

积分

初级渣柚V2

积分
50
QQ
mynetdisk 发表于 2022-4-29 02:34:38 | 显示全部楼层 IP:–福建–厦门 电信
mynetdisk 发表于 2022-4-27 09:13
7 q# f( p8 U  A! m: C- ~谢谢 F 大0 I( A. x2 @% G; s4 r( ]8 w7 }- z
我前面没描述清楚,我的情况是这样:
9 O. z' s! W: j5 h4 O7 t
我之前说:& D5 [$ \- P5 @; Y
一次 saveenv 后重启卡 Starting kernel ...,以为跟这个有关,之后试验排除了此可能% \. V9 D( u3 V$ l0 P* I1 a

* d9 S0 U2 J! W& i: h现在我又不确定了,今天试了刷 uboot 重启几次正常启动群晖的情况下,saveenv 后重启就卡 Starting kernel ... 了,也许真像你说的是 uboot 分区表有问题(从而导致 saveenv 破坏了什么东西?)

46

主题

617

回帖

2765

积分

中级渣柚V3

积分
2765
QQ66566 发表于 2022-4-29 06:31:27 | 显示全部楼层 IP:–天津–天津 联通
mynetdisk 发表于 2022-4-27 10:50
7 |* o  F% \; e- K4 Y, u9 h看上去像是u-boot中分区表配置错误9 X4 g# K. a+ u
--- 应该不是,因为并不是换了 uboot 之后出现卡 Starting kernel ...  ...
5 ~: {( L5 W1 q% y' a
做设计这么多年,spi flash 从来没有出现过问题。所有spi flash故障都可以用其他问题来解释。) K; e' i0 ?% h
这个应该可以排除。

46

主题

617

回帖

2765

积分

中级渣柚V3

积分
2765
QQ66566 发表于 2022-4-29 06:39:18 | 显示全部楼层 IP:–天津–天津 联通
fhh 发表于 2022-4-26 18:083 o9 G% }& a% M. L" Z
U-boot有一部分问题。, y) z" W& F& Y$ m9 ^( }
我的做法是修改设备树,让Linux在重新初始化网卡的时候把功率拉到最大。
: c$ Q' f, {4 f. e因为没有 ...
. h9 B/ K' Z. W$ W* `6 a% H3 B! y
soul确实通过uboot修改了掉IP问题。不过没有开放。当时我测试过。具体改了啥不太清楚。还是要通过手册来查找哪里出的问题,慢慢来试试。

4

主题

71

回帖

280

积分

中级渣柚V1

积分
280
QQ
 楼主| fhh 发表于 2022-4-29 08:06:14 | 显示全部楼层 IP:–浙江–杭州 移动
QQ66566 发表于 2022-4-29 06:39
5 U: W- d$ S' Vsoul确实通过uboot修改了掉IP问题。不过没有开放。当时我测试过。具体改了啥不太清楚。还是要通过手册来查 ...
! e6 m4 Q& U5 a# u: `! C
是的。' d8 u' \8 H2 Z* ~" `7 w
只要u-boot不初始化PHY,其上电以后的默认配置不被覆盖,就不会掉IP。/ n* N( N! x( m
但是代价就是U-boot无法使用网卡,以及这其实算是一种……“鸵鸟”解法?
. a& l* v( t  ~4 e' G我的解法是修改设备树,使得它被初始化后,再次把信号增益数据填入。# r+ O7 v% \8 F; C  x2 w: i
我认为这样才算是这个问题的真正正确解法。

4

主题

71

回帖

280

积分

中级渣柚V1

积分
280
QQ
 楼主| fhh 发表于 2022-4-29 08:07:28 | 显示全部楼层 IP:–浙江–杭州 移动
本帖最后由 fhh 于 2022-4-29 08:16 编辑 # P2 H" V) d3 l0 f2 V0 m$ c
QQ66566 发表于 2022-4-29 06:316 |% @8 X1 w6 H& e2 F
做设计这么多年,spi flash 从来没有出现过问题。所有spi flash故障都可以用其他问题来解释。
! b) k, K' i& m' w9 V- l$ G2 j这个应该可 ...

) A. z0 V! o/ ^5 K% Z% T( q我的意思是,设备树中关于spi的分区配置错误,导致群晖把数据写入了其他的分区中。我在观察他的分区表的时候,发现u-boot中的分区配置,与手动dd出来的分区表……并不一致。
  ?, x3 O5 i0 b8 @9 A按照设备树中定义的分区表dd出来的分区,全都是无效数据。
) a; @7 M; ]7 F" h& L2 b换而言之,u-boot通过设备树暴露给群晖的分区,本身就是错误的。
( t) C; d% |; j我现在希望通过他的dump来分析u-boot和群晖究竟采取了哪一份分区表,以此来进行修复。
0 S1 J) a/ ~+ Q, N- {( Y
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|小黑屋|矿渣社区 ( 黔ICP备2024020525号-1 )

GMT+8, 2026-8-26 18:25 , Processed in 0.064544 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表