aboutsummaryrefslogtreecommitdiffstats
path: root/mpm/tools/eeprom.h
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2019-05-09 16:25:11 -0700
committerBrent Stapleton <brent.stapleton@ettus.com>2019-05-10 16:59:58 -0700
commit0812a5f6bf600f3d09e40f55b02de91a3b82dd75 (patch)
tree41adfcb06150bf8515d3e4afe4c632df5ea6d89e /mpm/tools/eeprom.h
parente0e61a5a5eb2442c14f11298c358d8492c037a68 (diff)
downloaduhd-0812a5f6bf600f3d09e40f55b02de91a3b82dd75.tar.gz
uhd-0812a5f6bf600f3d09e40f55b02de91a3b82dd75.tar.bz2
uhd-0812a5f6bf600f3d09e40f55b02de91a3b82dd75.zip
mpm: Add MB-EEPROMv3
This includes a rev_compat field, which we can use to identify the last hardware revision this hardware is compatible with. Example: Say the current hardware revision is 7, but it is compatible with version 5, then we store 7 as the current rev, and 5 as the rev_compat. Software can now check the rev_compat rather than the current rev for compatibility. This makes MPM more future-proof against minor, compatible hardware changes.
Diffstat (limited to 'mpm/tools/eeprom.h')
-rw-r--r--mpm/tools/eeprom.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/mpm/tools/eeprom.h b/mpm/tools/eeprom.h
index 04f468dd9..39301327f 100644
--- a/mpm/tools/eeprom.h
+++ b/mpm/tools/eeprom.h
@@ -33,7 +33,7 @@ struct usrp_sulfur_eeprom {
u8 eth_addr1[ETH_ALEN];
u16 mcu_compat;
u8 eth_addr2[ETH_ALEN];
- u8 __pad_2[2];
+ u16 rev_compat;
u32 crc;
} __attribute__((packed));
@@ -63,7 +63,8 @@ struct usrp_sulfur_eeprom *usrp_sulfur_eeprom_new(const u32 *mcu_flags,
const char *eth_addr1,
const char *eth_addr2,
const u16 dt_compat,
- const u16 mcu_compat);
+ const u16 mcu_compat,
+ const u16 rev_compat);
void usrp_sulfur_eeprom_to_i2c(struct usrp_sulfur_eeprom *ep, const char *path);