On 2016-05-19 10:07, Jonathan Gray wrote: 

> On Sun, Apr 24, 2016 at 08:23:53AM +0000, Karel W. Dingeldey wrote: 
> 
> On 2016-04-22 10:32, Jonathan Gray wrote: 
> 
> On Fri, Apr 22, 2016 at 10:10:10AM +0000, Karel W. Dingeldey wrote: 
> 
> Hi everyone,
> 
> I'm currently using OpenBSD 5.7 and 5.8 on a couple of BBBs -- works
> like a charm.
> 
> Since 5.9 came out a couple of days ago, I wanted to use it on another
> BBB (new install).
> 
> When it comes to stating which hard drive it should install to (eMMC in
> this instance), I can only select sd0, which is the SD card. For some
> reason the eMMC isn't recognised anymore in this version.
> 
> In the change log I saw that some amendments were made to the sdmmc
> driver (supposedly to improve eMMC support on devices like the BBB). In
> my case it has quite the contrary effect.
> 
> Anyone a similar experience? Maybe a hint how to sort it out?
> 
> ThanksKarel 
> Which version of u-boot are you using? It seems newer versions may be
> causing problems.
> 
> Can you include the console output here?

Output from the installation boot (are second and third line the
issue?): 
Try the following fix adapted from FreeBSD. This is also in the
latest armv7 snapshot.

Index: ommmc.c
===================================================================
RCS file: /cvs/src/sys/arch/armv7/omap/ommmc.c,v
retrieving revision 1.20
diff -u -p -r1.20 ommmc.c
--- ommmc.c 7 May 2016 00:18:23 -0000 1.20
+++ ommmc.c 19 May 2016 09:55:22 -0000
@@ -1041,7 +1041,18 @@ ommmc_soft_reset(struct ommmc_softc *sc,
 DPRINTF(1,("%s: software reset reg=%#x\n", DEVNAME(sc), mask));

 HSET4(sc, MMCHS_SYSCTL, mask);
- delay(10);
+ /*
+ * If we read the software reset register too fast after writing it we
+ * can get back a zero that means the reset hasn't started yet rather
+ * than that the reset is complete. Per TI recommendations, work around
+ * it by reading until we see the reset bit asserted, then read until
+ * it's clear.
+ */
+ for (timo = 1000; timo > 0; timo--) {
+ if (ISSET(HREAD4(sc, MMCHS_SYSCTL), mask))
+ break;
+ delay(1);
+ }
 for (timo = 1000; timo > 0; timo--) {
 if (!ISSET(HREAD4(sc, MMCHS_SYSCTL), mask))
 break;

Hi Jonathan,

based on your earlier reply, I exchanged the uboot from the OpenBSD
image with one from Debian. The outcome was a working system -- I'm
thrilled.

Best regards
Karel

 

Reply via email to