summaryrefslogtreecommitdiff
path: root/arch/arm/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/kernel')
-rw-r--r--arch/arm/kernel/dma-isa.c1
-rw-r--r--arch/arm/kernel/dma.c1
-rw-r--r--arch/arm/kernel/ecard.c48
-rw-r--r--arch/arm/kernel/irq.c3
-rw-r--r--arch/arm/kernel/plx90x0.c1
-rw-r--r--arch/arm/kernel/time-acorn.c1
-rw-r--r--arch/arm/kernel/time.c1
-rw-r--r--arch/arm/kernel/via82c505.c1
8 files changed, 8 insertions, 49 deletions
diff --git a/arch/arm/kernel/dma-isa.c b/arch/arm/kernel/dma-isa.c
index 2125bb6a1282..d75e8a9923e7 100644
--- a/arch/arm/kernel/dma-isa.c
+++ b/arch/arm/kernel/dma-isa.c
@@ -16,7 +16,6 @@
* arch/arm/kernel/dma-ebsa285.c
* Copyright (C) 1998 Phil Blundell
*/
-#include <linux/sched.h>
#include <linux/ioport.h>
#include <linux/init.h>
#include <linux/pci.h>
diff --git a/arch/arm/kernel/dma.c b/arch/arm/kernel/dma.c
index 6717f735136a..0e4b21e03427 100644
--- a/arch/arm/kernel/dma.c
+++ b/arch/arm/kernel/dma.c
@@ -13,7 +13,6 @@
*/
#include <linux/module.h>
#include <linux/slab.h>
-#include <linux/sched.h>
#include <linux/mman.h>
#include <linux/init.h>
#include <linux/spinlock.h>
diff --git a/arch/arm/kernel/ecard.c b/arch/arm/kernel/ecard.c
index 2b291c31ff8b..1206e7d9fd66 100644
--- a/arch/arm/kernel/ecard.c
+++ b/arch/arm/kernel/ecard.c
@@ -989,42 +989,6 @@ nomem:
return rc;
}
-static ecard_t *finding_pos;
-
-void ecard_startfind(void)
-{
- finding_pos = NULL;
-}
-
-ecard_t *ecard_find(int cid, const card_ids *cids)
-{
- if (!finding_pos)
- finding_pos = cards;
- else
- finding_pos = finding_pos->next;
-
- for (; finding_pos; finding_pos = finding_pos->next) {
- if (finding_pos->claimed)
- continue;
-
- if (finding_pos->dev.driver)
- continue;
-
- if (!cids) {
- if ((finding_pos->cid.id ^ cid) == 0)
- break;
- } else {
- const struct ecard_id *id;
-
- id = ecard_match_device(cids, finding_pos);
- if (id)
- break;
- }
- }
-
- return finding_pos;
-}
-
/*
* Initialise the expansion card system.
* Locate all hardware - interrupt management and
@@ -1087,10 +1051,15 @@ static int ecard_drv_probe(struct device *dev)
struct expansion_card *ec = ECARD_DEV(dev);
struct ecard_driver *drv = ECARD_DRV(dev->driver);
const struct ecard_id *id;
+ int ret;
id = ecard_match_device(drv->id_table, ec);
- return drv->probe(ec, id);
+ ecard_claim(ec);
+ ret = drv->probe(ec, id);
+ if (ret)
+ ecard_release(ec);
+ return ret;
}
static int ecard_drv_remove(struct device *dev)
@@ -1099,6 +1068,7 @@ static int ecard_drv_remove(struct device *dev)
struct ecard_driver *drv = ECARD_DRV(dev->driver);
drv->remove(ec);
+ ecard_release(ec);
return 0;
}
@@ -1144,12 +1114,8 @@ static int ecard_bus_init(void)
postcore_initcall(ecard_bus_init);
-EXPORT_SYMBOL(ecard_startfind);
-EXPORT_SYMBOL(ecard_find);
EXPORT_SYMBOL(ecard_readchunk);
EXPORT_SYMBOL(ecard_address);
-
EXPORT_SYMBOL(ecard_register_driver);
EXPORT_SYMBOL(ecard_remove_driver);
-
EXPORT_SYMBOL(ecard_bus_type);
diff --git a/arch/arm/kernel/irq.c b/arch/arm/kernel/irq.c
index 1fa4f5fb25f7..a7cd6b892ffa 100644
--- a/arch/arm/kernel/irq.c
+++ b/arch/arm/kernel/irq.c
@@ -20,7 +20,6 @@
#include <linux/config.h>
#include <linux/kernel_stat.h>
#include <linux/signal.h>
-#include <linux/sched.h>
#include <linux/ioport.h>
#include <linux/interrupt.h>
#include <linux/ptrace.h>
@@ -661,7 +660,7 @@ unsigned int probe_irq_mask(unsigned long irqs)
unsigned int mask = 0, i;
spin_lock_irq(&irq_controller_lock);
- for(i = 0; i < 16 && i < NR_IRQS; i++)
+ for (i = 0; i < 16 && i < NR_IRQS; i++)
if (irq_desc[i].probing && irq_desc[i].triggered)
mask |= 1 << i;
spin_unlock_irq(&irq_controller_lock);
diff --git a/arch/arm/kernel/plx90x0.c b/arch/arm/kernel/plx90x0.c
index f843e12267ed..60d7d3566af4 100644
--- a/arch/arm/kernel/plx90x0.c
+++ b/arch/arm/kernel/plx90x0.c
@@ -14,7 +14,6 @@
#include <linux/kernel.h>
#include <linux/pci.h>
#include <linux/init.h>
-#include <linux/sched.h>
#include <asm/hardware.h>
#include <asm/io.h>
diff --git a/arch/arm/kernel/time-acorn.c b/arch/arm/kernel/time-acorn.c
index eb637801c7a5..8772035bfc7f 100644
--- a/arch/arm/kernel/time-acorn.c
+++ b/arch/arm/kernel/time-acorn.c
@@ -12,7 +12,6 @@
* 10-Oct-1996 RMK Brought up to date with arch-sa110eval
* 04-Dec-1997 RMK Updated for new arch/arm/time.c
*/
-#include <linux/sched.h>
#include <linux/interrupt.h>
#include <linux/init.h>
diff --git a/arch/arm/kernel/time.c b/arch/arm/kernel/time.c
index 655b7ed1c8e0..2af6dbda06d5 100644
--- a/arch/arm/kernel/time.c
+++ b/arch/arm/kernel/time.c
@@ -18,7 +18,6 @@
*/
#include <linux/config.h>
#include <linux/module.h>
-#include <linux/sched.h>
#include <linux/kernel.h>
#include <linux/interrupt.h>
#include <linux/time.h>
diff --git a/arch/arm/kernel/via82c505.c b/arch/arm/kernel/via82c505.c
index 345b9b6c73da..a4ac16dbb756 100644
--- a/arch/arm/kernel/via82c505.c
+++ b/arch/arm/kernel/via82c505.c
@@ -1,5 +1,4 @@
#include <linux/config.h>
-#include <linux/sched.h>
#include <linux/kernel.h>
#include <linux/pci.h>
#include <linux/ptrace.h>