From: Tim R. <tim...@us...> - 2002-04-27 07:32:46
|
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; |