msm8960: set the boot_done flag in pm8921 on fastboot
Change-Id: I9317c035cf2b13f3e29d4b43c0831060001008fd
diff --git a/app/aboot/aboot.c b/app/aboot/aboot.c
index 6ee26a3..751a598 100644
--- a/app/aboot/aboot.c
+++ b/app/aboot/aboot.c
@@ -900,6 +900,8 @@
fastboot:
+ target_fastboot_init();
+
if(!usb_init)
udc_init(&surf_udc_device);
diff --git a/target/init.c b/target/init.c
index a771544..7285bcf 100644
--- a/target/init.c
+++ b/target/init.c
@@ -27,7 +27,7 @@
#define EXPAND(NAME) #NAME
#define TARGET(NAME) EXPAND(NAME)
-/*
+/*
* default implementations of these routines, if the target code
* chooses not to implement.
*/
@@ -87,3 +87,7 @@
{
sprintf(buf, "%s",TARGET(BOARD));
}
+
+__WEAK void target_fastboot_init()
+{
+}
diff --git a/target/msm8960/init.c b/target/msm8960/init.c
old mode 100755
new mode 100644
index 1d4c44d..c31a4a4
--- a/target/msm8960/init.c
+++ b/target/msm8960/init.c
@@ -36,6 +36,8 @@
#include <platform/iomap.h>
#include <reg.h>
#include <dev/keys.h>
+#include <dev/pm8921.h>
+#include <dev/gpio_keypad.h>
#define LINUX_MACHTYPE_8960_SIM 3230
#define LINUX_MACHTYPE_8960_RUMI3 3231
@@ -51,12 +53,20 @@
static unsigned mmc_sdc_base[] = { MSM_SDC1_BASE, MSM_SDC2_BASE, MSM_SDC3_BASE, MSM_SDC4_BASE};
+static pm8921_dev_t pmic;
+
void target_init(void)
{
unsigned base_addr;
unsigned char slot;
dprintf(INFO, "target_init()\n");
+ /* Initialize PMIC driver */
+ pmic.read = pa1_ssbi2_read_bytes;
+ pmic.write = pa1_ssbi2_write_bytes;
+
+ pm8921_init(&pmic);
+
/* Keypad init */
keys_init();
keypad_init();
@@ -166,3 +176,10 @@
void target_battery_charging_enable(unsigned enable, unsigned disconnect)
{
}
+
+/* Do any target specific intialization needed before entering fastboot mode */
+void target_fastboot_init(void)
+{
+ /* Set the BOOT_DONE flag in PM8921 */
+ pm8921_boot_done();
+}
diff --git a/target/msm8960/rules.mk b/target/msm8960/rules.mk
index bfab671..9ffd5af 100644
--- a/target/msm8960/rules.mk
+++ b/target/msm8960/rules.mk
@@ -24,6 +24,7 @@
MODULES += \
dev/keys \
+ dev/pmic/pm8921 \
lib/ptable
DEFINES += \