Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f6515db4 authored by Greg Ungerer's avatar Greg Ungerer Committed by Linus Torvalds
Browse files

[PATCH] uclinux: remove use of mtd_put_device() in uclinux MTD map driver



We should not call mtd_put_device() in the uclinux MTD map driver.
Also consistently use phys/virt fields of maps map_info struct,
instead of mixing it with map_priv_1.

Signed-off-by: default avatarGreg Ungerer <gerg@uclinux.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent b0433b99
Loading
Loading
Loading
Loading
+5 −8
Original line number Diff line number Diff line
@@ -23,9 +23,6 @@
#include <linux/mtd/partitions.h>
#include <asm/io.h>

/****************************************************************************/


/****************************************************************************/

struct map_info uclinux_ram_map = {
@@ -60,14 +57,15 @@ int __init uclinux_mtd_init(void)
	struct mtd_info *mtd;
	struct map_info *mapp;
	extern char _ebss;
	unsigned long addr = (unsigned long) &_ebss;

	mapp = &uclinux_ram_map;
	mapp->phys = (unsigned long) &_ebss;
	mapp->size = PAGE_ALIGN(*((unsigned long *)((&_ebss) + 8)));
	mapp->phys = addr;
	mapp->size = PAGE_ALIGN(ntohl(*((unsigned long *)(addr + 8))));
	mapp->bankwidth = 4;

	printk("uclinux[mtd]: RAM probe address=0x%x size=0x%x\n",
	       	(int) mapp->map_priv_2, (int) mapp->size);
	       	(int) mapp->phys, (int) mapp->size);

	mapp->virt = ioremap_nocache(mapp->phys, mapp->size);

@@ -95,7 +93,6 @@ int __init uclinux_mtd_init(void)
	printk("uclinux[mtd]: set %s to be root filesystem\n",
	     	uclinux_romfs[0].name);
	ROOT_DEV = MKDEV(MTD_BLOCK_MAJOR, 0);
	put_mtd_device(mtd);

	return(0);
}
@@ -109,7 +106,7 @@ void __exit uclinux_mtd_cleanup(void)
		map_destroy(uclinux_ram_mtdinfo);
		uclinux_ram_mtdinfo = NULL;
	}
	if (uclinux_ram_map.map_priv_1) {
	if (uclinux_ram_map.virt) {
		iounmap((void *) uclinux_ram_map.virt);
		uclinux_ram_map.virt = 0;
	}