1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-12-27 13:06:49 +02:00

adding xburst 2.6.28 patchset (based on the patchset from .24)

This commit is contained in:
Marek Lindner 2009-07-01 10:43:59 +08:00 committed by Xiangfu Liu
parent 74212a8840
commit 91cc144708
10 changed files with 242094 additions and 0 deletions

View File

@ -0,0 +1,367 @@
--- linux-2.6.24.7.old/Changelog 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/Changelog 2009-04-12 18:13:57.000000000 +0200
@@ -0,0 +1,364 @@
+2009.02.17
+* Modify oss driver to support jz4750 i2s codec.
+ Update Files:
+ sound/oss/Kconfig
+ sound/oss/Makefile
+ sound/oss/jz_i2s.c
+ Add Files:
+ sound/oss/jzdlv.h
+ sound/oss/jzdlv.c
+ <cjfeng@ingenic.cn>
+2008.12.08
+* Power management is supported for jz4750.
+ Update Files:
+ arch/mips/jz4750/pm.c
+ drivers/char/jzchar/poweroff.c
+
+2008.12.04
+* Whether NAND multiple planes operation for one partition is used or not could be
+ determined by the value of use_planes in partition_info[] in drivers/mtd/nand/jz47xx_nand.c
+ Updated files:
+ include/linux/mtd/partitions.h
+ drivers/mtd/nand/nand_base.c
+ drivers/mtd/nand/jz4740_nand.c
+ drivers/mtd/mtdpart.c
+* Supported 4KB page size nand with 2 planes
+ Update Files:
+ include/linux/mtd/nand.h
+ drivers/mtd/nand/nand_base.c
+ fs/yaffs2/utils/mkyaffs2image.c
+ drivers/mtd/mtd-utils/nandwrite_mlc.c
+ <lhhuang@ingenic.cn>
+
+2008.11.07
+* The ubi was modified to support MTD of 64bit.
+ Updated file:
+ drivers/mtd/ubi/io.c
+* The ubi and ubifs were modified by changing vmalloc and vfree to kmalloc and kfree
+ to provide DMA buffer for NAND driver. But the NAND driver will use DMA buffer in
+ itself instead of in ubi and ubifs when CONFIG_MTD_NAND_DMABUF is defined.
+ Updated files:
+ drivers/mtd/ubi/build.c
+ drivers/mtd/ubi/cdev.c
+ drivers/mtd/ubi/gluebi.c
+ drivers/mtd/ubi/misc.c
+ drivers/mtd/ubi/scan.c
+ drivers/mtd/ubi/ubiblk.c
+ drivers/mtd/ubi/upd.c
+ drivers/mtd/ubi/vtbl.c
+ fs/ubifs/build.c
+ fs/ubifs/log.c
+ fs/ubifs/lpt.c
+ fs/ubifs/lpt_commit.c
+ fs/ubifs/orphan.c
+ fs/ubifs/recovery.c
+ fs/ubifs/replay.c
+ fs/ubifs/super.c
+ <lhhuang@ingenic.cn>
+
+2008.10.31
+* Converted MTD from 32bit to 64bit to support the NAND larger than 4GB, and yaffs2 was
+ modified accordingly. <lhhuang@ingenic.cn>
+ Updated file:
+ include/mtd/mtd-abi.h
+ include/linux/mtd/mtd.h
+ include/linux/mtd/partitions.h
+ include/linux/mtd/nand.h
+ drivers/mtd/mtdcore.c
+ drivers/mtd/mtdchar.c
+ drivers/mtd/mtdpart.c
+ drivers/mtd/mtdblock-jz.c
+ drivers/mtd/nand/nand_base.c
+ drivers/mtd/nand/nand_bbt.c
+ drivers/mtd/mtd-utils/include/mtd/mtd-abi.h
+ drivers/mtd/mtd-utils/flash_eraseall.c
+ drivers/mtd/mtd-utils/nandwrite_mlc.c
+ drivers/mtd/mtd-utils/nandwrite.c
+ fs/yaffs2/yaffs_fs.c
+ fs/yaffs2/yaffs_mtdif.c
+ fs/yaffs2/yaffs_mtdif2.c
+
+2008.10.29
+* Modified yaffs2 utils mkyaffs2image to support writting 4KB pagesize NAND. NAND layout
+ is (0 - raw(512B pagesize), 1 - nand_oob_64(2KB pagesize), 2 - nand_oob_128(4KB pagesize)).
+ <lhhuang@ingenic.cn>
+ Updated file:
+ fs/yaffs2/utils/mkyaffs2image.c
+
+2008.10.27
+* Supported multiply chip selecting for NAND flash. <lhhuang@ingenic.cn>
+ Updated files:
+ include/linux/mtd/nand.h
+ drivers/mtd/nand/nand_base.c
+ drivers/mtd/nand/jz4750_nand.c
+ drivers/mtd/nand/jz4740_nand.c
+
+2008.10.23
+* Modified yaffs2 utils mkyaffs2image to enable writing soft reed-solomn ECC for
+ yaffs2 file system information in oob area of MLC nand, getting CONFIG_YAFFS_ECC_RS
+ from .config, so when CONFIG_YAFFS_ECC_RS is changed, mkyaffs2image should be built
+ again. <lhhuang@ingenic.cn>
+ Updated files:
+ fs/yaffs2/yaffs_ecc.c
+ fs/yaffs2/utils/Makefile
+ Added files:
+ fs/yaffs2/utils/ssfdc_rs_ecc.c
+ fs/yaffs2/utils/ssfdc_rs_ecc.h
+
+2008.09.26
+
+* Fixed a fatal bug for mplayer, which may cause some files cannot be played and
+ the system is crashed. <jlwei@ingenic.cn>
+ Updated file: arch/mips/jz4740/proc.c
+
+2008.08.30
+* For jz4750, DMA clock for each channel should be enabled before using the channel.
+ So REG_DMAC_DMACKE and __dmac_channel_enable_clk(n) were added.
+ Updated files:
+ include/asm-mips/mach-jz4750/regs.h
+ include/asm-mips/mach-jz4750/ops.h
+ Regen, <lhhuang@ingenic.cn>
+
+2008.08.19
+* Modify jzfb_mmap() for cacheable framebuffer access. <jlwei@ingenic.cn>
+ Updated files:
+ drivers/video/jzlcd.c
+ drivers/video/jz4740_slcd.c
+ drivers/video/jz4750_lcd.c
+
+2008.08.15
+* Modify ipu interface to toggle PID of MPlayer in TLB.
+* Modify OSS ioctl function to play movie with mono channel better.
+ Update Files:
+ arch/mips/jz4740/proc.c
+ sound/oss/jz_i2s.c
+ Richard Feng, <cjfeng@ingenic.cn>
+
+2008.08.04
+* Check whether the free block is erased before erasing it, 'unsigned int' instead of
+ 'unsigned short' was used to store block number, and heap sort for lifetime after
+ erasing a block was replaced by another faster method.
+ Update File:
+ drivers/mtd/mtdblock-jz.uu
+
+* Cache read was used in nand_read_page_hwecc_rs() for Jz4740.
+ Update File:
+ drivers/mtd/nand/nand_base.c
+
+* Faster timing in REG_EMC_SMCR1 whose value is 0x09221200 was used.
+ Update File:
+ drivers/mtd/nand/jz4740_nand.c
+
+ Regen, <lhhuang@ingenic.cn>
+
+2008.07.21
+* Supported 4KB page size nand
+ Update File:
+ drivers/mtd/nand/nand_base.c
+ include/linux/mtd/nand.h
+ include/mtd/mtd-abi.h
+ drivers/mtd/mtd-utils/include/mtd/mtd-abi.h
+ Regen, <lhhuang@ingenic.cn>
+
+2008.07.18
+* Soft reed solomon ECC was supported for yaffs2 information which is 16 bytes in nand
+ oob, and it should be used for MLC nand.
+ Update File:
+ fs/yaffs2/yaffs_ecc.c
+ fs/yaffs2/yaffs_ecc.h
+ fs/yaffs2/yaffs_fs.c
+ fs/yaffs2/yaffs_packedtags2.c
+ Regen, <lhhuang@ingenic.cn>
+
+2008.07.10
+* Added support to generate any frequency baud rate of uart for both Jz4740 and Jz4750.
+ Update File:
+ drivers/serial/8250.c
+ Regen, <lhhuang@ingenic.cn>
+
+2008.07.03
+* Modified Jz4750's INTC, CIM, TSSI, macros.
+ Update Files:
+ include/asm-mips/mach-jz4750/regs.h
+ include/asm-mips/mach-jz4750/ops.h
+
+2008.06.24
+* Combined Jz4750 SLCD Controller support into drivers/video/jz4750_lcd.c.
+* drivers/video/jz4750_lcd.c, now support: LCD Controller, Slcd Controller, TVE.
+* And add smart lcd panel TRULY_TFT_GG1P0319LTSW_W support.
+ Update Files:
+ drivers/video/Kconfig
+ drivers/video/jz4750_lcd.h
+ drivers/video/jz4750_lcd.c
+ Wolfgang Wang, <lgwang@ingenic.cn>
+
+2008.06.20
+* Add Jz4750 LCDC and TVE driver. <lgwang@ingenic.cn>
+ Update Files:
+ arch/asm-mips/mach-jz4750/regs.h
+ arch/asm-mips/mach-jz4750/ops.h
+ drivers/video/Kconfig
+ drivers/video/Makefile
+ Add Files:
+ drivers/video/jz4750_lcd.h
+ drivers/video/jz4750_lcd.c
+ drivers/video/jz4750_tve.h
+ drivers/video/jz4750_tve.c
+
+2008.06.12
+* Modified CONFIG_FB_JZXXX macros, rename drivers/video/jzslcd.x to drivers/video/jz4740_slcd.x
+ Update Files:
+ drivers/video/Kconfig
+ drivers/video/Makefile
+ arch/mips/configs/dipper_defconfig
+ arch/mips/configs/leo_defconfig
+ arch/mips/configs/lyra_defconfig
+ arch/mips/configs/pavo_defconfig
+ arch/mips/configs/virgo_defconfig
+ <lgwang@ingenic.cn>
+
+2008.06.10
+* Add jz_clocksource, upgrade the system time's accuracy from 10ms to about 1(or 2) us.
+ but the system timer remained 10ms.
+ Files modified:
+ arch/mips/jz4730/time.c
+ arch/mips/jz4740/time.c
+ arch/mips/jz4750/time.c
+ <lgwang@ingenic.cn>
+
+2008.05.31
+
+* Updated UBIFS. <yrtan@ingenic.cn>
+
+2008.05.30
+
+* Added JZ4720 virgo board support. <zyliu@ingenic.cn>
+
+2008.05.29
+
+* Added definition of CONFIG_SOC_JZ4725 and CONFIG_SOC_JZ4720. <zyliu@ingenic.cn>
+* Added selection of 4-bit/1-bit data bus for MMC/SD card driver. <zyliu@ingenic.cn>
+* Added dipper_defconfig for JZ4725 DIPPER board. <zyliu@ingenic.cn>
+
+2008.05.29:
+
+* Modified sound/oss/jz_i2s.c to increase the sound buffer.
+* Modified pavo_defconfig to select the oss sound driver by default.
+* Fixed jzlcd.h for jz4730 pmp.
+* Modified jzcs8900a.c to not test the chip ID.
+
+2008.05.22:
+
+* jzcs8900a.c: fixed the bug of "No network devices available". <jlwei@ingenic.cn>
+
+2008.05.13:
+
+* Rewrote all of the UBI and UBIFS codes. <yrtan@ingenic.cn>
+
+2008.05.07:
+* Add GPIO group E group F irq, DMAC1 irq. Add SSI1 macros.
+ <lgwang@ingenic.cn>
+
+2008.05.06:
+
+* Modified MMC/SD driver jz_mmc.c to support PM callback. <cwjia@ingenic.cn>
+
+2008.05.04:
+
+* Fixed a bug of mtdblock-jz.uu of using the badblock_table. <yrtan@ingenic.cn>
+
+2008.04.26:
+
+* Patch jz4740_nand.c to optimize the RS correction algorithm. <zengzhaoxiu>
+
+2008.04.24
+* Jzlcd driver add Framebuffer Rotate support.
+ Update files:
+ drivers/video/Kconfig
+ drivers/video/jzlcd.h
+ drivers/video/jzlcd.c
+ <lgwang@ingenic.cn>
+
+2008.04.21:
+* Modified LCD_CFG_MODE_INTER_CCIR656 define
+ #define LCD_CFG_MODE_INTER_CCIR656 (5 << LCD_CFG_MODE_BIT)
+ should be ==>>
+ #define LCD_CFG_MODE_INTER_CCIR656 (6 << LCD_CFG_MODE_BIT)
+ Update files:
+ include/asm-mips/mach-jz4730/regs.h
+ include/asm-mips/mach-jz4740/regs.h
+ include/asm-mips/mach-jz4750/regs.h
+
+2008.04.14:
+
+* Modify drivers/video/jzslcd.c to suport Smart LCD switches between
+ always refresh and event-driven refresh . <zyliu@ingenic.cn>
+
+2008.04.01:
+
+* Support multi-framebuffers, update files:
+ drivers/video/Kconfig, add: CONFIG_JZLCD_FRAMEBUFFER_MAX=1
+ drivers/video/jzlcd.h
+ drivers/video/jzlcd.c
+ arch/mips/configs/pavo_defconfig, add: CONFIG_JZLCD_FRAMEBUFFER_MAX=1
+ <lgwang@ingenic.cn>
+
+2008.03.29:
+
+* Modified sound/soc/jz4740/jz4740-i2s.c to support 32KHz PCM sample. <cjfeng@ingenic.cn>
+
+2008.03.28
+
+* Ported new mtd-utils and mkfs.ubifs. <yrtan@ingenic.cn>
+
+2008.03.27
+
+* board_fuwa.h, change GPIO_DISP_OFF_N to GPD25. <lgwang@ingenic.cn>
+* Added lyra_defconfig for JZ4740 LYRA (MP4) board. <zyliu@ingenic.cn>
+
+2008.03.24:
+
+* Added jzslcd.c for Smart LCD framebuffer driver. <zyliu@ingenic.cn>
+* Modified rtc_jz.c to use some functions in rtc library instead of our function.
+ <cjfeng@ingenic.cn>
+* Added jz_keypad.c and gpio_keys.c for scan keypad drivers. <cjfeng@ingenic.cn>
+
+2008.03.19:
+
+* Added block-jz.c to support block device layer on top of ubi.
+ <yrtan@ingenic.cn>
+
+2008.03.17:
+
+* Modified jz4740_udc.c to enable the suspend irq when host unloads us.
+ <jlwei@ingenic.cn>
+* pavo_defconfig: select CONFIG_WIRELESS_EXT, CONFIG_PNP and CONFIG_SERIAL_8250_PNP.
+ <lgwang@ingenic.cn>
+
+2008.03.14:
+
+* Modified jz_ts.c jz_ts.h and sadc.c to release CPU by interrupt mode instead of pio mode.
+ <cjfeng@ingenic.cn>
+
+2008.03.13:
+
+* Fixed a bug in jz4740_udc.c and jz4730_udc.c during rmmod the driver.
+ <cjfeng@ingenic.cn>
+
+2008.03.10:
+
+* Modified jz_i2s.c to fix the jz_audio_release(). <cjfeng@ingenic.cn>
+
+2008.03.08:
+
+* Fixed udc_hotplug.c to avoid the "unexpected IRQ". <jlwei@ingenic.cn>
+* Fixed jz4740/cpufreq.c of calculating the new_mclk. <lhhuang@ingenic.cn>
+
+2008.03.05:
+
+* Modified drivers/video/console/fbcon.c by adding fb_flashcursor selection.
+ <lgwang@ingenic.cn>
+
+2008.03.04:
+
+* Initial release.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,342 @@
--- linux-2.6.24.7.old/crypto/Kconfig 2009-04-12 18:05:07.000000000 +0200
+++ linux-2.6.24.7/crypto/Kconfig 2009-04-12 18:13:57.000000000 +0200
@@ -502,6 +502,14 @@
Authenc: Combined mode wrapper for IPsec.
This is required for IPSec.
+config CRYPTO_LZO
+ tristate "LZO compression algorithm"
+ select CRYPTO_ALGAPI
+ select LZO_COMPRESS
+ select LZO_DECOMPRESS
+ help
+ This is the LZO algorithm.
+
source "drivers/crypto/Kconfig"
endif # if CRYPTO
--- linux-2.6.24.7.old/crypto/Makefile 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/crypto/Makefile 2009-04-12 18:13:57.000000000 +0200
@@ -51,6 +51,7 @@
obj-$(CONFIG_CRYPTO_DEFLATE) += deflate.o
obj-$(CONFIG_CRYPTO_MICHAEL_MIC) += michael_mic.o
obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o
+obj-$(CONFIG_CRYPTO_LZO) += lzo.o
obj-$(CONFIG_CRYPTO_AUTHENC) += authenc.o
obj-$(CONFIG_CRYPTO_TEST) += tcrypt.o
--- linux-2.6.24.7.old/crypto/lzo.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/crypto/lzo.c 2009-04-12 18:13:57.000000000 +0200
@@ -0,0 +1,106 @@
+/*
+ * Cryptographic API.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published by
+ * the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program; if not, write to the Free Software Foundation, Inc., 51
+ * Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ */
+
+#include <linux/init.h>
+#include <linux/module.h>
+#include <linux/crypto.h>
+#include <linux/vmalloc.h>
+#include <linux/lzo.h>
+
+struct lzo_ctx {
+ void *lzo_comp_mem;
+};
+
+static int lzo_init(struct crypto_tfm *tfm)
+{
+ struct lzo_ctx *ctx = crypto_tfm_ctx(tfm);
+
+ ctx->lzo_comp_mem = vmalloc(LZO1X_MEM_COMPRESS);
+ if (!ctx->lzo_comp_mem)
+ return -ENOMEM;
+
+ return 0;
+}
+
+static void lzo_exit(struct crypto_tfm *tfm)
+{
+ struct lzo_ctx *ctx = crypto_tfm_ctx(tfm);
+
+ vfree(ctx->lzo_comp_mem);
+}
+
+static int lzo_compress(struct crypto_tfm *tfm, const u8 *src,
+ unsigned int slen, u8 *dst, unsigned int *dlen)
+{
+ struct lzo_ctx *ctx = crypto_tfm_ctx(tfm);
+ size_t tmp_len = *dlen; /* size_t(ulong) <-> uint on 64 bit */
+ int err;
+
+ err = lzo1x_1_compress(src, slen, dst, &tmp_len, ctx->lzo_comp_mem);
+
+ if (err != LZO_E_OK)
+ return -EINVAL;
+
+ *dlen = tmp_len;
+ return 0;
+}
+
+static int lzo_decompress(struct crypto_tfm *tfm, const u8 *src,
+ unsigned int slen, u8 *dst, unsigned int *dlen)
+{
+ int err;
+ size_t tmp_len = *dlen; /* size_t(ulong) <-> uint on 64 bit */
+
+ err = lzo1x_decompress_safe(src, slen, dst, &tmp_len);
+
+ if (err != LZO_E_OK)
+ return -EINVAL;
+
+ *dlen = tmp_len;
+ return 0;
+
+}
+
+static struct crypto_alg alg = {
+ .cra_name = "lzo",
+ .cra_flags = CRYPTO_ALG_TYPE_COMPRESS,
+ .cra_ctxsize = sizeof(struct lzo_ctx),
+ .cra_module = THIS_MODULE,
+ .cra_list = LIST_HEAD_INIT(alg.cra_list),
+ .cra_init = lzo_init,
+ .cra_exit = lzo_exit,
+ .cra_u = { .compress = {
+ .coa_compress = lzo_compress,
+ .coa_decompress = lzo_decompress } }
+};
+
+static int __init init(void)
+{
+ return crypto_register_alg(&alg);
+}
+
+static void __exit fini(void)
+{
+ crypto_unregister_alg(&alg);
+}
+
+module_init(init);
+module_exit(fini);
+
+MODULE_LICENSE("GPL");
+MODULE_DESCRIPTION("LZO Compression Algorithm");
--- linux-2.6.24.7.old/crypto/tcrypt.c 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/crypto/tcrypt.c 2009-04-12 18:13:57.000000000 +0200
@@ -78,7 +78,7 @@
"twofish", "serpent", "sha384", "sha512", "md4", "aes", "cast6",
"arc4", "michael_mic", "deflate", "crc32c", "tea", "xtea",
"khazad", "wp512", "wp384", "wp256", "tnepres", "xeta", "fcrypt",
- "camellia", "seed", NULL
+ "camellia", "seed", "lzo", NULL
};
static void hexdump(unsigned char *buf, unsigned int len)
@@ -800,7 +800,8 @@
crypto_free_hash(tfm);
}
-static void test_deflate(void)
+static void test_comp(char *algo, struct comp_testvec *ctemplate,
+ struct comp_testvec *dtemplate, int ctcount, int dtcount)
{
unsigned int i;
char result[COMP_BUF_SIZE];
@@ -808,25 +809,26 @@
struct comp_testvec *tv;
unsigned int tsize;
- printk("\ntesting deflate compression\n");
+ printk("\ntesting %s compression\n", algo);
- tsize = sizeof (deflate_comp_tv_template);
+ tsize = sizeof(struct comp_testvec);
+ tsize *= ctcount;
if (tsize > TVMEMSIZE) {
printk("template (%u) too big for tvmem (%u)\n", tsize,
TVMEMSIZE);
return;
}
- memcpy(tvmem, deflate_comp_tv_template, tsize);
+ memcpy(tvmem, ctemplate, tsize);
tv = (void *)tvmem;
- tfm = crypto_alloc_comp("deflate", 0, CRYPTO_ALG_ASYNC);
+ tfm = crypto_alloc_comp(algo, 0, CRYPTO_ALG_ASYNC);
if (IS_ERR(tfm)) {
- printk("failed to load transform for deflate\n");
+ printk("failed to load transform for %s\n", algo);
return;
}
- for (i = 0; i < DEFLATE_COMP_TEST_VECTORS; i++) {
+ for (i = 0; i < ctcount; i++) {
int ilen, ret, dlen = COMP_BUF_SIZE;
printk("test %u:\n", i + 1);
@@ -845,19 +847,20 @@
ilen, dlen);
}
- printk("\ntesting deflate decompression\n");
+ printk("\ntesting %s decompression\n", algo);
- tsize = sizeof (deflate_decomp_tv_template);
+ tsize = sizeof(struct comp_testvec);
+ tsize *= dtcount;
if (tsize > TVMEMSIZE) {
printk("template (%u) too big for tvmem (%u)\n", tsize,
TVMEMSIZE);
goto out;
}
- memcpy(tvmem, deflate_decomp_tv_template, tsize);
+ memcpy(tvmem, dtemplate, tsize);
tv = (void *)tvmem;
- for (i = 0; i < DEFLATE_DECOMP_TEST_VECTORS; i++) {
+ for (i = 0; i < dtcount; i++) {
int ilen, ret, dlen = COMP_BUF_SIZE;
printk("test %u:\n", i + 1);
@@ -1057,7 +1060,11 @@
test_hash("tgr192", tgr192_tv_template, TGR192_TEST_VECTORS);
test_hash("tgr160", tgr160_tv_template, TGR160_TEST_VECTORS);
test_hash("tgr128", tgr128_tv_template, TGR128_TEST_VECTORS);
- test_deflate();
+ test_comp("deflate", deflate_comp_tv_template,
+ deflate_decomp_tv_template, DEFLATE_COMP_TEST_VECTORS,
+ DEFLATE_DECOMP_TEST_VECTORS);
+ test_comp("lzo", lzo_comp_tv_template, lzo_decomp_tv_template,
+ LZO_COMP_TEST_VECTORS, LZO_DECOMP_TEST_VECTORS);
test_hash("crc32c", crc32c_tv_template, CRC32C_TEST_VECTORS);
test_hash("hmac(md5)", hmac_md5_tv_template,
HMAC_MD5_TEST_VECTORS);
@@ -1167,7 +1174,9 @@
break;
case 13:
- test_deflate();
+ test_comp("deflate", deflate_comp_tv_template,
+ deflate_decomp_tv_template, DEFLATE_COMP_TEST_VECTORS,
+ DEFLATE_DECOMP_TEST_VECTORS);
break;
case 14:
@@ -1292,6 +1301,11 @@
CAMELLIA_CBC_DEC_TEST_VECTORS);
break;
+ case 33:
+ test_comp("lzo", lzo_comp_tv_template, lzo_decomp_tv_template,
+ LZO_COMP_TEST_VECTORS, LZO_DECOMP_TEST_VECTORS);
+ break;
+
case 100:
test_hash("hmac(md5)", hmac_md5_tv_template,
HMAC_MD5_TEST_VECTORS);
--- linux-2.6.24.7.old/crypto/tcrypt.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/crypto/tcrypt.h 2009-04-12 18:13:57.000000000 +0200
@@ -4408,6 +4408,88 @@
};
/*
+ * LZO test vectors (null-terminated strings).
+ */
+#define LZO_COMP_TEST_VECTORS 2
+#define LZO_DECOMP_TEST_VECTORS 2
+
+static struct comp_testvec lzo_comp_tv_template[] = {
+ {
+ .inlen = 70,
+ .outlen = 46,
+ .input = "Join us now and share the software "
+ "Join us now and share the software ",
+ .output = { 0x00, 0x0d, 0x4a, 0x6f, 0x69, 0x6e, 0x20, 0x75,
+ 0x73, 0x20, 0x6e, 0x6f, 0x77, 0x20, 0x61, 0x6e,
+ 0x64, 0x20, 0x73, 0x68, 0x61, 0x72, 0x65, 0x20,
+ 0x74, 0x68, 0x65, 0x20, 0x73, 0x6f, 0x66, 0x74,
+ 0x77, 0x70, 0x01, 0x01, 0x4a, 0x6f, 0x69, 0x6e,
+ 0x3d, 0x88, 0x00, 0x11, 0x00, 0x00 },
+ }, {
+ .inlen = 159,
+ .outlen = 133,
+ .input = "This document describes a compression method based on the LZO "
+ "compression algorithm. This document defines the application of "
+ "the LZO algorithm used in UBIFS.",
+ .output = { 0x00, 0x2b, 0x54, 0x68, 0x69, 0x73, 0x20, 0x64,
+ 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
+ 0x73, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x6d, 0x70,
+ 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20,
+ 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x62,
+ 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20,
+ 0x74, 0x68, 0x65, 0x20, 0x4c, 0x5a, 0x4f, 0x2b,
+ 0x8c, 0x00, 0x0d, 0x61, 0x6c, 0x67, 0x6f, 0x72,
+ 0x69, 0x74, 0x68, 0x6d, 0x2e, 0x20, 0x20, 0x54,
+ 0x68, 0x69, 0x73, 0x2a, 0x54, 0x01, 0x02, 0x66,
+ 0x69, 0x6e, 0x65, 0x73, 0x94, 0x06, 0x05, 0x61,
+ 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x76,
+ 0x0a, 0x6f, 0x66, 0x88, 0x02, 0x60, 0x09, 0x27,
+ 0xf0, 0x00, 0x0c, 0x20, 0x75, 0x73, 0x65, 0x64,
+ 0x20, 0x69, 0x6e, 0x20, 0x55, 0x42, 0x49, 0x46,
+ 0x53, 0x2e, 0x11, 0x00, 0x00 },
+ },
+};
+
+static struct comp_testvec lzo_decomp_tv_template[] = {
+ {
+ .inlen = 133,
+ .outlen = 159,
+ .input = { 0x00, 0x2b, 0x54, 0x68, 0x69, 0x73, 0x20, 0x64,
+ 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x20,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65,
+ 0x73, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x6d, 0x70,
+ 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x20,
+ 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x62,
+ 0x61, 0x73, 0x65, 0x64, 0x20, 0x6f, 0x6e, 0x20,
+ 0x74, 0x68, 0x65, 0x20, 0x4c, 0x5a, 0x4f, 0x2b,
+ 0x8c, 0x00, 0x0d, 0x61, 0x6c, 0x67, 0x6f, 0x72,
+ 0x69, 0x74, 0x68, 0x6d, 0x2e, 0x20, 0x20, 0x54,
+ 0x68, 0x69, 0x73, 0x2a, 0x54, 0x01, 0x02, 0x66,
+ 0x69, 0x6e, 0x65, 0x73, 0x94, 0x06, 0x05, 0x61,
+ 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x76,
+ 0x0a, 0x6f, 0x66, 0x88, 0x02, 0x60, 0x09, 0x27,
+ 0xf0, 0x00, 0x0c, 0x20, 0x75, 0x73, 0x65, 0x64,
+ 0x20, 0x69, 0x6e, 0x20, 0x55, 0x42, 0x49, 0x46,
+ 0x53, 0x2e, 0x11, 0x00, 0x00 },
+ .output = "This document describes a compression method based on the LZO "
+ "compression algorithm. This document defines the application of "
+ "the LZO algorithm used in UBIFS.",
+ }, {
+ .inlen = 46,
+ .outlen = 70,
+ .input = { 0x00, 0x0d, 0x4a, 0x6f, 0x69, 0x6e, 0x20, 0x75,
+ 0x73, 0x20, 0x6e, 0x6f, 0x77, 0x20, 0x61, 0x6e,
+ 0x64, 0x20, 0x73, 0x68, 0x61, 0x72, 0x65, 0x20,
+ 0x74, 0x68, 0x65, 0x20, 0x73, 0x6f, 0x66, 0x74,
+ 0x77, 0x70, 0x01, 0x01, 0x4a, 0x6f, 0x69, 0x6e,
+ 0x3d, 0x88, 0x00, 0x11, 0x00, 0x00 },
+ .output = "Join us now and share the software "
+ "Join us now and share the software ",
+ },
+};
+
+/*
* Michael MIC test vectors from IEEE 802.11i
*/
#define MICHAEL_MIC_TEST_VECTORS 6

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,13 @@
--- linux-2.6.24.7.old/init/do_mounts.c 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/init/do_mounts.c 2009-04-12 18:13:57.000000000 +0200
@@ -440,7 +440,9 @@
if (saved_root_name[0]) {
root_device_name = saved_root_name;
- if (!strncmp(root_device_name, "mtd", 3)) {
+ if (!strncmp(root_device_name, "mtd", 3) ||
+ !strncmp(root_device_name, "ubi", 3) ||
+ !strncmp(root_device_name, "mmc", 3)) {
mount_block_root(root_device_name, root_mountflags);
goto out;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff