Re: [U-Boot] [PATCH] mmc: fix capacity calculation with high capacity mmc

2010-09-24 Thread Marek Vasut
Dne Út 21. září 2010 16:45:25 John Rigby napsal(a):
 On Sat, Sep 18, 2010 at 3:49 PM, Wolfgang Denk w...@denx.de wrote:
  Dear Lei Wen,
  
  In message aanlktimaqttcjf52djf-ahdeffqbhfwyejd3024vw...@mail.gmail.com 
you wrote:
  How about merge this patch? :-)
  
  I will wait for a pull request from the responsible custodian.
  
  Maybe you should have put him on cc: ...  (done now).
 
 I pinged Andy about some mmc patches that he replied Applied to back
 in May but never made it into the repo.  I see no emails from him to
 the u-boot list for sometime.
 
 Andy, are you still around?  Freescalers, any info?

Andy's around, but he's slow sometimes ... definition of slow is relative 
though :)
 
 Thanks
 John
 ___
 U-Boot mailing list
 U-Boot@lists.denx.de
 http://lists.denx.de/mailman/listinfo/u-boot
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] mmc: fix capacity calculation with high capacity mmc

2010-09-21 Thread John Rigby
On Sat, Sep 18, 2010 at 3:49 PM, Wolfgang Denk w...@denx.de wrote:
 Dear Lei Wen,

 In message aanlktimaqttcjf52djf-ahdeffqbhfwyejd3024vw...@mail.gmail.com you 
 wrote:

 How about merge this patch? :-)

 I will wait for a pull request from the responsible custodian.

 Maybe you should have put him on cc: ...  (done now).


I pinged Andy about some mmc patches that he replied Applied to back
in May but never made it into the repo.  I see no emails from him to
the u-boot list for sometime.

Andy, are you still around?  Freescalers, any info?

Thanks
John
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] mmc: fix capacity calculation with high capacity mmc

2010-09-18 Thread Wolfgang Denk
Dear Lei Wen,

In message aanlktimaqttcjf52djf-ahdeffqbhfwyejd3024vw...@mail.gmail.com you 
wrote:
 
 How about merge this patch? :-)

I will wait for a pull request from the responsible custodian.

Maybe you should have put him on cc: ...  (done now).

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
Status quo. Latin for the mess we're in.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] mmc: fix capacity calculation with high capacity mmc

2010-09-18 Thread Reinhard Meyer
Dear Wolfgang Denk, Lei Wen, Andy Fleming,
 Dear Lei Wen,

 In messageaanlktimaqttcjf52djf-ahdeffqbhfwyejd3024vw...@mail.gmail.com  you 
 wrote:

 How about merge this patch? :-)

 I will wait for a pull request from the responsible custodian.

 Maybe you should have put him on cc: ...  (done now).
@@ -441,6 +441,11 @@ int mmc_change_freq(struct mmc *mmc)
if (!ext_csd[185])
return 0;
 
  + if (!IS_SD(mmc)  mmc-high_capacity) {
  + mmc-capacity = ext_csd[212] | (ext_csd[213]  8)
  + | (ext_csd[214]  16) | (ext_csd[215]  24);
  + mmc-capacity *= mmc-read_bl_len;
  + }
/* High Speed is set, there are two types: 52MHz and 26MHz */
 
I am still convinced mmc_change_freq() is the wrong place to do that
calculation. All other card types do it around line 700...

Best Regards,
Reinhard
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] mmc: fix capacity calculation with high capacity mmc

2010-09-12 Thread Lei Wen
Hi Wolfgang,

How about merge this patch? :-)

Best regards,
Lei

On Mon, Sep 6, 2010 at 10:11 PM, Lei Wen adrian.w...@gmail.com wrote:
 Hi Reinhard ,

 On Mon, Sep 6, 2010 at 10:07 PM, Reinhard Meyer
 u-b...@emk-elektronik.de wrote:
 Dear Lei Wen,
 According spec, high capacity mmc should be calculated by sector
 number multiply by sector size.

 Signed-off-by: Lei Wen lei...@marvell.com
 ---
  drivers/mmc/mmc.c |    5 +
  1 files changed, 5 insertions(+), 0 deletions(-)

 diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
 index ea398a5..bb97171 100644
 --- a/drivers/mmc/mmc.c
 +++ b/drivers/mmc/mmc.c
 @@ -441,6 +441,11 @@ int mmc_change_freq(struct mmc *mmc)
       if (!ext_csd[185])
               return 0;

 +     if (!IS_SD(mmc)  mmc-high_capacity) {
 +             mmc-capacity = ext_csd[212] | (ext_csd[213]  8)
 +                     | (ext_csd[214]  16) | (ext_csd[215]  24);
 +             mmc-capacity *= mmc-read_bl_len;
 +     }
       /* High Speed is set, there are two types: 52MHz and 26MHz */
       if (cardtype  MMC_HS_52MHZ)
               mmc-card_caps |= MMC_MODE_HS_52MHz | MMC_MODE_HS;

 Sorry to kick in again...

 a) this calculation is already done in line 717, and certainly does not 
 belong
 in a function called mmc_change_freq.

 b) the current Top-Of-Tree code already calculates the capacity correctly:

 32GB SDHC Card:

 Device: mci
 Manufacturer ID: 3
 OEM: 5344
 Name: SD32G
 Tran Speed: 2500
 Rd Block Len: 512
 SD version 2.0
 High Capacity: Yes
 Capacity: 31914983424
 Bus Width: 4-bit

 Yes, for sd card, the calculation method is right.
 But for mmc with high capacity, the calculation is wrong. You could
 try a mmc card with high capacity, like emmc card.

 c) is that now an incremental patch to the one you sent previously?
 It is a separate one. :-)

 Best regards,
 Lei

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH] mmc: fix capacity calculation with high capacity mmc

