From: Kukjin Kim <kgene.kim@samsung.com>
To: Thomas Abraham <thomas.abraham@linaro.org>
Cc: linux-samsung-soc@vger.kernel.org, kgene.kim@samsung.com,
linux-arm-kernel@lists.infradead.org,
Sangsu Park <sangsu4u.park@samsung.com>,
Grant Likely <grant.likely@secretlab.ca>
Subject: Re: [PATCH 08/12] gpio/samsung: add GPC4 bank instance
Date: Wed, 18 Apr 2012 17:36:34 -0700 [thread overview]
Message-ID: <4F8F5E12.6030800@samsung.com> (raw)
In-Reply-To: <1334641595-25301-9-git-send-email-thomas.abraham@linaro.org>
Thomas Abraham wrote:
> From: Sangsu Park<sangsu4u.park@samsung.com>
>
> Add GPC4 bank instance which is included in rev1 of Exynos5.
>
> Cc: Grant Likely<grant.likely@secretlab.ca>
> Signed-off-by: Sangsu Park<sangsu4u.park@samsung.com>
Where is your sign??? Your sign MUST be included here.
> ---
> arch/arm/mach-exynos/include/mach/gpio.h | 9 ++++++---
> drivers/gpio/gpio-samsung.c | 8 ++++++++
> 2 files changed, 14 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/mach-exynos/include/mach/gpio.h b/arch/arm/mach-exynos/include/mach/gpio.h
> index d7498af..df5612b 100644
> --- a/arch/arm/mach-exynos/include/mach/gpio.h
> +++ b/arch/arm/mach-exynos/include/mach/gpio.h
> @@ -153,10 +153,11 @@ enum exynos4_gpio_number {
> #define EXYNOS5_GPIO_B2_NR (4)
> #define EXYNOS5_GPIO_B3_NR (4)
> #define EXYNOS5_GPIO_C0_NR (7)
> -#define EXYNOS5_GPIO_C1_NR (7)
> +#define EXYNOS5_GPIO_C1_NR (4)
> #define EXYNOS5_GPIO_C2_NR (7)
> #define EXYNOS5_GPIO_C3_NR (7)
> -#define EXYNOS5_GPIO_D0_NR (8)
> +#define EXYNOS5_GPIO_C4_NR (8)
Should be 7. See the manual again :-(
> +#define EXYNOS5_GPIO_D0_NR (4)
> #define EXYNOS5_GPIO_D1_NR (8)
> #define EXYNOS5_GPIO_Y0_NR (6)
> #define EXYNOS5_GPIO_Y1_NR (4)
> @@ -199,7 +200,8 @@ enum exynos5_gpio_number {
> EXYNOS5_GPIO_C1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C0),
> EXYNOS5_GPIO_C2_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C1),
> EXYNOS5_GPIO_C3_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C2),
> - EXYNOS5_GPIO_D0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C3),
> + EXYNOS5_GPIO_C4_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C3),
> + EXYNOS5_GPIO_D0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C4),
> EXYNOS5_GPIO_D1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_D0),
> EXYNOS5_GPIO_Y0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_D1),
> EXYNOS5_GPIO_Y1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_Y0),
> @@ -242,6 +244,7 @@ enum exynos5_gpio_number {
> #define EXYNOS5_GPC1(_nr) (EXYNOS5_GPIO_C1_START + (_nr))
> #define EXYNOS5_GPC2(_nr) (EXYNOS5_GPIO_C2_START + (_nr))
> #define EXYNOS5_GPC3(_nr) (EXYNOS5_GPIO_C3_START + (_nr))
> +#define EXYNOS5_GPC4(_nr) (EXYNOS5_GPIO_C4_START + (_nr))
> #define EXYNOS5_GPD0(_nr) (EXYNOS5_GPIO_D0_START + (_nr))
> #define EXYNOS5_GPD1(_nr) (EXYNOS5_GPIO_D1_START + (_nr))
> #define EXYNOS5_GPY0(_nr) (EXYNOS5_GPIO_Y0_START + (_nr))
> diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c
> index 4627787..0153bb9 100644
> --- a/drivers/gpio/gpio-samsung.c
> +++ b/drivers/gpio/gpio-samsung.c
> @@ -2452,6 +2452,12 @@ static struct samsung_gpio_chip exynos5_gpios_1[] = {
> },
> }, {
> .chip = {
> + .base = EXYNOS5_GPC4(0),
> + .ngpio = EXYNOS5_GPIO_C4_NR,
> + .label = "GPC4",
> + },
> + }, {
> + .chip = {
> .base = EXYNOS5_GPD0(0),
> .ngpio = EXYNOS5_GPIO_D0_NR,
> .label = "GPD0",
> @@ -2880,6 +2886,8 @@ static __init int samsung_gpiolib_init(void)
> for (i = 0; i< 4; i++, chip++, gpx_base += 0x20)
> chip->base = gpx_base;
>
> + exynos5_gpios_1[11].base = gpio_base1 + 0x2E0;
> +
> chip = exynos5_gpios_1;
> nr_chips = ARRAY_SIZE(exynos5_gpios_1);
>
This is wrong. If you add GPC4 between GPC3 and GPD0, you need to
increase the gpx's counter like following and need to update
IRQ_GPIO1_NR_GROUPS as well.
diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c
index 19d6fc0..1af0fa5 100644
--- a/drivers/gpio/gpio-samsung.c
+++ b/drivers/gpio/gpio-samsung.c
@@ -2875,7 +2875,7 @@ static __init int samsung_gpiolib_init(void)
}
/* need to set base address for gpx */
- chip = &exynos5_gpios_1[20];
+ chip = &exynos5_gpios_1[21];
gpx_base = gpio_base1 + 0xC00;
for (i = 0; i < 4; i++, chip++, gpx_base += 0x20)
chip->base = gpx_base;
diff --git a/arch/arm/mach-exynos/include/mach/irqs.h
b/arch/arm/mach-exynos/inc
index 591e785..887788d 100644
--- a/arch/arm/mach-exynos/include/mach/irqs.h
+++ b/arch/arm/mach-exynos/include/mach/irqs.h
@@ -446,7 +446,7 @@
#define EXYNOS5_MAX_COMBINER_NR 32
-#define EXYNOS5_IRQ_GPIO1_NR_GROUPS 13
+#define EXYNOS5_IRQ_GPIO1_NR_GROUPS 14
#define EXYNOS5_IRQ_GPIO2_NR_GROUPS 9
#define EXYNOS5_IRQ_GPIO3_NR_GROUPS 5
#define EXYNOS5_IRQ_GPIO4_NR_GROUPS 1
Thanks.
Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
WARNING: multiple messages have this Message-ID (diff)
From: kgene.kim@samsung.com (Kukjin Kim)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 08/12] gpio/samsung: add GPC4 bank instance
Date: Wed, 18 Apr 2012 17:36:34 -0700 [thread overview]
Message-ID: <4F8F5E12.6030800@samsung.com> (raw)
In-Reply-To: <1334641595-25301-9-git-send-email-thomas.abraham@linaro.org>
Thomas Abraham wrote:
> From: Sangsu Park<sangsu4u.park@samsung.com>
>
> Add GPC4 bank instance which is included in rev1 of Exynos5.
>
> Cc: Grant Likely<grant.likely@secretlab.ca>
> Signed-off-by: Sangsu Park<sangsu4u.park@samsung.com>
Where is your sign??? Your sign MUST be included here.
> ---
> arch/arm/mach-exynos/include/mach/gpio.h | 9 ++++++---
> drivers/gpio/gpio-samsung.c | 8 ++++++++
> 2 files changed, 14 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/mach-exynos/include/mach/gpio.h b/arch/arm/mach-exynos/include/mach/gpio.h
> index d7498af..df5612b 100644
> --- a/arch/arm/mach-exynos/include/mach/gpio.h
> +++ b/arch/arm/mach-exynos/include/mach/gpio.h
> @@ -153,10 +153,11 @@ enum exynos4_gpio_number {
> #define EXYNOS5_GPIO_B2_NR (4)
> #define EXYNOS5_GPIO_B3_NR (4)
> #define EXYNOS5_GPIO_C0_NR (7)
> -#define EXYNOS5_GPIO_C1_NR (7)
> +#define EXYNOS5_GPIO_C1_NR (4)
> #define EXYNOS5_GPIO_C2_NR (7)
> #define EXYNOS5_GPIO_C3_NR (7)
> -#define EXYNOS5_GPIO_D0_NR (8)
> +#define EXYNOS5_GPIO_C4_NR (8)
Should be 7. See the manual again :-(
> +#define EXYNOS5_GPIO_D0_NR (4)
> #define EXYNOS5_GPIO_D1_NR (8)
> #define EXYNOS5_GPIO_Y0_NR (6)
> #define EXYNOS5_GPIO_Y1_NR (4)
> @@ -199,7 +200,8 @@ enum exynos5_gpio_number {
> EXYNOS5_GPIO_C1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C0),
> EXYNOS5_GPIO_C2_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C1),
> EXYNOS5_GPIO_C3_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C2),
> - EXYNOS5_GPIO_D0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C3),
> + EXYNOS5_GPIO_C4_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C3),
> + EXYNOS5_GPIO_D0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_C4),
> EXYNOS5_GPIO_D1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_D0),
> EXYNOS5_GPIO_Y0_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_D1),
> EXYNOS5_GPIO_Y1_START = EXYNOS_GPIO_NEXT(EXYNOS5_GPIO_Y0),
> @@ -242,6 +244,7 @@ enum exynos5_gpio_number {
> #define EXYNOS5_GPC1(_nr) (EXYNOS5_GPIO_C1_START + (_nr))
> #define EXYNOS5_GPC2(_nr) (EXYNOS5_GPIO_C2_START + (_nr))
> #define EXYNOS5_GPC3(_nr) (EXYNOS5_GPIO_C3_START + (_nr))
> +#define EXYNOS5_GPC4(_nr) (EXYNOS5_GPIO_C4_START + (_nr))
> #define EXYNOS5_GPD0(_nr) (EXYNOS5_GPIO_D0_START + (_nr))
> #define EXYNOS5_GPD1(_nr) (EXYNOS5_GPIO_D1_START + (_nr))
> #define EXYNOS5_GPY0(_nr) (EXYNOS5_GPIO_Y0_START + (_nr))
> diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c
> index 4627787..0153bb9 100644
> --- a/drivers/gpio/gpio-samsung.c
> +++ b/drivers/gpio/gpio-samsung.c
> @@ -2452,6 +2452,12 @@ static struct samsung_gpio_chip exynos5_gpios_1[] = {
> },
> }, {
> .chip = {
> + .base = EXYNOS5_GPC4(0),
> + .ngpio = EXYNOS5_GPIO_C4_NR,
> + .label = "GPC4",
> + },
> + }, {
> + .chip = {
> .base = EXYNOS5_GPD0(0),
> .ngpio = EXYNOS5_GPIO_D0_NR,
> .label = "GPD0",
> @@ -2880,6 +2886,8 @@ static __init int samsung_gpiolib_init(void)
> for (i = 0; i< 4; i++, chip++, gpx_base += 0x20)
> chip->base = gpx_base;
>
> + exynos5_gpios_1[11].base = gpio_base1 + 0x2E0;
> +
> chip = exynos5_gpios_1;
> nr_chips = ARRAY_SIZE(exynos5_gpios_1);
>
This is wrong. If you add GPC4 between GPC3 and GPD0, you need to
increase the gpx's counter like following and need to update
IRQ_GPIO1_NR_GROUPS as well.
diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c
index 19d6fc0..1af0fa5 100644
--- a/drivers/gpio/gpio-samsung.c
+++ b/drivers/gpio/gpio-samsung.c
@@ -2875,7 +2875,7 @@ static __init int samsung_gpiolib_init(void)
}
/* need to set base address for gpx */
- chip = &exynos5_gpios_1[20];
+ chip = &exynos5_gpios_1[21];
gpx_base = gpio_base1 + 0xC00;
for (i = 0; i < 4; i++, chip++, gpx_base += 0x20)
chip->base = gpx_base;
diff --git a/arch/arm/mach-exynos/include/mach/irqs.h
b/arch/arm/mach-exynos/inc
index 591e785..887788d 100644
--- a/arch/arm/mach-exynos/include/mach/irqs.h
+++ b/arch/arm/mach-exynos/include/mach/irqs.h
@@ -446,7 +446,7 @@
#define EXYNOS5_MAX_COMBINER_NR 32
-#define EXYNOS5_IRQ_GPIO1_NR_GROUPS 13
+#define EXYNOS5_IRQ_GPIO1_NR_GROUPS 14
#define EXYNOS5_IRQ_GPIO2_NR_GROUPS 9
#define EXYNOS5_IRQ_GPIO3_NR_GROUPS 5
#define EXYNOS5_IRQ_GPIO4_NR_GROUPS 1
Thanks.
Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
next prev parent reply other threads:[~2012-04-19 0:36 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-17 5:46 [PATCH 00/12] Updates for Exynos5250 Rev1.0 and device tree support Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-17 5:46 ` [PATCH 01/12] ARM: Exynos: Remove a new bus_type instance for Exynos5 Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-19 0:15 ` Kukjin Kim
2012-04-19 0:15 ` Kukjin Kim
2012-04-17 5:46 ` [PATCH 02/12] ARM: Exynos5: Fix incorrect initialization of GIC Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-19 0:51 ` Kukjin Kim
2012-04-19 0:51 ` Kukjin Kim
2012-04-17 5:46 ` [PATCH 03/12] ARM: Exynos5: Add watchdog timer clock instance Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-17 6:14 ` Kyungmin Park
2012-04-17 6:14 ` Kyungmin Park
2012-04-17 8:12 ` Thomas Abraham
2012-04-17 8:12 ` Thomas Abraham
2012-04-19 0:28 ` Kukjin Kim
2012-04-19 0:28 ` Kukjin Kim
2012-04-17 5:46 ` [PATCH 04/12] ARM: Exynos5: Remove duplicated instantiation of pdma clock Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-19 0:30 ` Kukjin Kim
2012-04-19 0:30 ` Kukjin Kim
2012-04-17 5:46 ` [PATCH 05/12] ARM: Exynos5: Add MDMA0 clock instance Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-19 1:20 ` Kukjin Kim
2012-04-19 1:20 ` Kukjin Kim
2012-04-17 5:46 ` [PATCH 06/12] rtc-s3c: Fix breakage introduced by S3C2443/S3C2416 support Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-17 6:30 ` Kyungmin Park
2012-04-17 6:30 ` Kyungmin Park
2012-04-17 8:15 ` Thomas Abraham
2012-04-17 8:15 ` Thomas Abraham
2012-04-17 8:25 ` Kyungmin Park
2012-04-17 8:25 ` Kyungmin Park
2012-04-17 8:39 ` Thomas Abraham
2012-04-17 8:39 ` Thomas Abraham
2012-04-17 5:46 ` [PATCH 07/12] ARM: Exynos5: Modify the GIC physical address for static io-mapping Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-17 6:31 ` Kyungmin Park
2012-04-17 6:31 ` Kyungmin Park
2012-04-17 8:19 ` Thomas Abraham
2012-04-17 8:19 ` Thomas Abraham
2012-04-17 5:46 ` [PATCH 08/12] gpio/samsung: add GPC4 bank instance Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-17 6:33 ` Kyungmin Park
2012-04-17 6:33 ` Kyungmin Park
2012-04-17 8:24 ` Thomas Abraham
2012-04-17 8:24 ` Thomas Abraham
2012-04-19 0:36 ` Kukjin Kim [this message]
2012-04-19 0:36 ` Kukjin Kim
2012-04-17 5:46 ` [PATCH 09/12] ARM: Exynos5: Add pre-divider and fout mux clocks for bpll and mpll Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-17 5:46 ` [PATCH 10/12] ARM: Exynos: Redefine IRQ_MCT_L0,1 definition Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-19 1:00 ` Kukjin Kim
2012-04-19 1:00 ` Kukjin Kim
2012-04-17 5:46 ` [PATCH 11/12] ARM: Exynos5: Update device tree source files Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-17 5:46 ` [PATCH 12/12] ARM: Exynos5: Update device tree enabled machine file Thomas Abraham
2012-04-17 5:46 ` Thomas Abraham
2012-04-19 0:23 ` Kukjin Kim
2012-04-19 0:23 ` Kukjin Kim
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F8F5E12.6030800@samsung.com \
--to=kgene.kim@samsung.com \
--cc=grant.likely@secretlab.ca \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=sangsu4u.park@samsung.com \
--cc=thomas.abraham@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.