From owner-p4-projects@FreeBSD.ORG Sun Dec 30 14:30:26 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D9710911; Sun, 30 Dec 2012 14:30:25 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7F5FC90F for ; Sun, 30 Dec 2012 14:30:25 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 6360F8FC0A for ; Sun, 30 Dec 2012 14:30:25 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUEUPFj092565 for ; Sun, 30 Dec 2012 14:30:25 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUEUPAq092562 for perforce@freebsd.org; Sun, 30 Dec 2012 14:30:25 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 14:30:25 GMT Message-Id: <201212301430.qBUEUPAq092562@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219915 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 14:30:26 -0000 http://p4web.freebsd.org/@@219915?ac=10 Change 219915 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 14:29:24 Handle the case where an FDT-based newbus node hasn't yet been fully initialised when an error occurs (e.g., if the "interrupts" property can't be handled). Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/dev/fdt/fdtbus.c#3 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/dev/fdt/fdtbus.c#3 (text+ko) ==== @@ -257,6 +257,8 @@ struct fdtbus_devinfo *di; di = device_get_ivars(dev); + if (di == NULL) + return; free(di->di_name, M_OFWPROP); free(di->di_type, M_OFWPROP); From owner-p4-projects@FreeBSD.ORG Sun Dec 30 14:54:51 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 61BA6DF; Sun, 30 Dec 2012 14:54:51 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1DB62DD for ; Sun, 30 Dec 2012 14:54:51 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 019FC8FC08 for ; Sun, 30 Dec 2012 14:54:51 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUEsonf093303 for ; Sun, 30 Dec 2012 14:54:50 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUEsocu093300 for perforce@freebsd.org; Sun, 30 Dec 2012 14:54:50 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 14:54:50 GMT Message-Id: <201212301454.qBUEsocu093300@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219916 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 14:54:51 -0000 http://p4web.freebsd.org/@@219916?ac=10 Change 219916 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 14:54:37 Add OpenFirmware/FDT initialisation code to the BERI machine-dependent boot path. This may be sufficient to shoot my feet off with FDT; we will see. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/mips/beri/beri_machdep.c#5 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/mips/beri/beri_machdep.c#5 (text+ko) ==== @@ -1,7 +1,12 @@ /*- * Copyright (c) 2006 Wojciech A. Koszek + * Copyright (c) 2012 Robert N. M. Watson * All rights reserved. * + * This software was developed by SRI International and the University of + * Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237) + * ("CTSRD"), as part of the DARPA CRASH research programme. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -27,6 +32,7 @@ __FBSDID("$FreeBSD$"); #include "opt_ddb.h" +#include "opt_platform.h" #include #include @@ -49,6 +55,9 @@ #include #include +#include +#include + #include #include #include @@ -76,6 +85,17 @@ { int i; +#ifdef FDT +#ifndef FDT_DTB_STATIC +#error "mips_init with FDT requires FDT_DTB_STATIC" +#endif + + if (OF_install(OFW_FDT, 0) == FALSE) + while (1); + if (OF_init(&fdt_static_dtb) != 0) + while (1); +#endif + for (i = 0; i < 10; i++) { phys_avail[i] = 0; } From owner-p4-projects@FreeBSD.ORG Sun Dec 30 16:35:36 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 283F98F8; Sun, 30 Dec 2012 16:35:36 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id D8F168F6 for ; Sun, 30 Dec 2012 16:35:35 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id A44138FC16 for ; Sun, 30 Dec 2012 16:35:35 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUGZZMX097719 for ; Sun, 30 Dec 2012 16:35:35 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUGZZeR097716 for perforce@freebsd.org; Sun, 30 Dec 2012 16:35:35 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 16:35:35 GMT Message-Id: <201212301635.qBUGZZeR097716@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219917 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 16:35:36 -0000 http://p4web.freebsd.org/@@219917?ac=10 Change 219917 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 16:35:34 Copy Altera JTAG UART nexus bus attachment as a starting point for an FDT bus attachment. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/dev/altera/jtag_uart/altera_jtag_uart_fdt.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sun Dec 30 17:38:42 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D545AB97; Sun, 30 Dec 2012 17:38:41 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 8C9D2B95 for ; Sun, 30 Dec 2012 17:38:41 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 6A1658FC08 for ; Sun, 30 Dec 2012 17:38:41 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUHcf6K000248 for ; Sun, 30 Dec 2012 17:38:41 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUHcfjg000245 for perforce@freebsd.org; Sun, 30 Dec 2012 17:38:41 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 17:38:41 GMT Message-Id: <201212301738.qBUHcfjg000245@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219918 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 17:38:42 -0000 http://p4web.freebsd.org/@@219918?ac=10 Change 219918 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 17:38:37 Naive first cut at an FDT bus attachment for the Altera JTAG UART. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/dev/altera/jtag_uart/altera_jtag_uart_fdt.c#2 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/beri/files.beri#24 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/dev/altera/jtag_uart/altera_jtag_uart_fdt.c#2 (text+ko) ==== @@ -52,21 +52,27 @@ #include +#include +#include +#include +#include + /* - * Nexus bus attachment for Altera JTAG UARTs. 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 Altera JTAG UARTs. */ static int -altera_jtag_uart_nexus_probe(device_t dev) +altera_jtag_uart_fdt_probe(device_t dev) { - device_set_desc(dev, "Altera JTAG UART"); - return (BUS_PROBE_DEFAULT); + if (ofw_bus_is_compatible(dev, "altera,jtag_uart-11_0")) { + device_set_desc(dev, "Altera JTAG UART"); + return (BUS_PROBE_DEFAULT); + } + return (ENXIO); } static int -altera_jtag_uart_nexus_attach(device_t dev) +altera_jtag_uart_fdt_attach(device_t dev) { struct altera_jtag_uart_softc *sc; int error; @@ -108,7 +114,7 @@ } static int -altera_jtag_uart_nexus_detach(device_t dev) +altera_jtag_uart_fdt_detach(device_t dev) { struct altera_jtag_uart_softc *sc; @@ -124,20 +130,20 @@ return (0); } -static device_method_t altera_jtag_uart_nexus_methods[] = { - DEVMETHOD(device_probe, altera_jtag_uart_nexus_probe), - DEVMETHOD(device_attach, altera_jtag_uart_nexus_attach), - DEVMETHOD(device_detach, altera_jtag_uart_nexus_detach), +static device_method_t altera_jtag_uart_fdt_methods[] = { + DEVMETHOD(device_probe, altera_jtag_uart_fdt_probe), + DEVMETHOD(device_attach, altera_jtag_uart_fdt_attach), + DEVMETHOD(device_detach, altera_jtag_uart_fdt_detach), { 0, 0 } }; -static driver_t altera_jtag_uart_nexus_driver = { +static driver_t altera_jtag_uart_fdt_driver = { "altera_jtag_uart", - altera_jtag_uart_nexus_methods, + altera_jtag_uart_fdt_methods, sizeof(struct altera_jtag_uart_softc), }; static devclass_t altera_jtag_uart_devclass; -DRIVER_MODULE(altera_jtag_uart, nexus, altera_jtag_uart_nexus_driver, +DRIVER_MODULE(altera_jtag_uart, simplebus, altera_jtag_uart_fdt_driver, altera_jtag_uart_devclass, 0, 0); ==== //depot/projects/ctsrd/beribsd/src/sys/mips/beri/files.beri#24 (text+ko) ==== @@ -1,6 +1,7 @@ # $FreeBSD: src/sys/mips/beri/files.beri,v 1.4 2012/08/26 09:21:59 rwatson Exp $ dev/altera/jtag_uart/altera_jtag_uart_cons.c optional altera_jtag_uart dev/altera/jtag_uart/altera_jtag_uart_tty.c optional altera_jtag_uart +dev/altera/jtag_uart/altera_jtag_uart_fdt.c optional altera_jtag_uart fdt dev/altera/jtag_uart/altera_jtag_uart_nexus.c optional altera_jtag_uart dev/cfi/cfi_bus_nexus.c optional cfi dev/terasic/de4led/terasic_de4led.c optional terasic_de4led From owner-p4-projects@FreeBSD.ORG Sun Dec 30 18:01:05 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 60615413; Sun, 30 Dec 2012 18:01:05 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 21167411 for ; Sun, 30 Dec 2012 18:01:05 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id E04F18FC0C for ; Sun, 30 Dec 2012 18:01:04 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUI14Ff000811 for ; Sun, 30 Dec 2012 18:01:04 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUI14JR000808 for perforce@freebsd.org; Sun, 30 Dec 2012 18:01:04 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 18:01:04 GMT Message-Id: <201212301801.qBUI14JR000808@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219919 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 18:01:05 -0000 http://p4web.freebsd.org/@@219919?ac=10 Change 219919 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 18:00:19 Hang Avalon-attached devices off of a simplebus instance for BERI. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#3 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#3 (text+ko) ==== @@ -52,56 +52,62 @@ }; }; - memory { - device_type = "memory"; - reg = <0x0 0x40000000>; // 1G at 0x0 - }; + soc { + #address-cells = <1>; + #size-cells = <1>; + compatible = "simple-bus"; + + memory { + device_type = "memory"; + reg = <0x0 0x40000000>; // 1G at 0x0 + }; - serial@7f000000 { - compatible = "altera,jtag_uart-11_0"; - reg = <0x7f000000 0x40>; - interrupts = <0>; - }; + serial@7f000000 { + compatible = "altera,jtag_uart-11_0"; + reg = <0x7f000000 0x40>; + // interrupts = <0>; + }; - serial@7f001000 { - compatible = "altera,jtag_uart-11_0"; - reg = <0x7f001000 0x40>; - }; + serial@7f001000 { + compatible = "altera,jtag_uart-11_0"; + reg = <0x7f001000 0x40>; + }; - serial@7f002000 { - compatible = "altera,jtag_uart-11_0"; - reg = <0x7f002000 0x40>; - }; + serial@7f002000 { + compatible = "altera,jtag_uart-11_0"; + reg = <0x7f002000 0x40>; + }; - sdcard@7f008000 { - compatible = "altera,sdcard_11_2011"; - reg = <0x7f008000 0x400>; - }; + sdcard@7f008000 { + compatible = "altera,sdcard_11_2011"; + reg = <0x7f008000 0x400>; + }; - led@7f006000 { - compatible = "cambridge,de4led"; - reg = <0x7f006000 0x1>; - }; + led@7f006000 { + compatible = "cambridge,de4led"; + reg = <0x7f006000 0x1>; + }; - ethernet@7f007000 { - compatible = "altera,atse"; - reg = <0x7f007000 0x540>; - }; + ethernet@7f007000 { + compatible = "altera,atse"; + reg = <0x7f007000 0x540>; + }; - touchscreen@70400000 { - compatible = "cambridge,mtl"; - reg = <0x70400000 0x1000 - 0x70000000 0x177000 - 0x70177000 0x2000>; - }; + touchscreen@70400000 { + compatible = "cambridge,mtl"; + reg = <0x70400000 0x1000 + 0x70000000 0x177000 + 0x70177000 0x2000>; + }; - flash@0x74000000 { - compatible = "intel,strataflash"; - reg = <0x74000000 0x2000000>; - }; + flash@0x74000000 { + compatible = "intel,strataflash"; + reg = <0x74000000 0x2000000>; + }; - flash@0x76000000 { - compatible = "intel,strataflash"; - reg = <0x76000000 0x2000000>; + flash@0x76000000 { + compatible = "intel,strataflash"; + reg = <0x76000000 0x2000000>; + }; }; }; From owner-p4-projects@FreeBSD.ORG Sun Dec 30 18:16:21 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7DB058DD; Sun, 30 Dec 2012 18:16:21 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 3E82D8DB for ; Sun, 30 Dec 2012 18:16:21 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 080BC8FC08 for ; Sun, 30 Dec 2012 18:16:21 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUIGKp2002178 for ; Sun, 30 Dec 2012 18:16:20 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUIGKF2002175 for perforce@freebsd.org; Sun, 30 Dec 2012 18:16:20 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 18:16:20 GMT Message-Id: <201212301816.qBUIGKF2002175@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219920 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 18:16:21 -0000 http://p4web.freebsd.org/@@219920?ac=10 Change 219920 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 18:15:22 Copy BERI_DE4.hints to an FDT version that will gradually have its devices cut out as they migrate from nexus attachment to simplebus attachment. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4.hints#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sun Dec 30 18:39:46 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 61630F49; Sun, 30 Dec 2012 18:39:46 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1F0E7F47 for ; Sun, 30 Dec 2012 18:39:46 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id DF1DC8FC08 for ; Sun, 30 Dec 2012 18:39:45 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUIdjbh002747 for ; Sun, 30 Dec 2012 18:39:45 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUIdjAf002744 for perforce@freebsd.org; Sun, 30 Dec 2012 18:39:45 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 18:39:45 GMT Message-Id: <201212301839.qBUIdjAf002744@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219921 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 18:39:46 -0000 http://p4web.freebsd.org/@@219921?ac=10 Change 219921 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 18:39:01 Copy DE4 LED nexus bus attachment as a starting point for an FDT attachment. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/dev/terasic/de4led/terasic_de4led_fdt.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sun Dec 30 20:44:56 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3096D773; Sun, 30 Dec 2012 20:44:56 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id DC933771 for ; Sun, 30 Dec 2012 20:44:55 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id B8D868FC13 for ; Sun, 30 Dec 2012 20:44:55 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUKitJS007823 for ; Sun, 30 Dec 2012 20:44:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUKitra007818 for perforce@freebsd.org; Sun, 30 Dec 2012 20:44:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 20:44:55 GMT Message-Id: <201212302044.qBUKitra007818@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219922 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 20:44:56 -0000 http://p4web.freebsd.org/@@219922?ac=10 Change 219922 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 20:44:42 Update nexus parts in copied DE4LED attachment to use FDT. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/dev/terasic/de4led/terasic_de4led_fdt.c#2 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/beri/files.beri#25 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/dev/terasic/de4led/terasic_de4led_fdt.c#2 (text+ko) ==== @@ -47,6 +47,11 @@ #include #include +#include +#include +#include +#include + #include /* @@ -54,15 +59,18 @@ * which is hooked up to the processor via a memory-mapped Avalon bus. */ static int -terasic_de4led_nexus_probe(device_t dev) +terasic_de4led_fdt_probe(device_t dev) { - device_set_desc(dev, "Terasic DE4 8-element LED"); - return (BUS_PROBE_DEFAULT); + if (ofw_bus_is_compatible(dev, "cambridge,de4led")) { + device_set_desc(dev, "Terasic DE4 8-element LED"); + return (BUS_PROBE_DEFAULT); + } + return (ENXIO); } static int -terasic_de4led_nexus_attach(device_t dev) +terasic_de4led_fdt_attach(device_t dev) { struct terasic_de4led_softc *sc; @@ -81,7 +89,7 @@ } static int -terasic_de4led_nexus_detach(device_t dev) +terasic_de4led_fdt_detach(device_t dev) { struct terasic_de4led_softc *sc; @@ -93,20 +101,20 @@ return (0); } -static device_method_t terasic_de4led_nexus_methods[] = { - DEVMETHOD(device_probe, terasic_de4led_nexus_probe), - DEVMETHOD(device_attach, terasic_de4led_nexus_attach), - DEVMETHOD(device_detach, terasic_de4led_nexus_detach), +static device_method_t terasic_de4led_fdt_methods[] = { + DEVMETHOD(device_probe, terasic_de4led_fdt_probe), + DEVMETHOD(device_attach, terasic_de4led_fdt_attach), + DEVMETHOD(device_detach, terasic_de4led_fdt_detach), { 0, 0 } }; -static driver_t terasic_de4led_nexus_driver = { +static driver_t terasic_de4led_fdt_driver = { "terasic_de4led", - terasic_de4led_nexus_methods, + terasic_de4led_fdt_methods, sizeof(struct terasic_de4led_softc), }; static devclass_t terasic_de4led_devclass; -DRIVER_MODULE(terasic_de4led, nexus, terasic_de4led_nexus_driver, +DRIVER_MODULE(terasic_de4led, simplebus, terasic_de4led_fdt_driver, terasic_de4led_devclass, 0, 0); ==== //depot/projects/ctsrd/beribsd/src/sys/mips/beri/files.beri#25 (text+ko) ==== @@ -5,6 +5,7 @@ dev/altera/jtag_uart/altera_jtag_uart_nexus.c optional altera_jtag_uart dev/cfi/cfi_bus_nexus.c optional cfi dev/terasic/de4led/terasic_de4led.c optional terasic_de4led +dev/terasic/de4led/terasic_de4led_fdt.c optional terasic_de4led fdt dev/terasic/de4led/terasic_de4led_nexus.c optional terasic_de4led dev/terasic/mtl/terasic_mtl.c optional terasic_mtl dev/terasic/mtl/terasic_mtl_nexus.c optional terasic_mtl From owner-p4-projects@FreeBSD.ORG Sun Dec 30 20:49:00 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BD916960; Sun, 30 Dec 2012 20:49:00 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7E52395E for ; Sun, 30 Dec 2012 20:49:00 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 495E58FC12 for ; Sun, 30 Dec 2012 20:49:00 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUKn03L007903 for ; Sun, 30 Dec 2012 20:49:00 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUKn0Wj007900 for perforce@freebsd.org; Sun, 30 Dec 2012 20:49:00 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 20:49:00 GMT Message-Id: <201212302049.qBUKn0Wj007900@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219923 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 20:49:01 -0000 http://p4web.freebsd.org/@@219923?ac=10 Change 219923 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 20:48:15 Revert to using hints for all devices except for DE4LED for now, as FDT details are shaken out. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#4 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4.hints#2 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4_MDROOT#3 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#4 (text+ko) ==== @@ -56,12 +56,14 @@ #address-cells = <1>; #size-cells = <1>; compatible = "simple-bus"; + ranges = <>; memory { device_type = "memory"; reg = <0x0 0x40000000>; // 1G at 0x0 }; +/* serial@7f000000 { compatible = "altera,jtag_uart-11_0"; reg = <0x7f000000 0x40>; @@ -82,12 +84,14 @@ compatible = "altera,sdcard_11_2011"; reg = <0x7f008000 0x400>; }; +*/ led@7f006000 { compatible = "cambridge,de4led"; reg = <0x7f006000 0x1>; }; +/* ethernet@7f007000 { compatible = "altera,atse"; reg = <0x7f007000 0x540>; @@ -109,5 +113,6 @@ compatible = "intel,strataflash"; reg = <0x76000000 0x2000000>; }; +*/ }; }; ==== //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4.hints#2 (text+ko) ==== @@ -27,10 +27,10 @@ # # On-board DE4 8-element LED # -hint.terasic_de4led.0.at="nexus0" -hint.terasic_de4led.0.maddr=0x7f006000 -hint.terasic_de4led.0.msize=1 -hint.terasic_de4led.0.de4led_0_cmd="f9" +#hint.terasic_de4led.0.at="nexus0" +#hint.terasic_de4led.0.maddr=0x7f006000 +#hint.terasic_de4led.0.msize=1 +#hint.terasic_de4led.0.de4led_0_cmd="f9" # # Altera Triple-Speed Ethernet Mac, present in tPad and DE-4 configurations ==== //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4_MDROOT#3 (text+ko) ==== @@ -10,6 +10,8 @@ ident BERI_FDT_DE4_MDROOT +hints "BERI_FDT_DE4.hints" #Default places to look for devices. + options FDT options FDT_DTB_STATIC makeoptions FDT_DTS_FILE=beripad-de4.dts @@ -21,6 +23,7 @@ options MD_ROOT # MD is a potential root device options MD_ROOT_SIZE=8192 options ROOTDEVNAME=\"ufs:md0\" +makeoptions MFS_IMAGE=/home/rwatson/mdroot.img device altera_avgen device altera_jtag_uart From owner-p4-projects@FreeBSD.ORG Sun Dec 30 21:41:56 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BA57254E; Sun, 30 Dec 2012 21:41:55 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7AA1154C for ; Sun, 30 Dec 2012 21:41:55 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 5C3D68FC08 for ; Sun, 30 Dec 2012 21:41:55 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBULftV8010271 for ; Sun, 30 Dec 2012 21:41:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBULft8v010268 for perforce@freebsd.org; Sun, 30 Dec 2012 21:41:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 21:41:55 GMT Message-Id: <201212302141.qBULft8v010268@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219924 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 21:41:56 -0000 http://p4web.freebsd.org/@@219924?ac=10 Change 219924 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 21:41:52 In a sign of weakness, replicate the MIPS bus_space_generic.c to produce a new FDT version, which will perform necessary address space translation for bus_space -- the solution used in NLM's MIPS FDT support, but probably not quite the right thing. This is inconsistent with regular I/O via the nexus and the generic bus_space, which instead perform translation via pmap_mapdev() when a resource is activated. However, it may work while I attempt to identify what the right way to reconcile possible approaches. (Another approach might be to make simplebus use Nexus's activate routine instead of a generic one?) Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/mips/mips/bus_space_fdt.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sun Dec 30 22:35:52 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 16FC8E3F; Sun, 30 Dec 2012 22:35:52 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C617FE3D for ; Sun, 30 Dec 2012 22:35:51 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id A48C78FC08 for ; Sun, 30 Dec 2012 22:35:51 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUMZpi7012597 for ; Sun, 30 Dec 2012 22:35:51 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUMZpwN012594 for perforce@freebsd.org; Sun, 30 Dec 2012 22:35:51 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 22:35:51 GMT Message-Id: <201212302235.qBUMZpwN012594@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219925 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 22:35:52 -0000 http://p4web.freebsd.org/@@219925?ac=10 Change 219925 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 22:35:31 Provided a bus_space implementation for FDT, modelled on bus_space_generic, but with a local version of the map address routine that does a P->V translation, as is the case with NLM's similar routine for XLP. It's not clear to me that this is the right solution -- possibly this belongs in simplebus -- however, it is sufficient to get the DE4 LED driver working. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/conf/files.mips#6 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/include/bus.h#3 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/include/fdt.h#3 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/mips/bus_space_fdt.c#2 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/conf/files.mips#6 (text+ko) ==== @@ -45,6 +45,7 @@ mips/mips/tlb.c standard mips/mips/bus_space_generic.c standard +mips/mips/bus_space_fdt.c optional fdt mips/mips/busdma_machdep.c standard mips/mips/cache.c standard mips/mips/cache_mipsNN.c standard ==== //depot/projects/ctsrd/beribsd/src/sys/mips/include/bus.h#3 (text+ko) ==== @@ -728,6 +728,8 @@ */ DECLARE_BUS_SPACE_PROTOTYPES(generic); extern bus_space_tag_t mips_bus_space_generic; +extern bus_space_tag_t mips_bus_space_fdt; + /* Special bus space for RMI processors */ #if defined(CPU_RMI) || defined (CPU_NLM) extern bus_space_tag_t rmi_bus_space; ==== //depot/projects/ctsrd/beribsd/src/sys/mips/include/fdt.h#3 (text+ko) ==== @@ -51,7 +51,7 @@ #if defined(CPU_RMI) || defined(CPU_NLM) #define fdtbus_bs_tag rmi_uart_bus_space #else -#define fdtbus_bs_tag mips_bus_space_generic +#define fdtbus_bs_tag mips_bus_space_fdt #endif #endif /* _MACHINE_FDT_H_ */ ==== //depot/projects/ctsrd/beribsd/src/sys/mips/mips/bus_space_fdt.c#2 (text+ko) ==== @@ -89,12 +89,15 @@ #include #include -static struct bus_space generic_space = { +static int fdt_bs_map(void *, bus_addr_t, bus_size_t, int, + bus_space_handle_t *); + +static struct bus_space fdt_space = { /* cookie */ (void *) 0, /* mapping/unmapping */ - generic_bs_map, + fdt_bs_map, generic_bs_unmap, generic_bs_subregion, @@ -196,486 +199,14 @@ generic_bs_wr_8, }; -/* Ultra-gross kludge */ -#if defined(CPU_CNMIPS) && (defined(__mips_n32) || defined(__mips_o32)) -#include -#define rd8(a) cvmx_read64_uint8(a) -#define rd16(a) cvmx_read64_uint16(a) -#define rd32(a) cvmx_read64_uint32(a) -#define wr8(a, v) cvmx_write64_uint8(a, v) -#define wr16(a, v) cvmx_write64_uint16(a, v) -#define wr32(a, v) cvmx_write64_uint32(a, v) -#elif defined(CPU_SB1) && _BYTE_ORDER == _BIG_ENDIAN -#include -#define rd8(a) sb_big_endian_read8(a) -#define rd16(a) sb_big_endian_read16(a) -#define rd32(a) sb_big_endian_read32(a) -#define wr8(a, v) sb_big_endian_write8(a, v) -#define wr16(a, v) sb_big_endian_write16(a, v) -#define wr32(a, v) sb_big_endian_write32(a, v) -#else -#define rd8(a) readb(a) -#define rd16(a) readw(a) -#define rd32(a) readl(a) -#define wr8(a, v) writeb(a, v) -#define wr16(a, v) writew(a, v) -#define wr32(a, v) writel(a, v) -#endif - /* generic bus_space tag */ -bus_space_tag_t mips_bus_space_generic = &generic_space; +bus_space_tag_t mips_bus_space_fdt = &fdt_space; -int -generic_bs_map(void *t __unused, bus_addr_t addr, - bus_size_t size __unused, int flags __unused, - bus_space_handle_t *bshp) +static int +fdt_bs_map(void *t __unused, bus_addr_t addr, bus_size_t size __unused, + int flags __unused, bus_space_handle_t *bshp) { - *bshp = addr; - return (0); -} - -void -generic_bs_unmap(void *t __unused, bus_space_handle_t bh __unused, - bus_size_t size __unused) -{ - - /* Do nothing */ -} - -int -generic_bs_subregion(void *t __unused, bus_space_handle_t handle, - bus_size_t offset, bus_size_t size __unused, - bus_space_handle_t *bshp) -{ - - *bshp = handle + offset; + *bshp = MIPS_PHYS_TO_DIRECT_UNCACHED(addr); return (0); } - -int -generic_bs_alloc(void *t, bus_addr_t rstart, bus_addr_t rend, - bus_size_t size, bus_size_t alignment, bus_size_t boundary, int flags, - bus_addr_t *bpap, bus_space_handle_t *bshp) -{ - - panic("%s: not implemented", __func__); -} - -void -generic_bs_free(void *t, bus_space_handle_t bsh, bus_size_t size) -{ - - panic("%s: not implemented", __func__); -} - -uint8_t -generic_bs_r_1(void *t, bus_space_handle_t handle, - bus_size_t offset) -{ - - return (rd8(handle + offset)); -} - -uint16_t -generic_bs_r_2(void *t, bus_space_handle_t handle, - bus_size_t offset) -{ - - return (rd16(handle + offset)); -} - -uint32_t -generic_bs_r_4(void *t, bus_space_handle_t handle, - bus_size_t offset) -{ - - return (rd32(handle + offset)); -} - -uint64_t -generic_bs_r_8(void *t, bus_space_handle_t handle, bus_size_t offset) -{ - - panic("%s: not implemented", __func__); -} - -void -generic_bs_rm_1(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint8_t *addr, size_t count) -{ - - while (count--) - *addr++ = rd8(bsh + offset); -} - -void -generic_bs_rm_2(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint16_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) - *addr++ = rd16(baddr); -} - -void -generic_bs_rm_4(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint32_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) - *addr++ = rd32(baddr); -} - -void -generic_bs_rm_8(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint64_t *addr, size_t count) -{ - - panic("%s: not implemented", __func__); -} - -/* - * Read `count' 1, 2, 4, or 8 byte quantities from bus space - * described by tag/handle and starting at `offset' and copy into - * buffer provided. - */ -void -generic_bs_rr_1(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint8_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) { - *addr++ = rd8(baddr); - baddr += 1; - } -} - -void -generic_bs_rr_2(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint16_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) { - *addr++ = rd16(baddr); - baddr += 2; - } -} - -void -generic_bs_rr_4(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint32_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) { - *addr++ = rd32(baddr); - baddr += 4; - } -} - -void -generic_bs_rr_8(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint64_t *addr, size_t count) -{ - - panic("%s: not implemented", __func__); -} - -/* - * Write the 1, 2, 4, or 8 byte value `value' to bus space - * described by tag/handle/offset. - */ -void -generic_bs_w_1(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint8_t value) -{ - - wr8(bsh + offset, value); -} - -void -generic_bs_w_2(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint16_t value) -{ - - wr16(bsh + offset, value); -} - -void -generic_bs_w_4(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint32_t value) -{ - - wr32(bsh + offset, value); -} - -void -generic_bs_w_8(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint64_t value) -{ - - panic("%s: not implemented", __func__); -} - -/* - * Write `count' 1, 2, 4, or 8 byte quantities from the buffer - * provided to bus space described by tag/handle/offset. - */ -void -generic_bs_wm_1(void *t, bus_space_handle_t bsh, - bus_size_t offset, const uint8_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) - wr8(baddr, *addr++); -} - -void -generic_bs_wm_2(void *t, bus_space_handle_t bsh, - bus_size_t offset, const uint16_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) - wr16(baddr, *addr++); -} - -void -generic_bs_wm_4(void *t, bus_space_handle_t bsh, - bus_size_t offset, const uint32_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) - wr32(baddr, *addr++); -} - -void -generic_bs_wm_8(void *t, bus_space_handle_t bsh, bus_size_t offset, - const uint64_t *addr, size_t count) -{ - - panic("%s: not implemented", __func__); -} - -/* - * Write `count' 1, 2, 4, or 8 byte quantities from the buffer provided - * to bus space described by tag/handle starting at `offset'. - */ -void -generic_bs_wr_1(void *t, bus_space_handle_t bsh, - bus_size_t offset, const uint8_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) { - wr8(baddr, *addr++); - baddr += 1; - } -} - -void -generic_bs_wr_2(void *t, bus_space_handle_t bsh, - bus_size_t offset, const uint16_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) { - wr16(baddr, *addr++); - baddr += 2; - } -} - -void -generic_bs_wr_4(void *t, bus_space_handle_t bsh, - bus_size_t offset, const uint32_t *addr, size_t count) -{ - bus_addr_t baddr = bsh + offset; - - while (count--) { - wr32(baddr, *addr++); - baddr += 4; - } -} - -void -generic_bs_wr_8(void *t, bus_space_handle_t bsh, bus_size_t offset, - const uint64_t *addr, size_t count) -{ - - panic("%s: not implemented", __func__); -} - -/* - * Write the 1, 2, 4, or 8 byte value `val' to bus space described - * by tag/handle/offset `count' times. - */ -void -generic_bs_sm_1(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint8_t value, size_t count) -{ - bus_addr_t addr = bsh + offset; - - while (count--) - wr8(addr, value); -} - -void -generic_bs_sm_2(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint16_t value, size_t count) -{ - bus_addr_t addr = bsh + offset; - - while (count--) - wr16(addr, value); -} - -void -generic_bs_sm_4(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint32_t value, size_t count) -{ - bus_addr_t addr = bsh + offset; - - while (count--) - wr32(addr, value); -} - -void -generic_bs_sm_8(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint64_t value, size_t count) -{ - - panic("%s: not implemented", __func__); -} - -/* - * Write `count' 1, 2, 4, or 8 byte value `val' to bus space described - * by tag/handle starting at `offset'. - */ -void -generic_bs_sr_1(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint8_t value, size_t count) -{ - bus_addr_t addr = bsh + offset; - - for (; count != 0; count--, addr++) - wr8(addr, value); -} - -void -generic_bs_sr_2(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint16_t value, size_t count) -{ - bus_addr_t addr = bsh + offset; - - for (; count != 0; count--, addr += 2) - wr16(addr, value); -} - -void -generic_bs_sr_4(void *t, bus_space_handle_t bsh, - bus_size_t offset, uint32_t value, size_t count) -{ - bus_addr_t addr = bsh + offset; - - for (; count != 0; count--, addr += 4) - wr32(addr, value); -} - -void -generic_bs_sr_8(void *t, bus_space_handle_t bsh, bus_size_t offset, - uint64_t value, size_t count) -{ - - panic("%s: not implemented", __func__); -} - -/* - * Copy `count' 1, 2, 4, or 8 byte values from bus space starting - * at tag/bsh1/off1 to bus space starting at tag/bsh2/off2. - */ -void -generic_bs_c_1(void *t, bus_space_handle_t bsh1, - bus_size_t off1, bus_space_handle_t bsh2, - bus_size_t off2, size_t count) -{ - bus_addr_t addr1 = bsh1 + off1; - bus_addr_t addr2 = bsh2 + off2; - - if (addr1 >= addr2) { - /* src after dest: copy forward */ - for (; count != 0; count--, addr1++, addr2++) - wr8(addr2, rd8(addr1)); - } else { - /* dest after src: copy backwards */ - for (addr1 += (count - 1), addr2 += (count - 1); - count != 0; count--, addr1--, addr2--) - wr8(addr2, rd8(addr1)); - } -} - -void -generic_bs_c_2(void *t, bus_space_handle_t bsh1, - bus_size_t off1, bus_space_handle_t bsh2, - bus_size_t off2, size_t count) -{ - bus_addr_t addr1 = bsh1 + off1; - bus_addr_t addr2 = bsh2 + off2; - - if (addr1 >= addr2) { - /* src after dest: copy forward */ - for (; count != 0; count--, addr1 += 2, addr2 += 2) - wr16(addr2, rd16(addr1)); - } else { - /* dest after src: copy backwards */ - for (addr1 += 2 * (count - 1), addr2 += 2 * (count - 1); - count != 0; count--, addr1 -= 2, addr2 -= 2) - wr16(addr2, rd16(addr1)); - } -} - -void -generic_bs_c_4(void *t, bus_space_handle_t bsh1, - bus_size_t off1, bus_space_handle_t bsh2, - bus_size_t off2, size_t count) -{ - bus_addr_t addr1 = bsh1 + off1; - bus_addr_t addr2 = bsh2 + off2; - - if (addr1 >= addr2) { - /* src after dest: copy forward */ - for (; count != 0; count--, addr1 += 4, addr2 += 4) - wr32(addr2, rd32(addr1)); - } else { - /* dest after src: copy backwards */ - for (addr1 += 4 * (count - 1), addr2 += 4 * (count - 1); - count != 0; count--, addr1 -= 4, addr2 -= 4) - wr32(addr2, rd32(addr1)); - } -} - -void -generic_bs_c_8(void *t, bus_space_handle_t bsh1, bus_size_t off1, - bus_space_handle_t bsh2, bus_size_t off2, size_t count) -{ - - panic("%s: not implemented", __func__); -} - -void -generic_bs_barrier(void *t __unused, - bus_space_handle_t bsh __unused, - bus_size_t offset __unused, bus_size_t len __unused, - int flags) -{ -#if 0 - if (flags & BUS_SPACE_BARRIER_WRITE) - mips_dcache_wbinv_all(); -#endif -} From owner-p4-projects@FreeBSD.ORG Sun Dec 30 22:43:00 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DB3C7FA9; Sun, 30 Dec 2012 22:42:59 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 92F2AFA7 for ; Sun, 30 Dec 2012 22:42:59 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 5D34C8FC0C for ; Sun, 30 Dec 2012 22:42:59 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUMgxZi012806 for ; Sun, 30 Dec 2012 22:42:59 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUMgxCa012803 for perforce@freebsd.org; Sun, 30 Dec 2012 22:42:59 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 22:42:59 GMT Message-Id: <201212302242.qBUMgxCa012803@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219926 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 22:43:00 -0000 http://p4web.freebsd.org/@@219926?ac=10 Change 219926 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 22:42:19 Copy Altera SDCard nexus attachment as a starting point for the FDT attachment. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/dev/altera/sdcard/altera_sdcard_fdt.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Sun Dec 30 23:01:19 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 226A9273; Sun, 30 Dec 2012 23:01:19 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C6465270 for ; Sun, 30 Dec 2012 23:01:18 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id A2E5B8FC0A for ; Sun, 30 Dec 2012 23:01:18 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUN1IQn013392 for ; Sun, 30 Dec 2012 23:01:18 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUN1I7d013389 for perforce@freebsd.org; Sun, 30 Dec 2012 23:01:18 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 23:01:18 GMT Message-Id: <201212302301.qBUN1I7d013389@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219927 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 23:01:19 -0000 http://p4web.freebsd.org/@@219927?ac=10 Change 219927 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 23:00:20 Implement an FDT attachment for the Altera SD Card driver. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/conf/files#10 edit .. //depot/projects/ctsrd/beribsd/src/sys/dev/altera/sdcard/altera_sdcard_fdt.c#2 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/conf/files#10 (text+ko) ==== @@ -641,6 +641,7 @@ 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 ==== //depot/projects/ctsrd/beribsd/src/sys/dev/altera/sdcard/altera_sdcard_fdt.c#2 (text+ko) ==== @@ -52,21 +52,27 @@ #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 @@ } 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 @@ 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); From owner-p4-projects@FreeBSD.ORG Sun Dec 30 23:01:19 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 605C734D; Sun, 30 Dec 2012 23:01:19 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0FC0C271 for ; Sun, 30 Dec 2012 23:01:19 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id E828C8FC0C for ; Sun, 30 Dec 2012 23:01:18 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUN1IrO013398 for ; Sun, 30 Dec 2012 23:01:18 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUN1IQw013395 for perforce@freebsd.org; Sun, 30 Dec 2012 23:01:18 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 23:01:18 GMT Message-Id: <201212302301.qBUN1IQw013395@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219928 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 23:01:19 -0000 http://p4web.freebsd.org/@@219928?ac=10 Change 219928 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 23:00:48 Move the Altera SD Card IP core from attaching via nexus to FDT. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#5 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4.hints#3 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#5 (text+ko) ==== @@ -79,12 +79,12 @@ compatible = "altera,jtag_uart-11_0"; reg = <0x7f002000 0x40>; }; +*/ sdcard@7f008000 { compatible = "altera,sdcard_11_2011"; reg = <0x7f008000 0x400>; }; -*/ led@7f006000 { compatible = "cambridge,de4led"; ==== //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4.hints#3 (text+ko) ==== @@ -20,9 +20,9 @@ # # On-board DE4 and tPad SD Card IP core # -hint.altera_sdcardc.0.at="nexus0" -hint.altera_sdcardc.0.maddr=0x7f008000 -hint.altera_sdcardc.0.msize=0x400 +#hint.altera_sdcardc.0.at="nexus0" +#hint.altera_sdcardc.0.maddr=0x7f008000 +#hint.altera_sdcardc.0.msize=0x400 # # On-board DE4 8-element LED From owner-p4-projects@FreeBSD.ORG Sun Dec 30 23:05:24 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E1BAB6A6; Sun, 30 Dec 2012 23:05:23 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A285A6A4 for ; Sun, 30 Dec 2012 23:05:23 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 6DDDE8FC0C for ; Sun, 30 Dec 2012 23:05:23 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBUN5NqM013577 for ; Sun, 30 Dec 2012 23:05:23 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBUN5Nvr013574 for perforce@freebsd.org; Sun, 30 Dec 2012 23:05:23 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 30 Dec 2012 23:05:23 GMT Message-Id: <201212302305.qBUN5Nvr013574@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219929 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Dec 2012 23:05:24 -0000 http://p4web.freebsd.org/@@219929?ac=10 Change 219929 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/30 23:04:35 Replicate nexus attachment for isf(4) to become an FDT attachment. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/dev/isf/isf_fdt.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon Dec 31 00:15:37 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E231E624; Mon, 31 Dec 2012 00:15:36 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A2F2A622 for ; Mon, 31 Dec 2012 00:15:36 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id 853248FC08 for ; Mon, 31 Dec 2012 00:15:36 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBV0Fahb017672 for ; Mon, 31 Dec 2012 00:15:36 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBV0Fai9017669 for perforce@freebsd.org; Mon, 31 Dec 2012 00:15:36 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 31 Dec 2012 00:15:36 GMT Message-Id: <201212310015.qBV0Fai9017669@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219930 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 00:15:37 -0000 http://p4web.freebsd.org/@@219930?ac=10 Change 219930 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/31 00:15:14 Add an Intel StrataFlash (isf) driver FDT attachment, and switch to using that attachment with the FDT version of the FreeBSD/BERI kernel. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#6 edit .. //depot/projects/ctsrd/beribsd/src/sys/conf/files#11 edit .. //depot/projects/ctsrd/beribsd/src/sys/dev/isf/isf_fdt.c#2 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4.hints#4 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#6 (text+ko) ==== @@ -103,6 +103,7 @@ 0x70000000 0x177000 0x70177000 0x2000>; }; +*/ flash@0x74000000 { compatible = "intel,strataflash"; @@ -113,6 +114,5 @@ compatible = "intel,strataflash"; reg = <0x76000000 0x2000000>; }; -*/ }; }; ==== //depot/projects/ctsrd/beribsd/src/sys/conf/files#11 (text+ko) ==== @@ -1393,6 +1393,7 @@ dev/iscsi/initiator/isc_sm.c optional iscsi_initiator scbus dev/iscsi/initiator/isc_subr.c optional iscsi_initiator scbus dev/isf/isf.c optional isf +dev/isf/isf_fdt.c optional isf fdt dev/isf/isf_nexus.c optional isf dev/isp/isp.c optional isp dev/isp/isp_freebsd.c optional isp ==== //depot/projects/ctsrd/beribsd/src/sys/dev/isf/isf_fdt.c#2 (text+ko) ==== @@ -51,23 +51,29 @@ #include +#include +#include +#include +#include + #include /* - * Nexus bus attachment for the Intel Strata Flash devices. Appropriate for - * most Altera FPGA SoC-style configurations in which the part will be exposed - * to the processor via a memory-mapped Avalon bus. + * FDT bus attachment for the Intel Strata Flash devices. */ static int -isf_nexus_probe(device_t dev) +isf_fdt_probe(device_t dev) { - device_set_desc(dev, "Intel StrataFlash NOR flash device"); - return (BUS_PROBE_DEFAULT); + if (ofw_bus_is_compatible(dev, "intel,strataflash")) { + device_set_desc(dev, "Intel StrataFlash NOR flash device"); + return (BUS_PROBE_DEFAULT); + } + return (ENXIO); } static int -isf_nexus_attach(device_t dev) +isf_fdt_attach(device_t dev) { int error; struct isf_softc *sc; @@ -90,7 +96,7 @@ } static int -isf_nexus_detach(device_t dev) +isf_fdt_detach(device_t dev) { struct isf_softc *sc; @@ -102,19 +108,19 @@ return (0); } -static device_method_t isf_nexus_methods[] = { - DEVMETHOD(device_probe, isf_nexus_probe), - DEVMETHOD(device_attach, isf_nexus_attach), - DEVMETHOD(device_detach, isf_nexus_detach), +static device_method_t isf_fdt_methods[] = { + DEVMETHOD(device_probe, isf_fdt_probe), + DEVMETHOD(device_attach, isf_fdt_attach), + DEVMETHOD(device_detach, isf_fdt_detach), { 0, 0 } }; -static driver_t isf_nexus_driver = { +static driver_t isf_fdt_driver = { "isf", - isf_nexus_methods, + isf_fdt_methods, sizeof(struct isf_softc), }; static devclass_t isf_devclass; -DRIVER_MODULE(isf, nexus, isf_nexus_driver, isf_devclass, 0, 0); +DRIVER_MODULE(isf, simplebus, isf_fdt_driver, isf_devclass, 0, 0); ==== //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4.hints#4 (text+ko) ==== @@ -85,12 +85,12 @@ # # General Intel StrataFlash driver # -hint.isf.0.at="nexus0" -hint.isf.0.maddr=0x74000000 -hint.isf.0.msize=0x2000000 -hint.isf.1.at="nexus0" -hint.isf.1.maddr=0x76000000 -hint.isf.1.msize=0x2000000 +#hint.isf.0.at="nexus0" +#hint.isf.0.maddr=0x74000000 +#hint.isf.0.msize=0x2000000 +#hint.isf.1.at="nexus0" +#hint.isf.1.maddr=0x76000000 +#hint.isf.1.msize=0x2000000 # Reserved configuration blocks. Don't touch. hint.map.0.at="isf0" From owner-p4-projects@FreeBSD.ORG Mon Dec 31 21:18:35 2012 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 542222B2; Mon, 31 Dec 2012 21:18:35 +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 14D772B0 for ; Mon, 31 Dec 2012 21:18:35 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id D30FC8FC0A for ; Mon, 31 Dec 2012 21:18:34 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.5/8.14.5) with ESMTP id qBVLIYKm076334 for ; Mon, 31 Dec 2012 21:18:34 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.5/8.14.5/Submit) id qBVLIYkL076331 for perforce@freebsd.org; Mon, 31 Dec 2012 21:18:34 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 31 Dec 2012 21:18:34 GMT Message-Id: <201212312118.qBVLIYkL076331@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson Subject: PERFORCE change 219931 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Dec 2012 21:18:35 -0000 http://p4web.freebsd.org/@@219931?ac=10 Change 219931 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2012/12/31 21:17:40 Use FDT rather than device.hints for Altera JTAG UARTs. No interrupts yet, so stick to polled mode. Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#7 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4.hints#5 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/boot/fdt/dts/beripad-de4.dts#7 (text+ko) ==== @@ -63,7 +63,6 @@ reg = <0x0 0x40000000>; // 1G at 0x0 }; -/* serial@7f000000 { compatible = "altera,jtag_uart-11_0"; reg = <0x7f000000 0x40>; @@ -79,7 +78,6 @@ compatible = "altera,jtag_uart-11_0"; reg = <0x7f002000 0x40>; }; -*/ sdcard@7f008000 { compatible = "altera,sdcard_11_2011"; ==== //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_FDT_DE4.hints#5 (text+ko) ==== @@ -4,18 +4,18 @@ # Altera JTAG UARTs configured for console, debugging, and data putput on the # Terasic DE-4. # -hint.altera_jtag_uart.0.at="nexus0" -hint.altera_jtag_uart.0.maddr=0x7f000000 -hint.altera_jtag_uart.0.msize=0x40 -hint.altera_jtag_uart.0.irq=0 +#hint.altera_jtag_uart.0.at="nexus0" +#hint.altera_jtag_uart.0.maddr=0x7f000000 +#hint.altera_jtag_uart.0.msize=0x40 +#hint.altera_jtag_uart.0.irq=0 -hint.altera_jtag_uart.1.at="nexus0" -hint.altera_jtag_uart.1.maddr=0x7f001000 -hint.altera_jtag_uart.1.msize=0x40 +#hint.altera_jtag_uart.1.at="nexus0" +#hint.altera_jtag_uart.1.maddr=0x7f001000 +#hint.altera_jtag_uart.1.msize=0x40 -hint.altera_jtag_uart.2.at="nexus0" -hint.altera_jtag_uart.2.maddr=0x7f002000 -hint.altera_jtag_uart.2.msize=0x40 +#hint.altera_jtag_uart.2.at="nexus0" +#hint.altera_jtag_uart.2.maddr=0x7f002000 +#hint.altera_jtag_uart.2.msize=0x40 # # On-board DE4 and tPad SD Card IP core