summaryrefslogtreecommitdiff
path: root/arch/xtensa/boot/lib/zmem.c
diff options
context:
space:
mode:
authorChris Zankel <czankel@tensilica.com>2005-06-30 02:58:59 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-30 08:45:11 -0700
commite7d163f7666560c90b163907b9d96ec6207e0f6f (patch)
tree88ea7add42a8fec465528ebdb856ed09d4661aa3 /arch/xtensa/boot/lib/zmem.c
parent82300bf479d7cdf87214b81ca5dc003bbc4f7e8f (diff)
[PATCH] xtensa: Removed local copy of zlib and fixed O= support
Removed an unnecessary local copy of zlib (sorry for the add'l traffic). Fixed 'O=' support (thanks to Jan Dittmer for pointing it out). Some minor clean-ups in the make files. Signed-off-by: Chris Zankel <chris@zankel.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/xtensa/boot/lib/zmem.c')
-rw-r--r--arch/xtensa/boot/lib/zmem.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/arch/xtensa/boot/lib/zmem.c b/arch/xtensa/boot/lib/zmem.c
index 7848f126d67d..d9862aa8ca25 100644
--- a/arch/xtensa/boot/lib/zmem.c
+++ b/arch/xtensa/boot/lib/zmem.c
@@ -1,4 +1,4 @@
-#include "zlib.h"
+#include <linux/zlib.h>
/* bits taken from ppc */
@@ -9,11 +9,10 @@ void exit (void)
for (;;);
}
-void *zalloc(void *x, unsigned items, unsigned size)
+void *zalloc(unsigned size)
{
void *p = avail_ram;
- size *= items;
size = (size + 7) & -8;
avail_ram += size;
if (avail_ram > end_avail) {
@@ -24,11 +23,6 @@ void *zalloc(void *x, unsigned items, unsigned size)
return p;
}
-void zfree(void *x, void *addr, unsigned nb)
-{
-}
-
-
#define HEAD_CRC 2
#define EXTRA_FIELD 4
#define ORIG_NAME 8
@@ -43,7 +37,6 @@ void gunzip (void *dst, int dstlen, unsigned char *src, int *lenp)
int r, i, flags;
/* skip header */
-
i = 10;
flags = src[3];
if (src[2] != DEFLATED || (flags & RESERVED) != 0) {
@@ -65,9 +58,8 @@ void gunzip (void *dst, int dstlen, unsigned char *src, int *lenp)
exit();
}
- s.zalloc = zalloc;
- s.zfree = zfree;
- r = inflateInit2(&s, -MAX_WBITS);
+ s.workspace = zalloc(zlib_inflate_workspacesize());
+ r = zlib_inflateInit2(&s, -MAX_WBITS);
if (r != Z_OK) {
//puts("inflateInit2 returned "); puthex(r); puts("\n");
exit();
@@ -76,12 +68,12 @@ void gunzip (void *dst, int dstlen, unsigned char *src, int *lenp)
s.avail_in = *lenp - i;
s.next_out = dst;
s.avail_out = dstlen;
- r = inflate(&s, Z_FINISH);
+ r = zlib_inflate(&s, Z_FINISH);
if (r != Z_OK && r != Z_STREAM_END) {
//puts("inflate returned "); puthex(r); puts("\n");
exit();
}
*lenp = s.next_out - (unsigned char *) dst;
- inflateEnd(&s);
+ zlib_inflateEnd(&s);
}