diff mbox

[U-Boot,1/4] exynos5: fix GPIO information of exynos5420

Message ID 1414757284-32067-2-git-send-email-human.hwang@samsung.com
State Changes Requested
Delegated to: Minkyu Kang
Headers show

Commit Message

Hyungwon Hwang Oct. 31, 2014, 12:08 p.m. UTC
This patch fixes wrong GPIO information such as GPIO bank, table which is used
to convert GPIO name to index, bank base address, and etc.

Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
---
 arch/arm/include/asm/arch-exynos/cpu.h  |  11 +-
 arch/arm/include/asm/arch-exynos/gpio.h | 232 +++++++++++++++-----------------
 2 files changed, 117 insertions(+), 126 deletions(-)

Comments

Jaehoon Chung Nov. 4, 2014, 4:51 a.m. UTC | #1
On 10/31/2014 09:08 PM, Hyungwon Hwang wrote:
> This patch fixes wrong GPIO information such as GPIO bank, table which is used
> to convert GPIO name to index, bank base address, and etc.
> 
> Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
> ---
>  arch/arm/include/asm/arch-exynos/cpu.h  |  11 +-
>  arch/arm/include/asm/arch-exynos/gpio.h | 232 +++++++++++++++-----------------
>  2 files changed, 117 insertions(+), 126 deletions(-)
> 
> diff --git a/arch/arm/include/asm/arch-exynos/cpu.h b/arch/arm/include/asm/arch-exynos/cpu.h
> index 7c5c4ff..da4ac6b 100644
> --- a/arch/arm/include/asm/arch-exynos/cpu.h
> +++ b/arch/arm/include/asm/arch-exynos/cpu.h
> @@ -139,7 +139,7 @@
>  
>  /* EXYNOS5420 */
>  #define EXYNOS5420_AUDIOSS_BASE		0x03810000
> -#define EXYNOS5420_GPIO_PART6_BASE	0x03860000
> +#define EXYNOS5420_GPIO_PART5_BASE	0x03860000
>  #define EXYNOS5420_PRO_ID		0x10000000
>  #define EXYNOS5420_CLOCK_BASE		0x10010000
>  #define EXYNOS5420_POWER_BASE		0x10040000
> @@ -161,11 +161,10 @@
>  #define EXYNOS5420_I2S_BASE		0x12D60000
>  #define EXYNOS5420_PWMTIMER_BASE	0x12DD0000
>  #define EXYNOS5420_SPI_ISP_BASE		0x131A0000
> -#define EXYNOS5420_GPIO_PART2_BASE	0x13400000
> -#define EXYNOS5420_GPIO_PART3_BASE	0x13400C00
> -#define EXYNOS5420_GPIO_PART4_BASE	0x13410000
> -#define EXYNOS5420_GPIO_PART5_BASE	0x14000000
> -#define EXYNOS5420_GPIO_PART1_BASE	0x14010000
> +#define EXYNOS5420_GPIO_PART1_BASE	0x13400000
> +#define EXYNOS5420_GPIO_PART2_BASE	0x13410000
> +#define EXYNOS5420_GPIO_PART3_BASE	0x14000000
> +#define EXYNOS5420_GPIO_PART4_BASE	0x14010000
>  #define EXYNOS5420_MIPI_DSIM_BASE	0x14500000
>  #define EXYNOS5420_DP_BASE		0x145B0000

What's wrong? It's sorted from A to Z.(GPA ~ GPZ)

