diff options
Diffstat (limited to 'arch/arm/include/asm/arch-rockchip/sdram_rk3036.h')
-rw-r--r-- | arch/arm/include/asm/arch-rockchip/sdram_rk3036.h | 340 |
1 files changed, 0 insertions, 340 deletions
diff --git a/arch/arm/include/asm/arch-rockchip/sdram_rk3036.h b/arch/arm/include/asm/arch-rockchip/sdram_rk3036.h deleted file mode 100644 index 5de3220..0000000 --- a/arch/arm/include/asm/arch-rockchip/sdram_rk3036.h +++ /dev/null @@ -1,340 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0+ */ -/* - * (C) Copyright 2015 Rockchip Electronics Co., Ltd - */ -#ifndef _ASM_ARCH_SDRAM_RK3036_H -#define _ASM_ARCH_SDRAM_RK3036_H - -#include <common.h> - -struct rk3036_ddr_pctl { - u32 scfg; - u32 sctl; - u32 stat; - u32 intrstat; - u32 reserved0[12]; - u32 mcmd; - u32 powctl; - u32 powstat; - u32 cmdtstat; - u32 cmdtstaten; - u32 reserved1[3]; - u32 mrrcfg0; - u32 mrrstat0; - u32 mrrstat1; - u32 reserved2[4]; - u32 mcfg1; - u32 mcfg; - u32 ppcfg; - u32 mstat; - u32 lpddr2zqcfg; - u32 reserved3; - u32 dtupdes; - u32 dtuna; - u32 dtune; - u32 dtuprd0; - u32 dtuprd1; - u32 dtuprd2; - u32 dtuprd3; - u32 dtuawdt; - u32 reserved4[3]; - u32 togcnt1u; - u32 tinit; - u32 trsth; - u32 togcnt100n; - u32 trefi; - u32 tmrd; - u32 trfc; - u32 trp; - u32 trtw; - u32 tal; - u32 tcl; - u32 tcwl; - u32 tras; - u32 trc; - u32 trcd; - u32 trrd; - u32 trtp; - u32 twr; - u32 twtr; - u32 texsr; - u32 txp; - u32 txpdll; - u32 tzqcs; - u32 tzqcsi; - u32 tdqs; - u32 tcksre; - u32 tcksrx; - u32 tcke; - u32 tmod; - u32 trstl; - u32 tzqcl; - u32 tmrr; - u32 tckesr; - u32 reserved5[47]; - u32 dtuwactl; - u32 dturactl; - u32 dtucfg; - u32 dtuectl; - u32 dtuwd0; - u32 dtuwd1; - u32 dtuwd2; - u32 dtuwd3; - u32 dtuwdm; - u32 dturd0; - u32 dturd1; - u32 dturd2; - u32 dturd3; - u32 dtulfsrwd; - u32 dtulfsrrd; - u32 dtueaf; - u32 dfitctrldelay; - u32 dfiodtcfg; - u32 dfiodtcfg1; - u32 dfiodtrankmap; - u32 dfitphywrdata; - u32 dfitphywrlat; - u32 reserved7[2]; - u32 dfitrddataen; - u32 dfitphyrdlat; - u32 reserved8[2]; - u32 dfitphyupdtype0; - u32 dfitphyupdtype1; - u32 dfitphyupdtype2; - u32 dfitphyupdtype3; - u32 dfitctrlupdmin; - u32 dfitctrlupdmax; - u32 dfitctrlupddly; - u32 reserved9; - u32 dfiupdcfg; - u32 dfitrefmski; - u32 dfitctrlupdi; - u32 reserved10[4]; - u32 dfitrcfg0; - u32 dfitrstat0; - u32 dfitrwrlvlen; - u32 dfitrrdlvlen; - u32 dfitrrdlvlgateen; - u32 dfiststat0; - u32 dfistcfg0; - u32 dfistcfg1; - u32 reserved11; - u32 dfitdramclken; - u32 dfitdramclkdis; - u32 dfistcfg2; - u32 dfistparclr; - u32 dfistparlog; - u32 reserved12[3]; - u32 dfilpcfg0; - u32 reserved13[3]; - u32 dfitrwrlvlresp0; - u32 dfitrwrlvlresp1; - u32 dfitrwrlvlresp2; - u32 dfitrrdlvlresp0; - u32 dfitrrdlvlresp1; - u32 dfitrrdlvlresp2; - u32 dfitrwrlvldelay0; - u32 dfitrwrlvldelay1; - u32 dfitrwrlvldelay2; - u32 dfitrrdlvldelay0; - u32 dfitrrdlvldelay1; - u32 dfitrrdlvldelay2; - u32 dfitrrdlvlgatedelay0; - u32 dfitrrdlvlgatedelay1; - u32 dfitrrdlvlgatedelay2; - u32 dfitrcmd; - u32 reserved14[46]; - u32 ipvr; - u32 iptr; -}; -check_member(rk3036_ddr_pctl, iptr, 0x03fc); - -struct rk3036_ddr_phy { - u32 ddrphy_reg1; - u32 ddrphy_reg3; - u32 ddrphy_reg2; - u32 reserve[11]; - u32 ddrphy_reg4a; - u32 ddrphy_reg4b; - u32 reserve1[5]; - u32 ddrphy_reg16; - u32 reserve2; - u32 ddrphy_reg18; - u32 ddrphy_reg19; - u32 reserve3; - u32 ddrphy_reg21; - u32 reserve4; - u32 ddrphy_reg22; - u32 reserve5[3]; - u32 ddrphy_reg25; - u32 ddrphy_reg26; - u32 ddrphy_reg27; - u32 ddrphy_reg28; - u32 reserve6[17]; - u32 ddrphy_reg6; - u32 ddrphy_reg7; - u32 reserve7; - u32 ddrphy_reg8; - u32 ddrphy_reg0e4; - u32 reserve8[11]; - u32 ddrphy_reg9; - u32 ddrphy_reg10; - u32 reserve9; - u32 ddrphy_reg11; - u32 ddrphy_reg124; - u32 reserve10[38]; - u32 ddrphy_reg29; - u32 reserve11[40]; - u32 ddrphy_reg264; - u32 reserve12[18]; - u32 ddrphy_reg2a; - u32 reserve13[4]; - u32 ddrphy_reg30; - u32 ddrphy_reg31; - u32 ddrphy_reg32; - u32 ddrphy_reg33; - u32 ddrphy_reg34; - u32 ddrphy_reg35; - u32 ddrphy_reg36; - u32 ddrphy_reg37; - u32 ddrphy_reg38; - u32 ddrphy_reg39; - u32 ddrphy_reg40; - u32 ddrphy_reg41; - u32 ddrphy_reg42; - u32 ddrphy_reg43; - u32 ddrphy_reg44; - u32 ddrphy_reg45; - u32 ddrphy_reg46; - u32 ddrphy_reg47; - u32 ddrphy_reg48; - u32 ddrphy_reg49; - u32 ddrphy_reg50; - u32 ddrphy_reg51; - u32 ddrphy_reg52; - u32 ddrphy_reg53; - u32 reserve14; - u32 ddrphy_reg54; - u32 ddrphy_reg55; - u32 ddrphy_reg56; - u32 ddrphy_reg57; - u32 ddrphy_reg58; - u32 ddrphy_reg59; - u32 ddrphy_reg5a; - u32 ddrphy_reg5b; - u32 ddrphy_reg5c; - u32 ddrphy_reg5d; - u32 ddrphy_reg5e; - u32 reserve15[28]; - u32 ddrphy_reg5f; - u32 reserve16[6]; - u32 ddrphy_reg60; - u32 ddrphy_reg61; - u32 ddrphy_reg62; -}; -check_member(rk3036_ddr_phy, ddrphy_reg62, 0x03e8); - -struct rk3036_pctl_timing { - u32 togcnt1u; - u32 tinit; - u32 trsth; - u32 togcnt100n; - u32 trefi; - u32 tmrd; - u32 trfc; - u32 trp; - u32 trtw; - u32 tal; - u32 tcl; - u32 tcwl; - u32 tras; - u32 trc; - u32 trcd; - u32 trrd; - u32 trtp; - u32 twr; - u32 twtr; - u32 texsr; - u32 txp; - u32 txpdll; - u32 tzqcs; - u32 tzqcsi; - u32 tdqs; - u32 tcksre; - u32 tcksrx; - u32 tcke; - u32 tmod; - u32 trstl; - u32 tzqcl; - u32 tmrr; - u32 tckesr; - u32 tdpd; -}; - -struct rk3036_phy_timing { - u32 mr[4]; - u32 bl; - u32 cl_al; -}; - -typedef union { - u32 noc_timing; - struct { - u32 acttoact:6; - u32 rdtomiss:6; - u32 wrtomiss:6; - u32 burstlen:3; - u32 rdtowr:5; - u32 wrtord:5; - u32 bwratio:1; - }; -} rk3036_noc_timing; - -struct rk3036_ddr_timing { - u32 freq; - struct rk3036_pctl_timing pctl_timing; - struct rk3036_phy_timing phy_timing; - rk3036_noc_timing noc_timing; -}; - -struct rk3036_service_sys { - u32 id_coreid; - u32 id_revisionid; - u32 ddrconf; - u32 ddrtiming; - u32 ddrmode; - u32 readlatency; -}; - -struct rk3036_ddr_config { - /* - * 000: lpddr - * 001: ddr - * 010: ddr2 - * 011: ddr3 - * 100: lpddr2-s2 - * 101: lpddr2-s4 - * 110: lpddr3 - */ - u32 ddr_type; - u32 rank; - u32 cs0_row; - u32 cs1_row; - - /* 2: 4bank, 3: 8bank */ - u32 bank; - u32 col; - - /* bw(0: 8bit, 1: 16bit, 2: 32bit) */ - u32 bw; -}; - -/* rk3036 sdram initial */ -void sdram_init(void); - -/* get ddr die config, implement in specific board */ -void get_ddr_config(struct rk3036_ddr_config *config); - -/* get ddr size on board */ -size_t sdram_size(void); -#endif |