summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/samsung/koi/pmic.c17
-rw-r--r--drivers/usb/gadget/usbd-otg-hs.c2
-rw-r--r--include/pmic.h1
3 files changed, 20 insertions, 0 deletions
diff --git a/board/samsung/koi/pmic.c b/board/samsung/koi/pmic.c
index fcf87be0b..cb3a13bb0 100644
--- a/board/samsung/koi/pmic.c
+++ b/board/samsung/koi/pmic.c
@@ -300,6 +300,23 @@ int get_boot_cause(void)
return -1;
}
+void pmic_enable_usb(void)
+{
+ unsigned char ldo_ctrl;
+
+ IIC0_ESetport();
+
+ /* enable LDO6 : enable VDD_USB_AP */
+ IIC0_ERead(S2MPS14_WR_ADDR, 0x28, &ldo_ctrl);
+ ldo_ctrl |= OUTPUT_NORMAL_MODE;
+ IIC0_EWrite(S2MPS14_WR_ADDR, 0x28, ldo_ctrl);
+
+ /* enable LDO8 : enable AVDD33_UOTG */
+ IIC0_ERead(S2MPS14_WR_ADDR, 0x2A, &ldo_ctrl);
+ ldo_ctrl |= OUTPUT_NORMAL_MODE;
+ IIC0_EWrite(S2MPS14_WR_ADDR, 0x2A, ldo_ctrl);
+}
+
#ifdef CONFIG_USE_LCD
void pmic_turnon_vdd_lcd(void)
{
diff --git a/drivers/usb/gadget/usbd-otg-hs.c b/drivers/usb/gadget/usbd-otg-hs.c
index 5c5c47308..9c816d75c 100644
--- a/drivers/usb/gadget/usbd-otg-hs.c
+++ b/drivers/usb/gadget/usbd-otg-hs.c
@@ -29,6 +29,7 @@
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/usb2.h>
+#include <pmic.h>
#include "usbd-otg-hs.h"
#if defined(CONFIG_S5P6450)
@@ -523,6 +524,7 @@ int s3c_usbctl_init(void)
#error "* CFG_ERROR : you have to select proper CPU for Android Fastboot"
#endif
+ pmic_enable_usb();
otg.speed = speed;
otg.set_config = 0;
otg.ep0_state = EP0_STATE_INIT;
diff --git a/include/pmic.h b/include/pmic.h
index 6a05b40ae..752b411c6 100644
--- a/include/pmic.h
+++ b/include/pmic.h
@@ -62,6 +62,7 @@ int pmic_probe(struct pmic *p);
int pmic_reg_read(struct pmic *p, u32 reg, u32 *val);
int pmic_reg_write(struct pmic *p, u32 reg, u32 val);
int pmic_set_output(struct pmic *p, u32 reg, int ldo, int on);
+void pmic_enable_usb(void);
#define pmic_i2c_addr (p->hw.i2c.addr)
#define pmic_i2c_tx_num (p->hw.i2c.tx_num)