From: "Ruslan V. Sushko" <rsushko@ru.mvista.com>
To: Vitaly Wool <vwool@ru.mvista.com>
Cc: linux-mtd@lists.infradead.org
Subject: Re: [PATCH] NAND Flash support for Intel IXP4xx platform
Date: Fri, 20 Apr 2007 18:16:26 +0400 [thread overview]
Message-ID: <4628CB3A.3000701@ru.mvista.com> (raw)
In-Reply-To: <462878F9.2090603@ru.mvista.com>
Vitaly Wool wrote:
> Ruslan V. Sushko wrote:
>> +static struct ixp4xx_faddr_t {
>> + int offset;
>> + void (*chip_select)(unsigned int ctrl);
>> +} ixp4xx_faddr_info = {0, NULL};
>>
> ixp4xx_faddr_t is a nice name for a structure ;)
> What the initialization to {0, NULL} is for?
just through habit. What's wrong here?
> Also, if this is a per-chip thing as might be concluded by placing its
> pointer into this->priv, why do you make it static structure?
> Same goes for
>
>> +static struct mtd_info *ixp4xx_mtd = NULL;
>> +static struct mtd_partition *ixp4xx_nand_parts = NULL;
>> +
>> + for ( i = 0 ; i < len ; i++ )
>> + writeb(buf[i], this->IO_ADDR_W + addr_info->offset);
>>
> Wrong whitespacing.
Will fixed
>> +}
>> +
>> +static void
>> +ixp4xx_hwcontrol(struct mtd_info *mtd, int cmd, unsigned int ctrl)
>> +{
>> + struct nand_chip *this = mtd->priv;
>> + struct ixp4xx_faddr_t *addr_info = this->priv;
>> + if (ctrl & NAND_CTRL_CHANGE) {
>> + addr_info->offset = (ctrl & NAND_CLE) ? 1 : 0;
>> + addr_info->offset |= (ctrl & NAND_ALE) ? 2 : 0;
>> + if (addr_info->chip_select)
>> + addr_info->chip_select(ctrl);
>> + }
>> +
>> + if (cmd != NAND_CMD_NONE)
>> + writeb(cmd, this->IO_ADDR_W + addr_info->offset);
>> +}
>>
> Wait please, can you explain the logic here?
> It looks like you'll be writing by ixp_write_buf to different base
> addresses depending on how ctrl was set.
> Is this the expected behavior?
Yes it is. Two low bits of address bus is connected to ALE/CLE signals.
Generally it not necessary for wrietbuff routine, but it will not be
error on this level, by the way I'll remove it. The hwcontrol must work
in this way.
>
>> + if ( nb_of_parts <= 0 ) { /* No partition from parsing, use
>> default */
>>
> Wrong whitespacing.
will fix
>> + printk(KERN_INFO "Loading default partition table\n");
>> + ixp4xx_nand_parts = plat->parts;
>> + nb_of_parts = plat->nr_parts;
>> + }
>> +
>> + /* Register the partitions */
>> + err = add_mtd_partitions(ixp4xx_mtd, ixp4xx_nand_parts,
>> nb_of_parts);
>> + if (err) {
>> + printk(KERN_ERR "Failed to add MTD partitions\n");
>> + if ( ixp4xx_nand_parts != plat->parts )
>> + kfree(ixp4xx_nand_parts);
>>
> Wrong indentation.
> Moreover, if the number of partitions obtained by parse_mtd_partitions
> is the same as the one provided by platform data, you'll get leakage
> here.
how this can happens? Please describe.
>
> Vitaly
>
Best reagards,
Ruslan Sushko
next prev parent reply other threads:[~2007-04-20 14:16 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-19 10:29 [PATCH] NAND Flash support for Intel IXP4xx platform Ruslan V. Sushko
2007-04-20 8:25 ` Vitaly Wool
2007-04-20 14:16 ` Ruslan V. Sushko [this message]
2007-04-24 7:21 ` Vitaly Wool
2007-04-24 8:29 ` Ruslan V. Sushko
2007-04-24 8:34 ` Vitaly Wool
2007-04-24 10:33 ` Ruslan V. Sushko
2007-04-24 10:38 ` Lennert Buytenhek
2007-04-24 10:46 ` Ruslan V. Sushko
2007-04-24 10:49 ` Lennert Buytenhek
2007-04-24 10:53 ` Vitaly Wool
2007-04-24 11:01 ` Lennert Buytenhek
2007-04-24 11:10 ` Ruslan V. Sushko
2007-04-24 11:21 ` Vitaly Wool
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4628CB3A.3000701@ru.mvista.com \
--to=rsushko@ru.mvista.com \
--cc=linux-mtd@lists.infradead.org \
--cc=vwool@ru.mvista.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox