linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error
@ 2009-10-28 12:15 Ben Dooks
  2009-10-28 12:15 ` [PATCH 02/12] ARM: S3C24XX: Introduce S3C2442B CPU Ben Dooks
                   ` (11 more replies)
  0 siblings, 12 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

From: Ramax Lo <ramaxlo@gmail.com>

Define a macro to avoid the following error during kernel build process
for platforms other than s3c2410:

arch/arm/plat-s3c24xx/cpu.c:84: error: ?s3c2410a_init? undeclared here (not in a function)

Signed-off-by: Ramax Lo <ramaxlo@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-s3c24xx/include/plat/s3c2410.h |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/arm/plat-s3c24xx/include/plat/s3c2410.h b/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
index b6deeef..82ab4aa 100644
--- a/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
+++ b/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
@@ -27,6 +27,7 @@ extern void s3c2410_init_clocks(int xtal);
 #define s3c2410_init_uarts NULL
 #define s3c2410_map_io NULL
 #define s3c2410_init NULL
+#define s3c2410a_init NULL
 #endif
 
 extern int s3c2410_baseclk_add(void);
-- 
1.6.3.3

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

* [PATCH 02/12] ARM: S3C24XX: Introduce S3C2442B CPU
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-11-01 21:12   ` Pavel Machek
  2009-10-28 12:15 ` [PATCH 03/12] ARM: S3C2410: Fix link if CONFIG_S3C2410_IOTIMING is not set Ben Dooks
                   ` (10 subsequent siblings)
  11 siblings, 1 reply; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

From: Harald Welte <laforge@gnumonks.org>

Add the S3C2442B CPU ID to aid support the Openmoko GTA02 / Freerunner.

Signed-off-by: Harald Welte <laforge@gnumonks.org>
Signed-off-by: Andy Green <andy@warmcat.com>
Signed-off-by: Nelson Castillo <arhuaco@freaks-unidos.net>
[ben-linux at fluff.org: edit description for clarity and S3C2442B as uppercase]
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-s3c24xx/cpu.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/arch/arm/plat-s3c24xx/cpu.c b/arch/arm/plat-s3c24xx/cpu.c
index 5447e60..4af9dd9 100644
--- a/arch/arm/plat-s3c24xx/cpu.c
+++ b/arch/arm/plat-s3c24xx/cpu.c
@@ -61,6 +61,7 @@ static const char name_s3c2410[]  = "S3C2410";
 static const char name_s3c2412[]  = "S3C2412";
 static const char name_s3c2440[]  = "S3C2440";
 static const char name_s3c2442[]  = "S3C2442";
+static const char name_s3c2442b[]  = "S3C2442B";
 static const char name_s3c2443[]  = "S3C2443";
 static const char name_s3c2410a[] = "S3C2410A";
 static const char name_s3c2440a[] = "S3C2440A";
@@ -112,6 +113,15 @@ static struct cpu_table cpu_ids[] __initdata = {
 		.name		= name_s3c2442
 	},
 	{
+		.idcode		= 0x32440aab,
+		.idmask		= 0xffffffff,
+		.map_io		= s3c244x_map_io,
+		.init_clocks	= s3c244x_init_clocks,
+		.init_uarts	= s3c244x_init_uarts,
+		.init		= s3c2442_init,
+		.name		= name_s3c2442b
+	},
+	{
 		.idcode		= 0x32412001,
 		.idmask		= 0xffffffff,
 		.map_io		= s3c2412_map_io,
-- 
1.6.3.3

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

* [PATCH 03/12] ARM: S3C2410: Fix link if CONFIG_S3C2410_IOTIMING is not set
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
  2009-10-28 12:15 ` [PATCH 02/12] ARM: S3C24XX: Introduce S3C2442B CPU Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:15 ` [PATCH 04/12] ARM: S3C: Fix adc function exports Ben Dooks
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

Fix the link errors if cpu-frequency support is enabled on s3c2410 systems
but there is no CONFIG_S3C2410_IOTIMING set. Fix this by ensuring the
relevant symbols are defined NULL if the code is not being built in.

Fixes the following error:
arch/arm/mach-s3c2410/built-in.o: undefined reference to `s3c2410_iotiming_get'
arch/arm/mach-s3c2410/built-in.o: undefined reference to `s3c2410_iotiming_set'
arch/arm/mach-s3c2410/built-in.o: undefined reference to `s3c2410_iotiming_calc'

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h b/arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h
index efeb025..c776120 100644
--- a/arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h
+++ b/arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h
@@ -222,7 +222,9 @@ extern struct clk *s3c_cpufreq_clk_get(struct device *, const char *);
 /* S3C2410 and compatible exported functions */
 
 extern void s3c2410_cpufreq_setrefresh(struct s3c_cpufreq_config *cfg);
