It's better to handle LZO and LZARI compression mdoes for JFFS2 with

a single #define.
This commit is contained in:
wdenk 2005-05-05 09:51:44 +00:00
parent 60fc6cbbb7
commit 412babe304
5 changed files with 20 additions and 21 deletions

View File

@ -6,8 +6,9 @@ Changes for U-Boot 1.1.3:
size. size.
* Major upate of JFFS2 code; now in sync with snapshot of MTD CVS of * Major upate of JFFS2 code; now in sync with snapshot of MTD CVS of
March 13, 2005); new configuration options CONFIG_JFFS2_LZO and March 13, 2005); new configuration option CONFIG_JFFS2_LZO_LZARI
CONFIG_JFFS2_LZARI are added. Both are undefined by default. added to support LZO and LZARI compression modes (undefined by
default).
* Fix problem with symbolic links in JFFS2 code. * Fix problem with symbolic links in JFFS2 code.

View File

@ -50,7 +50,7 @@ All rights reserved. Permission granted for non-commercial use.
#include <config.h> #include <config.h>
#if ((CONFIG_COMMANDS & CFG_CMD_JFFS2) && defined(CONFIG_JFFS2_LZARI)) #if ((CONFIG_COMMANDS & CFG_CMD_JFFS2) && defined(CONFIG_JFFS2_LZO_LZARI))
#include <linux/stddef.h> #include <linux/stddef.h>
#include <jffs2/jffs2.h> #include <jffs2/jffs2.h>
@ -259,4 +259,4 @@ int lzari_decompress(unsigned char *data_in, unsigned char *cpage_out,
{ {
return Decode(data_in, cpage_out, srclen, destlen); return Decode(data_in, cpage_out, srclen, destlen);
} }
#endif /* ((CONFIG_COMMANDS & CFG_CMD_JFFS2) && defined(CONFIG_JFFS2_LZARI)) */ #endif /* ((CONFIG_COMMANDS & CFG_CMD_JFFS2) && defined(CONFIG_JFFS2_LZO_LZARI)) */

View File

@ -67,7 +67,7 @@
#include <config.h> #include <config.h>
#if ((CONFIG_COMMANDS & CFG_CMD_JFFS2) && defined(CONFIG_JFFS2_LZO)) #if ((CONFIG_COMMANDS & CFG_CMD_JFFS2) && defined(CONFIG_JFFS2_LZO_LZARI))
#include <linux/stddef.h> #include <linux/stddef.h>
#include <jffs2/jffs2.h> #include <jffs2/jffs2.h>
@ -402,4 +402,4 @@ int lzo_decompress(unsigned char *data_in, unsigned char *cpage_out,
return lzo1x_decompress (data_in, srclen, cpage_out, &outlen, NULL); return lzo1x_decompress (data_in, srclen, cpage_out, &outlen, NULL);
} }
#endif /* ((CONFIG_COMMANDS & CFG_CMD_JFFS2) && defined(CONFIG_JFFS2_LZO)) */ #endif /* ((CONFIG_COMMANDS & CFG_CMD_JFFS2) && defined(CONFIG_JFFS2_LZO_LZARI)) */

View File

@ -275,10 +275,8 @@ static char *compr_names[] = {
"COPY", "COPY",
"DYNRUBIN", "DYNRUBIN",
"ZLIB", "ZLIB",
#if defined(CONFIG_JFFS2_LZO) #if defined(CONFIG_JFFS2_LZO_LZARI)
"LZO", "LZO",
#endif
#if defined(CONFIG_JFFS2_LZARI)
"LZARI", "LZARI",
#endif #endif
}; };
@ -589,15 +587,13 @@ jffs2_1pass_read_inode(struct b_lists *pL, u32 inode, char *dest)
case JFFS2_COMPR_ZLIB: case JFFS2_COMPR_ZLIB:
ret = zlib_decompress(src, lDest, jNode->csize, jNode->dsize); ret = zlib_decompress(src, lDest, jNode->csize, jNode->dsize);
break; break;
#if defined(CONFIG_JFFS2_LZARI) #if defined(CONFIG_JFFS2_LZO_LZARI)
case JFFS2_COMPR_LZARI:
ret = lzari_decompress(src, lDest, jNode->csize, jNode->dsize);
break;
#endif
#if defined(CONFIG_JFFS2_LZO)
case JFFS2_COMPR_LZO: case JFFS2_COMPR_LZO:
ret = lzo_decompress(src, lDest, jNode->csize, jNode->dsize); ret = lzo_decompress(src, lDest, jNode->csize, jNode->dsize);
break; break;
case JFFS2_COMPR_LZARI:
ret = lzari_decompress(src, lDest, jNode->csize, jNode->dsize);
break;
#endif #endif
default: default:
/* unknown */ /* unknown */

View File

@ -65,10 +65,14 @@
#define JFFS2_COMPR_COPY 0x04 #define JFFS2_COMPR_COPY 0x04
#define JFFS2_COMPR_DYNRUBIN 0x05 #define JFFS2_COMPR_DYNRUBIN 0x05
#define JFFS2_COMPR_ZLIB 0x06 #define JFFS2_COMPR_ZLIB 0x06
#if defined(CONFIG_JFFS2_LZO_LZARI)
#define JFFS2_COMPR_LZO 0x07 #define JFFS2_COMPR_LZO 0x07
#define JFFS2_COMPR_LZARI 0x08 #define JFFS2_COMPR_LZARI 0x08
#define JFFS2_NUM_COMPR 9 #define JFFS2_NUM_COMPR 9
#else
#define JFFS2_NUM_COMPR 7
#endif
/* Compatibility flags. */ /* Compatibility flags. */
#define JFFS2_COMPAT_MASK 0xc000 /* What do to if an unknown nodetype is found */ #define JFFS2_COMPAT_MASK 0xc000 /* What do to if an unknown nodetype is found */
#define JFFS2_NODE_ACCURATE 0x2000 #define JFFS2_NODE_ACCURATE 0x2000
@ -203,13 +207,11 @@ void dynrubin_decompress(unsigned char *data_in, unsigned char *cpage_out,
unsigned long sourcelen, unsigned long dstlen); unsigned long sourcelen, unsigned long dstlen);
long zlib_decompress(unsigned char *data_in, unsigned char *cpage_out, long zlib_decompress(unsigned char *data_in, unsigned char *cpage_out,
__u32 srclen, __u32 destlen); __u32 srclen, __u32 destlen);
#if defined(CONFIG_JFFS2_LZARI) #if defined(CONFIG_JFFS2_LZO_LZARI)
int lzari_decompress(unsigned char *data_in, unsigned char *cpage_out,
u32 srclen, u32 destlen);
#endif
#if defined(CONFIG_JFFS2_LZO)
int lzo_decompress(unsigned char *data_in, unsigned char *cpage_out, int lzo_decompress(unsigned char *data_in, unsigned char *cpage_out,
u32 srclen, u32 destlen); u32 srclen, u32 destlen);
int lzari_decompress(unsigned char *data_in, unsigned char *cpage_out,
u32 srclen, u32 destlen);
#endif #endif
char *mkmodestr(unsigned long mode, char *str); char *mkmodestr(unsigned long mode, char *str);