|
@@ -402,15 +402,9 @@ static struct twl4030_usb_data rx51_usb_data = {
|
|
|
|
|
|
static struct twl4030_ins sleep_on_seq[] __initdata = {
|
|
|
/*
|
|
|
- * Turn off VDD1 and VDD2.
|
|
|
+ * Turn off everything
|
|
|
*/
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, 0xf, RES_STATE_OFF), 4},
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, 0x10, RES_STATE_OFF), 2},
|
|
|
-/*
|
|
|
- * And also turn off the OMAP3 PLLs and the sysclk output.
|
|
|
- */
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, 0x7, RES_STATE_OFF), 3},
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, 0x17, RES_STATE_OFF), 3},
|
|
|
+ {MSG_BROADCAST(DEV_GRP_NULL, RES_GRP_ALL, 1, 0, RES_STATE_SLEEP), 2},
|
|
|
};
|
|
|
|
|
|
static struct twl4030_script sleep_on_script __initdata = {
|
|
@@ -421,14 +415,9 @@ static struct twl4030_script sleep_on_script __initdata = {
|
|
|
|
|
|
static struct twl4030_ins wakeup_seq[] __initdata = {
|
|
|
/*
|
|
|
- * Reenable the OMAP3 PLLs.
|
|
|
- * Wakeup VDD1 and VDD2.
|
|
|
- * Reenable sysclk output.
|
|
|
+ * Reenable everything
|
|
|
*/
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, 0x7, RES_STATE_ACTIVE), 0x30},
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, 0xf, RES_STATE_ACTIVE), 0x30},
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, 0x10, RES_STATE_ACTIVE), 0x37},
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, 0x19, RES_STATE_ACTIVE), 3},
|
|
|
+ {MSG_BROADCAST(DEV_GRP_NULL, RES_GRP_ALL, 1, 0, RES_STATE_ACTIVE), 2},
|
|
|
};
|
|
|
|
|
|
static struct twl4030_script wakeup_script __initdata = {
|
|
@@ -439,10 +428,9 @@ static struct twl4030_script wakeup_script __initdata = {
|
|
|
|
|
|
static struct twl4030_ins wakeup_p3_seq[] __initdata = {
|
|
|
/*
|
|
|
- * Wakeup VDD1 (dummy to be able to insert a delay)
|
|
|
- * Enable CLKEN
|
|
|
+ * Reenable everything
|
|
|
*/
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, 0x17, RES_STATE_ACTIVE), 3},
|
|
|
+ {MSG_BROADCAST(DEV_GRP_NULL, RES_GRP_ALL, 1, 0, RES_STATE_ACTIVE), 2},
|
|
|
};
|
|
|
|
|
|
static struct twl4030_script wakeup_p3_script __initdata = {
|
|
@@ -463,12 +451,11 @@ static struct twl4030_ins wrst_seq[] __initdata = {
|
|
|
{MSG_SINGULAR(DEV_GRP_NULL, RES_RESET, RES_STATE_OFF), 2},
|
|
|
{MSG_BROADCAST(DEV_GRP_NULL, RES_GRP_ALL, 0, 1, RES_STATE_ACTIVE),
|
|
|
0x13},
|
|
|
- {MSG_BROADCAST(DEV_GRP_NULL, RES_GRP_PP, 0, 2, RES_STATE_WRST), 0x13},
|
|
|
{MSG_BROADCAST(DEV_GRP_NULL, RES_GRP_PP, 0, 3, RES_STATE_OFF), 0x13},
|
|
|
{MSG_SINGULAR(DEV_GRP_NULL, RES_VDD1, RES_STATE_WRST), 0x13},
|
|
|
{MSG_SINGULAR(DEV_GRP_NULL, RES_VDD2, RES_STATE_WRST), 0x13},
|
|
|
{MSG_SINGULAR(DEV_GRP_NULL, RES_VPLL1, RES_STATE_WRST), 0x35},
|
|
|
- {MSG_SINGULAR(DEV_GRP_P1, RES_HFCLKOUT, RES_STATE_ACTIVE), 2},
|
|
|
+ {MSG_SINGULAR(DEV_GRP_P3, RES_HFCLKOUT, RES_STATE_ACTIVE), 2},
|
|
|
{MSG_SINGULAR(DEV_GRP_NULL, RES_RESET, RES_STATE_ACTIVE), 2},
|
|
|
};
|
|
|
|
|
@@ -490,22 +477,81 @@ static struct twl4030_script *twl4030_scripts[] __initdata = {
|
|
|
};
|
|
|
|
|
|
static struct twl4030_resconfig twl4030_rconfig[] __initdata = {
|
|
|
- { .resource = RES_VINTANA1, .devgroup = -1, .type = -1, .type2 = 1 },
|
|
|
- { .resource = RES_VINTANA2, .devgroup = -1, .type = -1, .type2 = 1 },
|
|
|
- { .resource = RES_VINTDIG, .devgroup = -1, .type = -1, .type2 = 1 },
|
|
|
- { .resource = RES_VMMC1, .devgroup = -1, .type = -1, .type2 = 3},
|
|
|
- { .resource = RES_VMMC2, .devgroup = DEV_GRP_NULL, .type = -1,
|
|
|
- .type2 = 3},
|
|
|
- { .resource = RES_VAUX1, .devgroup = -1, .type = -1, .type2 = 3},
|
|
|
- { .resource = RES_VAUX2, .devgroup = -1, .type = -1, .type2 = 3},
|
|
|
- { .resource = RES_VAUX3, .devgroup = -1, .type = -1, .type2 = 3},
|
|
|
- { .resource = RES_VAUX4, .devgroup = -1, .type = -1, .type2 = 3},
|
|
|
- { .resource = RES_VPLL2, .devgroup = -1, .type = -1, .type2 = 3},
|
|
|
- { .resource = RES_VDAC, .devgroup = -1, .type = -1, .type2 = 3},
|
|
|
- { .resource = RES_VSIM, .devgroup = DEV_GRP_NULL, .type = -1,
|
|
|
- .type2 = 3},
|
|
|
- { .resource = RES_CLKEN, .devgroup = DEV_GRP_P3, .type = -1,
|
|
|
- .type2 = 1 },
|
|
|
+ { .resource = RES_VDD1, .devgroup = -1,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = RES_STATE_OFF,
|
|
|
+ .remap_sleep = RES_STATE_OFF
|
|
|
+ },
|
|
|
+ { .resource = RES_VDD2, .devgroup = -1,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = RES_STATE_OFF,
|
|
|
+ .remap_sleep = RES_STATE_OFF
|
|
|
+ },
|
|
|
+ { .resource = RES_VPLL1, .devgroup = -1,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = RES_STATE_OFF,
|
|
|
+ .remap_sleep = RES_STATE_OFF
|
|
|
+ },
|
|
|
+ { .resource = RES_VPLL2, .devgroup = -1,
|
|
|
+ .type = -1, .type2 = 3, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VAUX1, .devgroup = -1,
|
|
|
+ .type = -1, .type2 = 3, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VAUX2, .devgroup = -1,
|
|
|
+ .type = -1, .type2 = 3, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VAUX3, .devgroup = -1,
|
|
|
+ .type = -1, .type2 = 3, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VAUX4, .devgroup = -1,
|
|
|
+ .type = -1, .type2 = 3, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VMMC1, .devgroup = -1,
|
|
|
+ .type = -1, .type2 = 3, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VMMC2, .devgroup = -1,
|
|
|
+ .type = -1, .type2 = 3, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VDAC, .devgroup = -1,
|
|
|
+ .type = -1, .type2 = 3, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VSIM, .devgroup = -1,
|
|
|
+ .type = -1, .type2 = 3, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VINTANA1, .devgroup = DEV_GRP_P1 | DEV_GRP_P3,
|
|
|
+ .type = -1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VINTANA2, .devgroup = DEV_GRP_P1 | DEV_GRP_P3,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VINTDIG, .devgroup = DEV_GRP_P1 | DEV_GRP_P3,
|
|
|
+ .type = -1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_VIO, .devgroup = DEV_GRP_P3,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_CLKEN, .devgroup = DEV_GRP_P1 | DEV_GRP_P3,
|
|
|
+ .type = 1, .type2 = -1 , .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_REGEN, .devgroup = DEV_GRP_P1 | DEV_GRP_P3,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_NRES_PWRON, .devgroup = DEV_GRP_P1 | DEV_GRP_P3,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_SYSEN, .devgroup = DEV_GRP_P1 | DEV_GRP_P3,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_HFCLKOUT, .devgroup = DEV_GRP_P3,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_32KCLKOUT, .devgroup = -1,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_RESET, .devgroup = -1,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
+ { .resource = RES_Main_Ref, .devgroup = -1,
|
|
|
+ .type = 1, .type2 = -1, .remap_off = -1, .remap_sleep = -1
|
|
|
+ },
|
|
|
{ 0, 0},
|
|
|
};
|
|
|
|