diff options
author | Amaury Pouly <amaury.pouly@gmail.com> | 2017-01-26 21:54:12 +0100 |
---|---|---|
committer | Amaury Pouly <amaury.pouly@gmail.com> | 2017-02-04 17:19:20 +0100 |
commit | 2a3a6bb4b343c95c2928dfa998c4edcf100774f9 (patch) | |
tree | 8c9a2f70cf4b6152602a6b4892b21a3ca9ed3ab2 /utils/regtools/qeditor | |
parent | fa5324bbbb77a445652d56c714a1d8f93ded61d5 (diff) | |
download | rockbox-2a3a6bb4b343c95c2928dfa998c4edcf100774f9.tar.gz rockbox-2a3a6bb4b343c95c2928dfa998c4edcf100774f9.zip |
regtools/qeditor: compute RAM size
Change-Id: I7bfb5cc25bc3dc55f379b2319b20dc9510434de0
Diffstat (limited to 'utils/regtools/qeditor')
-rw-r--r-- | utils/regtools/qeditor/std_analysers.cpp | 22 | ||||
-rw-r--r-- | utils/regtools/qeditor/std_analysers.h | 1 |
2 files changed, 23 insertions, 0 deletions
diff --git a/utils/regtools/qeditor/std_analysers.cpp b/utils/regtools/qeditor/std_analysers.cpp index 1a504cd617..1acd25e7fc 100644 --- a/utils/regtools/qeditor/std_analysers.cpp +++ b/utils/regtools/qeditor/std_analysers.cpp | |||
@@ -870,6 +870,13 @@ EmiAnalyser::EmiAnalyser(const soc_desc::soc_ref_t& soc, IoBackend *backend) | |||
870 | m_emi_freq_label = new QLineEdit; | 870 | m_emi_freq_label = new QLineEdit; |
871 | m_emi_freq_label->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); | 871 | m_emi_freq_label->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); |
872 | m_emi_freq_label->setReadOnly(true); | 872 | m_emi_freq_label->setReadOnly(true); |
873 | m_emi_size_label = new QLineEdit; | ||
874 | m_emi_size_label->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); | ||
875 | m_emi_size_label->setReadOnly(true); | ||
876 | line_layout->addStretch(); | ||
877 | line_layout->addWidget(new QLabel("Size:")); | ||
878 | line_layout->addWidget(m_emi_size_label); | ||
879 | line_layout->addWidget(new QLabel("MiB")); | ||
873 | line_layout->addStretch(); | 880 | line_layout->addStretch(); |
874 | line_layout->addWidget(new QLabel("Frequency:")); | 881 | line_layout->addWidget(new QLabel("Frequency:")); |
875 | line_layout->addWidget(m_emi_freq_label); | 882 | line_layout->addWidget(m_emi_freq_label); |
@@ -1008,6 +1015,21 @@ void EmiAnalyser::FillTable() | |||
1008 | 1015 | ||
1009 | m_emi_freq_label->setText(QString().sprintf("%.3f", m_emi_freq / 1000000.0)); | 1016 | m_emi_freq_label->setText(QString().sprintf("%.3f", m_emi_freq / 1000000.0)); |
1010 | 1017 | ||
1018 | soc_word_t rows, columns, cs_map; | ||
1019 | if(ReadFieldOld("DRAM", "CTL14", "CS_MAP", cs_map) && | ||
1020 | ReadFieldOld("DRAM", "CTL10", "ADDR_PINS", rows) && | ||
1021 | ReadFieldOld("DRAM", "CTL11", "COLUMN_SIZE", columns)) | ||
1022 | { | ||
1023 | rows = 13 - rows; | ||
1024 | columns = 12 - columns; | ||
1025 | soc_word_t banks = 4; | ||
1026 | soc_word_t chips = __builtin_popcount(cs_map); | ||
1027 | unsigned long size = 2 * (1 << (rows + columns)) * chips * banks; | ||
1028 | m_emi_size_label->setText(QString().sprintf("%lu", (unsigned long)size / 1024 / 1024)); | ||
1029 | } | ||
1030 | else | ||
1031 | m_emi_size_label->setText("<invalid>"); | ||
1032 | |||
1011 | NewGroup("Control Parameters"); | 1033 | NewGroup("Control Parameters"); |
1012 | if(ReadFieldOld("EMI", "CTRL", "PORT_PRIORITY_ORDER", value)) | 1034 | if(ReadFieldOld("EMI", "CTRL", "PORT_PRIORITY_ORDER", value)) |
1013 | { | 1035 | { |
diff --git a/utils/regtools/qeditor/std_analysers.h b/utils/regtools/qeditor/std_analysers.h index 3ab4735e0a..255ae283b8 100644 --- a/utils/regtools/qeditor/std_analysers.h +++ b/utils/regtools/qeditor/std_analysers.h | |||
@@ -126,6 +126,7 @@ private: | |||
126 | DisplayMode m_display_mode; | 126 | DisplayMode m_display_mode; |
127 | unsigned m_emi_freq; | 127 | unsigned m_emi_freq; |
128 | QLineEdit *m_emi_freq_label; | 128 | QLineEdit *m_emi_freq_label; |
129 | QLineEdit *m_emi_size_label; | ||
129 | }; | 130 | }; |
130 | 131 | ||
131 | /** | 132 | /** |