Difference between revisions of "Novena/EEPROM"
(→Feature bitmask) |
(→Feature bitmask) |
||
Line 37: | Line 37: | ||
| 0 || 0x0001 || ES8328 Audio Codec | | 0 || 0x0001 || ES8328 Audio Codec | ||
|- | |- | ||
− | | 1 || 0x0002 || | + | | 1 || 0x0002 || Senono-based battery board |
|- | |- | ||
| 2 || 0x0004 || Retina LVDS display | | 2 || 0x0004 || Retina LVDS display |
Revision as of 06:41, 7 October 2013
Novena has a utility EEPROM that can be used for storing device-specific data. This is optional, and default values will be used if it is blank / not present.
All multi-byte integers are in native host order.
Structure
Size | Default Value | Description | Result if no EEPROM present |
---|---|---|---|
6 | 'Novena' | Unterminated EEPROM signature | The EEPROM contents will not be used |
1 | 1 | Version number of EEPROM structure | The EEPROM contents will not be used |
1 | 0 | Reserved | No change |
4 | 0 | Device serial number | No change |
6 | (Random) | Gigabit MAC address | Random MAC address is generated on each boot |
2 | 0 | Feature bitmask | No features are enabled |
Feature bitmask
There is a bitmask field that defines various board features. In this way, a single image can be shipped that supports various components. For example, a router might not have a display, but a laptop would need to have its LCD turned on. A bit is "1" if the feature is present (and needs to be enabled), and "0" if it is not present. Note that some values are mutually-exclusive (e.g. you can only have one kind of LVDS display attached).
Bit position | Mask | Feature |
---|---|---|
0 | 0x0001 | ES8328 Audio Codec |
1 | 0x0002 | Senono-based battery board |
2 | 0x0004 | Retina LVDS display |
3 | 0x0008 | (Reserved: Other LVDS display) |
4 | 0x0010 | mPCIe port |
5 | 0x0020 | Gigabit Ethernet |
6 | 0x0040 | HDMI Output |