@@ -43,7 +43,9 @@
#endif
#ifdef CONFIG_CRAMFS_CMDLINE
-flash_info_t flash_info[1];
+#if !defined(CONFIG_SYS_NO_FLASH)
+#include <flash.h>
+#endif
#ifndef CONFIG_CMD_JFFS2
#include <linux/stat.h>
@@ -119,7 +121,11 @@ int do_cramfs_load(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
dev.id = &id;
part.dev = &dev;
/* fake the address offset */
+#if !defined(CONFIG_SYS_NO_FLASH)
part.offset = addr - flash_info[id.num].start[0];
+#else
+ part.offset = addr;
+#endif
/* pre-set Boot file name */
if ((filename = getenv("bootfile")) == NULL) {
@@ -182,7 +188,11 @@ int do_cramfs_ls(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
dev.id = &id;
part.dev = &dev;
/* fake the address offset */
+#if !defined(CONFIG_SYS_NO_FLASH)
part.offset = addr - flash_info[id.num].start[0];
+#else
+ part.offset = addr;
+#endif
if (argc == 2)
filename = argv[1];
@@ -41,8 +41,12 @@ struct cramfs_super super;
/* CPU address space offset calculation macro, struct part_info offset is
* device address space offset, so we need to shift it by a device start address. */
+#if !defined(CONFIG_SYS_NO_FLASH)
extern flash_info_t flash_info[];
#define PART_OFFSET(x) (x->offset + flash_info[x->dev->id->num].start[0])
+#else
+#define PART_OFFSET(x) (x->offset)
+#endif
static int cramfs_read_super (struct part_info *info)
{