summaryrefslogtreecommitdiff
path: root/sys/netmpls
diff options
context:
space:
mode:
authorDavid Gwynne <dlg@cvs.openbsd.org>2019-08-27 00:33:58 +0000
committerDavid Gwynne <dlg@cvs.openbsd.org>2019-08-27 00:33:58 +0000
commit4c1016aef42beb657368128f88178b29594839ea (patch)
treeb480978e1f277d4565cbebffa4af90e49bf6a80a /sys/netmpls
parenta26807a2a725f12cba66e9e7444c6ab318961cc8 (diff)
make a start at reporting qsfp monitor values.
i have some qsfp DACs and a couple of optics, and they're all terrible, so this is about as far as i can go for now. at least the code will be robust in the face of terrible modules though. the DACs are pretty dumb and basically report that they're DACs with some strings. this code just prints that they're DACs with strings now. modules are supposed to be able to report overall temperature and voltage, and optics can report tx and rx values for the 4 different signal lanes they're supposed to provide. interestingly the current values are always reported in the lower page, but thresholds are reported in page 3, but not all modules support page switching. devices are supposed to say whether they can switch pages, but i have one that does say it can switch but then doesn't. anyway, the take away is that it is therefore possible for a module to report values without also reporting thresholds. this sets the code up to report the values on their own if we can't query page 3 for any reason. if the temp sensor value looks bogus (ie, 0x0000 or 0xffff), assume the monitor values are bogus and bail early. hopefully i can find a module soon that supports multiple signal lanes and actually reports their values and thresholds for them.
Diffstat (limited to 'sys/netmpls')
0 files changed, 0 insertions, 0 deletions