arm: mvebu: NAND clock support for MSYS devices
One difference with the integrated CPUs is that they use a different clock control block to the Armada devices. Update mvebu_get_nand_clock() accordingly. Signed-off-by: Chris Packham <judge.packham@gmail.com> Reviewed-by: Stefan Roese <sr@denx.de> Signed-off-by: Stefan Roese <sr@denx.de>
This commit is contained in:
parent
0d0df46ee7
commit
689f9cf6aa
@ -499,6 +499,8 @@ u32 mvebu_get_nand_clock(void)
|
||||
|
||||
if (mvebu_soc_family() == MVEBU_SOC_A38X)
|
||||
reg = MVEBU_DFX_DIV_CLK_CTRL(1);
|
||||
else if (mvebu_soc_family() == MVEBU_SOC_MSYS)
|
||||
reg = MVEBU_DFX_DIV_CLK_CTRL(8);
|
||||
else
|
||||
reg = MVEBU_CORE_DIV_CLK_CTRL(1);
|
||||
|
||||
|
@ -100,9 +100,20 @@
|
||||
#define SPI_PUP_EN BIT(5)
|
||||
|
||||
#define MVEBU_CORE_DIV_CLK_CTRL(i) (MVEBU_CLOCK_BASE + ((i) * 0x8))
|
||||
#ifdef CONFIG_ARMADA_MSYS
|
||||
#define MVEBU_DFX_DIV_CLK_CTRL(i) (MVEBU_DFX_BASE + 0xf8000 + 0x250 + ((i) * 0x4))
|
||||
#define NAND_ECC_DIVCKL_RATIO_OFFS 6
|
||||
#define NAND_ECC_DIVCKL_RATIO_MASK (0xF << NAND_ECC_DIVCKL_RATIO_OFFS)
|
||||
#else
|
||||
#define MVEBU_DFX_DIV_CLK_CTRL(i) (MVEBU_DFX_BASE + 0x250 + ((i) * 0x4))
|
||||
#endif
|
||||
#ifdef CONFIG_ARMADA_MSYS
|
||||
#define NAND_ECC_DIVCKL_RATIO_OFFS 6
|
||||
#define NAND_ECC_DIVCKL_RATIO_MASK (0xF << NAND_ECC_DIVCKL_RATIO_OFFS)
|
||||
#else
|
||||
#define NAND_ECC_DIVCKL_RATIO_OFFS 8
|
||||
#define NAND_ECC_DIVCKL_RATIO_MASK (0x3F << NAND_ECC_DIVCKL_RATIO_OFFS)
|
||||
#endif
|
||||
|
||||
#define SDRAM_MAX_CS 4
|
||||
#define SDRAM_ADDR_MASK 0xFF000000
|
||||
|
Loading…
Reference in New Issue
Block a user