* atmel_nand pmecc on 8k page @ 2014-06-12 12:28 Raphaël Poggi 2014-06-13 1:26 ` Bo Shen 0 siblings, 1 reply; 7+ messages in thread From: Raphaël Poggi @ 2014-06-12 12:28 UTC (permalink / raw) To: barebox Hi, I'm working on a series of patches, to support 8k nand page in atmel_nand driver. Currently, I can detect the nand and handle an oob size of 448. But i have a problem with the pmecc, when barebox tried to perform pmecc operation, I get the following message: PMECC: Timeout to calculate error location. Example of log: nand: NAND device: Manufacturer ID: 0x2c, Chip ID: 0x68 (Micron MT29F32G08ABAAAWP), 4096MiB, page size: 8192, OOB size: 448 atmel_nand atmel_nand0: Initialize PMECC params, cap: 8, sector: 1024 atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. Bad block table not found for chip 0 atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. Bad block table not found for chip 0 Scanning device for bad blocks Bad eraseblock 90 at 0x000005a00000 Bad eraseblock 91 at 0x000005b00000 atmel_nand atmel_nand0: PMECC: Timeout to get ECC value. nand_bbt: error while writing bad block table -110 I don't know/find why barebox get a timeout... Someone have an idea ? Best regards, Raphaël _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: atmel_nand pmecc on 8k page 2014-06-12 12:28 atmel_nand pmecc on 8k page Raphaël Poggi @ 2014-06-13 1:26 ` Bo Shen 2014-06-13 8:48 ` Raphaël Poggi 0 siblings, 1 reply; 7+ messages in thread From: Bo Shen @ 2014-06-13 1:26 UTC (permalink / raw) To: Raphaël Poggi; +Cc: barebox Hi Raphaël, On 06/12/2014 08:28 PM, Raphaël Poggi wrote: > Hi, > > I'm working on a series of patches, to support 8k nand page in > atmel_nand driver. > > Currently, I can detect the nand and handle an oob size of 448. But i > have a problem with the pmecc, when barebox tried to perform pmecc > operation, I get the following message: > > PMECC: Timeout to calculate error location. > > Example of log: > > nand: NAND device: Manufacturer ID: 0x2c, Chip ID: 0x68 (Micron > MT29F32G08ABAAAWP), 4096MiB, page size: 8192, OOB size: 448 > atmel_nand atmel_nand0: Initialize PMECC params, cap: 8, sector: 1024 > atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. > atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. > atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. > atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. > Bad block table not found for chip 0 > atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. > atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. > atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. > atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. > Bad block table not found for chip 0 > Scanning device for bad blocks > Bad eraseblock 90 at 0x000005a00000 > Bad eraseblock 91 at 0x000005b00000 > atmel_nand atmel_nand0: PMECC: Timeout to get ECC value. > nand_bbt: error while writing bad block table -110 > > > I don't know/find why barebox get a timeout... > > Someone have an idea ? Which board are you test this? Can you try to apply two patches from matteo.fortini@gmail.com on 2014-06-06 with name [PATCH 1/2] sama5d3x: fix HSMC MODE register offset and add TIMINGS [PATCH 2/2] sama5d3x: HSMC NAND initialize TIMINGS and import values > Best regards, > Raphaël Best Regards, Bo Shen _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: atmel_nand pmecc on 8k page 2014-06-13 1:26 ` Bo Shen @ 2014-06-13 8:48 ` Raphaël Poggi 2014-06-13 12:48 ` atmel_nand pmecc on 8k page [RFC] Matteo Fortini 0 siblings, 1 reply; 7+ messages in thread From: Raphaël Poggi @ 2014-06-13 8:48 UTC (permalink / raw) To: Bo Shen; +Cc: barebox Hi, I'm testing with a custom board. I have just with the applied test and it's working ! I can use 8k page nand with atmel_nand driver. Do I have to wait until Matteo's patches are applied or can I submit mine right now ? Best regards, Raphaël Poggi 2014-06-13 3:26 GMT+02:00 Bo Shen <voice.shen@atmel.com>: > Hi Raphaël, > > > On 06/12/2014 08:28 PM, Raphaël Poggi wrote: >> >> Hi, >> >> I'm working on a series of patches, to support 8k nand page in >> atmel_nand driver. >> >> Currently, I can detect the nand and handle an oob size of 448. But i >> have a problem with the pmecc, when barebox tried to perform pmecc >> operation, I get the following message: >> >> PMECC: Timeout to calculate error location. >> >> Example of log: >> >> nand: NAND device: Manufacturer ID: 0x2c, Chip ID: 0x68 (Micron >> MT29F32G08ABAAAWP), 4096MiB, page size: 8192, OOB size: 448 >> atmel_nand atmel_nand0: Initialize PMECC params, cap: 8, sector: 1024 >> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >> Bad block table not found for chip 0 >> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >> Bad block table not found for chip 0 >> Scanning device for bad blocks >> Bad eraseblock 90 at 0x000005a00000 >> Bad eraseblock 91 at 0x000005b00000 >> atmel_nand atmel_nand0: PMECC: Timeout to get ECC value. >> nand_bbt: error while writing bad block table -110 >> >> >> I don't know/find why barebox get a timeout... >> >> Someone have an idea ? > > > Which board are you test this? > Can you try to apply two patches from matteo.fortini@gmail.com on 2014-06-06 > with name > [PATCH 1/2] sama5d3x: fix HSMC MODE register offset and add TIMINGS > [PATCH 2/2] sama5d3x: HSMC NAND initialize TIMINGS and import values > >> Best regards, >> Raphaël > > > Best Regards, > Bo Shen > _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: atmel_nand pmecc on 8k page [RFC] 2014-06-13 8:48 ` Raphaël Poggi @ 2014-06-13 12:48 ` Matteo Fortini 2014-06-16 7:19 ` Bo Shen 0 siblings, 1 reply; 7+ messages in thread From: Matteo Fortini @ 2014-06-13 12:48 UTC (permalink / raw) To: Raphaël Poggi, Bo Shen; +Cc: barebox Hi all, glad you found my patch useful. Sascha rejected it because he sees it more fit to separate the initialization of sama5d3 and sam9 since they are quite different. I started, as advised by Sascha, to create into sam9_smc.c the function void sama5d3_smc_configure(int id, int cs, struct sama5d3_smc_config *config) but this brings on some other changes to keep the same structure of functions, i.e. we would need to implement static void sama5d3_smc_cs_configure(void __iomem *base, struct sama5d3_smc_config *config) and all the related functions, since the argument changes from struct sam9_smc_config * to struct sama5d3_smc_config * Now I'm asking you all for a comment: should we go ahead and create a new sama5d3_smc.c file with all the functions (some will unfortunately be a duplicate of those present in sam9_smc.c), or should I do a partial hack to insert sama5d3 specific functions into sam9_smc.c (like, for example, playing with config structures so that the sam9 one is just the head of the sama5d3)? Thank you in advance for your comments, I ask Raphaël to wait until this patch is settled to send in his changes. They will be very useful for me, too (I had to deactivate PMECC to use my NAND...) M Il 13/06/2014 10:48, Raphaël Poggi ha scritto: > Hi, > > I'm testing with a custom board. I have just with the applied test and > it's working ! I can use 8k page nand with atmel_nand driver. > > Do I have to wait until Matteo's patches are applied or can I submit > mine right now ? > > Best regards, > Raphaël Poggi > > 2014-06-13 3:26 GMT+02:00 Bo Shen <voice.shen@atmel.com>: >> Hi Raphaël, >> >> >> On 06/12/2014 08:28 PM, Raphaël Poggi wrote: >>> Hi, >>> >>> I'm working on a series of patches, to support 8k nand page in >>> atmel_nand driver. >>> >>> Currently, I can detect the nand and handle an oob size of 448. But i >>> have a problem with the pmecc, when barebox tried to perform pmecc >>> operation, I get the following message: >>> >>> PMECC: Timeout to calculate error location. >>> >>> Example of log: >>> >>> nand: NAND device: Manufacturer ID: 0x2c, Chip ID: 0x68 (Micron >>> MT29F32G08ABAAAWP), 4096MiB, page size: 8192, OOB size: 448 >>> atmel_nand atmel_nand0: Initialize PMECC params, cap: 8, sector: 1024 >>> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >>> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >>> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >>> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >>> Bad block table not found for chip 0 >>> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >>> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >>> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >>> atmel_nand atmel_nand0: PMECC: Timeout to calculate error location. >>> Bad block table not found for chip 0 >>> Scanning device for bad blocks >>> Bad eraseblock 90 at 0x000005a00000 >>> Bad eraseblock 91 at 0x000005b00000 >>> atmel_nand atmel_nand0: PMECC: Timeout to get ECC value. >>> nand_bbt: error while writing bad block table -110 >>> >>> >>> I don't know/find why barebox get a timeout... >>> >>> Someone have an idea ? >> >> Which board are you test this? >> Can you try to apply two patches from matteo.fortini@gmail.com on 2014-06-06 >> with name >> [PATCH 1/2] sama5d3x: fix HSMC MODE register offset and add TIMINGS >> [PATCH 2/2] sama5d3x: HSMC NAND initialize TIMINGS and import values >> >>> Best regards, >>> Raphaël >> >> Best Regards, >> Bo Shen >> > _______________________________________________ > barebox mailing list > barebox@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/barebox _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: atmel_nand pmecc on 8k page [RFC] 2014-06-13 12:48 ` atmel_nand pmecc on 8k page [RFC] Matteo Fortini @ 2014-06-16 7:19 ` Bo Shen 2014-06-19 4:31 ` Jean-Christophe PLAGNIOL-VILLARD 0 siblings, 1 reply; 7+ messages in thread From: Bo Shen @ 2014-06-16 7:19 UTC (permalink / raw) To: Matteo Fortini, Raphaël Poggi; +Cc: barebox Hi Matteo, On 06/13/2014 08:48 PM, Matteo Fortini wrote: > Hi all, > glad you found my patch useful. Sascha rejected it because he sees it > more fit to separate the initialization of sama5d3 and sam9 since they > are quite different. > > I started, as advised by Sascha, to create into sam9_smc.c the function > > void sama5d3_smc_configure(int id, int cs, struct sama5d3_smc_config > *config) > > but this brings on some other changes to keep the same structure of > functions, i.e. we would need to implement > > static void sama5d3_smc_cs_configure(void __iomem *base, struct > sama5d3_smc_config *config) > > and all the related functions, since the argument changes from struct > sam9_smc_config * to struct sama5d3_smc_config * > > Now I'm asking you all for a comment: should we go ahead and create a > new sama5d3_smc.c file with all the functions (some will unfortunately > be a duplicate of those present in sam9_smc.c), or should I do a partial > hack to insert sama5d3 specific functions into sam9_smc.c (like, for > example, playing with config structures so that the sam9 one is just the > head of the sama5d3)? I think we'd better to create a new sama5d3_smc.c. This will be more readable, and also benefit for the new coming SoC. > Thank you in advance for your comments, I ask Raphaël to wait until this > patch is settled to send in his changes. They will be very useful for > me, too (I had to deactivate PMECC to use my NAND...) > > M Best Regards, Bo Shen _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: atmel_nand pmecc on 8k page [RFC] 2014-06-16 7:19 ` Bo Shen @ 2014-06-19 4:31 ` Jean-Christophe PLAGNIOL-VILLARD 2014-06-19 5:27 ` Bo Shen 0 siblings, 1 reply; 7+ messages in thread From: Jean-Christophe PLAGNIOL-VILLARD @ 2014-06-19 4:31 UTC (permalink / raw) To: Bo Shen; +Cc: barebox On 15:19 Mon 16 Jun , Bo Shen wrote: > > Hi Matteo, > > On 06/13/2014 08:48 PM, Matteo Fortini wrote: > >Hi all, > >glad you found my patch useful. Sascha rejected it because he sees it > >more fit to separate the initialization of sama5d3 and sam9 since they > >are quite different. > > > >I started, as advised by Sascha, to create into sam9_smc.c the function > > > >void sama5d3_smc_configure(int id, int cs, struct sama5d3_smc_config > >*config) > > > >but this brings on some other changes to keep the same structure of > >functions, i.e. we would need to implement > > > >static void sama5d3_smc_cs_configure(void __iomem *base, struct > >sama5d3_smc_config *config) > > > >and all the related functions, since the argument changes from struct > >sam9_smc_config * to struct sama5d3_smc_config * > > > >Now I'm asking you all for a comment: should we go ahead and create a > >new sama5d3_smc.c file with all the functions (some will unfortunately > >be a duplicate of those present in sam9_smc.c), or should I do a partial > >hack to insert sama5d3 specific functions into sam9_smc.c (like, for > >example, playing with config structures so that the sam9 one is just the > >head of the sama5d3)? > > I think we'd better to create a new sama5d3_smc.c. This will be more > readable, and also benefit for the new coming SoC. NACK that was raised on the kernel the sam9 & sama5 does does share the IP the a5 just have more features Best Regards, J. > > >Thank you in advance for your comments, I ask Raphaël to wait until this > >patch is settled to send in his changes. They will be very useful for > >me, too (I had to deactivate PMECC to use my NAND...) > > > >M > > Best Regards, > Bo Shen _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: atmel_nand pmecc on 8k page [RFC] 2014-06-19 4:31 ` Jean-Christophe PLAGNIOL-VILLARD @ 2014-06-19 5:27 ` Bo Shen 0 siblings, 0 replies; 7+ messages in thread From: Bo Shen @ 2014-06-19 5:27 UTC (permalink / raw) To: Jean-Christophe PLAGNIOL-VILLARD; +Cc: barebox Hi Jean-Christophe PLAGNIOL-VILLARD, On 06/19/2014 12:31 PM, Jean-Christophe PLAGNIOL-VILLARD wrote: > On 15:19 Mon 16 Jun , Bo Shen wrote: >> >> Hi Matteo, >> >> On 06/13/2014 08:48 PM, Matteo Fortini wrote: >>> Hi all, >>> glad you found my patch useful. Sascha rejected it because he sees it >>> more fit to separate the initialization of sama5d3 and sam9 since they >>> are quite different. >>> >>> I started, as advised by Sascha, to create into sam9_smc.c the function >>> >>> void sama5d3_smc_configure(int id, int cs, struct sama5d3_smc_config >>> *config) >>> >>> but this brings on some other changes to keep the same structure of >>> functions, i.e. we would need to implement >>> >>> static void sama5d3_smc_cs_configure(void __iomem *base, struct >>> sama5d3_smc_config *config) >>> >>> and all the related functions, since the argument changes from struct >>> sam9_smc_config * to struct sama5d3_smc_config * >>> >>> Now I'm asking you all for a comment: should we go ahead and create a >>> new sama5d3_smc.c file with all the functions (some will unfortunately >>> be a duplicate of those present in sam9_smc.c), or should I do a partial >>> hack to insert sama5d3 specific functions into sam9_smc.c (like, for >>> example, playing with config structures so that the sam9 one is just the >>> head of the sama5d3)? >> >> I think we'd better to create a new sama5d3_smc.c. This will be more >> readable, and also benefit for the new coming SoC. > > > NACK > > that was raised on the kernel the sam9 & sama5 does does share the IP the a5 > just have more features After I search the latest Linux kernel code, I don't find the related information, can you be more specific? A link or some reference code will be better. > Best Regards, > J. Best Regards, Bo Shen _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-06-19 5:28 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2014-06-12 12:28 atmel_nand pmecc on 8k page Raphaël Poggi 2014-06-13 1:26 ` Bo Shen 2014-06-13 8:48 ` Raphaël Poggi 2014-06-13 12:48 ` atmel_nand pmecc on 8k page [RFC] Matteo Fortini 2014-06-16 7:19 ` Bo Shen 2014-06-19 4:31 ` Jean-Christophe PLAGNIOL-VILLARD 2014-06-19 5:27 ` Bo Shen
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox