<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Oct 26, 2017 at 11:26 AM, Kevin O'Connor <span dir="ltr"><<a href="mailto:kevin@koconnor.net" target="_blank">kevin@koconnor.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail-HOEnZb"><div class="gmail-h5">On Thu, Oct 26, 2017 at 11:14:53AM -0400, Matt DeVillier wrote:<br>
> On Thu, Oct 26, 2017 at 10:59 AM, Kevin O'Connor <<a href="mailto:kevin@koconnor.net">kevin@koconnor.net</a>> wrote:<br>
><br>
> with the patch, USB devices are not available from the boot menu either (it<br>
> appears to hang?), and therefore device cannot be booted to get said log<br>
<br>
</div></div>That sounds like a bad compile then - nothing in the patch should have<br>
impacted usb.<br>
<br>
In any case, the patch below tests the same thing and it should work<br>
on eMMC also.<br>
<span class="gmail-"><br>
-Kevin<br>
<br>
<br>
--- a/src/hw/sdcard.c<br>
+++ b/src/hw/sdcard.c<br>
</span>@@ -404,19 +404,8 @@ sdcard_card_setup(struct sddrive_s *drive, int volt, int prio)<br>
     ret = sdcard_pio(regs, SC_SEND_IF_COND, param);<br>
<span class="gmail-">     if (!ret && param[0] == vrange)<br>
         hcs = (1<<30);<br>
</span>-    // Verify SD card (instead of MMC or SDIO)<br>
-    param[0] = 0x00;<br>
-    ret = sdcard_pio_app(regs, SC_APP_SEND_OP_COND, param);<br>
-    if (ret) {<br>
-        // Check for MMC card<br>
-        param[0] = 0x00;<br>
-        ret = sdcard_pio(regs, SC_SEND_OP_COND, param);<br>
-        if (ret)<br>
-            return ret;<br>
-        drive->card_type |= SF_MMC;<br>
-        hcs = (1<<30);<br>
-    }<br>
     // Init card<br>
+    int firstloop = 1;<br>
<span class="gmail-">     u32 end = timer_calc(SDHCI_POWERUP_<wbr>TIMEOUT);<br>
     for (;;) {<br>
</span>         param[0] = hcs | volt; // high-capacity support and voltage level<br>
@@ -424,8 +413,18 @@ sdcard_card_setup(struct sddrive_s *drive, int volt, int prio)<br>
             ret = sdcard_pio(regs, SC_SEND_OP_COND, param);<br>
         else<br>
<span class="gmail-">             ret = sdcard_pio_app(regs, SC_APP_SEND_OP_COND, param);<br>
</span>-        if (ret)<br>
+        if (ret) {<br>
+            if (firstloop) {<br>
+                // Check for MMC card<br>
+                firstloop = 0;<br>
+                drive->card_type |= SF_MMC;<br>
+                hcs = (1<<30);<br>
+                end = timer_calc(SDHCI_POWERUP_<wbr>TIMEOUT);<br>
+                continue;<br>
+            }<br>
             return ret;<br>
+        }<br>
+        firstloop = 0;<br>
         if (param[0] & SR_OCR_NOTBUSY)<br>
             break;<br>
         if (timer_check(end)) {<br>
</blockquote></div><br></div><div class="gmail_extra">still timing out on detection: <a href="https://paste.ubuntu.com/25826387/">https://paste.ubuntu.com/25826387/</a></div></div>