Merge branch 's3c24xx-updates' of git://git.fluff.org/bjdooks/linux
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 10 Dec 2009 03:45:58 +0000 (19:45 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 10 Dec 2009 03:45:58 +0000 (19:45 -0800)
* 's3c24xx-updates' of git://git.fluff.org/bjdooks/linux:
  ARM: S3C24XX: DMA: Use valid index when accessing array
  ARM: S3C: move s3c_pwm_remove to .devexit.text
  ARM: S3C24XX: Export s3c24xx_set_fiq for modules.
  ARM: S3C: move s3c_adc_remove to .devexit.text

arch/arm/plat-s3c/pwm.c
arch/arm/plat-s3c24xx/adc.c
arch/arm/plat-s3c24xx/dma.c
arch/arm/plat-s3c24xx/irq.c

index 4fdc5b307fd2f95cb3a0ae1152030b22588bc079..ef019f27b67d5822afc8c3e4fbdac17220eebbd6 100644 (file)
@@ -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);
 
index df47322492d55b0dfa24f1f4912bd19968264c2a..ce47627f3368f556b22f0694e7de68325a7e074d 100644 (file)
@@ -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);
 
index f65192d5b1d732083311d80756da6052ebed10f0..f0ea7943ac5a0fffca6007393daf2120b3e1bb23 100644 (file)
@@ -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;
                        }
                }
index ef0f521437d719e0c597e74f01aa2d400e57cc7e..ad0d44ef1f9393623a7516d33428dc04cf2912ef 100644 (file)
@@ -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