Best Regards,
Jaehoon Chung
>  
> diff --git a/arch/arm/include/asm/arch-exynos/gpio.h b/arch/arm/include/asm/arch-exynos/gpio.h
> index 32e045a..431ae3a 100644
> --- a/arch/arm/include/asm/arch-exynos/gpio.h
> +++ b/arch/arm/include/asm/arch-exynos/gpio.h
> @@ -1028,83 +1028,7 @@ enum exynos5_gpio_pin {
>  };
>  
>  enum exynos5420_gpio_pin {
> -	/* GPIO_PART1_STARTS */
> -	EXYNOS5420_GPIO_A00,		/* 0 */
> -	EXYNOS5420_GPIO_A01,
> -	EXYNOS5420_GPIO_A02,
> -	EXYNOS5420_GPIO_A03,
> -	EXYNOS5420_GPIO_A04,
> -	EXYNOS5420_GPIO_A05,
> -	EXYNOS5420_GPIO_A06,
> -	EXYNOS5420_GPIO_A07,
> -	EXYNOS5420_GPIO_A10,		/* 8 */
> -	EXYNOS5420_GPIO_A11,
> -	EXYNOS5420_GPIO_A12,
> -	EXYNOS5420_GPIO_A13,
> -	EXYNOS5420_GPIO_A14,
> -	EXYNOS5420_GPIO_A15,
> -	EXYNOS5420_GPIO_A16,
> -	EXYNOS5420_GPIO_A17,
> -	EXYNOS5420_GPIO_A20,		/* 16 0x10 */
> -	EXYNOS5420_GPIO_A21,
> -	EXYNOS5420_GPIO_A22,
> -	EXYNOS5420_GPIO_A23,
> -	EXYNOS5420_GPIO_A24,
> -	EXYNOS5420_GPIO_A25,
> -	EXYNOS5420_GPIO_A26,
> -	EXYNOS5420_GPIO_A27,
> -	EXYNOS5420_GPIO_B00,		/* 24 0x18 */
> -	EXYNOS5420_GPIO_B01,
> -	EXYNOS5420_GPIO_B02,
> -	EXYNOS5420_GPIO_B03,
> -	EXYNOS5420_GPIO_B04,
> -	EXYNOS5420_GPIO_B05,
> -	EXYNOS5420_GPIO_B06,
> -	EXYNOS5420_GPIO_B07,
> -	EXYNOS5420_GPIO_B10,		/* 32 0x20 */
> -	EXYNOS5420_GPIO_B11,
> -	EXYNOS5420_GPIO_B12,
> -	EXYNOS5420_GPIO_B13,
> -	EXYNOS5420_GPIO_B14,
> -	EXYNOS5420_GPIO_B15,
> -	EXYNOS5420_GPIO_B16,
> -	EXYNOS5420_GPIO_B17,
> -	EXYNOS5420_GPIO_B20,		/* 40 0x28 */
> -	EXYNOS5420_GPIO_B21,
> -	EXYNOS5420_GPIO_B22,
> -	EXYNOS5420_GPIO_B23,
> -	EXYNOS5420_GPIO_B24,
> -	EXYNOS5420_GPIO_B25,
> -	EXYNOS5420_GPIO_B26,
> -	EXYNOS5420_GPIO_B27,
> -	EXYNOS5420_GPIO_B30,		/* 48 0x30 */
> -	EXYNOS5420_GPIO_B31,
> -	EXYNOS5420_GPIO_B32,
> -	EXYNOS5420_GPIO_B33,
> -	EXYNOS5420_GPIO_B34,
> -	EXYNOS5420_GPIO_B35,
> -	EXYNOS5420_GPIO_B36,
> -	EXYNOS5420_GPIO_B37,
> -	EXYNOS5420_GPIO_B40,		/* 56 0x38 */
> -	EXYNOS5420_GPIO_B41,
> -	EXYNOS5420_GPIO_B42,
> -	EXYNOS5420_GPIO_B43,
> -	EXYNOS5420_GPIO_B44,
> -	EXYNOS5420_GPIO_B45,
> -	EXYNOS5420_GPIO_B46,
> -	EXYNOS5420_GPIO_B47,
> -	EXYNOS5420_GPIO_H00,		/* 64 0x40 */
> -	EXYNOS5420_GPIO_H01,
> -	EXYNOS5420_GPIO_H02,
> -	EXYNOS5420_GPIO_H03,
> -	EXYNOS5420_GPIO_H04,
> -	EXYNOS5420_GPIO_H05,
> -	EXYNOS5420_GPIO_H06,
> -	EXYNOS5420_GPIO_H07,
> -
> -	/* GPIO PART 2 STARTS*/
> -	EXYNOS5420_GPIO_MAX_PORT_PART_1,/* 72 0x48 */
> -	EXYNOS5420_GPIO_Y70 = EXYNOS5420_GPIO_MAX_PORT_PART_1,
> +	EXYNOS5420_GPIO_Y70,
>  	EXYNOS5420_GPIO_Y71,
>  	EXYNOS5420_GPIO_Y72,
>  	EXYNOS5420_GPIO_Y73,
> @@ -1112,10 +1036,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_Y75,
>  	EXYNOS5420_GPIO_Y76,
>  	EXYNOS5420_GPIO_Y77,
> -
> -	/* GPIO PART 3 STARTS*/
> -	EXYNOS5420_GPIO_MAX_PORT_PART_2,/* 80 0x50 */
> -	EXYNOS5420_GPIO_X00 = EXYNOS5420_GPIO_MAX_PORT_PART_2,
> +	EXYNOS5420_GPIO_X00,
>  	EXYNOS5420_GPIO_X01,
>  	EXYNOS5420_GPIO_X02,
>  	EXYNOS5420_GPIO_X03,
> @@ -1123,7 +1044,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_X05,
>  	EXYNOS5420_GPIO_X06,
>  	EXYNOS5420_GPIO_X07,
> -	EXYNOS5420_GPIO_X10,		/* 88 0x58 */
> +	EXYNOS5420_GPIO_X10,
>  	EXYNOS5420_GPIO_X11,
>  	EXYNOS5420_GPIO_X12,
>  	EXYNOS5420_GPIO_X13,
> @@ -1131,7 +1052,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_X15,
>  	EXYNOS5420_GPIO_X16,
>  	EXYNOS5420_GPIO_X17,
> -	EXYNOS5420_GPIO_X20,		/* 96 0x60 */
> +	EXYNOS5420_GPIO_X20,
>  	EXYNOS5420_GPIO_X21,
>  	EXYNOS5420_GPIO_X22,
>  	EXYNOS5420_GPIO_X23,
> @@ -1139,7 +1060,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_X25,
>  	EXYNOS5420_GPIO_X26,
>  	EXYNOS5420_GPIO_X27,
> -	EXYNOS5420_GPIO_X30,		/* 104 0x68 */
> +	EXYNOS5420_GPIO_X30,
>  	EXYNOS5420_GPIO_X31,
>  	EXYNOS5420_GPIO_X32,
>  	EXYNOS5420_GPIO_X33,
> @@ -1148,9 +1069,8 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_X36,
>  	EXYNOS5420_GPIO_X37,
>  
> -	/* GPIO PART 4 STARTS*/
> -	EXYNOS5420_GPIO_MAX_PORT_PART_3,/* 112 0x70 */
> -	EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_3,
> +	EXYNOS5420_GPIO_MAX_PORT_PART_1,
> +	EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_1,
>  	EXYNOS5420_GPIO_C01,
>  	EXYNOS5420_GPIO_C02,
>  	EXYNOS5420_GPIO_C03,
> @@ -1158,7 +1078,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_C05,
>  	EXYNOS5420_GPIO_C06,
>  	EXYNOS5420_GPIO_C07,
> -	EXYNOS5420_GPIO_C10,		/* 120 0x78 */
> +	EXYNOS5420_GPIO_C10,
>  	EXYNOS5420_GPIO_C11,
>  	EXYNOS5420_GPIO_C12,
>  	EXYNOS5420_GPIO_C13,
> @@ -1166,7 +1086,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_C15,
>  	EXYNOS5420_GPIO_C16,
>  	EXYNOS5420_GPIO_C17,
> -	EXYNOS5420_GPIO_C20,		/* 128 0x80 */
> +	EXYNOS5420_GPIO_C20,
>  	EXYNOS5420_GPIO_C21,
>  	EXYNOS5420_GPIO_C22,
>  	EXYNOS5420_GPIO_C23,
> @@ -1174,7 +1094,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_C25,
>  	EXYNOS5420_GPIO_C26,
>  	EXYNOS5420_GPIO_C27,
> -	EXYNOS5420_GPIO_C30,		/* 136 0x88 */
> +	EXYNOS5420_GPIO_C30,
>  	EXYNOS5420_GPIO_C31,
>  	EXYNOS5420_GPIO_C32,
>  	EXYNOS5420_GPIO_C33,
> @@ -1182,7 +1102,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_C35,
>  	EXYNOS5420_GPIO_C36,
>  	EXYNOS5420_GPIO_C37,
> -	EXYNOS5420_GPIO_C40,		/* 144 0x90 */
> +	EXYNOS5420_GPIO_C40,
>  	EXYNOS5420_GPIO_C41,
>  	EXYNOS5420_GPIO_C42,
>  	EXYNOS5420_GPIO_C43,
> @@ -1190,7 +1110,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_C45,
>  	EXYNOS5420_GPIO_C46,
>  	EXYNOS5420_GPIO_C47,
> -	EXYNOS5420_GPIO_D10,		/* 152 0x98 */
> +	EXYNOS5420_GPIO_D10,
>  	EXYNOS5420_GPIO_D11,
>  	EXYNOS5420_GPIO_D12,
>  	EXYNOS5420_GPIO_D13,
> @@ -1198,7 +1118,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_D15,
>  	EXYNOS5420_GPIO_D16,
>  	EXYNOS5420_GPIO_D17,
> -	EXYNOS5420_GPIO_Y00,		/* 160 0xa0 */
> +	EXYNOS5420_GPIO_Y00,
>  	EXYNOS5420_GPIO_Y01,
>  	EXYNOS5420_GPIO_Y02,
>  	EXYNOS5420_GPIO_Y03,
> @@ -1206,7 +1126,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_Y05,
>  	EXYNOS5420_GPIO_Y06,
>  	EXYNOS5420_GPIO_Y07,
> -	EXYNOS5420_GPIO_Y10,		/* 168 0xa8 */
> +	EXYNOS5420_GPIO_Y10,
>  	EXYNOS5420_GPIO_Y11,
>  	EXYNOS5420_GPIO_Y12,
>  	EXYNOS5420_GPIO_Y13,
> @@ -1214,7 +1134,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_Y15,
>  	EXYNOS5420_GPIO_Y16,
>  	EXYNOS5420_GPIO_Y17,
> -	EXYNOS5420_GPIO_Y20,		/* 176 0xb0 */
> +	EXYNOS5420_GPIO_Y20,
>  	EXYNOS5420_GPIO_Y21,
>  	EXYNOS5420_GPIO_Y22,
>  	EXYNOS5420_GPIO_Y23,
> @@ -1222,7 +1142,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_Y25,
>  	EXYNOS5420_GPIO_Y26,
>  	EXYNOS5420_GPIO_Y27,
> -	EXYNOS5420_GPIO_Y30,		/* 184 0xb8 */
> +	EXYNOS5420_GPIO_Y30,
>  	EXYNOS5420_GPIO_Y31,
>  	EXYNOS5420_GPIO_Y32,
>  	EXYNOS5420_GPIO_Y33,
> @@ -1230,7 +1150,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_Y35,
>  	EXYNOS5420_GPIO_Y36,
>  	EXYNOS5420_GPIO_Y37,
> -	EXYNOS5420_GPIO_Y40,		/* 192 0xc0 */
> +	EXYNOS5420_GPIO_Y40,
>  	EXYNOS5420_GPIO_Y41,
>  	EXYNOS5420_GPIO_Y42,
>  	EXYNOS5420_GPIO_Y43,
> @@ -1238,7 +1158,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_Y45,
>  	EXYNOS5420_GPIO_Y46,
>  	EXYNOS5420_GPIO_Y47,
> -	EXYNOS5420_GPIO_Y50,		/* 200 0xc8 */
> +	EXYNOS5420_GPIO_Y50,
>  	EXYNOS5420_GPIO_Y51,
>  	EXYNOS5420_GPIO_Y52,
>  	EXYNOS5420_GPIO_Y53,
> @@ -1246,7 +1166,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_Y55,
>  	EXYNOS5420_GPIO_Y56,
>  	EXYNOS5420_GPIO_Y57,
> -	EXYNOS5420_GPIO_Y60,		/* 208 0xd0 */
> +	EXYNOS5420_GPIO_Y60,
>  	EXYNOS5420_GPIO_Y61,
>  	EXYNOS5420_GPIO_Y62,
>  	EXYNOS5420_GPIO_Y63,
> @@ -1255,9 +1175,8 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_Y66,
>  	EXYNOS5420_GPIO_Y67,
>  
> -	/* GPIO_PART5_STARTS */
> -	EXYNOS5420_GPIO_MAX_PORT_PART_4,/* 216 0xd8 */
> -	EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_4,
> +	EXYNOS5420_GPIO_MAX_PORT_PART_2,
> +	EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_2,
>  	EXYNOS5420_GPIO_E01,
>  	EXYNOS5420_GPIO_E02,
>  	EXYNOS5420_GPIO_E03,
> @@ -1265,7 +1184,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_E05,
>  	EXYNOS5420_GPIO_E06,
>  	EXYNOS5420_GPIO_E07,
> -	EXYNOS5420_GPIO_E10,		/* 224 0xe0 */
> +	EXYNOS5420_GPIO_E10,
>  	EXYNOS5420_GPIO_E11,
>  	EXYNOS5420_GPIO_E12,
>  	EXYNOS5420_GPIO_E13,
> @@ -1273,7 +1192,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_E15,
>  	EXYNOS5420_GPIO_E16,
>  	EXYNOS5420_GPIO_E17,
> -	EXYNOS5420_GPIO_F00,		/* 232 0xe8 */
> +	EXYNOS5420_GPIO_F00,
>  	EXYNOS5420_GPIO_F01,
>  	EXYNOS5420_GPIO_F02,
>  	EXYNOS5420_GPIO_F03,
> @@ -1281,7 +1200,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_F05,
>  	EXYNOS5420_GPIO_F06,
>  	EXYNOS5420_GPIO_F07,
> -	EXYNOS5420_GPIO_F10,		/* 240 0xf0 */
> +	EXYNOS5420_GPIO_F10,
>  	EXYNOS5420_GPIO_F11,
>  	EXYNOS5420_GPIO_F12,
>  	EXYNOS5420_GPIO_F13,
> @@ -1289,7 +1208,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_F15,
>  	EXYNOS5420_GPIO_F16,
>  	EXYNOS5420_GPIO_F17,
> -	EXYNOS5420_GPIO_G00,		/* 248 0xf8 */
> +	EXYNOS5420_GPIO_G00,
>  	EXYNOS5420_GPIO_G01,
>  	EXYNOS5420_GPIO_G02,
>  	EXYNOS5420_GPIO_G03,
> @@ -1297,7 +1216,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_G05,
>  	EXYNOS5420_GPIO_G06,
>  	EXYNOS5420_GPIO_G07,
> -	EXYNOS5420_GPIO_G10,		/* 256 0x100 */
> +	EXYNOS5420_GPIO_G10,
>  	EXYNOS5420_GPIO_G11,
>  	EXYNOS5420_GPIO_G12,
>  	EXYNOS5420_GPIO_G13,
> @@ -1305,7 +1224,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_G15,
>  	EXYNOS5420_GPIO_G16,
>  	EXYNOS5420_GPIO_G17,
> -	EXYNOS5420_GPIO_G20,		/* 264 0x108 */
> +	EXYNOS5420_GPIO_G20,
>  	EXYNOS5420_GPIO_G21,
>  	EXYNOS5420_GPIO_G22,
>  	EXYNOS5420_GPIO_G23,
> @@ -1313,7 +1232,7 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_G25,
>  	EXYNOS5420_GPIO_G26,
>  	EXYNOS5420_GPIO_G27,
> -	EXYNOS5420_GPIO_J40,		/* 272 0x110 */
> +	EXYNOS5420_GPIO_J40,
>  	EXYNOS5420_GPIO_J41,
>  	EXYNOS5420_GPIO_J42,
>  	EXYNOS5420_GPIO_J43,
> @@ -1322,15 +1241,89 @@ enum exynos5420_gpio_pin {
>  	EXYNOS5420_GPIO_J46,
>  	EXYNOS5420_GPIO_J47,
>  
> -	/* GPIO_PART6_STARTS */
> -	EXYNOS5420_GPIO_MAX_PORT_PART_5,/* 280 0x118 */
> -	EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_5,
> +	EXYNOS5420_GPIO_MAX_PORT_PART_3,
> +	EXYNOS5420_GPIO_A00 = EXYNOS5420_GPIO_MAX_PORT_PART_3,
> +	EXYNOS5420_GPIO_A01,
> +	EXYNOS5420_GPIO_A02,
> +	EXYNOS5420_GPIO_A03,
> +	EXYNOS5420_GPIO_A04,
> +	EXYNOS5420_GPIO_A05,
> +	EXYNOS5420_GPIO_A06,
> +	EXYNOS5420_GPIO_A07,
> +	EXYNOS5420_GPIO_A10,
> +	EXYNOS5420_GPIO_A11,
> +	EXYNOS5420_GPIO_A12,
> +	EXYNOS5420_GPIO_A13,
> +	EXYNOS5420_GPIO_A14,
> +	EXYNOS5420_GPIO_A15,
> +	EXYNOS5420_GPIO_A16,
> +	EXYNOS5420_GPIO_A17,
> +	EXYNOS5420_GPIO_A20,
> +	EXYNOS5420_GPIO_A21,
> +	EXYNOS5420_GPIO_A22,
> +	EXYNOS5420_GPIO_A23,
> +	EXYNOS5420_GPIO_A24,
> +	EXYNOS5420_GPIO_A25,
> +	EXYNOS5420_GPIO_A26,
> +	EXYNOS5420_GPIO_A27,
> +	EXYNOS5420_GPIO_B00,
> +	EXYNOS5420_GPIO_B01,
> +	EXYNOS5420_GPIO_B02,
> +	EXYNOS5420_GPIO_B03,
> +	EXYNOS5420_GPIO_B04,
> +	EXYNOS5420_GPIO_B05,
> +	EXYNOS5420_GPIO_B06,
> +	EXYNOS5420_GPIO_B07,
> +	EXYNOS5420_GPIO_B10,
> +	EXYNOS5420_GPIO_B11,
> +	EXYNOS5420_GPIO_B12,
> +	EXYNOS5420_GPIO_B13,
> +	EXYNOS5420_GPIO_B14,
> +	EXYNOS5420_GPIO_B15,
> +	EXYNOS5420_GPIO_B16,
> +	EXYNOS5420_GPIO_B17,
> +	EXYNOS5420_GPIO_B20,
> +	EXYNOS5420_GPIO_B21,
> +	EXYNOS5420_GPIO_B22,
> +	EXYNOS5420_GPIO_B23,
> +	EXYNOS5420_GPIO_B24,
> +	EXYNOS5420_GPIO_B25,
> +	EXYNOS5420_GPIO_B26,
> +	EXYNOS5420_GPIO_B27,
> +	EXYNOS5420_GPIO_B30,
> +	EXYNOS5420_GPIO_B31,
> +	EXYNOS5420_GPIO_B32,
> +	EXYNOS5420_GPIO_B33,
> +	EXYNOS5420_GPIO_B34,
> +	EXYNOS5420_GPIO_B35,
> +	EXYNOS5420_GPIO_B36,
> +	EXYNOS5420_GPIO_B37,
> +	EXYNOS5420_GPIO_B40,
> +	EXYNOS5420_GPIO_B41,
> +	EXYNOS5420_GPIO_B42,
> +	EXYNOS5420_GPIO_B43,
> +	EXYNOS5420_GPIO_B44,
> +	EXYNOS5420_GPIO_B45,
> +	EXYNOS5420_GPIO_B46,
> +	EXYNOS5420_GPIO_B47,
> +	EXYNOS5420_GPIO_H00,
> +	EXYNOS5420_GPIO_H01,
> +	EXYNOS5420_GPIO_H02,
> +	EXYNOS5420_GPIO_H03,
> +	EXYNOS5420_GPIO_H04,
> +	EXYNOS5420_GPIO_H05,
> +	EXYNOS5420_GPIO_H06,
> +	EXYNOS5420_GPIO_H07,
> +
> +	EXYNOS5420_GPIO_MAX_PORT_PART_4,
> +	EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_4,
>  	EXYNOS5420_GPIO_Z1,
>  	EXYNOS5420_GPIO_Z2,
>  	EXYNOS5420_GPIO_Z3,
>  	EXYNOS5420_GPIO_Z4,
>  	EXYNOS5420_GPIO_Z5,
>  	EXYNOS5420_GPIO_Z6,
> +
>  	EXYNOS5420_GPIO_MAX_PORT
>  };
>  
> @@ -1366,14 +1359,13 @@ static struct gpio_info exynos5_gpio_data[EXYNOS5_GPIO_NUM_PARTS] = {
>  	{ EXYNOS5_GPIO_PART8_BASE, EXYNOS5_GPIO_MAX_PORT },
>  };
>  
> -#define EXYNOS5420_GPIO_NUM_PARTS	6
> +#define EXYNOS5420_GPIO_NUM_PARTS	5
>  static struct gpio_info exynos5420_gpio_data[EXYNOS5420_GPIO_NUM_PARTS] = {
>  	{ EXYNOS5420_GPIO_PART1_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_1 },
>  	{ EXYNOS5420_GPIO_PART2_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_2 },
>  	{ EXYNOS5420_GPIO_PART3_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_3 },
>  	{ EXYNOS5420_GPIO_PART4_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_4 },
> -	{ EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_5 },
> -	{ EXYNOS5420_GPIO_PART6_BASE, EXYNOS5420_GPIO_MAX_PORT },
> +	{ EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT },
>  };
>  
>  static inline struct gpio_info *get_gpio_data(void)
> @@ -1486,17 +1478,17 @@ static const struct gpio_name_num_table exynos5_gpio_table[] = {
>  };
>  
>  static const struct gpio_name_num_table exynos5420_gpio_table[] = {
> -	GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0),
> -	GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0),
> -	GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Y70, 0),
>  	GPIO_ENTRY('x', EXYNOS5420_GPIO_X00, EXYNOS5420_GPIO_C00, 0),
>  	GPIO_ENTRY('c', EXYNOS5420_GPIO_C00, EXYNOS5420_GPIO_D10, 0),
> -	GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 010),
> +	GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 0),
>  	GPIO_ENTRY('y', EXYNOS5420_GPIO_Y00, EXYNOS5420_GPIO_E00, 0),
>  	GPIO_ENTRY('e', EXYNOS5420_GPIO_E00, EXYNOS5420_GPIO_F00, 0),
>  	GPIO_ENTRY('f', EXYNOS5420_GPIO_F00, EXYNOS5420_GPIO_G00, 0),
>  	GPIO_ENTRY('g', EXYNOS5420_GPIO_G00, EXYNOS5420_GPIO_J40, 0),
> -	GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_Z0, 040),
> +	GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_A00, 0),
> +	GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0),
> +	GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0),
> +	GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Z0, 0),
>  	GPIO_ENTRY('z', EXYNOS5420_GPIO_Z0, EXYNOS5420_GPIO_MAX_PORT, 0),
>  	{ 0 }
>  };
>
Hyungwon Hwang Nov. 4, 2014, 5:13 a.m. UTC | #2
Dear Jaehoon Chung,

