Noise ripped out after the bench verdict (tightly-wrapped unshielded cables move victim SNR only 0.2-0.3 dB, recorded in measurement.md dead ends): noise.go deleted with the noiser, phase clock and panel lane; configureNoise/checkPrivFlag gone so the X710 pair is untouched; console noise column, NOISE links rows and lane colors removed; driverPair rehomed to system.go, carrierUp to phy.go; history anchors to run start (frame-rate sampling and draw-clock roll kept — they fix display latency for every lane); goals/hardware/state/nics docs updated; verified on hardware (20.00G, zero errors, ECD 41m, SNR +7.6)
This commit is contained in:
@@ -506,6 +506,13 @@ func openModules(names [2]string) ([]*phyModule, [2]string, error) {
|
||||
return mods, idents, nil
|
||||
}
|
||||
|
||||
// Down reads as EINVAL rather than zero, and either way the answer is the
|
||||
// same: no carrier here now.
|
||||
func carrierUp(name string) bool {
|
||||
v, ok := readUint("/sys/class/net/" + name + "/carrier")
|
||||
return ok && v == 1
|
||||
}
|
||||
|
||||
func waitCarrier(names [2]string, done *atomic.Bool) {
|
||||
deadline := time.Now().Add(linkWaitSpan)
|
||||
for !(carrierUp(names[0]) && carrierUp(names[1])) {
|
||||
|
||||
Reference in New Issue
Block a user