* mmc: eMMC BKOPS status handling lock for non urgent case
@ 2014-08-29 16:49 Markus Niebel
2014-09-03 1:47 ` Jaehoon Chung
0 siblings, 1 reply; 5+ messages in thread
From: Markus Niebel @ 2014-08-29 16:49 UTC (permalink / raw)
To: jh80.chung; +Cc: linux-mmc
Hello,
experimenting with the current BKOPS code we found, that when triggering from BKOPS_LEVEL 1,
the status stored with mmc_card_set_doing_bkops is never reset preventing BKOPS from working.
Since I'm not an expert in the mmc subsystem I ask for a hint where to look for completion
and implement proper status reset.
Thanks in advance
Markus Niebel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: mmc: eMMC BKOPS status handling lock for non urgent case
2014-08-29 16:49 mmc: eMMC BKOPS status handling lock for non urgent case Markus Niebel
@ 2014-09-03 1:47 ` Jaehoon Chung
2014-09-08 8:15 ` Markus Niebel
0 siblings, 1 reply; 5+ messages in thread
From: Jaehoon Chung @ 2014-09-03 1:47 UTC (permalink / raw)
To: Markus Niebel; +Cc: linux-mmc
Hi, Markus
Sorry for replying too late.
On 08/30/2014 01:49 AM, Markus Niebel wrote:
> Hello,
>
> experimenting with the current BKOPS code we found, that when triggering from BKOPS_LEVEL 1,
> the status stored with mmc_card_set_doing_bkops is never reset preventing BKOPS from working.
In now, bkops is working for upper case than LEVEL_2 (urgent case).
Patch of LEVEL_1's case has sent at mailing, maybe you can found it.
>
> Since I'm not an expert in the mmc subsystem I ask for a hint where to look for completion
> and implement proper status reset.
Could you explain to me more?
Best Regards,
Jaehoon Chung
>
> Thanks in advance
>
> Markus Niebel
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: mmc: eMMC BKOPS status handling lock for non urgent case
2014-09-03 1:47 ` Jaehoon Chung
@ 2014-09-08 8:15 ` Markus Niebel
2014-09-12 2:45 ` Jaehoon Chung
0 siblings, 1 reply; 5+ messages in thread
From: Markus Niebel @ 2014-09-08 8:15 UTC (permalink / raw)
To: Jaehoon Chung; +Cc: linux-mmc
Hello Jaehoon Chung
Am 03.09.2014 03:47, wrote Jaehoon Chung:
> Hi, Markus
>
> Sorry for replying too late.
>
> On 08/30/2014 01:49 AM, Markus Niebel wrote:
>> Hello,
>>
>> experimenting with the current BKOPS code we found, that when triggering from BKOPS_LEVEL 1,
>> the status stored with mmc_card_set_doing_bkops is never reset preventing BKOPS from working.
> In now, bkops is working for upper case than LEVEL_2 (urgent case).
> Patch of LEVEL_1's case has sent at mailing, maybe you can found it.
I will look for it.
>
>>
>> Since I'm not an expert in the mmc subsystem I ask for a hint where to look for completion
>> and implement proper status reset.
>
> Could you explain to me more?
If starting BKOPS with BKOPS_LEVEL 1 a switch (CMD6) without wait for completion (status polling)
is issued an a status variable is set. I did'nt find a place where this status is reset.
>
> Best Regards,
> Jaehoon Chung
>
>>
>> Thanks in advance
>>
>> Markus Niebel
>>
Best Regards,
Markus Niebel
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: mmc: eMMC BKOPS status handling lock for non urgent case
2014-09-08 8:15 ` Markus Niebel
@ 2014-09-12 2:45 ` Jaehoon Chung
2014-09-15 13:13 ` Markus Niebel
0 siblings, 1 reply; 5+ messages in thread
From: Jaehoon Chung @ 2014-09-12 2:45 UTC (permalink / raw)
To: Markus Niebel; +Cc: linux-mmc
Hi,
On 09/08/2014 05:15 PM, Markus Niebel wrote:
> Hello Jaehoon Chung
>
> Am 03.09.2014 03:47, wrote Jaehoon Chung:
>> Hi, Markus
>>
>> Sorry for replying too late.
>>
>> On 08/30/2014 01:49 AM, Markus Niebel wrote:
>>> Hello,
>>>
>>> experimenting with the current BKOPS code we found, that when triggering from BKOPS_LEVEL 1,
>>> the status stored with mmc_card_set_doing_bkops is never reset preventing BKOPS from working.
>> In now, bkops is working for upper case than LEVEL_2 (urgent case).
>> Patch of LEVEL_1's case has sent at mailing, maybe you can found it.
>
> I will look for it.
>
>>
>>>
>>> Since I'm not an expert in the mmc subsystem I ask for a hint where to look for completion
>>> and implement proper status reset.
>>
>> Could you explain to me more?
>
> If starting BKOPS with BKOPS_LEVEL 1 a switch (CMD6) without wait for completion (status polling)
> is issued an a status variable is set. I did'nt find a place where this status is reset.
You means when BKOPS_LEVEL_1 is set, this status didn't reset anywhere, right?
I didn't know why this value needs to reset.
Before starting BKOPS, always read the bkops-status from card's ext_csd register.
Then it should be re-assigned to the new status value.
we didn't refer to bkops-status for starting bkops or not.
Best Regards,
Jaehoon Chung
>
>>
>> Best Regards,
>> Jaehoon Chung
>>
>>>
>>> Thanks in advance
>>>
>>> Markus Niebel
>>>
>
> Best Regards,
> Markus Niebel
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: mmc: eMMC BKOPS status handling lock for non urgent case
2014-09-12 2:45 ` Jaehoon Chung
@ 2014-09-15 13:13 ` Markus Niebel
0 siblings, 0 replies; 5+ messages in thread
From: Markus Niebel @ 2014-09-15 13:13 UTC (permalink / raw)
To: Jaehoon Chung; +Cc: linux-mmc
Hello,
Am 12.09.2014 um 04:45 schrieb Jaehoon Chung:
> Hi,
>
> On 09/08/2014 05:15 PM, Markus Niebel wrote:
>> Hello Jaehoon Chung
>>
>>>> Hello,
>>>>
>>>> experimenting with the current BKOPS code we found, that when triggering from BKOPS_LEVEL 1,
>>>> the status stored with mmc_card_set_doing_bkops is never reset preventing BKOPS from working.
>>> In now, bkops is working for upper case than LEVEL_2 (urgent case).
>>> Patch of LEVEL_1's case has sent at mailing, maybe you can found it.
>>
>> I will look for it.
>>
>>>
>>>>
>>>> Since I'm not an expert in the mmc subsystem I ask for a hint where to look for completion
>>>> and implement proper status reset.
>>>
>>> Could you explain to me more?
>>
>> If starting BKOPS with BKOPS_LEVEL 1 a switch (CMD6) without wait for completion (status polling)
>> is issued an a status variable is set. I did'nt find a place where this status is reset.
>
> You means when BKOPS_LEVEL_1 is set, this status didn't reset anywhere, right?
> I didn't know why this value needs to reset.
> Before starting BKOPS, always read the bkops-status from card's ext_csd register.
> Then it should be re-assigned to the new status value.
>
> we didn't refer to bkops-status for starting bkops or not.
>
in drivers/mmc/core/core.c:
void mmc_start_bkops(struct mmc_card *card, bool from_exception)
a driver internal status is checked with mmc_card_doing_bkops(card)
and in case the state is set nothing will be done
At the end of the function the state is set with mmc_card_set_doing_bkops(card)
for the non urgent case
The state is only reset from mmc_stop_bkops which is only called from _mmc_suspend
> Best Regards,
> Jaehoon Chung
Best Regards,
Markus Niebel
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-09-15 13:06 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-29 16:49 mmc: eMMC BKOPS status handling lock for non urgent case Markus Niebel
2014-09-03 1:47 ` Jaehoon Chung
2014-09-08 8:15 ` Markus Niebel
2014-09-12 2:45 ` Jaehoon Chung
2014-09-15 13:13 ` Markus Niebel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox