NUC900 nand driver Patch
A message that is not in the archive (sent off-list or not yet received): [email protected]
Thanks a lot, wait for me checking it.
? 2010?4?29? ??10:52?Wills Wang <[email protected]> ???
Quoted 73 lines
There is a patch for NUC900 nand driver, it fix up the bug access for incorrect register address and NULL pointer.
---
linux-2.6.34-rc5/drivers/mtd/nand/nuc900_nand.c2010-04-29 14:35:04.000000000 +0000
+++linux-2.6.34-rc5/drivers/mtd/nand/nuc900_nand.c2010-04-29 14:42:22.000000000 +0000(quoted diff) +14
-1@@ -132,7 +153,7 @@ { unsigned int val; spin_lock(&nand->lock); - val = __raw_readl(REG_SMISR); + val = __raw_readl(nand->reg + REG_SMISR); val &= READYBUSY; spin_unlock(&nand->lock);@@ -150,6 +171,19 @@ return ready; } +static void nuc900_nand_select_chip(struct mtd_info *mtd, int chipnr) +{ + switch (chipnr) { + case -1: + break; + case 0: + break; + + default: + BUG(); + } +} +static void nuc900_nand_command_lp(struct
mtd_info*mtd, unsigned int command,
int column, intpage_addr)
{(quoted diff) +2
-4@@ -240,7 +274,6 @@ ; } - static void nuc900_nand_enable(struct nuc900_nand *nand) { unsigned int val;@@ -250,7 +283,7 @@ val = __raw_readl(nand->reg + REG_FMICSR); if (!(val & NAND_EN)) - __raw_writel(val | NAND_EN, REG_FMICSR); + __raw_writel(val | NAND_EN, nand->reg + REG_FMICSR); val = __raw_readl(nand->reg + REG_SMCSR);@@ -286,7 +319,7 @@ goto fail1; } clk_enable(nuc900_nand->clk); - + chip->select_chip = nuc900_nand_select_chip; chip->cmdfunc = nuc900_nand_command_lp; chip->dev_ready = nuc900_nand_devready; chip->read_byte = nuc900_nand_read_byte; --????"NUC900 Linux BSP????".
NUC900 Linux????????????
NUC900 at googlegroups.com
?????????
NUC900+unsubscribe at googlegroups.com
??????????
https://groups.google.com/group/NUC900?hl=zh-CN
Signature · 10 lines
*linux-arm-kernel mailing list mail addr:linux-arm-kernel at lists.infradead.org you can subscribe by: http://lists.infradead.org/mailman/listinfo/linux-arm-kernel * linux-arm-NUC900 mailing list mail addr:NUC900 at googlegroups.com main web: https://groups.google.com/group/NUC900 you can subscribe it by sending me mail: mcuos.com at gmail.com
Hi Wills,
Please send your patch to me as a attached file.
thanks!
? 2010?4?29? ??10:52?Wills Wang <[email protected]> ???
Quoted 73 lines
There is a patch for NUC900 nand driver, it fix up the bug access for incorrect register address and NULL pointer.
---
linux-2.6.34-rc5/drivers/mtd/nand/nuc900_nand.c2010-04-29 14:35:04.000000000 +0000
+++linux-2.6.34-rc5/drivers/mtd/nand/nuc900_nand.c2010-04-29 14:42:22.000000000 +0000(quoted diff) +14
-1@@ -132,7 +153,7 @@ { unsigned int val; spin_lock(&nand->lock); - val = __raw_readl(REG_SMISR); + val = __raw_readl(nand->reg + REG_SMISR); val &= READYBUSY; spin_unlock(&nand->lock);@@ -150,6 +171,19 @@ return ready; } +static void nuc900_nand_select_chip(struct mtd_info *mtd, int chipnr) +{ + switch (chipnr) { + case -1: + break; + case 0: + break; + + default: + BUG(); + } +} +static void nuc900_nand_command_lp(struct
mtd_info*mtd, unsigned int command,
int column, intpage_addr)
{(quoted diff) +2
-4@@ -240,7 +274,6 @@ ; } - static void nuc900_nand_enable(struct nuc900_nand *nand) { unsigned int val;@@ -250,7 +283,7 @@ val = __raw_readl(nand->reg + REG_FMICSR); if (!(val & NAND_EN)) - __raw_writel(val | NAND_EN, REG_FMICSR); + __raw_writel(val | NAND_EN, nand->reg + REG_FMICSR); val = __raw_readl(nand->reg + REG_SMCSR);@@ -286,7 +319,7 @@ goto fail1; } clk_enable(nuc900_nand->clk); - + chip->select_chip = nuc900_nand_select_chip; chip->cmdfunc = nuc900_nand_command_lp; chip->dev_ready = nuc900_nand_devready; chip->read_byte = nuc900_nand_read_byte; --????"NUC900 Linux BSP????".
NUC900 Linux????????????
NUC900 at googlegroups.com
?????????
NUC900+unsubscribe at googlegroups.com
??????????
https://groups.google.com/group/NUC900?hl=zh-CN
Signature · 10 lines
*linux-arm-kernel mailing list mail addr:linux-arm-kernel at lists.infradead.org you can subscribe by: http://lists.infradead.org/mailman/listinfo/linux-arm-kernel * linux-arm-NUC900 mailing list mail addr:NUC900 at googlegroups.com main web: https://groups.google.com/group/NUC900 you can subscribe it by sending me mail: mcuos.com at gmail.com
2010/5/18 Wan ZongShun <[email protected]>
Quoted 89 lines
Hi Wills,
Please send your patch to me as a attached file.
thanks!
? 2010?4?29? ??10:52?Wills Wang <[email protected]> ???
Quoted 65 lines
There is a patch for NUC900 nand driver, it fix up the bug access for incorrect register address and NULL pointer.
---
linux-2.6.34-rc5/drivers/mtd/nand/nuc900_nand.c2010-04-29 14:35:04.000000000 +0000
+++linux-2.6.34-rc5/drivers/mtd/nand/nuc900_nand.c2010-04-29 14:42:22.000000000 +0000(quoted diff) +14
-1@@ -132,7 +153,7 @@ { unsigned int val; spin_lock(&nand->lock); - val = __raw_readl(REG_SMISR); + val = __raw_readl(nand->reg + REG_SMISR); val &= READYBUSY; spin_unlock(&nand->lock);@@ -150,6 +171,19 @@ return ready; } +static void nuc900_nand_select_chip(struct mtd_info *mtd, int chipnr) +{ + switch (chipnr) { + case -1: + break; + case 0: + break; + + default: + BUG(); + } +} +static void nuc900_nand_command_lp(struct
mtd_info*mtd, unsigned int command,
int column, intpage_addr)
{(quoted diff) +2
-4@@ -240,7 +274,6 @@ ; } - static void nuc900_nand_enable(struct nuc900_nand *nand) { unsigned int val;@@ -250,7 +283,7 @@ val = __raw_readl(nand->reg + REG_FMICSR); if (!(val & NAND_EN)) - __raw_writel(val | NAND_EN, REG_FMICSR); + __raw_writel(val | NAND_EN, nand->reg + REG_FMICSR); val = __raw_readl(nand->reg + REG_SMCSR);@@ -286,7 +319,7 @@ goto fail1; } clk_enable(nuc900_nand->clk); - + chip->select_chip = nuc900_nand_select_chip; chip->cmdfunc = nuc900_nand_command_lp; chip->dev_ready = nuc900_nand_devready; chip->read_byte = nuc900_nand_read_byte; --Quoted 8 lines
????"NUC900 Linux BSP????".
NUC900 Linux????????????
NUC900 at googlegroups.com
?????????
NUC900+unsubscribe at googlegroups.com<NUC900%[email protected]> ??????????
https://groups.google.com/group/NUC900?hl=zh-CN--
*linux-arm-kernel mailing list
mail addr:linux-arm-kernel at lists.infradead.org<addr%[email protected]> you can subscribe by:
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Quoted 6 lines
* linux-arm-NUC900 mailing list
mail addr:NUC900 at googlegroups.com <addr%[email protected]> main web: https://groups.google.com/group/NUC900
you can subscribe it by sending me mail:
mcuos.com at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20100527/5ca8e613/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: linux-2.6.34-nuc900.patch
Type: application/octet-stream
Size: 33970 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20100527/5ca8e613/attachment-0001.obj>