Port-arm archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

BeagleBone Black SD card and trivia

It turns out the problem with a NetBSD kernel not finding the BeagleBone Black
SD card controller wasn't very high tech: there's a typo in the #define for
the register address.  This seems to fix it:

Index: sys/arch/arm/omap/omap3_sdmmcreg.h
RCS file: /cvsroot/src/sys/arch/arm/omap/omap3_sdmmcreg.h,v
retrieving revision 1.6
diff -u -r1.6 omap3_sdmmcreg.h
--- sys/arch/arm/omap/omap3_sdmmcreg.h  28 Jun 2013 00:50:23 -0000      1.6
+++ sys/arch/arm/omap/omap3_sdmmcreg.h  26 Jul 2013 15:55:06 -0000
@@ -45,7 +45,7 @@
 #define SDMMC4_BASE_4430       0x480D1000      // same for omap5
 #define SDMMC5_BASE_4430       0x480D5000      // same for omap5
-#define        SDMMC1_BASE_TIAM335X    0x48006100
+#define        SDMMC1_BASE_TIAM335X    0x48060100
 #define        SDMMC2_BASE_TIAM335X    0x481d8100
 #define        SDMMC3_BASE_TIAM335X    0x47810100

Also, from the trivia department, I deduced from the way linux is booted that
if you want to load a u-boot kernel directly into the memory it will run from
you have to tell u-boot to load it 64 bytes earlier than the kernel's load 
(I assume because there's a 64 byte header prepended for u-boot). The following
will load and boot the netbsd.ub kernel, which has a load address of 0x80300000:

    tftpboot 0x802fffc0
    bootm 0x802fffc0

Replacing 'bootm 0x802fffc0' with 'go 0x80300000' also starts it.

Dennis Ferguson

Home | Main Index | Thread Index | Old Index