* MLC Support in JFFS2
@ 2009-06-22 5:56 apgmoorthy
2009-06-22 7:47 ` Artem Bityutskiy
0 siblings, 1 reply; 17+ messages in thread
From: apgmoorthy @ 2009-06-22 5:56 UTC (permalink / raw)
To: 'David Woodhouse'
Cc: 'Amit Kumar Sharma', vishak.g, 'Amul Saha',
kyungmin.park, linux-mtd
Hi David,
Currenlty , Is there a way to use JFFS2 with MLC Memories ?
If not , Felt that any one of the following patch can be of use
1. http://lists.infradead.org/pipermail/linux-mtd/2007-December/020047.html
- Which removes the Clean Marker.
2. http://lists.infradead.org/pipermail/linux-mtd/2008-September/023101.html
http://lists.infradead.org/pipermail/linux-mtd/2008-September/023044.html
- Leaving 1page/Block , for Clean Marker.
or some other solution, which solves the standoff.
Without MLC Support , Flex-OneNAND is unsuable with JFFS2.
With Regards
Moorthy
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: MLC Support in JFFS2
2009-06-22 5:56 MLC Support in JFFS2 apgmoorthy
@ 2009-06-22 7:47 ` Artem Bityutskiy
2009-06-22 13:33 ` apgmoorthy
0 siblings, 1 reply; 17+ messages in thread
From: Artem Bityutskiy @ 2009-06-22 7:47 UTC (permalink / raw)
To: apgmoorthy
Cc: 'Amit Kumar Sharma', vishak.g, 'Amul Saha',
kyungmin.park, linux-mtd, 'David Woodhouse'
apgmoorthy wrote:
> Hi David,
>
> Currenlty , Is there a way to use JFFS2 with MLC Memories ?
>
> If not , Felt that any one of the following patch can be of use
>
> 1. http://lists.infradead.org/pipermail/linux-mtd/2007-December/020047.html
> - Which removes the Clean Marker.
>
> 2. http://lists.infradead.org/pipermail/linux-mtd/2008-September/023101.html
> http://lists.infradead.org/pipermail/linux-mtd/2008-September/023044.html
> - Leaving 1page/Block , for Clean Marker.
>
> or some other solution, which solves the standoff.
>
> Without MLC Support , Flex-OneNAND is unsuable with JFFS2.
Is JFFS2 usable with Flex-OneNAND by design? I thought it would have
to be able to handle paired pages to become MLC-compatible. Does it
do that?
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
^ permalink raw reply [flat|nested] 17+ messages in thread
* RE: MLC Support in JFFS2
2009-06-22 7:47 ` Artem Bityutskiy
@ 2009-06-22 13:33 ` apgmoorthy
2009-06-22 13:41 ` Artem Bityutskiy
0 siblings, 1 reply; 17+ messages in thread
From: apgmoorthy @ 2009-06-22 13:33 UTC (permalink / raw)
To: 'Artem Bityutskiy'
Cc: 'Amit Kumar Sharma', vishak.g, 'Amul Saha',
kyungmin.park, linux-mtd, 'David Woodhouse'
Hi Artem ,
On Monday, June 22, 2009 1:18 PM Artem Bityutskiy wrote :
>> Currenlty , Is there a way to use JFFS2 with MLC Memories ?
>>
>> If not , Felt that any one of the following patch can be of use
>>
>> 1. http://lists.infradead.org/pipermail/linux-mtd/2007-December/020047.html
>> - Which removes the Clean Marker.
>>
>> 2. http://lists.infradead.org/pipermail/linux-mtd/2008-September/023101.html
>> http://lists.infradead.org/pipermail/linux-mtd/2008-September/023044.html
>> - Leaving 1page/Block , for Clean Marker.
>>
>> or some other solution, which solves the standoff.
>>
>> Without MLC Support , Flex-OneNAND is unsuable with JFFS2.
>Is JFFS2 usable with Flex-OneNAND by design? I thought it would have to be able to handle paired pages to become MLC-compatible. Does it do that?
Yes it do that .
There are two things in Handling MLCs
1.Paired Page Handling
This is done in Flex-OneNAND Driver.
flexonenand_lsb_page_recovery will handle that in MLC area.
2.NOP==1
This scenario has to be dealt in synchronization with JFFS2.
This is what i asked about.
Pathces , in the links(above)are addressing this.
With Regards
Moorthy
^ permalink raw reply [flat|nested] 17+ messages in thread
* RE: MLC Support in JFFS2
2009-06-22 13:33 ` apgmoorthy
@ 2009-06-22 13:41 ` Artem Bityutskiy
0 siblings, 0 replies; 17+ messages in thread
From: Artem Bityutskiy @ 2009-06-22 13:41 UTC (permalink / raw)
To: apgmoorthy
Cc: 'Amit Kumar Sharma', vishak.g, 'Artem Bityutskiy',
'Amul Saha', kyungmin.park, linux-mtd,
'David Woodhouse'
On Mon, 2009-06-22 at 19:03 +0530, apgmoorthy wrote:
> Yes it do that .
> There are two things in Handling MLCs
> 1.Paired Page Handling
> This is done in Flex-OneNAND Driver.
> flexonenand_lsb_page_recovery will handle that in MLC area.
Ah, ok you do this at the driver level - good.
> 2.NOP==1
> This scenario has to be dealt in synchronization with JFFS2.
> This is what i asked about.
> Pathces , in the links(above)are addressing this.
OK, I see.
--
Best regards,
Artem Bityutskiy (Битюцкий Артём)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [patch 01/14] mtd: Flex-OneNAND support
@ 2009-05-25 10:52 apgmoorthy
2009-05-27 13:55 ` Artem Bityutskiy
0 siblings, 1 reply; 17+ messages in thread
From: apgmoorthy @ 2009-05-25 10:52 UTC (permalink / raw)
To: dedekind; +Cc: vishak.g, amul.saha, kyungmin.park, linux-mtd, akpm, dwmw2
Hi Artem ,
On Sat May 23 05:35:19 EDT 2009 dedekind@infradead.org wrote :
>I get the following warning when compile this:
>drivers/mtd/onenand/onenand_base.c:3263: warning: 'flexonenand_setup'
>defined but not used
I tried on the MTD Git and have seen the warning as you mentioned.
'#ifndef MODULE' around the function 'flexonenand_setup' should help to get away with that warning.
We will post a patch.
Against which Fork , the patch should be ?
With Regards
Moorthy
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-05-25 10:52 [patch 01/14] mtd: Flex-OneNAND support apgmoorthy
@ 2009-05-27 13:55 ` Artem Bityutskiy
2009-06-09 13:38 ` David Woodhouse
0 siblings, 1 reply; 17+ messages in thread
From: Artem Bityutskiy @ 2009-05-27 13:55 UTC (permalink / raw)
To: apgmoorthy; +Cc: vishak.g, amul.saha, kyungmin.park, linux-mtd, akpm, dwmw2
On Mon, 2009-05-25 at 16:22 +0530, apgmoorthy wrote:
> Hi Artem ,
>
> On Sat May 23 05:35:19 EDT 2009 dedekind@infradead.org wrote :
>
> >I get the following warning when compile this:
>
> >drivers/mtd/onenand/onenand_base.c:3263: warning: 'flexonenand_setup'
> >defined but not used
>
> I tried on the MTD Git and have seen the warning as you mentioned.
> '#ifndef MODULE' around the function 'flexonenand_setup' should help to get away with that warning.
> We will post a patch.
Does this mean that if I build OneNAND as a module I have no
possibility to define FlexOneNAND boundary?
Sorry if I missed the discussion, but why you cannot use something
like 'module_param_array()' ?
--
Best regards,
Artem Bityutskiy (Битюцкий Артём)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-05-27 13:55 ` Artem Bityutskiy
@ 2009-06-09 13:38 ` David Woodhouse
2009-06-11 9:23 ` Amul Saha
0 siblings, 1 reply; 17+ messages in thread
From: David Woodhouse @ 2009-06-09 13:38 UTC (permalink / raw)
To: dedekind; +Cc: vishak.g, apgmoorthy, amul.saha, kyungmin.park, linux-mtd, akpm
On Wed, 2009-05-27 at 16:55 +0300, Artem Bityutskiy wrote:
> On Mon, 2009-05-25 at 16:22 +0530, apgmoorthy wrote:
> > I tried on the MTD Git and have seen the warning as you mentioned.
> > '#ifndef MODULE' around the function 'flexonenand_setup' should help
> > to get away with that warning.
> > We will post a patch.
>
> Does this mean that if I build OneNAND as a module I have no
> possibility to define FlexOneNAND boundary?
>
> Sorry if I missed the discussion, but why you cannot use something
> like 'module_param_array()' ?
That certainly seems like it would be the best answer.
Can we have a patch to do that please?
--
David Woodhouse Open Source Technology Centre
David.Woodhouse@intel.com Intel Corporation
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-06-09 13:38 ` David Woodhouse
@ 2009-06-11 9:23 ` Amul Saha
2009-06-11 9:35 ` Artem Bityutskiy
0 siblings, 1 reply; 17+ messages in thread
From: Amul Saha @ 2009-06-11 9:23 UTC (permalink / raw)
To: David Woodhouse, dedekind
Cc: kyungmin.park, vishak.g, linux-mtd, apgmoorthy, akpm
This patch now adds support for Flex-OneNAND to be used as a module,
it also supports Boundary setting at module insertion time
Signed-off-by: Amul Kumar Saha <amul.saha at samsung.com>
Signed-off-by: Vishak G <vishak.g at samsung.com>
---
onenand_base.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c
index 8d4c9c2..a91133b 100644
--- a/drivers/mtd/onenand/onenand_base.c
+++ b/drivers/mtd/onenand/onenand_base.c
@@ -20,6 +20,7 @@
#include <linux/kernel.h>
#include <linux/module.h>
+#include <linux/moduleparam.h>
#include <linux/init.h>
#include <linux/sched.h>
#include <linux/delay.h>
@@ -31,6 +32,18 @@
#include <asm/io.h>
+#ifdef MODULE
+static char *flex_bdry_info;
+
+module_param(flex_bdry_info, charp, 0400);
+MODULE_PARM_DESC(flex_bdry_info, "SLC Boundary information for Flex-OneNAND"
+ "Syntax:flex_bdry_info=DIE_BDRY,LOCK,..."
+ "DIE_BDRY: SLC boundary of the die"
+ "LOCK: Locking information for SLC boundary"
+ " : 0->Set boundary in unlocked status"
+ " : 1->Set boundary in locked status");
+#endif
+
/* Default Flex-OneNAND boundary and lock respectively */
static int flex_bdry[MAX_DIES * 2] = { -1, 0, -1, 0 };
@@ -3271,7 +3284,9 @@ static int flexonenand_setup(char *s)
return 1;
}
+#ifndef MODULE
__setup("onenand.bdry=", flexonenand_setup);
+#endif
/**
* onenand_probe - [OneNAND Interface] Probe the OneNAND device
@@ -3456,6 +3471,10 @@ int onenand_scan(struct mtd_info *mtd, int maxchips)
if (onenand_probe(mtd))
return -ENXIO;
+#ifdef MODULE
+ flexonenand_setup(flex_bdry_info);
+#endif
+
/* Set Sync. Burst Read after probing */
if (this->mmcontrol) {
printk(KERN_INFO "OneNAND Sync. Burst Read support\n");
^ permalink raw reply related [flat|nested] 17+ messages in thread* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-06-11 9:23 ` Amul Saha
@ 2009-06-11 9:35 ` Artem Bityutskiy
2009-06-12 10:26 ` Amul Saha
0 siblings, 1 reply; 17+ messages in thread
From: Artem Bityutskiy @ 2009-06-11 9:35 UTC (permalink / raw)
To: Amul Saha
Cc: vishak.g, apgmoorthy, kyungmin.park, linux-mtd, akpm,
David Woodhouse
On Thu, 2009-06-11 at 14:53 +0530, Amul Saha wrote:
> This patch now adds support for Flex-OneNAND to be used as a module,
> it also supports Boundary setting at module insertion time
>
> Signed-off-by: Amul Kumar Saha <amul.saha at samsung.com>
> Signed-off-by: Vishak G <vishak.g at samsung.com>
> ---
> onenand_base.c | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c
> index 8d4c9c2..a91133b 100644
> --- a/drivers/mtd/onenand/onenand_base.c
> +++ b/drivers/mtd/onenand/onenand_base.c
> @@ -20,6 +20,7 @@
>
> #include <linux/kernel.h>
> #include <linux/module.h>
> +#include <linux/moduleparam.h>
> #include <linux/init.h>
> #include <linux/sched.h>
> #include <linux/delay.h>
> @@ -31,6 +32,18 @@
>
> #include <asm/io.h>
>
> +#ifdef MODULE
> +static char *flex_bdry_info;
> +
> +module_param(flex_bdry_info, charp, 0400);
> +MODULE_PARM_DESC(flex_bdry_info, "SLC Boundary information for Flex-OneNAND"
> + "Syntax:flex_bdry_info=DIE_BDRY,LOCK,..."
> + "DIE_BDRY: SLC boundary of the die"
> + "LOCK: Locking information for SLC boundary"
> + " : 0->Set boundary in unlocked status"
> + " : 1->Set boundary in locked status");
> +#endif
> +
> /* Default Flex-OneNAND boundary and lock respectively */
> static int flex_bdry[MAX_DIES * 2] = { -1, 0, -1, 0 };
>
> @@ -3271,7 +3284,9 @@ static int flexonenand_setup(char *s)
> return 1;
> }
>
> +#ifndef MODULE
> __setup("onenand.bdry=", flexonenand_setup);
> +#endif
Why you still need this? Module parameters still work if your stuff
is compiled in - you just pass the "onenand.flex_bdry_info=" kernel
parameter.
--
Best regards,
Artem Bityutskiy (Битюцкий Артём)
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-06-11 9:35 ` Artem Bityutskiy
@ 2009-06-12 10:26 ` Amul Saha
2009-06-12 10:42 ` Artem Bityutskiy
0 siblings, 1 reply; 17+ messages in thread
From: Amul Saha @ 2009-06-12 10:26 UTC (permalink / raw)
To: dedekind
Cc: vishak.g, apgmoorthy, kyungmin.park, linux-mtd, akpm,
David Woodhouse
This patch now adds support for Flex-OneNAND to be used as a module,
it also supports Boundary setting at module insertion time
Signed-off-by: Amul Kumar Saha <amul.saha at samsung.com>
Signed-off-by: Vishak G <vishak.g at samsung.com>
---
onenand_base.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c
index 8d4c9c2..6d2086f 100644
--- a/drivers/mtd/onenand/onenand_base.c
+++ b/drivers/mtd/onenand/onenand_base.c
@@ -20,6 +20,7 @@
#include <linux/kernel.h>
#include <linux/module.h>
+#include <linux/moduleparam.h>
#include <linux/init.h>
#include <linux/sched.h>
#include <linux/delay.h>
@@ -31,6 +32,16 @@
#include <asm/io.h>
+static char *flex_bdry_info;
+
+module_param(flex_bdry_info, charp, 0400);
+MODULE_PARM_DESC(flex_bdry_info, "SLC Boundary information for Flex-OneNAND"
+ "Syntax:flex_bdry_info=DIE_BDRY,LOCK,..."
+ "DIE_BDRY: SLC boundary of the die"
+ "LOCK: Locking information for SLC boundary"
+ " : 0->Set boundary in unlocked status"
+ " : 1->Set boundary in locked status");
+
/* Default Flex-OneNAND boundary and lock respectively */
static int flex_bdry[MAX_DIES * 2] = { -1, 0, -1, 0 };
@@ -3456,6 +3467,10 @@ int onenand_scan(struct mtd_info *mtd, int maxchips)
if (onenand_probe(mtd))
return -ENXIO;
+#ifdef MODULE
+ flexonenand_setup(flex_bdry_info);
+#endif
+
/* Set Sync. Burst Read after probing */
if (this->mmcontrol) {
printk(KERN_INFO "OneNAND Sync. Burst Read support\n");
^ permalink raw reply related [flat|nested] 17+ messages in thread* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-06-12 10:26 ` Amul Saha
@ 2009-06-12 10:42 ` Artem Bityutskiy
2009-06-12 11:57 ` Amul Saha
0 siblings, 1 reply; 17+ messages in thread
From: Artem Bityutskiy @ 2009-06-12 10:42 UTC (permalink / raw)
To: Amul Saha
Cc: vishak.g, apgmoorthy, kyungmin.park, linux-mtd, akpm,
David Woodhouse
On Fri, 2009-06-12 at 15:56 +0530, Amul Saha wrote:
> This patch now adds support for Flex-OneNAND to be used as a module,
> it also supports Boundary setting at module insertion time
>
> Signed-off-by: Amul Kumar Saha <amul.saha at samsung.com>
> Signed-off-by: Vishak G <vishak.g at samsung.com>
> ---
> onenand_base.c | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c
> index 8d4c9c2..6d2086f 100644
> --- a/drivers/mtd/onenand/onenand_base.c
> +++ b/drivers/mtd/onenand/onenand_base.c
> @@ -20,6 +20,7 @@
>
> #include <linux/kernel.h>
> #include <linux/module.h>
> +#include <linux/moduleparam.h>
> #include <linux/init.h>
> #include <linux/sched.h>
> #include <linux/delay.h>
> @@ -31,6 +32,16 @@
>
> #include <asm/io.h>
>
> +static char *flex_bdry_info;
> +
> +module_param(flex_bdry_info, charp, 0400);
> +MODULE_PARM_DESC(flex_bdry_info, "SLC Boundary information for Flex-OneNAND"
> + "Syntax:flex_bdry_info=DIE_BDRY,LOCK,..."
> + "DIE_BDRY: SLC boundary of the die"
> + "LOCK: Locking information for SLC boundary"
> + " : 0->Set boundary in unlocked status"
> + " : 1->Set boundary in locked status");
> +
> /* Default Flex-OneNAND boundary and lock respectively */
> static int flex_bdry[MAX_DIES * 2] = { -1, 0, -1, 0 };
>
> @@ -3456,6 +3467,10 @@ int onenand_scan(struct mtd_info *mtd, int maxchips)
> if (onenand_probe(mtd))
> return -ENXIO;
>
> +#ifdef MODULE
> + flexonenand_setup(flex_bdry_info);
> +#endif
Why do you need this ifdef? What is the fundamental difference between
onenand.ko as a module and onenand compiled-in?
--
Best regards,
Artem Bityutskiy (Битюцкий Артём)
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-06-12 10:42 ` Artem Bityutskiy
@ 2009-06-12 11:57 ` Amul Saha
2009-06-12 12:03 ` Artem Bityutskiy
0 siblings, 1 reply; 17+ messages in thread
From: Amul Saha @ 2009-06-12 11:57 UTC (permalink / raw)
To: dedekind
Cc: vishak.g, apgmoorthy, kyungmin.park, linux-mtd, akpm,
David Woodhouse
Hi Artem,
>> +#ifdef MODULE
>> + flexonenand_setup(flex_bdry_info);
>> +#endif
>
> Why do you need this ifdef? What is the fundamental difference between
> onenand.ko as a module and onenand compiled-in?
>
flexonenand_setup( ) need not be called, when OneNAND is built-in.
This function-call will cause overhead unwantedly on every boot, during OneNAND scan.
flexonenand_setup( ) call is needed only when it has been built as a module.
Regards,
Amul Kumar Saha
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-06-12 11:57 ` Amul Saha
@ 2009-06-12 12:03 ` Artem Bityutskiy
2009-06-12 13:16 ` Amul Saha
0 siblings, 1 reply; 17+ messages in thread
From: Artem Bityutskiy @ 2009-06-12 12:03 UTC (permalink / raw)
To: Amul Saha
Cc: vishak.g, apgmoorthy, kyungmin.park, linux-mtd, akpm,
David Woodhouse
On Fri, 2009-06-12 at 17:27 +0530, Amul Saha wrote:
> Hi Artem,
>
> >> +#ifdef MODULE
> >> + flexonenand_setup(flex_bdry_info);
> >> +#endif
> >
> > Why do you need this ifdef? What is the fundamental difference between
> > onenand.ko as a module and onenand compiled-in?
> >
>
> flexonenand_setup( ) need not be called, when OneNAND is built-in.
> This function-call will cause overhead unwantedly on every boot, during OneNAND scan.
>
> flexonenand_setup( ) call is needed only when it has been built as a module.
Why?
--
Best regards,
Artem Bityutskiy (Битюцкий Артём)
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-06-12 12:03 ` Artem Bityutskiy
@ 2009-06-12 13:16 ` Amul Saha
2009-06-12 13:32 ` David Woodhouse
0 siblings, 1 reply; 17+ messages in thread
From: Amul Saha @ 2009-06-12 13:16 UTC (permalink / raw)
To: dedekind
Cc: vishak.g, apgmoorthy, kyungmin.park, linux-mtd, akpm,
David Woodhouse
>> >> +#ifdef MODULE
>> >> + flexonenand_setup(flex_bdry_info);
>> >> +#endif
>> >
>> > Why do you need this ifdef? What is the fundamental difference between
>> > onenand.ko as a module and onenand compiled-in?
>> >
>>
>> flexonenand_setup( ) need not be called, when OneNAND is built-in.
>> This function-call will cause overhead unwantedly on every boot, during OneNAND scan.
>>
>> flexonenand_setup( ) call is needed only when it has been built as a module.
>
> Why?
>
When Flex-OneNAND is built-in, the SLC boundary can be set by kernel command line.
During the boot up time, flexonenand_setup() gets invoked by kernel, on parsing the kernel
command line.
But when Flex-OneNAND is built as a module, SLC boundary information is passed as module
parameter.
So in this case flexonenand_setup() has to be called explicitly during insomd time
(module_init), to set the desired boundary.
So without a compilation macro (#ifdef MODULE) flexonenand_setup() is invoked in onenand_scan,
even when it is built-in which is not needed.
I am not getting your point, could you please clarify?
Regards,
Amul Kumar Saha
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [patch 01/14] mtd: Flex-OneNAND support
2009-06-12 13:16 ` Amul Saha
@ 2009-06-12 13:32 ` David Woodhouse
[not found] ` <42F6638D897B4BA7B729CBC244D9F6E4@sisodomain.com>
0 siblings, 1 reply; 17+ messages in thread
From: David Woodhouse @ 2009-06-12 13:32 UTC (permalink / raw)
To: Amul Saha; +Cc: vishak.g, apgmoorthy, kyungmin.park, linux-mtd, akpm
On Fri, 2009-06-12 at 18:46 +0530, Amul Saha wrote:
> >> >> +#ifdef MODULE
> >> >> + flexonenand_setup(flex_bdry_info);
> >> >> +#endif
> >> >
> >> > Why do you need this ifdef? What is the fundamental difference between
> >> > onenand.ko as a module and onenand compiled-in?
> >> >
> >>
> >> flexonenand_setup( ) need not be called, when OneNAND is built-in.
> >> This function-call will cause overhead unwantedly on every boot, during OneNAND scan.
> >>
> >> flexonenand_setup( ) call is needed only when it has been built as a module.
> >
> > Why?
> >
>
> When Flex-OneNAND is built-in, the SLC boundary can be set by kernel command line.
> During the boot up time, flexonenand_setup() gets invoked by kernel, on parsing the kernel
> command line.
>
> But when Flex-OneNAND is built as a module, SLC boundary information is passed as module
> parameter.
> So in this case flexonenand_setup() has to be called explicitly during insomd time
> (module_init), to set the desired boundary.
> So without a compilation macro (#ifdef MODULE) flexonenand_setup() is invoked in onenand_scan,
> even when it is built-in which is not needed.
>
> I am not getting your point, could you please clarify?
You can remove flexonenand_setup() and the __setup("onenand_brdy=")
completely, and use _only_ "module_param_array()". That will work both
for modules and for the built-in case.
--
David Woodhouse Open Source Technology Centre
David.Woodhouse@intel.com Intel Corporation
^ permalink raw reply [flat|nested] 17+ messages in thread
* MLC Support in JFFS2
@ 2007-11-23 15:39 payagond
0 siblings, 0 replies; 17+ messages in thread
From: payagond @ 2007-11-23 15:39 UTC (permalink / raw)
To: linux-mtd
Hello,
Which is the better way for MLC support in JFFS2?
Is it removing the CLEANMARKER or
reserving the first page of every block for it
If I am using the 2nd option ie., reserving a page in every block -
What else I have to take care of, other than jeb->freesize and
jeb->used_size?
regards
payagond
________________________________________________________________________
Email and AIM finally together. You've gotta check out free AOL Mail! -
http://mail.aol.com
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2010-04-15 21:26 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-22 5:56 MLC Support in JFFS2 apgmoorthy
2009-06-22 7:47 ` Artem Bityutskiy
2009-06-22 13:33 ` apgmoorthy
2009-06-22 13:41 ` Artem Bityutskiy
-- strict thread matches above, loose matches on Subject: below --
2009-05-25 10:52 [patch 01/14] mtd: Flex-OneNAND support apgmoorthy
2009-05-27 13:55 ` Artem Bityutskiy
2009-06-09 13:38 ` David Woodhouse
2009-06-11 9:23 ` Amul Saha
2009-06-11 9:35 ` Artem Bityutskiy
2009-06-12 10:26 ` Amul Saha
2009-06-12 10:42 ` Artem Bityutskiy
2009-06-12 11:57 ` Amul Saha
2009-06-12 12:03 ` Artem Bityutskiy
2009-06-12 13:16 ` Amul Saha
2009-06-12 13:32 ` David Woodhouse
[not found] ` <42F6638D897B4BA7B729CBC244D9F6E4@sisodomain.com>
2009-06-22 19:15 ` MLC Support in JFFS2 David Woodhouse
2009-06-23 12:52 ` apgmoorthy
2009-06-23 13:19 ` David Woodhouse
2009-06-24 6:50 ` apgmoorthy
2010-03-31 9:53 ` Amul Kumar Saha
2010-03-31 13:07 ` massimo cirillo
2010-04-05 11:10 ` Amul Kumar Saha
2010-04-05 11:52 ` massimo cirillo
2010-04-09 9:21 ` Amul Kumar Saha
2010-04-13 9:45 ` massimo cirillo
[not found] ` <D4189C368A9B4BD986B7B98A0F05953B@sisodomain.com>
2010-04-15 21:03 ` massimo cirillo
2010-04-15 21:26 ` massimo cirillo
2007-11-23 15:39 payagond
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).