I can try it later tonight; ah I see, that's for a different arch. This is a generic issue why wasn't that shared with all arches?
It may fix //my// issue, but shouldn't the right thing to do be to accept any chip claiming basic CFI compliance? On Sat, May 8, 2010 at 5:13 AM, <[email protected]> wrote: > could you try if > trunk/target/linux/etrax/patches-2.6.32/200-samsung_flash.patch > fixes your issues ? > > Quoting "Michael J. Evans" <[email protected]>: > >> At LEAST >> 8MB flash: K8D6316UBM-PI07 Samsung Electronics 64M Bit >> (8M x8/4M x16) Dual Bank NOR Flash Memory >> memory falls in to the else statement. However it otherwise functions. >> >> if (extp->MajorVersion != '1' || >> (extp->MinorVersion < '0' || extp->MinorVersion > '4')) { >> if (cfi->mfr == MANUFACTURER_SAMSUNG && >> (extp->MajorVersion == '3' && extp->MinorVersion == '3')) { >> printk(KERN_NOTICE " Newer Samsung flash detected, " >> "should be compatibile with Amd/Fujitsu.\n"); >> } >> else { >> ... >> } >> } >> >> Note that it does so, and continue using the chip to //prevent// this >> result: >> >> physmap-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank >> Amd/Fujitsu Extended Query Table at 0x0040 >> Unknown Amd/Fujitsu Extended Query version 0.0. >> gen_probe: No supported Vendor Command Set found >> physmap-flash physmap-flash.0: map_probe failed >> VFS: Cannot open root device "<NULL>" or unknown-block(0,0) >> Please append a correct "root=" boot option; here are the available >> partitions: >> Kernel panic - not syncing: VFS: Unable to mount root fs on >> unknown-block(0,0) >> >> Signed-off-by: Michael J. Evans <[email protected]> >> >> --- a/drivers/mtd/chips/cfi_cmdset_0002.c >> +++ b/drivers/mtd/chips/cfi_cmdset_0002.c >> @@ -83,7 +83,7 @@ static struct mtd_chip_driver cfi_amdstd_chipdrv = { >> }; >> >> >> -/* #define DEBUG_CFI_FEATURES */ >> +#define DEBUG_CFI_FEATURES >> >> >> #ifdef DEBUG_CFI_FEATURES >> @@ -368,6 +368,8 @@ struct mtd_info *cfi_cmdset_0002(struct map_info >> *map, int primary) >> >> extp = (struct cfi_pri_amdstd*)cfi_read_pri(map, adr, >> sizeof(*extp), "Amd/Fujitsu"); >> if (!extp) { >> + printk(KERN_INFO >> + "Flash chip doesn't appear to use the >> Amd/Fujitsu command set.\n"); >> kfree(mtd); >> return NULL; >> } >> @@ -382,12 +384,10 @@ struct mtd_info *cfi_cmdset_0002(struct map_info >> *map, int primary) >> "should be compatibile with >> Amd/Fujitsu.\n"); >> } >> else { >> - printk(KERN_ERR " Unknown Amd/Fujitsu >> Extended Query " >> - "version %c.%c.\n", >> extp->MajorVersion, >> + printk(KERN_ERR " WARNING: Unknown >> Amd/Fujitsu Extended Query " >> + "vendor: %4x version %c.%c. If defaults >> fail look up the chip.\n", >> + (int) cfi->mfr, extp->MajorVersion, >> extp->MinorVersion); >> - kfree(extp); >> - kfree(mtd); >> - return NULL; >> } >> } >> >> >> --- a/drivers/mtd/chips/cfi_probe.c >> +++ b/drivers/mtd/chips/cfi_probe.c >> @@ -18,7 +18,7 @@ >> #include <linux/mtd/cfi.h> >> #include <linux/mtd/gen_probe.h> >> >> -//#define DEBUG_CFI >> +#define DEBUG_CFI >> >> #ifdef DEBUG_CFI >> static void print_cfi_ident(struct cfi_ident *); >> _______________________________________________ >> openwrt-devel mailing list >> [email protected] >> https://lists.openwrt.org/mailman/listinfo/openwrt-devel >> > > > > -- > John Crispin > hacking, coding, etc > blogic on irc > > _______ ________ __ > | |.-----.-----.-----.| | | |.----.| |_ > | - || _ | -__| || | | || _|| _| > |_______|| __|_____|__|__||________||__| |____| > |__| W I R E L E S S F R E E D O M > KAMIKAZE (bleeding edge) ----------------------- > * 10 oz Vodka Shake well with ice and strain > * 10 oz Triple sec mixture into 10 shot glasses. > * 10 oz lime juice Salute! > --------------------------------------------------- > _______________________________________________ > openwrt-devel mailing list > [email protected] > https://lists.openwrt.org/mailman/listinfo/openwrt-devel > _______________________________________________ openwrt-devel mailing list [email protected] https://lists.openwrt.org/mailman/listinfo/openwrt-devel
