Merge "msm8974: Add dynamic ram partitions based on smem."
diff --git a/app/aboot/aboot.c b/app/aboot/aboot.c
index dbcd8dd..9b5151c 100644
--- a/app/aboot/aboot.c
+++ b/app/aboot/aboot.c
@@ -418,7 +418,9 @@
 	 * Will need to revisit to find the root cause.
 	 */
 	dsb();
+#if ARM_WITH_MMU
 	arch_disable_mmu();
+#endif
 	entry(0, machtype, tags);
 }
 
diff --git a/dev/pmic/pm8x41/pm8x41.c b/dev/pmic/pm8x41/pm8x41.c
index 4eac64f..e16e684 100644
--- a/dev/pmic/pm8x41/pm8x41.c
+++ b/dev/pmic/pm8x41/pm8x41.c
@@ -97,6 +97,9 @@
 	uint8_t  val;
 	uint32_t gpio_base = GPIO_N_PERIPHERAL_BASE(gpio);
 
+	/* Only input configuration is implemented at this time. */
+	ASSERT(config->direction == PM_GPIO_DIR_IN);
+
 	/* Disable the GPIO */
 	val  = REG_READ(gpio_base + GPIO_EN_CTL);
 	val &= ~BIT(PERPH_EN_BIT);
@@ -145,6 +148,9 @@
 	/* disable s2 reset */
 	REG_WRITE(PON_RESIN_N_RESET_S2_CTL, 0x0);
 
+	/* Delay needed for disable to kick in. */
+	udelay(300);
+
 	/* configure s1 timer to 0 */
 	REG_WRITE(PON_RESIN_N_RESET_S1_TIMER, 0x0);
 
@@ -166,6 +172,9 @@
 {
 	/* disable s2 reset */
 	REG_WRITE(PON_RESIN_N_RESET_S2_CTL, 0x0);
+
+	/* Delay needed for disable to kick in. */
+	udelay(300);
 }
 
 /* Volume_Down key status */