linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 3/3] ARM: SAMSUNG: i2c/busses: Add HAVE_S3C2410_I2C option to include I2C for Samsung SoCs
@ 2010-07-29  9:42 Kukjin Kim
  2010-07-30  0:22 ` Kyungmin Park
  0 siblings, 1 reply; 6+ messages in thread
From: Kukjin Kim @ 2010-07-29  9:42 UTC (permalink / raw)
  To: linux-arm-kernel

From: Naveen Krishna Ch <ch.naveen@samsung.com>

This patch adds HAVE_S3C2410_I2C to control inclusion of I2C bus driver
on Samsung SoCs and makes I2C bus driver dependency SoC specific instead
of machine specific. This will enalbe all machines using Samsung ARCH_S3C2410,
_S3C64XX, _S5P6440, _S5PC100, and _S5PV210 to select the I2C driver by default

Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Cc: Ben Dooks <ben-linux@fluff.org>
---
Changes since v2:
- Added HAVE_S3C2410_I2C in drivers Kconfig
- Made I2C bus driver dependency SoC specific
- Selected additional support I2C bus driver for S5P6440, S5PC100,
  and S5PV210

Changes since v1:
- Modifed the Kconfig help comments.

 arch/arm/Kconfig           |    5 +++++
 drivers/i2c/busses/Kconfig |   11 +++++++++--
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 98922f7..e922994 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -634,6 +634,7 @@ config ARCH_S3C2410
 	select ARCH_HAS_CPUFREQ
 	select HAVE_CLK
 	select ARCH_USES_GETTIMEOFFSET
+	select HAVE_S3C2410_I2C
 	help
 	  Samsung S3C2410X CPU based systems, such as the Simtec Electronics
 	  BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
@@ -663,6 +664,7 @@ config ARCH_S3C64XX
 	select S3C_DEV_NAND
 	select USB_ARCH_HAS_OHCI
 	select SAMSUNG_GPIOLIB_4BIT
+	select HAVE_S3C2410_I2C
 	help
 	  Samsung S3C64XX series based systems
 
@@ -672,6 +674,7 @@ config ARCH_S5P6440
 	select GENERIC_GPIO
 	select HAVE_CLK
 	select ARCH_USES_GETTIMEOFFSET
+	select HAVE_S3C2410_I2C
 	help
 	  Samsung S5P6440 CPU based systems
 
@@ -691,6 +694,7 @@ config ARCH_S5PC100
 	select CPU_V7
 	select ARM_L1_CACHE_SHIFT_6
 	select ARCH_USES_GETTIMEOFFSET
+	select HAVE_S3C2410_I2C
 	help
 	  Samsung S5PC100 series based systems
 
@@ -701,6 +705,7 @@ config ARCH_S5PV210
 	select HAVE_CLK
 	select ARM_L1_CACHE_SHIFT_6
 	select ARCH_USES_GETTIMEOFFSET
+	select HAVE_S3C2410_I2C
 	help
 	  Samsung S5PV210/S5PC110 series based systems
 
diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
index bceafbf..f1751da 100644
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
@@ -521,12 +521,19 @@ config I2C_PXA_SLAVE
 	  is necessary for systems where the PXA may be a target on the
 	  I2C bus.
 
+config HAVE_S3C2410_I2C
+	bool
+	help
+	  This will include I2C support for Samsung SoCs. If you want to
+	  include I2C support for any machine, kindly select this in the
+	  respective Kconfig file.
+
 config I2C_S3C2410
 	tristate "S3C2410 I2C Driver"
-	depends on ARCH_S3C2410 || ARCH_S3C64XX
+	depends on HAVE_S3C2410_I2C
 	help
 	  Say Y here to include support for I2C controller in the
-	  Samsung S3C2410 based System-on-Chip devices.
+	  Samsung SoCs.
 
 config I2C_S6000
 	tristate "S6000 I2C support"
-- 
1.6.2.5

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v3 3/3] ARM: SAMSUNG: i2c/busses: Add HAVE_S3C2410_I2C option to include I2C for Samsung SoCs
  2010-07-29  9:42 [PATCH v3 3/3] ARM: SAMSUNG: i2c/busses: Add HAVE_S3C2410_I2C option to include I2C for Samsung SoCs Kukjin Kim
@ 2010-07-30  0:22 ` Kyungmin Park
  2010-07-30  1:03   ` Kukjin Kim
  2010-08-04 15:03   ` Ben Dooks
  0 siblings, 2 replies; 6+ messages in thread
