From owner-svn-src-all@FreeBSD.ORG Sun Jan 13 15:15:25 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id A04D84C1; Sun, 13 Jan 2013 15:15:25 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 812C4965; Sun, 13 Jan 2013 15:15:25 +0000 (UTC) Received: from svn.freebsd.org (svn.FreeBSD.org [8.8.178.70]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id r0DFFPTn090875; Sun, 13 Jan 2013 15:15:25 GMT (envelope-from rwatson@svn.freebsd.org) Received: (from rwatson@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id r0DFFPwm090873; Sun, 13 Jan 2013 15:15:25 GMT (envelope-from rwatson@svn.freebsd.org) Message-Id: <201301131515.r0DFFPwm090873@svn.freebsd.org> From: Robert Watson Date: Sun, 13 Jan 2013 15:15:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r245369 - in head/sys: conf dev/altera/sdcard X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 Jan 2013 15:15:25 -0000 Author: rwatson Date: Sun Jan 13 15:15:24 2013 New Revision: 245369 URL: http://svnweb.freebsd.org/changeset/base/245369 Log: Merge Perforce changeset 219927 to head: Implement an FDT attachment for the Altera SD Card driver Sponsored by: DARPA, AFRL Modified: head/sys/conf/files head/sys/dev/altera/sdcard/altera_sdcard_fdt.c Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Sun Jan 13 15:13:25 2013 (r245368) +++ head/sys/conf/files Sun Jan 13 15:15:24 2013 (r245369) @@ -641,6 +641,7 @@ dev/altera/avgen/altera_avgen.c optiona dev/altera/sdcard/altera_sdcard.c optional altera_sdcard dev/altera/sdcard/altera_sdcard_disk.c optional altera_sdcard dev/altera/sdcard/altera_sdcard_io.c optional altera_sdcard +dev/altera/sdcard/altera_sdcard_fdt.c optional altera_sdcard fdt dev/altera/sdcard/altera_sdcard_nexus.c optional altera_sdcard dev/amr/amr.c optional amr dev/amr/amr_cam.c optional amrp amr Modified: head/sys/dev/altera/sdcard/altera_sdcard_fdt.c ============================================================================== --- head/sys/dev/altera/sdcard/altera_sdcard_fdt.c Sun Jan 13 15:13:25 2013 (r245368) +++ head/sys/dev/altera/sdcard/altera_sdcard_fdt.c Sun Jan 13 15:15:24 2013 (r245369) @@ -52,21 +52,27 @@ __FBSDID("$FreeBSD$"); #include +#include +#include +#include +#include + /* - * Nexus bus attachment for the Altera SD Card IP core. Appropriate for most - * Altera FPGA SoC-style configurations in which the IP core will be exposed - * to the processor via a memory-mapped Avalon bus. + * FDT bus attachment for the Altera SD Card IP core. */ static int -altera_sdcard_nexus_probe(device_t dev) +altera_sdcard_fdt_probe(device_t dev) { - device_set_desc(dev, "Altera Secure Data Card IP Core"); - return (BUS_PROBE_DEFAULT); + if (ofw_bus_is_compatible(dev, "altera,sdcard_11_2011")) { + device_set_desc(dev, "Altera Secure Data Card IP Core"); + return (BUS_PROBE_DEFAULT); + } + return (ENXIO); } static int -altera_sdcard_nexus_attach(device_t dev) +altera_sdcard_fdt_attach(device_t dev) { struct altera_sdcard_softc *sc; @@ -85,7 +91,7 @@ altera_sdcard_nexus_attach(device_t dev) } static int -altera_sdcard_nexus_detach(device_t dev) +altera_sdcard_fdt_detach(device_t dev) { struct altera_sdcard_softc *sc; @@ -97,20 +103,20 @@ altera_sdcard_nexus_detach(device_t dev) return (0); } -static device_method_t altera_sdcard_nexus_methods[] = { - DEVMETHOD(device_probe, altera_sdcard_nexus_probe), - DEVMETHOD(device_attach, altera_sdcard_nexus_attach), - DEVMETHOD(device_detach, altera_sdcard_nexus_detach), +static device_method_t altera_sdcard_fdt_methods[] = { + DEVMETHOD(device_probe, altera_sdcard_fdt_probe), + DEVMETHOD(device_attach, altera_sdcard_fdt_attach), + DEVMETHOD(device_detach, altera_sdcard_fdt_detach), { 0, 0 } }; -static driver_t altera_sdcard_nexus_driver = { +static driver_t altera_sdcard_fdt_driver = { "altera_sdcardc", - altera_sdcard_nexus_methods, + altera_sdcard_fdt_methods, sizeof(struct altera_sdcard_softc), }; static devclass_t altera_sdcard_devclass; -DRIVER_MODULE(altera_sdcard, nexus, altera_sdcard_nexus_driver, +DRIVER_MODULE(altera_sdcard, simplebus, altera_sdcard_fdt_driver, altera_sdcard_devclass, 0, 0);