diff options
Diffstat (limited to 'target/msm7627_surf/init.c')
-rw-r--r-- | target/msm7627_surf/init.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/target/msm7627_surf/init.c b/target/msm7627_surf/init.c index 8a57d569..a860e074 100644 --- a/target/msm7627_surf/init.c +++ b/target/msm7627_surf/init.c @@ -35,6 +35,7 @@ #include <dev/gpio_keypad.h> #include <lib/ptable.h> #include <dev/flash.h> +#include <smem.h> #define LINUX_MACHTYPE 1007014 @@ -66,6 +67,11 @@ static struct ptentry board_part_list[] = { }, { .start = 704, + .length = 40 /* 5MB */, + .name = "recovery", + }, + { + .start = 744, .length = 720 /* 90MB */, .name = "userdata", }, @@ -124,3 +130,19 @@ unsigned board_machtype(void) { return LINUX_MACHTYPE; } + +unsigned check_reboot_mode(void) +{ + unsigned mode = 0; + unsigned int mode_len = sizeof(mode); + unsigned smem_status; + + smem_status = smem_read_alloc_entry(SMEM_APPS_BOOT_MODE, + &mode, mode_len ); + if(smem_status) + { + dprintf(CRITICAL, "ERROR: unable to read shared memory for reboot mode\n"); + return 0; + } + return mode; +} |