|
本帖最后由 QQ66566 于 2020-4-10 23:13 编辑 & T* B' [6 n3 B1 d$ d" g
4 B" G1 C2 V5 {& t
【最后更新】( N: c+ ^' \5 A6 L, z K' t
经过多日和@soul沟通与测试,发现此问题与硬件无关,优化uboot的phy驱动,问题解决。
$ i( q$ J* W6 \0 R) {) C0 x8 S7 V猫盘原始Uboot没有问题,这样就是X3P下不掉IP,而黑裙会掉。( ~' K1 X% @. S! q; E; e0 H- u9 x
通过@soul大神的努力。此问题已经解决。新的uboot引导曾经掉IP,找不到IP的猫盘群晖,可以很快找到。
# H# D' ~, X7 W所以,此贴关闭,感觉各位朋友的支持和出谋划策。
6 A( k1 `9 c _, t" u4 V如有疑问的请移步:
6 m9 o4 C$ M6 i; \. w3 ]http://bbs.nasdiyer.com/thread-7843-1-1.html
0 F' r: a& A$ `: J; \; ~1 q
* j' ]8 r. k! f
3 u5 @1 y8 S5 G! I& |6 {. e+ t分割线============================================================9 W! v3 ~2 J+ e8 ~1 D, d
很多网友有丢IP问题。所以一直想办法去解决这个问题。1.部分朋友的猫盘丢IP后,防止一段时间会恢复。
2 U E& \+ ]6 W! p* r c/ W, g" X2.某些获取不到IP的群晖猫盘刷X3P后就可以用了,一定是驱动有区别。
1 x& Q) a1 D" {' f1 w1 g @" k所以基于上面这个问题。猜测,X3P与群晖控制外部PHY的reset不是一个GPIO。' J2 Y+ L9 Z1 G2 C t* B
黑群晖不能很好的复位GPIO。
3 U# i2 {5 \$ _( I2 I" C我通过sh进行测试,查看哪些GPIO是控制phy的reset。
1 I9 O% f) g4 `7 f) s之前有网友提出用脚本控制风扇,使用的是GPIO450。
1 ]& i: X" k) c- c" {: q9 L编写一个脚本查找所有控制后,对网络有影响的GPIO。9 T8 _1 E9 h. t0 ]" \* b
发现如果控制gpio465,对网络有影响。不知道有没有大神知道这个gpio是否是控制phy。3 O% n# y" w s ]+ l6 z* R& S
如果有丢ip的猫盘也可以测试一下。在重新启动猫盘的之前,先做一次这个pin的拉低,delay 1s,然后拉高。
) V% l# M3 f3 Q* l8 G6 U增加一下代码做一下测试。2 F m% D- S, D% Q4 l$ [* J% m0 |
echo 465 > /sys/class/gpio/export
4 d6 \ l) Q$ H0 eecho out > /sys/class/gpio/gpio465/direction
7 ]/ [/ R z* `% uecho 0> /sys/class/gpio/gpio465/value2 g9 J: [" U$ Y) W
sleep 1
$ M5 @0 Y% z' U' l# T) c, E3 gecho 1> /sys/class/gpio/gpio465/value
/ a2 H) e$ r% M- R1 Wecho in > /sys/class/gpio/gpio465/direction. K$ t% j' e9 q7 |
5 V2 C) w( d9 r) @- @【03/23】2 N8 E1 M! N& _6 f+ G) h
刚找朋友拿了一个掉IP的猫盘。明天给我。
- h8 C4 \9 Y7 d. \( K- e: A故障现象就是X3P没有问题,群晖找不到IP。今天又测试了一下,gpio465。
! u6 O. m7 P) P" n: q& w$ R执行下面这句,网络就断了。' w* F8 `; F) Q: m; X. z" _1 @
echo out > /sys/class/gpio/gpio465/direction1 s1 M% I0 i I8 F. K0 u! R
执行下面。
5 L. Q6 e( Q) g& @( s2 K- k8 ?echo out > /sys/class/gpio/gpio$gpio/direction
" @5 i; D. n* ]7 l, B' xcat /sys/class/gpio/gpio$gpio/value > /volume1/movie/value.txt7 \2 J- U4 E7 C6 x1 z$ \, [
7 V7 h+ z' ^- p% O# V6 U& B" O; I得出value = 0.6 d0 {; S7 m8 [) e s
这样,就对了。) |0 y( k, `' Z4 x M; D
当此管脚输出默认值为0。当为IN时候弱上拉,为高,当为输出时候直接输出0
& S* P* g' p+ R* ]这样就复位了phy芯片。但这个管脚一般我们习惯 用强驱动的高,而不是弱上拉的高。. I. l, D; `8 ^) h
明天有机会测试一下吧。
# d; F; A! O1 e【03/24】) p4 B+ L) _# X
测试了猫盘X3P和群晖关于phy芯片reset的波形。
0 H8 H ]+ A) m& k! FX3P系统只复位了phy芯片一次,没有单独复位过,并且reset信号与1.8V同时上升。这样并不太好,不过却可以运行。/ s& g( `+ G' E: N4 n
群晖启动后,会再次复位phy芯片。启动后,reset有一个明显的拉低和拉高动作。
# U. K0 z/ v( K" A这个群晖猫盘就存在IP找不到的问题。从reset信号上不能解释为什么会丢IP。继续查找问题原因吧。) m* ^8 S* r c4 V8 J: W
如下图:
! u! @3 f$ A1 R+ b1 X1 h$ g【03/25】7 F$ @" \5 r7 r
今天测试了一下DS119J与DS120J,他们针对phy的reset复位波形是一样的。" b1 y# s" ~& d
都会启动后拉低50ms,这个操作是在bootloader中执行的。
: P9 U J" t9 f2 {' K2 P2 G- ^有空再试试。另外一个网友提出的一个解决方案就是增加一个usb 的wifi网卡。
+ q" r8 w k( v8 b' N8 h最起码暂时可以用。。。$ G. ~; x1 V5 F/ }
【04/03】
4 ~) c/ l- M. `6 Q( I/ F; u( o1 @经过测试,这个问题应该和phy的reset无关。$ y, @) w2 x3 q( s% H
不过已经找到解决问题的方向。$ M* o0 P/ w3 ^
论坛中已经有人解决了这个问题。
. r/ u" D$ Q2 H/ G9 O( l4 R我们也在独立攻关。, M4 ]$ I' |" s; |
【04/05】8 U8 e. S; i0 k8 C9 w
各种测试uboot,各种变砖。3 Y2 e* Y% t! a( M/ M, u, v; L
后来想变砖都不容易。还是没有解决问题。继续攻关。- _# T& [/ l: N
# ^7 i7 _0 A$ g4 H2 H. S# R
3 l+ O5 t* Z m; Z( S/ N& }
1 e( u( @5 B" i, C! J j/ V8 `6 c5 {3 J
7 b( h& a7 e1 ?9 F: v9 x
|
-
X3P phy芯片reset波形
-
群晖 phy芯片reset波形
-
群晖 phy芯片reset宽度
评分
-
参与人数 4 | 渣金 +24 |
经验值 +15 |
收起
理由
|
mijicn
| + 9 |
|
KEY_RESET 23 不如研究研究这个 咋的让rese. |
管理猿
| + 5 |
+ 5 |
很给力! |
灰色会
| + 5 |
+ 5 |
很给力! |
jakc
| + 5 |
+ 5 |
很给力! |
查看全部评分
|