+extern void s3c2410_set_fvco(struct s3c_cpufreq_config *cfg);
 
+#ifdef CONFIG_S3C2410_IOTIMING
 extern int s3c2410_iotiming_calc(struct s3c_cpufreq_config *cfg,
 				 struct s3c_iotimings *iot);
 
@@ -231,8 +233,11 @@ extern int s3c2410_iotiming_get(struct s3c_cpufreq_config *cfg,
 
 extern void s3c2410_iotiming_set(struct s3c_cpufreq_config *cfg,
 				 struct s3c_iotimings *iot);
-
-extern void s3c2410_set_fvco(struct s3c_cpufreq_config *cfg);
+#else
+#define s3c2410_iotiming_calc NULL
+#define s3c2410_iotiming_get NULL
+#define s3c2410_iotiming_set NULL
+#endif /* CONFIG_S3C2410_IOTIMING */
 
 /* S3C2412 compatible routines */
 
-- 
1.6.3.3

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

* [PATCH 04/12] ARM: S3C: Fix adc function exports
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
  2009-10-28 12:15 ` [PATCH 02/12] ARM: S3C24XX: Introduce S3C2442B CPU Ben Dooks
  2009-10-28 12:15 ` [PATCH 03/12] ARM: S3C2410: Fix link if CONFIG_S3C2410_IOTIMING is not set Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:15 ` [PATCH 05/12] ARM: S3C24XX: arch/arm/plat-s3c24xx: Move dereference after NULL test Ben Dooks
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

From: Ryan Mallon <ryan@bluewatersys.com>

Fix the export of s3c_adc_read.

Signed-off-by: Ryan Mallon <ryan@bluewatersys.com>
[ben-linux at fluff.org: remove unexport of s3c_adc_start, needed for ts]
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-s3c24xx/adc.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/plat-s3c24xx/adc.c b/arch/arm/plat-s3c24xx/adc.c
index 11117a7..b18eead 100644
--- a/arch/arm/plat-s3c24xx/adc.c
+++ b/arch/arm/plat-s3c24xx/adc.c
@@ -188,7 +188,7 @@ int s3c_adc_read(struct s3c_adc_client *client, unsigned int ch)
 err:
 	return ret;
 }
-EXPORT_SYMBOL_GPL(s3c_adc_convert);
+EXPORT_SYMBOL_GPL(s3c_adc_read);
 
 static void s3c_adc_default_select(struct s3c_adc_client *client,
 				   unsigned select)
-- 
1.6.3.3

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

* [PATCH 05/12] ARM: S3C24XX: arch/arm/plat-s3c24xx: Move dereference after NULL test
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
                   ` (2 preceding siblings ...)
  2009-10-28 12:15 ` [PATCH 04/12] ARM: S3C: Fix adc function exports Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:15 ` [PATCH 06/12] ARM: S3C64XX: Fix S3C64XX_CLKDIV0_ARM_MASK value Ben Dooks
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

From: Julia Lawall <julia@diku.dk>

If the NULL test on buf is needed, then the dereference should be after the
NULL test.

A simplified version of the semantic match that detects this problem is as
follows (http://coccinelle.lip6.fr/):

// <smpl>
@match exists@
expression x, E;
identifier fld;
@@

* x->fld
  ... when != \(x = E\|&x\)
* x == NULL
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-s3c24xx/dma.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/arm/plat-s3c24xx/dma.c b/arch/arm/plat-s3c24xx/dma.c
index 196b191..f046f8c 100644
--- a/arch/arm/plat-s3c24xx/dma.c
+++ b/arch/arm/plat-s3c24xx/dma.c
@@ -208,14 +208,14 @@ s3c2410_dma_loadbuffer(struct s3c2410_dma_chan *chan,
 {
 	unsigned long reload;
 
-	pr_debug("s3c2410_chan_loadbuffer: loading buff %p (0x%08lx,0x%06x)\n",
-		 buf, (unsigned long)buf->data, buf->size);
-
 	if (buf == NULL) {
 		dmawarn("buffer is NULL\n");
 		return -EINVAL;
 	}
 
+	pr_debug("s3c2410_chan_loadbuffer: loading buff %p (0x%08lx,0x%06x)\n",
+		 buf, (unsigned long)buf->data, buf->size);
+
 	/* check the state of the channel before we do anything */
 
 	if (chan->load_state == S3C2410_DMALOAD_1LOADED) {
-- 
1.6.3.3

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

* [PATCH 06/12] ARM: S3C64XX: Fix S3C64XX_CLKDIV0_ARM_MASK value
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
                   ` (3 preceding siblings ...)
  2009-10-28 12:15 ` [PATCH 05/12] ARM: S3C24XX: arch/arm/plat-s3c24xx: Move dereference after NULL test Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:15 ` [PATCH 07/12] ARM: S3C64XX: Set rate of crystal mux Ben Dooks
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

From: Kukjin Kim <kgene.kim@samsung.com>

Fix the values of S3C6400_CLKDIV0_ARM_MASK and S3C6410_CLKDIV0_ARM_MASK.

Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-s3c64xx/include/plat/regs-clock.h |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/plat-s3c64xx/include/plat/regs-clock.h b/arch/arm/plat-s3c64xx/include/plat/regs-clock.h
index a8777a7..ff46e7f 100644
--- a/arch/arm/plat-s3c64xx/include/plat/regs-clock.h
+++ b/arch/arm/plat-s3c64xx/include/plat/regs-clock.h
@@ -51,8 +51,8 @@
 #define S3C6400_CLKDIV0_HCLK_SHIFT	(8)
 #define S3C6400_CLKDIV0_MPLL_MASK	(0x1 << 4)
 #define S3C6400_CLKDIV0_MPLL_SHIFT	(4)
-#define S3C6400_CLKDIV0_ARM_MASK	(0x3 << 0)
-#define S3C6410_CLKDIV0_ARM_MASK	(0x7 << 0)
+#define S3C6400_CLKDIV0_ARM_MASK	(0x7 << 0)
+#define S3C6410_CLKDIV0_ARM_MASK	(0xf << 0)
 #define S3C6400_CLKDIV0_ARM_SHIFT	(0)
 
 /* CLKDIV1 */
-- 
1.6.3.3

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

* [PATCH 07/12] ARM: S3C64XX: Set rate of crystal mux
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
                   ` (4 preceding siblings ...)
  2009-10-28 12:15 ` [PATCH 06/12] ARM: S3C64XX: Fix S3C64XX_CLKDIV0_ARM_MASK value Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:15 ` [PATCH 08/12] ARM: S3C: Add info for supporting circular DMA buffers Ben Dooks
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

From: Mark Brown <broonie@opensource.wolfsonmicro.com>

The current code assumes that the external clock mux will be set to
the crystal. Set this up explicitly within the clock API.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-s3c64xx/s3c6400-clock.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/arch/arm/plat-s3c64xx/s3c6400-clock.c b/arch/arm/plat-s3c64xx/s3c6400-clock.c
index 9745852..6ffa21e 100644
--- a/arch/arm/plat-s3c64xx/s3c6400-clock.c
+++ b/arch/arm/plat-s3c64xx/s3c6400-clock.c
@@ -677,6 +677,9 @@ void __init_or_cpufreq s3c6400_setup_clocks(void)
 
 	printk(KERN_DEBUG "%s: xtal is %ld\n", __func__, xtal);
 
+	/* For now assume the mux always selects the crystal */
+	clk_ext_xtal_mux.parent = xtal_clk;
+
 	epll = s3c6400_get_epll(xtal);
 	mpll = s3c6400_get_pll(xtal, __raw_readl(S3C_MPLL_CON));
 	apll = s3c6400_get_pll(xtal, __raw_readl(S3C_APLL_CON));
-- 
1.6.3.3

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

* [PATCH 08/12] ARM: S3C: Add info for supporting circular DMA buffers
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
                   ` (5 preceding siblings ...)
  2009-10-28 12:15 ` [PATCH 07/12] ARM: S3C64XX: Set rate of crystal mux Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:39   ` Mark Brown
  2009-10-28 12:15 ` [PATCH 09/12] ARM: S3C2440: mini2440: Fix missing CONFIG_S3C_DEV_USB_HOST Ben Dooks
                   ` (4 subsequent siblings)
  11 siblings, 1 reply; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

The S3C64XX DMA implementation will work a lot better with the ability
to enqueue circular buffers as the hardware can do it's own linked-list
management.

Add a function s3c_dma_has_circular() to show that the system can do this
and a flag for the channel.

Update the s3c24xx/s3c64xx I2S DMA code to deal with this.

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
CC: Mark Brown <broonie@@opensource.wolfsonmicro.com>
---
 arch/arm/mach-s3c2410/include/mach/dma.h |    7 +++++++
 arch/arm/mach-s3c6400/include/mach/dma.h |    5 +++++
 sound/soc/s3c24xx/s3c24xx-pcm.c          |   17 +++++++++++++++--
 3 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-s3c2410/include/mach/dma.h b/arch/arm/mach-s3c2410/include/mach/dma.h
index c3a2629..92e2687 100644
--- a/arch/arm/mach-s3c2410/include/mach/dma.h
+++ b/arch/arm/mach-s3c2410/include/mach/dma.h
@@ -110,6 +110,8 @@ enum s3c2410_dma_loadst {
 					    * waiting for reloads */
 #define S3C2410_DMAF_AUTOSTART    (1<<1)   /* auto-start if buffer queued */
 
+#define S3C2410_DMAF_CIRCULAR	(1 << 2)	/* no circular dma support */
+
 /* dma buffer */
 
 struct s3c2410_dma_buf;
@@ -194,4 +196,9 @@ struct s3c2410_dma_chan {
 
 typedef unsigned long dma_device_t;
 
+static inline bool s3c_dma_has_circular(void)
+{
+	return false;
+}
+
 #endif /* __ASM_ARCH_DMA_H */
diff --git a/arch/arm/mach-s3c6400/include/mach/dma.h b/arch/arm/mach-s3c6400/include/mach/dma.h
index 1067619..004edab 100644
--- a/arch/arm/mach-s3c6400/include/mach/dma.h
+++ b/arch/arm/mach-s3c6400/include/mach/dma.h
@@ -68,6 +68,11 @@ static __inline__ int s3c_dma_has_circular(void)
 
 #define S3C2410_DMAF_CIRCULAR		(1 << 0)
 
+static inline bool s3c_dma_has_circular(void)
+{
+	return false;
+}
+
 #include <plat/dma.h>
 
 #endif /* __ASM_ARCH_IRQ_H */
diff --git a/sound/soc/s3c24xx/s3c24xx-pcm.c b/sound/soc/s3c24xx/s3c24xx-pcm.c
index 5cbbdc8..1f35c6f 100644
--- a/sound/soc/s3c24xx/s3c24xx-pcm.c
+++ b/sound/soc/s3c24xx/s3c24xx-pcm.c
@@ -75,11 +75,19 @@ static void s3c24xx_pcm_enqueue(struct snd_pcm_substream *substream)
 {
 	struct s3c24xx_runtime_data *prtd = substream->runtime->private_data;
 	dma_addr_t pos = prtd->dma_pos;
+	unsigned int limit;
 	int ret;
 
 	pr_debug("Entered %s\n", __func__);
 
-	while (prtd->dma_loaded < prtd->dma_limit) {
+	if (s3c_dma_has_circular()) {
+		limit = (prtd->dma_end - prtd->dma_start) / prtd->dma_period;
+	} else
+		limit = prtd->dma_limit;
+
+	pr_debug("%s: loaded %d, limit %d\n", __func__, prtd->dma_loaded, limit);
+
+	while (prtd->dma_loaded < limit) {
 		unsigned long len = prtd->dma_period;
 
 		pr_debug("dma_loaded: %d\n", prtd->dma_loaded);
@@ -123,7 +131,7 @@ static void s3c24xx_audio_buffdone(struct s3c2410_dma_chan *channel,
 		snd_pcm_period_elapsed(substream);
 
 	spin_lock(&prtd->lock);
-	if (prtd->state & ST_RUNNING) {
+	if (prtd->state & ST_RUNNING && !s3c_dma_has_circular()) {
 		prtd->dma_loaded--;
 		s3c24xx_pcm_enqueue(substream);
 	}
@@ -164,6 +172,11 @@ static int s3c24xx_pcm_hw_params(struct snd_pcm_substream *substream,
 			printk(KERN_ERR "failed to get dma channel\n");
 			return ret;
 		}
+
+		/* use the circular buffering if we have it available. */
+		if (s3c_dma_has_circular())
+			s3c2410_dma_setflags(prtd->params->channel,
+					     S3C2410_DMAF_CIRCULAR);
 	}
 
 	s3c2410_dma_set_buffdone_fn(prtd->params->channel,
-- 
1.6.3.3

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

* [PATCH 09/12] ARM: S3C2440: mini2440: Fix missing CONFIG_S3C_DEV_USB_HOST
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
                   ` (6 preceding siblings ...)
  2009-10-28 12:15 ` [PATCH 08/12] ARM: S3C: Add info for supporting circular DMA buffers Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:15 ` [PATCH 10/12] ARM: S3C24XX: Fix warnings in arch/arm/plat-s3c24xx/gpio.c Ben Dooks
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

Fix missing select of S3C_DEV_USB_HOST when building for mini2440
only. Fixes the following error:

built-in.o: undefined reference to `s3c_device_usb`

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/mach-s3c2440/Kconfig |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-s3c2440/Kconfig b/arch/arm/mach-s3c2440/Kconfig
index d7bba91..a8b69d7 100644
--- a/arch/arm/mach-s3c2440/Kconfig
+++ b/arch/arm/mach-s3c2440/Kconfig
@@ -103,6 +103,7 @@ config MACH_MINI2440
 	select LEDS_TRIGGER_BACKLIGHT
 	select SND_S3C24XX_SOC_S3C24XX_UDA134X
 	select S3C_DEV_NAND
+	select S3C_DEV_USB_HOST
 	help
 	  Say Y here to select support for the MINI2440. Is a 10cm x 10cm board
 	  available via various sources. It can come with a 3.5" or 7" touch LCD.
-- 
1.6.3.3

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

* [PATCH 10/12] ARM: S3C24XX: Fix warnings in arch/arm/plat-s3c24xx/gpio.c
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
                   ` (7 preceding siblings ...)
  2009-10-28 12:15 ` [PATCH 09/12] ARM: S3C2440: mini2440: Fix missing CONFIG_S3C_DEV_USB_HOST Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:15 ` [PATCH 11/12] ARM: S3C2440: mini2440: Fix spare warnings Ben Dooks
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

Fix the following warnings from sparse in arch/arm/plat-s3c24xx/gpio.
due to the missing include of <mach/gpio-fns.h>

gpio.c:36:6: warning: symbol 's3c2410_gpio_cfgpin' was not declared. Should it be static?
gpio.c:84:14: warning: symbol 's3c2410_gpio_getcfg' was not declared. Should it be static?
gpio.c:103:6: warning: symbol 's3c2410_gpio_pullup' was not declared. Should it be static?
gpio.c:125:5: warning: symbol 's3c2410_gpio_getpull' was not declared. Should it be static?
gpio.c:138:6: warning: symbol 's3c2410_gpio_setpin' was not declared. Should it be static?
gpio.c:157:14: warning: symbol 's3c2410_gpio_getpin' was not declared. Should it be static?
gpio.c:184:5: warning: symbol 's3c2410_gpio_getirq' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/plat-s3c24xx/gpio.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/arm/plat-s3c24xx/gpio.c b/arch/arm/plat-s3c24xx/gpio.c
index 95df059..5467470 100644
--- a/arch/arm/plat-s3c24xx/gpio.c
+++ b/arch/arm/plat-s3c24xx/gpio.c
@@ -29,6 +29,7 @@
 #include <linux/io.h>
 
 #include <mach/hardware.h>
+#include <mach/gpio-fns.h>
 #include <asm/irq.h>
 
 #include <mach/regs-gpio.h>
-- 
1.6.3.3

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

* [PATCH 11/12] ARM: S3C2440: mini2440: Fix spare warnings
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
                   ` (8 preceding siblings ...)
  2009-10-28 12:15 ` [PATCH 10/12] ARM: S3C24XX: Fix warnings in arch/arm/plat-s3c24xx/gpio.c Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:15 ` [PATCH 12/12] ARM: S3C2410: Fix sparse warnings in arch/arm/mach-s3c2410/gpio.c Ben Dooks
  2009-10-28 12:22 ` [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

Fix the following sparse warnings in arch/arm/mach-s3c2440/mach-mini2440.c
due to missing 'static'.

warning: symbol 'mini2440_lcd_cfg' was not declared. Should it be static?
warning: symbol 'mini2440_fb_info' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/mach-s3c2440/mach-mini2440.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-s3c2440/mach-mini2440.c b/arch/arm/mach-s3c2440/mach-mini2440.c
index ec71a69..1c3382f 100644
--- a/arch/arm/mach-s3c2440/mach-mini2440.c
+++ b/arch/arm/mach-s3c2440/mach-mini2440.c
@@ -144,7 +144,7 @@ static struct s3c2410_udc_mach_info mini2440_udc_cfg __initdata = {
 	.type		= (S3C2410_LCDCON1_TFT16BPP |\
 			   S3C2410_LCDCON1_TFT)
 
-struct s3c2410fb_display mini2440_lcd_cfg[] __initdata = {
+static struct s3c2410fb_display mini2440_lcd_cfg[] __initdata = {
 	[0] = {	/* mini2440 + 3.5" TFT + touchscreen */
 		_LCD_DECLARE(
 			7,			/* The 3.5 is quite fast */
@@ -191,7 +191,7 @@ struct s3c2410fb_display mini2440_lcd_cfg[] __initdata = {
 #define S3C2410_GPCCON_MASK(x)	(3 << ((x) * 2))
 #define S3C2410_GPDCON_MASK(x)	(3 << ((x) * 2))
 
-struct s3c2410fb_mach_info mini2440_fb_info __initdata = {
+static struct s3c2410fb_mach_info mini2440_fb_info __initdata = {
 	.displays	 = &mini2440_lcd_cfg[0], /* not constant! see init */
 	.num_displays	 = 1,
 	.default_display = 0,
-- 
1.6.3.3

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

* [PATCH 12/12] ARM: S3C2410: Fix sparse warnings in arch/arm/mach-s3c2410/gpio.c
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
                   ` (9 preceding siblings ...)
  2009-10-28 12:15 ` [PATCH 11/12] ARM: S3C2440: mini2440: Fix spare warnings Ben Dooks
@ 2009-10-28 12:15 ` Ben Dooks
  2009-10-28 12:22 ` [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

Fix sparse warning in arch/arm/mach-s3c2410/gpio.c due to missing
include of <mach/gpio-fns.h>. Fixes the following warning:

warning: symbol 's3c2410_gpio_irqfilter' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
---
 arch/arm/mach-s3c2410/gpio.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-s3c2410/gpio.c b/arch/arm/mach-s3c2410/gpio.c
index 7974afc..9664e01 100644
--- a/arch/arm/mach-s3c2410/gpio.c
+++ b/arch/arm/mach-s3c2410/gpio.c
@@ -28,6 +28,7 @@
 #include <linux/io.h>
 
 #include <mach/hardware.h>
+#include <mach/gpio-fns.h>
 #include <asm/irq.h>
 
 #include <mach/regs-gpio.h>
-- 
1.6.3.3

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

* [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error
  2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
                   ` (10 preceding siblings ...)
  2009-10-28 12:15 ` [PATCH 12/12] ARM: S3C2410: Fix sparse warnings in arch/arm/mach-s3c2410/gpio.c Ben Dooks
@ 2009-10-28 12:22 ` Ben Dooks
  11 siblings, 0 replies; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:22 UTC (permalink / raw)
  To: linux-arm-kernel

This series should have had the following prefix:

S3C64XX/S3C24XX fixes based on -rc5.

shortlog:

Ben Dooks (9):
      ARM: S3C2410: Fix link if CONFIG_S3C2410_IOTIMING is not set
      ARM: S3C: Add info for supporting circular DMA buffers
      Merge branch 'fixes-s3c24xx' into fixes-s3c
      Merge branch 'fixes-s3c64xx-dma' into fixes-s3c
      Merge branch 'fixes-s3c64xx' into fixes-s3c
      ARM: S3C2440: mini2440: Fix missing CONFIG_S3C_DEV_USB_HOST
      ARM: S3C24XX: Fix warnings in arch/arm/plat-s3c24xx/gpio.c
      ARM: S3C2440: mini2440: Fix spare warnings
      ARM: S3C2410: Fix sparse warnings in arch/arm/mach-s3c2410/gpio.c

Harald Welte (1):
      ARM: S3C24XX: Introduce S3C2442B CPU

Julia Lawall (1):
      ARM: S3C24XX: arch/arm/plat-s3c24xx: Move dereference after NULL test

Kukjin Kim (1):
      ARM: S3C64XX: Fix S3C64XX_CLKDIV0_ARM_MASK value

Mark Brown (1):
      ARM: S3C64XX: Set rate of crystal mux

Ramax Lo (1):
      ARM: S3C24XX: Define a macro to avoid compilation error

Ryan Mallon (1):
      ARM: S3C: Fix adc function exports

 arch/arm/mach-s3c2410/gpio.c                       |    1 +
 arch/arm/mach-s3c2410/include/mach/dma.h           |    7 +++++++
 arch/arm/mach-s3c2440/Kconfig                      |    1 +
 arch/arm/mach-s3c2440/mach-mini2440.c              |    4 ++--
 arch/arm/mach-s3c6400/include/mach/dma.h           |    5 +++++
 arch/arm/plat-s3c24xx/adc.c                        |    2 +-
 arch/arm/plat-s3c24xx/cpu.c                        |   10 ++++++++++
 arch/arm/plat-s3c24xx/dma.c                        |    6 +++---
 arch/arm/plat-s3c24xx/gpio.c                       |    1 +
 arch/arm/plat-s3c24xx/include/plat/cpu-freq-core.h |    9 +++++++--
 arch/arm/plat-s3c24xx/include/plat/s3c2410.h       |    1 +
 arch/arm/plat-s3c64xx/include/plat/regs-clock.h    |    4 ++--
 arch/arm/plat-s3c64xx/s3c6400-clock.c              |    3 +++
 sound/soc/s3c24xx/s3c24xx-pcm.c                    |   17 +++++++++++++++--
 14 files changed, 59 insertions(+), 12 deletions(-)

-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.

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

* [PATCH 08/12] ARM: S3C: Add info for supporting circular DMA buffers
  2009-10-28 12:15 ` [PATCH 08/12] ARM: S3C: Add info for supporting circular DMA buffers Ben Dooks
@ 2009-10-28 12:39   ` Mark Brown
  2009-10-28 12:47     ` Ben Dooks
  0 siblings, 1 reply; 17+ messages in thread
From: Mark Brown @ 2009-10-28 12:39 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Oct 28, 2009 at 12:15:49PM +0000, Ben Dooks wrote:
> The S3C64XX DMA implementation will work a lot better with the ability
> to enqueue circular buffers as the hardware can do it's own linked-list
> management.

> Add a function s3c_dma_has_circular() to show that the system can do this
> and a flag for the channel.

> Update the s3c24xx/s3c64xx I2S DMA code to deal with this.

> Signed-off-by: Ben Dooks <ben@simtec.co.uk>
> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
> CC: Mark Brown <broonie@@opensource.wolfsonmicro.com>

Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

If Samsung are going to be doing their upstreaming stuff it may make
sense to merge this via ASoC since I anticipate some changes there, but
on the other hand that seems to have ground to a halt and the merge may
well go smoothly anyway.  My standard answer here would be putting the
patch on a branch by itself so if there are any issues it can be merged
into both trees to avoid the merge issues.

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

* [PATCH 08/12] ARM: S3C: Add info for supporting circular DMA buffers
  2009-10-28 12:39   ` Mark Brown
@ 2009-10-28 12:47     ` Ben Dooks
  2009-10-28 13:15       ` Mark Brown
  0 siblings, 1 reply; 17+ messages in thread
From: Ben Dooks @ 2009-10-28 12:47 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Oct 28, 2009 at 12:39:45PM +0000, Mark Brown wrote:
> On Wed, Oct 28, 2009 at 12:15:49PM +0000, Ben Dooks wrote:
> > The S3C64XX DMA implementation will work a lot better with the ability
> > to enqueue circular buffers as the hardware can do it's own linked-list
> > management.
> 
> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
> 
> If Samsung are going to be doing their upstreaming stuff it may make
> sense to merge this via ASoC since I anticipate some changes there, but
> on the other hand that seems to have ground to a halt and the merge may
> well go smoothly anyway.  My standard answer here would be putting the
> patch on a branch by itself so if there are any issues it can be merged
> into both trees to avoid the merge issues.

I was pushing this up via my tree, it touches both the core and ASoC code
so decided to merge myself and copy-you.

On the whole Samsung merging, there is still work in progress there so
we will see what is going to happen.
 
-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.

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

* [PATCH 08/12] ARM: S3C: Add info for supporting circular DMA buffers
  2009-10-28 12:47     ` Ben Dooks
@ 2009-10-28 13:15       ` Mark Brown
  0 siblings, 0 replies; 17+ messages in thread
From: Mark Brown @ 2009-10-28 13:15 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Oct 28, 2009 at 12:47:51PM +0000, Ben Dooks wrote:

> I was pushing this up via my tree, it touches both the core and ASoC code
> so decided to merge myself and copy-you.

Like I say, if you could put it on a branch I could pull in if need be
in the case of merge conflicts that'd be ideal.

> On the whole Samsung merging, there is still work in progress there so
> we will see what is going to happen.

The general trend appears to be moving away from upstream as far as I
can see; public activity has certainly been dying down.

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

* [PATCH 02/12] ARM: S3C24XX: Introduce S3C2442B CPU
  2009-10-28 12:15 ` [PATCH 02/12] ARM: S3C24XX: Introduce S3C2442B CPU Ben Dooks
@ 2009-11-01 21:12   ` Pavel Machek
  0 siblings, 0 replies; 17+ messages in thread
From: Pavel Machek @ 2009-11-01 21:12 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed 2009-10-28 12:15:43, Ben Dooks wrote:
> From: Harald Welte <laforge@gnumonks.org>
> 
> Add the S3C2442B CPU ID to aid support the Openmoko GTA02 / Freerunner.
> 
> Signed-off-by: Harald Welte <laforge@gnumonks.org>
> Signed-off-by: Andy Green <andy@warmcat.com>
> Signed-off-by: Nelson Castillo <arhuaco@freaks-unidos.net>
> [ben-linux at fluff.org: edit description for clarity and S3C2442B as uppercase]
> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
> ---
>  arch/arm/plat-s3c24xx/cpu.c |   10 ++++++++++
>  1 files changed, 10 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/plat-s3c24xx/cpu.c b/arch/arm/plat-s3c24xx/cpu.c
> index 5447e60..4af9dd9 100644
> --- a/arch/arm/plat-s3c24xx/cpu.c
> +++ b/arch/arm/plat-s3c24xx/cpu.c
> @@ -61,6 +61,7 @@ static const char name_s3c2410[]  = "S3C2410";
>  static const char name_s3c2412[]  = "S3C2412";
>  static const char name_s3c2440[]  = "S3C2440";
>  static const char name_s3c2442[]  = "S3C2442";
> +static const char name_s3c2442b[]  = "S3C2442B";
>  static const char name_s3c2443[]  = "S3C2443";
>  static const char name_s3c2410a[] = "S3C2410A";
>  static const char name_s3c2440a[] = "S3C2440A";
> @@ -112,6 +113,15 @@ static struct cpu_table cpu_ids[] __initdata = {
>  		.name		= name_s3c2442
>  	},
>  	{
> +		.idcode		= 0x32440aab,
> +		.idmask		= 0xffffffff,
> +		.map_io		= s3c244x_map_io,
> +		.init_clocks	= s3c244x_init_clocks,
> +		.init_uarts	= s3c244x_init_uarts,
> +		.init		= s3c2442_init,
> +		.name		= name_s3c2442b

Could we simply put the string here? This is unneccessary
obfuscation... and it is used just once so it does not save
anything...
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

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

end of thread, other threads:[~2009-11-01 21:12 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-28 12:15 [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error Ben Dooks
2009-10-28 12:15 ` [PATCH 02/12] ARM: S3C24XX: Introduce S3C2442B CPU Ben Dooks
2009-11-01 21:12   ` Pavel Machek
2009-10-28 12:15 ` [PATCH 03/12] ARM: S3C2410: Fix link if CONFIG_S3C2410_IOTIMING is not set Ben Dooks
2009-10-28 12:15 ` [PATCH 04/12] ARM: S3C: Fix adc function exports Ben Dooks
2009-10-28 12:15 ` [PATCH 05/12] ARM: S3C24XX: arch/arm/plat-s3c24xx: Move dereference after NULL test Ben Dooks
2009-10-28 12:15 ` [PATCH 06/12] ARM: S3C64XX: Fix S3C64XX_CLKDIV0_ARM_MASK value Ben Dooks
2009-10-28 12:15 ` [PATCH 07/12] ARM: S3C64XX: Set rate of crystal mux Ben Dooks
2009-10-28 12:15 ` [PATCH 08/12] ARM: S3C: Add info for supporting circular DMA buffers Ben Dooks
2009-10-28 12:39   ` Mark Brown
2009-10-28 12:47     ` Ben Dooks
2009-10-28 13:15       ` Mark Brown
2009-10-28 12:15 ` [PATCH 09/12] ARM: S3C2440: mini2440: Fix missing CONFIG_S3C_DEV_USB_HOST Ben Dooks
2009-10-28 12:15 ` [PATCH 10/12] ARM: S3C24XX: Fix warnings in arch/arm/plat-s3c24xx/gpio.c Ben Dooks
2009-10-28 12:15 ` [PATCH 11/12] ARM: S3C2440: mini2440: Fix spare warnings Ben Dooks
2009-10-28 12:15 ` [PATCH 12/12] ARM: S3C2410: Fix sparse warnings in arch/arm/mach-s3c2410/gpio.c Ben Dooks
2009-10-28 12:22 ` [PATCH 01/12] ARM: S3C24XX: Define a macro to avoid compilation error 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).