On Tue, 04 Nov 2014 13:51:04 +0900
Jaehoon Chung <jh80.chung@samsung.com> wrote:

> On 10/31/2014 09:08 PM, Hyungwon Hwang wrote:
> > This patch fixes wrong GPIO information such as GPIO bank, table which is
> > used to convert GPIO name to index, bank base address, and etc.
> > 
> > Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
> > ---
> >  arch/arm/include/asm/arch-exynos/cpu.h  |  11 +-
> >  arch/arm/include/asm/arch-exynos/gpio.h | 232
> > +++++++++++++++----------------- 2 files changed, 117 insertions(+), 126
> > deletions(-)
> > 
> > diff --git a/arch/arm/include/asm/arch-exynos/cpu.h
> > b/arch/arm/include/asm/arch-exynos/cpu.h index 7c5c4ff..da4ac6b 100644
> > --- a/arch/arm/include/asm/arch-exynos/cpu.h
> > +++ b/arch/arm/include/asm/arch-exynos/cpu.h
> > @@ -139,7 +139,7 @@
> >  
> >  /* EXYNOS5420 */
> >  #define EXYNOS5420_AUDIOSS_BASE		0x03810000
> > -#define EXYNOS5420_GPIO_PART6_BASE	0x03860000
> > +#define EXYNOS5420_GPIO_PART5_BASE	0x03860000
> >  #define EXYNOS5420_PRO_ID		0x10000000
> >  #define EXYNOS5420_CLOCK_BASE		0x10010000
> >  #define EXYNOS5420_POWER_BASE		0x10040000
> > @@ -161,11 +161,10 @@
> >  #define EXYNOS5420_I2S_BASE		0x12D60000
> >  #define EXYNOS5420_PWMTIMER_BASE	0x12DD0000
> >  #define EXYNOS5420_SPI_ISP_BASE		0x131A0000
> > -#define EXYNOS5420_GPIO_PART2_BASE	0x13400000
> > -#define EXYNOS5420_GPIO_PART3_BASE	0x13400C00
> > -#define EXYNOS5420_GPIO_PART4_BASE	0x13410000
> > -#define EXYNOS5420_GPIO_PART5_BASE	0x14000000
> > -#define EXYNOS5420_GPIO_PART1_BASE	0x14010000
> > +#define EXYNOS5420_GPIO_PART1_BASE	0x13400000
> > +#define EXYNOS5420_GPIO_PART2_BASE	0x13410000
> > +#define EXYNOS5420_GPIO_PART3_BASE	0x14000000
> > +#define EXYNOS5420_GPIO_PART4_BASE	0x14010000
> >  #define EXYNOS5420_MIPI_DSIM_BASE	0x14500000
> >  #define EXYNOS5420_DP_BASE		0x145B0000
> 
> What's wrong? It's sorted from A to Z.(GPA ~ GPZ)
> 

As I analyzed the code (gpio_set_value() in drivers/gpio/s5p_gpio.c) the GPIO
must not be sorted by alphabetically, but be done by the address of them. Isn't
it?