From: Kyungmin Park @ 2010-07-30  0:22 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Jul 29, 2010 at 6:42 PM, Kukjin Kim <kgene.kim@samsung.com> wrote:
> From: Naveen Krishna Ch <ch.naveen@samsung.com>
>
> This patch adds HAVE_S3C2410_I2C to control inclusion of I2C bus driver
> on Samsung SoCs and makes I2C bus driver dependency SoC specific instead
> of machine specific. This will enalbe all machines using Samsung ARCH_S3C2410,
> _S3C64XX, _S5P6440, _S5PC100, and _S5PV210 to select the I2C driver by default

What's the different from use PLAT_SAMSUNG?

config I2C_S3C2410
        tristate "S3C2410 I2C Driver"
        depends on PLAT_SAMSUNG

Please don't populate the Kconfigs.

Thank you,
Kyungmin Park

>
> Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com>
> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
> Cc: Ben Dooks <ben-linux@fluff.org>
> ---
> Changes since v2:
> - Added HAVE_S3C2410_I2C in drivers Kconfig
> - Made I2C bus driver dependency SoC specific
> - Selected additional support I2C bus driver for S5P6440, S5PC100,
> ?and S5PV210
>
> Changes since v1:
> - Modifed the Kconfig help comments.
>
> ?arch/arm/Kconfig ? ? ? ? ? | ? ?5 +++++
> ?drivers/i2c/busses/Kconfig | ? 11 +++++++++--
> ?2 files changed, 14 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 98922f7..e922994 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -634,6 +634,7 @@ config ARCH_S3C2410
> ? ? ? ?select ARCH_HAS_CPUFREQ
> ? ? ? ?select HAVE_CLK
> ? ? ? ?select ARCH_USES_GETTIMEOFFSET
> + ? ? ? select HAVE_S3C2410_I2C
> ? ? ? ?help
> ? ? ? ? ?Samsung S3C2410X CPU based systems, such as the Simtec Electronics
> ? ? ? ? ?BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
> @@ -663,6 +664,7 @@ config ARCH_S3C64XX
> ? ? ? ?select S3C_DEV_NAND
> ? ? ? ?select USB_ARCH_HAS_OHCI
> ? ? ? ?select SAMSUNG_GPIOLIB_4BIT
> + ? ? ? select HAVE_S3C2410_I2C
> ? ? ? ?help
> ? ? ? ? ?Samsung S3C64XX series based systems
>
> @@ -672,6 +674,7 @@ config ARCH_S5P6440
> ? ? ? ?select GENERIC_GPIO
> ? ? ? ?select HAVE_CLK
> ? ? ? ?select ARCH_USES_GETTIMEOFFSET
> + ? ? ? select HAVE_S3C2410_I2C
> ? ? ? ?help
> ? ? ? ? ?Samsung S5P6440 CPU based systems
>
> @@ -691,6 +694,7 @@ config ARCH_S5PC100
> ? ? ? ?select CPU_V7
> ? ? ? ?select ARM_L1_CACHE_SHIFT_6
> ? ? ? ?select ARCH_USES_GETTIMEOFFSET
> + ? ? ? select HAVE_S3C2410_I2C
> ? ? ? ?help
> ? ? ? ? ?Samsung S5PC100 series based systems
>
> @@ -701,6 +705,7 @@ config ARCH_S5PV210
> ? ? ? ?select HAVE_CLK
> ? ? ? ?select ARM_L1_CACHE_SHIFT_6
> ? ? ? ?select ARCH_USES_GETTIMEOFFSET
> + ? ? ? select HAVE_S3C2410_I2C
> ? ? ? ?help
> ? ? ? ? ?Samsung S5PV210/S5PC110 series based systems
>
> diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
> index bceafbf..f1751da 100644
> --- a/drivers/i2c/busses/Kconfig
> +++ b/drivers/i2c/busses/Kconfig
> @@ -521,12 +521,19 @@ config I2C_PXA_SLAVE
> ? ? ? ? ?is necessary for systems where the PXA may be a target on the
> ? ? ? ? ?I2C bus.
>
> +config HAVE_S3C2410_I2C
> + ? ? ? bool
> + ? ? ? help
> + ? ? ? ? This will include I2C support for Samsung SoCs. If you want to
> + ? ? ? ? include I2C support for any machine, kindly select this in the
> + ? ? ? ? respective Kconfig file.
> +
> ?config I2C_S3C2410
> ? ? ? ?tristate "S3C2410 I2C Driver"
> - ? ? ? depends on ARCH_S3C2410 || ARCH_S3C64XX
> + ? ? ? depends on HAVE_S3C2410_I2C
> ? ? ? ?help
> ? ? ? ? ?Say Y here to include support for I2C controller in the
> - ? ? ? ? Samsung S3C2410 based System-on-Chip devices.
> + ? ? ? ? Samsung SoCs.
>
> ?config I2C_S6000
> ? ? ? ?tristate "S6000 I2C support"
> --
> 1.6.2.5
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v3 3/3] ARM: SAMSUNG: i2c/busses: Add HAVE_S3C2410_I2C option to include I2C for Samsung SoCs
  2010-07-30  0:22 ` Kyungmin Park
@ 2010-07-30  1:03   ` Kukjin Kim
  2010-07-30  2:42     ` Kyungmin Park
  2010-08-04 15:03   ` Ben Dooks
  1 sibling, 1 reply; 6+ messages in thread
