projects
/
oweals
/
u-boot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'rmobile' of git://git.denx.de/u-boot-sh
[oweals/u-boot.git]
/
drivers
/
mtd
/
nand
/
vf610_nfc.c
diff --git
a/drivers/mtd/nand/vf610_nfc.c
b/drivers/mtd/nand/vf610_nfc.c
index 1faec5e1f231b813b255b0bcda4bc0438af0fda7..f99bdaf94da2be3dc216ff05f9580105a8049163 100644
(file)
--- a/
drivers/mtd/nand/vf610_nfc.c
+++ b/
drivers/mtd/nand/vf610_nfc.c
@@
-146,7
+146,6
@@
enum vf610_nfc_alt_buf {
};
struct vf610_nfc {
};
struct vf610_nfc {
- struct mtd_info *mtd;
struct nand_chip chip;
void __iomem *regs;
uint buf_offset;
struct nand_chip chip;
void __iomem *regs;
uint buf_offset;
@@
-155,8
+154,7
@@
struct vf610_nfc {
enum vf610_nfc_alt_buf alt_buf;
};
enum vf610_nfc_alt_buf alt_buf;
};
-#define mtd_to_nfc(_mtd) \
- (struct vf610_nfc *)((struct nand_chip *)_mtd->priv)->priv
+#define mtd_to_nfc(_mtd) nand_get_controller_data(mtd_to_nand(_mtd))
#if defined(CONFIG_SYS_NAND_VF610_NFC_45_ECC_BYTES)
#define ECC_HW_MODE ECC_45_BYTE
#if defined(CONFIG_SYS_NAND_VF610_NFC_45_ECC_BYTES)
#define ECC_HW_MODE ECC_45_BYTE
@@
-608,7
+606,7
@@
static int vf610_nfc_read_page(struct mtd_info *mtd, struct nand_chip *chip,
* ECC will be calculated automatically
*/
static int vf610_nfc_write_page(struct mtd_info *mtd, struct nand_chip *chip,
* ECC will be calculated automatically
*/
static int vf610_nfc_write_page(struct mtd_info *mtd, struct nand_chip *chip,
- const uint8_t *buf, int oob_required)
+ const uint8_t *buf, int oob_required
, int page
)
{
struct vf610_nfc *nfc = mtd_to_nfc(mtd);
{
struct vf610_nfc *nfc = mtd_to_nfc(mtd);
@@
-630,7
+628,7
@@
struct vf610_nfc_config {
static int vf610_nfc_nand_init(int devnum, void __iomem *addr)
{
static int vf610_nfc_nand_init(int devnum, void __iomem *addr)
{
- struct mtd_info *mtd
= &nand_info[devnum]
;
+ struct mtd_info *mtd;
struct nand_chip *chip;
struct vf610_nfc *nfc;
int err = 0;
struct nand_chip *chip;
struct vf610_nfc *nfc;
int err = 0;
@@
-653,8
+651,8
@@
static int vf610_nfc_nand_init(int devnum, void __iomem *addr)
chip = &nfc->chip;
nfc->regs = addr;
chip = &nfc->chip;
nfc->regs = addr;
- mtd
->priv = chip
;
-
chip->priv = nfc
;
+ mtd
= nand_to_mtd(chip)
;
+
nand_set_controller_data(chip, nfc)
;
if (cfg.width == 16)
chip->options |= NAND_BUSWIDTH_16;
if (cfg.width == 16)
chip->options |= NAND_BUSWIDTH_16;
@@
-753,7
+751,7
@@
static int vf610_nfc_nand_init(int devnum, void __iomem *addr)
if (err)
return err;
if (err)
return err;
- err = nand_register(devnum);
+ err = nand_register(devnum
, mtd
);
if (err)
return err;
if (err)
return err;