JFFS2 FS is read-only (not what I want)

2006-07-04 Thread Mathieu Deschamps
On Monday 03 July 2006 22:12, Ben Warren wrote:
>  On Mon, 2006-07-03 at 15:38 -0400, Ben Warren wrote:
> > This is starting to look to me like a generation-time issue.  I built
> > another JFFS2 partition out of a random directory on my workstation, and
> > it's behaving properly:
>
> Sorry for filling people's inboxes, but it turns out the problem was
> between the chair and keyboard.  

arf ! computer hardly ever suffer this problem :)

>My JFFS2 partition was slightly less
> than 2MB, which I guess decompresses to > 2 MB, filling up the
> partition.  I must have been in the wrong directory when issuing the
> 'du' command.  On the plus side, I've learned quite a bit about MTD and
> JFFS2 going through this exercise!
>
> regards,
> Ben


Regards,
mathdesc



---
I guess this illustrate a difference between knowledge and 
understanding. The first without second is confusion, the second without
first is a miss.



JFFS2 FS is read-only (not what I want)

2006-07-03 Thread Ben Warren
 On Mon, 2006-07-03 at 15:38 -0400, Ben Warren wrote:


> This is starting to look to me like a generation-time issue.  I built
> another JFFS2 partition out of a random directory on my workstation, and
> it's behaving properly:

Sorry for filling people's inboxes, but it turns out the problem was
between the chair and keyboard.  My JFFS2 partition was slightly less
than 2MB, which I guess decompresses to > 2 MB, filling up the
partition.  I must have been in the wrong directory when issuing the
'du' command.  On the plus side, I've learned quite a bit about MTD and
JFFS2 going through this exercise!

regards,
Ben
-- next part --
An HTML attachment was scrubbed...
URL: 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060703/dd75515c/attachment.htm
 


JFFS2 FS is read-only (not what I want)

2006-07-03 Thread Ben Warren
Mathieu,
> 
> IMHO, it's not a generation-time issue
> 
This is starting to look to me like a generation-time issue.  I built
another JFFS2 partition out of a random directory on my workstation, and
it's behaving properly:

$mkfs.jffs2 -U -d util -b -e 0x2 -o /tftpboot/prism/myutil.img

On the target, I booted from NFS and mounted both MTD images.  The
original one is in /dev/mtdblock4 and the new one is at /dev/mtdblock3:

bash-3.00# pwd
/tmp
bash-3.00# mkdir mnt1 mnt2
bash-3.00# ll
total 8
drwxr-xr-x  2 root root 4096 Jul  3  2006 mnt1
drwxr-xr-x  2 root root 4096 Jul  3  2006 mnt2
bash-3.00# mount -t jffs2 -o rw,nolock /dev/mtdblock3 mnt1
bash-3.00# mount -t jffs2 -o rw,nolock /dev/mtdblock4 mnt2
bash-3.00# df
Filesystem   1K-blocks  Used Available Use% Mounted on
/dev/nfs  72054096  13245480  55148432  20% /
/dev/mtdblock32048   592  1456  29% /tmp/mnt1
/dev/mtdblock42048  2048 0 100% /tmp/mnt2

As you can see, the new image is working fine.  Looks like I need to
debug the root FS! 

Thanks to all people who helped me out here!

cheers,
Ben
 




JFFS2 FS is read-only (not what I want)

2006-07-03 Thread Mathieu Deschamps
Hello Ben,

On Saturday 01 July 2006 23:13, Ben Warren wrote:
> Hello,
>
> When I boot from a JFFS2 file system on my eval board, the file system
> is effectively read-only, and I can't figure out why.  I'm pretty sure
> the kernel's configured for R/W MTD block access.  Any help is greatly
> appreciated.
>
Do you mean that you can't even created a void file on / as root ? Else
can you then put for instance text in it ? My point is can or can't you
first create a new fs node and then can you write to file your
changes, that's two possible causes.
>
> The hardware in use is:
>
> Freescale MPC8349EMDS eval board.
> 8MB Q-flash with 64 uniform 128k sectors
>

