fusee_cpp: we're over the size limit with mtc in nv-text

This commit is contained in:
Michael Scire 2021-09-01 23:51:51 -07:00 committed by SciresM
parent 7ea9b533d9
commit 622650623c
5 changed files with 22 additions and 22 deletions

View file

@ -23,17 +23,17 @@ SECTIONS {
BYTE(0x00);
}
.ovl_mtc_erista {
KEEP(*(.text._ZN3ams6nxboot22DoMemoryTrainingEristaEiPv))
fusee_mtc_erista.o(.text*);
fusee_mtc_erista.o(SORT(.rodata*));
fusee_mtc_erista.o(SORT(.data*));
fusee_mtc_erista.o(SORT(.bss*));
FILL(0x00000000)
. = ORIGIN(ovl) + LENGTH(ovl) - 1;
BYTE(0x00);
}
.ovl_mtc_mariko {
KEEP(*(.text._ZN3ams6nxboot22DoMemoryTrainingMarikoEPbiPv))
fusee_mtc_mariko.o(.text*);
fusee_mtc_mariko.o(SORT(.rodata*));
fusee_mtc_mariko.o(SORT(.data*));
fusee_mtc_mariko.o(SORT(.bss*));
FILL(0x00000000)
. = ORIGIN(ovl) + LENGTH(ovl) - 1;
BYTE(0x00);

View file

@ -74,7 +74,7 @@ namespace ams::nxboot {
EmcDvfsTimingTable *GetEmcDvfsTimingTables(int index, void *mtc_tables_buffer) {
/* Get the compressed table. */
u8 *cmp_table;
const u8 *cmp_table;
size_t cmp_table_size;
switch (index) {
#define HANDLE_CASE(N, TABLE) \

View file

@ -14,7 +14,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
constinit u8 T210SdevEmcDvfsTableS6gb01[0x2680] = {
constexpr const u8 T210SdevEmcDvfsTableS6gb01[0x2680] = {
0x07, 0x00, 0x00, 0x00, 0x31, 0x30, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F, 0x4E, 0x6F,
0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x39, 0x2E, 0x38, 0x2E,
0x37, 0x5F, 0x56, 0x31, 0x2E, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@ -633,7 +633,7 @@ constinit u8 T210SdevEmcDvfsTableS6gb01[0x2680] = {
0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x18, 0x80, 0x00, 0x00, 0x00, 0x00, 0x9C, 0x04, 0x00, 0x00,
};
constinit u8 T210SdevEmcDvfsTableH4gb01[0x2680] = {
constexpr const u8 T210SdevEmcDvfsTableH4gb01[0x2680] = {
0x07, 0x00, 0x00, 0x00, 0x31, 0x30, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F, 0x4E, 0x6F,
0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x39, 0x2E, 0x38, 0x2E,
0x37, 0x5F, 0x56, 0x31, 0x2E, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@ -1252,7 +1252,7 @@ constinit u8 T210SdevEmcDvfsTableH4gb01[0x2680] = {
0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x18, 0x80, 0x00, 0x00, 0x00, 0x00, 0x9C, 0x04, 0x00, 0x00,
};
constinit u8 T210SdevEmcDvfsTableS4gb01[0x2680] = {
constexpr const u8 T210SdevEmcDvfsTableS4gb01[0x2680] = {
0x07, 0x00, 0x00, 0x00, 0x31, 0x30, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F, 0x4E, 0x6F,
0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x39, 0x2E, 0x38, 0x2E,
0x37, 0x5F, 0x56, 0x31, 0x2E, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,

View file

@ -14,7 +14,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
constinit u8 T210b01SdevEmcDvfsTableM4gb03[0x803] = {
constexpr const u8 T210b01SdevEmcDvfsTableM4gb03[0x803] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x32, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -146,7 +146,7 @@ constinit u8 T210b01SdevEmcDvfsTableM4gb03[0x803] = {
0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableS4gb01[0x7F6] = {
constexpr const u8 T210b01SdevEmcDvfsTableS4gb01[0x7F6] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x33, 0x2E, 0x31, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -277,7 +277,7 @@ constinit u8 T210b01SdevEmcDvfsTableS4gb01[0x7F6] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableS4gbY01[0x806] = {
constexpr const u8 T210b01SdevEmcDvfsTableS4gbY01[0x806] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x32, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -409,7 +409,7 @@ constinit u8 T210b01SdevEmcDvfsTableS4gbY01[0x806] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableS1y8gbY01[0x804] = {
constexpr const u8 T210b01SdevEmcDvfsTableS1y8gbY01[0x804] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x32, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -541,7 +541,7 @@ constinit u8 T210b01SdevEmcDvfsTableS1y8gbY01[0x804] = {
0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableS1y4gbX03[0x805] = {
constexpr const u8 T210b01SdevEmcDvfsTableS1y4gbX03[0x805] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x32, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -673,7 +673,7 @@ constinit u8 T210b01SdevEmcDvfsTableS1y4gbX03[0x805] = {
0x00, 0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableH4gb03[0x7FA] = {
constexpr const u8 T210b01SdevEmcDvfsTableH4gb03[0x7FA] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x33, 0x2E, 0x31, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -804,7 +804,7 @@ constinit u8 T210b01SdevEmcDvfsTableH4gb03[0x7FA] = {
0x00, 0x00, 0x9C, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableM1y4gb01[0x7FF] = {
constexpr const u8 T210b01SdevEmcDvfsTableM1y4gb01[0x7FF] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x32, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -935,7 +935,7 @@ constinit u8 T210b01SdevEmcDvfsTableM1y4gb01[0x7FF] = {
0x50, 0x10, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x9C, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableS1y4gb01[0x80A] = {
constexpr const u8 T210b01SdevEmcDvfsTableS1y4gb01[0x80A] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x35, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -1067,7 +1067,7 @@ constinit u8 T210b01SdevEmcDvfsTableS1y4gb01[0x80A] = {
0x00, 0x00, 0x9C, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableH1y4gb01[0x7FC] = {
constexpr const u8 T210b01SdevEmcDvfsTableH1y4gb01[0x7FC] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x35, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -1198,7 +1198,7 @@ constinit u8 T210b01SdevEmcDvfsTableH1y4gb01[0x7FC] = {
0x00, 0x00, 0x00, 0x00, 0x9C, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableS4gb03[0x7F5] = {
constexpr const u8 T210b01SdevEmcDvfsTableS4gb03[0x7F5] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x33, 0x2E, 0x31, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -1329,7 +1329,7 @@ constinit u8 T210b01SdevEmcDvfsTableS4gb03[0x7F5] = {
0x00, 0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableS8gb03[0x80F] = {
constexpr const u8 T210b01SdevEmcDvfsTableS8gb03[0x80F] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x32, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -1461,7 +1461,7 @@ constinit u8 T210b01SdevEmcDvfsTableS8gb03[0x80F] = {
0x50, 0x10, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x9C, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableS1y4gbY01[0x802] = {
constexpr const u8 T210b01SdevEmcDvfsTableS1y4gbY01[0x802] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x32, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,
@ -1593,7 +1593,7 @@ constinit u8 T210b01SdevEmcDvfsTableS1y4gbY01[0x802] = {
0x00, 0x00,
};
constinit u8 T210b01SdevEmcDvfsTableS1y8gbX03[0x7FD] = {
constexpr const u8 T210b01SdevEmcDvfsTableS1y8gbX03[0x7FD] = {
0xFF, 0x18, 0x03, 0x00, 0x00, 0x00, 0x30, 0x31, 0x5F, 0x32, 0x30, 0x34, 0x30, 0x30, 0x30, 0x5F,
0x4E, 0x6F, 0x43, 0x66, 0x67, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6F, 0x6E, 0x5F, 0x56, 0x30, 0x2E,
0x34, 0x2E, 0x32, 0x5F, 0x56, 0x32, 0x2E, 0x30, 0x00, 0x01, 0x00, 0x06, 0x71, 0xE0, 0x1C, 0x03,

View file

@ -81,7 +81,7 @@ def main(argc, argv):
assert up('<I', params[soc][board][-1][0x40:0x44])[0] == 1600000
assert up('<I', params[soc][board][0 if soc == 'mariko' else 3][0x40:0x44])[0] == 204000
data = data_204 + data_1600
f.write('%s\n' % ('constinit u8 %s[0x%03X] = {' % (board, len(data))))
f.write('%s\n' % ('constexpr const u8 %s[0x%03X] = {' % (board, len(data))))
while data:
block = data[:0x10]
data = data[0x10:]