From: Kukjin Kim @ 2010-07-30  1:03 UTC (permalink / raw)
  To: linux-arm-kernel

Kyungmin Park wrote:
> 
> On Thu, Jul 29, 2010 at 6:42 PM, Kukjin Kim <kgene.kim@samsung.com> wrote:
> > From: Naveen Krishna Ch <ch.naveen@samsung.com>
> >
> > This patch adds HAVE_S3C2410_I2C to control inclusion of I2C bus driver
> > on Samsung SoCs and makes I2C bus driver dependency SoC specific instead
> > of machine specific. This will enalbe all machines using Samsung
> ARCH_S3C2410,
> > _S3C64XX, _S5P6440, _S5PC100, and _S5PV210 to select the I2C driver by
> default
> 
> What's the different from use PLAT_SAMSUNG?
> 
Hi,

Hmm..the difference?

I remember, already said to you...
Anyway actually, there was a stuff in here about that.
Please refer to following...it may answer on your question.

--- From Ben Dooks

>  config RTC_DRV_S3C
>  	tristate "Samsung S3C series SoC RTC"
> -	depends on ARCH_S3C2410
> +	depends on ARCH_S3C2410 || ARCH_S3C64XX

I wonder whether just making this depend on either S3C_DEV_RTC, or simply
PLAT_SAMSUNG would just be a better choice.

The S3C_DEV_RTC would mean that the drivers the core of the kernel
would be built, but means that we can't speculatively build drivers
if the kernel hasn't any machines using them.

Making it depend on PLAT_SAMSUNG would mean it is available to all,
but would be selectable even if there isn't a machine supporting it
being built.

The current situation would mean that we have to update driver Kconfig
entries each time a new SoC turns up...

