diff options
-rw-r--r-- | board/samsung/koi/pmic.c | 17 | ||||
-rw-r--r-- | drivers/usb/gadget/usbd-otg-hs.c | 2 | ||||
-rw-r--r-- | include/pmic.h | 1 |
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) |