Explorar o código

Re-add clearing of the APP_CMD flag that somehow got lost.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3094 c046a42c-6fe2-441c-8c8c-71466251a162
balrog %!s(int64=18) %!d(string=hai) anos
pai
achega
724d3a8f29
Modificáronse 2 ficheiros con 5 adicións e 4 borrados
  1. 3 2
      hw/sd.c
  2. 2 2
      hw/sd.h

+ 3 - 2
hw/sd.c

@@ -1151,9 +1151,10 @@ int sd_do_command(SDState *sd, struct sd_request_s *req,
             return 0;
         }
 
-    if (last_status & APP_CMD)
+    if (last_status & APP_CMD) {
         rtype = sd_app_command(sd, *req);
-    else
+        sd->card_status &= ~APP_CMD;
+    } else
         rtype = sd_normal_command(sd, *req);
 
     sd->current_cmd = req->cmd;

+ 2 - 2
hw/sd.h

@@ -56,8 +56,8 @@
 typedef enum {
     sd_none = -1,
     sd_bc = 0,	/* broadcast -- no response */
-    sd_bcr,		/* broadcast with response */
-    sd_ac,		/* addressed -- no data transfer */
+    sd_bcr,	/* broadcast with response */
+    sd_ac,	/* addressed -- no data transfer */
     sd_adtc,	/* addressed with data transfer */
 } sd_cmd_type_t;