Prev: endless sync on bdi_sched_wait()? 2.6.33.1
Next: [PATCH] proc: pagemap: Hold mmap_sem during page walk
From: Madhusudhan on 31 Mar 2010 12:40 > -----Original Message----- > From: kishore kadiyala [mailto:kishorek.kadiyala(a)gmail.com] > Sent: Wednesday, March 31, 2010 2:03 AM > To: Vimal Singh > Cc: Madhusudhan; tony(a)atomide.com; svenkatr(a)ti.com; linux- > omap(a)vger.kernel.org; linux-kernel(a)vger.kernel.org; > jarkko.lavinen(a)nokia.com > Subject: Re: [PATCH-V2] OMAP: Fix for bus width which improves SD card's > peformance. > > Sorry for that and here's the Updated one. > > From: Kishore Kadiyala <kishore.kadiyala(a)ti.com> > > This patch improves low speeds for SD cards. > OMAP-MMC controller's can support maximum bus width of '8'. > when bus width is mentioned as "8" in controller data,the SD > stack will check whether bus width is "4" and if not it will > set bus width to "1" and there by degrading performance. > This patch fixes the issue and improves the performance of > SD cards. > > Signed-off-by: Kishore Kadiyala <kishore.kadiyala(a)ti.com> > Signed-off-by: Venkatraman S <svenkatr(a)ti.com> > Acked-by: Madhusudhan Chikkature <madhu.cr(a)ti.com> > > --- > In V2 : Appended Signed-off by Venkat and Ack by Madhu > > Here are my experiment numbers, on a Class 6 SDHC card: > Read peformance is increased by 220% > Write Performance is increased by 52% > > drivers/mmc/host/omap_hsmmc.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c > index 83f0aff..8c97c22 100644 > --- a/drivers/mmc/host/omap_hsmmc.c > +++ b/drivers/mmc/host/omap_hsmmc.c > @@ -2092,7 +2092,7 @@ static int __init omap_hsmmc_probe(struct > MMC_CAP_WAIT_WHILE_BUSY; > > if (mmc_slot(host).wires >= 8) > - mmc->caps |= MMC_CAP_8_BIT_DATA; > + mmc->caps |= (MMC_CAP_8_BIT_DATA | MMC_CAP_4_BIT_DATA); > else if (mmc_slot(host).wires >= 4) > mmc->caps |= MMC_CAP_4_BIT_DATA; > Kishore, Since this patch is not yet pushed it makes sense to fix the readability issue. Since 8-bit is the max how about: � � � �if (mmc_slot(host).wires == 8) � � � � � � � �mmc->caps |= MMC_CAP_8_BIT_DATA | MMC_CAP_4_BIT_DATA; � � � �if (mmc_slot(host).wires == 4) � � � � � � � �mmc->caps |= MMC_CAP_4_BIT_DATA; This would be little easy to read the code. Can you please repost the patch?? Regards, Madhu > -- > 1.6.3.3 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Madhusudhan on 1 Apr 2010 11:50 > -----Original Message----- > From: kishore kadiyala [mailto:kishorek.kadiyala(a)gmail.com] > Sent: Thursday, April 01, 2010 1:32 AM > To: Madhusudhan > Cc: Vimal Singh; tony(a)atomide.com; svenkatr(a)ti.com; linux- > omap(a)vger.kernel.org; linux-kernel(a)vger.kernel.org; > jarkko.lavinen(a)nokia.com > Subject: Re: [PATCH-V2] OMAP: Fix for bus width which improves SD card's > peformance. > > On Wed, Mar 31, 2010 at 10:07 PM, Madhusudhan <madhu.cr(a)ti.com> wrote: > > > > > >> -----Original Message----- > >> From: kishore kadiyala [mailto:kishorek.kadiyala(a)gmail.com] > >> Sent: Wednesday, March 31, 2010 2:03 AM > >> To: Vimal Singh > >> Cc: Madhusudhan; tony(a)atomide.com; svenkatr(a)ti.com; linux- > >> omap(a)vger.kernel.org; linux-kernel(a)vger.kernel.org; > >> jarkko.lavinen(a)nokia.com > >> Subject: Re: [PATCH-V2] OMAP: Fix for bus width which improves SD > card's > >> peformance. > >> > >> Sorry for that and here's the Updated one. > >> > >> From: Kishore Kadiyala <kishore.kadiyala(a)ti.com> > >> > >> This patch improves low speeds for SD cards. > >> OMAP-MMC controller's can support maximum bus width of '8'. > >> when bus width is mentioned as "8" in controller data,the SD > >> stack will check whether bus width is "4" and if not it will > >> set bus width to "1" and there by degrading performance. > >> This patch fixes the issue and improves the performance of > >> SD cards. > >> > >> Signed-off-by: Kishore Kadiyala <kishore.kadiyala(a)ti.com> > >> Signed-off-by: Venkatraman S <svenkatr(a)ti.com> > >> Acked-by: Madhusudhan Chikkature <madhu.cr(a)ti.com> > >> > >> --- > >> In V2 : Appended Signed-off by Venkat and Ack by Madhu > >> > >> �Here are my experiment numbers, on a Class 6 SDHC card: > >> �Read peformance is increased by 220% > >> �Write Performance is increased by 52% > >> > >> �drivers/mmc/host/omap_hsmmc.c | � �2 +- > >> �1 files changed, 1 insertions(+), 1 deletions(-) > >> > >> diff --git a/drivers/mmc/host/omap_hsmmc.c > b/drivers/mmc/host/omap_hsmmc.c > >> index 83f0aff..8c97c22 100644 > >> --- a/drivers/mmc/host/omap_hsmmc.c > >> +++ b/drivers/mmc/host/omap_hsmmc.c > >> @@ -2092,7 +2092,7 @@ static int __init omap_hsmmc_probe(struct > >> � � � � � � � � � �MMC_CAP_WAIT_WHILE_BUSY; > >> > >> � � � if (mmc_slot(host).wires >= 8) > >> - � � � � � � mmc->caps |= MMC_CAP_8_BIT_DATA; > >> + � � � � � � mmc->caps |= (MMC_CAP_8_BIT_DATA | MMC_CAP_4_BIT_DATA); > >> � � � else if (mmc_slot(host).wires >= 4) > >> � � � � � � � mmc->caps |= MMC_CAP_4_BIT_DATA; > >> > > Kishore, > > > > Since this patch is not yet pushed it makes sense to fix the readability > > issue. > > > > Since 8-bit is the max how about: > > > > �� � � �if (mmc_slot(host).wires == 8) > > �� � � � � � � �mmc->caps |= MMC_CAP_8_BIT_DATA | MMC_CAP_4_BIT_DATA; > > �� � � �if (mmc_slot(host).wires == 4) > > �� � � � � � � �mmc->caps |= MMC_CAP_4_BIT_DATA; > > > Madhu, > > In the above snippet, it checks whether wires are 8 or 4 and if not > neither set's capability to "1". > Does it make sense to check whether the wires are 8,4,1 and if not > any[8,4,1] throw error and come out. > It is good enough to just check for 8-bit and 4-bit. The 1-bit does not need any explicit check since it is default. Regards, Madhu > Regards, > Kishore > > This would be little easy to read the code. > > > > Can you please repost the patch?? > > > > Regards, > > Madhu > > > >> -- > >> 1.6.3.3 > > > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Madhusudhan on 5 Apr 2010 13:20 > -----Original Message----- > From: Felipe Balbi [mailto:me(a)felipebalbi.com] > Sent: Monday, April 05, 2010 11:49 AM > To: kishore kadiyala > Cc: Madhusudhan; Vimal Singh; tony(a)atomide.com; svenkatr(a)ti.com; linux- > omap(a)vger.kernel.org; linux-kernel(a)vger.kernel.org; > jarkko.lavinen(a)nokia.com > Subject: Re: [PATCH v3] OMAP: Fix for bus width which improves SD card's > peformance. > > Hi, > > On Mon, Apr 05, 2010 at 06:26:16PM +0530, kishore kadiyala wrote: > > @@ -2091,9 +2091,9 @@ static int __init omap_hsmmc_probe(struct > > mmc->caps |= MMC_CAP_MMC_HIGHSPEED | MMC_CAP_SD_HIGHSPEED | > > MMC_CAP_WAIT_WHILE_BUSY; > > > > - if (mmc_slot(host).wires >= 8) > > - mmc->caps |= MMC_CAP_8_BIT_DATA; > > - else if (mmc_slot(host).wires >= 4) > > + if (mmc_slot(host).wires == 8) > > + mmc->caps |= (MMC_CAP_8_BIT_DATA | MMC_CAP_4_BIT_DATA); > > + else if (mmc_slot(host).wires == 4) > > mmc->caps |= MMC_CAP_4_BIT_DATA; > > I believe it would be enough to just remove the 'else', so the code > would look like: > > if (mmc_slot(host).wires >= 8) > mmc->caps |= MMC_CAP_8_BIT_DATA; > if (mmc_slot(host).wires >= 4) Since the first if command already checks for the 8-bit the second check like >= 4 is definitely not readable in my opinion. Functionally do you see anything wrong with this patch?? > mmc->caps |= MMC_CAP_4_BIT_DATA; > > -- > balbi -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Madhusudhan on 5 Apr 2010 13:50 > -----Original Message----- > From: linux-omap-owner(a)vger.kernel.org [mailto:linux-omap- > owner(a)vger.kernel.org] On Behalf Of Madhusudhan > Sent: Monday, April 05, 2010 12:19 PM > To: me(a)felipebalbi.com; 'kishore kadiyala' > Cc: 'Vimal Singh'; tony(a)atomide.com; svenkatr(a)ti.com; linux- > omap(a)vger.kernel.org; linux-kernel(a)vger.kernel.org; > jarkko.lavinen(a)nokia.com > Subject: RE: [PATCH v3] OMAP: Fix for bus width which improves SD card's > peformance. > > > > > -----Original Message----- > > From: Felipe Balbi [mailto:me(a)felipebalbi.com] > > Sent: Monday, April 05, 2010 11:49 AM > > To: kishore kadiyala > > Cc: Madhusudhan; Vimal Singh; tony(a)atomide.com; svenkatr(a)ti.com; linux- > > omap(a)vger.kernel.org; linux-kernel(a)vger.kernel.org; > > jarkko.lavinen(a)nokia.com > > Subject: Re: [PATCH v3] OMAP: Fix for bus width which improves SD card's > > peformance. > > > > Hi, > > > > On Mon, Apr 05, 2010 at 06:26:16PM +0530, kishore kadiyala wrote: > > > @@ -2091,9 +2091,9 @@ static int __init omap_hsmmc_probe(struct > > > mmc->caps |= MMC_CAP_MMC_HIGHSPEED | MMC_CAP_SD_HIGHSPEED | > > > MMC_CAP_WAIT_WHILE_BUSY; > > > > > > - if (mmc_slot(host).wires >= 8) > > > - mmc->caps |= MMC_CAP_8_BIT_DATA; > > > - else if (mmc_slot(host).wires >= 4) > > > + if (mmc_slot(host).wires == 8) > > > + mmc->caps |= (MMC_CAP_8_BIT_DATA | MMC_CAP_4_BIT_DATA); > > > + else if (mmc_slot(host).wires == 4) > > > mmc->caps |= MMC_CAP_4_BIT_DATA; > > > > I believe it would be enough to just remove the 'else', so the code > > would look like: > > > > if (mmc_slot(host).wires >= 8) > > mmc->caps |= MMC_CAP_8_BIT_DATA; > > if (mmc_slot(host).wires >= 4) > > Since the first if command already checks for the 8-bit the second check > like >= 4 is definitely not readable in my opinion. > > Functionally do you see anything wrong with this patch?? > Just to clarify my earlier comment on the patch was to resubmit like below: if (mmc_slot(host).wires == 8) mmc->caps |= (MMC_CAP_8_BIT_DATA | MMC_CAP_4_BIT_DATA); if (mmc_slot(host).wires == 4) mmc->caps |= MMC_CAP_4_BIT_DATA; IMHO, this should be good enough. Regards, Madhu > > mmc->caps |= MMC_CAP_4_BIT_DATA; > > > > -- > > balbi > > -- > To unsubscribe from this list: send the line "unsubscribe linux-omap" in > the body of a message to majordomo(a)vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Madhusudhan on 6 Apr 2010 12:20 > -----Original Message----- > From: Felipe Balbi [mailto:me(a)felipebalbi.com] > Sent: Tuesday, April 06, 2010 12:01 AM > To: Madhusudhan > Cc: me(a)felipebalbi.com; 'kishore kadiyala'; 'Vimal Singh'; > tony(a)atomide.com; svenkatr(a)ti.com; linux-omap(a)vger.kernel.org; linux- > kernel(a)vger.kernel.org; jarkko.lavinen(a)nokia.com > Subject: Re: [PATCH v3] OMAP: Fix for bus width which improves SD card's > peformance. > > Hi, > > On Mon, Apr 05, 2010 at 12:19:29PM -0500, Madhusudhan wrote: > > Since the first if command already checks for the 8-bit the second check > > like >= 4 is definitely not readable in my opinion. > > how come ??? > > > Functionally do you see anything wrong with this patch?? > > functionally no, but (hypothetical situation) and if on > omap4/5/6/whatever, omap controller supports a bigger bus width then > you'll have to add a line like: > > + if (mmc_slot(host).wires == 16) > + mmc->caps |= (MMC_CAP_16_BIT_DATA | MMC_CAP_8_BIT_DATA | > + MMC_CAP_4_BIT_DATA); > - if (mmc_slot(host).wires == 8) > + else if (mmc_slot(host).wires == 8) > > do you see the problem ?? In my opinion it doesn't scale well. > The point we should note here is that MMC spec supports a max bus width of 8-bit. So anything beyond 8-bit is not in the picture as of today. But, my bad on miss interpreting the snippet Felipe sent earlier. if (mmc_slot(host).wires >= 8) mmc->caps |= MMC_CAP_8_BIT_DATA; if (mmc_slot(host).wires >= 4) mmc->caps |= MMC_CAP_4_BIT_DATA; I missed the fact that you removed the setting of 4-bit from the first check. I am okay with the above snippet as it is a trivial change that we are trying to patch here which fixes an important issue. Regards, Madhu > -- > balbi -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|
Next
|
Last
Pages: 1 2 3 Prev: endless sync on bdi_sched_wait()? 2.6.33.1 Next: [PATCH] proc: pagemap: Hold mmap_sem during page walk |