[U-Boot] [PATCH v9 0/2] S5P: Exynos: Add GPIO numbering feature
Przemyslaw Marczak
p.marczak at samsung.com
Fri Apr 25 15:44:08 CEST 2014
Hello,
On 04/21/2014 04:25 PM, Akshay Saraswat wrote:
> Used a script to recheck/verify pin mapping and existing mapping
> appears to be fine, returning correct bank and pin values.
> Did ./MAKEALL -a arm and found all Exynos/S5P related boards
> compiled successfully.
> Couldn't test booting over all of them.
> Tested U-Boot bootup over SMDK5420, SMDK5250, Snow.
> Requesting maintaners to please test over affected SoCs/boards.
>
> Changes in V2:
> - Enabled CMD_GPIO as suggested by Simon Glass
> and supported same for EXYNOS5.
> Changes in V3:
> - New patch added to rename S5P GPIO definitions
> to S5P_GPIO.
> - GPIO Table added to calculate the base address
> of input gpio bank.
> Changes in V4:
> - To have consistent 0..n-1 GPIO numbering the banks
> are divided into different parts where ever they
> have holes in them.
> - Function and table to support gpio command moved
> to s5p-gpio driver.
> - Rebased on latest u-boot-samsung tree.
> Changes in V5:
> - Rebased on latest u-boot-samsung tree.
> - Removed Exynos5 specific code in gpio driver api to
> get bank.
> - Added #define HAVE_GENERIC_GPIO in config file
> to remove conditinal CPU check in gpio driver.
> Changes in V6:
> - Isolated config changes in a new patch.
> - Updated patches with corresponding changes for Exynos 5420.
> Changes in V7:
> - Added changes for other SoCs like Exynos 4412, 4210 etc.
> Changes in V8:
> - Changed Subject of patch 2/2 to reflect affected SoCs/boards.
> - Fixed arndale board compile time errors introduced due to
> patch-set v7.
> Changes in V9:
> - Fixed checkpatch errors.
> - Fixed naming error in exynosxxxx_gpio_data arrays which could
> be the possible reason behind data abort witnessed over
> Exynos4 boards.
>
> Akshay Saraswat (2):
> EXYNOS: Add GPIO pin numbering and rename definitions
> S5P: Exynos: Config: Enable Generic GPIO and CMD configs
>
> arch/arm/cpu/armv7/exynos/pinmux.c | 403 +++----
> arch/arm/include/asm/arch-exynos/cpu.h | 17 +-
> arch/arm/include/asm/arch-exynos/gpio.h | 1786 +++++++++++++++++++++++++-----
> arch/arm/include/asm/arch-s5pc1xx/gpio.h | 941 +++++++++++++---
> board/samsung/arndale/arndale.c | 11 +-
> board/samsung/goni/goni.c | 26 +-
> board/samsung/smdk5250/exynos5-dt.c | 20 +-
> board/samsung/smdk5250/smdk5250.c | 19 +-
> board/samsung/smdk5420/smdk5420.c | 15 +-
> board/samsung/smdkc100/smdkc100.c | 5 +-
> board/samsung/smdkv310/smdkv310.c | 17 +-
> board/samsung/trats/trats.c | 39 +-
> board/samsung/trats2/trats2.c | 74 +-
> board/samsung/universal_c210/universal.c | 51 +-
> drivers/gpio/s5p_gpio.c | 195 +++-
> include/configs/arndale.h | 1 +
> include/configs/exynos5-dt.h | 3 +
> include/configs/origen.h | 1 +
> include/configs/s5p_goni.h | 5 +-
> include/configs/s5pc210_universal.h | 17 +-
> include/configs/smdkc100.h | 1 +
> include/configs/smdkv310.h | 2 +
> include/configs/trats.h | 9 +-
> include/configs/trats2.h | 5 +-
> 24 files changed, 2806 insertions(+), 857 deletions(-)
>
I think that you missed my last few comments.
You are still using exynos_gpio_get() - what for?
It returns some number and next it's interpreted as
gpio continuous number - but it isn't continuous.
It's because each samsung board has now defined "HAVE_GENERIC_GPIO",
so gpio numbers are interpreted as linear.
We don't need additional macro since you introduce linear numbering.
Please read my last comments again.
I tried test this on trats2 device but data abort occurs at PMIC init,
it's probably because exynos_gpio_get(). Please use just gpio numbering
as you defined in this patchset.
Thank you
--
Przemyslaw Marczak
Samsung R&D Institute Poland
Samsung Electronics
p.marczak at samsung.com
More information about the U-Boot
mailing list