ipq6018: Add SPI clock settings

Currently SPI clocks are enabled by default in SBL.
Added the clock settings in uboot to remove SBL dependency.

Change-Id: I78340daeb267edf4f4bb579fba991699d1bccb3d
Signed-off-by: anusha <anusharao@codeaurora.org>
This commit is contained in:
anusha 2019-11-06 17:46:43 +05:30 committed by Gerrit - the friendly Code Review server
parent a0f2464c86
commit 8b0e6488a2
2 changed files with 25 additions and 0 deletions

View file

@ -324,6 +324,23 @@ int board_mmc_init(bd_t *bis)
}
#endif
static void spi_clock_init(void)
{
int cfg;
/* Configure qup1_spi_apps_clk_src */
cfg = (GCC_BLSP1_QUP1_SPI_APPS_CFG_RCGR_SRC_SEL |
GCC_BLSP1_QUP1_SPI_APPS_CFG_RCGR_SRC_DIV);
writel(cfg, GCC_BLSP1_QUP1_SPI_APPS_CFG_RCGR);
writel(CMD_UPDATE, GCC_BLSP1_QUP1_SPI_APPS_CMD_RCGR);
mdelay(100);
writel(ROOT_EN, GCC_BLSP1_QUP1_SPI_APPS_CMD_RCGR);
/* Configure CBCR */
writel(CLK_ENABLE, GCC_BLSP1_QUP1_SPI_APPS_CBCR);
}
void board_nand_init(void)
{
#ifdef CONFIG_QCA_SPI
@ -333,6 +350,7 @@ void board_nand_init(void)
qpic_nand_init();
#ifdef CONFIG_QCA_SPI
spi_clock_init();
gpio_node = fdt_path_offset(gd->fdt_blob, "/spi/spi_gpio");
if (gpio_node >= 0) {
qca_gpio_init(gpio_node);

View file

@ -264,6 +264,13 @@
#define GCC_PCIE0_PHY_PIPE_MISC_SRC_SEL (0x1 << 8)
#define GCC_PCIE0_PHY_PIPE_MISC 0x187501C
#define GCC_BLSP1_QUP1_SPI_APPS_CFG_RCGR 0x1802028
#define GCC_BLSP1_QUP1_SPI_APPS_CFG_RCGR_SRC_SEL (1 << 8)
#define GCC_BLSP1_QUP1_SPI_APPS_CFG_RCGR_SRC_DIV (0x1F << 0)
#define GCC_BLSP1_QUP1_SPI_APPS_CMD_RCGR 0x1802024
#define GCC_BLSP1_QUP1_SPI_APPS_CBCR 0x1802004
#define set_mdelay_clearbits_le32(addr, value, delay) \
setbits_le32(addr, value); \
mdelay(delay); \