> Best Regards,
> Jaehoon Chung
> >  
> > diff --git a/arch/arm/include/asm/arch-exynos/gpio.h
> > b/arch/arm/include/asm/arch-exynos/gpio.h index 32e045a..431ae3a 100644
> > --- a/arch/arm/include/asm/arch-exynos/gpio.h
> > +++ b/arch/arm/include/asm/arch-exynos/gpio.h
> > @@ -1028,83 +1028,7 @@ enum exynos5_gpio_pin {
> >  };
> >  
> >  enum exynos5420_gpio_pin {
> > -	/* GPIO_PART1_STARTS */
> > -	EXYNOS5420_GPIO_A00,		/* 0 */
> > -	EXYNOS5420_GPIO_A01,
> > -	EXYNOS5420_GPIO_A02,
> > -	EXYNOS5420_GPIO_A03,
> > -	EXYNOS5420_GPIO_A04,
> > -	EXYNOS5420_GPIO_A05,
> > -	EXYNOS5420_GPIO_A06,
> > -	EXYNOS5420_GPIO_A07,
> > -	EXYNOS5420_GPIO_A10,		/* 8 */
> > -	EXYNOS5420_GPIO_A11,
> > -	EXYNOS5420_GPIO_A12,
> > -	EXYNOS5420_GPIO_A13,
> > -	EXYNOS5420_GPIO_A14,
> > -	EXYNOS5420_GPIO_A15,
> > -	EXYNOS5420_GPIO_A16,
> > -	EXYNOS5420_GPIO_A17,
> > -	EXYNOS5420_GPIO_A20,		/* 16 0x10 */
> > -	EXYNOS5420_GPIO_A21,
> > -	EXYNOS5420_GPIO_A22,
> > -	EXYNOS5420_GPIO_A23,
> > -	EXYNOS5420_GPIO_A24,
> > -	EXYNOS5420_GPIO_A25,
> > -	EXYNOS5420_GPIO_A26,
> > -	EXYNOS5420_GPIO_A27,
> > -	EXYNOS5420_GPIO_B00,		/* 24 0x18 */
> > -	EXYNOS5420_GPIO_B01,
> > -	EXYNOS5420_GPIO_B02,
> > -	EXYNOS5420_GPIO_B03,
> > -	EXYNOS5420_GPIO_B04,
> > -	EXYNOS5420_GPIO_B05,
> > -	EXYNOS5420_GPIO_B06,
> > -	EXYNOS5420_GPIO_B07,
> > -	EXYNOS5420_GPIO_B10,		/* 32 0x20 */
> > -	EXYNOS5420_GPIO_B11,
> > -	EXYNOS5420_GPIO_B12,
> > -	EXYNOS5420_GPIO_B13,
> > -	EXYNOS5420_GPIO_B14,
> > -	EXYNOS5420_GPIO_B15,
> > -	EXYNOS5420_GPIO_B16,
> > -	EXYNOS5420_GPIO_B17,
> > -	EXYNOS5420_GPIO_B20,		/* 40 0x28 */
> > -	EXYNOS5420_GPIO_B21,
> > -	EXYNOS5420_GPIO_B22,
> > -	EXYNOS5420_GPIO_B23,
> > -	EXYNOS5420_GPIO_B24,
> > -	EXYNOS5420_GPIO_B25,
> > -	EXYNOS5420_GPIO_B26,
> > -	EXYNOS5420_GPIO_B27,
> > -	EXYNOS5420_GPIO_B30,		/* 48 0x30 */
> > -	EXYNOS5420_GPIO_B31,
> > -	EXYNOS5420_GPIO_B32,
> > -	EXYNOS5420_GPIO_B33,
> > -	EXYNOS5420_GPIO_B34,
> > -	EXYNOS5420_GPIO_B35,
> > -	EXYNOS5420_GPIO_B36,
> > -	EXYNOS5420_GPIO_B37,
> > -	EXYNOS5420_GPIO_B40,		/* 56 0x38 */
> > -	EXYNOS5420_GPIO_B41,
> > -	EXYNOS5420_GPIO_B42,
> > -	EXYNOS5420_GPIO_B43,
> > -	EXYNOS5420_GPIO_B44,
> > -	EXYNOS5420_GPIO_B45,
> > -	EXYNOS5420_GPIO_B46,
> > -	EXYNOS5420_GPIO_B47,
> > -	EXYNOS5420_GPIO_H00,		/* 64 0x40 */
> > -	EXYNOS5420_GPIO_H01,
> > -	EXYNOS5420_GPIO_H02,
> > -	EXYNOS5420_GPIO_H03,
> > -	EXYNOS5420_GPIO_H04,
> > -	EXYNOS5420_GPIO_H05,
> > -	EXYNOS5420_GPIO_H06,
> > -	EXYNOS5420_GPIO_H07,
> > -
> > -	/* GPIO PART 2 STARTS*/
> > -	EXYNOS5420_GPIO_MAX_PORT_PART_1,/* 72 0x48 */
> > -	EXYNOS5420_GPIO_Y70 = EXYNOS5420_GPIO_MAX_PORT_PART_1,
> > +	EXYNOS5420_GPIO_Y70,
> >  	EXYNOS5420_GPIO_Y71,
> >  	EXYNOS5420_GPIO_Y72,
> >  	EXYNOS5420_GPIO_Y73,
> > @@ -1112,10 +1036,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_Y75,
> >  	EXYNOS5420_GPIO_Y76,
> >  	EXYNOS5420_GPIO_Y77,
> > -
> > -	/* GPIO PART 3 STARTS*/
> > -	EXYNOS5420_GPIO_MAX_PORT_PART_2,/* 80 0x50 */
> > -	EXYNOS5420_GPIO_X00 = EXYNOS5420_GPIO_MAX_PORT_PART_2,
> > +	EXYNOS5420_GPIO_X00,
> >  	EXYNOS5420_GPIO_X01,
> >  	EXYNOS5420_GPIO_X02,
> >  	EXYNOS5420_GPIO_X03,
> > @@ -1123,7 +1044,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_X05,
> >  	EXYNOS5420_GPIO_X06,
> >  	EXYNOS5420_GPIO_X07,
> > -	EXYNOS5420_GPIO_X10,		/* 88 0x58 */
> > +	EXYNOS5420_GPIO_X10,
> >  	EXYNOS5420_GPIO_X11,
> >  	EXYNOS5420_GPIO_X12,
> >  	EXYNOS5420_GPIO_X13,
> > @@ -1131,7 +1052,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_X15,
> >  	EXYNOS5420_GPIO_X16,
> >  	EXYNOS5420_GPIO_X17,
> > -	EXYNOS5420_GPIO_X20,		/* 96 0x60 */
> > +	EXYNOS5420_GPIO_X20,
> >  	EXYNOS5420_GPIO_X21,
> >  	EXYNOS5420_GPIO_X22,
> >  	EXYNOS5420_GPIO_X23,
> > @@ -1139,7 +1060,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_X25,
> >  	EXYNOS5420_GPIO_X26,
> >  	EXYNOS5420_GPIO_X27,
> > -	EXYNOS5420_GPIO_X30,		/* 104 0x68 */
> > +	EXYNOS5420_GPIO_X30,
> >  	EXYNOS5420_GPIO_X31,
> >  	EXYNOS5420_GPIO_X32,
> >  	EXYNOS5420_GPIO_X33,
> > @@ -1148,9 +1069,8 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_X36,
> >  	EXYNOS5420_GPIO_X37,
> >  
> > -	/* GPIO PART 4 STARTS*/
> > -	EXYNOS5420_GPIO_MAX_PORT_PART_3,/* 112 0x70 */
> > -	EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_3,
> > +	EXYNOS5420_GPIO_MAX_PORT_PART_1,
> > +	EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_1,
> >  	EXYNOS5420_GPIO_C01,
> >  	EXYNOS5420_GPIO_C02,
> >  	EXYNOS5420_GPIO_C03,
> > @@ -1158,7 +1078,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_C05,
> >  	EXYNOS5420_GPIO_C06,
> >  	EXYNOS5420_GPIO_C07,
> > -	EXYNOS5420_GPIO_C10,		/* 120 0x78 */
> > +	EXYNOS5420_GPIO_C10,
> >  	EXYNOS5420_GPIO_C11,
> >  	EXYNOS5420_GPIO_C12,
> >  	EXYNOS5420_GPIO_C13,
> > @@ -1166,7 +1086,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_C15,
> >  	EXYNOS5420_GPIO_C16,
> >  	EXYNOS5420_GPIO_C17,
> > -	EXYNOS5420_GPIO_C20,		/* 128 0x80 */
> > +	EXYNOS5420_GPIO_C20,
> >  	EXYNOS5420_GPIO_C21,
> >  	EXYNOS5420_GPIO_C22,
> >  	EXYNOS5420_GPIO_C23,
> > @@ -1174,7 +1094,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_C25,
> >  	EXYNOS5420_GPIO_C26,
> >  	EXYNOS5420_GPIO_C27,
> > -	EXYNOS5420_GPIO_C30,		/* 136 0x88 */
> > +	EXYNOS5420_GPIO_C30,
> >  	EXYNOS5420_GPIO_C31,
> >  	EXYNOS5420_GPIO_C32,
> >  	EXYNOS5420_GPIO_C33,
> > @@ -1182,7 +1102,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_C35,
> >  	EXYNOS5420_GPIO_C36,
> >  	EXYNOS5420_GPIO_C37,
> > -	EXYNOS5420_GPIO_C40,		/* 144 0x90 */
> > +	EXYNOS5420_GPIO_C40,
> >  	EXYNOS5420_GPIO_C41,
> >  	EXYNOS5420_GPIO_C42,
> >  	EXYNOS5420_GPIO_C43,
> > @@ -1190,7 +1110,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_C45,
> >  	EXYNOS5420_GPIO_C46,
> >  	EXYNOS5420_GPIO_C47,
> > -	EXYNOS5420_GPIO_D10,		/* 152 0x98 */
> > +	EXYNOS5420_GPIO_D10,
> >  	EXYNOS5420_GPIO_D11,
> >  	EXYNOS5420_GPIO_D12,
> >  	EXYNOS5420_GPIO_D13,
> > @@ -1198,7 +1118,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_D15,
> >  	EXYNOS5420_GPIO_D16,
> >  	EXYNOS5420_GPIO_D17,
> > -	EXYNOS5420_GPIO_Y00,		/* 160 0xa0 */
> > +	EXYNOS5420_GPIO_Y00,
> >  	EXYNOS5420_GPIO_Y01,
> >  	EXYNOS5420_GPIO_Y02,
> >  	EXYNOS5420_GPIO_Y03,
> > @@ -1206,7 +1126,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_Y05,
> >  	EXYNOS5420_GPIO_Y06,
> >  	EXYNOS5420_GPIO_Y07,
> > -	EXYNOS5420_GPIO_Y10,		/* 168 0xa8 */
> > +	EXYNOS5420_GPIO_Y10,
> >  	EXYNOS5420_GPIO_Y11,
> >  	EXYNOS5420_GPIO_Y12,
> >  	EXYNOS5420_GPIO_Y13,
> > @@ -1214,7 +1134,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_Y15,
> >  	EXYNOS5420_GPIO_Y16,
> >  	EXYNOS5420_GPIO_Y17,
> > -	EXYNOS5420_GPIO_Y20,		/* 176 0xb0 */
> > +	EXYNOS5420_GPIO_Y20,
> >  	EXYNOS5420_GPIO_Y21,
> >  	EXYNOS5420_GPIO_Y22,
> >  	EXYNOS5420_GPIO_Y23,
> > @@ -1222,7 +1142,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_Y25,
> >  	EXYNOS5420_GPIO_Y26,
> >  	EXYNOS5420_GPIO_Y27,
> > -	EXYNOS5420_GPIO_Y30,		/* 184 0xb8 */
> > +	EXYNOS5420_GPIO_Y30,
> >  	EXYNOS5420_GPIO_Y31,
> >  	EXYNOS5420_GPIO_Y32,
> >  	EXYNOS5420_GPIO_Y33,
> > @@ -1230,7 +1150,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_Y35,
> >  	EXYNOS5420_GPIO_Y36,
> >  	EXYNOS5420_GPIO_Y37,
> > -	EXYNOS5420_GPIO_Y40,		/* 192 0xc0 */
> > +	EXYNOS5420_GPIO_Y40,
> >  	EXYNOS5420_GPIO_Y41,
> >  	EXYNOS5420_GPIO_Y42,
> >  	EXYNOS5420_GPIO_Y43,
> > @@ -1238,7 +1158,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_Y45,
> >  	EXYNOS5420_GPIO_Y46,
> >  	EXYNOS5420_GPIO_Y47,
> > -	EXYNOS5420_GPIO_Y50,		/* 200 0xc8 */
> > +	EXYNOS5420_GPIO_Y50,
> >  	EXYNOS5420_GPIO_Y51,
> >  	EXYNOS5420_GPIO_Y52,
> >  	EXYNOS5420_GPIO_Y53,
> > @@ -1246,7 +1166,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_Y55,
> >  	EXYNOS5420_GPIO_Y56,
> >  	EXYNOS5420_GPIO_Y57,
> > -	EXYNOS5420_GPIO_Y60,		/* 208 0xd0 */
> > +	EXYNOS5420_GPIO_Y60,
> >  	EXYNOS5420_GPIO_Y61,
> >  	EXYNOS5420_GPIO_Y62,
> >  	EXYNOS5420_GPIO_Y63,
> > @@ -1255,9 +1175,8 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_Y66,
> >  	EXYNOS5420_GPIO_Y67,
> >  
> > -	/* GPIO_PART5_STARTS */
> > -	EXYNOS5420_GPIO_MAX_PORT_PART_4,/* 216 0xd8 */
> > -	EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_4,
> > +	EXYNOS5420_GPIO_MAX_PORT_PART_2,
> > +	EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_2,
> >  	EXYNOS5420_GPIO_E01,
> >  	EXYNOS5420_GPIO_E02,
> >  	EXYNOS5420_GPIO_E03,
> > @@ -1265,7 +1184,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_E05,
> >  	EXYNOS5420_GPIO_E06,
> >  	EXYNOS5420_GPIO_E07,
> > -	EXYNOS5420_GPIO_E10,		/* 224 0xe0 */
> > +	EXYNOS5420_GPIO_E10,
> >  	EXYNOS5420_GPIO_E11,
> >  	EXYNOS5420_GPIO_E12,
> >  	EXYNOS5420_GPIO_E13,
> > @@ -1273,7 +1192,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_E15,
> >  	EXYNOS5420_GPIO_E16,
> >  	EXYNOS5420_GPIO_E17,
> > -	EXYNOS5420_GPIO_F00,		/* 232 0xe8 */
> > +	EXYNOS5420_GPIO_F00,
> >  	EXYNOS5420_GPIO_F01,
> >  	EXYNOS5420_GPIO_F02,
> >  	EXYNOS5420_GPIO_F03,
> > @@ -1281,7 +1200,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_F05,
> >  	EXYNOS5420_GPIO_F06,
> >  	EXYNOS5420_GPIO_F07,
> > -	EXYNOS5420_GPIO_F10,		/* 240 0xf0 */
> > +	EXYNOS5420_GPIO_F10,
> >  	EXYNOS5420_GPIO_F11,
> >  	EXYNOS5420_GPIO_F12,
> >  	EXYNOS5420_GPIO_F13,
> > @@ -1289,7 +1208,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_F15,
> >  	EXYNOS5420_GPIO_F16,
> >  	EXYNOS5420_GPIO_F17,
> > -	EXYNOS5420_GPIO_G00,		/* 248 0xf8 */
> > +	EXYNOS5420_GPIO_G00,
> >  	EXYNOS5420_GPIO_G01,
> >  	EXYNOS5420_GPIO_G02,
> >  	EXYNOS5420_GPIO_G03,
> > @@ -1297,7 +1216,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_G05,
> >  	EXYNOS5420_GPIO_G06,
> >  	EXYNOS5420_GPIO_G07,
> > -	EXYNOS5420_GPIO_G10,		/* 256 0x100 */
> > +	EXYNOS5420_GPIO_G10,
> >  	EXYNOS5420_GPIO_G11,
> >  	EXYNOS5420_GPIO_G12,
> >  	EXYNOS5420_GPIO_G13,
> > @@ -1305,7 +1224,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_G15,
> >  	EXYNOS5420_GPIO_G16,
> >  	EXYNOS5420_GPIO_G17,
> > -	EXYNOS5420_GPIO_G20,		/* 264 0x108 */
> > +	EXYNOS5420_GPIO_G20,
> >  	EXYNOS5420_GPIO_G21,
> >  	EXYNOS5420_GPIO_G22,
> >  	EXYNOS5420_GPIO_G23,
> > @@ -1313,7 +1232,7 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_G25,
> >  	EXYNOS5420_GPIO_G26,
> >  	EXYNOS5420_GPIO_G27,
> > -	EXYNOS5420_GPIO_J40,		/* 272 0x110 */
> > +	EXYNOS5420_GPIO_J40,
> >  	EXYNOS5420_GPIO_J41,
> >  	EXYNOS5420_GPIO_J42,
> >  	EXYNOS5420_GPIO_J43,
> > @@ -1322,15 +1241,89 @@ enum exynos5420_gpio_pin {
> >  	EXYNOS5420_GPIO_J46,
> >  	EXYNOS5420_GPIO_J47,
> >  
> > -	/* GPIO_PART6_STARTS */
> > -	EXYNOS5420_GPIO_MAX_PORT_PART_5,/* 280 0x118 */
> > -	EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_5,
> > +	EXYNOS5420_GPIO_MAX_PORT_PART_3,
> > +	EXYNOS5420_GPIO_A00 = EXYNOS5420_GPIO_MAX_PORT_PART_3,
> > +	EXYNOS5420_GPIO_A01,
> > +	EXYNOS5420_GPIO_A02,
> > +	EXYNOS5420_GPIO_A03,
> > +	EXYNOS5420_GPIO_A04,
> > +	EXYNOS5420_GPIO_A05,
> > +	EXYNOS5420_GPIO_A06,
> > +	EXYNOS5420_GPIO_A07,
> > +	EXYNOS5420_GPIO_A10,
> > +	EXYNOS5420_GPIO_A11,
> > +	EXYNOS5420_GPIO_A12,
> > +	EXYNOS5420_GPIO_A13,
> > +	EXYNOS5420_GPIO_A14,
> > +	EXYNOS5420_GPIO_A15,
> > +	EXYNOS5420_GPIO_A16,
> > +	EXYNOS5420_GPIO_A17,
> > +	EXYNOS5420_GPIO_A20,
> > +	EXYNOS5420_GPIO_A21,
> > +	EXYNOS5420_GPIO_A22,
> > +	EXYNOS5420_GPIO_A23,
> > +	EXYNOS5420_GPIO_A24,
> > +	EXYNOS5420_GPIO_A25,
> > +	EXYNOS5420_GPIO_A26,
> > +	EXYNOS5420_GPIO_A27,
> > +	EXYNOS5420_GPIO_B00,
> > +	EXYNOS5420_GPIO_B01,
> > +	EXYNOS5420_GPIO_B02,
> > +	EXYNOS5420_GPIO_B03,
> > +	EXYNOS5420_GPIO_B04,
> > +	EXYNOS5420_GPIO_B05,
> > +	EXYNOS5420_GPIO_B06,
> > +	EXYNOS5420_GPIO_B07,
> > +	EXYNOS5420_GPIO_B10,
> > +	EXYNOS5420_GPIO_B11,
> > +	EXYNOS5420_GPIO_B12,
> > +	EXYNOS5420_GPIO_B13,
> > +	EXYNOS5420_GPIO_B14,
> > +	EXYNOS5420_GPIO_B15,
> > +	EXYNOS5420_GPIO_B16,
> > +	EXYNOS5420_GPIO_B17,
> > +	EXYNOS5420_GPIO_B20,
> > +	EXYNOS5420_GPIO_B21,
> > +	EXYNOS5420_GPIO_B22,
> > +	EXYNOS5420_GPIO_B23,
> > +	EXYNOS5420_GPIO_B24,
> > +	EXYNOS5420_GPIO_B25,
> > +	EXYNOS5420_GPIO_B26,
> > +	EXYNOS5420_GPIO_B27,
> > +	EXYNOS5420_GPIO_B30,
> > +	EXYNOS5420_GPIO_B31,
> > +	EXYNOS5420_GPIO_B32,
> > +	EXYNOS5420_GPIO_B33,
> > +	EXYNOS5420_GPIO_B34,
> > +	EXYNOS5420_GPIO_B35,
> > +	EXYNOS5420_GPIO_B36,
> > +	EXYNOS5420_GPIO_B37,
> > +	EXYNOS5420_GPIO_B40,
> > +	EXYNOS5420_GPIO_B41,
> > +	EXYNOS5420_GPIO_B42,
> > +	EXYNOS5420_GPIO_B43,
> > +	EXYNOS5420_GPIO_B44,
> > +	EXYNOS5420_GPIO_B45,
> > +	EXYNOS5420_GPIO_B46,
> > +	EXYNOS5420_GPIO_B47,
> > +	EXYNOS5420_GPIO_H00,
> > +	EXYNOS5420_GPIO_H01,
> > +	EXYNOS5420_GPIO_H02,
> > +	EXYNOS5420_GPIO_H03,
> > +	EXYNOS5420_GPIO_H04,
> > +	EXYNOS5420_GPIO_H05,
> > +	EXYNOS5420_GPIO_H06,
> > +	EXYNOS5420_GPIO_H07,
> > +
> > +	EXYNOS5420_GPIO_MAX_PORT_PART_4,
> > +	EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_4,
> >  	EXYNOS5420_GPIO_Z1,
> >  	EXYNOS5420_GPIO_Z2,
> >  	EXYNOS5420_GPIO_Z3,
> >  	EXYNOS5420_GPIO_Z4,
> >  	EXYNOS5420_GPIO_Z5,
> >  	EXYNOS5420_GPIO_Z6,
> > +
> >  	EXYNOS5420_GPIO_MAX_PORT
> >  };
> >  
> > @@ -1366,14 +1359,13 @@ static struct gpio_info
> > exynos5_gpio_data[EXYNOS5_GPIO_NUM_PARTS] = { { EXYNOS5_GPIO_PART8_BASE,
> > EXYNOS5_GPIO_MAX_PORT }, };
> >  
> > -#define EXYNOS5420_GPIO_NUM_PARTS	6
> > +#define EXYNOS5420_GPIO_NUM_PARTS	5
> >  static struct gpio_info exynos5420_gpio_data[EXYNOS5420_GPIO_NUM_PARTS] = {
> >  	{ EXYNOS5420_GPIO_PART1_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_1 },
> >  	{ EXYNOS5420_GPIO_PART2_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_2 },
> >  	{ EXYNOS5420_GPIO_PART3_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_3 },
> >  	{ EXYNOS5420_GPIO_PART4_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_4 },
> > -	{ EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_5 },
> > -	{ EXYNOS5420_GPIO_PART6_BASE, EXYNOS5420_GPIO_MAX_PORT },
> > +	{ EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT },
> >  };
> >  
> >  static inline struct gpio_info *get_gpio_data(void)
> > @@ -1486,17 +1478,17 @@ static const struct gpio_name_num_table
> > exynos5_gpio_table[] = { };
> >  
> >  static const struct gpio_name_num_table exynos5420_gpio_table[] = {
> > -	GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0),
> > -	GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0),
> > -	GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Y70, 0),
> >  	GPIO_ENTRY('x', EXYNOS5420_GPIO_X00, EXYNOS5420_GPIO_C00, 0),
> >  	GPIO_ENTRY('c', EXYNOS5420_GPIO_C00, EXYNOS5420_GPIO_D10, 0),
> > -	GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 010),
> > +	GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 0),
> >  	GPIO_ENTRY('y', EXYNOS5420_GPIO_Y00, EXYNOS5420_GPIO_E00, 0),
> >  	GPIO_ENTRY('e', EXYNOS5420_GPIO_E00, EXYNOS5420_GPIO_F00, 0),
> >  	GPIO_ENTRY('f', EXYNOS5420_GPIO_F00, EXYNOS5420_GPIO_G00, 0),
> >  	GPIO_ENTRY('g', EXYNOS5420_GPIO_G00, EXYNOS5420_GPIO_J40, 0),
> > -	GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_Z0, 040),
> > +	GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_A00, 0),
> > +	GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0),
> > +	GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0),
> > +	GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Z0, 0),
> >  	GPIO_ENTRY('z', EXYNOS5420_GPIO_Z0, EXYNOS5420_GPIO_MAX_PORT, 0),
> >  	{ 0 }
> >  };
> > 
> 

