Module Name:    src
Committed By:   rkujawa
Date:           Mon Jun  3 14:50:59 UTC 2013

Modified Files:
        src/sys/arch/arm/marvell: mvsoc.c
        src/sys/arch/evbarm/armadaxp: armadaxpreg.h
        src/sys/arch/evbarm/conf: ARMADAXP

Log Message:
Add support for SDIO on Armada XP.


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/sys/arch/arm/marvell/mvsoc.c
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/evbarm/armadaxp/armadaxpreg.h
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/evbarm/conf/ARMADAXP

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/marvell/mvsoc.c
diff -u src/sys/arch/arm/marvell/mvsoc.c:1.11 src/sys/arch/arm/marvell/mvsoc.c:1.12
--- src/sys/arch/arm/marvell/mvsoc.c:1.11	Wed May 29 20:47:14 2013
+++ src/sys/arch/arm/marvell/mvsoc.c	Mon Jun  3 14:50:59 2013
@@ -1,4 +1,4 @@
-/*	$NetBSD: mvsoc.c,v 1.11 2013/05/29 20:47:14 rkujawa Exp $	*/
+/*	$NetBSD: mvsoc.c,v 1.12 2013/06/03 14:50:59 rkujawa Exp $	*/
 /*
  * Copyright (c) 2007, 2008 KIYOHARA Takashi
  * All rights reserved.
@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mvsoc.c,v 1.11 2013/05/29 20:47:14 rkujawa Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mvsoc.c,v 1.12 2013/06/03 14:50:59 rkujawa Exp $");
 
 #include "opt_cputypes.h"
 #include "opt_mvsoc.h"
@@ -506,6 +506,7 @@ static const struct mvsoc_periph {
     { ARMADAXP(MV78130), "mvpex", 1, ARMADAXP_PEX01_BASE, ARMADAXP_IRQ_PEX01},
     { ARMADAXP(MV78130), "mvpex", 2, ARMADAXP_PEX02_BASE, ARMADAXP_IRQ_PEX02},
     { ARMADAXP(MV78130), "mvpex", 3, ARMADAXP_PEX03_BASE, ARMADAXP_IRQ_PEX03},
+    { ARMADAXP(MV78130), "mvsdio", 0, ARMADAXP_SDIO_BASE, ARMADAXP_IRQ_SDIO},
 
     { ARMADAXP(MV78160), "mvsoctmr",0,MVSOC_TMR_BASE,	ARMADAXP_IRQ_TIMER0 },
     { ARMADAXP(MV78160), "com",	0, MVSOC_COM0_BASE,	ARMADAXP_IRQ_UART0INT },
@@ -520,6 +521,7 @@ static const struct mvsoc_periph {
     { ARMADAXP(MV78160), "mvpex", 2, ARMADAXP_PEX02_BASE, ARMADAXP_IRQ_PEX02},
     { ARMADAXP(MV78160), "mvpex", 3, ARMADAXP_PEX03_BASE, ARMADAXP_IRQ_PEX03},
     { ARMADAXP(MV78160), "mvpex", 4, ARMADAXP_PEX2_BASE, ARMADAXP_IRQ_PEX2},
+    { ARMADAXP(MV78160), "mvsdio", 0, ARMADAXP_SDIO_BASE, ARMADAXP_IRQ_SDIO},
 
     { ARMADAXP(MV78230), "mvsoctmr",0,MVSOC_TMR_BASE,	ARMADAXP_IRQ_TIMER0 },
     { ARMADAXP(MV78230), "com",	0, MVSOC_COM0_BASE,	ARMADAXP_IRQ_UART0INT },
@@ -534,6 +536,7 @@ static const struct mvsoc_periph {
     { ARMADAXP(MV78230), "mvpex", 2, ARMADAXP_PEX02_BASE, ARMADAXP_IRQ_PEX02},
     { ARMADAXP(MV78230), "mvpex", 3, ARMADAXP_PEX03_BASE, ARMADAXP_IRQ_PEX03},
     { ARMADAXP(MV78230), "mvpex", 4, ARMADAXP_PEX2_BASE, ARMADAXP_IRQ_PEX2},
+    { ARMADAXP(MV78230), "mvsdio", 0, ARMADAXP_SDIO_BASE, ARMADAXP_IRQ_SDIO},
 
     { ARMADAXP(MV78260), "mvsoctmr",0,MVSOC_TMR_BASE,	ARMADAXP_IRQ_TIMER0 },
     { ARMADAXP(MV78260), "com",	0, MVSOC_COM0_BASE,	ARMADAXP_IRQ_UART0INT },
@@ -548,6 +551,7 @@ static const struct mvsoc_periph {
     { ARMADAXP(MV78260), "mvpex", 2, ARMADAXP_PEX02_BASE, ARMADAXP_IRQ_PEX02},
     { ARMADAXP(MV78260), "mvpex", 3, ARMADAXP_PEX03_BASE, ARMADAXP_IRQ_PEX03},
     { ARMADAXP(MV78260), "mvpex", 4, ARMADAXP_PEX2_BASE, ARMADAXP_IRQ_PEX2},
+    { ARMADAXP(MV78260), "mvsdio", 0, ARMADAXP_SDIO_BASE, ARMADAXP_IRQ_SDIO},
 
     { ARMADAXP(MV78460), "mvsoctmr",0,MVSOC_TMR_BASE,	ARMADAXP_IRQ_TIMER0 },
     { ARMADAXP(MV78460), "com",	0, MVSOC_COM0_BASE,	ARMADAXP_IRQ_UART0INT },
@@ -568,6 +572,7 @@ static const struct mvsoc_periph {
     { ARMADAXP(MV78460), "gttwsi", 1, ARMADAXP_TWSI1_BASE, ARMADAXP_IRQ_TWSI1},
     { ARMADAXP(MV78460), "mvspi", 0, ARMADAXP_SPI0_BASE, ARMADAXP_IRQ_SPI0},
     { ARMADAXP(MV78460), "mvspi", 1, ARMADAXP_SPI1_BASE, ARMADAXP_IRQ_SPI0},
+    { ARMADAXP(MV78460), "mvsdio", 0, ARMADAXP_SDIO_BASE, ARMADAXP_IRQ_SDIO},
 #endif
 };
 

Index: src/sys/arch/evbarm/armadaxp/armadaxpreg.h
diff -u src/sys/arch/evbarm/armadaxp/armadaxpreg.h:1.1 src/sys/arch/evbarm/armadaxp/armadaxpreg.h:1.2
--- src/sys/arch/evbarm/armadaxp/armadaxpreg.h:1.1	Wed May  1 12:34:45 2013
+++ src/sys/arch/evbarm/armadaxp/armadaxpreg.h	Mon Jun  3 14:50:59 2013
@@ -120,6 +120,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBI
 #define ARMADAXP_IRQ_GBE2_TH_RXTX_Int	12	/* GBE2_TH_RXTX_Int */
 #define ARMADAXP_IRQ_GBE3_TH_RXTX_Int	14	/* GBE3_TH_RXTX_Int */
 
