summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (from parent 1: af37084)
raw | patch | inline | side by side (from parent 1: af37084)
author | Sam Nelson <sam.nelson@ti.com> | |
Wed, 11 Apr 2018 20:49:30 +0000 (16:49 -0400) | ||
committer | Sam Nelson <sam.nelson@ti.com> | |
Thu, 9 Aug 2018 20:01:32 +0000 (16:01 -0400) |
- Modified to place memory only if loadSegment is defined
- For new platforms, SYSBIOS will not handle platform memory map.
So the linker command file is external. Only way to get the
start address is using the external linker symbol.
- Added new variable loadSymbol to allow setting the tableptr using
symbol
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
- For new platforms, SYSBIOS will not handle platform memory map.
So the linker command file is external. Only way to get the
start address is using the external linker symbol.
- Added new variable loadSymbol to allow setting the tableptr using
symbol
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
packages/ti/ipc/remoteproc/Resource.xdc | patch | blob | history | |
packages/ti/ipc/remoteproc/Resource.xs | patch | blob | history |
index 8051cfc29bcb5cebb506536e4d5da2eeb90a2a42..33124aaf6f39cf709da02ace5bee4b7dcb116d72 100644 (file)
/*
- * Copyright (c) 2011-2013, Texas Instruments Incorporated
+ * Copyright (c) 2011-2018, Texas Instruments Incorporated
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
*/
metaonly config String loadSegment;
+ /*!
+ * @def Resource_loadSymbol
+ * @brief If loadSymbol is defined, loadAddr is overridden with the
+ * loadSymbol as external pointer
+ */
+ metaonly config String loadSymbol;
+
+
/*!
* @def Resource_traceOnly
* @brief Set traceOnly to true in order to get an image with trace
index 59a4e696d09d51bbb99ba36cf403a48d470448b8..f4c41220e04452d95fe454ca84358a6c79f0ad84 100644 (file)
this.$logError("Resource.loadSegment not found", this);
}
addr = segment.base;
+ /* The .resource_table section should always be at the segment base */
+ Program.sectMap[".resource_table"] = new Program.SectionSpec();
+ Program.sectMap[".resource_table"].type = "NOINIT";
+ Program.sectMap[".resource_table"].loadAddress = addr;
}
-
- /* The .resource_table section should always be at the segment base */
- Program.sectMap[".resource_table"] = new Program.SectionSpec();
- Program.sectMap[".resource_table"].type = "NOINIT";
- Program.sectMap[".resource_table"].loadAddress = addr;
}
function module$static$init(obj, params)
if (null == segment) {
this.$logError("Resource.loadSegment not found", this);
}
-// print("Resource.loadSegment", Resource.loadSegment);
addr = segment.base;
+ } else {
+ if (Resource.loadSymbol != undefined) {
+ addr = $externPtr(Resource.loadSymbol);
+ }
}
/* Assign the addresses for the module state variables */