Best regards,
Hyungwon Hwang
diff mbox

Patch

diff --git a/arch/arm/include/asm/arch-exynos/cpu.h b/arch/arm/include/asm/arch-exynos/cpu.h
index 7c5c4ff..da4ac6b 100644
--- a/arch/arm/include/asm/arch-exynos/cpu.h
+++ b/arch/arm/include/asm/arch-exynos/cpu.h
@@ -139,7 +139,7 @@ 
 
 /* EXYNOS5420 */
 #define EXYNOS5420_AUDIOSS_BASE		0x03810000
-#define EXYNOS5420_GPIO_PART6_BASE	0x03860000
+#define EXYNOS5420_GPIO_PART5_BASE	0x03860000
 #define EXYNOS5420_PRO_ID		0x10000000
 #define EXYNOS5420_CLOCK_BASE		0x10010000
 #define EXYNOS5420_POWER_BASE		0x10040000
@@ -161,11 +161,10 @@ 
 #define EXYNOS5420_I2S_BASE		0x12D60000
 #define EXYNOS5420_PWMTIMER_BASE	0x12DD0000
 #define EXYNOS5420_SPI_ISP_BASE		0x131A0000
-#define EXYNOS5420_GPIO_PART2_BASE	0x13400000
-#define EXYNOS5420_GPIO_PART3_BASE	0x13400C00
-#define EXYNOS5420_GPIO_PART4_BASE	0x13410000
-#define EXYNOS5420_GPIO_PART5_BASE	0x14000000
-#define EXYNOS5420_GPIO_PART1_BASE	0x14010000
+#define EXYNOS5420_GPIO_PART1_BASE	0x13400000
+#define EXYNOS5420_GPIO_PART2_BASE	0x13410000
+#define EXYNOS5420_GPIO_PART3_BASE	0x14000000
+#define EXYNOS5420_GPIO_PART4_BASE	0x14010000
 #define EXYNOS5420_MIPI_DSIM_BASE	0x14500000
 #define EXYNOS5420_DP_BASE		0x145B0000
 
