zynq_slcr_lock();
}
-u32 zynq_slcr_get_lqspi_clk_ctrl(void)
-{
- /* Get the lqspi_clkk_ctrl register value */
- return readl(&slcr_base->lqspi_clk_ctrl);
-}
-
void zynq_slcr_devcfg_disable(void)
{
zynq_slcr_unlock();
extern void zynq_slcr_gem_clk_setup(u32 gem_id, u32 rclk, u32 clk);
extern void zynq_slcr_devcfg_disable(void);
extern void zynq_slcr_devcfg_enable(void);
-extern u32 zynq_slcr_get_lqspi_clk_ctrl(void);
extern u32 zynq_slcr_get_boot_mode(void);
extern u32 zynq_slcr_get_idcode(void);
extern int zynq_slcr_get_mio_pin_status(const char *periph);
#include <asm/io.h>
#include <asm/arch/hardware.h>
#include <asm/arch/sys_proto.h>
+#include <asm/arch/clk.h>
/* QSPI Transmit Data Register */
#define ZYNQ_QSPI_TXD_00_00_OFFSET 0x1C /* Transmit 4-byte inst, WO */
unsigned int max_hz, unsigned int mode)
{
int is_dual;
- unsigned long lqspi_clk_ctrl_reg;
unsigned long lqspi_frequency;
struct zynq_qspi_slave *qspi;
return NULL;
}
- /*
- * Read the lqspi_clk_ctrl_reg register and calculate the frequency.
- * If failure revert to 200Mhz
- */
- lqspi_clk_ctrl_reg = zynq_slcr_get_lqspi_clk_ctrl();
- lqspi_frequency = (CONFIG_CPU_FREQ_HZ / ((lqspi_clk_ctrl_reg & 0x3F00)>>
- 8));
+ lqspi_frequency = zynq_clk_get_rate(lqspi_clk);
if (!lqspi_frequency) {
debug("Defaulting to 200000000 Hz qspi clk");
qspi->qspi.master.input_clk_hz = 200000000;
qspi->qspi.bits_per_word = 32;
zynq_qspi_setup_transfer(&qspi->qspi, NULL);
- debug("%s: lqspi_clk_ctrl_reg: %ld CONFIG_CPU_FREQ_HZ %d\n",
- __func__, lqspi_clk_ctrl_reg, CONFIG_CPU_FREQ_HZ);
-
return &qspi->slave;
}