* [U-Boot] [PATCH] mmc: fix ERASE_GRP_DEF handling
@ 2014-08-08 7:47 Hannes Petermaier
2014-08-12 4:24 ` Jaehoon Chung
0 siblings, 1 reply; 4+ messages in thread
From: Hannes Petermaier @ 2014-08-08 7:47 UTC (permalink / raw)
To: u-boot
if we set manually this bit on the eMMC card using mmc_switch(...),
we also have to set it within our (before read) internal structure
'ext_csd'.
Otherwise following checks on this will fail.
Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
---
drivers/mmc/mmc.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
index a26f3ce..52a8e36 100644
--- a/drivers/mmc/mmc.c
+++ b/drivers/mmc/mmc.c
@@ -1010,6 +1010,8 @@ static int mmc_startup(struct mmc *mmc)
if (err)
return err;
+ else
+ ext_csd[EXT_CSD_ERASE_GROUP_DEF] = 1;
/* Read out group size from ext_csd */
mmc->erase_grp_size =
--
1.7.10.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH] mmc: fix ERASE_GRP_DEF handling
2014-08-08 7:47 [U-Boot] [PATCH] mmc: fix ERASE_GRP_DEF handling Hannes Petermaier
@ 2014-08-12 4:24 ` Jaehoon Chung
2014-08-12 5:47 ` Hannes Petermaier
0 siblings, 1 reply; 4+ messages in thread
From: Jaehoon Chung @ 2014-08-12 4:24 UTC (permalink / raw)
To: u-boot
Hi, Hannes.
On 08/08/2014 04:47 PM, Hannes Petermaier wrote:
> if we set manually this bit on the eMMC card using mmc_switch(...),
> we also have to set it within our (before read) internal structure
> 'ext_csd'.
>
> Otherwise following checks on this will fail.
>
> Signed-off-by: Hannes Petermaier <oe5hpm@oevsv.at>
> ---
> drivers/mmc/mmc.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
> index a26f3ce..52a8e36 100644
> --- a/drivers/mmc/mmc.c
> +++ b/drivers/mmc/mmc.c
> @@ -1010,6 +1010,8 @@ static int mmc_startup(struct mmc *mmc)
>
> if (err)
> return err;
> + else
> + ext_csd[EXT_CSD_ERASE_GROUP_DEF] = 1;
When is this value read?
If i'm right, you means that it has to set before comparing with test_csd, right?
It's reasonable, but i'm not sure that hard-coding is right.
Best Regards,
Jaehoon Chung
>
> /* Read out group size from ext_csd */
> mmc->erase_grp_size =
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH] mmc: fix ERASE_GRP_DEF handling
2014-08-12 4:24 ` Jaehoon Chung
@ 2014-08-12 5:47 ` Hannes Petermaier
2014-10-02 10:49 ` Pantelis Antoniou
0 siblings, 1 reply; 4+ messages in thread
From: Hannes Petermaier @ 2014-08-12 5:47 UTC (permalink / raw)
To: u-boot
> Hi, Hannes.
Hi Jaehoon,
> > diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
> > index a26f3ce..52a8e36 100644
> > --- a/drivers/mmc/mmc.c
> > +++ b/drivers/mmc/mmc.c
> > @@ -1010,6 +1010,8 @@ static int mmc_startup(struct mmc *mmc)
> >
> > if (err)
> > return err;
> > + else
> > + ext_csd[EXT_CSD_ERASE_GROUP_DEF] = 1;
> When is this value read?
a few lines above, have a look at line 967:
/* check ext_csd version and capacity */
err = mmc_send_ext_csd(mmc, ext_csd);
> If i'm right, you means that it has to set before comparing with
test_csd, right?
yes, exactly thats what i mean.
> It's reasonable, but i'm not sure that hard-coding is right.
why not ? we set the bit using mmc_switch, and only after success we alter
our internal structure.
>
> Best Regards,
> Jaehoon Chung
best regards,
Hannes
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH] mmc: fix ERASE_GRP_DEF handling
2014-08-12 5:47 ` Hannes Petermaier
@ 2014-10-02 10:49 ` Pantelis Antoniou
0 siblings, 0 replies; 4+ messages in thread
From: Pantelis Antoniou @ 2014-10-02 10:49 UTC (permalink / raw)
To: u-boot
Hi Hannes,
On Aug 12, 2014, at 8:47 AM, Hannes Petermaier <Hannes.Petermaier@br-automation.com> wrote:
>> Hi, Hannes.
> Hi Jaehoon,
>
>>> diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
>>> index a26f3ce..52a8e36 100644
>>> --- a/drivers/mmc/mmc.c
>>> +++ b/drivers/mmc/mmc.c
>>> @@ -1010,6 +1010,8 @@ static int mmc_startup(struct mmc *mmc)
>>>
>>> if (err)
>>> return err;
>>> + else
>>> + ext_csd[EXT_CSD_ERASE_GROUP_DEF] = 1;
>> When is this value read?
>
> a few lines above, have a look at line 967:
> /* check ext_csd version and capacity */
> err = mmc_send_ext_csd(mmc, ext_csd);
>
>> If i'm right, you means that it has to set before comparing with
> test_csd, right?
> yes, exactly thats what i mean.
>
>> It's reasonable, but i'm not sure that hard-coding is right.
> why not ? we set the bit using mmc_switch, and only after success we alter
> our internal structure.
>
It is reasonable in this context, but I?m wary of cases where a read would be
required in case the write didn?t ?take?.
I?ll apply this for now.
>>
>> Best Regards,
>> Jaehoon Chung
>
> best regards,
> Hannes
>
>
>
Regards
? Pantelis
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-10-02 10:49 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-08-08 7:47 [U-Boot] [PATCH] mmc: fix ERASE_GRP_DEF handling Hannes Petermaier
2014-08-12 4:24 ` Jaehoon Chung
2014-08-12 5:47 ` Hannes Petermaier
2014-10-02 10:49 ` Pantelis Antoniou
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.