Re: [U-Boot] [PATCH] mmc: fix capacity calculation with high capacity mmc
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
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
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
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
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
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
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
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