diff options
author | Kyungmin Park <kmpark@infradead.org> | 2008-01-15 08:59:44 +0900 |
---|---|---|
committer | Stefan Roese <sr@denx.de> | 2008-01-16 14:10:15 +0100 |
commit | 6cb2239ae76faee64434286c4f8fc71374702dd2 (patch) | |
tree | a15fc5a8cedf02e817e2e30762c29ec4e6640512 /drivers/mtd | |
parent | 58d204256cb1ce1bd323847d9f644acf70a72e6a (diff) |
OneNAND: Separate U-Boot dependent code from OneNAND
OneNAND: Separate U-Boot dependent code from OneNAND
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Diffstat (limited to 'drivers/mtd')
-rw-r--r-- | drivers/mtd/onenand/Makefile | 2 | ||||
-rw-r--r-- | drivers/mtd/onenand/onenand_base.c | 20 | ||||
-rw-r--r-- | drivers/mtd/onenand/onenand_uboot.c | 41 |
3 files changed, 42 insertions, 21 deletions
diff --git a/drivers/mtd/onenand/Makefile b/drivers/mtd/onenand/Makefile index 20494133270..92074b25528 100644 --- a/drivers/mtd/onenand/Makefile +++ b/drivers/mtd/onenand/Makefile @@ -25,7 +25,7 @@ include $(TOPDIR)/config.mk LIB := $(obj)libonenand.a -COBJS := onenand_base.o onenand_bbt.o +COBJS := onenand_uboot.o onenand_base.o onenand_bbt.o SRCS := $(COBJS:.o=.c) OBJS := $(addprefix $(obj),$(COBJS)) diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c index 7983a4a0d82..d4003a20f20 100644 --- a/drivers/mtd/onenand/onenand_base.c +++ b/drivers/mtd/onenand/onenand_base.c @@ -1271,24 +1271,4 @@ void onenand_release(struct mtd_info *mtd) { } -/* - * OneNAND initialization at U-Boot - */ -struct mtd_info onenand_mtd; -struct onenand_chip onenand_chip; - -void onenand_init(void) -{ - memset(&onenand_mtd, 0, sizeof(struct mtd_info)); - memset(&onenand_chip, 0, sizeof(struct onenand_chip)); - - onenand_chip.base = (void *)CFG_ONENAND_BASE; - onenand_mtd.priv = &onenand_chip; - - onenand_scan(&onenand_mtd, 1); - - puts("OneNAND: "); - print_size(onenand_mtd.size, "\n"); -} - #endif /* CONFIG_CMD_ONENAND */ diff --git a/drivers/mtd/onenand/onenand_uboot.c b/drivers/mtd/onenand/onenand_uboot.c new file mode 100644 index 00000000000..bd7466ac9d9 --- /dev/null +++ b/drivers/mtd/onenand/onenand_uboot.c @@ -0,0 +1,41 @@ +/* + * drivers/mtd/onenand/onenand_uboot.c + * + * Copyright (C) 2005-2008 Samsung Electronics + * Kyungmin Park <kyungmin.park@samsung.com> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +/* + * OneNAND initialization at U-Boot + */ + +#include <common.h> + +#ifdef CONFIG_CMD_ONENAND + +#include <linux/mtd/compat.h> +#include <linux/mtd/mtd.h> +#include <linux/mtd/onenand.h> + +struct mtd_info onenand_mtd; +struct onenand_chip onenand_chip; + +void onenand_init(void) +{ + memset(&onenand_mtd, 0, sizeof(struct mtd_info)); + memset(&onenand_chip, 0, sizeof(struct onenand_chip)); + + onenand_chip.base = (void *) CFG_ONENAND_BASE; + onenand_mtd.priv = &onenand_chip; + + onenand_scan(&onenand_mtd, 1); + + puts("OneNAND: "); + print_size(onenand_mtd.size, "\n"); +} + +#endif /* CONFIG_CMD_ONENAND */ |