|
本帖最后由 QQ66566 于 2020-4-10 23:13 编辑
# B1 O# G7 Z; {1 L; @- j: L1 ^/ d3 w$ M7 V
【最后更新】; T& S. Q( P, E
经过多日和@soul沟通与测试,发现此问题与硬件无关,优化uboot的phy驱动,问题解决。
: S0 ?5 A: R& |1 Q- a猫盘原始Uboot没有问题,这样就是X3P下不掉IP,而黑裙会掉。
. \+ Z' G) ]7 m通过@soul大神的努力。此问题已经解决。新的uboot引导曾经掉IP,找不到IP的猫盘群晖,可以很快找到。
- Z% s8 u3 R/ ?# ?/ [所以,此贴关闭,感觉各位朋友的支持和出谋划策。
8 V( B k4 L! q8 \4 T6 c如有疑问的请移步:
, J( j5 d v+ m+ Q$ K6 w+ @& k) Thttp://bbs.nasdiyer.com/thread-7843-1-1.html4 r3 h1 d7 s/ h; X* L$ c. y' H# s6 L
$ \) C+ R5 L' ~4 j
! {0 z5 ^, d. i( Q/ u/ N分割线============================================================
& w9 z1 g1 M j& `+ t, a很多网友有丢IP问题。所以一直想办法去解决这个问题。1.部分朋友的猫盘丢IP后,防止一段时间会恢复。, x% N6 E) W9 U# Z+ c! ]. h. h
2.某些获取不到IP的群晖猫盘刷X3P后就可以用了,一定是驱动有区别。" L4 e s* [+ N3 \- b. `
所以基于上面这个问题。猜测,X3P与群晖控制外部PHY的reset不是一个GPIO。6 l" o6 U9 k1 V7 H$ Z
黑群晖不能很好的复位GPIO。
# c+ K4 D# k. K/ `) x2 B( n我通过sh进行测试,查看哪些GPIO是控制phy的reset。! Y3 e3 j) k0 c" ?( [8 w
之前有网友提出用脚本控制风扇,使用的是GPIO450。
8 T0 J: z1 {/ J& Y编写一个脚本查找所有控制后,对网络有影响的GPIO。; K. d6 ?6 q# v5 k- Y3 R4 \
发现如果控制gpio465,对网络有影响。不知道有没有大神知道这个gpio是否是控制phy。
, p+ o0 V9 Y' U8 f/ s8 h9 |如果有丢ip的猫盘也可以测试一下。在重新启动猫盘的之前,先做一次这个pin的拉低,delay 1s,然后拉高。. M& d i2 w) I8 R3 ?: z
增加一下代码做一下测试。1 [# A' G# r$ V* ?9 g+ I$ {# n' _
echo 465 > /sys/class/gpio/export * K2 H9 ?5 h7 [% M
echo out > /sys/class/gpio/gpio465/direction
N4 C% Z' r8 f5 ^" @& R" V) \5 Gecho 0> /sys/class/gpio/gpio465/value, E7 ?$ Y# Y0 L. a. x
sleep 1 d9 ~' C* S0 L: S/ s( m0 Z
echo 1> /sys/class/gpio/gpio465/value
, z9 L6 S* ^/ mecho in > /sys/class/gpio/gpio465/direction
* Q, T" P" l. C7 _
! W) |# }& h2 H5 _: P【03/23】
a( I2 v/ x7 ]- C3 d7 g0 u刚找朋友拿了一个掉IP的猫盘。明天给我。( Z. r G$ i F* s3 @& U
故障现象就是X3P没有问题,群晖找不到IP。今天又测试了一下,gpio465。+ r: I- c% K; a8 Z9 U
执行下面这句,网络就断了。. s' e% A* Z9 E6 \! y6 d8 _
echo out > /sys/class/gpio/gpio465/direction
+ e& q/ K2 v+ \2 t# Q1 Q执行下面。
, u1 `1 m& k5 B9 ]echo out > /sys/class/gpio/gpio$gpio/direction( z ~5 {% h2 f I! [+ E
cat /sys/class/gpio/gpio$gpio/value > /volume1/movie/value.txt. W) D$ F5 E; l+ S, D, V
$ M7 l; o" M9 r
得出value = 0.3 m5 x- i8 e+ F8 _% h4 x
这样,就对了。$ n% }0 N a8 o* I1 }
当此管脚输出默认值为0。当为IN时候弱上拉,为高,当为输出时候直接输出0+ l% D$ l' ]2 C/ @6 m' [& d9 w
这样就复位了phy芯片。但这个管脚一般我们习惯 用强驱动的高,而不是弱上拉的高。9 M" w" D7 }- L( Q8 b# O2 l
明天有机会测试一下吧。
6 K, N) h: \7 g: ]' v【03/24】. ?1 M5 ^8 Q/ j1 L" w6 N+ I, j" m
测试了猫盘X3P和群晖关于phy芯片reset的波形。
$ C3 K% y* K% A, P$ S, ^X3P系统只复位了phy芯片一次,没有单独复位过,并且reset信号与1.8V同时上升。这样并不太好,不过却可以运行。2 O Q6 @$ L# `2 G" ]! V0 @" j
群晖启动后,会再次复位phy芯片。启动后,reset有一个明显的拉低和拉高动作。! G; f% V# G0 o0 d
这个群晖猫盘就存在IP找不到的问题。从reset信号上不能解释为什么会丢IP。继续查找问题原因吧。
5 y8 i8 W6 S" [( Y( I/ e0 g4 T' ~" ]如下图:0 \6 w7 I; D8 b' Q7 t
【03/25】) f8 }; x7 w: n( p7 e
今天测试了一下DS119J与DS120J,他们针对phy的reset复位波形是一样的。; Q5 @! c. }; S1 ^; k3 |- ~
都会启动后拉低50ms,这个操作是在bootloader中执行的。; R r" x: f | E" }
有空再试试。另外一个网友提出的一个解决方案就是增加一个usb 的wifi网卡。+ ~4 [5 {. Y3 H
最起码暂时可以用。。。6 Z5 R |2 c! v c! d: `
【04/03】2 D2 u* v0 u. R5 K* \
经过测试,这个问题应该和phy的reset无关。
% |( `* X$ `0 b不过已经找到解决问题的方向。7 m8 F( N2 T" u6 u# ^
论坛中已经有人解决了这个问题。 d& H* W$ G" c4 P
我们也在独立攻关。9 B% \' x( X" G' [! `- m& }; }: T
【04/05】, z% \3 g. S- H9 V* P
各种测试uboot,各种变砖。
' m4 J# M! K E- J1 [6 F后来想变砖都不容易。还是没有解决问题。继续攻关。$ S: s, S0 q5 e3 N6 m
2 K7 x+ o8 `+ c5 {* { P
. j$ ~. v/ k d- h. j# s3 z1 k& @/ e, @0 O
0 S8 D' v" |0 s9 _% P! o. b. B ]
, v: n9 L% ^* ?' C" E
|
-
X3P phy芯片reset波形
-
群晖 phy芯片reset波形
-
群晖 phy芯片reset宽度
评分
-
参与人数 4 | 渣金 +24 |
经验值 +15 |
收起
理由
|
mijicn
| + 9 |
|
KEY_RESET 23 不如研究研究这个 咋的让rese. |
管理猿
| + 5 |
+ 5 |
很给力! |
灰色会
| + 5 |
+ 5 |
很给力! |
jakc
| + 5 |
+ 5 |
很给力! |
查看全部评分
|