2010-09-06 Thread Lei Wen
According spec, high capacity mmc should be calculated by sector
number multiply by sector size.

Signed-off-by: Lei Wen lei...@marvell.com
---
 drivers/mmc/mmc.c |5 +
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
index ea398a5..bb97171 100644
--- a/drivers/mmc/mmc.c
+++ b/drivers/mmc/mmc.c
@@ -441,6 +441,11 @@ int mmc_change_freq(struct mmc *mmc)
if (!ext_csd[185])
return 0;
 
+   if (!IS_SD(mmc)  mmc-high_capacity) {
+   mmc-capacity = ext_csd[212] | (ext_csd[213]  8)
+   | (ext_csd[214]  16) | (ext_csd[215]  24);
+   mmc-capacity *= mmc-read_bl_len;
+   }
/* High Speed is set, there are two types: 52MHz and 26MHz */
if (cardtype  MMC_HS_52MHZ)
mmc-card_caps |= MMC_MODE_HS_52MHz | MMC_MODE_HS;
-- 
1.7.0.4

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] mmc: fix capacity calculation with high capacity mmc

2010-09-06 Thread Reinhard Meyer
Dear Lei Wen,
 According spec, high capacity mmc should be calculated by sector
 number multiply by sector size.
 
 Signed-off-by: Lei Wen lei...@marvell.com
 ---
  drivers/mmc/mmc.c |5 +
  1 files changed, 5 insertions(+), 0 deletions(-)
 
 diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
 index ea398a5..bb97171 100644
 --- a/drivers/mmc/mmc.c
 +++ b/drivers/mmc/mmc.c
 @@ -441,6 +441,11 @@ int mmc_change_freq(struct mmc *mmc)
   if (!ext_csd[185])
   return 0;
  
 + if (!IS_SD(mmc)  mmc-high_capacity) {
 + mmc-capacity = ext_csd[212] | (ext_csd[213]  8)
 + | (ext_csd[214]  16) | (ext_csd[215]  24);
 + mmc-capacity *= mmc-read_bl_len;
 + }
   /* High Speed is set, there are two types: 52MHz and 26MHz */
   if (cardtype  MMC_HS_52MHZ)
   mmc-card_caps |= MMC_MODE_HS_52MHz | MMC_MODE_HS;

Sorry to kick in again...

a) this calculation is already done in line 717, and certainly does not belong
in a function called mmc_change_freq.

b) the current Top-Of-Tree code already calculates the capacity correctly:

32GB SDHC Card:

Device: mci
Manufacturer ID: 3
OEM: 5344
Name: SD32G
Tran Speed: 2500
Rd Block Len: 512
SD version 2.0
High Capacity: Yes
Capacity: 31914983424
Bus Width: 4-bit

c) is that now an incremental patch to the one you sent previously?

Best Regards,
Reinhard

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] mmc: fix capacity calculation with high capacity mmc

2010-09-06 Thread Lei Wen
Hi Reinhard ,

On Mon, Sep 6, 2010 at 10:07 PM, Reinhard Meyer
u-b...@emk-elektronik.de wrote:
 Dear Lei Wen,
 According spec, high capacity mmc should be calculated by sector
 number multiply by sector size.

 Signed-off-by: Lei Wen lei...@marvell.com
 ---
  drivers/mmc/mmc.c |    5 +
  1 files changed, 5 insertions(+), 0 deletions(-)

 diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
 index ea398a5..bb97171 100644
 --- a/drivers/mmc/mmc.c
 +++ b/drivers/mmc/mmc.c
 @@ -441,6 +441,11 @@ int mmc_change_freq(struct mmc *mmc)
       if (!ext_csd[185])
               return 0;

 +     if (!IS_SD(mmc)  mmc-high_capacity) {
 +             mmc-capacity = ext_csd[212] | (ext_csd[213]  8)
 +                     | (ext_csd[214]  16) | (ext_csd[215]  24);
 +             mmc-capacity *= mmc-read_bl_len;
 +     }
       /* High Speed is set, there are two types: 52MHz and 26MHz */
       if (cardtype  MMC_HS_52MHZ)
               mmc-card_caps |= MMC_MODE_HS_52MHz | MMC_MODE_HS;

 Sorry to kick in again...

 a) this calculation is already done in line 717, and certainly does not belong
 in a function called mmc_change_freq.

 b) the current Top-Of-Tree code already calculates the capacity correctly:

 32GB SDHC Card:

 Device: mci
 Manufacturer ID: 3
 OEM: 5344
 Name: SD32G
 Tran Speed: 2500
 Rd Block Len: 512
 SD version 2.0
 High Capacity: Yes
 Capacity: 31914983424
 Bus Width: 4-bit

Yes, for sd card, the calculation method is right.
But for mmc with high capacity, the calculation is wrong. You could
try a mmc card with high capacity, like emmc card.

 c) is that now an incremental patch to the one you sent previously?
It is a separate one. :-)

Best regards,
Lei
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot