Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
20 years ago

MTD + CFI

I can successfuly mount the root (ROMfs) using the pre-built Nios RAM/ROMfs mapping. Without moving the ROMfs (currently at 0x200000 relative, as usual), I was hoping to switch to a custom CFI mapper so that I could add a JFFS2 partition after the ROMfs parition. The chip itself is correctly probed at physical 0x1000000. The partition table I'm shooting for looks like:

0x000000-0x1FFFFF - Kernel

0x200000-0x5F8000 - ROMfs

0x780000-0x800000 - JFFS2 (future)

0x800000-END - TBD

This layout works fine with the standard ROMfs, which simply maps 0x1200000-15f8000 as the entire MTD (i.e., not paritioning). I changed the boot to mount mtd1 instead of mtd0, and I also used MKDEV to set (I think) mtd1 as the rootdev.

When I use my custom (modified physmap.c) mapper, I get the following:

smc_probe: 50000 Khz Nios

ISI flash device: 1000000 at 1000000

phys_mapped_flash: Found 1 x16 devices at 0x0 in 16-bit bank

Amd/Fujitsu Extended Query Table at 0x0040

Using buffer write method

phys_mapped_flash: CFI does not contain boot bank location. Assuming top.

number of CFI chips: 1

cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.

Using ISI specific partition definition

Creating 4 MTD partitions on "phys_mapped_flash":

0x00000000-0x00200000 : "kernel"

mtd: Giving out device 0 to kernel

0x00200000-0x005f8000 : "ROMfs"

mtd: Giving out device 1 to ROMfs

0x00780000-0x00800000 : "Flash FS"

mtd: Giving out device 2 to Flash FS

0x00800000-0x01000000 : "FPGA Cores"

mtd: Giving out device 3 to FPGA Cores

isimap[mtd]: set ROMfs to be root filesystem

NET: Registered protocol family 2

IP: routing cache hash table of 512 buckets, 4Kbytes

TCP established hash table entries: 1024 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)

TCP: Hash tables configured (established 1024 bind 1024)

NET: Registered protocol family 1

NET: Registered protocol family 17

mtdblock_open

ok

mtdblock_release

ok

mtdblock_open

ok

mtdblock_release

ok

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,1)

Does the bankwidth affect addressing? The RAM/ROMfs mapper uses a 4-octet bankwidth in conjction with the ram_map. Since I'm tyring to use the cfi type, I specified a 2-octet bankwidth. Does that imply a change in the partition table?

1 Reply

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    [Self - reply]

    I had somehow disable ROMfs file system support. It's possible that I confused it with the MTD->Mapping Driver->Nios RAM/ROMfs Suport setting.