diff options
author | Alexey Brodkin <abrodkin@synopsys.com> | 2015-04-09 16:50:58 (GMT) |
---|---|---|
committer | Alexey Brodkin <abrodkin@synopsys.com> | 2015-04-09 17:00:46 (GMT) |
commit | 0241c3131dd4c19a1116c863d622358eb2680462 (patch) | |
tree | 3add3601f080dc79ec279e644c8b831ed5da83e0 /board/synopsys/axs101/nand.c | |
parent | 385a08a60f042061b004642d6b9bb6cfb794ad5a (diff) | |
download | u-boot-0241c3131dd4c19a1116c863d622358eb2680462.tar.xz |
board: axs10x - support v3 mother-board
There're 2 versions of motherboards that could be used in ARC SDP.
The only important difference for U-Boot is different NAND IC in use:
[1] v2 board (we used to support up until now) sports MT29F4G08ABADAWP
while
[2] v3 board sports MT29F4G16ABADAWP
They are almost the same except data bus width 8-bit in [1] and 16-bit
in [2]. And for proper support of 16-bit data bus we have to pass
NAND_BUSWIDTH_16 option to NAND driver core - which we do now knowing
board type we're running on.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Diffstat (limited to 'board/synopsys/axs101/nand.c')
-rw-r--r-- | board/synopsys/axs101/nand.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/board/synopsys/axs101/nand.c b/board/synopsys/axs101/nand.c index ff35286..4be52e2 100644 --- a/board/synopsys/axs101/nand.c +++ b/board/synopsys/axs101/nand.c @@ -9,6 +9,9 @@ #include <malloc.h> #include <nand.h> #include <asm/io.h> +#include "axs10x.h" + +DECLARE_GLOBAL_DATA_PTR; #define BUS_WIDTH 8 /* AXI data bus width in bytes */ @@ -232,5 +235,9 @@ int board_nand_init(struct nand_chip *nand) nand->write_buf = axs101_nand_write_buf; nand->read_buf = axs101_nand_read_buf; + /* MBv3 has NAND IC with 16-bit data bus */ + if (gd->board_type == AXS_MB_V3) + nand->options |= NAND_BUSWIDTH_16; + return 0; } |