[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [microblaze-uclinux] creating a flash partition



Patched, got this on boot:

7 cmdlinepart partitions found on MTD device physmap-flash.0
Creating 7 MTD partitions on "physmap-flash.0":
0x00000000-0x000c0000 : "bitstream"
0x000c0000-0x00100000 : "boot"
0x00100000-0x00140000 : "bootenv"
0x00140000-0x00160000 : "config"
0x00160000-0x00560000 : "image"
0x00560000-0x00660000 : "jimfs"
0x00660000-0x00f60000 : "spare"
same name:physmap-flash.0
kobject_add failed for physmap-flash.0 with -EEXIST, don't try to register things with the same name in the same directory.


John Williams wrote:
Jim Van Vorst wrote:

John Williams wrote:

Jim Van Vorst wrote:

Actually, one issue on that. It does seem to work correctly but I get this message on bootup:
=============================
physmap platform flash device: 01000000 at 21000000
physmap-flash.0: Found 1 x16 devices at 0x0 in 8-bit bank
Intel/Sharp Extended Query Table at 0x0031
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
erase region 0: offset=0x0,size=0x20000,blocks=128
7 cmdlinepart partitions found on MTD device physmap-flash.0
Creating 7 MTD partitions on "physmap-flash.0":
0x00000000-0x000c0000 : "bitstream"
0x000c0000-0x00100000 : "boot"
0x00100000-0x00140000 : "bootenv"
0x00140000-0x00160000 : "config"
0x00160000-0x00560000 : "image"
0x00560000-0x00660000 : "jimfs"
0x00660000-0x00f60000 : "spare"

*** this thing here ***
kobject_add failed for physmap-flash.0 with -EEXIST, don't try to register things with the same name in the same directory.


Do you have two partitions with the same name? Can you please post the relevant fragment of your petalinux-dist/config/.config file - look for CONFIG_SYSTEM_PARTITION{x}_NAME and _SIZE

Here is the fragment:

#
# Flash Partition Table
#
CONFIG_SYSTEM_PARTITION1_NAME="bitstream"
CONFIG_SYSTEM_PARTITION1_SIZE=c0000
CONFIG_SYSTEM_PARTITION2_NAME="boot"
CONFIG_SYSTEM_PARTITION2_SIZE=40000
CONFIG_SYSTEM_PARTITION3_NAME="bootenv"
CONFIG_SYSTEM_PARTITION3_SIZE=40000
CONFIG_SYSTEM_PARTITION4_NAME="config"
CONFIG_SYSTEM_PARTITION4_SIZE=20000
CONFIG_SYSTEM_PARTITION5_NAME="image"
CONFIG_SYSTEM_PARTITION5_SIZE=400000
CONFIG_SYSTEM_PARTITION6_NAME="jimfs"
CONFIG_SYSTEM_PARTITION6_SIZE=100000
CONFIG_SYSTEM_PARTITION7_NAME="spare"
CONFIG_SYSTEM_PARTITION7_SIZE=0x0
CONFIG_SYSTEM_PARTITION8_NAME=""
CONFIG_SYSTEM_PARTITION8_SIZE=0x0

My boot command is:

Kernel command line: mtdparts=physmap-flash.0:768K(bitstream),256K(boot),256K(bootenv),128K(config),4M(image),1M(jimfs),9M(spare) macaddr=00:0a:35:00:22:01

Which corresponds to the .config fragment above.

Maybe it thinks "boot" and "bootenv" are the same?

Hmm, don't think so.

Also, if boot command parsing is enabled, does the kernel even care what is in the .config or does it only pay attention to the mtdparts string?

Well, they all depend on each other...from the .config we

1. create (via a script) config.ub.img, which
2. you download to u-boot, which
3. tells it the $mtdparts variable, which
4. gets appended to the $cmdline variable, which
5. is passed to the kernel, which
6. gives it to MTD, which
7. sets up the partitions

The kernel error you are seeing comes from the populating the sysfs virtual filesystem, it thinks you are trying to create two virtual files of the same name in the same directory - thus my question about duplicate partition names.

Can you please try the attached debug patch to linux-2.6.x/fs/sysfs/dir.c, to print out the offending info. Might shed some light.

Thanks,

John
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/