From owner-p4-projects@FreeBSD.ORG Sat Oct 25 21:27:57 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 508AC1065671; Sat, 25 Oct 2008 21:27:57 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 14D48106566C for ; Sat, 25 Oct 2008 21:27:57 +0000 (UTC) (envelope-from andrew@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 024B38FC1D for ; Sat, 25 Oct 2008 21:27:57 +0000 (UTC) (envelope-from andrew@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id m9PLRuQ1031043 for ; Sat, 25 Oct 2008 21:27:56 GMT (envelope-from andrew@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id m9PLRuDK031041 for perforce@freebsd.org; Sat, 25 Oct 2008 21:27:56 GMT (envelope-from andrew@freebsd.org) Date: Sat, 25 Oct 2008 21:27:56 GMT Message-Id: <200810252127.m9PLRuDK031041@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to andrew@freebsd.org using -f From: Andrew Turner To: Perforce Change Reviews Cc: Subject: PERFORCE change 151919 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2008 21:27:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=151919 Change 151919 by andrew@andrew_bender on 2008/10/25 21:27:29 Add the start of a (read-only) MMC/SD driver. While here fix a typo Affected files ... .. //depot/projects/arm/src/sys/arm/s3c2xx0/files.s3c2xx0#4 edit .. //depot/projects/arm/src/sys/arm/s3c2xx0/neo1973_machdep.c#9 edit .. //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2410.c#17 edit .. //depot/projects/arm/src/sys/arm/s3c2xx0/s3c24x0_mci.c#1 add .. //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2xx0var.h#7 edit Differences ... ==== //depot/projects/arm/src/sys/arm/s3c2xx0/files.s3c2xx0#4 (text+ko) ==== @@ -4,6 +4,7 @@ arm/s3c2xx0/s3c2410.c standard arm/s3c2xx0/s3c2xx0_space.c standard arm/s3c2xx0/s3c24x0_clk.c standard +arm/s3c2xx0/s3c24x0_mci.c standard arm/s3c2xx0/s3c24x0_nand.c optional nand arm/s3c2xx0/uart_bus_s3c2410.c optional uart arm/s3c2xx0/uart_cpu_s3c2410.c optional uart ==== //depot/projects/arm/src/sys/arm/s3c2xx0/neo1973_machdep.c#9 (text+ko) ==== @@ -164,6 +164,16 @@ PTE_NOCACHE, }, { + /* + * Map the MMC/SD to VA == PA + */ + _A(S3C2410_SDI_BASE), + _A(S3C2410_SDI_BASE), + _S(S3C2410_SDI_SIZE), + VM_PROT_READ|VM_PROT_WRITE, + PTE_NOCACHE, + }, + { 0, 0, 0, ==== //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2410.c#17 (text+ko) ==== @@ -307,6 +307,10 @@ if (bus_space_map(iot, S3C2410_CLKMAN_BASE, S3C24X0_CLKMAN_SIZE, 0, &sc->sc_sx.sc_clkman_ioh)) panic("cannot map clock"); + /* MMC/SD */ + if (bus_space_map(iot, S3C2410_SDI_BASE, + S3C2410_SDI_SIZE, 0, &sc->sc_sx.sc_mci_ioh)) + panic("cannot map MMC/SD"); #if 0 /* Real time clock */ @@ -339,7 +343,7 @@ rman_manage_region(&s3c2xx0_softc->s3c2xx0_irq_rman, 0, S3C2410_SUBIRQ_MAX - 1) != 0) panic("s3c2410_attach: failed to set up IRQ rman"); - /* Manage the registor memoty space */ + /* Manage the registor memory space */ if (rman_init(&s3c2xx0_softc->s3c2xx0_mem_rman) != 0 || rman_manage_region(&s3c2xx0_softc->s3c2xx0_mem_rman, S3C2410_REG_BASE, S3C2410_REG_BASE + S3C2410_REG_SIZE) != 0) @@ -348,6 +352,12 @@ s3c2410_add_child(dev, 0, "nand", 0); s3c2410_add_child(dev, 0, "timer", 0); + /* Add the MMC/SD and set it's irq/registers */ + child = s3c2410_add_child(dev, 0, "s3c24x0_mci", 0); + bus_set_resource(child, SYS_RES_IRQ, 0, S3C2410_INT_SDI, 1); + bus_set_resource(child, SYS_RES_IOPORT, 0, S3C2410_SDI_BASE, + S3C2410_SDI_SIZE); + /* Add the uart and set it's irq and registers */ child = s3c2410_add_child(dev, 0, "uart", 0); bus_set_resource(child, SYS_RES_IRQ, 0, S3C2410_INT_UART0, 1); ==== //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2xx0var.h#7 (text+ko) ==== @@ -48,6 +48,7 @@ bus_space_handle_t sc_clkman_ioh; /* Clock manager */ bus_space_handle_t sc_gpio_ioh; /* GPIO */ bus_space_handle_t sc_rtc_ioh; /* real time clock */ + bus_space_handle_t sc_mci_ioh; /* MMC/SD */ bus_dma_tag_t sc_dmat;