diff options
| author | Amaury Pouly <amaury.pouly@gmail.com> | 2014-09-30 15:51:38 +0200 |
|---|---|---|
| committer | Amaury Pouly <amaury.pouly@gmail.com> | 2014-12-15 22:53:33 +0100 |
| commit | dc3ae2aeb9919b0a45d9ff2dfe07d26a9625e57d (patch) | |
| tree | a84ccfd90ab082aa0aae0b1a73571fb07e548fa4 /utils/regtools/qeditor/backend.cpp | |
| parent | 1bcc4fc67bb0aa7b7fab9f9a098f3b473ea1637f (diff) | |
| download | rockbox-dc3ae2aeb9919b0a45d9ff2dfe07d26a9625e57d.zip rockbox-dc3ae2aeb9919b0a45d9ff2dfe07d26a9625e57d.tar.gz rockbox-dc3ae2aeb9919b0a45d9ff2dfe07d26a9625e57d.tar.bz2 rockbox-dc3ae2aeb9919b0a45d9ff2dfe07d26a9625e57d.tar.xz | |
qeditor: rework register dump to be more general and flexible
Change-Id: I2fb7a2813c93f0804ed1ca6223625706d0dff9a5
Reviewed-on: http://gerrit.rockbox.org/998
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
Diffstat (limited to 'utils/regtools/qeditor/backend.cpp')
| -rw-r--r-- | utils/regtools/qeditor/backend.cpp | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/utils/regtools/qeditor/backend.cpp b/utils/regtools/qeditor/backend.cpp index c2db1f2..e9d7941 100644 --- a/utils/regtools/qeditor/backend.cpp +++ b/utils/regtools/qeditor/backend.cpp @@ -587,10 +587,17 @@ bool BackendHelper::ReadRegisterField(const QString& dev, const QString& reg, return true; } -bool BackendHelper::DumpAllRegisters(const QString& filename) +bool BackendHelper::DumpAllRegisters(const QString& filename, bool ignore_errors) { FileIoBackend b(filename, QString::fromStdString(m_soc.GetSoc().name)); - BackendHelper bh(&b, m_soc); + bool ret = DumpAllRegisters(&b, ignore_errors); + return ret && b.Commit(); +} + +bool BackendHelper::DumpAllRegisters(IoBackend *backend, bool ignore_errors) +{ + BackendHelper bh(backend, m_soc); + bool ret = true; for(size_t i = 0; i < m_soc.GetSoc().dev.size(); i++) { const soc_dev_t& dev = m_soc.GetSoc().dev[i]; @@ -605,12 +612,20 @@ bool BackendHelper::DumpAllRegisters(const QString& filename) QString regname = QString::fromStdString(reg.addr[l].name); soc_word_t val; if(!ReadRegister(devname, regname, val)) - return false; + { + ret = false; + if(!ignore_errors) + return false; + } if(!bh.WriteRegister(devname, regname, val)) - return false; + { + ret = false; + if(!ignore_errors) + return false; + } } } } } - return b.Commit(); + return ret; } |