Skip to content
  • Ryan Harkin's avatar
    vexpress64: specify CONFIG_SYS_FLASH_CFI_WIDTH · f19f389f
    Ryan Harkin authored
    
    
    Testing on the ARM Versatile Express Juno board showed intermittent CFI
    flash detection problems.
    
    Debug output in exception cases showed that the NOR flash was returning
    incorrect values to a query command:
    
    fwc addr 0000000008000000 cmd f0 f0f0f0f0 32bit x 8 bit
    fwc addr 0000000008000000 cmd ff ffffffff 32bit x 8 bit
    fwc addr 0000000008000154 cmd 98 98989898 32bit x 8 bit
    is= cmd 51(Q) addr 0000000008000040 is= 00800051 51515151
    fwc addr 0000000008001554 cmd 98 98989898 32bit x 8 bit
    is= cmd 51(Q) addr 0000000008000040 is= 00800051 51515151
    fwc addr 0000000008000000 cmd f0 00f000f0 32bit x 16 bit
    fwc addr 0000000008000000 cmd ff 00ff00ff 32bit x 16 bit
    fwc addr 0000000008000154 cmd 98 00980098 32bit x 16 bit
    is= cmd 51(Q) addr 0000000008000040 is= 00800051 00510051
    fwc addr 0000000008001554 cmd 98 00980098 32bit x 16 bit
    is= cmd 51(Q) addr 0000000008000040 is= 00800051 00510051
    
    Debugging showed that the problem could be solved by preventing u-boot
    from scanning different flash widths by specifying
    CONFIG_SYS_FLASH_CFI_WIDTH so that only using the 'correct' width was
    used.
    
    Signed-off-by: default avatarRyan Harkin <ryan.harkin@linaro.org>
    Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    f19f389f