Using a generic upstream driver with a custom NAND controller

Steve deRosier derosier at gmail.com
Tue Jan 19 13:15:39 PST 2016


Hi Mason,



On Tue, Jan 19, 2016 at 11:30 AM, Mason <slash.tmp at free.fr> wrote:
> Hello,
>
> Is there some generic driver upstream that I could try to see if
> it works with this controller?
>
> Note: the SoC is using these chips:
> nand: Micron NAND 512MiB 3,3V 8-bit
> nand: 512MiB, SLC, page size: 2048, OOB size: 64
>

That's a common chip configuration. Calling out the chip ID
specifically might also be of some help. What you have to do is enable
the driver for your NAND controller, the NAND chip isn't that
relevant. Nearly every mainline SoC or processor would have a driver.
If it's truly custom, then in my opinion, you're going to need to
write a driver. Though it should be provided to you by your SoC
vendor. Shame on them for not building the driver right and
upstreaming it.

Odds are they didn't create one from scratch however. That would be
truly strange. Likely they took a stock one and made some custom
changes. You might be able to ask what it was based on and make
changes to the base driver.

While ONFI is a standard way for the flash chips to identify
themselves to a controller and get it to auto-configure, my
understanding is you'd still need a driver for the controller itself
and there's no such thing as a generic controller. Then again I'm
hardly an expert on flash controllers specifically, I usually only
work with the Atmel chips which have a well-supported mainline driver.

Good luck!
- Steve



More information about the linux-mtd mailing list