199767f8919635c4928607450d9e0abb932109ceToomas Soome/*-
199767f8919635c4928607450d9e0abb932109ceToomas Soome * Copyright (c) 2012-2013 Robert N. M. Watson
199767f8919635c4928607450d9e0abb932109ceToomas Soome * Copyright (c) 2013 SRI International
199767f8919635c4928607450d9e0abb932109ceToomas Soome * All rights reserved.
199767f8919635c4928607450d9e0abb932109ceToomas Soome *
199767f8919635c4928607450d9e0abb932109ceToomas Soome * This software was developed by SRI International and the University of
199767f8919635c4928607450d9e0abb932109ceToomas Soome * Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237)
199767f8919635c4928607450d9e0abb932109ceToomas Soome * ("CTSRD"), as part of the DARPA CRASH research programme.
199767f8919635c4928607450d9e0abb932109ceToomas Soome *
199767f8919635c4928607450d9e0abb932109ceToomas Soome * Redistribution and use in source and binary forms, with or without
199767f8919635c4928607450d9e0abb932109ceToomas Soome * modification, are permitted provided that the following conditions
199767f8919635c4928607450d9e0abb932109ceToomas Soome * are met:
199767f8919635c4928607450d9e0abb932109ceToomas Soome * 1. Redistributions of source code must retain the above copyright
199767f8919635c4928607450d9e0abb932109ceToomas Soome * notice, this list of conditions and the following disclaimer.
199767f8919635c4928607450d9e0abb932109ceToomas Soome * 2. Redistributions in binary form must reproduce the above copyright
199767f8919635c4928607450d9e0abb932109ceToomas Soome * notice, this list of conditions and the following disclaimer in the
199767f8919635c4928607450d9e0abb932109ceToomas Soome * documentation and/or other materials provided with the distribution.
199767f8919635c4928607450d9e0abb932109ceToomas Soome *
199767f8919635c4928607450d9e0abb932109ceToomas Soome * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
199767f8919635c4928607450d9e0abb932109ceToomas Soome * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
199767f8919635c4928607450d9e0abb932109ceToomas Soome * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
199767f8919635c4928607450d9e0abb932109ceToomas Soome * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
199767f8919635c4928607450d9e0abb932109ceToomas Soome * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
199767f8919635c4928607450d9e0abb932109ceToomas Soome * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
199767f8919635c4928607450d9e0abb932109ceToomas Soome * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
199767f8919635c4928607450d9e0abb932109ceToomas Soome * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
199767f8919635c4928607450d9e0abb932109ceToomas Soome * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
199767f8919635c4928607450d9e0abb932109ceToomas Soome * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
199767f8919635c4928607450d9e0abb932109ceToomas Soome * SUCH DAMAGE.
199767f8919635c4928607450d9e0abb932109ceToomas Soome *
199767f8919635c4928607450d9e0abb932109ceToomas Soome * $FreeBSD$
199767f8919635c4928607450d9e0abb932109ceToomas Soome */
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome/dts-v1/;
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome/*
199767f8919635c4928607450d9e0abb932109ceToomas Soome * Device names here have been largely made up on the spot, especially for the
199767f8919635c4928607450d9e0abb932109ceToomas Soome * "compatible" strings, and might want to be revised.
199767f8919635c4928607450d9e0abb932109ceToomas Soome *
199767f8919635c4928607450d9e0abb932109ceToomas Soome * For now, use 32-bit addressing as our Avalon bus is 32-bit. However, in
199767f8919635c4928607450d9e0abb932109ceToomas Soome * the future, we should likely change to 64-bit.
199767f8919635c4928607450d9e0abb932109ceToomas Soome */
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome/ {
199767f8919635c4928607450d9e0abb932109ceToomas Soome model = "SRI/Cambridge BERI simulation";
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "sri-cambridge,beri-sim";
199767f8919635c4928607450d9e0abb932109ceToomas Soome #address-cells = <1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome #size-cells = <1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome cpus {
199767f8919635c4928607450d9e0abb932109ceToomas Soome #address-cells = <1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome #size-cells = <1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome /*
199767f8919635c4928607450d9e0abb932109ceToomas Soome * Secondary CPUs all start disabled and use the
199767f8919635c4928607450d9e0abb932109ceToomas Soome * spin-table enable method. cpu-release-addr must be
199767f8919635c4928607450d9e0abb932109ceToomas Soome * specified for each cpu other than cpu@0. Values of
199767f8919635c4928607450d9e0abb932109ceToomas Soome * cpu-release-addr grow down from 0x100000 (kernel).
199767f8919635c4928607450d9e0abb932109ceToomas Soome */
199767f8919635c4928607450d9e0abb932109ceToomas Soome status = "disabled";
199767f8919635c4928607450d9e0abb932109ceToomas Soome enable-method = "spin-table";
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome cpu@0 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome device-type = "cpu";
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "sri-cambridge,beri";
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <0 1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome status = "okay";
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome/*
199767f8919635c4928607450d9e0abb932109ceToomas Soome cpu@1 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome device-type = "cpu";
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "sri-cambridge,beri";
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <1 1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome // XXX: should we need cached prefix?
199767f8919635c4928607450d9e0abb932109ceToomas Soome cpu-release-addr = <0xffffffff 0x800fffe0>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome*/
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome memory {
199767f8919635c4928607450d9e0abb932109ceToomas Soome device_type = "memory";
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <0x0 0x4000000>; // 64M at 0x0
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome soc {
199767f8919635c4928607450d9e0abb932109ceToomas Soome #address-cells = <1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome #size-cells = <1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome #interrupt-cells = <1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome /*
199767f8919635c4928607450d9e0abb932109ceToomas Soome * Declare mips,mips4k since BERI doesn't (yet) have a PIC, so
199767f8919635c4928607450d9e0abb932109ceToomas Soome * we use mips4k coprocessor 0 interrupt management directly.
199767f8919635c4928607450d9e0abb932109ceToomas Soome */
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "simple-bus", "mips,mips4k";
199767f8919635c4928607450d9e0abb932109ceToomas Soome ranges = <>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome beripic0: beripic@7f804000 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "sri-cambridge,beri-pic";
199767f8919635c4928607450d9e0abb932109ceToomas Soome interrupt-controller;
199767f8919635c4928607450d9e0abb932109ceToomas Soome #address-cells = <0>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome #interrupt-cells = <1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <0x7f804000 0x400
199767f8919635c4928607450d9e0abb932109ceToomas Soome 0x7f806000 0x10
199767f8919635c4928607450d9e0abb932109ceToomas Soome 0x7f806080 0x10
199767f8919635c4928607450d9e0abb932109ceToomas Soome 0x7f806100 0x10>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome interrupts = <0 1 2 3 4>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome hard-interrupt-sources = <64>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome soft-interrupt-sources = <64>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome serial@7f000000 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "altera,jtag_uart-11_0";
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <0x7f000000 0x40>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome interrupts = <0>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome interrupt-parent = <&beripic0>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome serial@7f001000 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "altera,jtag_uart-11_0";
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <0x7f001000 0x40>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome serial@7f002000 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "altera,jtag_uart-11_0";
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <0x7f002000 0x40>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome virtio_mmio_platform0: virtio_mmio_platform@0 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "beri,virtio_mmio_platform";
199767f8919635c4928607450d9e0abb932109ceToomas Soome interrupts = <1>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome interrupt-parent = <&beripic0>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome virtio_block@7f020000 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "virtio,mmio";
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <0x7f020000 0x1000>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome platform = <&virtio_mmio_platform0>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome sdcard@7f008000 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "altera,sdcard_11_2011";
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <0x7f008000 0x400>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome
199767f8919635c4928607450d9e0abb932109ceToomas Soome avgen@0x7f00a000 {
199767f8919635c4928607450d9e0abb932109ceToomas Soome compatible = "sri-cambridge,avgen";
199767f8919635c4928607450d9e0abb932109ceToomas Soome reg = <0x7f00a000 0x14>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome sri-cambridge,width = <4>;
199767f8919635c4928607450d9e0abb932109ceToomas Soome sri-cambridge,fileio = "rw";
199767f8919635c4928607450d9e0abb932109ceToomas Soome sri-cambridge,devname = "berirom";
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome };
199767f8919635c4928607450d9e0abb932109ceToomas Soome};