We could also have a HAVE_RTC_DRV_S3C so that all SoCs supporting this
coudl select it independant of whether there is machine support.

---

It doesn't mean that we should use HAVE_XXX in this case...
But this way is better _now_ and they used same method in several drivers.
And if driver IP changes, we can use with HAVE_XXXV2...

> config I2C_S3C2410
>         tristate "S3C2410 I2C Driver"
>         depends on PLAT_SAMSUNG
> 
> Please don't populate the Kconfigs.
> 

I hope you stop talking same issue without alternative...

> Thank you,
> Kyungmin Park
> 
> >
> > Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com>
> > Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
> > Cc: Ben Dooks <ben-linux@fluff.org>
> > ---
> > Changes since v2:
> > - Added HAVE_S3C2410_I2C in drivers Kconfig
> > - Made I2C bus driver dependency SoC specific
> > - Selected additional support I2C bus driver for S5P6440, S5PC100,
> >  and S5PV210
> >
> > Changes since v1:
> > - Modifed the Kconfig help comments.
> >
> >  arch/arm/Kconfig           |    5 +++++
> >  drivers/i2c/busses/Kconfig |   11 +++++++++--
> >  2 files changed, 14 insertions(+), 2 deletions(-)
> >
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 98922f7..e922994 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -634,6 +634,7 @@ config ARCH_S3C2410
> >        select ARCH_HAS_CPUFREQ
> >        select HAVE_CLK
> >        select ARCH_USES_GETTIMEOFFSET
> > +       select HAVE_S3C2410_I2C
> >        help
> >          Samsung S3C2410X CPU based systems, such as the Simtec
> Electronics
> >          BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940
> or
> > @@ -663,6 +664,7 @@ config ARCH_S3C64XX
> >        select S3C_DEV_NAND
> >        select USB_ARCH_HAS_OHCI
> >        select SAMSUNG_GPIOLIB_4BIT
> > +       select HAVE_S3C2410_I2C
> >        help
> >          Samsung S3C64XX series based systems
> >
> > @@ -672,6 +674,7 @@ config ARCH_S5P6440
> >        select GENERIC_GPIO
> >        select HAVE_CLK
> >        select ARCH_USES_GETTIMEOFFSET
> > +       select HAVE_S3C2410_I2C
> >        help
> >          Samsung S5P6440 CPU based systems
> >
> > @@ -691,6 +694,7 @@ config ARCH_S5PC100
> >        select CPU_V7
> >        select ARM_L1_CACHE_SHIFT_6
> >        select ARCH_USES_GETTIMEOFFSET
> > +       select HAVE_S3C2410_I2C
> >        help
> >          Samsung S5PC100 series based systems
> >
> > @@ -701,6 +705,7 @@ config ARCH_S5PV210
> >        select HAVE_CLK
> >        select ARM_L1_CACHE_SHIFT_6
> >        select ARCH_USES_GETTIMEOFFSET
> > +       select HAVE_S3C2410_I2C
> >        help
> >          Samsung S5PV210/S5PC110 series based systems
> >
> > diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
> > index bceafbf..f1751da 100644
> > --- a/drivers/i2c/busses/Kconfig
> > +++ b/drivers/i2c/busses/Kconfig
> > @@ -521,12 +521,19 @@ config I2C_PXA_SLAVE
> >          is necessary for systems where the PXA may be a target on the
> >          I2C bus.
> >
> > +config HAVE_S3C2410_I2C
> > +       bool
> > +       help
> > +         This will include I2C support for Samsung SoCs. If you want to
> > +         include I2C support for any machine, kindly select this in the
> > +         respective Kconfig file.
> > +
> >  config I2C_S3C2410
> >        tristate "S3C2410 I2C Driver"
> > -       depends on ARCH_S3C2410 || ARCH_S3C64XX
> > +       depends on HAVE_S3C2410_I2C
> >        help
> >          Say Y here to include support for I2C controller in the
> > -         Samsung S3C2410 based System-on-Chip devices.
> > +         Samsung SoCs.
> >
> >  config I2C_S6000
> >        tristate "S6000 I2C support"
> > --


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] 6+ messages in thread