[...]

> # mount
> /dev/mtdblock4 on / type jffs2 (rw)
> /proc on /proc type proc (rw)
>
[...]
>
> I created the MTD partitions in a u-boot image that was pulled from the

Yes indeed what about drivers/mtd/maps/physmap.c ? your parts are
mask_flags:  MTD_WRITEB_WRITEABLE and not  MTD_CAP_ROM,
aren't they ?

> GIT tree about a week ago, and my kernel is 2.6.17-based.  I wrote some
> board init code that sets the MTD physical mappings.
>
> Here are the MTD and JFFS2 parts of my .config file:
>
> ***
> # Memory Technology Devices (MTD)
> #
> CONFIG_MTD=y
> # CONFIG_MTD_DEBUG is not set
> # CONFIG_MTD_CONCAT is not set
> CONFIG_MTD_PARTITIONS=y
> # CONFIG_MTD_REDBOOT_PARTS is not set
> # CONFIG_MTD_CMDLINE_PARTS is not set
>
[...]
> # CONFIG_JFFS_FS is not set
> CONFIG_JFFS2_FS=y

Better avoid redundacy but this is not a clue, I guess
make won't be fooled by this.

> CONFIG_JFFS2_FS_DEBUG=0
> # CONFIG_JFFS2_FS_WRITEBUFFER is not set
> # CONFIG_JFFS2_SUMMARY is not set
> # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
> CONFIG_JFFS2_ZLIB=y
> CONFIG_JFFS2_RTIME=y
> # CONFIG_JFFS2_RUBIN is not set
> ***
>
> The file system is the SELF that is included with DENX's ELDK, and built
> as at:
> http://www.denx.de/wiki/view/DULG/RootFileSystemDesignAndBuilding
>
> I used the following command to create the file system image, that was
>
> then loaded at address 0xfe48 via U-boot:
>  > mkfs.jffs2 -U -d rootfs -D rootfs_device.tab -b -e 0x2 -o jffs2.img
>

IMHO, it's not a generation-time issue

>
[...]


That's all I have for now. Good luck.


Regards,

Mathieu Deschamps
Com2gether Design Center
Electronic and Embedded Engineering Services
www.com2gether.net 



JFFS2 FS is read-only (not what I want)

2006-07-03 Thread Anantharaman Chetan-W16155
Also as a side note, I think even if you unlock your banks/sectors in
U-Boot, when the Linux kernel is launched I am not sure if the
sectors/banks remain unlocked. You can also use the MTD Utils to unlock
the device, erase the device, etc. in the shell.

 

Chetan

 



