Bindings: Python: Add EthPhyMessage

Also fixes PhyMessages for RADEpsilon(XL)
This commit is contained in:
Kyle Schwarz
2025-09-29 17:17:26 -04:00
parent f22d666f94
commit 11643e2281
11 changed files with 82 additions and 31 deletions
@@ -21,10 +21,11 @@ struct PhyMessage {
bool Enabled;
bool WriteEnable;
bool Clause45Enable;
uint8_t version;
uint8_t BusIndex;
uint8_t Version;
union {
Clause22Message clause22;
Clause45Message clause45;
Clause22Message Clause22;
Clause45Message Clause45;
};
};
@@ -45,7 +45,9 @@ struct PhyRegisterPacket_t {
uint16_t Enabled : 1;
uint16_t WriteEnable : 1;
uint16_t Clause45Enable : 1;
uint16_t reserved : 9;
uint16_t status : 3;
uint16_t reserved : 2;
uint16_t BusIndex : 4;
uint16_t version : 4;
};
uint16_t flags;
@@ -25,6 +25,10 @@ public:
return supportedNetworks;
}
bool supportsComponentVersions() const override { return true; }
bool getEthPhyRegControlSupported() const override { return true; }
protected:
RADEpsilon(neodevice_t neodevice, const driver_factory_t& makeDriver) : Device(neodevice) {
initialize<RADEpsilonSettings, Disk::NeoMemoryDiskDriver, Disk::NeoMemoryDiskDriver>(makeDriver);
@@ -26,7 +26,9 @@ public:
}
bool supportsComponentVersions() const override { return true; }
bool getEthPhyRegControlSupported() const override { return true; }
protected:
RADEpsilonXL(neodevice_t neodevice, const driver_factory_t& makeDriver) : Device(neodevice) {
initialize<RADEpsilonSettings, Disk::NeoMemoryDiskDriver, Disk::NeoMemoryDiskDriver>(makeDriver);