if (ret)
return;
- fdt_fixup_ethernet(*of_flat_tree);
-
ret = fdt_add_subnode(*of_flat_tree, 0, "chosen");
if ((ret >= 0 || ret == -FDT_ERR_EXISTS)) {
bootline = getenv("bootargs");
{
char *local_args[2];
char str[16];
+ int dcache;
if (flag != BOOTM_STATE_OS_GO)
return 0;
sprintf(str, "%lx", images->ep); /* write entry-point into string */
local_args[0] = argv[0];
local_args[1] = str; /* and provide it via the arguments */
+
+ /*
+ * QNX images require the data cache is disabled.
+ */
+ dcache = dcache_status();
+ if (dcache)
+ dcache_disable();
+
do_bootelf(NULL, 0, 2, local_args);
+ if (dcache)
+ dcache_enable();
+
return 1;
}
#endif