| /* |
| * Copyright 2018 NXP |
| * |
| * SPDX-License-Identifier: GPL-2.0+ |
| */ |
| |
| #ifndef DDR3_DEFINE_H |
| #define DDR3_DEFINE_H |
| |
| #include "../ddr.h" |
| |
| #define RUN_ON_SILICON |
| |
| #ifdef DDR3_1600MTS_SWFFC_RET |
| #define DDR3_SW_FFC |
| #endif |
| |
| #define SAVE_DDRPHY_TRAIN_ADDR 0x180000 |
| #define DDR_CSD1_BASE_ADDR 0x40000000 |
| #define DDR_CSD2_BASE_ADDR 0x80000000 |
| |
| #define ANAMIX_PLL_BASE_ADDR 0x30360000 |
| #define HW_DRAM_PLL_CFG0_ADDR (ANAMIX_PLL_BASE_ADDR + 0x60) |
| #define HW_DRAM_PLL_CFG1_ADDR (ANAMIX_PLL_BASE_ADDR + 0x64) |
| #define HW_DRAM_PLL_CFG2_ADDR (ANAMIX_PLL_BASE_ADDR + 0x68) |
| #define GPC_PU_PWRHSK 0x303A01FC |
| #define GPC_TOP_CONFIG_OFFSET 0x0000 |
| #define AIPS1_ARB_BASE_ADDR 0x30000000 |
| #define AIPS_TZ1_BASE_ADDR AIPS1_ARB_BASE_ADDR |
| #define AIPS1_OFF_BASE_ADDR (AIPS_TZ1_BASE_ADDR + 0x200000) |
| #define CCM_IPS_BASE_ADDR (AIPS1_OFF_BASE_ADDR + 0x180000) |
| #define CCM_SRC_CTRL_OFFSET (CCM_IPS_BASE_ADDR + 0x800) |
| #define CCM_SRC_CTRL(n) (CCM_SRC_CTRL_OFFSET + 0x10 * n) |
| |
| #define dwc_ddrphy_apb_wr(addr, data) reg32_write(IP2APB_DDRPHY_IPS_BASE_ADDR(0) + 4 * (addr), data) |
| #define reg32clrbit(addr, bitpos) reg32_write((addr), (reg32_read((addr)) & (0xFFFFFFFF ^ (1 << (bitpos))))) |
| |
| void restore_1d2d_trained_csr_ddr3_p012(unsigned int addr); |
| void save_1d2d_trained_csr_ddr3_p012(unsigned int addr); |
| void ddr3_phyinit_train_sw_ffc(unsigned int after_retention); |
| |
| #endif |