Home | History | Annotate | Download | only in arch-am33xx
      1 /*
      2  * ti81xx.h
      3  *
      4  * Copyright (C) 2013, Adeneo Embedded <www.adeneo-embedded.com>
      5  * Antoine Tenart, <atenart (at) 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