aboutsummaryrefslogtreecommitdiff
path: root/src/lib/cbfs.c
diff options
context:
space:
mode:
authorPatrick Georgi <patrick.georgi@coresystems.de>2009-07-18 14:20:39 +0000
committerPatrick Georgi <patrick.georgi@coresystems.de>2009-07-18 14:20:39 +0000
commitf107538e33c880cb52ee131a527149cce9f936ee (patch)
treeb782cca75cd6822e112330743c7dd5e24894387e /src/lib/cbfs.c
parent19bc45d1e826bb60e9922eed449643f4f0d63bc9 (diff)
strdup the input of dirname, as dirname is free
(according to the spec) to change the string in-situ, even if glibc doesn't do it. This avoids errors on Mac OS and Solaris. Kill nrv2b support in CBFS (we have lzma), slightly improve debug output in CBFS, properly declare all functions of CBFS in the header. Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4436 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/lib/cbfs.c')
-rw-r--r--src/lib/cbfs.c18
1 files changed, 4 insertions, 14 deletions
diff --git a/src/lib/cbfs.c b/src/lib/cbfs.c
index caf5db4b49..f57a14a800 100644
--- a/src/lib/cbfs.c
+++ b/src/lib/cbfs.c
@@ -29,8 +29,6 @@
#define ntohl(x) (x)
#endif
-int run_address(void *f);
-
int cbfs_decompress(int algo, void *src, void *dst, int len)
{
switch(algo) {
@@ -44,15 +42,6 @@ int cbfs_decompress(int algo, void *src, void *dst, int len)
}
return 0;
-#if CONFIG_COMPRESSED_PAYLOAD_NRV2B==1
- case CBFS_COMPRESS_NRV2B: {
- unsigned long unrv2b(u8 *src, u8 *dst, unsigned long *ilen_p);
- unsigned long tmp;
-
- unrv2b(src, dst, &tmp);
- }
- return 0;
-#endif
default:
printk_info( "CBFS: Unknown compression type %d\n",
algo);
@@ -103,11 +92,11 @@ struct cbfs_file *cbfs_find(const char *name)
int flen = ntohl(file->len);
int foffset = ntohl(file->offset);
- printk_spew("CBFS: follow chain: %p + %x + %x + align -> ", offset, foffset, flen);
+ printk_spew("CBFS: follow chain: %p + %x + %x + align -> ", (void *)offset, foffset, flen);
unsigned long oldoffset = offset;
offset = ALIGN(offset + foffset + flen, align);
- printk_spew("%p\n", offset);
+ printk_spew("%p\n", (void *)offset);
if (offset <= oldoffset) return NULL;
if (offset < 0xFFFFFFFF - ntohl(header->romsize))
@@ -182,7 +171,8 @@ void * cbfs_load_stage(const char *name)
if (stage == NULL)
return (void *) -1;
- printk_info("Stage: load @ %d/%d bytes, enter @ %llx\n",
+ printk_info("Stage: load %s @ %d/%d bytes, enter @ %llx\n",
+ name,
(u32) stage->load, stage->memlen,
stage->entry);
memset((void *) (u32) stage->load, 0, stage->memlen);