diff --git a/arch/arm/include/asm/arch-exynos/gpio.h b/arch/arm/include/asm/arch-exynos/gpio.h
index 32e045a..431ae3a 100644
--- a/arch/arm/include/asm/arch-exynos/gpio.h
+++ b/arch/arm/include/asm/arch-exynos/gpio.h
@@ -1028,83 +1028,7 @@  enum exynos5_gpio_pin {
 };
 
 enum exynos5420_gpio_pin {
-	/* GPIO_PART1_STARTS */
-	EXYNOS5420_GPIO_A00,		/* 0 */
-	EXYNOS5420_GPIO_A01,
-	EXYNOS5420_GPIO_A02,
-	EXYNOS5420_GPIO_A03,
-	EXYNOS5420_GPIO_A04,
-	EXYNOS5420_GPIO_A05,
-	EXYNOS5420_GPIO_A06,
-	EXYNOS5420_GPIO_A07,
-	EXYNOS5420_GPIO_A10,		/* 8 */
-	EXYNOS5420_GPIO_A11,
-	EXYNOS5420_GPIO_A12,
-	EXYNOS5420_GPIO_A13,
-	EXYNOS5420_GPIO_A14,
-	EXYNOS5420_GPIO_A15,
-	EXYNOS5420_GPIO_A16,
-	EXYNOS5420_GPIO_A17,
-	EXYNOS5420_GPIO_A20,		/* 16 0x10 */
-	EXYNOS5420_GPIO_A21,
-	EXYNOS5420_GPIO_A22,
-	EXYNOS5420_GPIO_A23,
-	EXYNOS5420_GPIO_A24,
-	EXYNOS5420_GPIO_A25,
-	EXYNOS5420_GPIO_A26,
-	EXYNOS5420_GPIO_A27,
-	EXYNOS5420_GPIO_B00,		/* 24 0x18 */
-	EXYNOS5420_GPIO_B01,
-	EXYNOS5420_GPIO_B02,
-	EXYNOS5420_GPIO_B03,
-	EXYNOS5420_GPIO_B04,
-	EXYNOS5420_GPIO_B05,
-	EXYNOS5420_GPIO_B06,
-	EXYNOS5420_GPIO_B07,
-	EXYNOS5420_GPIO_B10,		/* 32 0x20 */
-	EXYNOS5420_GPIO_B11,
-	EXYNOS5420_GPIO_B12,
-	EXYNOS5420_GPIO_B13,
-	EXYNOS5420_GPIO_B14,
-	EXYNOS5420_GPIO_B15,
-	EXYNOS5420_GPIO_B16,
-	EXYNOS5420_GPIO_B17,
-	EXYNOS5420_GPIO_B20,		/* 40 0x28 */
-	EXYNOS5420_GPIO_B21,
-	EXYNOS5420_GPIO_B22,
-	EXYNOS5420_GPIO_B23,
-	EXYNOS5420_GPIO_B24,
-	EXYNOS5420_GPIO_B25,
-	EXYNOS5420_GPIO_B26,
-	EXYNOS5420_GPIO_B27,
-	EXYNOS5420_GPIO_B30,		/* 48 0x30 */
-	EXYNOS5420_GPIO_B31,
-	EXYNOS5420_GPIO_B32,
-	EXYNOS5420_GPIO_B33,
-	EXYNOS5420_GPIO_B34,
-	EXYNOS5420_GPIO_B35,
-	EXYNOS5420_GPIO_B36,
-	EXYNOS5420_GPIO_B37,
-	EXYNOS5420_GPIO_B40,		/* 56 0x38 */
-	EXYNOS5420_GPIO_B41,
-	EXYNOS5420_GPIO_B42,
-	EXYNOS5420_GPIO_B43,
-	EXYNOS5420_GPIO_B44,
-	EXYNOS5420_GPIO_B45,
-	EXYNOS5420_GPIO_B46,
-	EXYNOS5420_GPIO_B47,
-	EXYNOS5420_GPIO_H00,		/* 64 0x40 */
-	EXYNOS5420_GPIO_H01,
-	EXYNOS5420_GPIO_H02,
-	EXYNOS5420_GPIO_H03,
-	EXYNOS5420_GPIO_H04,
-	EXYNOS5420_GPIO_H05,
-	EXYNOS5420_GPIO_H06,
-	EXYNOS5420_GPIO_H07,
-
-	/* GPIO PART 2 STARTS*/
-	EXYNOS5420_GPIO_MAX_PORT_PART_1,/* 72 0x48 */
-	EXYNOS5420_GPIO_Y70 = EXYNOS5420_GPIO_MAX_PORT_PART_1,
+	EXYNOS5420_GPIO_Y70,
 	EXYNOS5420_GPIO_Y71,
 	EXYNOS5420_GPIO_Y72,
 	EXYNOS5420_GPIO_Y73,
@@ -1112,10 +1036,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_Y75,
 	EXYNOS5420_GPIO_Y76,
 	EXYNOS5420_GPIO_Y77,
-
-	/* GPIO PART 3 STARTS*/
-	EXYNOS5420_GPIO_MAX_PORT_PART_2,/* 80 0x50 */
-	EXYNOS5420_GPIO_X00 = EXYNOS5420_GPIO_MAX_PORT_PART_2,
+	EXYNOS5420_GPIO_X00,
 	EXYNOS5420_GPIO_X01,
 	EXYNOS5420_GPIO_X02,
 	EXYNOS5420_GPIO_X03,
@@ -1123,7 +1044,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_X05,
 	EXYNOS5420_GPIO_X06,
 	EXYNOS5420_GPIO_X07,
-	EXYNOS5420_GPIO_X10,		/* 88 0x58 */
+	EXYNOS5420_GPIO_X10,
 	EXYNOS5420_GPIO_X11,
 	EXYNOS5420_GPIO_X12,
 	EXYNOS5420_GPIO_X13,
@@ -1131,7 +1052,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_X15,
 	EXYNOS5420_GPIO_X16,
 	EXYNOS5420_GPIO_X17,
-	EXYNOS5420_GPIO_X20,		/* 96 0x60 */
+	EXYNOS5420_GPIO_X20,
 	EXYNOS5420_GPIO_X21,
 	EXYNOS5420_GPIO_X22,
 	EXYNOS5420_GPIO_X23,
@@ -1139,7 +1060,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_X25,
 	EXYNOS5420_GPIO_X26,
 	EXYNOS5420_GPIO_X27,
-	EXYNOS5420_GPIO_X30,		/* 104 0x68 */
+	EXYNOS5420_GPIO_X30,
 	EXYNOS5420_GPIO_X31,
 	EXYNOS5420_GPIO_X32,
 	EXYNOS5420_GPIO_X33,
@@ -1148,9 +1069,8 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_X36,
 	EXYNOS5420_GPIO_X37,
 
-	/* GPIO PART 4 STARTS*/
-	EXYNOS5420_GPIO_MAX_PORT_PART_3,/* 112 0x70 */
-	EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_3,
+	EXYNOS5420_GPIO_MAX_PORT_PART_1,
+	EXYNOS5420_GPIO_C00 = EXYNOS5420_GPIO_MAX_PORT_PART_1,
 	EXYNOS5420_GPIO_C01,
 	EXYNOS5420_GPIO_C02,
 	EXYNOS5420_GPIO_C03,
@@ -1158,7 +1078,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_C05,
 	EXYNOS5420_GPIO_C06,
 	EXYNOS5420_GPIO_C07,
-	EXYNOS5420_GPIO_C10,		/* 120 0x78 */
+	EXYNOS5420_GPIO_C10,
 	EXYNOS5420_GPIO_C11,
 	EXYNOS5420_GPIO_C12,
 	EXYNOS5420_GPIO_C13,
@@ -1166,7 +1086,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_C15,
 	EXYNOS5420_GPIO_C16,
 	EXYNOS5420_GPIO_C17,
-	EXYNOS5420_GPIO_C20,		/* 128 0x80 */
+	EXYNOS5420_GPIO_C20,
 	EXYNOS5420_GPIO_C21,
 	EXYNOS5420_GPIO_C22,
 	EXYNOS5420_GPIO_C23,
@@ -1174,7 +1094,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_C25,
 	EXYNOS5420_GPIO_C26,
 	EXYNOS5420_GPIO_C27,
-	EXYNOS5420_GPIO_C30,		/* 136 0x88 */
+	EXYNOS5420_GPIO_C30,
 	EXYNOS5420_GPIO_C31,
 	EXYNOS5420_GPIO_C32,
 	EXYNOS5420_GPIO_C33,
@@ -1182,7 +1102,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_C35,
 	EXYNOS5420_GPIO_C36,
 	EXYNOS5420_GPIO_C37,
-	EXYNOS5420_GPIO_C40,		/* 144 0x90 */
+	EXYNOS5420_GPIO_C40,
 	EXYNOS5420_GPIO_C41,
 	EXYNOS5420_GPIO_C42,
 	EXYNOS5420_GPIO_C43,
@@ -1190,7 +1110,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_C45,
 	EXYNOS5420_GPIO_C46,
 	EXYNOS5420_GPIO_C47,
-	EXYNOS5420_GPIO_D10,		/* 152 0x98 */
+	EXYNOS5420_GPIO_D10,
 	EXYNOS5420_GPIO_D11,
 	EXYNOS5420_GPIO_D12,
 	EXYNOS5420_GPIO_D13,
@@ -1198,7 +1118,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_D15,
 	EXYNOS5420_GPIO_D16,
 	EXYNOS5420_GPIO_D17,
-	EXYNOS5420_GPIO_Y00,		/* 160 0xa0 */
+	EXYNOS5420_GPIO_Y00,
 	EXYNOS5420_GPIO_Y01,
 	EXYNOS5420_GPIO_Y02,
 	EXYNOS5420_GPIO_Y03,
@@ -1206,7 +1126,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_Y05,
 	EXYNOS5420_GPIO_Y06,
 	EXYNOS5420_GPIO_Y07,
-	EXYNOS5420_GPIO_Y10,		/* 168 0xa8 */
+	EXYNOS5420_GPIO_Y10,
 	EXYNOS5420_GPIO_Y11,
 	EXYNOS5420_GPIO_Y12,
 	EXYNOS5420_GPIO_Y13,
@@ -1214,7 +1134,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_Y15,
 	EXYNOS5420_GPIO_Y16,
 	EXYNOS5420_GPIO_Y17,
-	EXYNOS5420_GPIO_Y20,		/* 176 0xb0 */
+	EXYNOS5420_GPIO_Y20,
 	EXYNOS5420_GPIO_Y21,
 	EXYNOS5420_GPIO_Y22,
 	EXYNOS5420_GPIO_Y23,
@@ -1222,7 +1142,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_Y25,
 	EXYNOS5420_GPIO_Y26,
 	EXYNOS5420_GPIO_Y27,
-	EXYNOS5420_GPIO_Y30,		/* 184 0xb8 */
+	EXYNOS5420_GPIO_Y30,
 	EXYNOS5420_GPIO_Y31,
 	EXYNOS5420_GPIO_Y32,
 	EXYNOS5420_GPIO_Y33,
@@ -1230,7 +1150,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_Y35,
 	EXYNOS5420_GPIO_Y36,
 	EXYNOS5420_GPIO_Y37,
-	EXYNOS5420_GPIO_Y40,		/* 192 0xc0 */
+	EXYNOS5420_GPIO_Y40,
 	EXYNOS5420_GPIO_Y41,
 	EXYNOS5420_GPIO_Y42,
 	EXYNOS5420_GPIO_Y43,
@@ -1238,7 +1158,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_Y45,
 	EXYNOS5420_GPIO_Y46,
 	EXYNOS5420_GPIO_Y47,
-	EXYNOS5420_GPIO_Y50,		/* 200 0xc8 */
+	EXYNOS5420_GPIO_Y50,
 	EXYNOS5420_GPIO_Y51,
 	EXYNOS5420_GPIO_Y52,
 	EXYNOS5420_GPIO_Y53,
@@ -1246,7 +1166,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_Y55,
 	EXYNOS5420_GPIO_Y56,
 	EXYNOS5420_GPIO_Y57,
-	EXYNOS5420_GPIO_Y60,		/* 208 0xd0 */
+	EXYNOS5420_GPIO_Y60,
 	EXYNOS5420_GPIO_Y61,
 	EXYNOS5420_GPIO_Y62,
 	EXYNOS5420_GPIO_Y63,
@@ -1255,9 +1175,8 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_Y66,
 	EXYNOS5420_GPIO_Y67,
 
-	/* GPIO_PART5_STARTS */
-	EXYNOS5420_GPIO_MAX_PORT_PART_4,/* 216 0xd8 */
-	EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_4,
+	EXYNOS5420_GPIO_MAX_PORT_PART_2,
+	EXYNOS5420_GPIO_E00 = EXYNOS5420_GPIO_MAX_PORT_PART_2,
 	EXYNOS5420_GPIO_E01,
 	EXYNOS5420_GPIO_E02,
 	EXYNOS5420_GPIO_E03,
@@ -1265,7 +1184,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_E05,
 	EXYNOS5420_GPIO_E06,
 	EXYNOS5420_GPIO_E07,
-	EXYNOS5420_GPIO_E10,		/* 224 0xe0 */
+	EXYNOS5420_GPIO_E10,
 	EXYNOS5420_GPIO_E11,
 	EXYNOS5420_GPIO_E12,
 	EXYNOS5420_GPIO_E13,
@@ -1273,7 +1192,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_E15,
 	EXYNOS5420_GPIO_E16,
 	EXYNOS5420_GPIO_E17,
-	EXYNOS5420_GPIO_F00,		/* 232 0xe8 */
+	EXYNOS5420_GPIO_F00,
 	EXYNOS5420_GPIO_F01,
 	EXYNOS5420_GPIO_F02,
 	EXYNOS5420_GPIO_F03,
@@ -1281,7 +1200,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_F05,
 	EXYNOS5420_GPIO_F06,
 	EXYNOS5420_GPIO_F07,
-	EXYNOS5420_GPIO_F10,		/* 240 0xf0 */
+	EXYNOS5420_GPIO_F10,
 	EXYNOS5420_GPIO_F11,
 	EXYNOS5420_GPIO_F12,
 	EXYNOS5420_GPIO_F13,
@@ -1289,7 +1208,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_F15,
 	EXYNOS5420_GPIO_F16,
 	EXYNOS5420_GPIO_F17,
-	EXYNOS5420_GPIO_G00,		/* 248 0xf8 */
+	EXYNOS5420_GPIO_G00,
 	EXYNOS5420_GPIO_G01,
 	EXYNOS5420_GPIO_G02,
 	EXYNOS5420_GPIO_G03,
@@ -1297,7 +1216,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_G05,
 	EXYNOS5420_GPIO_G06,
 	EXYNOS5420_GPIO_G07,
-	EXYNOS5420_GPIO_G10,		/* 256 0x100 */
+	EXYNOS5420_GPIO_G10,
 	EXYNOS5420_GPIO_G11,
 	EXYNOS5420_GPIO_G12,
 	EXYNOS5420_GPIO_G13,
@@ -1305,7 +1224,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_G15,
 	EXYNOS5420_GPIO_G16,
 	EXYNOS5420_GPIO_G17,
-	EXYNOS5420_GPIO_G20,		/* 264 0x108 */
+	EXYNOS5420_GPIO_G20,
 	EXYNOS5420_GPIO_G21,
 	EXYNOS5420_GPIO_G22,
 	EXYNOS5420_GPIO_G23,
@@ -1313,7 +1232,7 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_G25,
 	EXYNOS5420_GPIO_G26,
 	EXYNOS5420_GPIO_G27,
-	EXYNOS5420_GPIO_J40,		/* 272 0x110 */
+	EXYNOS5420_GPIO_J40,
 	EXYNOS5420_GPIO_J41,
 	EXYNOS5420_GPIO_J42,
 	EXYNOS5420_GPIO_J43,
@@ -1322,15 +1241,89 @@  enum exynos5420_gpio_pin {
 	EXYNOS5420_GPIO_J46,
 	EXYNOS5420_GPIO_J47,
 
-	/* GPIO_PART6_STARTS */
-	EXYNOS5420_GPIO_MAX_PORT_PART_5,/* 280 0x118 */
-	EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_5,
+	EXYNOS5420_GPIO_MAX_PORT_PART_3,
+	EXYNOS5420_GPIO_A00 = EXYNOS5420_GPIO_MAX_PORT_PART_3,
+	EXYNOS5420_GPIO_A01,
+	EXYNOS5420_GPIO_A02,
+	EXYNOS5420_GPIO_A03,
+	EXYNOS5420_GPIO_A04,
+	EXYNOS5420_GPIO_A05,
+	EXYNOS5420_GPIO_A06,
+	EXYNOS5420_GPIO_A07,
+	EXYNOS5420_GPIO_A10,
+	EXYNOS5420_GPIO_A11,
+	EXYNOS5420_GPIO_A12,
+	EXYNOS5420_GPIO_A13,
+	EXYNOS5420_GPIO_A14,
+	EXYNOS5420_GPIO_A15,
+	EXYNOS5420_GPIO_A16,
+	EXYNOS5420_GPIO_A17,
+	EXYNOS5420_GPIO_A20,
+	EXYNOS5420_GPIO_A21,
+	EXYNOS5420_GPIO_A22,
+	EXYNOS5420_GPIO_A23,
+	EXYNOS5420_GPIO_A24,
+	EXYNOS5420_GPIO_A25,
+	EXYNOS5420_GPIO_A26,
+	EXYNOS5420_GPIO_A27,
+	EXYNOS5420_GPIO_B00,
+	EXYNOS5420_GPIO_B01,
+	EXYNOS5420_GPIO_B02,
+	EXYNOS5420_GPIO_B03,
+	EXYNOS5420_GPIO_B04,
+	EXYNOS5420_GPIO_B05,
+	EXYNOS5420_GPIO_B06,
+	EXYNOS5420_GPIO_B07,
+	EXYNOS5420_GPIO_B10,
+	EXYNOS5420_GPIO_B11,
+	EXYNOS5420_GPIO_B12,
+	EXYNOS5420_GPIO_B13,
+	EXYNOS5420_GPIO_B14,
+	EXYNOS5420_GPIO_B15,
+	EXYNOS5420_GPIO_B16,
+	EXYNOS5420_GPIO_B17,
+	EXYNOS5420_GPIO_B20,
+	EXYNOS5420_GPIO_B21,
+	EXYNOS5420_GPIO_B22,
+	EXYNOS5420_GPIO_B23,
+	EXYNOS5420_GPIO_B24,
+	EXYNOS5420_GPIO_B25,
+	EXYNOS5420_GPIO_B26,
+	EXYNOS5420_GPIO_B27,
+	EXYNOS5420_GPIO_B30,
+	EXYNOS5420_GPIO_B31,
+	EXYNOS5420_GPIO_B32,
+	EXYNOS5420_GPIO_B33,
+	EXYNOS5420_GPIO_B34,
+	EXYNOS5420_GPIO_B35,
+	EXYNOS5420_GPIO_B36,
+	EXYNOS5420_GPIO_B37,
+	EXYNOS5420_GPIO_B40,
+	EXYNOS5420_GPIO_B41,
+	EXYNOS5420_GPIO_B42,
+	EXYNOS5420_GPIO_B43,
+	EXYNOS5420_GPIO_B44,
+	EXYNOS5420_GPIO_B45,
+	EXYNOS5420_GPIO_B46,
+	EXYNOS5420_GPIO_B47,
+	EXYNOS5420_GPIO_H00,
+	EXYNOS5420_GPIO_H01,
+	EXYNOS5420_GPIO_H02,
+	EXYNOS5420_GPIO_H03,
+	EXYNOS5420_GPIO_H04,
+	EXYNOS5420_GPIO_H05,
+	EXYNOS5420_GPIO_H06,
+	EXYNOS5420_GPIO_H07,
+
+	EXYNOS5420_GPIO_MAX_PORT_PART_4,
+	EXYNOS5420_GPIO_Z0 = EXYNOS5420_GPIO_MAX_PORT_PART_4,
 	EXYNOS5420_GPIO_Z1,
 	EXYNOS5420_GPIO_Z2,
 	EXYNOS5420_GPIO_Z3,
 	EXYNOS5420_GPIO_Z4,
 	EXYNOS5420_GPIO_Z5,
 	EXYNOS5420_GPIO_Z6,
+
 	EXYNOS5420_GPIO_MAX_PORT
 };
 
@@ -1366,14 +1359,13 @@  static struct gpio_info exynos5_gpio_data[EXYNOS5_GPIO_NUM_PARTS] = {
 	{ EXYNOS5_GPIO_PART8_BASE, EXYNOS5_GPIO_MAX_PORT },
 };
 
-#define EXYNOS5420_GPIO_NUM_PARTS	6
+#define EXYNOS5420_GPIO_NUM_PARTS	5
 static struct gpio_info exynos5420_gpio_data[EXYNOS5420_GPIO_NUM_PARTS] = {
 	{ EXYNOS5420_GPIO_PART1_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_1 },
 	{ EXYNOS5420_GPIO_PART2_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_2 },
 	{ EXYNOS5420_GPIO_PART3_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_3 },
 	{ EXYNOS5420_GPIO_PART4_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_4 },
-	{ EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT_PART_5 },
-	{ EXYNOS5420_GPIO_PART6_BASE, EXYNOS5420_GPIO_MAX_PORT },
+	{ EXYNOS5420_GPIO_PART5_BASE, EXYNOS5420_GPIO_MAX_PORT },
 };
 
 static inline struct gpio_info *get_gpio_data(void)
@@ -1486,17 +1478,17 @@  static const struct gpio_name_num_table exynos5_gpio_table[] = {
 };
 
 static const struct gpio_name_num_table exynos5420_gpio_table[] = {
-	GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0),
-	GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0),
-	GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Y70, 0),
 	GPIO_ENTRY('x', EXYNOS5420_GPIO_X00, EXYNOS5420_GPIO_C00, 0),
 	GPIO_ENTRY('c', EXYNOS5420_GPIO_C00, EXYNOS5420_GPIO_D10, 0),
