diff options
author | Olof Johansson <olof@lixom.net> | 2013-01-16 22:58:08 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-01-16 22:58:58 -0500 |
commit | 5046e385b4426e229a6beb4bce480762af91a6fc (patch) | |
tree | 65b4bff2c913a18840b3c58892853d51b942ac43 /arch/arm/common | |
parent | a73b59c51ab288d81b515b504790267f594884b8 (diff) | |
parent | b86dc0d8c12bbb9fed3f392c284bdc7114ce00c1 (diff) |
Merge branch 'v3.8-samsung-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into fixes
From Kukjin Kim:
That branch fixes build error for S3C24XX/S3C64xx. And corrects dw-mshc
properties on EXYNOS5 DT and fixes IRQ mapping on Cragganmore board.
* 'v3.8-samsung-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
ARM: S3C64XX: Fix up IRQ mapping for balblair on Cragganmore
ARM: dts: correct the dw-mshc timing properties as per binding
ARM: S3C64XX: Fix build error with CONFIG_S3C_DEV_FB disabled
+ Linux 3.8-rc3
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'arch/arm/common')
-rw-r--r-- | arch/arm/common/sa1111.c | 5 | ||||
-rw-r--r-- | arch/arm/common/scoop.c | 6 | ||||
-rw-r--r-- | arch/arm/common/vic.c | 9 |
3 files changed, 12 insertions, 8 deletions
diff --git a/arch/arm/common/sa1111.c b/arch/arm/common/sa1111.c index 9173d112ea01..e57d7e5bf96a 100644 --- a/arch/arm/common/sa1111.c +++ b/arch/arm/common/sa1111.c | |||
@@ -686,8 +686,7 @@ sa1111_init_one_child(struct sa1111 *sachip, struct resource *parent, | |||
686 | * %-EINVAL no platform data passed | 686 | * %-EINVAL no platform data passed |
687 | * %0 successful. | 687 | * %0 successful. |
688 | */ | 688 | */ |
689 | static int __devinit | 689 | static int __sa1111_probe(struct device *me, struct resource *mem, int irq) |
690 | __sa1111_probe(struct device *me, struct resource *mem, int irq) | ||
691 | { | 690 | { |
692 | struct sa1111_platform_data *pd = me->platform_data; | 691 | struct sa1111_platform_data *pd = me->platform_data; |
693 | struct sa1111 *sachip; | 692 | struct sa1111 *sachip; |
@@ -1011,7 +1010,7 @@ static int sa1111_resume(struct platform_device *dev) | |||
1011 | #define sa1111_resume NULL | 1010 | #define sa1111_resume NULL |
1012 | #endif | 1011 | #endif |
1013 | 1012 | ||
1014 | static int __devinit sa1111_probe(struct platform_device *pdev) | 1013 | static int sa1111_probe(struct platform_device *pdev) |
1015 | { | 1014 | { |
1016 | struct resource *mem; | 1015 | struct resource *mem; |
1017 | int irq; | 1016 | int irq; |
diff --git a/arch/arm/common/scoop.c b/arch/arm/common/scoop.c index 0c616d5fcb0f..a5c3dc38aa18 100644 --- a/arch/arm/common/scoop.c +++ b/arch/arm/common/scoop.c | |||
@@ -176,7 +176,7 @@ static int scoop_resume(struct platform_device *dev) | |||
176 | #define scoop_resume NULL | 176 | #define scoop_resume NULL |
177 | #endif | 177 | #endif |
178 | 178 | ||
179 | static int __devinit scoop_probe(struct platform_device *pdev) | 179 | static int scoop_probe(struct platform_device *pdev) |
180 | { | 180 | { |
181 | struct scoop_dev *devptr; | 181 | struct scoop_dev *devptr; |
182 | struct scoop_config *inf; | 182 | struct scoop_config *inf; |
@@ -243,7 +243,7 @@ err_ioremap: | |||
243 | return ret; | 243 | return ret; |
244 | } | 244 | } |
245 | 245 | ||
246 | static int __devexit scoop_remove(struct platform_device *pdev) | 246 | static int scoop_remove(struct platform_device *pdev) |
247 | { | 247 | { |
248 | struct scoop_dev *sdev = platform_get_drvdata(pdev); | 248 | struct scoop_dev *sdev = platform_get_drvdata(pdev); |
249 | int ret; | 249 | int ret; |
@@ -268,7 +268,7 @@ static int __devexit scoop_remove(struct platform_device *pdev) | |||
268 | 268 | ||
269 | static struct platform_driver scoop_driver = { | 269 | static struct platform_driver scoop_driver = { |
270 | .probe = scoop_probe, | 270 | .probe = scoop_probe, |
271 | .remove = __devexit_p(scoop_remove), | 271 | .remove = scoop_remove, |
272 | .suspend = scoop_suspend, | 272 | .suspend = scoop_suspend, |
273 | .resume = scoop_resume, | 273 | .resume = scoop_resume, |
274 | .driver = { | 274 | .driver = { |
diff --git a/arch/arm/common/vic.c b/arch/arm/common/vic.c index e4df17ca90c7..8f324b99416e 100644 --- a/arch/arm/common/vic.c +++ b/arch/arm/common/vic.c | |||
@@ -206,6 +206,7 @@ static void __init vic_register(void __iomem *base, unsigned int irq, | |||
206 | struct device_node *node) | 206 | struct device_node *node) |
207 | { | 207 | { |
208 | struct vic_device *v; | 208 | struct vic_device *v; |
209 | int i; | ||
209 | 210 | ||
210 | if (vic_id >= ARRAY_SIZE(vic_devices)) { | 211 | if (vic_id >= ARRAY_SIZE(vic_devices)) { |
211 | printk(KERN_ERR "%s: too few VICs, increase CONFIG_ARM_VIC_NR\n", __func__); | 212 | printk(KERN_ERR "%s: too few VICs, increase CONFIG_ARM_VIC_NR\n", __func__); |
@@ -220,6 +221,10 @@ static void __init vic_register(void __iomem *base, unsigned int irq, | |||
220 | vic_id++; | 221 | vic_id++; |
221 | v->domain = irq_domain_add_simple(node, fls(valid_sources), irq, | 222 | v->domain = irq_domain_add_simple(node, fls(valid_sources), irq, |
222 | &vic_irqdomain_ops, v); | 223 | &vic_irqdomain_ops, v); |
224 | /* create an IRQ mapping for each valid IRQ */ | ||
225 | for (i = 0; i < fls(valid_sources); i++) | ||
226 | if (valid_sources & (1 << i)) | ||
227 | irq_create_mapping(v->domain, i); | ||
223 | } | 228 | } |
224 | 229 | ||
225 | static void vic_ack_irq(struct irq_data *d) | 230 | static void vic_ack_irq(struct irq_data *d) |
@@ -416,9 +421,9 @@ int __init vic_of_init(struct device_node *node, struct device_node *parent) | |||
416 | return -EIO; | 421 | return -EIO; |
417 | 422 | ||
418 | /* | 423 | /* |
419 | * Passing -1 as first IRQ makes the simple domain allocate descriptors | 424 | * Passing 0 as first IRQ makes the simple domain allocate descriptors |
420 | */ | 425 | */ |
421 | __vic_init(regs, -1, ~0, ~0, node); | 426 | __vic_init(regs, 0, ~0, ~0, node); |
422 | 427 | ||
423 | return 0; | 428 | return 0; |
424 | } | 429 | } |