|
@@ -1316,7 +1316,7 @@ static int fdtdec_init_reserved_memory(void *blob)
|
|
|
|
|
|
int fdtdec_add_reserved_memory(void *blob, const char *basename,
|
|
int fdtdec_add_reserved_memory(void *blob, const char *basename,
|
|
const struct fdt_memory *carveout,
|
|
const struct fdt_memory *carveout,
|
|
- uint32_t *phandlep)
|
|
|
|
|
|
+ uint32_t *phandlep, bool no_map)
|
|
{
|
|
{
|
|
fdt32_t cells[4] = {}, *ptr = cells;
|
|
fdt32_t cells[4] = {}, *ptr = cells;
|
|
uint32_t upper, lower, phandle;
|
|
uint32_t upper, lower, phandle;
|
|
@@ -1416,6 +1416,12 @@ int fdtdec_add_reserved_memory(void *blob, const char *basename,
|
|
if (err < 0)
|
|
if (err < 0)
|
|
return err;
|
|
return err;
|
|
|
|
|
|
|
|
+ if (no_map) {
|
|
|
|
+ err = fdt_setprop(blob, node, "no-map", NULL, 0);
|
|
|
|
+ if (err < 0)
|
|
|
|
+ return err;
|
|
|
|
+ }
|
|
|
|
+
|
|
/* return the phandle for the new node for the caller to use */
|
|
/* return the phandle for the new node for the caller to use */
|
|
if (phandlep)
|
|
if (phandlep)
|
|
*phandlep = phandle;
|
|
*phandlep = phandle;
|
|
@@ -1481,7 +1487,7 @@ int fdtdec_set_carveout(void *blob, const char *node, const char *prop_name,
|
|
fdt32_t value;
|
|
fdt32_t value;
|
|
void *prop;
|
|
void *prop;
|
|
|
|
|
|
- err = fdtdec_add_reserved_memory(blob, name, carveout, &phandle);
|
|
|
|
|
|
+ err = fdtdec_add_reserved_memory(blob, name, carveout, &phandle, false);
|
|
if (err < 0) {
|
|
if (err < 0) {
|
|
debug("failed to add reserved memory: %d\n", err);
|
|
debug("failed to add reserved memory: %d\n", err);
|
|
return err;
|
|
return err;
|