Skip to content

Commit 2048187

Browse files
add eeprom1 for nokia G-010S-P
1 parent 91a5074 commit 2048187

1 file changed

Lines changed: 77 additions & 0 deletions

File tree

_ont/ont-nokia-g-010s-p.md

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -308,6 +308,83 @@ FALCON => setenv asc0 0
308308
FALCON => saveenv
309309
```
310310

311+
# EEPROM (I2C slave simulated EEPROM)
312+
313+
The Nokia G-010S-P does not have a physical EEPROM, the Falcon SOC emulates an EEPROM by exposing it on the I2C interface as required by the SFF-8472 specification.
314+
315+
On the I2C interface there will be two memories of 256 bytes each at the addresses `1010000X (A0h)` and `1010001X (A2h)`.
316+
317+
The Zyxel PMG3000-D20B stores the content of the emulated EEPROM1 (A2h) in Boot env variable `sfp_a2_info` to restore it after a reboot.
318+
319+
{% include alert.html content="The contents of EEPROM0 (A0h) are not stored anywhere and is regenerated at each boot" alert="Info" icon="svg-info" color="blue" %}
320+
321+
## EEPROM1 layout
322+
323+
| address | size | name | default value | description |
324+
| ------- | ---- | --------------------------------- | ----------------------------------------- | ----------------------------------------------------------- |
325+
| | | **DIAGNOSTIC AND CONTROL FIELDS** | | |
326+
| 0-1 | 2 | Temp High Alarm | `0x64 0x00` (100℃) | |
327+
| 2-3 | 2 | Temp Low Alarm | `0xCE 0x00` (-50℃) | |
328+
| 4-5 | 2 | Temp High Warning | `0x5F 0x00` (95℃) | |
329+
| 6-7 | 2 | Temp Low Warning | `0xD8 0x00` (-40℃) | |
330+
| 8-9 | 2 | Voltage High Alarm | `0x8C 0xA0` (3.6V) | |
331+
| 10-11 | 2 | Voltage Low Alarm | `0x75 0x30` (3V) | |
332+
| 12-13 | 2 | Voltage High Warning | `0x88 0xB8` (3.5V) | |
333+
| 14-15 | 2 | Voltage Low Warning | `0x79 0x18` (3.1V) | |
334+
| 16-17 | 2 | Bias High Alarm | `0xAF 0xC8` (4.5mA) | |
335+
| 18-19 | 2 | Bias Low Alarm | `0x00 0x00` (0mA) | |
336+
| 20-21 | 2 | Bias High Warning | `0x88 0xB8` (3.5mA) | |
337+
| 22-23 | 2 | Bias Low Warning | `0x00 0x00` (0mA) | |
338+
| 24-25 | 2 | TX Power High Alarm | `0x7B 0x86` (5dBm) | Value expressed in watts subunits |
339+
| 26-27 | 2 | TX Power Low Alarm | `0x22 0xD0` (-0dBm) | Value expressed in watts subunits |
340+
| 28-29 | 2 | TX Power High Warning | `0x6E 0x17` (4dBm) | Value expressed in watts subunits |
341+
| 30-31 | 2 | TX Power Low Warning | `0x27 0x10` (0dBm) | Value expressed in watts subunits |
342+
| 32-33 | 2 | RX Power High Alarm | `0x07 0xCB` (-7dBm) | Value expressed in watts subunits |
343+
| 34-35 | 2 | RX Power Low Alarm | `0x00 0x0F` (-28dBm) | Value expressed in watts subunits |
344+
| 36-37 | 2 | RX Power High Warning | `0x06 0x30` (-8dBm) | Value expressed in watts subunits |
345+
| 38-39 | 2 | RX Power Low Warning | `0x00 0x14` (-27dBm) | Value expressed in watts subunits |
346+
| 40-45 | 6 | MAC address | Unique in each SFP | Contains the mac address of the SFP, it could also be empty |
347+
| 46-55 | 10 | Reserved | `0x00 0x00 0x00...` | Reserved |
348+
| 56-59 | 4 | RX_PWR(4) Calibration | `0x00 0x00 0x00 0x00` | 4th order RSSI calibration coefficient |
349+
| 60-63 | 4 | RX_PWR(3) Calibration | `0x00 0x00 0x00 0x00` | 3rd order RSSI calibration coefficient |
350+
| 64-67 | 4 | RX_PWR(2) Calibration | `0x00 0x00 0x00 0x00` | 2nd order RSSI calibration coefficient |
351+
| 68-71 | 4 | RX_PWR(1) Calibration | `0x3F 0x80 0x00 0x00` | 1st order RSSI calibration coefficient |
352+
| 72-75 | 4 | RX_PWR(0) Calibration | `0x00 0x00 0x00 0x00` | 0th order RSSI calibration coefficient |
353+
| 76-77 | 2 | TX_I(Slope) Calibration | `0x01 0x00` | Slope for Bias calibration |
354+
| 78-79 | 2 | TX_I(Offset) Calibration | `0x00 0x00` | Offset for Bias calibration |
355+
| 80-81 | 2 | TX_PWR(Slope) Calibration | `0x01 0x00` | Slope for TX Power calibration |
356+
| 82-83 | 2 | TX_PWR(Offset) Calibration | `0x00 0x00` | Offset for TX Power calibration |
357+
| 84-85 | 2 | T(Slope) Calibration | `0x01 0x00` | Slope for Temperature calibration |
358+
| 86-87 | 2 | T(Offset) Calibration | `0x00 0x00` | Offset for Temperature calibration, in units of 256ths °C |
359+
| 88-89 | 2 | V(Slope) Calibration | `0x01 0x00` | Slope for VCC calibration |
360+
| 90-91 | 2 | V(Offset) Calibration | `0x00 0x00` | Offset for VCC calibration |
361+
| 92-94 | 3 | Reserved | `0x00 0x00 0x00` | Reserved |
362+
| 95 | 1 | CC_DMI | | Check code for Base Diagnostic Fields (addresses 0 to 94) |
363+
| 96 | 1 | Temperature MSB | | Internally measured module temperature |
364+
| 97 | 1 | Temperature LSB | | |
365+
| 98 | 1 | Vcc MSB | | Internally measured supply voltage in transceiver |
366+
| 99 | 1 | Vcc LSB | | |
367+
| 100 | 1 | TX Bias MSB | | Internally measured TX Bias Current |
368+
| 101 | 1 | TX Bias LSB | | |
369+
| 102 | 1 | TX Power MSB | | Measured TX output power |
370+
| 103 | 1 | TX Power LSB | | |
371+
| 104 | 1 | RX Power MSB | | Measured RX input power |
372+
| 105 | 1 | RX Power LSB | | |
373+
| 106-109 | 4 | Optional Diagnostics | `0xFF 0xFF 0xFF 0xFF` (No support) | Monitor Data for Optional Laser temperature and TEC current |
374+
| 110 | 1 | Status/Control | `0x03` | Optional Status and Control Bits |
375+
| 111 | 1 | Reserved | `0x00` | Reserved |
376+
| 112-113 | 2 | Alarm Flags | Supported | Diagnostic Alarm Flag Status Bits |
377+
| 114 | 1 | Tx Input EQ control | `0xFF` (No support) | Tx Input equalization level control |
378+
| 115 | 1 | Rx Out Emphasis control | `0xFF` (No support) | Rx Output emphasis level control |
379+
| 116-117 | 2 | Warning Flags | Supported | Diagnostic Warning Flag Status Bits |
380+
| 118-119 | 2 | Ext Status/Control | `0x00 0x00` | Extended module control and status bytes |
381+
| | | **GENERAL USE FIELDS** | | |
382+
| 120-126 | 7 | Vendor Specific | `0x70 0x00 0x00 0x00 0x00 0x00 0x20` | Vendor specific memory addresses |
383+
| 127 | 1 | Table Select | `0x00` | Optional Page Select |
384+
| | | **USER WRITABLE EEPROM** | | |
385+
| 128-247 | 120 | Reserved | `0x00 0x00 0x00...` | Reserved |
386+
| 248-255 | 8 | Vendor Control | `0x00 0x00 0x00 0x00 0x00 0x41 0x41 0x31` | Vendor specific control functions |
387+
311388
# Miscellaneous Links
312389

313390
- [alcatel_lucent-lantiq_falcon](https://github.com/minhng99/alcatel_lucent-lantiq_falcon)

0 commit comments

Comments
 (0)