Go to the documentation of this file.
30 #ifndef __ARCH_ARM_PLAT_OMAP_INCLUDE_MACH_OMAP_HWMOD_H
31 #define __ARCH_ARM_PLAT_OMAP_INCLUDE_MACH_OMAP_HWMOD_H
33 #include <linux/kernel.h>
35 #include <linux/list.h>
50 #define SYSC_TYPE1_MIDLEMODE_SHIFT 12
51 #define SYSC_TYPE1_MIDLEMODE_MASK (0x3 << SYSC_TYPE1_MIDLEMODE_SHIFT)
52 #define SYSC_TYPE1_CLOCKACTIVITY_SHIFT 8
53 #define SYSC_TYPE1_CLOCKACTIVITY_MASK (0x3 << SYSC_TYPE1_CLOCKACTIVITY_SHIFT)
54 #define SYSC_TYPE1_SIDLEMODE_SHIFT 3
55 #define SYSC_TYPE1_SIDLEMODE_MASK (0x3 << SYSC_TYPE1_SIDLEMODE_SHIFT)
56 #define SYSC_TYPE1_ENAWAKEUP_SHIFT 2
57 #define SYSC_TYPE1_ENAWAKEUP_MASK (1 << SYSC_TYPE1_ENAWAKEUP_SHIFT)
58 #define SYSC_TYPE1_SOFTRESET_SHIFT 1
59 #define SYSC_TYPE1_SOFTRESET_MASK (1 << SYSC_TYPE1_SOFTRESET_SHIFT)
60 #define SYSC_TYPE1_AUTOIDLE_SHIFT 0
61 #define SYSC_TYPE1_AUTOIDLE_MASK (1 << SYSC_TYPE1_AUTOIDLE_SHIFT)
67 #define SYSC_TYPE2_SOFTRESET_SHIFT 0
68 #define SYSC_TYPE2_SOFTRESET_MASK (1 << SYSC_TYPE2_SOFTRESET_SHIFT)
69 #define SYSC_TYPE2_SIDLEMODE_SHIFT 2
70 #define SYSC_TYPE2_SIDLEMODE_MASK (0x3 << SYSC_TYPE2_SIDLEMODE_SHIFT)
71 #define SYSC_TYPE2_MIDLEMODE_SHIFT 4
72 #define SYSC_TYPE2_MIDLEMODE_MASK (0x3 << SYSC_TYPE2_MIDLEMODE_SHIFT)
73 #define SYSC_TYPE2_DMADISABLE_SHIFT 16
74 #define SYSC_TYPE2_DMADISABLE_MASK (0x1 << SYSC_TYPE2_DMADISABLE_SHIFT)
80 #define SYSC_TYPE3_SIDLEMODE_SHIFT 0
81 #define SYSC_TYPE3_SIDLEMODE_MASK (0x3 << SYSC_TYPE3_SIDLEMODE_SHIFT)
82 #define SYSC_TYPE3_MIDLEMODE_SHIFT 2
83 #define SYSC_TYPE3_MIDLEMODE_MASK (0x3 << SYSC_TYPE3_MIDLEMODE_SHIFT)
86 #define SYSS_RESETDONE_SHIFT 0
87 #define SYSS_RESETDONE_MASK (1 << SYSS_RESETDONE_SHIFT)
90 #define HWMOD_IDLEMODE_FORCE (1 << 0)
91 #define HWMOD_IDLEMODE_NO (1 << 1)
92 #define HWMOD_IDLEMODE_SMART (1 << 2)
93 #define HWMOD_IDLEMODE_SMART_WKUP (1 << 3)
96 #define MODULEMODE_HWCTRL 1
97 #define MODULEMODE_SWCTRL 2
176 #define OMAP_FIREWALL_L3 (1 << 0)
177 #define OMAP_FIREWALL_L4 (1 << 1)
200 #define ADDR_MAP_ON_INIT (1 << 0)
201 #define ADDR_TYPE_RT (1 << 1)
226 #define OCP_USER_MPU (1 << 0)
227 #define OCP_USER_SDMA (1 << 1)
228 #define OCP_USER_DSP (1 << 2)
229 #define OCP_USER_IVA (1 << 3)
232 #define OCPIF_SWSUP_IDLE (1 << 0)
233 #define OCPIF_CAN_BURST (1 << 1)
236 #define _OCPIF_INT_FLAGS_REGISTERED (1 << 0)
276 #define MASTER_STANDBY_SHIFT 4
277 #define SLAVE_IDLE_SHIFT 0
278 #define SIDLE_FORCE (HWMOD_IDLEMODE_FORCE << SLAVE_IDLE_SHIFT)
279 #define SIDLE_NO (HWMOD_IDLEMODE_NO << SLAVE_IDLE_SHIFT)
280 #define SIDLE_SMART (HWMOD_IDLEMODE_SMART << SLAVE_IDLE_SHIFT)
281 #define SIDLE_SMART_WKUP (HWMOD_IDLEMODE_SMART_WKUP << SLAVE_IDLE_SHIFT)
282 #define MSTANDBY_FORCE (HWMOD_IDLEMODE_FORCE << MASTER_STANDBY_SHIFT)
283 #define MSTANDBY_NO (HWMOD_IDLEMODE_NO << MASTER_STANDBY_SHIFT)
284 #define MSTANDBY_SMART (HWMOD_IDLEMODE_SMART << MASTER_STANDBY_SHIFT)
285 #define MSTANDBY_SMART_WKUP (HWMOD_IDLEMODE_SMART_WKUP << MASTER_STANDBY_SHIFT)
288 #define SYSC_HAS_AUTOIDLE (1 << 0)
289 #define SYSC_HAS_SOFTRESET (1 << 1)
290 #define SYSC_HAS_ENAWAKEUP (1 << 2)
291 #define SYSC_HAS_EMUFREE (1 << 3)
292 #define SYSC_HAS_CLOCKACTIVITY (1 << 4)
293 #define SYSC_HAS_SIDLEMODE (1 << 5)
294 #define SYSC_HAS_MIDLEMODE (1 << 6)
295 #define SYSS_HAS_RESET_STATUS (1 << 7)
296 #define SYSC_NO_CACHE (1 << 8)
297 #define SYSC_HAS_RESET_STATUS (1 << 9)
298 #define SYSC_HAS_DMADISABLE (1 << 10)
301 #define CLOCKACT_TEST_BOTH 0x0
302 #define CLOCKACT_TEST_MAIN 0x1
303 #define CLOCKACT_TEST_ICLK 0x2
304 #define CLOCKACT_TEST_NONE 0x3
394 #define HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT (1 << 0)
452 #define HWMOD_SWSUP_SIDLE (1 << 0)
453 #define HWMOD_SWSUP_MSTANDBY (1 << 1)
454 #define HWMOD_INIT_NO_RESET (1 << 2)
455 #define HWMOD_INIT_NO_IDLE (1 << 3)
456 #define HWMOD_NO_OCP_AUTOIDLE (1 << 4)
457 #define HWMOD_SET_DEFAULT_CLOCKACT (1 << 5)
458 #define HWMOD_NO_IDLEST (1 << 6)
459 #define HWMOD_CONTROL_OPT_CLKS_IN_RESET (1 << 7)
460 #define HWMOD_16BIT_REG (1 << 8)
461 #define HWMOD_EXT_OPT_MAIN_CLK (1 << 9)
473 #define _HWMOD_NO_MPU_PORT (1 << 0)
474 #define _HWMOD_WAKEUP_ENABLED (1 << 1)
475 #define _HWMOD_SYSCONFIG_LOADED (1 << 2)
476 #define _HWMOD_SKIP_ENABLE (1 << 3)
486 #define _HWMOD_STATE_UNKNOWN 0
487 #define _HWMOD_STATE_REGISTERED 1
488 #define _HWMOD_STATE_CLKS_INITED 2
489 #define _HWMOD_STATE_INITIALIZED 3
490 #define _HWMOD_STATE_ENABLED 4
491 #define _HWMOD_STATE_IDLE 5
492 #define _HWMOD_STATE_DISABLED 6