
On Thu, 2014-11-20 at 17:26 -0800, Suriyan Ramasami wrote:
The USB host code was missing gpio_request() calls before using the gpio functions, causing errors to be printed out.
As a side note calls to max77686_set_buck_mode(OPMODE_OFF/OPMODE_ON) have been removed, as they did not have any effect. This is as per Przemyslaw: I looked into the documentation and there is a "ENB8" pin in PMIC package. This pin allows steering BUCK8 ON/OFF by the hardware. If ENB8 is set to low then you can do on/off. If high, then you cannot change its state by I2C write, which seems to be the case with the Odroids.
Signed-off-by: Suriyan Ramasami suriyan.r@gmail.com Acked-by: Przemyslaw Marczak p.marczak@samsung.com
Tested on top of u-boot-samsung head (6a23c6533c880d557e786df81fa21b62168db6d9), with this patch ethernet support work on my Odroid X2 (emmc boot). Free free to add, Tested-by: Sjoerd Simons sjoerd.simons@collabora.co.uk
Changes in v2:
- Add comment why max77686_set_buck_mode() has been removed
Series-changes: 1
- Added gpio_request() call in board_gpio_init()
board/samsung/odroid/odroid.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/board/samsung/odroid/odroid.c b/board/samsung/odroid/odroid.c index f7396ab..a2c008e 100644 --- a/board/samsung/odroid/odroid.c +++ b/board/samsung/odroid/odroid.c @@ -382,6 +382,17 @@ static void board_gpio_init(void) gpio_set_pull(EXYNOS4X12_GPIO_X31, S5P_GPIO_PULL_UP); gpio_set_drv(EXYNOS4X12_GPIO_X31, S5P_GPIO_DRV_4X); gpio_direction_input(EXYNOS4X12_GPIO_X31);
+#ifdef CONFIG_CMD_USB
- /* USB3503A Reference frequency */
- gpio_request(EXYNOS4X12_GPIO_X30, "USB3503A RefFreq");
- /* USB3503A Connect */
- gpio_request(EXYNOS4X12_GPIO_X34, "USB3503A Connect");
- /* USB3503A Reset */
- gpio_request(EXYNOS4X12_GPIO_X35, "USB3503A Reset");
+#endif }
static int pmic_init_max77686(void) @@ -489,10 +500,8 @@ int board_usb_init(int index, enum usb_init_type init)
p_pmic = pmic_get("MAX77686_PMIC"); if (p_pmic && !pmic_probe(p_pmic)) {
max77686_set_buck_voltage(p_pmic, 8, 750000); max77686_set_buck_voltage(p_pmic, 8, 3300000);max77686_set_buck_mode(p_pmic, 8, OPMODE_OFF);
}max77686_set_buck_mode(p_pmic, 8, OPMODE_ON);
#endif