-	GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 010),
+	GPIO_ENTRY('d', EXYNOS5420_GPIO_D10, EXYNOS5420_GPIO_Y00, 0),
 	GPIO_ENTRY('y', EXYNOS5420_GPIO_Y00, EXYNOS5420_GPIO_E00, 0),
 	GPIO_ENTRY('e', EXYNOS5420_GPIO_E00, EXYNOS5420_GPIO_F00, 0),
 	GPIO_ENTRY('f', EXYNOS5420_GPIO_F00, EXYNOS5420_GPIO_G00, 0),
 	GPIO_ENTRY('g', EXYNOS5420_GPIO_G00, EXYNOS5420_GPIO_J40, 0),
-	GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_Z0, 040),
+	GPIO_ENTRY('j', EXYNOS5420_GPIO_J40, EXYNOS5420_GPIO_A00, 0),
+	GPIO_ENTRY('a', EXYNOS5420_GPIO_A00, EXYNOS5420_GPIO_B00, 0),
+	GPIO_ENTRY('b', EXYNOS5420_GPIO_B00, EXYNOS5420_GPIO_H00, 0),
+	GPIO_ENTRY('h', EXYNOS5420_GPIO_H00, EXYNOS5420_GPIO_Z0, 0),
 	GPIO_ENTRY('z', EXYNOS5420_GPIO_Z0, EXYNOS5420_GPIO_MAX_PORT, 0),
 	{ 0 }
 };