[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-arm-kernel
Subject:    pxa/lubbock: mtd / jffs2 rootfs in 2.6.0-testx
From:       "Ron Ytsma" <36214 () student ! saxion ! nl>
Date:       2003-10-29 18:47:38
[Download RAW message or body]


Hi all,
this is my first post to this list. First of all i have to thank you people
for making such good efforts. A lot of problems have been solved just by
reading!

I figure I can't get any 2.6 kernels going because of my different flash
chips. It crashes & burns on mounting the root filesystem in jffs2. It
keeps on checking CRC errors on a lot of inodes and removes child
directories. Yet in 2.4.18 it works just fine.

Hardware: Intel Xscale (PXA250) on lubbock board

(working) 2.4.18-rmk7-pxa3
in drivers/mtd/maps/lubbock.c my chip size are defined like so (different
from standard):

#define WINDOW_ADDR     0x00000000
#define WINDOW_SIZE     128*1024*1024 // 32*1024*1024
#define BUSWIDTH        4
.....
static struct mtd_partition lubbock_partitions[] = {
        {
                name:           "Bootloader",
                size:           0x00040000,
                offset:         0,
                mask_flags:     MTD_WRITEABLE  /* force read-only */
        },{ name:           "Kernel",
                size:           0x00100000,
                offset:         0x00040000,
        },{ name:           "Filesystem",
                size:           0x03e00000, //MTDPART_SIZ_FULL,
                offset:         0x00140000  // makes 0x04000000
        }
....


(non-working) 2.6.0-test2/8/9
in drivers/mtd/maps/lubbock-flash.c

#define ROM_ADDR        0x00000000
#define FLASH_ADDR      0x04000000
#define WINDOW_SIZE     64*1024*1024
static struct map_info lubbock_maps[2] = { {
        .size =         WINDOW_SIZE,
        .phys =         0x00000000,
}, {
        .size =         WINDOW_SIZE,
        .phys =         0x04000000,
} };
......
Seems like MTD has been reworked a bit.

Questions/assumptions
-The 2.6 kernel identifies the chips as 32 bit (buswidth=4) which is
correct

-I take it WINDOW_ADDR = FLASH_ADDR

-window_size defines the size of 1 flash chip? (wich is 0x04000000)
(as the struct map_info has 2 times window_size)

-what's the ROM_ADDR?

-How do i "translate" the working 2.4.18-rmk7-pxa3 into the 2.6 kernel?(i
tried most of the logical stuff, but I'll take any suggestion :)

Any comments to the questions ? Did i make any false assumptions, or am I
looking in the wrong direction?... need help here :)

greets Ron



-------------------------------------------------------------------
Subscription options: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel
FAQ/Etiquette:       http://www.arm.linux.org.uk/armlinux/mailinglists.php

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic