|
本帖最后由 QQ66566 于 2020-4-10 23:13 编辑
7 b' \* h7 q9 B: A: J# G, n& P: r- e- E" a1 {' c9 y
【最后更新】/ ~( A/ _9 p" G$ v
经过多日和@soul沟通与测试,发现此问题与硬件无关,优化uboot的phy驱动,问题解决。/ n, ]% w1 {+ u
猫盘原始Uboot没有问题,这样就是X3P下不掉IP,而黑裙会掉。
0 F0 H* h ^% m2 A) h. }通过@soul大神的努力。此问题已经解决。新的uboot引导曾经掉IP,找不到IP的猫盘群晖,可以很快找到。
( e' O3 D5 ~$ N# e8 z6 [所以,此贴关闭,感觉各位朋友的支持和出谋划策。
: f2 A# u0 Y3 p9 p; Q6 |如有疑问的请移步:
1 W$ c' S p0 t m6 }7 y1 ghttp://bbs.nasdiyer.com/thread-7843-1-1.html! e9 J0 U: _& }# v3 Q; h
1 g8 t; {% f0 |) ?1 ~# I7 u, V
$ H, S) z0 k0 J; ~1 d0 M
分割线============================================================4 u) h3 i, e4 P
很多网友有丢IP问题。所以一直想办法去解决这个问题。1.部分朋友的猫盘丢IP后,防止一段时间会恢复。
+ i+ n1 R# y8 u3 r6 Q4 p% N' f5 l" [2.某些获取不到IP的群晖猫盘刷X3P后就可以用了,一定是驱动有区别。5 e5 r8 M9 @1 g
所以基于上面这个问题。猜测,X3P与群晖控制外部PHY的reset不是一个GPIO。+ e8 p, v n4 i3 c- l; q
黑群晖不能很好的复位GPIO。 U& a) \. W& Z- w! _+ B* ?
我通过sh进行测试,查看哪些GPIO是控制phy的reset。
$ j* B! N. p- n1 W/ y+ x' Q l之前有网友提出用脚本控制风扇,使用的是GPIO450。4 u O1 n3 n* \1 d: d
编写一个脚本查找所有控制后,对网络有影响的GPIO。
6 c9 l- A; {7 _4 Q9 ^4 x# o) b$ A发现如果控制gpio465,对网络有影响。不知道有没有大神知道这个gpio是否是控制phy。2 K# x& Z* R/ [: s5 D8 U+ w
如果有丢ip的猫盘也可以测试一下。在重新启动猫盘的之前,先做一次这个pin的拉低,delay 1s,然后拉高。3 A# Q6 i$ F( v) q( K* O) |
增加一下代码做一下测试。
' K( N2 x$ I- N' T5 h% a6 v; y0 yecho 465 > /sys/class/gpio/export
# Q+ E% [0 g4 W' Q9 z( B, kecho out > /sys/class/gpio/gpio465/direction
# S9 ^* G; U7 G) j, i. [echo 0> /sys/class/gpio/gpio465/value
9 o* v0 R; K, ?/ ]sleep 11 X' c# }- A6 b; L( }
echo 1> /sys/class/gpio/gpio465/value4 ]6 f" }! ] u
echo in > /sys/class/gpio/gpio465/direction
, ?. g/ Y+ I0 r1 c1 _; A& p$ S
( Q) q; |8 s' X" d【03/23】
- P3 v6 [6 `- ?, ^刚找朋友拿了一个掉IP的猫盘。明天给我。
. c% ^) G/ W Y5 w5 ?6 D* f# b1 B: a故障现象就是X3P没有问题,群晖找不到IP。今天又测试了一下,gpio465。' V) ]9 C' s. z( ]
执行下面这句,网络就断了。1 P( B+ M- w8 u8 ^0 F
echo out > /sys/class/gpio/gpio465/direction
9 P5 z* k( ?1 `' c执行下面。; R" X, _9 c9 y; ?
echo out > /sys/class/gpio/gpio$gpio/direction
^: |$ }! Y' S* \' W, }& kcat /sys/class/gpio/gpio$gpio/value > /volume1/movie/value.txt
% @ J$ J! z* d- H t/ v4 Y5 D7 t5 M' ?( a3 E5 g
得出value = 0.( H1 t' T( v" @9 G: R
这样,就对了。8 i- A( h2 H0 \2 X2 M
当此管脚输出默认值为0。当为IN时候弱上拉,为高,当为输出时候直接输出0& _* {7 K3 e+ k/ f1 I A4 [) `
这样就复位了phy芯片。但这个管脚一般我们习惯 用强驱动的高,而不是弱上拉的高。+ }+ g! K! d6 N8 G" i" ~
明天有机会测试一下吧。# ^3 Z- \) Q5 e. p1 T
【03/24】
! ] u3 x* F& a. `* \4 t0 C测试了猫盘X3P和群晖关于phy芯片reset的波形。
3 m0 Y. G$ O7 Y, @1 I- X4 u9 lX3P系统只复位了phy芯片一次,没有单独复位过,并且reset信号与1.8V同时上升。这样并不太好,不过却可以运行。8 T2 @' C5 `) O& \
群晖启动后,会再次复位phy芯片。启动后,reset有一个明显的拉低和拉高动作。
- m& w! V8 @3 b4 q( c6 X4 \; z L* Q这个群晖猫盘就存在IP找不到的问题。从reset信号上不能解释为什么会丢IP。继续查找问题原因吧。8 l. b5 E3 T9 b# m9 I% U
如下图:
. z0 q. P& n; z" {7 v$ m【03/25】1 M* y7 a! O' X( C$ E1 |) ?8 R
今天测试了一下DS119J与DS120J,他们针对phy的reset复位波形是一样的。5 I7 k7 K3 }, _
都会启动后拉低50ms,这个操作是在bootloader中执行的。" q1 }, l* g) a# o
有空再试试。另外一个网友提出的一个解决方案就是增加一个usb 的wifi网卡。1 H* Q+ o) n; @/ q
最起码暂时可以用。。。
4 g) c" u w8 Y& N [4 p8 `( r' V【04/03】- e8 ?0 b P3 j3 @" A
经过测试,这个问题应该和phy的reset无关。
- A% V5 {) o2 X6 Q/ }/ L U不过已经找到解决问题的方向。' b# Q' E' I4 ^0 s" L, L7 _7 K
论坛中已经有人解决了这个问题。
- C9 ]+ X* }$ H/ d5 L我们也在独立攻关。7 p3 ~* K: [5 x$ A$ ~0 I6 z+ p: [
【04/05】- S9 Z0 J/ n, ]: F" e' V, @
各种测试uboot,各种变砖。
& O- U: B& i6 |) e' D4 ^后来想变砖都不容易。还是没有解决问题。继续攻关。
' V4 t/ b+ i: s: l
3 ]# j2 R! n9 E# f! @% n& Y" N. O7 Q2 z) |( K
: d# c) K6 m3 D1 L
: V( \7 E% y( c4 ^* r
/ j& c* b7 g0 X8 ]+ {/ z# }! Q |
-
X3P phy芯片reset波形
-
群晖 phy芯片reset波形
-
群晖 phy芯片reset宽度
评分
-
参与人数 4 | 渣金 +24 |
经验值 +15 |
收起
理由
|
mijicn
| + 9 |
|
KEY_RESET 23 不如研究研究这个 咋的让rese. |
管理猿
| + 5 |
+ 5 |
很给力! |
灰色会
| + 5 |
+ 5 |
很给力! |
jakc
| + 5 |
+ 5 |
很给力! |
查看全部评分
|