|
@@ -154,21 +154,36 @@ void omap4_prm_vp_clear_txdone(u8 vp_id)
|
|
|
|
|
|
u32 omap4_prm_vcvp_read(u8 offset)
|
|
|
{
|
|
|
+ s32 inst = omap4_prmst_get_prm_dev_inst();
|
|
|
+
|
|
|
+ if (inst == PRM_INSTANCE_UNKNOWN)
|
|
|
+ return 0;
|
|
|
+
|
|
|
return omap4_prminst_read_inst_reg(OMAP4430_PRM_PARTITION,
|
|
|
- OMAP4430_PRM_DEVICE_INST, offset);
|
|
|
+ inst, offset);
|
|
|
}
|
|
|
|
|
|
void omap4_prm_vcvp_write(u32 val, u8 offset)
|
|
|
{
|
|
|
+ s32 inst = omap4_prmst_get_prm_dev_inst();
|
|
|
+
|
|
|
+ if (inst == PRM_INSTANCE_UNKNOWN)
|
|
|
+ return;
|
|
|
+
|
|
|
omap4_prminst_write_inst_reg(val, OMAP4430_PRM_PARTITION,
|
|
|
- OMAP4430_PRM_DEVICE_INST, offset);
|
|
|
+ inst, offset);
|
|
|
}
|
|
|
|
|
|
u32 omap4_prm_vcvp_rmw(u32 mask, u32 bits, u8 offset)
|
|
|
{
|
|
|
+ s32 inst = omap4_prmst_get_prm_dev_inst();
|
|
|
+
|
|
|
+ if (inst == PRM_INSTANCE_UNKNOWN)
|
|
|
+ return 0;
|
|
|
+
|
|
|
return omap4_prminst_rmw_inst_reg_bits(mask, bits,
|
|
|
OMAP4430_PRM_PARTITION,
|
|
|
- OMAP4430_PRM_DEVICE_INST,
|
|
|
+ inst,
|
|
|
offset);
|
|
|
}
|
|
|
|
|
@@ -275,14 +290,18 @@ void omap44xx_prm_restore_irqen(u32 *saved_mask)
|
|
|
void omap44xx_prm_reconfigure_io_chain(void)
|
|
|
{
|
|
|
int i = 0;
|
|
|
+ s32 inst = omap4_prmst_get_prm_dev_inst();
|
|
|
+
|
|
|
+ if (inst == PRM_INSTANCE_UNKNOWN)
|
|
|
+ return;
|
|
|
|
|
|
/* Trigger WUCLKIN enable */
|
|
|
omap4_prm_rmw_inst_reg_bits(OMAP4430_WUCLK_CTRL_MASK,
|
|
|
OMAP4430_WUCLK_CTRL_MASK,
|
|
|
- OMAP4430_PRM_DEVICE_INST,
|
|
|
+ inst,
|
|
|
OMAP4_PRM_IO_PMCTRL_OFFSET);
|
|
|
omap_test_timeout(
|
|
|
- (((omap4_prm_read_inst_reg(OMAP4430_PRM_DEVICE_INST,
|
|
|
+ (((omap4_prm_read_inst_reg(inst,
|
|
|
OMAP4_PRM_IO_PMCTRL_OFFSET) &
|
|
|
OMAP4430_WUCLK_STATUS_MASK) >>
|
|
|
OMAP4430_WUCLK_STATUS_SHIFT) == 1),
|
|
@@ -292,10 +311,10 @@ void omap44xx_prm_reconfigure_io_chain(void)
|
|
|
|
|
|
/* Trigger WUCLKIN disable */
|
|
|
omap4_prm_rmw_inst_reg_bits(OMAP4430_WUCLK_CTRL_MASK, 0x0,
|
|
|
- OMAP4430_PRM_DEVICE_INST,
|
|
|
+ inst,
|
|
|
OMAP4_PRM_IO_PMCTRL_OFFSET);
|
|
|
omap_test_timeout(
|
|
|
- (((omap4_prm_read_inst_reg(OMAP4430_PRM_DEVICE_INST,
|
|
|
+ (((omap4_prm_read_inst_reg(inst,
|
|
|
OMAP4_PRM_IO_PMCTRL_OFFSET) &
|
|
|
OMAP4430_WUCLK_STATUS_MASK) >>
|
|
|
OMAP4430_WUCLK_STATUS_SHIFT) == 0),
|
|
@@ -316,9 +335,14 @@ void omap44xx_prm_reconfigure_io_chain(void)
|
|
|
*/
|
|
|
static void __init omap44xx_prm_enable_io_wakeup(void)
|
|
|
{
|
|
|
+ s32 inst = omap4_prmst_get_prm_dev_inst();
|
|
|
+
|
|
|
+ if (inst == PRM_INSTANCE_UNKNOWN)
|
|
|
+ return;
|
|
|
+
|
|
|
omap4_prm_rmw_inst_reg_bits(OMAP4430_GLOBAL_WUEN_MASK,
|
|
|
OMAP4430_GLOBAL_WUEN_MASK,
|
|
|
- OMAP4430_PRM_DEVICE_INST,
|
|
|
+ inst,
|
|
|
OMAP4_PRM_IO_PMCTRL_OFFSET);
|
|
|
}
|
|
|
|
|
@@ -333,8 +357,13 @@ static u32 omap44xx_prm_read_reset_sources(void)
|
|
|
struct prm_reset_src_map *p;
|
|
|
u32 r = 0;
|
|
|
u32 v;
|
|
|
+ s32 inst = omap4_prmst_get_prm_dev_inst();
|
|
|
+
|
|
|
+ if (inst == PRM_INSTANCE_UNKNOWN)
|
|
|
+ return 0;
|
|
|
+
|
|
|
|
|
|
- v = omap4_prm_read_inst_reg(OMAP4430_PRM_DEVICE_INST,
|
|
|
+ v = omap4_prm_read_inst_reg(inst,
|
|
|
OMAP4_RM_RSTST);
|
|
|
|
|
|
p = omap44xx_prm_reset_src_map;
|