+#define ARMADAXP_IRQ_SDIO		54	/* SDIO */
+
 /*
  * Physical address of integrated peripherals
  */
@@ -175,6 +177,11 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBI
 #define ARMADAXP_SATAHC_BASE	(UNITID2PHYS(SATA))	/* 0xa0000 */
 
 /*
+ * SDIO Registers
+ */
+#define ARMADAXP_SDIO_BASE	0xD4000			/* XXX: UNIT ID ? */
+
+/*
  * SoC MISC Registers
  */
 #define	ARMADAXP_MISC_SAR_LO		0x30	/* Sample At Reset Low */

Index: src/sys/arch/evbarm/conf/ARMADAXP
diff -u src/sys/arch/evbarm/conf/ARMADAXP:1.1 src/sys/arch/evbarm/conf/ARMADAXP:1.2
--- src/sys/arch/evbarm/conf/ARMADAXP:1.1	Wed May 29 22:52:19 2013
+++ src/sys/arch/evbarm/conf/ARMADAXP	Mon Jun  3 14:50:59 2013
@@ -1,5 +1,5 @@
 #
-#	$NetBSD: ARMADAXP,v 1.1 2013/05/29 22:52:19 rkujawa Exp $
+#	$NetBSD: ARMADAXP,v 1.2 2013/06/03 14:50:59 rkujawa Exp $
 #
 #	ARMADA XP DEV BOARD
 #
@@ -224,6 +224,11 @@ ugen*		at uhub? port ?
 # USB Network interface
 udav*		at uhub? port ?
 
+mvsdio*		at mvsoc? offset ? irq ?
+sdmmc*		at mvsdio?
+
+ld*		at sdmmc?
+
 # On-chip Serial-ATA II Host Controller (SATAHC)
 mvsata*		at mvsoc? offset ? irq ?
 #options 	MVSATA_WITHOUTDMA

Reply via email to