1 1.2 skrll /* $NetBSD: cycv_reg.h,v 1.2 2018/10/18 09:01:52 skrll Exp $ */ 2 1.1 aymeric #ifndef _ARM_ALTERA_CYCV_REG_H 3 1.1 aymeric #define _ARM_ALTERA_CYCV_REG_H 4 1.1 aymeric 5 1.2 skrll #define CYCV_SDRAM_VBASE 0xf0000000 6 1.1 aymeric #define CYCV_SDRAM_BASE 0x0 7 1.2 skrll #define CYCV_SDRAM_SIZE L1_S_SIZE 8 1.1 aymeric 9 1.1 aymeric #define CYCV_PERIPHERAL_BASE 0xFC000000 10 1.1 aymeric #define CYCV_PERIPHERAL_SIZE (64 * 1024 * 1024) 11 1.1 aymeric 12 1.1 aymeric #define CYCV_PERIPHERAL_VBASE CYCV_PERIPHERAL_BASE 13 1.1 aymeric 14 1.1 aymeric /* Clock manager */ 15 1.1 aymeric 16 1.1 aymeric #define CYCV_CLKMGR_BASE 0xFFD04000 17 1.1 aymeric #define CYCV_CLKMGR_SIZE 0x1000 18 1.1 aymeric 19 1.1 aymeric #define CYCV_CLKMGR_CTRL 0x00 20 1.1 aymeric #define CYCV_CLKMGR_CTRL_SAFEMODE __BIT(0) 21 1.1 aymeric #define CYCV_CLKMGR_CTRL_ENSFMDWR __BIT(2) 22 1.1 aymeric 23 1.1 aymeric #define CYCV_CLKMGR_BYPASS 0x04 24 1.1 aymeric #define CYCV_CLKMGR_BYPASS_MAINPLL __BIT(0) 25 1.1 aymeric #define CYCV_CLKMGR_BYPASS_SDRPLL __BIT(1) 26 1.1 aymeric #define CYCV_CLKMGR_BYPASS_SDRPLLSRC __BIT(2) 27 1.1 aymeric #define CYCV_CLKMGR_BYPASS_PERPLL __BIT(3) 28 1.1 aymeric #define CYCV_CLKMGR_BYPASS_PERPLLSRC __BIT(4) 29 1.1 aymeric 30 1.1 aymeric #define CYCV_CLKMGR_INTER 0x08 31 1.1 aymeric #define CYCV_CLKMGR_INT_MAINPLLACHIEVED __BIT(0) 32 1.1 aymeric #define CYCV_CLKMGR_INT_PERPLLACHIEVED __BIT(1) 33 1.1 aymeric #define CYCV_CLKMGR_INT_SDRPLLACHIEVED __BIT(2) 34 1.1 aymeric #define CYCV_CLKMGR_INT_MAINPLLLOST __BIT(3) 35 1.1 aymeric #define CYCV_CLKMGR_INT_PERPLLLOST __BIT(4) 36 1.1 aymeric #define CYCV_CLKMGR_INT_SDRPLLLOST __BIT(5) 37 1.1 aymeric #define CYCV_CLKMGR_INTER_MAINPLLLOCKED __BIT(6) 38 1.1 aymeric #define CYCV_CLKMGR_INTER_PERPLLLOCKED __BIT(7) 39 1.1 aymeric #define CYCV_CLKMGR_INTER_SDRPLLLOCKED __BIT(8) 40 1.1 aymeric 41 1.1 aymeric #define CYCV_CLKMGR_INTREN 0x0C 42 1.1 aymeric /* See CYCV_CLKMGR_INT_* above */ 43 1.1 aymeric 44 1.1 aymeric #define CYCV_CLKMGR_DBCTRL 0x10 45 1.1 aymeric #define CYCV_CLKMGR_STAT 0x14 46 1.1 aymeric 47 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_VCO 0x40 48 1.1 aymeric #define CYCV_CLKMGR_PLL_VCO_NUMER __BITS(3, 15) 49 1.1 aymeric #define CYCV_CLKMGR_PLL_VCO_DENOM __BITS(16, 21) 50 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_MISC 0x44 51 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_MPUCLK 0x48 52 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_MPUCLK_CNT __BITS(0, 8) 53 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_MAINCLK 0x4C 54 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_MAINCLK_CNT __BITS(0, 8) 55 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_DBGATCLK 0x50 56 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_MAINQSPICLK 0x54 57 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_MAINNANDSDMMCCLK 0x58 58 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_CFGS2FUSER0CLK 0x5C 59 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_EN 0x60 60 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_MAINDIV 0x64 61 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_MAINDIV_L4SP __BITS(7, 9) 62 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_DBGDIV 0x68 63 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_TRACEDIV 0x6C 64 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_L4SRC 0x70 65 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_L4SRC_L4SP __BIT(1) 66 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_L4SRC_L4MP __BIT(0) 67 1.1 aymeric #define CYCV_CLKMGR_MAIN_PLL_STAT 0x74 68 1.1 aymeric 69 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_VCO 0x80 70 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_MISC 0x84 71 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_EMAC0CLK 0x88 72 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_EMAC1CLK 0x8C 73 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_PERQSPICLK 0x90 74 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_PERNANDSDMMCCLK 0x94 75 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_PERBASECLK 0x98 76 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_PERBASECLK_CNT __BITS(0, 8) 77 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_H2FUSER1CLK 0x9C 78 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_EN 0xA0 79 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_DIV 0xA4 80 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_GPIODIV 0xA8 81 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_SRC 0xAC 82 1.1 aymeric #define CYCV_CLKMGR_PERI_PLL_STAT 0xB0 83 1.1 aymeric 84 1.1 aymeric #define CYCV_CLKMGR_SDRAM_PLL_VCO 0xC0 85 1.1 aymeric #define CYCV_CLKMGR_SDRAM_PLL_CTRL 0xC4 86 1.1 aymeric #define CYCV_CLKMGR_SDRAM_PLL_DDRDQSCLK 0xC8 87 1.1 aymeric #define CYCV_CLKMGR_SDRAM_PLL_DDR2XDQSCLK 0xCC 88 1.1 aymeric #define CYCV_CLKMGR_SDRAM_PLL_DDRDQCLK 0xD0 89 1.1 aymeric #define CYCV_CLKMGR_SDRAM_PLL_S2FUSER2CLK 0xD4 90 1.1 aymeric #define CYCV_CLKMGR_SDRAM_PLL_EN 0xD8 91 1.1 aymeric #define CYCV_CLKMGR_SDRAM_PLL_STAT 0xDC 92 1.1 aymeric 93 1.1 aymeric /* Reset manager */ 94 1.1 aymeric 95 1.1 aymeric #define CYCV_RSTMGR_BASE 0xFFD05000 96 1.1 aymeric #define CYCV_RSTMGR_SIZE 0x24 97 1.1 aymeric 98 1.1 aymeric #define CYCV_RSTMGR_STAT 0x00 99 1.1 aymeric #define CYCV_RSTMGR_CTRL 0x04 100 1.1 aymeric #define CYCV_RSTMGR_CTRL_SWCOLDRSTREQ __BIT(0) 101 1.1 aymeric #define CYCV_RSTMGR_COUNTS 0x08 102 1.1 aymeric #define CYCV_RSTMGR_MPUMODRST 0x10 103 1.1 aymeric #define CYCV_RSTMGR_MPUMODRST_CPU1 __BIT(1) 104 1.1 aymeric #define CYCV_RSTMGR_PERMODRST 0x14 105 1.1 aymeric #define CYCV_RSTMGR_PER2MODRST 0x18 106 1.1 aymeric #define CYCV_RSTMGR_BRGMODRST 0x1C 107 1.1 aymeric #define CYCV_RSTMGR_MISCMODRST 0x20 108 1.1 aymeric 109 1.1 aymeric /* Snoop Control Unit */ 110 1.1 aymeric 111 1.1 aymeric #define CYCV_SCU_BASE 0xFFFEC000 112 1.1 aymeric #define CYCV_SCU_SIZE 0x100 113 1.1 aymeric 114 1.1 aymeric /* Level 2 Cache */ 115 1.1 aymeric 116 1.1 aymeric #define CYCV_L2CACHE_BASE 0xFFFEF000 117 1.1 aymeric #define CYCV_L2CACHE_SIZE 0x1000 118 1.1 aymeric 119 1.1 aymeric #endif /* _ARM_ALTERA_CYCV_REG_H */ 120