RADGigastar: Update settings

pull/64/head
Kyle Schwarz 2024-04-17 14:24:36 -04:00
parent 9c830a91a2
commit 31d47613e7
2 changed files with 39 additions and 5 deletions

View File

@ -327,6 +327,35 @@ typedef struct SERDESPOC_SETTINGS_t
} SERDESPOC_SETTINGS;
#define SERDESPOC_SETTINGS_SIZE 10
enum
{
SERDESGEN_MOD_ID_NONE = 0,
SERDESGEN_MOD_ID_FPD3_2x2 = 1,
SERDESGEN_MOD_ID_GMSL2_2x2 = 2,
SERDESGEN_MOD_ID_GMSL1_4x4 = 3,
SERDESGEN_MOD_ID_FPD3_TO_GMSL2_2x2 = 4,
// new modules go above this line
SERDESGEN_MOD_ID_UNKNOWN = -1,
};
#define SERDESGEN_SETTINGS_FLAG_TX_PATGEN_ENABLE 0x0001
typedef struct SERDESGEN_SETTINGS_t
{
/*
* bit0: enable pattern generator
*/
uint16_t flags;
uint8_t rsvd1;
uint8_t mod_id; // connected module passed back from device
uint16_t tx_speed; // Mbps per lane, all tx ports
uint16_t rx_speed; // Mbps per lane, all rx ports
// reserved space for the future
// maybe pattern generator settings
uint8_t rsvd2[24];
} SERDESGEN_SETTINGS;
#define SERDESGEN_SETTINGS_SIZE 32
#define ETHERNET_SETTINGS2_FLAG_FULL_DUPLEX 0x01
#define ETHERNET_SETTINGS2_FLAG_AUTO_NEG 0x02
#define ETHERNET_SETTINGS2_FLAG_TCPIP_ENABLE 0x04

View File

@ -60,7 +60,8 @@ typedef struct {
struct
{
uint16_t hwComLatencyTestEn : 1;
uint16_t reserved : 15;
uint16_t disableUsbCheckOnBoot : 1;
uint16_t reserved : 14;
} flags;
ETHERNET_SETTINGS2 ethernet1;
ETHERNET_SETTINGS2 ethernet2;
@ -79,12 +80,16 @@ typedef struct {
SERDESCAM_SETTINGS serdescam4;
RAD_REPORTING_SETTINGS reporting;
uint16_t network_enables_4;
SERDESGEN_SETTINGS serdesgen;
RAD_GPTP_SETTINGS gPTP;
uint64_t network_enables_5;
} radgigastar_settings_t;
#pragma pack(pop)
#ifdef __cplusplus
static_assert(sizeof(radgigastar_settings_t) == 634, "RADGigastar settings size mismatch");
static_assert(sizeof(radgigastar_settings_t) == 710, "RADGigastar settings size mismatch");
#include <iostream>