4 * DSP-BIOS Bridge driver support functions for TI OMAP processors.
6 * Copyright (C) 2007 Texas Instruments, Inc.
8 * This package is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
12 * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
13 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
14 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
18 * ======== hw_prcm.h ========
20 * PRCM types and API declarations
24 *! 16 Feb 2003 sb: Initial version
30 /* HW_ClkModule: Enumerated Type used to specify the clock domain */
37 HW_CLK_IVA_COP, /* IVA Coprocessor */
40 HW_CLK_FN_WDT4, /* Functional Clock */
49 HW_CLK_IF_WDT4, /* Interface Clock */
62 /* HW_GPtimers: General purpose timers */
71 /* GP timers Input clock type: General purpose timers */
78 /* HW_ClkDiv: Clock divisors */
89 /* HW_RstModule: Enumerated Type used to specify the module to be reset */
91 HW_RST1_IVA2, /* Reset the DSP */
92 HW_RST2_IVA2, /* Reset MMU and LEON HWa */
93 HW_RST3_IVA2 /* Reset LEON sequencer */
96 /* HW_PwrModule: Enumerated Type used to specify the power domain */
101 HW_PWR_DOMAIN_WAKEUP,
105 HW_PWR_DSP_IPI, /* IPI = Intrusive Port Interface */
106 HW_PWR_IVA_ISP /* ISP = Intrusive Slave Port */
116 enum HW_ForceState_t {
121 enum HW_IdleState_t {
127 enum HW_TransitionState_t {
135 extern HW_STATUS HW_RST_Reset(const void __iomem *baseAddress,
136 enum HW_RstModule_t r);
138 extern HW_STATUS HW_RST_UnReset(const void __iomem *baseAddress,
139 enum HW_RstModule_t r);
141 extern HW_STATUS HW_RSTCTRL_RegGet(const void __iomem *baseAddress,
142 enum HW_RstModule_t p,
144 extern HW_STATUS HW_RSTST_RegGet(const void __iomem *baseAddress,
145 enum HW_RstModule_t p, u32 *value);
147 extern HW_STATUS HW_PWR_PowerStateSet(const u32 baseAddress,
148 enum HW_PwrModule_t p,
149 enum HW_PwrState_t value);
151 extern HW_STATUS HW_CLK_SetInputClock(const u32 baseAddress,
152 enum HW_GPtimer_t gpt,
153 enum HW_Clocktype_t c);
155 extern HW_STATUS HW_PWR_IVA2StateGet(const void __iomem *baseAddress,
156 enum HW_PwrModule_t p,
157 enum HW_PwrState_t *value);
159 extern HW_STATUS HW_PWRST_IVA2RegGet(const void __iomem *baseAddress,
162 extern HW_STATUS HW_PWR_IVA2PowerStateSet(const void __iomem *baseAddress,
163 enum HW_PwrModule_t p,
164 enum HW_PwrState_t value);
166 extern HW_STATUS HW_PWR_CLKCTRL_IVA2RegSet(const void __iomem *baseAddress,
167 enum HW_TransitionState_t val);
169 #endif /* __HW_PRCM_H */