Compare commits

..

1 Commits

Author SHA1 Message Date
Francesco Valla 58384702db
Merge 31d4a750d8 into b0b7623b4c 2026-03-16 13:16:38 -07:00
5 changed files with 8 additions and 43 deletions

View File

@ -360,7 +360,7 @@ if(LIBICSNEO_ENABLE_DXX)
include(FetchContent) include(FetchContent)
FetchContent_Declare(libredxx FetchContent_Declare(libredxx
GIT_REPOSITORY https://github.com/Zeranoe/libredxx.git GIT_REPOSITORY https://github.com/Zeranoe/libredxx.git
GIT_TAG e823a96c39a64ab41b7d1632dbe8f86bb854df83 GIT_TAG 267abf26a99fa69ed80a4180b155245a36fad101
) )
set(LIBREDXX_DISABLE_INSTALL ON) set(LIBREDXX_DISABLE_INSTALL ON)
FetchContent_MakeAvailable(libredxx) FetchContent_MakeAvailable(libredxx)

View File

@ -128,7 +128,6 @@ enum class ChipID : uint8_t {
RADGALAXY2_SYSMON_CHIP = 123, RADGALAXY2_SYSMON_CHIP = 123,
RADCOMET3_ZCHIP = 125, RADCOMET3_ZCHIP = 125,
Connect_LINUX = 126, Connect_LINUX = 126,
VEM_04_T1S_LIN_ZCHIP = 129,
RADMOONT1S_ZCHIP = 130, RADMOONT1S_ZCHIP = 130,
RADGigastar2_ZYNQ = 131, RADGigastar2_ZYNQ = 131,
RADGemini_MCHIP = 135, RADGemini_MCHIP = 135,

View File

@ -62,31 +62,6 @@ public:
ProductID getProductID() const override { ProductID getProductID() const override {
return ProductID::neoVIFIRE3; return ProductID::neoVIFIRE3;
} }
const std::vector<ChipInfo>& getChipInfo() const override {
static std::vector<ChipInfo> chips = {
{ChipID::neoVIFIRE3_ZCHIP, true, "ZCHIP", "fire3_zchip_ief", 0, FirmwareType::IEF},
{ChipID::neoVIFIRE3_SCHIP, true, "SCHIP", "fire3_schip_ief", 1, FirmwareType::IEF},
{ChipID::neoVIFIRE3_LINUX, true, "Linux Flash", "fire3_lnx_flash_ief", 2, FirmwareType::IEF},
{ChipID::VEM_04_T1S_LIN_ZCHIP, true, "VEM-04-Z", "vem_04_t1s_lin_zchip_ief", 3, FirmwareType::IEF},
};
return chips;
}
BootloaderPipeline getBootloader() override {
return BootloaderPipeline()
.add<FlashPhase>(ChipID::neoVIFIRE3_ZCHIP, BootloaderCommunication::Application, true, false)
.add<FlashPhase>(ChipID::neoVIFIRE3_SCHIP, BootloaderCommunication::Application, false, true)
.add<FlashPhase>(ChipID::neoVIFIRE3_LINUX, BootloaderCommunication::Application, false, false, false)
.add<FlashPhase>(ChipID::VEM_04_T1S_LIN_ZCHIP, BootloaderCommunication::Application, false, false)
.add<FinalizePhase>(ChipID::neoVIFIRE3_ZCHIP, BootloaderCommunication::Application)
.add<FinalizePhase>(ChipID::neoVIFIRE3_SCHIP, BootloaderCommunication::Application)
.add<FinalizePhase>(ChipID::neoVIFIRE3_LINUX, BootloaderCommunication::Application)
.add<FinalizePhase>(ChipID::VEM_04_T1S_LIN_ZCHIP, BootloaderCommunication::Application)
.add<EnterApplicationPhase>(ChipID::neoVIFIRE3_ZCHIP)
.add<ReconnectPhase>()
.addSetting(BootloaderSetting::UpdateAll, true);
}
protected: protected:
NeoVIFIRE3T1SLIN(neodevice_t neodevice, const driver_factory_t& makeDriver) : Device(neodevice) { NeoVIFIRE3T1SLIN(neodevice_t neodevice, const driver_factory_t& makeDriver) : Device(neodevice) {
initialize<NeoVIFIRE3T1SLINSettings, Disk::ExtExtractorDiskReadDriver, Disk::NeoMemoryDiskDriver>(makeDriver); initialize<NeoVIFIRE3T1SLINSettings, Disk::ExtExtractorDiskReadDriver, Disk::NeoMemoryDiskDriver>(makeDriver);

View File

@ -103,14 +103,6 @@ public:
#endif #endif
} }
bool set_rcvbuf(uint32_t size) {
return ::setsockopt(mFD, SOL_SOCKET, SO_RCVBUF, (char*)&size, sizeof(size)) == 0;
}
bool set_sndbuf(uint32_t size) {
return ::setsockopt(mFD, SOL_SOCKET, SO_SNDBUF, (char*)&size, sizeof(size)) == 0;
}
bool connect(const Address& to) { bool connect(const Address& to) {
return ::connect(mFD, (sockaddr*)&to.sockaddr(), sizeof(sockaddr_in)) != -1; return ::connect(mFD, (sockaddr*)&to.sockaddr(), sizeof(sockaddr_in)) != -1;
} }
@ -211,6 +203,13 @@ public:
return true; return true;
} }
bool join_multicast(const std::string& interfaceIP, const std::string& multicastIP) {
ip_mreq mreq;
inet_pton(AF_INET, interfaceIP.c_str(), &mreq.imr_interface);
inet_pton(AF_INET, multicastIP.c_str(), &mreq.imr_multiaddr);
return setsockopt(mFD, IPPROTO_IP, IP_ADD_MEMBERSHIP, (const char*)&mreq, sizeof(mreq)) == 0;
}
operator bool() const { return mFD != -1; } operator bool() const { return mFD != -1; }
operator SocketHandleType() const { return mFD; } operator SocketHandleType() const { return mFD; }
private: private:

View File

@ -116,14 +116,6 @@ bool Servd::open() {
return false; return false;
} }
dataSocket = std::make_unique<Socket>(AF_INET, SOCK_STREAM, 0); dataSocket = std::make_unique<Socket>(AF_INET, SOCK_STREAM, 0);
if(!dataSocket->set_rcvbuf(4 * 1024 * 1024)) {
EventManager::GetInstance().add(APIEvent::Type::SyscallError, APIEvent::Severity::Error);
return false;
}
if(!dataSocket->set_sndbuf(4 * 1024 * 1024)) {
EventManager::GetInstance().add(APIEvent::Type::SyscallError, APIEvent::Severity::Error);
return false;
}
const auto& ip = tokens[0]; const auto& ip = tokens[0];
uint16_t port = 0; uint16_t port = 0;
try { try {