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