From ad4e22fa4762516eef0e3f19a13a86e13fba71e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Tue, 24 Nov 2009 22:07:10 +0100 Subject: [PATCH 1/4] ARM: S3C: move s3c_adc_remove to .devexit.text MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The function s3c_adc_remove is used only wrapped by __devexit_p so define it using __devexit. Signed-off-by: Uwe Kleine-König Acked-by: Sam Ravnborg Cc: Russell King Acked-By: Ben Dooks Cc: Ramax Lo Cc: Nelson Castillo Cc: linux-kernel@vger.kernel.org Cc: Ben Dooks Cc: Alexey Dobriyan Cc: Ryan Mallon Cc: linux-arm-kernel@lists.infradead.org Signed-off-by: Ben Dooks --- arch/arm/plat-s3c24xx/adc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/plat-s3c24xx/adc.c b/arch/arm/plat-s3c24xx/adc.c index df47322492d..ce47627f336 100644 --- a/arch/arm/plat-s3c24xx/adc.c +++ b/arch/arm/plat-s3c24xx/adc.c @@ -365,7 +365,7 @@ static int s3c_adc_probe(struct platform_device *pdev) return ret; } -static int s3c_adc_remove(struct platform_device *pdev) +static int __devexit s3c_adc_remove(struct platform_device *pdev) { struct adc_device *adc = platform_get_drvdata(pdev); From 0f13c8248040d6901cfcc542e9de165bb0916525 Mon Sep 17 00:00:00 2001 From: Ben Dooks Date: Mon, 7 Dec 2009 14:51:38 +0000 Subject: [PATCH 2/4] ARM: S3C24XX: Export s3c24xx_set_fiq for modules. Allow s3c24xx_set_fiq() to be exported so that it can be used by modules wanting FIQ support. Signed-off-by: Ben Dooks Signed-off-by: Simtec Linux Team Signed-off-by: Ben Dooks --- arch/arm/plat-s3c24xx/irq.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/arm/plat-s3c24xx/irq.c b/arch/arm/plat-s3c24xx/irq.c index ef0f521437d..ad0d44ef1f9 100644 --- a/arch/arm/plat-s3c24xx/irq.c +++ b/arch/arm/plat-s3c24xx/irq.c @@ -522,6 +522,8 @@ int s3c24xx_set_fiq(unsigned int irq, bool on) __raw_writel(intmod, S3C2410_INTMOD); return 0; } + +EXPORT_SYMBOL_GPL(s3c24xx_set_fiq); #endif From 93b0d8c6b67b7d337509a36dbfcdb6d6eac1ef12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Tue, 24 Nov 2009 22:07:11 +0100 Subject: [PATCH 3/4] ARM: S3C: move s3c_pwm_remove to .devexit.text MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The function s3c_pwm_remove is used only wrapped by __devexit_p so define it using __devexit. Signed-off-by: Uwe Kleine-König Acked-by: Sam Ravnborg Cc: Russell King Cc: Ben Dooks Cc: Peter Korsgaard Cc: linux-kernel@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Signed-off-by: Ben Dooks --- arch/arm/plat-s3c/pwm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/plat-s3c/pwm.c b/arch/arm/plat-s3c/pwm.c index 4fdc5b307fd..ef019f27b67 100644 --- a/arch/arm/plat-s3c/pwm.c +++ b/arch/arm/plat-s3c/pwm.c @@ -368,7 +368,7 @@ static int s3c_pwm_probe(struct platform_device *pdev) return ret; } -static int s3c_pwm_remove(struct platform_device *pdev) +static int __devexit s3c_pwm_remove(struct platform_device *pdev) { struct pwm_device *pwm = platform_get_drvdata(pdev); From 947a2462792a89b8aa168a1108288e0d0ae36d12 Mon Sep 17 00:00:00 2001 From: Ramax Lo Date: Tue, 8 Dec 2009 23:42:41 +0800 Subject: [PATCH 4/4] ARM: S3C24XX: DMA: Use valid index when accessing array The DMA_CH_VALID bit used in the channel index should be masked out before using it to access the channel array. Signed-off-by: Ramax Lo Signed-off-by: Ben Dooks --- arch/arm/plat-s3c24xx/dma.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/arm/plat-s3c24xx/dma.c b/arch/arm/plat-s3c24xx/dma.c index f65192d5b1d..f0ea7943ac5 100644 --- a/arch/arm/plat-s3c24xx/dma.c +++ b/arch/arm/plat-s3c24xx/dma.c @@ -1403,11 +1403,13 @@ static struct s3c2410_dma_chan *s3c2410_dma_map_channel(int channel) ord = &dma_order->channels[channel]; for (ch = 0; ch < dma_channels; ch++) { + int tmp; if (!is_channel_valid(ord->list[ch])) continue; - if (s3c2410_chans[ord->list[ch]].in_use == 0) { - ch = ord->list[ch] & ~DMA_CH_VALID; + tmp = ord->list[ch] & ~DMA_CH_VALID; + if (s3c2410_chans[tmp].in_use == 0) { + ch = tmp; goto found; } }