My mail client seems to have screwed up the tabs/whitespace, you can
find a working patch here:

http://ce.gl/ommmc.patch.txt

Ian

On Wed, Jul 1, 2015 at 8:50 PM, ian kremlin <[email protected]> wrote:
> Hi
>
> Compiling an armv7 kernel with option SDHC_DEBUG fails as there is no 
> definition
> of the ommmc_dump_regs function, so add it.
>
> Tested on real hardware (Beaglebone Black):
>
> ommmc0 at omap0
> ommmc0: SYSCONFIG: 0x00002015 SYSSTATUS: 0x00000001      CSRE: 0x00000000
> ommmc0:   SYSTEST: 0x00000000       CON: 0x00000600     PWCNT: 0x00000000
> ommmc0:       BLK: 0x00000000       ARG: 0x00000000       CMD: 0x00000000
> ommmc0:     RSP10: 0x00000000     RSP32: 0x00000000     RSP54: 0x00000000
> ommmc0:     RSP76: 0x00000000      DATA: 0x00000000    PSTATE: 0x01f70000
> ommmc0:      HCTL: 0x00000000    SYSCTL: 0x00000000      STAT: 0x00000040
> ommmc0:        IE: 0x00000000       ISE: 0x00000000      AC12: 0x00000000
> ommmc0:      CAPA: 0x06e10080  CUR_CAPA: 0x00000000       REV: 0x31010000
> ommmc0: software reset reg=0x1000000
> sdmmc0 at ommmc0
>
> This will help figure out why the onboard eMMC flash memory isn't being
> configured properly on later BBB revisions where they bumped it from 2GB -> 
> 4GB.
>
> Ian
>
> Index: ommmc.c
> ===================================================================
> RCS file: /cvs/src/sys/arch/armv7/omap/ommmc.c,v
> retrieving revision 1.14
> diff -u -p -r1.14 ommmc.c
> --- ommmc.c 30 May 2015 02:17:36 -0000 1.14
> +++ ommmc.c 2 Jul 2015 01:48:32 -0000
> @@ -244,7 +244,41 @@ void ommmc_write_data(struct ommmc_softc
>  #ifdef SDHC_DEBUG
>  int ommmcdebug = 20;
>  #define DPRINTF(n,s) do { if ((n) <= ommmcdebug) printf s; } while (0)
> -void ommmc_dump_regs(struct ommmc_softc *);
> +void
> +ommmc_dump_regs(struct ommmc_softc *sc)
> +{
> + DPRINTF(3,("%s: SYSCONFIG: 0x%08x SYSSTATUS: 0x%08x      CSRE: 0x%08x\n",
> +    DEVNAME(sc),     HREAD4(sc, MMCHS_SYSCONFIG), HREAD4(sc, 
> MMCHS_SYSSTATUS),
> +    HREAD4(sc, MMCHS_CSRE)));
> +
> + DPRINTF(3,("%s:   SYSTEST: 0x%08x       CON: 0x%08x     PWCNT: 0x%08x\n",
> +    DEVNAME(sc),     HREAD4(sc, MMCHS_SYSTEST), HREAD4(sc, MMCHS_CON),
> +    HREAD4(sc, MMCHS_PWCNT)));
> +
> + DPRINTF(3,("%s:       BLK: 0x%08x       ARG: 0x%08x       CMD: 0x%08x\n",
> +    DEVNAME(sc),     HREAD4(sc, MMCHS_BLK), HREAD4(sc, MMCHS_ARG),
> +    HREAD4(sc, MMCHS_CMD)));
> +
> + DPRINTF(3,("%s:     RSP10: 0x%08x     RSP32: 0x%08x     RSP54: 0x%08x\n",
> +    DEVNAME(sc),     HREAD4(sc, MMCHS_RSP10), HREAD4(sc, MMCHS_RSP32),
> +    HREAD4(sc, MMCHS_RSP54)));
> +
> + DPRINTF(3,("%s:     RSP76: 0x%08x      DATA: 0x%08x    PSTATE: 0x%08x\n",
> +    DEVNAME(sc),     HREAD4(sc, MMCHS_RSP76), HREAD4(sc, MMCHS_DATA),
> +    HREAD4(sc, MMCHS_PSTATE)));
> +
> + DPRINTF(3,("%s:      HCTL: 0x%08x    SYSCTL: 0x%08x      STAT: 0x%08x\n",
> +    DEVNAME(sc),     HREAD4(sc, MMCHS_HCTL), HREAD4(sc, MMCHS_SYSCTL),
> +    HREAD4(sc, MMCHS_STAT)));
> +
> + DPRINTF(3,("%s:        IE: 0x%08x       ISE: 0x%08x      AC12: 0x%08x\n",
> +    DEVNAME(sc),     HREAD4(sc, MMCHS_IE), HREAD4(sc, MMCHS_ISE),
> +    HREAD4(sc, MMCHS_AC12)));
> +
> + DPRINTF(3,("%s:      CAPA: 0x%08x  CUR_CAPA: 0x%08x       REV: 0x%08x\n",
> +    DEVNAME(sc),     HREAD4(sc, MMCHS_CAPA), HREAD4(sc, MMCHS_CUR_CAPA),
> +    HREAD4(sc, MMCHS_REV)));
> +}
>  #else
>  #define DPRINTF(n,s) do {} while(0)
>  #endif

Reply via email to