* [PATCH v3 3/3] ARM: SAMSUNG: i2c/busses: Add HAVE_S3C2410_I2C option to include I2C for Samsung SoCs
  2010-07-30  1:03   ` Kukjin Kim
@ 2010-07-30  2:42     ` Kyungmin Park
  2010-07-30  4:25       ` Kukjin Kim
  0 siblings, 1 reply; 6+ messages in thread
From: Kyungmin Park @ 2010-07-30  2:42 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jul 30, 2010 at 10:03 AM, Kukjin Kim <kgene.kim@samsung.com> wrote:
> Kyungmin Park wrote:
>>
>> On Thu, Jul 29, 2010 at 6:42 PM, Kukjin Kim <kgene.kim@samsung.com> wrote:
>> > From: Naveen Krishna Ch <ch.naveen@samsung.com>
>> >
>> > This patch adds HAVE_S3C2410_I2C to control inclusion of I2C bus driver
>> > on Samsung SoCs and makes I2C bus driver dependency SoC specific instead
>> > of machine specific. This will enalbe all machines using Samsung
>> ARCH_S3C2410,
>> > _S3C64XX, _S5P6440, _S5PC100, and _S5PV210 to select the I2C driver by
>> default
>>
>> What's the different from use PLAT_SAMSUNG?
>>
> Hi,
>
> Hmm..the difference?
>
> I remember, already said to you...
> Anyway actually, there was a stuff in here about that.
> Please refer to following...it may answer on your question.
>
> --- From Ben Dooks
>
>> ?config RTC_DRV_S3C
>> ? ? ? tristate "Samsung S3C series SoC RTC"
>> - ? ? depends on ARCH_S3C2410
>> + ? ? depends on ARCH_S3C2410 || ARCH_S3C64XX
>
> I wonder whether just making this depend on either S3C_DEV_RTC, or simply
> PLAT_SAMSUNG would just be a better choice.
>
> The S3C_DEV_RTC would mean that the drivers the core of the kernel
> would be built, but means that we can't speculatively build drivers
> if the kernel hasn't any machines using them.
>
> Making it depend on PLAT_SAMSUNG would mean it is available to all,
> but would be selectable even if there isn't a machine supporting it
> being built.
>
> The current situation would mean that we have to update driver Kconfig
> entries each time a new SoC turns up...

In other word, It can make it workable when new SoCs arrives, even
though depends on PLAT_SAMSUNG.

If new chip has improved i2C IP then define new I2C drivers and modify
it as 'depends on PLAT_SAMUSNG if !NEW_IP_I2C'
and use another i2c drivers. of course it's depends on PLAT_SAMSUNG or
PLAT_S5P if NEW_IP_I2C.

>
> We could also have a HAVE_RTC_DRV_S3C so that all SoCs supporting this
> coudl select it independant of whether there is machine support.
>
> ---
>
> It doesn't mean that we should use HAVE_XXX in this case...
> But this way is better _now_ and they used same method in several drivers.
> And if driver IP changes, we can use with HAVE_XXXV2...
>
>> config I2C_S3C2410
>> ? ? ? ? tristate "S3C2410 I2C Driver"
>> ? ? ? ? depends on PLAT_SAMSUNG
>>
>> Please don't populate the Kconfigs.
>>
>
> I hope you stop talking same issue without alternative...
>
>> Thank you,
>> Kyungmin Park
>>
>> >
>> > Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com>
>> > Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
>> > Cc: Ben Dooks <ben-linux@fluff.org>
>> > ---
>> > Changes since v2:
>> > - Added HAVE_S3C2410_I2C in drivers Kconfig
>> > - Made I2C bus driver dependency SoC specific
>> > - Selected additional support I2C bus driver for S5P6440, S5PC100,
>> > ?and S5PV210
>> >
>> > Changes since v1:
>> > - Modifed the Kconfig help comments.
>> >
>> > ?arch/arm/Kconfig ? ? ? ? ? | ? ?5 +++++
>> > ?drivers/i2c/busses/Kconfig | ? 11 +++++++++--
>> > ?2 files changed, 14 insertions(+), 2 deletions(-)
>> >
>> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> > index 98922f7..e922994 100644
>> > --- a/arch/arm/Kconfig
>> > +++ b/arch/arm/Kconfig
>> > @@ -634,6 +634,7 @@ config ARCH_S3C2410
>> > ? ? ? ?select ARCH_HAS_CPUFREQ
>> > ? ? ? ?select HAVE_CLK
>> > ? ? ? ?select ARCH_USES_GETTIMEOFFSET
>> > + ? ? ? select HAVE_S3C2410_I2C
>> > ? ? ? ?help
>> > ? ? ? ? ?Samsung S3C2410X CPU based systems, such as the Simtec
>> Electronics
>> > ? ? ? ? ?BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940
>> or
>> > @@ -663,6 +664,7 @@ config ARCH_S3C64XX
>> > ? ? ? ?select S3C_DEV_NAND
>> > ? ? ? ?select USB_ARCH_HAS_OHCI
>> > ? ? ? ?select SAMSUNG_GPIOLIB_4BIT
>> > + ? ? ? select HAVE_S3C2410_I2C
>> > ? ? ? ?help
>> > ? ? ? ? ?Samsung S3C64XX series based systems
>> >
>> > @@ -672,6 +674,7 @@ config ARCH_S5P6440
>> > ? ? ? ?select GENERIC_GPIO
>> > ? ? ? ?select HAVE_CLK
>> > ? ? ? ?select ARCH_USES_GETTIMEOFFSET
>> > + ? ? ? select HAVE_S3C2410_I2C
>> > ? ? ? ?help
>> > ? ? ? ? ?Samsung S5P6440 CPU based systems
>> >
>> > @@ -691,6 +694,7 @@ config ARCH_S5PC100
>> > ? ? ? ?select CPU_V7
>> > ? ? ? ?select ARM_L1_CACHE_SHIFT_6
>> > ? ? ? ?select ARCH_USES_GETTIMEOFFSET
>> > + ? ? ? select HAVE_S3C2410_I2C
>> > ? ? ? ?help
>> > ? ? ? ? ?Samsung S5PC100 series based systems
>> >
>> > @@ -701,6 +705,7 @@ config ARCH_S5PV210
>> > ? ? ? ?select HAVE_CLK
>> > ? ? ? ?select ARM_L1_CACHE_SHIFT_6
>> > ? ? ? ?select ARCH_USES_GETTIMEOFFSET
>> > + ? ? ? select HAVE_S3C2410_I2C
>> > ? ? ? ?help
>> > ? ? ? ? ?Samsung S5PV210/S5PC110 series based systems
>> >
>> > diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
>> > index bceafbf..f1751da 100644
>> > --- a/drivers/i2c/busses/Kconfig
>> > +++ b/drivers/i2c/busses/Kconfig
>> > @@ -521,12 +521,19 @@ config I2C_PXA_SLAVE
>> > ? ? ? ? ?is necessary for systems where the PXA may be a target on the
>> > ? ? ? ? ?I2C bus.
>> >
>> > +config HAVE_S3C2410_I2C
>> > + ? ? ? bool
>> > + ? ? ? help
>> > + ? ? ? ? This will include I2C support for Samsung SoCs. If you want to
>> > + ? ? ? ? include I2C support for any machine, kindly select this in the
>> > + ? ? ? ? respective Kconfig file.
>> > +
>> > ?config I2C_S3C2410
>> > ? ? ? ?tristate "S3C2410 I2C Driver"
>> > - ? ? ? depends on ARCH_S3C2410 || ARCH_S3C64XX
>> > + ? ? ? depends on HAVE_S3C2410_I2C
>> > ? ? ? ?help
>> > ? ? ? ? ?Say Y here to include support for I2C controller in the
>> > - ? ? ? ? Samsung S3C2410 based System-on-Chip devices.
>> > + ? ? ? ? Samsung SoCs.
>> >
>> > ?config I2C_S6000
>> > ? ? ? ?tristate "S6000 I2C support"
>> > --
>
>
> Thanks.
>
> Best regards,
> Kgene.
> --
> Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
> SW Solution Development Team, Samsung Electronics Co., Ltd.
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v3 3/3] ARM: SAMSUNG: i2c/busses: Add HAVE_S3C2410_I2C option to include I2C for Samsung SoCs
  2010-07-30  2:42     ` Kyungmin Park
