Difference between revisions of "Novena/EEPROM"
(→Feature bitmask) |
|||
Line 24: | Line 24: | ||
|- | |- | ||
| 2 || 0 || Feature bitmask || No features are enabled | | 2 || 0 || Feature bitmask || No features are enabled | ||
+ | |- | ||
+ | | 4 || 0 || LVDS channel 1 frequency || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 1 display width || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 1 display height || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 1 horizontal back porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 1 horizontal front porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 1 horizontal sync length || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 1 vertical back porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 1 vertical front porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 1 vertical sync length || No display | ||
+ | |- | ||
+ | | 4 || 0 || LVDS channel 1 flags (see below) || No display | ||
+ | |- | ||
+ | | 4 || 0 || LVDS channel 2 frequency || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 2 display width || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 2 display height || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 2 horizontal back porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 2 horizontal front porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 2 horizontal sync length || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 2 vertical back porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 2 vertical front porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || LVDS channel 2 vertical sync length || No display | ||
+ | |- | ||
+ | | 4 || 0 || LVDS channel 2 flags (see below) || No display | ||
+ | |- | ||
+ | | 4 || 0 || HDMI default frequency || No display | ||
+ | |- | ||
+ | | 2 || 0 || HDMI default display width || No display | ||
+ | |- | ||
+ | | 2 || 0 || HDMI default display height || No display | ||
+ | |- | ||
+ | | 2 || 0 || HDMI default horizontal back porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || HDMI default horizontal front porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || HDMI default horizontal sync length || No display | ||
+ | |- | ||
+ | | 2 || 0 || HDMI default vertical back porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || HDMI default vertical front porch || No display | ||
+ | |- | ||
+ | | 2 || 0 || HDMI default vertical sync length || No display | ||
+ | |- | ||
+ | | 4 || 0 || HDMI default flags (see below) || No display | ||
|} | |} | ||
Line 37: | Line 97: | ||
| 0 || 0x0001 || ES8328 Audio Codec | | 0 || 0x0001 || ES8328 Audio Codec | ||
|- | |- | ||
− | | 1 || 0x0002 || | + | | 1 || 0x0002 || Senoko-based battery board |
|- | |- | ||
− | | 2 || 0x0004 || | + | | 2 || 0x0004 || (Reserved) |
|- | |- | ||
− | | 3 || 0x0008 || (Reserved | + | | 3 || 0x0008 || (Reserved) |
|- | |- | ||
| 4 || 0x0010 || mPCIe port | | 4 || 0x0010 || mPCIe port | ||
Line 47: | Line 107: | ||
| 5 || 0x0020 || Gigabit Ethernet | | 5 || 0x0020 || Gigabit Ethernet | ||
|- | |- | ||
− | | 6 || 0x0040 || HDMI | + | | 6 || 0x0040 || (Reserved) |
+ | |} | ||
+ | |||
+ | ==LVDS/HDMI flags bitmask== | ||
+ | {| class="wikitable sortable" | ||
+ | |+ Feature list | ||
+ | |- | ||
+ | ! scope="col" | Bit position | ||
+ | ! scope="col" | Mask | ||
+ | ! scope="col" | Feature | ||
+ | |- | ||
+ | | 0 || 0x0001 || Channel is present | ||
+ | |- | ||
+ | | 1 || 0x0002 || If 1, use both LVDS channels together | ||
+ | |- | ||
+ | | 2 || 0x0004 || Polarity of vsync signal | ||
+ | |- | ||
+ | | 3 || 0x0008 || Polarity of hsync signal | ||
+ | |- | ||
+ | | 4 || 0x0010 || 1 if LVDS is JEIDA mapping, 0 if it's PSWG/SWPG | ||
+ | |- | ||
+ | | 5 || 0x0020 || 1 if data is 8-bit (24 bpp), 0 if it's 6-bit (18 bpp) | ||
|} | |} |
Revision as of 09:06, 25 November 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 |
4 | 0 | LVDS channel 1 frequency | No display |
2 | 0 | LVDS channel 1 display width | No display |
2 | 0 | LVDS channel 1 display height | No display |
2 | 0 | LVDS channel 1 horizontal back porch | No display |
2 | 0 | LVDS channel 1 horizontal front porch | No display |
2 | 0 | LVDS channel 1 horizontal sync length | No display |
2 | 0 | LVDS channel 1 vertical back porch | No display |
2 | 0 | LVDS channel 1 vertical front porch | No display |
2 | 0 | LVDS channel 1 vertical sync length | No display |
4 | 0 | LVDS channel 1 flags (see below) | No display |
4 | 0 | LVDS channel 2 frequency | No display |
2 | 0 | LVDS channel 2 display width | No display |
2 | 0 | LVDS channel 2 display height | No display |
2 | 0 | LVDS channel 2 horizontal back porch | No display |
2 | 0 | LVDS channel 2 horizontal front porch | No display |
2 | 0 | LVDS channel 2 horizontal sync length | No display |
2 | 0 | LVDS channel 2 vertical back porch | No display |
2 | 0 | LVDS channel 2 vertical front porch | No display |
2 | 0 | LVDS channel 2 vertical sync length | No display |
4 | 0 | LVDS channel 2 flags (see below) | No display |
4 | 0 | HDMI default frequency | No display |
2 | 0 | HDMI default display width | No display |
2 | 0 | HDMI default display height | No display |
2 | 0 | HDMI default horizontal back porch | No display |
2 | 0 | HDMI default horizontal front porch | No display |
2 | 0 | HDMI default horizontal sync length | No display |
2 | 0 | HDMI default vertical back porch | No display |
2 | 0 | HDMI default vertical front porch | No display |
2 | 0 | HDMI default vertical sync length | No display |
4 | 0 | HDMI default flags (see below) | No display |
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 | Senoko-based battery board |
2 | 0x0004 | (Reserved) |
3 | 0x0008 | (Reserved) |
4 | 0x0010 | mPCIe port |
5 | 0x0020 | Gigabit Ethernet |
6 | 0x0040 | (Reserved) |
LVDS/HDMI flags bitmask
Bit position | Mask | Feature |
---|---|---|
0 | 0x0001 | Channel is present |
1 | 0x0002 | If 1, use both LVDS channels together |
2 | 0x0004 | Polarity of vsync signal |
3 | 0x0008 | Polarity of hsync signal |
4 | 0x0010 | 1 if LVDS is JEIDA mapping, 0 if it's PSWG/SWPG |
5 | 0x0020 | 1 if data is 8-bit (24 bpp), 0 if it's 6-bit (18 bpp) |