1 /* 2 * ti81xx.h 3 * 4 * Copyright (C) 2013, Adeneo Embedded <www.adeneo-embedded.com> 5 * Antoine Tenart, <atenart@adeneo-embedded.com> 6 * 7 * This file is released under the terms of GPL v2 and any later version. 8 * See the file COPYING in the root directory of the source tree for details. 9 */ 10 11 #ifndef _CLOCK_TI81XX_H_ 12 #define _CLOCK_TI81XX_H_ 13 14 #define PRCM_MOD_EN 0x2 15 16 #define CM_DEFAULT_BASE (PRCM_BASE + 0x0500) 17 #define CM_ALWON_BASE (PRCM_BASE + 0x1400) 18 19 struct cm_def { 20 unsigned int resv0[2]; 21 unsigned int l3fastclkstctrl; 22 unsigned int resv1[1]; 23 unsigned int pciclkstctrl; 24 unsigned int resv2[1]; 25 unsigned int ducaticlkstctrl; 26 unsigned int resv3[1]; 27 unsigned int emif0clkctrl; 28 unsigned int emif1clkctrl; 29 unsigned int dmmclkctrl; 30 unsigned int fwclkctrl; 31 unsigned int resv4[10]; 32 unsigned int usbclkctrl; 33 unsigned int resv5[1]; 34 unsigned int sataclkctrl; 35 unsigned int resv6[4]; 36 unsigned int ducaticlkctrl; 37 unsigned int pciclkctrl; 38 }; 39 40 struct cm_alwon { 41 unsigned int l3slowclkstctrl; 42 unsigned int ethclkstctrl; 43 unsigned int l3medclkstctrl; 44 unsigned int mmu_clkstctrl; 45 unsigned int mmucfg_clkstctrl; 46 unsigned int ocmc0clkstctrl; 47 #if defined(CONFIG_TI814X) 48 unsigned int vcpclkstctrl; 49 #elif defined(CONFIG_TI816X) 50 unsigned int ocmc1clkstctrl; 51 #endif 52 unsigned int mpuclkstctrl; 53 unsigned int sysclk4clkstctrl; 54 unsigned int sysclk5clkstctrl; 55 unsigned int sysclk6clkstctrl; 56 unsigned int rtcclkstctrl; 57 unsigned int l3fastclkstctrl; 58 unsigned int resv0[67]; 59 unsigned int mcasp0clkctrl; 60 unsigned int mcasp1clkctrl; 61 unsigned int mcasp2clkctrl; 62 unsigned int mcbspclkctrl; 63 unsigned int uart0clkctrl; 64 unsigned int uart1clkctrl; 65 unsigned int uart2clkctrl; 66 unsigned int gpio0clkctrl; 67 unsigned int gpio1clkctrl; 68 unsigned int i2c0clkctrl; 69 unsigned int i2c1clkctrl; 70 #if defined(CONFIG_TI814X) 71 unsigned int mcasp345clkctrl; 72 unsigned int atlclkctrl; 73 unsigned int mlbclkctrl; 74 unsigned int pataclkctrl; 75 unsigned int resv1[1]; 76 unsigned int uart3clkctrl; 77 unsigned int uart4clkctrl; 78 unsigned int uart5clkctrl; 79 #elif defined(CONFIG_TI816X) 80 unsigned int resv1[1]; 81 unsigned int timer1clkctrl; 82 unsigned int timer2clkctrl; 83 unsigned int timer3clkctrl; 84 unsigned int timer4clkctrl; 85 unsigned int timer5clkctrl; 86 unsigned int timer6clkctrl; 87 unsigned int timer7clkctrl; 88 #endif 89 unsigned int wdtimerclkctrl; 90 unsigned int spiclkctrl; 91 unsigned int mailboxclkctrl; 92 unsigned int spinboxclkctrl; 93 unsigned int mmudataclkctrl; 94 unsigned int resv2[2]; 95 unsigned int mmucfgclkctrl; 96 #if defined(CONFIG_TI814X) 97 unsigned int resv3[2]; 98 #elif defined(CONFIG_TI816X) 99 unsigned int resv3[1]; 100 unsigned int sdioclkctrl; 101 #endif 102 unsigned int ocmc0clkctrl; 103 #if defined(CONFIG_TI814X) 104 unsigned int vcpclkctrl; 105 #elif defined(CONFIG_TI816X) 106 unsigned int ocmc1clkctrl; 107 #endif 108 unsigned int resv4[2]; 109 unsigned int controlclkctrl; 110 unsigned int resv5[2]; 111 unsigned int gpmcclkctrl; 112 unsigned int ethernet0clkctrl; 113 unsigned int ethernet1clkctrl; 114 unsigned int mpuclkctrl; 115 #if defined(CONFIG_TI814X) 116 unsigned int debugssclkctrl; 117 #elif defined(CONFIG_TI816X) 118 unsigned int resv6[1]; 119 #endif 120 unsigned int l3clkctrl; 121 unsigned int l4hsclkctrl; 122 unsigned int l4lsclkctrl; 123 unsigned int rtcclkctrl; 124 unsigned int tpccclkctrl; 125 unsigned int tptc0clkctrl; 126 unsigned int tptc1clkctrl; 127 unsigned int tptc2clkctrl; 128 unsigned int tptc3clkctrl; 129 #if defined(CONFIG_TI814X) 130 unsigned int resv6[4]; 131 unsigned int dcan01clkctrl; 132 unsigned int mmchs0clkctrl; 133 unsigned int mmchs1clkctrl; 134 unsigned int mmchs2clkctrl; 135 unsigned int custefuseclkctrl; 136 #elif defined(CONFIG_TI816X) 137 unsigned int sr0clkctrl; 138 unsigned int sr1clkctrl; 139 #endif 140 }; 141 142 #endif /* _CLOCK_TI81XX_H_ */ 143