Network: Add CoreMini Mappings
These are used for network and termination enablespull/32/head
parent
cf8c5a31c7
commit
441b16e9a1
|
|
@ -50,60 +50,6 @@ private:
|
||||||
Microblaze_to_HostPC = 0x81 // Microblaze processor data to host PC
|
Microblaze_to_HostPC = 0x81 // Microblaze processor data to host PC
|
||||||
};
|
};
|
||||||
|
|
||||||
enum class CoreMiniNetwork : uint8_t {
|
|
||||||
HSCAN1 = (0),
|
|
||||||
MSCAN1 = (1),
|
|
||||||
LIN1 = (2),
|
|
||||||
LIN2 = (3),
|
|
||||||
VIRTUAL = (4),
|
|
||||||
HSCAN2 = (5),
|
|
||||||
LSFTCAN1 = (6),
|
|
||||||
SWCAN1 = (7),
|
|
||||||
HSCAN3 = (8),
|
|
||||||
GMCGI = (9),
|
|
||||||
J1850_VPW = (10),
|
|
||||||
LIN3 = (11),
|
|
||||||
LIN4 = (12),
|
|
||||||
J1708 = (13),
|
|
||||||
HSCAN4 = (14),
|
|
||||||
HSCAN5 = (15),
|
|
||||||
KLINE1 = (16),
|
|
||||||
KLINE2 = (17),
|
|
||||||
KLINE3 = (18),
|
|
||||||
KLINE4 = (19),
|
|
||||||
FLEXRAY_1A = (20),
|
|
||||||
UART = (21),
|
|
||||||
UART2 = (22),
|
|
||||||
LIN5 = (23),
|
|
||||||
MOST25 = (24),
|
|
||||||
MOST50 = (25),
|
|
||||||
FLEXRAY_1B = (26),
|
|
||||||
SWCAN2 = (27),
|
|
||||||
ETHERNET_DAQ = (28),
|
|
||||||
ETHERNET = (29),
|
|
||||||
FLEXRAY_2A = (30),
|
|
||||||
FLEXRAY_2B = (31),
|
|
||||||
HSCAN6 = (32),
|
|
||||||
HSCAN7 = (33),
|
|
||||||
LIN6 = (34),
|
|
||||||
LSFTCAN2 = (35),
|
|
||||||
OP_ETHERNET1 = (36),
|
|
||||||
OP_ETHERNET2 = (37),
|
|
||||||
OP_ETHERNET3 = (38),
|
|
||||||
OP_ETHERNET4 = (39),
|
|
||||||
OP_ETHERNET5 = (40),
|
|
||||||
OP_ETHERNET6 = (41),
|
|
||||||
OP_ETHERNET7 = (42),
|
|
||||||
OP_ETHERNET8 = (43),
|
|
||||||
OP_ETHERNET9 = (44),
|
|
||||||
OP_ETHERNET10 = (45),
|
|
||||||
OP_ETHERNET11 = (46),
|
|
||||||
OP_ETHERNET12 = (47),
|
|
||||||
KLINE5 = (48),
|
|
||||||
KLINE6 = (49),
|
|
||||||
FLEXRAY1 = (50),
|
|
||||||
FLEXRAY2 = (51)
|
|
||||||
};
|
|
||||||
static bool CommandTypeIsValid(CommandType cmd) {
|
static bool CommandTypeIsValid(CommandType cmd) {
|
||||||
switch(cmd) {
|
switch(cmd) {
|
||||||
case CommandType::PlasmaReadRequest:
|
case CommandType::PlasmaReadRequest:
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
|
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
#include <ostream>
|
#include <ostream>
|
||||||
|
#include "icsneo/platform/optional.h"
|
||||||
|
|
||||||
namespace icsneo {
|
namespace icsneo {
|
||||||
|
|
||||||
|
|
@ -116,6 +117,8 @@ public:
|
||||||
FlexRayControl = 243,
|
FlexRayControl = 243,
|
||||||
HW_COM_Latency_Test = 512,
|
HW_COM_Latency_Test = 512,
|
||||||
Device_Status = 513,
|
Device_Status = 513,
|
||||||
|
UDP = 514,
|
||||||
|
ForwardedMessage = 516,
|
||||||
I2C2 = 517,
|
I2C2 = 517,
|
||||||
I2C3 = 518,
|
I2C3 = 518,
|
||||||
I2C4 = 519,
|
I2C4 = 519,
|
||||||
|
|
@ -138,6 +141,66 @@ public:
|
||||||
Any = 0xFE, // Never actually set as type, but used as flag for filtering
|
Any = 0xFE, // Never actually set as type, but used as flag for filtering
|
||||||
Other = 0xFF
|
Other = 0xFF
|
||||||
};
|
};
|
||||||
|
enum class CoreMini : uint8_t {
|
||||||
|
HSCAN = 0,
|
||||||
|
MSCAN = 1,
|
||||||
|
LIN = 2,
|
||||||
|
LIN2 = 3,
|
||||||
|
Virtual = 4,
|
||||||
|
HSCAN2 = 5,
|
||||||
|
LSFTCAN = 6,
|
||||||
|
SWCAN = 7,
|
||||||
|
HSCAN3 = 8,
|
||||||
|
CGI = 9,
|
||||||
|
J1850VPW = 10,
|
||||||
|
LIN3 = 11,
|
||||||
|
LIN4 = 12,
|
||||||
|
J1708 = 13,
|
||||||
|
HSCAN4 = 14,
|
||||||
|
HSCAN5 = 15,
|
||||||
|
KLine1 = 16,
|
||||||
|
KLine2 = 17,
|
||||||
|
KLine3 = 18,
|
||||||
|
KLine4 = 19,
|
||||||
|
FlexRay1a = 20,
|
||||||
|
UART = 21,
|
||||||
|
UART2 = 22,
|
||||||
|
LIN5 = 23,
|
||||||
|
MOST25 = 24,
|
||||||
|
MOST50 = 25,
|
||||||
|
FlexRay1b = 26,
|
||||||
|
SWCAN2 = 27,
|
||||||
|
EthernetDAQ = 28,
|
||||||
|
Ethernet = 29,
|
||||||
|
FlexRay2a = 30,
|
||||||
|
FlexRay2b = 31,
|
||||||
|
HSCAN6 = 32,
|
||||||
|
HSCAN7 = 33,
|
||||||
|
LIN6 = 34,
|
||||||
|
LSFTCAN2 = 35,
|
||||||
|
OP_Ethernet1 = 36,
|
||||||
|
OP_Ethernet2 = 37,
|
||||||
|
OP_Ethernet3 = 38,
|
||||||
|
OP_Ethernet4 = 39,
|
||||||
|
OP_Ethernet5 = 40,
|
||||||
|
OP_Ethernet6 = 41,
|
||||||
|
OP_Ethernet7 = 42,
|
||||||
|
OP_Ethernet8 = 43,
|
||||||
|
OP_Ethernet9 = 44,
|
||||||
|
OP_Ethernet10 = 45,
|
||||||
|
OP_Ethernet11 = 46,
|
||||||
|
OP_Ethernet12 = 47,
|
||||||
|
TCPVirtual = 48,
|
||||||
|
UDPVirtual = 49,
|
||||||
|
FlexRay1 = 50,
|
||||||
|
FlexRay2 = 51,
|
||||||
|
ForwardedMessage = 52,
|
||||||
|
I2C1 = 53,
|
||||||
|
I2C2 = 54,
|
||||||
|
I2C3 = 55,
|
||||||
|
I2C4 = 56,
|
||||||
|
Ethernet2 = 57,
|
||||||
|
};
|
||||||
static const char* GetTypeString(Type type) {
|
static const char* GetTypeString(Type type) {
|
||||||
switch(type) {
|
switch(type) {
|
||||||
case Type::CAN:
|
case Type::CAN:
|
||||||
|
|
@ -440,6 +503,10 @@ public:
|
||||||
return "HW COM Latency Test";
|
return "HW COM Latency Test";
|
||||||
case NetID::Device_Status:
|
case NetID::Device_Status:
|
||||||
return "Device Status";
|
return "Device Status";
|
||||||
|
case NetID::UDP:
|
||||||
|
return "UDP";
|
||||||
|
case NetID::ForwardedMessage:
|
||||||
|
return "Forwarded Message";
|
||||||
case NetID::I2C2:
|
case NetID::I2C2:
|
||||||
return "I2C 2";
|
return "I2C 2";
|
||||||
case NetID::I2C3:
|
case NetID::I2C3:
|
||||||
|
|
@ -454,12 +521,257 @@ public:
|
||||||
}
|
}
|
||||||
return "Invalid Network";
|
return "Invalid Network";
|
||||||
}
|
}
|
||||||
|
static optional<CoreMini> GetCoreMiniNetworkFromNetID(NetID netid) {
|
||||||
|
switch(netid) {
|
||||||
|
case NetID::HSCAN:
|
||||||
|
return CoreMini::HSCAN;
|
||||||
|
case NetID::MSCAN:
|
||||||
|
return CoreMini::MSCAN;
|
||||||
|
case NetID::LIN:
|
||||||
|
return CoreMini::LIN;
|
||||||
|
case NetID::LIN2:
|
||||||
|
return CoreMini::LIN2;
|
||||||
|
case NetID::Device:
|
||||||
|
return CoreMini::Virtual;
|
||||||
|
case NetID::HSCAN2:
|
||||||
|
return CoreMini::HSCAN2;
|
||||||
|
case NetID::LSFTCAN:
|
||||||
|
return CoreMini::LSFTCAN;
|
||||||
|
case NetID::SWCAN:
|
||||||
|
return CoreMini::SWCAN;
|
||||||
|
case NetID::HSCAN3:
|
||||||
|
return CoreMini::HSCAN3;
|
||||||
|
case NetID::CGI:
|
||||||
|
return CoreMini::CGI;
|
||||||
|
case NetID::J1850VPW:
|
||||||
|
return CoreMini::J1850VPW;
|
||||||
|
case NetID::LIN3:
|
||||||
|
return CoreMini::LIN3;
|
||||||
|
case NetID::LIN4:
|
||||||
|
return CoreMini::LIN4;
|
||||||
|
case NetID::J1708:
|
||||||
|
return CoreMini::J1708;
|
||||||
|
case NetID::HSCAN4:
|
||||||
|
return CoreMini::HSCAN4;
|
||||||
|
case NetID::HSCAN5:
|
||||||
|
return CoreMini::HSCAN5;
|
||||||
|
case NetID::ISO9141:
|
||||||
|
return CoreMini::KLine1;
|
||||||
|
case NetID::ISO9141_2:
|
||||||
|
return CoreMini::KLine2;
|
||||||
|
case NetID::ISO9141_3:
|
||||||
|
return CoreMini::KLine3;
|
||||||
|
case NetID::ISO9141_4:
|
||||||
|
return CoreMini::KLine4;
|
||||||
|
case NetID::FlexRay1a:
|
||||||
|
return CoreMini::FlexRay1a;
|
||||||
|
case NetID::UART:
|
||||||
|
return CoreMini::UART;
|
||||||
|
case NetID::UART2:
|
||||||
|
return CoreMini::UART2;
|
||||||
|
case NetID::LIN5:
|
||||||
|
return CoreMini::LIN5;
|
||||||
|
case NetID::MOST25:
|
||||||
|
return CoreMini::MOST25;
|
||||||
|
case NetID::MOST50:
|
||||||
|
return CoreMini::MOST50;
|
||||||
|
case NetID::FlexRay1b:
|
||||||
|
return CoreMini::FlexRay1b;
|
||||||
|
case NetID::SWCAN2:
|
||||||
|
return CoreMini::SWCAN2;
|
||||||
|
case NetID::Ethernet_DAQ:
|
||||||
|
return CoreMini::EthernetDAQ;
|
||||||
|
case NetID::Ethernet:
|
||||||
|
return CoreMini::Ethernet;
|
||||||
|
case NetID::FlexRay2a:
|
||||||
|
return CoreMini::FlexRay2a;
|
||||||
|
case NetID::FlexRay2b:
|
||||||
|
return CoreMini::FlexRay2b;
|
||||||
|
case NetID::HSCAN6:
|
||||||
|
return CoreMini::HSCAN6;
|
||||||
|
case NetID::HSCAN7:
|
||||||
|
return CoreMini::HSCAN7;
|
||||||
|
case NetID::LIN6:
|
||||||
|
return CoreMini::LIN6;
|
||||||
|
case NetID::LSFTCAN2:
|
||||||
|
return CoreMini::LSFTCAN2;
|
||||||
|
case NetID::OP_Ethernet1:
|
||||||
|
return CoreMini::OP_Ethernet1;
|
||||||
|
case NetID::OP_Ethernet2:
|
||||||
|
return CoreMini::OP_Ethernet2;
|
||||||
|
case NetID::OP_Ethernet3:
|
||||||
|
return CoreMini::OP_Ethernet3;
|
||||||
|
case NetID::OP_Ethernet4:
|
||||||
|
return CoreMini::OP_Ethernet4;
|
||||||
|
case NetID::OP_Ethernet5:
|
||||||
|
return CoreMini::OP_Ethernet5;
|
||||||
|
case NetID::OP_Ethernet6:
|
||||||
|
return CoreMini::OP_Ethernet6;
|
||||||
|
case NetID::OP_Ethernet7:
|
||||||
|
return CoreMini::OP_Ethernet7;
|
||||||
|
case NetID::OP_Ethernet8:
|
||||||
|
return CoreMini::OP_Ethernet8;
|
||||||
|
case NetID::OP_Ethernet9:
|
||||||
|
return CoreMini::OP_Ethernet9;
|
||||||
|
case NetID::OP_Ethernet10:
|
||||||
|
return CoreMini::OP_Ethernet10;
|
||||||
|
case NetID::OP_Ethernet11:
|
||||||
|
return CoreMini::OP_Ethernet11;
|
||||||
|
case NetID::OP_Ethernet12:
|
||||||
|
return CoreMini::OP_Ethernet12;
|
||||||
|
case NetID::TCP:
|
||||||
|
return CoreMini::TCPVirtual;
|
||||||
|
case NetID::UDP:
|
||||||
|
return CoreMini::UDPVirtual;
|
||||||
|
case NetID::FlexRay:
|
||||||
|
return CoreMini::FlexRay1;
|
||||||
|
case NetID::FlexRay2:
|
||||||
|
return CoreMini::FlexRay2;
|
||||||
|
case NetID::ForwardedMessage:
|
||||||
|
return CoreMini::ForwardedMessage;
|
||||||
|
case NetID::I2C:
|
||||||
|
return CoreMini::I2C1;
|
||||||
|
case NetID::I2C2:
|
||||||
|
return CoreMini::I2C2;
|
||||||
|
case NetID::I2C3:
|
||||||
|
return CoreMini::I2C3;
|
||||||
|
case NetID::I2C4:
|
||||||
|
return CoreMini::I2C4;
|
||||||
|
case NetID::Ethernet2:
|
||||||
|
return CoreMini::Ethernet2;
|
||||||
|
default:
|
||||||
|
return nullopt;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
static NetID GetNetIDFromCoreMiniNetwork(CoreMini cm) {
|
||||||
|
switch(cm) {
|
||||||
|
case CoreMini::HSCAN:
|
||||||
|
return NetID::HSCAN;
|
||||||
|
case CoreMini::MSCAN:
|
||||||
|
return NetID::MSCAN;
|
||||||
|
case CoreMini::LIN:
|
||||||
|
return NetID::LIN;
|
||||||
|
case CoreMini::LIN2:
|
||||||
|
return NetID::LIN2;
|
||||||
|
case CoreMini::Virtual:
|
||||||
|
return NetID::Device;
|
||||||
|
case CoreMini::HSCAN2:
|
||||||
|
return NetID::HSCAN2;
|
||||||
|
case CoreMini::LSFTCAN:
|
||||||
|
return NetID::LSFTCAN;
|
||||||
|
case CoreMini::SWCAN:
|
||||||
|
return NetID::SWCAN;
|
||||||
|
case CoreMini::HSCAN3:
|
||||||
|
return NetID::HSCAN3;
|
||||||
|
case CoreMini::CGI:
|
||||||
|
return NetID::CGI;
|
||||||
|
case CoreMini::J1850VPW:
|
||||||
|
return NetID::J1850VPW;
|
||||||
|
case CoreMini::LIN3:
|
||||||
|
return NetID::LIN3;
|
||||||
|
case CoreMini::LIN4:
|
||||||
|
return NetID::LIN4;
|
||||||
|
case CoreMini::J1708:
|
||||||
|
return NetID::J1708;
|
||||||
|
case CoreMini::HSCAN4:
|
||||||
|
return NetID::HSCAN4;
|
||||||
|
case CoreMini::HSCAN5:
|
||||||
|
return NetID::HSCAN5;
|
||||||
|
case CoreMini::KLine1:
|
||||||
|
return NetID::ISO9141;
|
||||||
|
case CoreMini::KLine2:
|
||||||
|
return NetID::ISO9141_2;
|
||||||
|
case CoreMini::KLine3:
|
||||||
|
return NetID::ISO9141_3;
|
||||||
|
case CoreMini::KLine4:
|
||||||
|
return NetID::ISO9141_4;
|
||||||
|
case CoreMini::FlexRay1a:
|
||||||
|
return NetID::FlexRay1a;
|
||||||
|
case CoreMini::UART:
|
||||||
|
return NetID::UART;
|
||||||
|
case CoreMini::UART2:
|
||||||
|
return NetID::UART2;
|
||||||
|
case CoreMini::LIN5:
|
||||||
|
return NetID::LIN5;
|
||||||
|
case CoreMini::MOST25:
|
||||||
|
return NetID::MOST25;
|
||||||
|
case CoreMini::MOST50:
|
||||||
|
return NetID::MOST50;
|
||||||
|
case CoreMini::FlexRay1b:
|
||||||
|
return NetID::FlexRay1b;
|
||||||
|
case CoreMini::SWCAN2:
|
||||||
|
return NetID::SWCAN2;
|
||||||
|
case CoreMini::EthernetDAQ:
|
||||||
|
return NetID::Ethernet_DAQ;
|
||||||
|
case CoreMini::Ethernet:
|
||||||
|
return NetID::Ethernet;
|
||||||
|
case CoreMini::FlexRay2a:
|
||||||
|
return NetID::FlexRay2a;
|
||||||
|
case CoreMini::FlexRay2b:
|
||||||
|
return NetID::FlexRay2b;
|
||||||
|
case CoreMini::HSCAN6:
|
||||||
|
return NetID::HSCAN6;
|
||||||
|
case CoreMini::HSCAN7:
|
||||||
|
return NetID::HSCAN7;
|
||||||
|
case CoreMini::LIN6:
|
||||||
|
return NetID::LIN6;
|
||||||
|
case CoreMini::LSFTCAN2:
|
||||||
|
return NetID::LSFTCAN2;
|
||||||
|
case CoreMini::OP_Ethernet1:
|
||||||
|
return NetID::OP_Ethernet1;
|
||||||
|
case CoreMini::OP_Ethernet2:
|
||||||
|
return NetID::OP_Ethernet2;
|
||||||
|
case CoreMini::OP_Ethernet3:
|
||||||
|
return NetID::OP_Ethernet3;
|
||||||
|
case CoreMini::OP_Ethernet4:
|
||||||
|
return NetID::OP_Ethernet4;
|
||||||
|
case CoreMini::OP_Ethernet5:
|
||||||
|
return NetID::OP_Ethernet5;
|
||||||
|
case CoreMini::OP_Ethernet6:
|
||||||
|
return NetID::OP_Ethernet6;
|
||||||
|
case CoreMini::OP_Ethernet7:
|
||||||
|
return NetID::OP_Ethernet7;
|
||||||
|
case CoreMini::OP_Ethernet8:
|
||||||
|
return NetID::OP_Ethernet8;
|
||||||
|
case CoreMini::OP_Ethernet9:
|
||||||
|
return NetID::OP_Ethernet9;
|
||||||
|
case CoreMini::OP_Ethernet10:
|
||||||
|
return NetID::OP_Ethernet10;
|
||||||
|
case CoreMini::OP_Ethernet11:
|
||||||
|
return NetID::OP_Ethernet11;
|
||||||
|
case CoreMini::OP_Ethernet12:
|
||||||
|
return NetID::OP_Ethernet12;
|
||||||
|
case CoreMini::TCPVirtual:
|
||||||
|
return NetID::TCP;
|
||||||
|
case CoreMini::UDPVirtual:
|
||||||
|
return NetID::UDP;
|
||||||
|
case CoreMini::FlexRay1:
|
||||||
|
return NetID::FlexRay;
|
||||||
|
case CoreMini::FlexRay2:
|
||||||
|
return NetID::FlexRay2;
|
||||||
|
case CoreMini::ForwardedMessage:
|
||||||
|
return NetID::ForwardedMessage;
|
||||||
|
case CoreMini::I2C1:
|
||||||
|
return NetID::I2C;
|
||||||
|
case CoreMini::I2C2:
|
||||||
|
return NetID::I2C2;
|
||||||
|
case CoreMini::I2C3:
|
||||||
|
return NetID::I2C3;
|
||||||
|
case CoreMini::I2C4:
|
||||||
|
return NetID::I2C4;
|
||||||
|
case CoreMini::Ethernet2:
|
||||||
|
return NetID::Ethernet2;
|
||||||
|
}
|
||||||
|
return NetID::Invalid; // Should be unreachable, the compiler should warn about new CoreMini IDs
|
||||||
|
}
|
||||||
|
|
||||||
Network() { setValue(NetID::Invalid); }
|
Network() { setValue(NetID::Invalid); }
|
||||||
Network(uint16_t netid) { setValue((NetID)netid); }
|
Network(uint16_t netid) { setValue((NetID)netid); }
|
||||||
Network(NetID netid) { setValue(netid); }
|
Network(NetID netid) { setValue(netid); }
|
||||||
|
Network(CoreMini cm) { setValue(GetNetIDFromCoreMiniNetwork(cm)); }
|
||||||
NetID getNetID() const { return value; }
|
NetID getNetID() const { return value; }
|
||||||
Type getType() const { return type; }
|
Type getType() const { return type; }
|
||||||
|
optional<CoreMini> getCoreMini() const { return GetCoreMiniNetworkFromNetID(getNetID()); }
|
||||||
friend std::ostream& operator<<(std::ostream& os, const Network& network) {
|
friend std::ostream& operator<<(std::ostream& os, const Network& network) {
|
||||||
os << GetNetIDString(network.getNetID());
|
os << GetNetIDString(network.getNetID());
|
||||||
return os;
|
return os;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue