blob: 895ec2cee64c716c0edb6ef18ce759566fec1eaf [file] [log] [blame]
/*
* Copyright 2017 NXP
*
* SPDX-License-Identifier: GPL-2.0+
*/
enum fw_type {
FW_1D_IMAGE,
FW_2D_IMAGE,
};
#ifdef CONFIG_ENABLE_DDR_TRAINING_DEBUG
#define ddr_printf(args...) printf(args)
#else
#define ddr_printf(args...)
#endif
void ddr_init_micron_3gb(void);
void lpddr4_800M_cfg_phy(void);
void ddr_init_micron_1gb(void);
void ddr_init_hynix_1gb_evt(void);
void ddr_init_hynix_1gb_dvt(void);
void ddr_load_train_code(enum fw_type type);
void wait_ddrphy_training_complete(void);
static inline void reg32_write(unsigned long addr, u32 val)
{
writel(val, addr);
}
static inline uint32_t reg32_read(unsigned long addr)
{
return readl(addr);
}
static void inline dwc_ddrphy_apb_wr(unsigned long addr, u32 val)
{
writel(val, addr);
}
static inline void reg32setbit(unsigned long addr, u32 bit)
{
setbits_le32(addr, (1 << bit));
}