mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Desktop: Add option to force overwrite firmware for OSTC4.
In order to support development of the open source firmware of the OSTC4. Requires changes in libdivecomputer. Signed-off-by: Michael Keller <github@ike.ch>
This commit is contained in:
parent
5b263a8f4e
commit
324fbfa685
7 changed files with 47 additions and 33 deletions
|
|
@ -491,13 +491,13 @@ bool ConfigureDiveComputer::restoreXMLBackup(QString fileName, DeviceDetails *de
|
|||
return true;
|
||||
}
|
||||
|
||||
void ConfigureDiveComputer::startFirmwareUpdate(QString fileName, device_data_t *data)
|
||||
void ConfigureDiveComputer::startFirmwareUpdate(QString fileName, device_data_t *data, bool forceUpdate)
|
||||
{
|
||||
setState(FWUPDATE);
|
||||
if (firmwareThread)
|
||||
firmwareThread->deleteLater();
|
||||
|
||||
firmwareThread = new FirmwareUpdateThread(this, data, fileName);
|
||||
firmwareThread = new FirmwareUpdateThread(this, data, fileName, forceUpdate);
|
||||
connectThreadSignals(firmwareThread);
|
||||
|
||||
firmwareThread->start();
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ public:
|
|||
void fetchDeviceDetails();
|
||||
bool saveXMLBackup(QString fileName, DeviceDetails *details, device_data_t *data);
|
||||
bool restoreXMLBackup(QString fileName, DeviceDetails *details);
|
||||
void startFirmwareUpdate(QString fileName, device_data_t *data);
|
||||
void startFirmwareUpdate(QString fileName, device_data_t *data, bool forceUpdate);
|
||||
void resetSettings(device_data_t *data);
|
||||
|
||||
QString dc_open(device_data_t *data);
|
||||
|
|
|
|||
|
|
@ -2203,7 +2203,7 @@ void WriteSettingsThread::run()
|
|||
}
|
||||
|
||||
|
||||
FirmwareUpdateThread::FirmwareUpdateThread(QObject *parent, device_data_t *data, QString fileName) : DeviceThread(parent, data), m_fileName(fileName)
|
||||
FirmwareUpdateThread::FirmwareUpdateThread(QObject *parent, device_data_t *data, QString fileName, bool forceUpdate) : DeviceThread(parent, data), m_fileName(fileName), m_forceUpdate(forceUpdate)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
@ -2218,7 +2218,7 @@ void FirmwareUpdateThread::run()
|
|||
}
|
||||
switch (dc_device_get_type(m_data->device)) {
|
||||
case DC_FAMILY_HW_OSTC3:
|
||||
rc = hw_ostc3_device_fwupdate(m_data->device, qPrintable(m_fileName));
|
||||
rc = hw_ostc3_device_fwupdate(m_data->device, qPrintable(m_fileName), m_forceUpdate);
|
||||
break;
|
||||
case DC_FAMILY_HW_OSTC:
|
||||
rc = hw_ostc_device_fwupdate(m_data->device, qPrintable(m_fileName));
|
||||
|
|
|
|||
|
|
@ -44,11 +44,12 @@ private:
|
|||
class FirmwareUpdateThread : public DeviceThread {
|
||||
Q_OBJECT
|
||||
public:
|
||||
FirmwareUpdateThread(QObject *parent, device_data_t *data, QString fileName);
|
||||
FirmwareUpdateThread(QObject *parent, device_data_t *data, QString fileName, bool forceUpdate);
|
||||
void run();
|
||||
|
||||
private:
|
||||
QString m_fileName;
|
||||
bool m_forceUpdate;
|
||||
};
|
||||
|
||||
class ResetSettingsThread : public DeviceThread {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue