* [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA
@ 2011-10-31 18:42 Mark Brown
2011-10-31 18:42 ` [PATCH 2/3 v3.1] ARM: SAMSUNG: Fix GPIO space reservation for S3C64xx platforms Mark Brown
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Mark Brown @ 2011-10-31 18:42 UTC (permalink / raw)
To: linux-arm-kernel
The conversion of the S3C64XX GPIOs to the generic Samsung GPIOs mean that
rather than using the previous S3C24XX_GPIO_EXTRA configuration the driver
now uses SAMSUNG_GPIO_EXTRA.
Since SAMSUNG_GPIO_EXTRA requires the arch to include the extra space in
ARCH_NR_GPIOs add it on to BOARD_NR_GPIOs (in case boards are relying on
the existing reservation).
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
---
arch/arm/mach-s3c64xx/include/mach/gpio.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-s3c64xx/include/mach/gpio.h b/arch/arm/mach-s3c64xx/include/mach/gpio.h
index 6e34c2f..090c497 100644
--- a/arch/arm/mach-s3c64xx/include/mach/gpio.h
+++ b/arch/arm/mach-s3c64xx/include/mach/gpio.h
@@ -88,6 +88,6 @@ enum s3c_gpio_number {
/* define the number of gpios we need to the one after the GPQ() range */
#define GPIO_BOARD_START (S3C64XX_GPQ(S3C64XX_GPIO_Q_NR) + 1)
-#define BOARD_NR_GPIOS 16
+#define BOARD_NR_GPIOS (16 + CONFIG_SAMSUNG_GPIO_EXTRA)
#define ARCH_NR_GPIOS (GPIO_BOARD_START + BOARD_NR_GPIOS)
--
1.7.7.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/3 v3.1] ARM: SAMSUNG: Fix GPIO space reservation for S3C64xx platforms
2011-10-31 18:42 [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA Mark Brown
@ 2011-10-31 18:42 ` Mark Brown
2011-10-31 18:42 ` [PATCH 3/3 v3.1] ARM: S3C64XX: Correct reservation of GPIOs for CPU module on Cragganmore Mark Brown
2011-11-02 12:03 ` [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA Kukjin Kim
2 siblings, 0 replies; 8+ messages in thread
From: Mark Brown @ 2011-10-31 18:42 UTC (permalink / raw)
To: linux-arm-kernel
The conversion to use SAMSUNG_GPIO_EXTRA rather than S3C24XX_GPIO_EXTRA
broke a number of S3C64xx boards which had been using the symbols provided
to reserve a range of GPIOs for board specific use. Fix this by adding
equivalent symbols for the new shared driver and updating the relevant
boards to use the new symbols.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
---
arch/arm/mach-s3c64xx/Kconfig | 6 +++---
arch/arm/plat-samsung/Kconfig | 8 ++++++++
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/arch/arm/mach-s3c64xx/Kconfig b/arch/arm/mach-s3c64xx/Kconfig
index 5552e04..4d8c489 100644
--- a/arch/arm/mach-s3c64xx/Kconfig
+++ b/arch/arm/mach-s3c64xx/Kconfig
@@ -188,7 +188,7 @@ config SMDK6410_WM1190_EV1
depends on MACH_SMDK6410
select REGULATOR
select REGULATOR_WM8350
- select S3C24XX_GPIO_EXTRA64
+ select SAMSUNG_GPIO_EXTRA64
select MFD_WM8350_I2C
select MFD_WM8350_CONFIG_MODE_0
select MFD_WM8350_CONFIG_MODE_3
@@ -206,7 +206,7 @@ config SMDK6410_WM1192_EV1
depends on MACH_SMDK6410
select REGULATOR
select REGULATOR_WM831X
- select S3C24XX_GPIO_EXTRA64
+ select SAMSUNG_GPIO_EXTRA64
select MFD_WM831X
select MFD_WM831X_I2C
help
@@ -287,7 +287,7 @@ config MACH_WLF_CRAGG_6410
select S3C_DEV_WDT
select S3C_DEV_RTC
select S3C64XX_DEV_SPI
- select S3C24XX_GPIO_EXTRA128
+ select SAMSUNG_GPIO_EXTRA128
select I2C
help
Machine support for the Wolfson Cragganmore S3C6410 variant.
diff --git a/arch/arm/plat-samsung/Kconfig b/arch/arm/plat-samsung/Kconfig
index 313eb26..bb0af66 100644
--- a/arch/arm/plat-samsung/Kconfig
+++ b/arch/arm/plat-samsung/Kconfig
@@ -88,12 +88,20 @@ config S5P_GPIO_DRVSTR
config SAMSUNG_GPIO_EXTRA
int "Number of additional GPIO pins"
+ default 128 if SAMSUNG_GPIO_EXTRA128
+ default 64 if SAMSUNG_GPIO_EXTRA64
default 0
help
Use additional GPIO space in addition to the GPIO's the SOC
provides. This allows expanding the GPIO space for use with
GPIO expanders.
+config SAMSUNG_GPIO_EXTRA64
+ bool
+
+config SAMSUNG_GPIO_EXTRA128
+ bool
+
config S3C_GPIO_SPACE
int "Space between gpio banks"
default 0
--
1.7.7.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 3/3 v3.1] ARM: S3C64XX: Correct reservation of GPIOs for CPU module on Cragganmore
2011-10-31 18:42 [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA Mark Brown
2011-10-31 18:42 ` [PATCH 2/3 v3.1] ARM: SAMSUNG: Fix GPIO space reservation for S3C64xx platforms Mark Brown
@ 2011-10-31 18:42 ` Mark Brown
2011-11-03 7:45 ` Kukjin Kim
2011-11-02 12:03 ` [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA Kukjin Kim
2 siblings, 1 reply; 8+ messages in thread
From: Mark Brown @ 2011-10-31 18:42 UTC (permalink / raw)
To: linux-arm-kernel
The gpio_base for the PMIC on the CPU module was being incorrectly set to
be the same as that for the CODEC causing the two GPIO drivers to collide.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
---
arch/arm/mach-s3c64xx/mach-crag6410.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c b/arch/arm/mach-s3c64xx/mach-crag6410.c
index 3903d86..03eb475 100644
--- a/arch/arm/mach-s3c64xx/mach-crag6410.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
@@ -74,6 +74,7 @@
#define PCA935X_GPIO_BASE GPIO_BOARD_START
#define CODEC_GPIO_BASE (GPIO_BOARD_START + 8)
#define GLENFARCLAS_PMIC_GPIO_BASE (GPIO_BOARD_START + 16)
+#define BANFF_PMIC_GPIO_BASE (GLENFARCLAS_PMIC_GPIO_BASE + 16)
/* serial port setup */
@@ -509,7 +510,7 @@ static struct wm831x_touch_pdata touch_pdata __initdata = {
static struct wm831x_pdata crag_pmic_pdata __initdata = {
.wm831x_num = 1,
.irq_base = BANFF_PMIC_IRQ_BASE,
- .gpio_base = GPIO_BOARD_START + 8,
+ .gpio_base = BANFF_PMIC_GPIO_BASE,
.soft_shutdown = true,
.backup = &banff_backup_pdata,
--
1.7.7.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA
2011-10-31 18:42 [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA Mark Brown
2011-10-31 18:42 ` [PATCH 2/3 v3.1] ARM: SAMSUNG: Fix GPIO space reservation for S3C64xx platforms Mark Brown
2011-10-31 18:42 ` [PATCH 3/3 v3.1] ARM: S3C64XX: Correct reservation of GPIOs for CPU module on Cragganmore Mark Brown
@ 2011-11-02 12:03 ` Kukjin Kim
2011-11-02 12:30 ` Mark Brown
2 siblings, 1 reply; 8+ messages in thread
From: Kukjin Kim @ 2011-11-02 12:03 UTC (permalink / raw)
To: linux-arm-kernel
Mark Brown wrote:
>
> The conversion of the S3C64XX GPIOs to the generic Samsung GPIOs mean that
> rather than using the previous S3C24XX_GPIO_EXTRA configuration the driver
> now uses SAMSUNG_GPIO_EXTRA.
>
> Since SAMSUNG_GPIO_EXTRA requires the arch to include the extra space in
> ARCH_NR_GPIOs add it on to BOARD_NR_GPIOs (in case boards are relying on
> the existing reservation).
>
> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
> ---
> arch/arm/mach-s3c64xx/include/mach/gpio.h | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/mach-s3c64xx/include/mach/gpio.h b/arch/arm/mach-
> s3c64xx/include/mach/gpio.h
> index 6e34c2f..090c497 100644
> --- a/arch/arm/mach-s3c64xx/include/mach/gpio.h
> +++ b/arch/arm/mach-s3c64xx/include/mach/gpio.h
> @@ -88,6 +88,6 @@ enum s3c_gpio_number {
> /* define the number of gpios we need to the one after the GPQ() range */
> #define GPIO_BOARD_START (S3C64XX_GPQ(S3C64XX_GPIO_Q_NR) + 1)
>
> -#define BOARD_NR_GPIOS 16
> +#define BOARD_NR_GPIOS (16 + CONFIG_SAMSUNG_GPIO_EXTRA)
>
> #define ARCH_NR_GPIOS (GPIO_BOARD_START + BOARD_NR_GPIOS)
> --
> 1.7.7.1
Yes, agree. BTW, what's the 'v3.1' in title?
Thanks.
Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA
2011-11-02 12:03 ` [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA Kukjin Kim
@ 2011-11-02 12:30 ` Mark Brown
0 siblings, 0 replies; 8+ messages in thread
From: Mark Brown @ 2011-11-02 12:30 UTC (permalink / raw)
To: linux-arm-kernel
On Wed, Nov 02, 2011 at 09:03:38PM +0900, Kukjin Kim wrote:
> Yes, agree. BTW, what's the 'v3.1' in title?
A thinko for 3.2, sorry.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 3/3 v3.1] ARM: S3C64XX: Correct reservation of GPIOs for CPU module on Cragganmore
2011-10-31 18:42 ` [PATCH 3/3 v3.1] ARM: S3C64XX: Correct reservation of GPIOs for CPU module on Cragganmore Mark Brown
@ 2011-11-03 7:45 ` Kukjin Kim
2011-11-03 12:10 ` Mark Brown
0 siblings, 1 reply; 8+ messages in thread
From: Kukjin Kim @ 2011-11-03 7:45 UTC (permalink / raw)
To: linux-arm-kernel
Mark Brown wrote:
>
> The gpio_base for the PMIC on the CPU module was being incorrectly set to
> be the same as that for the CODEC causing the two GPIO drivers to collide.
>
> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
> ---
> arch/arm/mach-s3c64xx/mach-crag6410.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c b/arch/arm/mach-
> s3c64xx/mach-crag6410.c
> index 3903d86..03eb475 100644
> --- a/arch/arm/mach-s3c64xx/mach-crag6410.c
> +++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
> @@ -74,6 +74,7 @@
> #define PCA935X_GPIO_BASE GPIO_BOARD_START
> #define CODEC_GPIO_BASE (GPIO_BOARD_START + 8)
> #define GLENFARCLAS_PMIC_GPIO_BASE (GPIO_BOARD_START + 16)
> +#define BANFF_PMIC_GPIO_BASE
> (GLENFARCLAS_PMIC_GPIO_BASE + 16)
>
Mark,
Above definitions are at mach/crag6410.h file not mach-crag6410.c file in my
tree.
And in my opinion, to use GPIO_BOARD_START is better than to use
GLENFARCLAS_PMIC_GPIO_BASE like others for easily reading.
> /* serial port setup */
>
> @@ -509,7 +510,7 @@ static struct wm831x_touch_pdata touch_pdata
__initdata
> = {
> static struct wm831x_pdata crag_pmic_pdata __initdata = {
> .wm831x_num = 1,
> .irq_base = BANFF_PMIC_IRQ_BASE,
> - .gpio_base = GPIO_BOARD_START + 8,
> + .gpio_base = BANFF_PMIC_GPIO_BASE,
> .soft_shutdown = true,
There is no above line in my tree...
>
> .backup = &banff_backup_pdata,
> --
> 1.7.7.1
So I think, this should be following...?
diff --git a/arch/arm/mach-s3c64xx/include/mach/crag6410.h
b/arch/arm/mach-s3c64xx/include/mach/crag6410.h
index be9074e..1cc1cc8 100644
--- a/arch/arm/mach-s3c64xx/include/mach/crag6410.h
+++ b/arch/arm/mach-s3c64xx/include/mach/crag6410.h
@@ -17,7 +17,8 @@
#define GLENFARCLAS_PMIC_IRQ_BASE (IRQ_BOARD_START + 64)
#define PCA935X_GPIO_BASE GPIO_BOARD_START
-#define CODEC_GPIO_BASE (GPIO_BOARD_START + 8)
+#define CODEC_GPIO_BASE (GPIO_BOARD_START + 8)
#define GLENFARCLAS_PMIC_GPIO_BASE (GPIO_BOARD_START + 16)
+#define BANFF_PMIC_GPIO_BASE (GPIO_BOARD_START + 32)
#endif
diff --git a/arch/arm/mach-s3c64xx/mach-crag6410.c
b/arch/arm/mach-s3c64xx/mach-crag6410.c
index d04b654..8b04a46 100644
--- a/arch/arm/mach-s3c64xx/mach-crag6410.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
@@ -500,7 +500,7 @@ static struct wm831x_touch_pdata touch_pdata __initdata
= {
static struct wm831x_pdata crag_pmic_pdata __initdata = {
.wm831x_num = 1,
.irq_base = BANFF_PMIC_IRQ_BASE,
- .gpio_base = GPIO_BOARD_START + 8,
+ .gpio_base = BANFF_PMIC_GPIO_BASE,
.backup = &banff_backup_pdata,
Thanks.
Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 3/3 v3.1] ARM: S3C64XX: Correct reservation of GPIOs for CPU module on Cragganmore
2011-11-03 7:45 ` Kukjin Kim
@ 2011-11-03 12:10 ` Mark Brown
2011-11-04 5:02 ` Kukjin Kim
0 siblings, 1 reply; 8+ messages in thread
From: Mark Brown @ 2011-11-03 12:10 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, Nov 03, 2011 at 04:45:21PM +0900, Kukjin Kim wrote:
> Mark Brown wrote:
> > #define PCA935X_GPIO_BASE GPIO_BOARD_START
> > #define CODEC_GPIO_BASE (GPIO_BOARD_START + 8)
> > #define GLENFARCLAS_PMIC_GPIO_BASE (GPIO_BOARD_START + 16)
> > +#define BANFF_PMIC_GPIO_BASE
> > (GLENFARCLAS_PMIC_GPIO_BASE + 16)
> Above definitions are at mach/crag6410.h file not mach-crag6410.c file in my
> tree.
> And in my opinion, to use GPIO_BOARD_START is better than to use
> GLENFARCLAS_PMIC_GPIO_BASE like others for easily reading.
I'd prefer it if the were all defined in terms of the preceeding one but
yes.
> So I think, this should be following...?
Yes.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 3/3 v3.1] ARM: S3C64XX: Correct reservation of GPIOs for CPU module on Cragganmore
2011-11-03 12:10 ` Mark Brown
@ 2011-11-04 5:02 ` Kukjin Kim
0 siblings, 0 replies; 8+ messages in thread
From: Kukjin Kim @ 2011-11-04 5:02 UTC (permalink / raw)
To: linux-arm-kernel
Mark Brown wrote:
>
> On Thu, Nov 03, 2011 at 04:45:21PM +0900, Kukjin Kim wrote:
> > Mark Brown wrote:
>
> > > #define PCA935X_GPIO_BASE GPIO_BOARD_START
> > > #define CODEC_GPIO_BASE (GPIO_BOARD_START + 8)
> > > #define GLENFARCLAS_PMIC_GPIO_BASE (GPIO_BOARD_START + 16)
> > > +#define BANFF_PMIC_GPIO_BASE
> > > (GLENFARCLAS_PMIC_GPIO_BASE + 16)
>
> > Above definitions are at mach/crag6410.h file not mach-crag6410.c file
in my
> > tree.
> > And in my opinion, to use GPIO_BOARD_START is better than to use
> > GLENFARCLAS_PMIC_GPIO_BASE like others for easily reading.
>
> I'd prefer it if the were all defined in terms of the preceeding one but
> yes.
>
> > So I think, this should be following...?
>
> Yes.
OK, applied.
Thanks.
Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2011-11-04 5:02 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-10-31 18:42 [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA Mark Brown
2011-10-31 18:42 ` [PATCH 2/3 v3.1] ARM: SAMSUNG: Fix GPIO space reservation for S3C64xx platforms Mark Brown
2011-10-31 18:42 ` [PATCH 3/3 v3.1] ARM: S3C64XX: Correct reservation of GPIOs for CPU module on Cragganmore Mark Brown
2011-11-03 7:45 ` Kukjin Kim
2011-11-03 12:10 ` Mark Brown
2011-11-04 5:02 ` Kukjin Kim
2011-11-02 12:03 ` [PATCH 1/3 v3.1] ARM: S3C64XX: Update for conversion to SAMSUNG_GPIO_EXTRA Kukjin Kim
2011-11-02 12:30 ` Mark Brown
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.