1/* 2 * Copyright (c) 2013 ETH Zurich. All rights reserved. 3 * 4 * This file is distributed under the terms in the attached LICENSE file. 5 * If you do not find this file, copies can be found by writing to: 6 * ETH Zurich D-INFK, CAB F.78, Universitaetstrasse 6, CH-8092 Zurich, 7 * Attn: Systems Group. 8 */ 9 10/* 11 * omap44xx_cam_cm2.dev 12 * 13 * DESCRIPTION: 14 * 15 * NOTE: This file has been automatically generated based on the 16 * XML files extracted from the TI RDT v1.0.0.4p Tool. 17 * Download from here: http://www.ti.com/product/omap4460 18 * This means that the file might not be optimal in terms of naming 19 * conventions for constants and registers (duplicated 20 * namespaces in register and device name etc.). 21 * Also, because of the underlying structure from the original XML 22 * it's possible that some constants appear multiple times (if they 23 * have slightly different descriptions for example). 24 * 25 * You want to clean that up before using the files for the first time! 26 */ 27 28device omap44xx_cam_cm2 msbfirst ( addr base ) "" { 29 30 31 constants clkactivity_fdif_fclk_status width(1) "" { 32 CLKACTIVITY_FDIF_FCLK_0_r = 0 "Corresponding clock is definitely gated"; 33 CLKACTIVITY_FDIF_FCLK_1_r = 1 "Corresponding clock is running or gating/ungating transition is ongoing"; 34 }; 35 36 constants clktrctrl_status width(2) "" { 37 CLKTRCTRL_0 = 0 "NO_SLEEP: Sleep transition cannot be initiated. Wakeup transition may however occur."; 38 CLKTRCTRL_1 = 1 "SW_SLEEP: Start a software forced sleep transition on the domain."; 39 CLKTRCTRL_2 = 2 "SW_WKUP: Start a software forced wake-up transition on the domain."; 40 CLKTRCTRL_3 = 3 "HW_AUTO: Automatic transition is enabled. Sleep and wakeup transition are based upon hardware conditions."; 41 }; 42 43 register cm_cam_clkstctrl addr(base, 0x0) "This register enables the domain power state transition. It controls the hardware supervised domain power state transition between ON-ACTIVE and ON-INACTIVE states. It also holds 1 status bit per clock input of the domain." { 44 _ 21 mbz; 45 clkactivity_fdif_fclk 1 ro type(clkactivity_fdif_fclk_status) "This field indicates the state of the FDIF_FCLK clock input of the domain. [warm reset insensitive]"; 46 clkactivity_cam_phy_ctrl_clk 1 ro type(clkactivity_fdif_fclk_status) "This field indicates the state of the CAM_PHY_CTRL_CLK clock input of the domain. [warm reset insensitive]"; 47 clkactivity_iss_clk 1 ro type(clkactivity_fdif_fclk_status) "This field indicates the state of the ISS_CLK clock input of the domain. [warm reset insensitive]"; 48 _ 6 mbz; 49 clktrctrl 2 rw type(clktrctrl_status) "Controls the clock state transition of the CAM clock domain."; 50 }; 51 52 constants l3_2_statdep_status width(1) "" { 53 L3_2_STATDEP_1_r = 1 "Dependency is enabled"; 54 }; 55 56 constants l3_1_statdep_status width(1) "" { 57 L3_1_STATDEP_0 = 0 "Dependency is disabled"; 58 L3_1_STATDEP_1 = 1 "Dependency is enabled"; 59 }; 60 61 register cm_cam_staticdep addr(base, 0x4) "This register controls the static domain depedencies from CAM domain towards 'target' domains. It is relevant only for domain having system initiator(s)." { 62 _ 25 mbz; 63 l3_2_statdep 1 ro type(l3_2_statdep_status) "Static dependency towards L3_2 clock domain"; 64 l3_1_statdep 1 rw type(l3_1_statdep_status) "Static dependency towards L3_1 clock domain"; 65 memif_statdep 1 rw type(l3_1_statdep_status) "Static dependency towards MEMIF clock domain"; 66 _ 1 mbz; 67 ivahd_statdep 1 rw type(l3_1_statdep_status) "Static dependency towards IVAHD clock domain"; 68 _ 2 mbz; 69 }; 70 71 register cm_cam_dynamicdep addr(base, 0x8) "This register controls the dynamic domain depedencies from CAM domain towards 'target' domains. It is relevant only for domain having INTRCONN master port(s)." { 72 _ 25 mbz; 73 l3_2_dyndep 1 ro type(l3_1_statdep_status) "Dynamic dependency towards L3_2 clock domain"; 74 _ 6 mbz; 75 }; 76 77 constants stbyst_status width(1) "" { 78 STBYST_0_r = 0 "Module is functional (not in standby)"; 79 STBYST_1_r = 1 "Module is in standby"; 80 }; 81 82 constants idlest_status width(2) "" { 83 IDLEST_0_r = 0 "Module is fully functional, including INTRCONN"; 84 IDLEST_1_r = 1 "Module is performing transition: wakeup, or sleep, or sleep abortion"; 85 IDLEST_2_r = 2 "Module is in idle mode (only INTRCONN part). It is functional if using separate functional clock"; 86 IDLEST_3_r = 3 "Module is disabled and cannot be accessed"; 87 }; 88 89 constants optfclken_ctrlclk_status width(1) "" { 90 OPTFCLKEN_CTRLCLK_0 = 0 "Optional functional clock is disabled"; 91 OPTFCLKEN_CTRLCLK_1 = 1 "Optional functional clock is enabled"; 92 }; 93 94 constants modulemode_status width(2) "" { 95 MODULEMODE_0 = 0 "Module is disable by software. Any INTRCONN access to module results in an error, except if resulting from a module wakeup (asynchronous wakeup)."; 96 MODULEMODE_1_r = 1 "Reserved"; 97 MODULEMODE_2 = 2 "Module is explicitly enabled. Interface clock (if not used for functions) may be gated according to the clock domain state. Functional clocks are guarantied to stay present. As long as in this configuration, power domain sleep transition cannot happen."; 98 MODULEMODE_3_r = 3 "Reserved"; 99 }; 100 101 register cm_cam_iss_clkctrl addr(base, 0x20) "This register manages the ISS clocks." { 102 _ 13 mbz; 103 stbyst 1 ro type(stbyst_status) "Module standby status. [warm reset insensitive]"; 104 idlest 2 ro type(idlest_status) "Module idle status. [warm reset insensitive]"; 105 _ 7 mbz; 106 optfclken_ctrlclk 1 rw type(optfclken_ctrlclk_status) "Optional functional clock control for CAM_PHY_CTRL_GCLK 96Mhz clock."; 107 _ 6 mbz; 108 modulemode 2 rw type(modulemode_status) "Control the way mandatory clocks are managed."; 109 }; 110 111 constants clksel_fclk_status width(2) "" { 112 CLKSEL_FCLK_0 = 0 "FDIF_FCLK is divide by 1 of FUNC_128_CLK, to be used for OPP100"; 113 CLKSEL_FCLK_1 = 1 "FDIF_FCLK is divide by 2 of FUNC_128_CLK, to be used for OPP50"; 114 CLKSEL_FCLK_2 = 2 "FDIF_FCLK is divide by 4 of FUNC_128_CLK"; 115 CLKSEL_FCLK_3 = 3 "Reserved"; 116 }; 117 118 register cm_cam_fdif_clkctrl addr(base, 0x28) "This register manages the FDIF clocks." { 119 _ 6 mbz; 120 clksel_fclk 2 rw type(clksel_fclk_status) "Select the ration of FDIF_FCLK to FUNC_128M_CLK"; 121 _ 5 mbz; 122 stbyst 1 ro type(stbyst_status) "Module standby status. [warm reset insensitive]"; 123 idlest 2 ro type(idlest_status) "Module idle status. [warm reset insensitive]"; 124 _ 14 mbz; 125 modulemode 2 rw type(modulemode_status) "Control the way mandatory clocks are managed."; 126 }; 127};