From: Ben Warren [mailto:[EMAIL PROTECTED] 
Sent: Monday, July 03, 2006 9:36 AM
To: Anantharaman Chetan-W16155
Cc: linuxppc-embedded at ozlabs.org
Subject: RE: JFFS2 FS is read-only (not what I want)

 

Chetan,

On Mon, 2006-07-03 at 10:18 -0400, Anantharaman Chetan-W16155 wrote: 

 
Did you check to see if your flash banks are unlocked?
 

According to U-Boot, only the first four sectors are locked.  My JFFS2
partition is in sectors 37-52 (1-based).  I'll definitely look more
deeply into this, though.

thanks,
Ben 

-- next part --
An HTML attachment was scrubbed...
URL: 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060703/ee6cdc5e/attachment.htm
 


JFFS2 FS is read-only (not what I want)

2006-07-03 Thread Ben Warren
Chetan,

On Mon, 2006-07-03 at 10:18 -0400, Anantharaman Chetan-W16155 wrote:

> Did you check to see if your flash banks are unlocked?
> 

According to U-Boot, only the first four sectors are locked.  My JFFS2
partition is in sectors 37-52 (1-based).  I'll definitely look more
deeply into this, though.

thanks,
Ben
-- next part --
An HTML attachment was scrubbed...
URL: 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060703/e83f1de5/attachment.htm
 


JFFS2 FS is read-only (not what I want)

2006-07-03 Thread Ben Warren
Mathieu,

Thanks for responding!

On Mon, 2006-07-03 at 12:42 +0200, Mathieu Deschamps wrote:


> >
> Do you mean that you can't even created a void file on / as root ? Else
> can you then put for instance text in it ? My point is can or can't you
> first create a new fs node and then can you write to file your
> changes, that's two possible causes.

# pwd
/
# touch newfile
touch: newfile: No space left on device
#


> Yes indeed what about drivers/mtd/maps/physmap.c ? your parts are
> mask_flags:  MTD_WRITEB_WRITEABLE and not  MTD_CAP_ROM,
> aren't they ?
> 

My chip is pretty standard NOR type Flash, and gets recognized by CFI as
using command set 0001.  It gets these flags:
#define MTD_CAP_NORFLASH(MTD_CLEAR_BITS|MTD_ERASEABLE)


> > ***
> > # Memory Technology Devices (MTD)
> > #
> > CONFIG_MTD=y
> > # CONFIG_MTD_DEBUG is not set
> > # CONFIG_MTD_CONCAT is not set
> > CONFIG_MTD_PARTITIONS=y
> > # CONFIG_MTD_REDBOOT_PARTS is not set
> > # CONFIG_MTD_CMDLINE_PARTS is not set
> >
> [...]
> > # CONFIG_JFFS_FS is not set
> > CONFIG_JFFS2_FS=y
> 
> Better avoid redundacy but this is not a clue, I guess
> make won't be fooled by this.
> 

Sorry, what's redundant here?  I just used 'make menuconfig', and
hopefully it notices incorrect options.


> 
> IMHO, it's not a generation-time issue
> 
> >

Good.  I'll keep plugging away with my BDI

thanks again,
Ben
-- next part --
An HTML attachment was scrubbed...
URL: 
http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060703/f79d96c7/attachment.htm
 


JFFS2 FS is read-only (not what I want)

2006-07-03 Thread Anantharaman Chetan-W16155
Did you check to see if your flash banks are unlocked?

Chetan Anantharaman
Motorola Labs

-Original Message-
From: [EMAIL PROTECTED]
[mailto:linuxppc-embedded-bounces+w16155=email.mot.com at ozlabs.org] On
Behalf Of Ben Warren
Sent: Saturday, July 01, 2006 4:14 PM
To: linuxppc-embedded at ozlabs.org
Subject: JFFS2 FS is read-only (not what I want)

Hello,

When I boot from a JFFS2 file system on my eval board, the file system 
is effectively read-only, and I can't figure out why.  I'm pretty sure 
the kernel's configured for R/W MTD block access.  Any help is greatly 
appreciated.

The hardware in use is:

Freescale MPC8349EMDS eval board.
8MB Q-flash with 64 uniform 128k sectors

Here are the symptoms:

# du -s
265492  .<-- only 265k of data
# df
Filesystem   1k-blocks  Used Available Use% Mounted on
/dev/mtdblock42048  2048 0 100% /
# mount
/dev/mtdblock4 on / type jffs2 (rw)
/proc on /proc type proc (rw)

Here's what the kernel spits out at boot-up:

***
physmap flash device: 80 at fe00
phys_mapped_flash: Found 1 x16 devices at 0x0 in 16-bit bank
Command set type 1
 Intel/Sharp Extended Query Table at 0x0031
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
cmdlinepart partition parsing not available
RedBoot partition parsing not available
Using physmap partition definition
Creating 6 MTD partitions on "phys_mapped_flash":
0x-0x0004 : "u-boot"
0x0004-0x0008 : "env"
0x0008-0x0028 : "kernel"   <-- kernel boots 
from here
0x0028-0x0048 : "initrd" <-- no initrd, 
this is empty
0x0048-0x0068 : "jffs2"  <-- 2MB
partition
0x0068-0x0080 : "user"  <-- empty
***

I created the MTD partitions in a u-boot image that was pulled from the 
GIT tree about a week ago, and my kernel is 2.6.17-based.  I wrote some 
board init code that sets the MTD physical mappings. 

Here are the MTD and JFFS2 parts of my .config file:

***
# Memory Technology Devices (MTD)
#
CONFIG_MTD=y
# CONFIG_MTD_DEBUG is not set
# CONFIG_MTD_CONCAT is not set
CONFIG_MTD_PARTITIONS=y
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_CMDLINE_PARTS is not set
#
# User Modules And Translation Layers
#
CONFIG_MTD_CHAR=y
CONFIG_MTD_BLOCK=y
# CONFIG_FTL is not set
# CONFIG_NFTL is not set
# CONFIG_INFTL is not set
# CONFIG_RFD_FTL is not set
#
# RAM/ROM/Flash chip drivers
#
CONFIG_MTD_CFI=y
# CONFIG_MTD_JEDECPROBE is not set
CONFIG_MTD_GEN_PROBE=y
# CONFIG_MTD_CFI_ADV_OPTIONS is not set
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
CONFIG_MTD_CFI_I1=y
CONFIG_MTD_CFI_I2=y
# CONFIG_MTD_CFI_I4 is not set
# CONFIG_MTD_CFI_I8 is not set
CONFIG_MTD_CFI_INTELEXT=y
# CONFIG_MTD_CFI_AMDSTD is not set
CONFIG_MTD_CFI_STAA=y
CONFIG_MTD_CFI_UTIL=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_ROM is not set
# CONFIG_MTD_ABSENT is not set
# CONFIG_MTD_OBSOLETE_CHIPS is not set
#
# Mapping drivers for chip access
#
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
CONFIG_MTD_PHYSMAP=y
CONFIG_MTD_PHYSMAP_START=0xFE00
CONFIG_MTD_PHYSMAP_LEN=0x80
CONFIG_MTD_PHYSMAP_BANKWIDTH=2
# CONFIG_MTD_PLATRAM is not set

# CONFIG_JFFS_FS is not set
CONFIG_JFFS2_FS=y
CONFIG_JFFS2_FS_DEBUG=0
# CONFIG_JFFS2_FS_WRITEBUFFER is not set
# CONFIG_JFFS2_SUMMARY is not set
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
CONFIG_JFFS2_ZLIB=y
CONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not set
***

The file system is the SELF that is included with DENX's ELDK, and built

as at:
http://www.denx.de/wiki/view/DULG/RootFileSystemDesignAndBuilding

I used the following command to create the file system image, that was 
then loaded at address 0xfe48 via U-boot:

 > mkfs.jffs2 -U -d rootfs -D rootfs_device.tab -b -e 0x2 -o
jffs2.img

I modified the table to name my serial devices /dev/ttyS0 and /dev/ttyS1

thanks for the help.  Sorry if this is too verbose or includes the wrong

information.

regards,
Ben




___
Linuxppc-embedded mailing list
Linuxppc-embedded at ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-embedded



JFFS2 FS is read-only (not what I want)

2006-07-03 Thread David Hawkins
Ben Warren wrote:
> Hello,
> 
> When I boot from a JFFS2 file system on my eval board, the file system 
> is effectively read-only, and I can't figure out why.  I'm pretty sure 
> the kernel's configured for R/W MTD block access.  Any help is greatly 
> appreciated.

The default uboot command line on the 8349E was:

bootargs=root=/dev/mtdblock1 rootfstype=jffs2 rw console=ttyS0,115200

so I suspect you have dropped the rw ... try adding that.

> The hardware in use is:
> 
> Freescale MPC8349EMDS eval board.
> 8MB Q-flash with 64 uniform 128k sectors

I'm also working with that board, feel free to contact me off
list and we can compare notes.

When I've finished my evaluation I'll post a link to the list
for anyone else thats interested.

Cheers
Dave




JFFS2 FS is read-only (not what I want)

2006-07-01 Thread Ben Warren
Hello,

When I boot from a JFFS2 file system on my eval board, the file system 
is effectively read-only, and I can't figure out why.  I'm pretty sure 
the kernel's configured for R/W MTD block access.  Any help is greatly 
appreciated.

The hardware in use is:

Freescale MPC8349EMDS eval board.
8MB Q-flash with 64 uniform 128k sectors

Here are the symptoms:

# du -s
265492  .<-- only 265k of data
# df
Filesystem   1k-blocks  Used Available Use% Mounted on
/dev/mtdblock42048  2048 0 100% /
# mount
/dev/mtdblock4 on / type jffs2 (rw)
/proc on /proc type proc (rw)

Here's what the kernel spits out at boot-up:

***
physmap flash device: 80 at fe00
phys_mapped_flash: Found 1 x16 devices at 0x0 in 16-bit bank
Command set type 1
 Intel/Sharp Extended Query Table at 0x0031
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
cmdlinepart partition parsing not available
RedBoot partition parsing not available
Using physmap partition definition
Creating 6 MTD partitions on "phys_mapped_flash":
0x-0x0004 : "u-boot"
0x0004-0x0008 : "env"
0x0008-0x0028 : "kernel"   <-- kernel boots 
from here
0x0028-0x0048 : "initrd" <-- no initrd, 
this is empty
0x0048-0x0068 : "jffs2"  <-- 2MB partition
0x0068-0x0080 : "user"  <-- empty
***

I created the MTD partitions in a u-boot image that was pulled from the 
GIT tree about a week ago, and my kernel is 2.6.17-based.  I wrote some 
board init code that sets the MTD physical mappings. 

Here are the MTD and JFFS2 parts of my .config file:

***
# Memory Technology Devices (MTD)
#
CONFIG_MTD=y
# CONFIG_MTD_DEBUG is not set
# CONFIG_MTD_CONCAT is not set
CONFIG_MTD_PARTITIONS=y
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_CMDLINE_PARTS is not set
#
# User Modules And Translation Layers
#
CONFIG_MTD_CHAR=y
CONFIG_MTD_BLOCK=y
# CONFIG_FTL is not set
# CONFIG_NFTL is not set
# CONFIG_INFTL is not set
# CONFIG_RFD_FTL is not set
#
# RAM/ROM/Flash chip drivers
#
CONFIG_MTD_CFI=y
# CONFIG_MTD_JEDECPROBE is not set
CONFIG_MTD_GEN_PROBE=y
# CONFIG_MTD_CFI_ADV_OPTIONS is not set
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
CONFIG_MTD_CFI_I1=y
CONFIG_MTD_CFI_I2=y
# CONFIG_MTD_CFI_I4 is not set
# CONFIG_MTD_CFI_I8 is not set
CONFIG_MTD_CFI_INTELEXT=y
# CONFIG_MTD_CFI_AMDSTD is not set
CONFIG_MTD_CFI_STAA=y
CONFIG_MTD_CFI_UTIL=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_ROM is not set
# CONFIG_MTD_ABSENT is not set
# CONFIG_MTD_OBSOLETE_CHIPS is not set
#
# Mapping drivers for chip access
#
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
CONFIG_MTD_PHYSMAP=y
CONFIG_MTD_PHYSMAP_START=0xFE00
CONFIG_MTD_PHYSMAP_LEN=0x80
CONFIG_MTD_PHYSMAP_BANKWIDTH=2
# CONFIG_MTD_PLATRAM is not set

# CONFIG_JFFS_FS is not set
CONFIG_JFFS2_FS=y
CONFIG_JFFS2_FS_DEBUG=0
# CONFIG_JFFS2_FS_WRITEBUFFER is not set
# CONFIG_JFFS2_SUMMARY is not set
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not set
CONFIG_JFFS2_ZLIB=y
CONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not set
***

The file system is the SELF that is included with DENX's ELDK, and built 
as at:
http://www.denx.de/wiki/view/DULG/RootFileSystemDesignAndBuilding

I used the following command to create the file system image, that was 
then loaded at address 0xfe48 via U-boot:

 > mkfs.jffs2 -U -d rootfs -D rootfs_device.tab -b -e 0x2 -o jffs2.img

I modified the table to name my serial devices /dev/ttyS0 and /dev/ttyS1

thanks for the help.  Sorry if this is too verbose or includes the wrong 
information.

regards,
Ben