@ 2010-07-30  4:25       ` Kukjin Kim
  0 siblings, 0 replies; 6+ messages in thread
From: Kukjin Kim @ 2010-07-30  4:25 UTC (permalink / raw)
  To: linux-arm-kernel


> -----Original Message-----
> From: kyungmin78 at gmail.com [mailto:kyungmin78 at gmail.com] On Behalf Of
> Kyungmin Park
> Sent: Friday, July 30, 2010 11:43 AM
> To: Kukjin Kim
> Cc: linux-arm-kernel at lists.infradead.org;
linux-samsung-soc at vger.kernel.org;
> linux-i2c at vger.kernel.org; ben-linux at fluff.org; Naveen Krishna Ch
> Subject: Re: [PATCH v3 3/3] ARM: SAMSUNG: i2c/busses: Add
> HAVE_S3C2410_I2C option to include I2C for Samsung SoCs
> 
> On Fri, Jul 30, 2010 at 10:03 AM, Kukjin Kim <kgene.kim@samsung.com>
wrote:
> > Kyungmin Park wrote:
> >>
> >> On Thu, Jul 29, 2010 at 6:42 PM, Kukjin Kim <kgene.kim@samsung.com>
wrote:
> >> > From: Naveen Krishna Ch <ch.naveen@samsung.com>
> >> >
> >> > This patch adds HAVE_S3C2410_I2C to control inclusion of I2C bus
driver
> >> > on Samsung SoCs and makes I2C bus driver dependency SoC specific
> instead
> >> > of machine specific. This will enalbe all machines using Samsung
> >> ARCH_S3C2410,
> >> > _S3C64XX, _S5P6440, _S5PC100, and _S5PV210 to select the I2C driver
by
> >> default
> >>
> >> What's the different from use PLAT_SAMSUNG?
> >>
> > Hi,
> >
> > Hmm..the difference?
> >
> > I remember, already said to you...
> > Anyway actually, there was a stuff in here about that.
> > Please refer to following...it may answer on your question.
> >
> > --- From Ben Dooks
> >
> >> ?config RTC_DRV_S3C
> >> ? ? ? tristate "Samsung S3C series SoC RTC"
> >> - ? ? depends on ARCH_S3C2410
> >> + ? ? depends on ARCH_S3C2410 || ARCH_S3C64XX
> >
> > I wonder whether just making this depend on either S3C_DEV_RTC, or
simply
> > PLAT_SAMSUNG would just be a better choice.
> >
> > The S3C_DEV_RTC would mean that the drivers the core of the kernel
> > would be built, but means that we can't speculatively build drivers
> > if the kernel hasn't any machines using them.
> >
> > Making it depend on PLAT_SAMSUNG would mean it is available to all,
> > but would be selectable even if there isn't a machine supporting it
> > being built.
> >
> > The current situation would mean that we have to update driver Kconfig
> > entries each time a new SoC turns up...
> 
> In other word, It can make it workable when new SoCs arrives, even
> though depends on PLAT_SAMSUNG.
> 
> If new chip has improved i2C IP then define new I2C drivers and modify
> it as 'depends on PLAT_SAMUSNG if !NEW_IP_I2C'
> and use another i2c drivers. of course it's depends on PLAT_SAMSUNG or
> PLAT_S5P if NEW_IP_I2C.
> 
Hmm...if there is new IP driver for Samsung SoCs, why should I add extra
option for new one like your suggestion?
As I said, just 'depends on HAVE_SAMSUNGNEWIPV2_I2C' is enough for it...

I'm still thinking, this way is better to me...anything else?

> >
> > We could also have a HAVE_RTC_DRV_S3C so that all SoCs supporting this
> > coudl select it independant of whether there is machine support.
> >
> > ---
> >
> > It doesn't mean that we should use HAVE_XXX in this case...
> > But this way is better _now_ and they used same method in several
drivers.
> > And if driver IP changes, we can use with HAVE_XXXV2...
> >
> >> config I2C_S3C2410
> >> ? ? ? ? tristate "S3C2410 I2C Driver"
> >> ? ? ? ? depends on PLAT_SAMSUNG
> >>
> >> Please don't populate the Kconfigs.
> >>
> >
> > I hope you stop talking same issue without alternative...
> >
> >> Thank you,
> >> Kyungmin Park
> >>
> >> >
> >> > Signed-off-by: Naveen Krishna Ch <ch.naveen@samsung.com>
> >> > Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
> >> > Cc: Ben Dooks <ben-linux@fluff.org>
> >> > ---

(snip)

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] 6+ messages in thread

* [PATCH v3 3/3] ARM: SAMSUNG: i2c/busses: Add HAVE_S3C2410_I2C option to include I2C for Samsung SoCs
  2010-07-30  0:22 ` Kyungmin Park
  2010-07-30  1:03   ` Kukjin Kim
@ 2010-08-04 15:03   ` Ben Dooks
  1 sibling, 0 replies; 6+ messages in thread
