Hi Igor, On Wed, May 22, 2013 at 11:37 PM, Igor Mitsyanko <[email protected]> wrote: > > On 05/21/2013 10:50 AM, [email protected] wrote: > > From: Peter Crosthwaite <[email protected]> > > the SD command ACMD41 can be used in a read only mode to query device > state without doing the SD card initialisation. This is valid even > which the device is already initialised. Fix the command to be > responsive when in the ready state accordingly. > > Signed-off-by: Peter Crosthwaite <[email protected]> > --- > > hw/sd/sd.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/sd/sd.c b/hw/sd/sd.c > index 2e0ef3e..89bfb7a 100644 > --- a/hw/sd/sd.c > +++ b/hw/sd/sd.c > @@ -1277,6 +1277,7 @@ static sd_rsp_type_t sd_app_command(SDState *sd, > } > switch (sd->state) { > case sd_idle_state: > + case sd_ready_state: > /* We accept any voltage. 10000 V is nothing. */ > if (req.arg) > sd->state = sd_ready_state; > > > I couldn't find any info in SD specification that would confirm this change > correctness, what about > table "Table 4-29: Card State Transition Table" which states that ACMD41 is > illegal in "ready" state? >
By the letter of the spec I think you are right. Although this patch is needed to make my QEMU consistent with my real hardware. I'll dig deeper. Regards, Peter > -- > Best wishes, > Igor Mitsyanko > email: [email protected]
