From ceb7690570557ceeb36ceb16457353fac04d70fa Mon Sep 17 00:00:00 2001 From: Alessandro Rubini Date: Wed, 2 Feb 2011 12:30:48 -0700 Subject: u8500.c: set GPIO26 in power manager Signed-off-by: Alessandro Rubini --- board/st/u8500/u8500.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/board/st/u8500/u8500.c b/board/st/u8500/u8500.c index 43f21eed0..6495f0eb0 100644 --- a/board/st/u8500/u8500.c +++ b/board/st/u8500/u8500.c @@ -532,6 +532,33 @@ int board_late_init(void) else setenv("board_id", "1"); + /* For snowball (aka "minikit") we need to raise AB8500's GPIO26 */ + ret = ab8500_read(AB8500_MISC, AB8500_GPIO_DIR4_REG); + if (ret < 0) { + printf("error at %s:%i\n", __func__, __LINE__); + goto out; + } + printf("dir4 = %02x\n", ret); + ret |= 0x2; + ret = ab8500_write(AB8500_MISC, AB8500_GPIO_DIR4_REG, ret); + if (ret < 0) { + printf("error at %s:%i\n", __func__, __LINE__); + goto out; + } + + ret = ab8500_read(AB8500_MISC, AB8500_GPIO_OUT4_REG); + if (ret < 0) { + printf("error at %s:%i\n", __func__, __LINE__); + goto out; + } + printf("out4 = %02x\n", ret); + ret |= 0x2; + ret = ab8500_write(AB8500_MISC, AB8500_GPIO_OUT4_REG, ret); + if (ret < 0) { + printf("error at %s:%i\n", __func__, __LINE__); + goto out; + } +out: #ifdef CONFIG_MMC hrefplus_mmc_power_init(); -- cgit v1.2.3