From mboxrd@z Thu Jan 1 00:00:00 1970 From: Przemyslaw Marczak Date: Tue, 28 Oct 2014 08:27:13 +0100 Subject: [U-Boot] [PATCH 14/14] odroid: adjust gpio calls to dm gpio api In-Reply-To: References: <1414165510-10383-1-git-send-email-p.marczak@samsung.com> <1414165510-10383-16-git-send-email-p.marczak@samsung.com> Message-ID: <544F4551.8080904@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello, On 10/28/2014 02:13 AM, Simon Glass wrote: > Hi, > > On 24 October 2014 09:45, Przemyslaw Marczak wrote: >> Setting gpio value before dm gpio init has no effect, >> so now, odroid gpio settings are moved after the gpio uclass init. >> >> Using non-requested gpio pin cases printing error messages. >> To avoid this, gpio_request() is added for those gpios. >> >> Signed-off-by: Przemyslaw Marczak >> --- >> board/samsung/odroid/odroid.c | 17 ++++++++++++++++- >> 1 file changed, 16 insertions(+), 1 deletion(-) >> >> diff --git a/board/samsung/odroid/odroid.c b/board/samsung/odroid/odroid.c >> index 5edb250..5ce8e9f 100644 >> --- a/board/samsung/odroid/odroid.c >> +++ b/board/samsung/odroid/odroid.c >> @@ -355,22 +355,36 @@ static void board_clock_init(void) >> >> static void board_gpio_init(void) >> { >> + char buf[16]; >> + >> /* eMMC Reset Pin */ >> + sprintf(buf, "eMMC Reset"); >> + gpio_request(EXYNOS4X12_GPIO_K12, buf); > > You can use: > > gpio_request(EXYNOS4X12_GPIO_K12, "eMMC Reset"); > > Same below. > Ops, right! This was to easy:) >> + >> gpio_cfg_pin(EXYNOS4X12_GPIO_K12, S5P_GPIO_FUNC(0x1)); >> gpio_set_pull(EXYNOS4X12_GPIO_K12, S5P_GPIO_PULL_NONE); >> gpio_set_drv(EXYNOS4X12_GPIO_K12, S5P_GPIO_DRV_4X); >> >> /* Enable FAN (Odroid U3) */ >> + sprintf(buf, "FAN Control"); >> + gpio_request(EXYNOS4X12_GPIO_D00, buf); >> + >> gpio_set_pull(EXYNOS4X12_GPIO_D00, S5P_GPIO_PULL_UP); >> gpio_set_drv(EXYNOS4X12_GPIO_D00, S5P_GPIO_DRV_4X); >> gpio_direction_output(EXYNOS4X12_GPIO_D00, 1); >> >> /* OTG Vbus output (Odroid U3+) */ >> + sprintf(buf, "OTG Vbus"); >> + gpio_request(EXYNOS4X12_GPIO_L20, buf); >> + >> gpio_set_pull(EXYNOS4X12_GPIO_L20, S5P_GPIO_PULL_NONE); >> gpio_set_drv(EXYNOS4X12_GPIO_L20, S5P_GPIO_DRV_4X); >> gpio_direction_output(EXYNOS4X12_GPIO_L20, 0); >> >> /* OTG INT (Odroid U3+) */ >> + sprintf(buf, "OTG INT"); >> + gpio_request(EXYNOS4X12_GPIO_X31, buf); >> + >> 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); >> @@ -403,7 +417,6 @@ static void board_init_i2c(void) >> int exynos_early_init_f(void) >> { >> board_clock_init(); >> - board_gpio_init(); >> >> return 0; >> } >> @@ -414,6 +427,8 @@ int exynos_init(void) >> gd->ram_size -= SZ_1M; >> gd->bd->bi_dram[CONFIG_NR_DRAM_BANKS - 1].size -= SZ_1M; >> >> + board_gpio_init(); >> + >> return 0; >> } >> >> -- >> 1.9.1 >> > > Regards, > Simon > Best regards, -- Przemyslaw Marczak Samsung R&D Institute Poland Samsung Electronics p.marczak at samsung.com