From: Ben Dooks @ 2010-08-04 15:03 UTC (permalink / raw)
  To: linux-arm-kernel

On 30/07/10 01:22, Kyungmin Park wrote:
> On Thu, Jul 29, 2010 at 6:42 PM, Kukjin Kim <kgene.kim@samsung.com> wrote:
>> From: Naveen Krishna Ch <ch.naveen@samsung.com>
>>
>> This patch adds HAVE_S3C2410_I2C to control inclusion of I2C bus driver
>> on Samsung SoCs and makes I2C bus driver dependency SoC specific instead
>> of machine specific. This will enalbe all machines using Samsung ARCH_S3C2410,
>> _S3C64XX, _S5P6440, _S5PC100, and _S5PV210 to select the I2C driver by default
> 
> What's the different from use PLAT_SAMSUNG?
> 
> config I2C_S3C2410
>         tristate "S3C2410 I2C Driver"
>         depends on PLAT_SAMSUNG
> 
> Please don't populate the Kconfigs.

For things that are pretty common among all the Samsung architectures
such as the i2c, rtc and serial ports that we use PLAT_SAMSUNG, as these
drivers tend to compile and do not go wrong when loaded onto newer
systems (either the device name is changed, so if there is no support
then the driver will not bind, or someone didn't change the name in the
soc support and it should only be a transitory bug during development).

I'm going to spend some time thinking about the current Kconfig setup
to see if there is any improvements can be done.

-- 
Ben

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2010-08-04 15:03 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-29  9:42 [PATCH v3 3/3] ARM: SAMSUNG: i2c/busses: Add HAVE_S3C2410_I2C option to include I2C for Samsung SoCs Kukjin Kim
2010-07-30  0:22 ` Kyungmin Park
2010-07-30  1:03   ` Kukjin Kim
2010-07-30  2:42     ` Kyungmin Park
2010-07-30  4:25       ` Kukjin Kim
2010-08-04 15:03   ` Ben Dooks

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).