Lines Matching full:part
48 * 0x2 idle: Module is in Idle mode (only OCP part). It is functional if
77 static u32 omap4_cminst_read_inst_reg(u8 part, u16 inst, u16 idx);
81 * @part: PRCM partition ID that the CM_CLKCTRL register exists in
88 static u32 _clkctrl_idlest(u8 part, u16 inst, u16 clkctrl_offs) in _clkctrl_idlest() argument
90 u32 v = omap4_cminst_read_inst_reg(part, inst, clkctrl_offs); in _clkctrl_idlest()
98 * @part: PRCM partition ID that the CM_CLKCTRL register exists in
105 static bool _is_module_ready(u8 part, u16 inst, u16 clkctrl_offs) in _is_module_ready() argument
109 v = _clkctrl_idlest(part, inst, clkctrl_offs); in _is_module_ready()
116 static u32 omap4_cminst_read_inst_reg(u8 part, u16 inst, u16 idx) in omap4_cminst_read_inst_reg() argument
118 BUG_ON(part >= OMAP4_MAX_PRCM_PARTITIONS || in omap4_cminst_read_inst_reg()
119 part == OMAP4430_INVALID_PRCM_PARTITION || in omap4_cminst_read_inst_reg()
120 !_cm_bases[part].va); in omap4_cminst_read_inst_reg()
121 return readl_relaxed(_cm_bases[part].va + inst + idx); in omap4_cminst_read_inst_reg()
125 static void omap4_cminst_write_inst_reg(u32 val, u8 part, u16 inst, u16 idx) in omap4_cminst_write_inst_reg() argument
127 BUG_ON(part >= OMAP4_MAX_PRCM_PARTITIONS || in omap4_cminst_write_inst_reg()
128 part == OMAP4430_INVALID_PRCM_PARTITION || in omap4_cminst_write_inst_reg()
129 !_cm_bases[part].va); in omap4_cminst_write_inst_reg()
130 writel_relaxed(val, _cm_bases[part].va + inst + idx); in omap4_cminst_write_inst_reg()
134 static u32 omap4_cminst_rmw_inst_reg_bits(u32 mask, u32 bits, u8 part, u16 inst, in omap4_cminst_rmw_inst_reg_bits() argument
139 v = omap4_cminst_read_inst_reg(part, inst, idx); in omap4_cminst_rmw_inst_reg_bits()
142 omap4_cminst_write_inst_reg(v, part, inst, idx); in omap4_cminst_rmw_inst_reg_bits()
147 static u32 omap4_cminst_set_inst_reg_bits(u32 bits, u8 part, u16 inst, s16 idx) in omap4_cminst_set_inst_reg_bits() argument
149 return omap4_cminst_rmw_inst_reg_bits(bits, bits, part, inst, idx); in omap4_cminst_set_inst_reg_bits()
152 static u32 omap4_cminst_clear_inst_reg_bits(u32 bits, u8 part, u16 inst, in omap4_cminst_clear_inst_reg_bits() argument
155 return omap4_cminst_rmw_inst_reg_bits(bits, 0x0, part, inst, idx); in omap4_cminst_clear_inst_reg_bits()
158 static u32 omap4_cminst_read_inst_reg_bits(u8 part, u16 inst, s16 idx, u32 mask) in omap4_cminst_read_inst_reg_bits() argument
162 v = omap4_cminst_read_inst_reg(part, inst, idx); in omap4_cminst_read_inst_reg_bits()
176 * @part: PRCM partition ID that the CM_CLKSTCTRL register exists in
183 static void _clktrctrl_write(u8 c, u8 part, u16 inst, u16 cdoffs) in _clktrctrl_write() argument
187 v = omap4_cminst_read_inst_reg(part, inst, cdoffs + OMAP4_CM_CLKSTCTRL); in _clktrctrl_write()
190 omap4_cminst_write_inst_reg(v, part, inst, cdoffs + OMAP4_CM_CLKSTCTRL); in _clktrctrl_write()
195 * @part: PRCM partition ID that the CM_CLKSTCTRL register exists in
199 * Returns true if the clockdomain referred to by (@part, @inst, @cdoffs)
202 static bool omap4_cminst_is_clkdm_in_hwsup(u8 part, u16 inst, u16 cdoffs) in omap4_cminst_is_clkdm_in_hwsup() argument
206 v = omap4_cminst_read_inst_reg(part, inst, cdoffs + OMAP4_CM_CLKSTCTRL); in omap4_cminst_is_clkdm_in_hwsup()
215 * @part: PRCM partition ID that the clockdomain registers exist in
219 * Put a clockdomain referred to by (@part, @inst, @cdoffs) into
222 static void omap4_cminst_clkdm_enable_hwsup(u8 part, u16 inst, u16 cdoffs) in omap4_cminst_clkdm_enable_hwsup() argument
224 _clktrctrl_write(OMAP34XX_CLKSTCTRL_ENABLE_AUTO, part, inst, cdoffs); in omap4_cminst_clkdm_enable_hwsup()
229 * @part: PRCM partition ID that the clockdomain registers exist in
233 * Put a clockdomain referred to by (@part, @inst, @cdoffs) into
237 static void omap4_cminst_clkdm_disable_hwsup(u8 part, u16 inst, u16 cdoffs) in omap4_cminst_clkdm_disable_hwsup() argument
239 _clktrctrl_write(OMAP34XX_CLKSTCTRL_DISABLE_AUTO, part, inst, cdoffs); in omap4_cminst_clkdm_disable_hwsup()
244 * @part: PRCM partition ID that the clockdomain registers exist in
248 * Take a clockdomain referred to by (@part, @inst, @cdoffs) out of idle,
251 static void omap4_cminst_clkdm_force_wakeup(u8 part, u16 inst, u16 cdoffs) in omap4_cminst_clkdm_force_wakeup() argument
253 _clktrctrl_write(OMAP34XX_CLKSTCTRL_FORCE_WAKEUP, part, inst, cdoffs); in omap4_cminst_clkdm_force_wakeup()
260 static void omap4_cminst_clkdm_force_sleep(u8 part, u16 inst, u16 cdoffs) in omap4_cminst_clkdm_force_sleep() argument
262 _clktrctrl_write(OMAP34XX_CLKSTCTRL_FORCE_SLEEP, part, inst, cdoffs); in omap4_cminst_clkdm_force_sleep()
267 * @part: PRCM partition ID that the CM_CLKCTRL register exists in
277 static int omap4_cminst_wait_module_ready(u8 part, s16 inst, u16 clkctrl_offs, in omap4_cminst_wait_module_ready() argument
282 omap_test_timeout(_is_module_ready(part, inst, clkctrl_offs), in omap4_cminst_wait_module_ready()
291 * @part: PRCM partition ID that the CM_CLKCTRL register exists in
300 static int omap4_cminst_wait_module_idle(u8 part, s16 inst, u16 clkctrl_offs, in omap4_cminst_wait_module_idle() argument
305 omap_test_timeout((_clkctrl_idlest(part, inst, clkctrl_offs) == in omap4_cminst_wait_module_idle()
315 * @part: PRCM partition ID that the CM_CLKCTRL register exists in
321 static void omap4_cminst_module_enable(u8 mode, u8 part, u16 inst, in omap4_cminst_module_enable() argument
326 v = omap4_cminst_read_inst_reg(part, inst, clkctrl_offs); in omap4_cminst_module_enable()
329 omap4_cminst_write_inst_reg(v, part, inst, clkctrl_offs); in omap4_cminst_module_enable()
334 * @part: PRCM partition ID that the CM_CLKCTRL register exists in
340 static void omap4_cminst_module_disable(u8 part, u16 inst, u16 clkctrl_offs) in omap4_cminst_module_disable() argument
344 v = omap4_cminst_read_inst_reg(part, inst, clkctrl_offs); in omap4_cminst_module_disable()
346 omap4_cminst_write_inst_reg(v, part, inst, clkctrl_offs); in omap4_cminst_module_disable()
479 static u32 omap4_cminst_xlate_clkctrl(u8 part, u16 inst, u16 offset) in omap4_cminst_xlate_clkctrl() argument
481 return _cm_bases[part].pa + inst + offset; in omap4_cminst_xlate_clkctrl()