Module Name: src
Committed By: matt
Date: Tue Jun 18 15:04:53 UTC 2013
Modified Files:
src/sys/arch/arm/omap: omap3_sdhc.c omap3_sdmmcreg.h
Log Message:
Initial OMAP4 changes.
Attaches but ...
sdhc0 at obio2 addr 0x4809c000-0x4809ceff intr 115: SDHC controller
sdhc0: SD Host Specification 1.0, rev.0
sdmmc0 at sdhc0 slot 0
sdhc0: INIT Procedure timeout
sdmmc0: couldn't supply clock
sdmmc0: couldn't enable card: 60
To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/arm/omap/omap3_sdhc.c
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/arm/omap/omap3_sdmmcreg.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/arm/omap/omap3_sdhc.c
diff -u src/sys/arch/arm/omap/omap3_sdhc.c:1.10 src/sys/arch/arm/omap/omap3_sdhc.c:1.11
--- src/sys/arch/arm/omap/omap3_sdhc.c:1.10 Mon Dec 31 13:20:16 2012
+++ src/sys/arch/arm/omap/omap3_sdhc.c Tue Jun 18 15:04:53 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: omap3_sdhc.c,v 1.10 2012/12/31 13:20:16 jmcneill Exp $ */
+/* $NetBSD: omap3_sdhc.c,v 1.11 2013/06/18 15:04:53 matt Exp $ */
/*-
* Copyright (c) 2011 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: omap3_sdhc.c,v 1.10 2012/12/31 13:20:16 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: omap3_sdhc.c,v 1.11 2013/06/18 15:04:53 matt Exp $");
#include "opt_omap.h"
@@ -101,7 +101,7 @@ CFATTACH_DECL_NEW(obiosdhc, sizeof(struc
static int
obiosdhc_match(device_t parent, cfdata_t cf, void *aux)
{
-#if defined(OMAP_3430) || defined(OMAP_3530)
+#if defined(OMAP_3430) || defined(OMAP_3530) || defined(OMAP4)
struct obio_attach_args * const oa = aux;
#endif
#ifdef TI_AM335X
@@ -119,6 +119,13 @@ obiosdhc_match(device_t parent, cfdata_t
|| oa->obio_addr == SDMMC2_BASE_3530
|| oa->obio_addr == SDMMC3_BASE_3530)
return 1;
+#elif defined(OMAP4)
+ if (oa->obio_addr == SDMMC1_BASE_4430
+ || oa->obio_addr == SDMMC2_BASE_4430
+ || oa->obio_addr == SDMMC3_BASE_4430
+ || oa->obio_addr == SDMMC4_BASE_4430
+ || oa->obio_addr == SDMMC5_BASE_4430)
+ return 1;
#endif
#ifdef TI_AM335X
@@ -159,7 +166,7 @@ obiosdhc_attach(device_t parent, device_
sc->sc.sc_flags |= SDHC_FLAG_WAIT_RESET;
sc->sc.sc_flags &= ~SDHC_FLAG_SINGLE_ONLY;
#endif
-#ifdef OMAP_3530
+#if defined(OMAP_3530)
sc->sc.sc_flags &= ~SDHC_FLAG_SINGLE_ONLY;
#endif
sc->sc.sc_host = sc->sc_hosts;
Index: src/sys/arch/arm/omap/omap3_sdmmcreg.h
diff -u src/sys/arch/arm/omap/omap3_sdmmcreg.h:1.4 src/sys/arch/arm/omap/omap3_sdmmcreg.h:1.5
--- src/sys/arch/arm/omap/omap3_sdmmcreg.h:1.4 Wed Dec 12 15:19:53 2012
+++ src/sys/arch/arm/omap/omap3_sdmmcreg.h Tue Jun 18 15:04:53 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: omap3_sdmmcreg.h,v 1.4 2012/12/12 15:19:53 matt Exp $ */
+/* $NetBSD: omap3_sdmmcreg.h,v 1.5 2013/06/18 15:04:53 matt Exp $ */
/*-
* Copyright (c) 2012 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -39,6 +39,12 @@
#define SDMMC2_BASE_3530 0x480B4000
#define SDMMC3_BASE_3530 0x480AD000
+#define SDMMC1_BASE_4430 0x4809C000 // same for omap5
+#define SDMMC2_BASE_4430 0x480B4000 // same for omap5
+#define SDMMC3_BASE_4430 0x480AD000 // same for omap5
+#define SDMMC4_BASE_4430 0x480D1000 // same for omap5
+#define SDMMC5_BASE_4430 0x480D5000 // same for omap5
+
#define OMAP3_SDMMC_SDHC_OFFSET 0x100
#define OMAP3_SDMMC_SDHC_SIZE 0x100