Update of /cvsroot/blob/blob/src/blob
In directory usw-pr-cvs1:/tmp/cvs-serv8998/src/blob
Modified Files:
cramfs.c jffs2.c load_kernel.c zImage.c
Log Message:
add filename to load_kernel methods
Index: cramfs.c
===================================================================
RCS file: /cvsroot/blob/blob/src/blob/cramfs.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- cramfs.c 16 Feb 2002 00:43:59 -0000 1.3
+++ cramfs.c 27 Apr 2002 07:32:40 -0000 1.4
@@ -112,7 +112,7 @@
return total_size;
}
-static u32 cramfs_load_kernel(u32 *dest, struct part_info *part)
+static u32 cramfs_load_kernel(u32 *dest, struct part_info *part, char *filename)
{
struct cramfs_super *super;
struct cramfs_inode *inode;
@@ -134,6 +134,8 @@
/* does it have 5 to 8 characters? */
if (!inode->namelen == 2) continue;
name = (char *) (inode + 1);
+
+ /* FIXME - should use "filename" */
if (!strncmp("linux\0\0", name, 8)) {
size = cramfs_load_file(dest, part, inode);
break;
Index: jffs2.c
===================================================================
RCS file: /cvsroot/blob/blob/src/blob/jffs2.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- jffs2.c 16 Feb 2002 00:43:59 -0000 1.3
+++ jffs2.c 27 Apr 2002 07:32:40 -0000 1.4
@@ -299,6 +299,10 @@
unsigned long version, off;
i = 0;
+ if (name[i] == '/') {
+ pino = 1;
+ i++;
+ }
do {
/* parse the next dir/file/symlink */
@@ -359,16 +363,15 @@
return node;
}
-static u32 jffs2_load_kernel(u32 *dest, struct part_info *part)
+static u32 jffs2_load_kernel(u32 *dest, struct part_info *part, char *filename)
{
struct jffs2_raw_dirent *node;
-
- if (!(node = find_inode(part, "linux", 1))) {
- UDEBUG("could not find /linux\n");
+ if (!(node = find_inode(part, filename, 1))) {
+ UDEBUG("could not find \"%s\"\n", filename);
return 0;
}
if (node->type != DT_REG) {
- UDEBUG("/linux is not a regular file\n");
+ UDEBUG("\"%s\" is not a regular file\n", filename);
return 0;
}
return read_inode(part, dest, node->ino, DT_REG);
Index: load_kernel.c
===================================================================
RCS file: /cvsroot/blob/blob/src/blob/load_kernel.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- load_kernel.c 16 Feb 2002 00:43:59 -0000 1.3
+++ load_kernel.c 27 Apr 2002 07:32:40 -0000 1.4
@@ -96,7 +96,7 @@
} else {
printf("loading kernel from %s ...", loader[i]->name);
if ((size = loader[i]->load_kernel((u32 *)KERNEL_RAM_BASE,
- &part)) == 0) {
+ &part, "/boot/linux")) == 0) {
eprintf("error loading kernel!\n");
return;
}
Index: zImage.c
===================================================================
RCS file: /cvsroot/blob/blob/src/blob/zImage.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- zImage.c 16 Feb 2002 00:43:59 -0000 1.3
+++ zImage.c 27 Apr 2002 07:32:40 -0000 1.4
@@ -44,7 +44,7 @@
return ((u32 *) part->offset)[9] == ZIMAGE_MAGIC;
}
-static u32 zImage_load_kernel(u32 *dest, struct part_info *part)
+static u32 zImage_load_kernel(u32 *dest, struct part_info *part, char *filename)
{
unsigned long size;
int i;
|