anybody!!

Dmitry Skorinko skorinkod at mosk.ru
Fri Oct 22 03:07:22 EDT 2004


Hey, people!!!
Maybe anybody help me??

My problems:
1) I have no NFTL layer with my flash, even after nftl_format
2) Last cvs tree don't work with my flash at all

These problems are not interesting for you???

Dmitry


> I have:
> 1) DiskOnChip 2000 256Mb
> 2) 2.6.8.1 kernel source (2.6.8-7 Debian edition)
> 3) todays cvs tree of mtd drivers
>
> + this patch from Kalev Lember, but for last diskonchip.c file:
>
> RCS file: /home/cvs/mtd/drivers/mtd/nand/diskonchip.c,v
> retrieving revision 1.38
> diff -u -r1.38 diskonchip.c
> --- diskonchip.c        5 Oct 2004 22:11:46 -0000       1.38
> +++ diskonchip.c        11 Oct 2004 12:58:01 -0000
> @@ -1409,13 +1409,9 @@
>                 return ret;
>         memset((char *) parts, 0, sizeof(parts));
>         numparts = inftl_partscan(mtd, parts);
> -       /* At least for now, require the INFTL Media Header.  We could
> probably
> -          do without it for non-INFTL use, since all it gives us is
> -          autopartitioning, but I want to give it more thought. */
> -       if (!numparts) return -EIO;
>         add_mtd_device(mtd);
>  #ifdef CONFIG_MTD_PARTITIONS
> -       if (!no_autopart)
> +       if (!no_autopart && numparts > 0)
>                 add_mtd_partitions(mtd, parts, numparts);
>  #endif
>
> it must help me with flash without headers...
>
> #modprobe inftl
> #modprobe diskonchip
> Segmetation fault
> #dmesg
>
> ---skip---
> INFTL: inftlcore.c $Revision: 1.17 $, inftlmount.c $Revision: 1.14 $
> DiskOnChip found at 0xe0000
> Detected 2 chips per floor.
> NAND device: Manufacturer ID: 0xec, Chip ID: 0x79 (Samsung NAND 128MiB 3,3V
> 8-bit)
> 2 NAND chips detected
> Bad block table found at page 524256, version 0x55
> Bad block table not found for chip 0
> nand_read_bbt: Reserved block at 0x00000000
> nand_read_bbt: Bad block at 0x00080000
> nand_read_bbt: Bad block at 0x000c4000
> nand_read_bbt: Bad block at 0x000d4000
> nand_read_bbt: Bad block at 0x08080000
> nand_read_bbt: Bad block at 0x08124000
> nand_read_bbt: Bad block at 0x08134000
> nand_read_bbt: Bad block at 0x09600000
> nand_read_bbt: Reserved block at 0x0fffc000
> Unable to handle kernel NULL pointer dereference at virtual address
> 0000000c printing eip:
> c80ac094
> *pde = 00000000
> Oops: 0000 [#1]
> PREEMPT
> Modules linked in: diskonchip reed_solomon nand nand_ids nand_ecc mtdpart
> inftl mtd_blkdevs mtdcore ipv6 af_packet 8139too mii crc32 usbkbd usbcore
> rtc ext3 jbd ide_generic sis5513 ide_disk ide_core unix
> CPU:    0
> EIP:    0060:[<c80ac094>]    Not tainted
> EFLAGS: 00010202   (2.6.8contr)
> EIP is at doc_ecc_decode+0x94/0x269 [diskonchip]
> eax: 01b901b9   ebx: 000001b9   ecx: 00000000   edx: 000001b9
> esi: c6541ddc   edi: 00000004   ebp: c6541ddc   esp: c6541cc8
> ds: 007b   es: 007b   ss: 0068
> Process modprobe (pid: 690, threadinfo=c6540000 task=c6b2c0d0)
> Stack: c6540000 21541d4c 00000001 c0115375 c03017e0 01b9033a 01f90344
> c6541d4c c010eb0f c6541d4c c6541d4c 033a033a 033a033a c6541cfc c6541cfc
> 20000001 00000001 c0301928 0000000a c024e098 c0117a58 c0301928 00000000
> c00e0000 Call Trace:
>  [<c0115375>] profile_hook+0x1c/0x31
>  [<c010eb0f>] smp_local_timer_interrupt+0xc/0x91
>  [<c0117a58>] __do_softirq+0x34/0x73
>  [<c80acfe3>] doc200x_correct_data+0x107/0x15a [diskonchip]
>  [<c80d80c4>] nand_read_ecc+0x430/0x759 [nand]
>  [<c80da077>] read_abs_bbt+0xad/0xbc [nand]
>  [<c80d7c90>] nand_read+0x21/0x25 [nand]
>  [<c8076196>] find_media_headers+0x58/0x14f [diskonchip]
>  [<c807675c>] inftl_scan_bbt+0x210/0x3d7 [diskonchip]
>  [<c80d9cd0>] nand_scan+0x7cf/0x7d8 [nand]
>  [<c8076137>] doc2000_count_chips+0x4e/0x55 [diskonchip]
>  [<c8077204>] init_module+0x8e1/0x997 [diskonchip]
>  [<c0126785>] sys_init_module+0xea/0x1db
>  [<c0104f27>] syscall_call+0x7/0xb
> Code: 8b 41 0c 66 8b 14 50 8b 74 24 08 66 89 54 24 04 31 ff 69 f6
>
> if only #modprobe diskonchip - same
> if use without patch - same
>
> if I use standart kernel source drivers from 2.6.8-7 package + this patch:
>
> #modprobe inftl
> #modprobe diskonchip
> Segmetation fault
>
> errors with inftl here
>
> #modprobe nftl
> #modprobe diskonchip
>
> Wow, mtd layer is work (in /proc/mtd i have "DiskOnChip 2000 (INFTL
> Model)"), but i dont have nftl:
> -
> Could not find valid boot record
> Could not mount NFTL device
> -
> nftl_format work correctly but don't help...
>
>
> I have other same flash with normal nand headers, but without nftl headers
> and situation is same, but I don't need this patch and flash have 2
> partitions, etc..   no nftl...
>
> Dmitry
>
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/




More information about the linux-mtd mailing list