Re: [Balloon] Enabling NOR flash

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: David Bisset
Date:  
To: Patrick Doyle
CC: balloon
Subject: Re: [Balloon] Enabling NOR flash
I feel sure I must be missing the point given the complexity of the discussion to date.
But my approach would be to punt the MMU page out of the way since it maps 0 into RAM from early in the Bootloader process.
Then just talk directly to the NOR chip. There are a number of code blocks out there you could copy the NOR writing code from.
Why try and make it a real NOR partition when it isn't formatted as a FS, its just a fixed sequence of blocks in a memory device holding a fixed sequence of binary data.
You're only going to do this for Balloon 3 so there is no pressure to be generic.
The tough bit would be trying to program the FPGA live from user space...

Regards
David


On 14 Jun 2011, at 13:21, Patrick Doyle wrote:

> OK, I've got 3 options here, and I really need to move on from this.
>
> 1) Enable CONFIG_MTD_PHYSMAP and live with the change in mtd blocks.
> Change the linuxargs bootldr param to point to the new root partition
> (in NAND) and get on with life.
>
> 2) Apply the ridiculous ugly, WRONG WAY TO DO THIS, patch (see
> attached) which preserves the partition order by virtue of calling the
> platform specific 'balloon3_nor_init()' procedure (defined in
> arch/arm/pxa-270/balloon3.c) from the NAND driver code procedure
> 'balloon3_nand_init()' (defined in drivers/mtd/nand/balloon3.c.
>
> 3) Arrange somehow for the NAND partition to be probed, recognized,
> and loaded from within balloon3_init(). I'm having trouble figuring
> out how to make this work. Simply calling 'balloon3_nand_init()' (the
> one defined in drivers/mtd/nand/balloon.c, not the confusingly
> identically named one from within baloon3.c) doesn't work, probably
> because other stuff has not yet been initialized.
>
> This is the one that I need help on... if anybody has any suggestions
> on how to safely call a vanilla module init function from within the
> low level balloon3.c 'balloon3_init()' function, I'd love the tip.
>
> If anybody has a better/different suggestion, I'd be open to trying
> that as well.
>
> Thanks folks!
>
> --wpd
> <balloon3-nor.patch>_______________________________________________
> Balloon mailing list
>
> http://balloonboard.org/mailman/listinfo/balloon