From: Marek Vasut <marek.vasut@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 1/2] mtd/nand:Fix wrong address read in is_blank()
Date: Wed, 28 Dec 2011 07:48:32 +0100 [thread overview]
Message-ID: <201112280748.32636.marek.vasut@gmail.com> (raw)
In-Reply-To: <1325049770-7327-1-git-send-email-prabhakar@freescale.com>
> IFC NAND Machine calculates ECC on 512byte sector. Same is taken care in
> fsl_ifc_run_command() while ECC status verification. Here buffer number is
> calculated assuming 512byte sector and same is passed to is_blank.
> However in is_blank() buffer address is calculated using mdt->writesize
> which is wrong. It should be calculated on basis of ecc sector size.
>
> Also, in fsl_ifc_run_command() bufferpage is calculated on the basis of ecc
> sector size instead of hard coded value.
>
> Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
> Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
You just sent two patches based on the same commit, but those are clearly
dependent. This is weird. So next time:
1) Submit this with git-send-email as a series
2) iomem looks linuxish, so instead of specifying u-boot commit, specify Linux
commit/tree etc. from where this is pulled so when someone synces next time,
he'll know where he is in linux.
3) Cc Scott Wood
M
> ---
> Based upon git://git.denx.de/u-boot.git (branch master)
>
> Top commit:
> commit bfcc40bb09b05c90cc3b1496abb270eb8aa72134
> Merge: cba9a89 1895420
> Author: Wolfgang Denk <wd@denx.de>
> Date: Fri Dec 23 20:53:58 2011 +0100
>
> Merge branch 'next' of ../next
>
> * 'next' of ../next:
> mkenvimage: Add version info switch (-V)
> mkenvimage: Fix getopt() error handling
> mkenvimage: Fix some typos
> phy: add Micrel KS8721BL phy definition
> net: introduce per device index
> mvgbe: remove setting of ethaddr within the driver
> x86: Add support for specifying an initrd with the zboot
> command x86: Refactor the zboot innards so they can be reused with a vboot
> image x86: Add infrastructure to extract an e820 table from the coreboot
> tables x86: Add support for booting Linux using the 32 bit boot protocol
> x86: Clean up the x86 zimage code in preparation to extend it x86: Import
> code from coreboot's libpayload to parse the coreboot table x86: Initial
> commit for running as a coreboot payload CHECKPATCH:
> ./board/esd/hh405/logo_320_240_8bpp.c
> CHECKPATCH: ./board/esd/hh405/logo_1024_768_8bpp.c
> CHECKPATCH: ./board/esd/hh405/logo_320_240_4bpp.c
> CHECKPATCH: ./board/esd/hh405/logo_640_480_24bpp.c
> CHECKPATCH: ./board/esd/apc405/logo_640_480_24bpp.c
> CHECKPATCH: ./board/esd/voh405/logo_320_240_4bpp.c
> CHECKPATCH: ./board/esd/voh405/logo_640_480_24bpp.c
> CHECKPATCH: ./board/esd/hh405/fpgadata.c
> CHECKPATCH: ./board/esd/pci405/fpgadata.c
> CHECKPATCH: ./board/esd/tasreg/fpgadata.c
>
> drivers/mtd/nand/fsl_ifc_nand.c | 6 ++++--
> 1 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/mtd/nand/fsl_ifc_nand.c
> b/drivers/mtd/nand/fsl_ifc_nand.c index b3f3c3c..3a28ab8 100644
> --- a/drivers/mtd/nand/fsl_ifc_nand.c
> +++ b/drivers/mtd/nand/fsl_ifc_nand.c
> @@ -196,7 +196,9 @@ static int is_blank(struct mtd_info *mtd, struct
> fsl_ifc_ctrl *ctrl, {
> struct nand_chip *chip = mtd->priv;
> struct fsl_ifc_mtd *priv = chip->priv;
> - u8 __iomem *addr = priv->vbase + bufnum * (mtd->writesize * 2);
> + int bufperpage = mtd->writesize / chip->ecc.size;
> + u8 __iomem *addr = priv->vbase + bufnum / bufperpage
> + * (mtd->writesize * 2);
> u32 __iomem *main = (u32 *)addr;
> u8 __iomem *oob = addr + mtd->writesize;
> int i;
> @@ -279,7 +281,7 @@ static int fsl_ifc_run_command(struct mtd_info *mtd)
> printf("%s: Write Protect Error\n", __func__);
>
> if (ctrl->eccread) {
> - int bufperpage = mtd->writesize / 512;
> + int bufperpage = mtd->writesize / chip->ecc.size;
> int bufnum = (ctrl->page & priv->bufnum_mask) * bufperpage;
> int bufnum_end = bufnum + bufperpage - 1;
next prev parent reply other threads:[~2011-12-28 6:48 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-28 5:22 [U-Boot] [PATCH 1/2] mtd/nand:Fix wrong address read in is_blank() Prabhakar Kushwaha
2011-12-28 6:48 ` Marek Vasut [this message]
2011-12-28 7:21 ` Kushwaha Prabhakar-B32579
2011-12-28 7:28 ` Marek Vasut
2012-01-04 21:52 ` Scott Wood
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=201112280748.32636.marek.vasut@gmail.com \
--to=marek.vasut@gmail.com \
--cc=u-boot@lists.denx.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.