1 --- linux/drivers/mtd/ar7part.c 2007-09-20 21:47:22.000000000 +0200
2 +++ linux-mips/drivers/mtd/ar7part.c 2008-05-04 18:49:04.000000000 +0200
5 - * Copyright (C) 2007 Eugene Konev <ejka@openwrt.org>
6 + * Copyright © 2007 Eugene Konev <ejka@openwrt.org>
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
11 #define LOADER_MAGIC1 le32_to_cpu(0xfeedfa42)
12 #define LOADER_MAGIC2 le32_to_cpu(0xfeed1281)
14 +#ifndef SQUASHFS_MAGIC
15 +#define SQUASHFS_MAGIC 0x73717368
19 unsigned int checksum;
24 struct ar7_bin_rec header;
25 - unsigned int offset, len;
26 + unsigned int offset;
28 unsigned int pre_size = master->erasesize, post_size = 0;
29 unsigned int root_offset = ROOT_OFFSET;
32 do { /* Try 10 blocks starting from master->erasesize */
34 master->read(master, offset,
35 - sizeof(header), &len, (u8 *)&header);
36 + sizeof(header), &len, (uint8_t *)&header);
37 if (!strncmp((char *)&header, "TIENV0.8", 8))
38 ar7_parts[1].offset = pre_size;
39 if (header.checksum == LOADER_MAGIC1)
41 while (header.length) {
42 offset += sizeof(header) + header.length;
43 master->read(master, offset, sizeof(header),
44 - &len, (u8 *)&header);
45 + &len, (uint8_t *)&header);
47 root_offset = offset + sizeof(header) + 4;
50 while (header.length) {
51 offset += sizeof(header) + header.length;
52 master->read(master, offset, sizeof(header),
53 - &len, (u8 *)&header);
54 + &len, (uint8_t *)&header);
56 root_offset = offset + sizeof(header) + 4 + 0xff;
57 - root_offset &= ~(u32)0xff;
58 + root_offset &= ~(uint32_t)0xff;
61 printk(KERN_WARNING "Unknown magic: %08x\n", header.checksum);