diff options
author | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2016-07-01 18:36:28 +0200 |
---|---|---|
committer | Holger Freyther <holger@freyther.de> | 2017-04-29 11:56:29 +0000 |
commit | d62a58dbfb4424a104960bca7ffff01a173c101f (patch) | |
tree | 66c3331b85191bb2a85f166adf5edd4ecca81755 /src/osmo-bts-sysmo/misc | |
parent | 322252d793961ab6db56ea2c22fa91f7c1001bc0 (diff) |
sysmobts: Make reservation for mode/netmask/ip and suc
Change-Id: Ib98856356dc296be9e449d35479bc9234c0c4d32
Diffstat (limited to 'src/osmo-bts-sysmo/misc')
-rw-r--r-- | src/osmo-bts-sysmo/misc/sysmobts_eeprom.h | 15 | ||||
-rw-r--r-- | src/osmo-bts-sysmo/misc/sysmobts_par.c | 2 |
2 files changed, 16 insertions, 1 deletions
diff --git a/src/osmo-bts-sysmo/misc/sysmobts_eeprom.h b/src/osmo-bts-sysmo/misc/sysmobts_eeprom.h index 0dec4f63..120d9687 100644 --- a/src/osmo-bts-sysmo/misc/sysmobts_eeprom.h +++ b/src/osmo-bts-sysmo/misc/sysmobts_eeprom.h @@ -16,7 +16,15 @@ struct sysmobts_eeprom { /* offset */ uint16_t model_flags; /* 34-35 */ uint8_t trx_nr; /* 36 */ uint8_t boot_state[48]; /* 37-84 */ - uint8_t _pad1[36]; /* 85-120 */ + uint8_t _pad1[18]; /* 85-102 */ + struct { + uint8_t mode; /* 103 */ + uint32_t ip; /* 104 - 107 */ + uint32_t mask; /* 108 - 111 */ + uint32_t gw; /* 112 - 115 */ + uint32_t dns; /* 116 - 119 */ + } __attribute__((packed)) net_cfg; + uint8_t crc; /* 120 */ uint8_t gpg_key[128]; /* 121-249 */ } __attribute__((packed)); @@ -26,4 +34,9 @@ enum sysmobts_model_number { MODEL_SYSMOBTS_2050 = 2050, }; +enum sysmobts_net_mode { + NET_MODE_DHCP, + NET_MODE_STATIC, +}; + #endif diff --git a/src/osmo-bts-sysmo/misc/sysmobts_par.c b/src/osmo-bts-sysmo/misc/sysmobts_par.c index d1fc37a2..e3a3c56b 100644 --- a/src/osmo-bts-sysmo/misc/sysmobts_par.c +++ b/src/osmo-bts-sysmo/misc/sysmobts_par.c @@ -294,4 +294,6 @@ int sysmobts_par_set_buf(enum sysmobts_par par, const uint8_t *buf, osmo_static_assert(offsetof(struct sysmobts_eeprom, trx_nr) == 36, offset_36); osmo_static_assert(offsetof(struct sysmobts_eeprom, boot_state) == 37, offset_37); osmo_static_assert(offsetof(struct sysmobts_eeprom, _pad1) == 85, offset_85); +osmo_static_assert(offsetof(struct sysmobts_eeprom, net_cfg.mode) == 103, offset_103); +osmo_static_assert((offsetof(struct sysmobts_eeprom, net_cfg.ip) & 0x3) == 0, ip_32bit_aligned); osmo_static_assert(offsetof(struct sysmobts_eeprom, gpg_key) == 121, offset_121); |