• Linus Walleij's avatar
    mtd: physmap_of: add a hook for Intel IXP4xx flash probing · 2aba2f2a
    Linus Walleij authored
    In order to support device tree probing of IXP4xx NOR flash
    chips, a certain big-endian or mixed-endian memory access
    pattern need to be used.
    
    I have opted to use the pattern set by previous plug-ins
    to physmap for Gemini and Versatile, just override some
    functions and reuse most of the physmap core code as it
    is to minimize maintenance.
    
    Parts of drivers/mtd/ixp4xx.c are copied into this file.
    
    After we have IXP4xx converted fully to device tree, the
    drivers/mtd/ixp4xx.c file will be deleted and this will
    be the only access pattern to the IXP4xx flash.
    
    I did not keep the quirk in the flash write function
    after probe, where the old code for a while checks for
    access to odd addresses, fails and assigns a "faster"
    write function once it has convinced probe to only use
    2-byte accesses. As we mandate that this device should
    be using bank-width = <2> this should not be a problem
    unless misconfigured.
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Signed-off-by: default avatarMiquel Raynal <miquel.raynal@bootlin.com>
    2aba2f2a
Kconfig 13.5 KB