Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --- lf1000.c.original 2010-07-15 20:33:23.000000000 -0400
- +++ lf1000.c 2010-07-15 22:01:10.000000000 -0400
- @@ -81,9 +81,28 @@
- const char *part_probes[] = { "cmdlinepart", NULL };
- #endif
- +//NIRV START
- +
- +#define CONFIG_NAND_LF1000_P0_SIZE 0x00020000
- +#define CONFIG_NAND_LF1000_P1_SIZE 0x000E0000
- +#define CONFIG_NAND_LF1000_P2_SIZE 0x00100000
- +#define CONFIG_NAND_LF1000_P3_SIZE 0x00200000
- +#define CONFIG_NAND_LF1000_P4_SIZE 0x00E00000
- +#define CONFIG_NAND_LF1000_P5_SIZE 0x00200000
- +#define CONFIG_NAND_LF1000_P6_SIZE 0x00E00000
- +#define CONFIG_NAND_LF1000_P7_SIZE 0x0DE00000
- +
- +
- +/*
- + * Define partitions for flash devices
- + */
- +
- +#if defined (CONFIG_MACH_ME_MP2530F)
- +#define LF_ERASE_BLK 0x4000
- +#else
- /* All other boards have big erase blocks */
- -/* TODO: FIXME: when MLC NAND is used, this ought to be 0x40000 */
- -#define LF_ERASE_BLK 0x40000
- +#define LF_ERASE_BLK 0x20000
- +#endif
- /* Just shortening the names for clearer code */
- #define LF_P0 (CONFIG_NAND_LF1000_P0_SIZE)
- @@ -91,6 +110,76 @@
- #define LF_P2 (CONFIG_NAND_LF1000_P2_SIZE)
- #define LF_P3 (CONFIG_NAND_LF1000_P3_SIZE)
- #define LF_P4 (CONFIG_NAND_LF1000_P4_SIZE)
- +#define LF_P5 (CONFIG_NAND_LF1000_P5_SIZE)
- +#define LF_P6 (CONFIG_NAND_LF1000_P6_SIZE)
- +#define LF_P7 (CONFIG_NAND_LF1000_P7_SIZE)
- +
- +#if ((LF_P0 % LF_ERASE_BLK) || (LF_P1 % LF_ERASE_BLK) || \
- + (LF_P2 % LF_ERASE_BLK) || (LF_P3 % LF_ERASE_BLK) || \
- + (LF_P4 % LF_ERASE_BLK) || (LF_P5 % LF_ERASE_BLK) || \
- + (LF_P6 % LF_ERASE_BLK) || (LF_P7 % LF_ERASE_BLK))
- +#error "NAND partitions must be multiple of erase block."
- +#endif
- +
- +static struct mtd_partition partition_info[] = {
- + { .name = "LF1000_uniboot",
- + .offset = 0,
- + .size = LF_P0},
- + { .name = "Atomic_Boot_Flags",
- + .offset = LF_P0,
- + .size = LF_P1 },
- + { .name = "Manufacturing_Data",
- + .offset = LF_P0 + LF_P1,
- + .size = LF_P2},
- + { .name = "Kernel0",
- + .offset = LF_P0 + LF_P1 + LF_P2,
- + .size = LF_P3 },
- + { .name = "Linux_RFS0",
- + .offset = LF_P0 + LF_P1 + LF_P2 + LF_P3,
- + .size = LF_P4 },
- + { .name = "Kernel1",
- + .offset = LF_P0 + LF_P1 + LF_P2 + LF_P3 + LF_P4,
- + .size = LF_P5 },
- + { .name = "Linux_RFS1",
- + .offset = LF_P0 + LF_P1 + LF_P2 + LF_P3 + LF_P4 + LF_P5,
- + .size = LF_P6 },
- + { .name = "Brio",
- + .offset = LF_P0 + LF_P1 + LF_P2 + LF_P3 + LF_P4 + LF_P5 + LF_P6,
- + .size = LF_P7 },
- + { .name = "EXT",
- + .offset = LF_P0 + LF_P1 + LF_P2 + LF_P3 + LF_P4 + LF_P5 + LF_P6 + LF_P7,
- + .size = MTDPART_SIZ_FULL },
- +};
- +
- +static struct mtd_partition partition_info_cart[] = {
- + { .name = "Cartridge",
- + .offset = 0,
- + .size = MTDPART_SIZ_FULL },
- +};
- +
- +#undef LF_P0
- +#undef LF_P1
- +#undef LF_P2
- +#undef LF_P3
- +#undef LF_P4
- +#undef LF_P5
- +#undef LF_P6
- +#undef LF_P7
- +#undef LF_ERASE_BLK
- +
- +//NIRV-END
- +
- +/* All other boards have big erase blocks */
- +/* TODO: FIXME: when MLC NAND is used, this ought to be 0x40000 */
- +
- +//#define LF_ERASE_BLK 0x40000
- +
- +/* Just shortening the names for clearer code */
- +/*#define LF_P0 (CONFIG_NAND_LF1000_P0_SIZE)
- +#define LF_P1 (CONFIG_NAND_LF1000_P1_SIZE)
- +#define LF_P2 (CONFIG_NAND_LF1000_P2_SIZE)
- +#define LF_P3 (CONFIG_NAND_LF1000_P3_SIZE)
- +#define LF_P4 (CONFIG_NAND_LF1000_P4_SIZE)
- #if ((LF_P0 % LF_ERASE_BLK) || (LF_P1 % LF_ERASE_BLK) || \
- (LF_P2 % LF_ERASE_BLK) || (LF_P3 % LF_ERASE_BLK) || \
- @@ -134,6 +223,13 @@
- #undef LF_P3
- #undef LF_P4
- #undef LF_ERASE_BLK
- +*/
- +
- +
- +
- +
- +
- +
- /* Ask gpio driver, which sampled this at boot time. */
- static u8 get_cart_type(void)
- @@ -998,8 +1094,8 @@
- if (base_parts_nb == 0) {
- if (gpio_get_boot_source_config() == SCRATCH_BOOT_SOURCE_USB)
- {
- - base_parts = partition_info_recovery;
- - base_parts_nb = ARRAY_SIZE(partition_info_recovery);
- + // base_parts = partition_info_recovery;
- + // base_parts_nb = ARRAY_SIZE(partition_info_recovery);
- }
- else
- {
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement