|
@@ -299,7 +299,7 @@ static inline int DoC_WaitReady(struct doc_priv *doc)
|
|
|
|
|
|
static void doc2000_write_byte(struct mtd_info *mtd, u_char datum)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
|
|
@@ -311,7 +311,7 @@ static void doc2000_write_byte(struct mtd_info *mtd, u_char datum)
|
|
|
|
|
|
static u_char doc2000_read_byte(struct mtd_info *mtd)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
u_char ret;
|
|
@@ -326,7 +326,7 @@ static u_char doc2000_read_byte(struct mtd_info *mtd)
|
|
|
|
|
|
static void doc2000_writebuf(struct mtd_info *mtd, const u_char *buf, int len)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int i;
|
|
@@ -343,7 +343,7 @@ static void doc2000_writebuf(struct mtd_info *mtd, const u_char *buf, int len)
|
|
|
|
|
|
static void doc2000_readbuf(struct mtd_info *mtd, u_char *buf, int len)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int i;
|
|
@@ -358,7 +358,7 @@ static void doc2000_readbuf(struct mtd_info *mtd, u_char *buf, int len)
|
|
|
|
|
|
static void doc2000_readbuf_dword(struct mtd_info *mtd, u_char *buf, int len)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int i;
|
|
@@ -379,7 +379,7 @@ static void doc2000_readbuf_dword(struct mtd_info *mtd, u_char *buf, int len)
|
|
|
|
|
|
static uint16_t __init doc200x_ident_chip(struct mtd_info *mtd, int nr)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
uint16_t ret;
|
|
|
|
|
@@ -425,7 +425,7 @@ static uint16_t __init doc200x_ident_chip(struct mtd_info *mtd, int nr)
|
|
|
|
|
|
static void __init doc2000_count_chips(struct mtd_info *mtd)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
uint16_t mfrid;
|
|
|
int i;
|
|
@@ -461,7 +461,7 @@ static int doc200x_wait(struct mtd_info *mtd, struct nand_chip *this)
|
|
|
|
|
|
static void doc2001_write_byte(struct mtd_info *mtd, u_char datum)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
|
|
@@ -472,7 +472,7 @@ static void doc2001_write_byte(struct mtd_info *mtd, u_char datum)
|
|
|
|
|
|
static u_char doc2001_read_byte(struct mtd_info *mtd)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
|
|
@@ -486,7 +486,7 @@ static u_char doc2001_read_byte(struct mtd_info *mtd)
|
|
|
|
|
|
static void doc2001_writebuf(struct mtd_info *mtd, const u_char *buf, int len)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int i;
|
|
@@ -499,7 +499,7 @@ static void doc2001_writebuf(struct mtd_info *mtd, const u_char *buf, int len)
|
|
|
|
|
|
static void doc2001_readbuf(struct mtd_info *mtd, u_char *buf, int len)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int i;
|
|
@@ -516,7 +516,7 @@ static void doc2001_readbuf(struct mtd_info *mtd, u_char *buf, int len)
|
|
|
|
|
|
static u_char doc2001plus_read_byte(struct mtd_info *mtd)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
u_char ret;
|
|
@@ -531,7 +531,7 @@ static u_char doc2001plus_read_byte(struct mtd_info *mtd)
|
|
|
|
|
|
static void doc2001plus_writebuf(struct mtd_info *mtd, const u_char *buf, int len)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int i;
|
|
@@ -549,7 +549,7 @@ static void doc2001plus_writebuf(struct mtd_info *mtd, const u_char *buf, int le
|
|
|
|
|
|
static void doc2001plus_readbuf(struct mtd_info *mtd, u_char *buf, int len)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int i;
|
|
@@ -580,7 +580,7 @@ static void doc2001plus_readbuf(struct mtd_info *mtd, u_char *buf, int len)
|
|
|
|
|
|
static void doc2001plus_select_chip(struct mtd_info *mtd, int chip)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int floor = 0;
|
|
@@ -607,7 +607,7 @@ static void doc2001plus_select_chip(struct mtd_info *mtd, int chip)
|
|
|
|
|
|
static void doc200x_select_chip(struct mtd_info *mtd, int chip)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int floor = 0;
|
|
@@ -638,7 +638,7 @@ static void doc200x_select_chip(struct mtd_info *mtd, int chip)
|
|
|
static void doc200x_hwcontrol(struct mtd_info *mtd, int cmd,
|
|
|
unsigned int ctrl)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
|
|
@@ -661,7 +661,7 @@ static void doc200x_hwcontrol(struct mtd_info *mtd, int cmd,
|
|
|
|
|
|
static void doc2001plus_command(struct mtd_info *mtd, unsigned command, int column, int page_addr)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
|
|
@@ -767,7 +767,7 @@ static void doc2001plus_command(struct mtd_info *mtd, unsigned command, int colu
|
|
|
|
|
|
static int doc200x_dev_ready(struct mtd_info *mtd)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
|
|
@@ -807,7 +807,7 @@ static int doc200x_block_bad(struct mtd_info *mtd, loff_t ofs, int getchip)
|
|
|
|
|
|
static void doc200x_enable_hwecc(struct mtd_info *mtd, int mode)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
|
|
@@ -826,7 +826,7 @@ static void doc200x_enable_hwecc(struct mtd_info *mtd, int mode)
|
|
|
|
|
|
static void doc2001plus_enable_hwecc(struct mtd_info *mtd, int mode)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
|
|
@@ -846,7 +846,7 @@ static void doc2001plus_enable_hwecc(struct mtd_info *mtd, int mode)
|
|
|
/* This code is only called on write */
|
|
|
static int doc200x_calculate_ecc(struct mtd_info *mtd, const u_char *dat, unsigned char *ecc_code)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
int i;
|
|
@@ -907,7 +907,7 @@ static int doc200x_correct_data(struct mtd_info *mtd, u_char *dat,
|
|
|
u_char *read_ecc, u_char *isnull)
|
|
|
{
|
|
|
int i, ret = 0;
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
void __iomem *docptr = doc->virtadr;
|
|
|
uint8_t calc_ecc[6];
|
|
@@ -1007,7 +1007,7 @@ static struct nand_ecclayout doc200x_oobinfo = {
|
|
|
mh1_page in the DOC private structure. */
|
|
|
static int __init find_media_headers(struct mtd_info *mtd, u_char *buf, const char *id, int findmirror)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
unsigned offs;
|
|
|
int ret;
|
|
@@ -1050,7 +1050,7 @@ static int __init find_media_headers(struct mtd_info *mtd, u_char *buf, const ch
|
|
|
|
|
|
static inline int __init nftl_partscan(struct mtd_info *mtd, struct mtd_partition *parts)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
int ret = 0;
|
|
|
u_char *buf;
|
|
@@ -1152,7 +1152,7 @@ static inline int __init nftl_partscan(struct mtd_info *mtd, struct mtd_partitio
|
|
|
/* This is a stripped-down copy of the code in inftlmount.c */
|
|
|
static inline int __init inftl_partscan(struct mtd_info *mtd, struct mtd_partition *parts)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
int ret = 0;
|
|
|
u_char *buf;
|
|
@@ -1272,7 +1272,7 @@ static inline int __init inftl_partscan(struct mtd_info *mtd, struct mtd_partiti
|
|
|
static int __init nftl_scan_bbt(struct mtd_info *mtd)
|
|
|
{
|
|
|
int ret, numparts;
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
struct mtd_partition parts[2];
|
|
|
|
|
@@ -1307,7 +1307,7 @@ static int __init nftl_scan_bbt(struct mtd_info *mtd)
|
|
|
static int __init inftl_scan_bbt(struct mtd_info *mtd)
|
|
|
{
|
|
|
int ret, numparts;
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
struct mtd_partition parts[5];
|
|
|
|
|
@@ -1360,7 +1360,7 @@ static int __init inftl_scan_bbt(struct mtd_info *mtd)
|
|
|
|
|
|
static inline int __init doc2000_init(struct mtd_info *mtd)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
|
|
|
this->read_byte = doc2000_read_byte;
|
|
@@ -1376,7 +1376,7 @@ static inline int __init doc2000_init(struct mtd_info *mtd)
|
|
|
|
|
|
static inline int __init doc2001_init(struct mtd_info *mtd)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
|
|
|
this->read_byte = doc2001_read_byte;
|
|
@@ -1406,7 +1406,7 @@ static inline int __init doc2001_init(struct mtd_info *mtd)
|
|
|
|
|
|
static inline int __init doc2001plus_init(struct mtd_info *mtd)
|
|
|
{
|
|
|
- struct nand_chip *this = mtd->priv;
|
|
|
+ struct nand_chip *this = mtd_to_nand(mtd);
|
|
|
struct doc_priv *doc = this->priv;
|
|
|
|
|
|
this->read_byte = doc2001plus_read_byte;
|
|
@@ -1523,7 +1523,7 @@ static int __init doc_probe(unsigned long physadr)
|
|
|
for (mtd = doclist; mtd; mtd = doc->nextdoc) {
|
|
|
unsigned char oldval;
|
|
|
unsigned char newval;
|
|
|
- nand = mtd->priv;
|
|
|
+ nand = mtd_to_nand(mtd);
|
|
|
doc = nand->priv;
|
|
|
/* Use the alias resolution register to determine if this is
|
|
|
in fact the same DOC aliased to a new address. If writes
|
|
@@ -1643,7 +1643,7 @@ static void release_nanddoc(void)
|
|
|
struct doc_priv *doc;
|
|
|
|
|
|
for (mtd = doclist; mtd; mtd = nextmtd) {
|
|
|
- nand = mtd->priv;
|
|
|
+ nand = mtd_to_nand(mtd);
|
|
|
doc = nand->priv;
|
|
|
|
|
|
nextmtd = doc->nextdoc;
|