diff options
author | David Woodhouse <dwmw2@infradead.org> | 2006-05-13 20:20:46 -0400 |
---|---|---|
committer | David Woodhouse <dwmw2@infradead.org> | 2006-05-13 20:20:46 -0400 |
commit | 552d9205186428a1e2a49ed577bcbba9f777af37 (patch) | |
tree | d61e09abae0ad18a3beef281384e576d8a54c145 /drivers/mtd/nand/cs553x_nand.c | |
parent | 4f678a58d335291ce9213c049bbe16e6d24487ed (diff) |
[MTD] Fix module refcounting in NAND board drivers.
The _board_ driver needs to be mtd->owner, and it in turn pins the
nand.ko module. Fix them all to actually do that, and fix nand.ko not to
overwrite it -- and also to check that the caller sets it, if the caller
is a module.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Diffstat (limited to 'drivers/mtd/nand/cs553x_nand.c')
-rw-r--r-- | drivers/mtd/nand/cs553x_nand.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mtd/nand/cs553x_nand.c b/drivers/mtd/nand/cs553x_nand.c index fba7be5cffe3..d5b05514bb8b 100644 --- a/drivers/mtd/nand/cs553x_nand.c +++ b/drivers/mtd/nand/cs553x_nand.c | |||
@@ -223,6 +223,7 @@ static int __init cs553x_init_one(int cs, int mmio, unsigned long adr) | |||
223 | 223 | ||
224 | /* Link the private data with the MTD structure */ | 224 | /* Link the private data with the MTD structure */ |
225 | new_mtd->priv = this; | 225 | new_mtd->priv = this; |
226 | new_mtd->owner = THIS_MODULE; | ||
226 | 227 | ||
227 | /* map physical address */ | 228 | /* map physical address */ |
228 | this->IO_ADDR_R = this->IO_ADDR_W = ioremap(adr, 4096); | 229 | this->IO_ADDR_R = this->IO_ADDR_W = ioremap(adr, 4096); |
@@ -255,7 +256,6 @@ static int __init cs553x_init_one(int cs, int mmio, unsigned long adr) | |||
255 | goto out_ior; | 256 | goto out_ior; |
256 | } | 257 | } |
257 | 258 | ||
258 | new_mtd->owner = THIS_MODULE; | ||
259 | cs553x_mtd[cs] = new_mtd; | 259 | cs553x_mtd[cs] = new_mtd; |
260 | goto out; | 260 | goto out; |
261 | 261 | ||