Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 May 2014 20:11:20 +0000 (UTC)
From:      Ian Lepore <ian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r266085 - in stable/10/sys: arm/broadcom/bcm2835 arm/conf arm/freescale/vybrid boot/fdt/dts dev/uart dev/usb/controller
Message-ID:  <201405142011.s4EKBKpM032405@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ian
Date: Wed May 14 20:11:20 2014
New Revision: 266085
URL: http://svnweb.freebsd.org/changeset/base/266085

Log:
  MFC  r256839, r256948, r256950, r257299, r257414, r258057, r259090
  
    Add configuration for the Freescale i.MX53 Quick Start Board.
  
    Add the Raspberry Pi BSC (I2C compliant) controller driver.
  
    Add Radxa Rock board (by radxa.com) support.
  
    Digi-CCWMX53: enable ffec and uart, USB.
  
    Add support for Freescale Vybrid Family VF600
  
    Move and rename dwc otg driver to more generic one as it appears to work
    for rk3188 SoC based board too.

Added:
  stable/10/sys/arm/conf/COSMIC
     - copied unchanged from r258057, head/sys/arm/conf/COSMIC
  stable/10/sys/arm/conf/RADXA
     - copied unchanged from r256950, head/sys/arm/conf/RADXA
  stable/10/sys/arm/freescale/vybrid/
     - copied from r258057, head/sys/arm/freescale/vybrid/
  stable/10/sys/boot/fdt/dts/rk3188-radxa.dts
     - copied unchanged from r256948, head/sys/boot/fdt/dts/rk3188-radxa.dts
  stable/10/sys/boot/fdt/dts/rk3188.dtsi
     - copied unchanged from r256948, head/sys/boot/fdt/dts/rk3188.dtsi
  stable/10/sys/boot/fdt/dts/vybrid-cosmic.dts
     - copied unchanged from r258057, head/sys/boot/fdt/dts/vybrid-cosmic.dts
  stable/10/sys/boot/fdt/dts/vybrid.dtsi
     - copied unchanged from r258057, head/sys/boot/fdt/dts/vybrid.dtsi
  stable/10/sys/dev/usb/controller/dwc_otg_fdt.c
     - copied unchanged from r256839, head/sys/dev/usb/controller/dwc_otg_fdt.c
Deleted:
  stable/10/sys/arm/broadcom/bcm2835/dwc_otg_brcm.c
Modified:
  stable/10/sys/arm/broadcom/bcm2835/files.bcm2835
  stable/10/sys/arm/conf/DIGI-CCWMX53
  stable/10/sys/boot/fdt/dts/digi-ccwmx53.dts
  stable/10/sys/dev/uart/uart.h
  stable/10/sys/dev/uart/uart_bus_fdt.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/arm/broadcom/bcm2835/files.bcm2835
==============================================================================
--- stable/10/sys/arm/broadcom/bcm2835/files.bcm2835	Wed May 14 19:18:58 2014	(r266084)
+++ stable/10/sys/arm/broadcom/bcm2835/files.bcm2835	Wed May 14 20:11:20 2014	(r266085)
@@ -14,7 +14,7 @@ arm/broadcom/bcm2835/bcm2835_systimer.c	
 arm/broadcom/bcm2835/bcm2835_wdog.c		standard
 arm/broadcom/bcm2835/bus_space.c		optional fdt
 arm/broadcom/bcm2835/common.c			optional fdt
-arm/broadcom/bcm2835/dwc_otg_brcm.c		optional dwcotg
+dev/usb/controller/dwc_otg_fdt.c		optional dwcotg
 
 arm/arm/bus_space_generic.c                     standard
 arm/arm/bus_space_asm_generic.S                 standard

Copied: stable/10/sys/arm/conf/COSMIC (from r258057, head/sys/arm/conf/COSMIC)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/sys/arm/conf/COSMIC	Wed May 14 20:11:20 2014	(r266085, copy of r258057, head/sys/arm/conf/COSMIC)
@@ -0,0 +1,139 @@
+# Kernel configuration for Cosmic Board (Freescale Vybrid Family development board).
+#
+# For more information on this file, please read the config(5) manual page,
+# and/or the handbook section on Kernel Configuration Files:
+#
+#    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
+#
+# The handbook is also available locally in /usr/share/doc/handbook
+# if you've installed the doc distribution, otherwise always see the
+# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
+# latest information.
+#
+# An exhaustive list of options and more detailed explanations of the
+# device lines is also present in the ../../conf/NOTES and NOTES files.
+# If you are in doubt as to the purpose or necessity of a line, check first
+# in NOTES.
+#
+# $FreeBSD$
+
+ident		COSMIC
+
+include		"../freescale/vybrid/std.vybrid"
+
+makeoptions	MODULES_OVERRIDE=""
+makeoptions	WITHOUT_MODULES="ahc"
+
+makeoptions	DEBUG=-g		#Build kernel with gdb(1) debug symbols
+makeoptions	WERROR="-Werror"
+
+options		HZ=100 ##
+options		SCHED_4BSD		#4BSD scheduler
+options		INET			#InterNETworking
+options		INET6			#IPv6 communications protocols
+options		FFS			#Berkeley Fast Filesystem
+options		SOFTUPDATES
+options		UFS_ACL			#Support for access control lists
+options		UFS_DIRHASH		#Improve performance on big directories
+options		MSDOSFS			#MSDOS Filesystem
+options		CD9660			#ISO 9660 Filesystem
+options		PROCFS			#Process filesystem (requires PSEUDOFS)
+options		PSEUDOFS		#Pseudo-filesystem framework
+#options		NANDFS			#NAND Filesystem
+options		TMPFS
+options		COMPAT_43		#Compatible with BSD 4.3 [KEEP THIS!]
+options		SCSI_DELAY=5000		#Delay (in ms) before probing SCSI
+options		KTRACE
+options		SYSVSHM			#SYSV-style shared memory
+options		SYSVMSG			#SYSV-style message queues
+options		SYSVSEM			#SYSV-style semaphores
+options		_KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
+options		KBD_INSTALL_CDEV
+options		PREEMPTION
+options		FREEBSD_BOOT_LOADER
+options 	VFP		# vfp/neon
+
+# Debugging
+makeoptions	DEBUG=-g		#Build kernel with gdb(1) debug symbols
+options		BREAK_TO_DEBUGGER
+#options	VERBOSE_SYSINIT		#Enable verbose sysinit messages
+options		KDB
+options		DDB			#Enable the kernel debugger
+options		INVARIANTS		#Enable calls of extra sanity checking
+options		INVARIANT_SUPPORT	#Extra sanity checks of internal structures, required by INVARIANTS
+#options	WITNESS			#Enable checks to detect deadlocks and cycles
+#options	WITNESS_SKIPSPIN	#Don't run witness on spinlocks for speed
+options		DIAGNOSTIC
+
+# NFS support
+options		NFSCL			#Network Filesystem Client
+options		NFSLOCKD		#Network Lock Manager
+options		NFS_ROOT		#NFS usable as /, requires NFSCLIENT
+
+# Uncomment this for NFS root
+#options	NFS_ROOT		#NFS usable as /, requires NFSCL
+#options	BOOTP_NFSROOT
+#options	BOOTP_COMPAT
+#options	BOOTP
+#options	BOOTP_NFSV3
+#options	BOOTP_WIRED_TO=ffec0
+
+device		mmc			# mmc/sd bus
+device		mmcsd			# mmc/sd flash cards
+device		sdhci			# generic sdhci
+
+#options		ROOTDEVNAME=\"nfs:10.5.0.1:/tftpboot/cosmic\"
+#options		ROOTDEVNAME=\"nandfs:/dev/gnand0s.root\"
+options		ROOTDEVNAME=\"ufs:/dev/da0\"
+
+#options	SMP
+
+# Pseudo devices
+
+device		loop
+device		random
+device		pty
+device		md
+device		gpio
+
+# USB support
+device		usb
+options		USB_DEBUG
+#options	USB_REQ_DEBUG
+#options	USB_VERBOSE
+#device		musb
+device		ehci
+#device		ohci
+
+device		umass
+device		scbus			# SCSI bus (required for SCSI)
+device		da			# Direct Access (disks)
+device		pass
+
+# SATA
+#device		ata
+#device		atadisk
+#device		mvs
+
+device		nand
+
+# Serial ports
+device		uart
+
+# I2C (TWSI)
+#device		iic
+#device		iicbus
+
+# Ethernet
+device		ether
+device		ffec
+
+# USB ethernet support, requires miibus
+device		miibus
+device		axe			# ASIX Electronics USB Ethernet
+device		bpf			# Berkeley packet filter
+
+#FDT
+options		FDT
+options		FDT_DTB_STATIC
+makeoptions	FDT_DTS_FILE=vybrid-cosmic.dts

Modified: stable/10/sys/arm/conf/DIGI-CCWMX53
==============================================================================
--- stable/10/sys/arm/conf/DIGI-CCWMX53	Wed May 14 19:18:58 2014	(r266084)
+++ stable/10/sys/arm/conf/DIGI-CCWMX53	Wed May 14 20:11:20 2014	(r266085)
@@ -65,7 +65,7 @@ options 	VFP			# vfp/neon
 #options 	BOOTP_COMPAT
 #options 	BOOTP_NFSROOT
 #options 	BOOTP_NFSV3
-#options 	BOOTP_WIRED_TO=ue0
+#options 	BOOTP_WIRED_TO=ffec0
 
 #options 	ROOTDEVNAME=\"ufs:ada0s2a\"
 
@@ -105,8 +105,12 @@ device		ether		# Ethernet support
 #device		faith		# IPv6-to-IPv4 relaying (translation)
 #device		firmware	# firmware assist module
 
+# Ethernet
+device		ffec		# Freescale Fast Ethernet Controller
+device		miibus		# Standard mii bus
+
 # Serial (COM) ports
-#device		uart		# Multi-uart driver
+device		uart		# Multi-uart driver
 options 	ALT_BREAK_TO_DEBUGGER
 
 device		ata
@@ -130,13 +134,13 @@ device		cd		# CD
 device		pass		# Passthrough device (direct SCSI access)
 
 # USB support
-#options 	USB_DEBUG	# enable debug msgs
-#device		ehci		# OHCI USB interface
-#device		usb		# USB Bus (required)
-#device		umass		# Disks/Mass storage - Requires scbus and da
-#device		uhid		# "Human Interface Devices"
+options 	USB_DEBUG	# enable debug msgs
+device		ehci		# OHCI USB interface
+device		usb		# USB Bus (required)
+device		umass		# Disks/Mass storage - Requires scbus and da
+device		uhid		# "Human Interface Devices"
 #device		ukbd		# Allow keyboard like HIDs to control console
-#device		ums
+device		ums
 
 # USB Ethernet, requires miibus
 #device		miibus

Copied: stable/10/sys/arm/conf/RADXA (from r256950, head/sys/arm/conf/RADXA)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/sys/arm/conf/RADXA	Wed May 14 20:11:20 2014	(r266085, copy of r256950, head/sys/arm/conf/RADXA)
@@ -0,0 +1,119 @@
+# RADXA -- Custom configuration for the RADXA ARM development
+# platform, check out http://www.radxa.com
+#
+# For more information on this file, please read the handbook section on
+# Kernel Configuration Files:
+#
+#    http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
+#
+# The handbook is also available locally in /usr/share/doc/handbook
+# if you've installed the doc distribution, otherwise always see the
+# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
+# latest information.
+#
+# An exhaustive list of options and more detailed explanations of the
+# device lines is also present in the ../../conf/NOTES and NOTES files.
+# If you are in doubt as to the purpose or necessity of a line, check first
+# in NOTES.
+#
+# $FreeBSD$
+
+ident		RADXA
+
+include		"../rockchip/std.rk30xx"
+
+makeoptions	MODULES_OVERRIDE=""
+makeoptions	WITHOUT_MODULES="ahc"
+
+options		HZ=100
+options		SCHED_4BSD		#4BSD scheduler
+options		INET			#InterNETworking
+options		INET6			#IPv6 communications protocols
+options		FFS			#Berkeley Fast Filesystem
+options		SOFTUPDATES		#Enable FFS soft updates support
+options		UFS_ACL			#Support for access control lists
+options		UFS_DIRHASH		#Improve performance on big directories
+options		MSDOSFS			#MSDOS Filesystem
+options		CD9660			#ISO 9660 Filesystem
+options		PROCFS			#Process filesystem (requires PSEUDOFS)
+options		PSEUDOFS		#Pseudo-filesystem framework
+options		COMPAT_43		#Compatible with BSD 4.3 [KEEP THIS!]
+options		SCSI_DELAY=5000		#Delay (in ms) before probing SCSI
+options		KTRACE			#ktrace(1) support
+options		SYSVSHM			#SYSV-style shared memory
+options		SYSVMSG			#SYSV-style message queues
+options		SYSVSEM			#SYSV-style semaphores
+options		_KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
+options		KBD_INSTALL_CDEV	# install a CDEV entry in /dev
+options		PREEMPTION
+options		FREEBSD_BOOT_LOADER
+options		VFP		# vfp/neon
+
+# Debugging
+makeoptions	DEBUG=-g		#Build kernel with gdb(1) debug symbols
+options		BREAK_TO_DEBUGGER
+#options	VERBOSE_SYSINIT		#Enable verbose sysinit messages
+options		KDB
+options		DDB			#Enable the kernel debugger
+#options	INVARIANTS		#Enable calls of extra sanity checking
+#options	INVARIANT_SUPPORT	#Extra sanity checks of internal structures, required by INVARIANTS
+options		WITNESS			#Enable checks to detect deadlocks and cycles
+options		WITNESS_SKIPSPIN	#Don't run witness on spinlocks for speed
+options		DIAGNOSTIC
+
+# NFS support
+#options	NFSCL
+#options	NFSSERVER		#Network Filesystem Server
+#options	NFSCLIENT		#Network Filesystem Client
+
+# MMC/SD/SDIO card slot support
+#device		mmc			# mmc/sd bus
+#device		mmcsd			# mmc/sd flash cards
+
+# Boot device is 2nd slice on MMC/SD card
+options		ROOTDEVNAME=\"ufs:/dev/da0s2\"
+
+# Console and misc
+device		uart
+device		uart_ns8250
+device		pty
+device		snp
+device		md
+device		random			# Entropy device
+
+# I2C support
+#device		iicbus
+#device		iic
+
+# GPIO
+device		gpio
+
+device		scbus			# SCSI bus (required for SCSI)
+device		da			# Direct Access (disks)
+device		pass
+
+# USB support
+device		usb
+options		USB_DEBUG
+#options	USB_REQ_DEBUG
+#options	USB_VERBOSE
+device		dwcotg			#DWC OTG controller
+
+device		umass
+
+# Ethernet
+device		loop
+device		ether
+device		mii
+device		smscphy
+device		bpf
+
+# USB ethernet support, requires miibus
+device		miibus
+device		udav
+
+# Flattened Device Tree
+options		FDT
+options		FDT_DTB_STATIC
+makeoptions	FDT_DTS_FILE=rk3188-radxa.dts
+

Modified: stable/10/sys/boot/fdt/dts/digi-ccwmx53.dts
==============================================================================
--- stable/10/sys/boot/fdt/dts/digi-ccwmx53.dts	Wed May 14 19:18:58 2014	(r266084)
+++ stable/10/sys/boot/fdt/dts/digi-ccwmx53.dts	Wed May 14 20:11:20 2014	(r266085)
@@ -101,6 +101,10 @@
 			};
 		};
 		aips@60000000 {
+			ethernet@63fec000 {
+				status = "okay";
+				phy-mode = "rmii";
+			};
 			i2c@63fc4000 {
 				status = "okay";
 			};

Copied: stable/10/sys/boot/fdt/dts/rk3188-radxa.dts (from r256948, head/sys/boot/fdt/dts/rk3188-radxa.dts)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/sys/boot/fdt/dts/rk3188-radxa.dts	Wed May 14 20:11:20 2014	(r266085, copy of r256948, head/sys/boot/fdt/dts/rk3188-radxa.dts)
@@ -0,0 +1,59 @@
+/*-
+ * Copyright (c) 2013 Ganbold Tsagaankhuu <ganbold@gmail.com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+/dts-v1/;
+
+/include/ "rk3188.dtsi"
+
+/ {
+	model = "Radxa RadxaRock";
+
+	memory {
+		device_type = "memory";
+		reg = < 0x60000000 0x80000000 >;	/* 2GB RAM */
+	};
+
+	aliases {
+		soc = &SOC;
+	};
+
+	SOC: rk3188 {
+
+		uart2: serial@20064000 {
+			status = "okay";
+		};
+
+	};
+
+	chosen {
+		bootargs = "-v";
+		stdin = &uart2;
+		stdout = &uart2;
+	};
+};
+

Copied: stable/10/sys/boot/fdt/dts/rk3188.dtsi (from r256948, head/sys/boot/fdt/dts/rk3188.dtsi)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/sys/boot/fdt/dts/rk3188.dtsi	Wed May 14 20:11:20 2014	(r266085, copy of r256948, head/sys/boot/fdt/dts/rk3188.dtsi)
@@ -0,0 +1,251 @@
+/*-
+ * Copyright (c) 2013 Ganbold Tsagaankhuu <ganbold@gmail.com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+/ {
+	compatible = "rockchip,rk3188";
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	aliases {
+		soc = &SOC;
+	};
+
+	SOC: rk3188 {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		compatible = "simple-bus";
+		ranges;
+		bus-frequency = <0>;
+
+		GIC: interrupt-controller@1013d000 {
+			compatible = "arm,gic";
+			reg =	<0x1013d000 0x1000>,	/* Distributor Registers */
+				<0x1013c100 0x0100>;	/* CPU Interface Registers */
+			interrupt-controller;
+			#interrupt-cells = <1>;
+		};
+
+		pmu@20004000 {
+			compatible = "rockchip,rk30xx-pmu";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			reg = <0x20004000 0x100>;
+		};
+
+		grf@20008000 {
+			compatible = "rockchip,rk30xx-grf";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			reg = < 0x20008000 0x2000 >;
+		};
+
+		mp_tmr@1013c600 {
+			compatible = "arm,mpcore-timers";
+			#address-cells = <1>;
+			#size-cells = <0>;
+			clock-frequency = < 148500000 >;
+			reg =	<0x1013c200 0x100>,	/* Global Timer Regs */
+				<0x1013c600 0x20>;	/* Private Timer Regs */
+			interrupts = < 27 29 >;
+			interrupt-parent = <&GIC>;
+		};
+
+		timer@20038000 {
+			compatible = "rockchip,rk30xx-timer";
+			compatible = "rockchip,rk3188-dw-apb-timer-osc";
+			reg = <0x20038000 0x20>;
+			interrupts = <76>;
+			clocks = <24000000>;
+			status = "disabled";
+		};
+
+		timer@20038020 {
+			compatible = "rockchip,rk30xx-timer";
+			reg = <0x20038020 0x20>;
+			interrupts = <77>;
+			clocks = <24000000>;
+			status = "disabled";
+		};
+
+		timer@20038060 {
+			compatible = "rockchip,rk30xx-timer";
+			reg = <0x20038060 0x20>;
+			interrupts = <91>;
+			clocks = <24000000>;
+			status = "disabled";
+		};
+
+		timer@20038080 {
+			compatible = "rockchip,rk30xx-timer";
+			reg = <0x20038080 0x20>;
+			interrupts = <92>;
+			clocks = <24000000>;
+			status = "disabled";
+		};
+
+		timer@200380a0 {
+			compatible = "rockchip,rk30xx-timer";
+			reg = <0x200380a0 0x20>;
+			interrupts = <96>;
+			clocks = <24000000>;
+			status = "disabled";
+		};
+
+		watchdog@2004c000 {
+			compatible = "rockchip,rk30xx-wdt";
+			reg = <0x2004c000 0x100>;
+		};
+
+		gpio0: gpio@2000a000 {
+			compatible = "rockchip,rk30xx-gpio";
+			gpio-controller;
+			#gpio-cells = <2>;
+			reg = <0x2000a000 0x100>;
+			interrupts = <86>;
+			interrupt-parent = <&GIC>;
+		};
+
+		gpio1: gpio@2003c000 {
+			compatible = "rockchip,rk30xx-gpio";
+			gpio-controller;
+			#gpio-cells = <2>;
+			reg = <0x2003c000 0x100>;
+			interrupts = <87>;
+			interrupt-parent = <&GIC>;
+		};
+
+		gpio2: gpio@2003e000 {
+			compatible = "rockchip,rk30xx-gpio";
+			gpio-controller;
+			#gpio-cells = <2>;
+			reg = <0x2003e000 0x100>;
+			interrupts = <88>;
+			interrupt-parent = <&GIC>;
+		};
+
+		gpio3: gpio@20080000 {
+			compatible = "rockchip,rk30xx-gpio";
+			gpio-controller;
+			#gpio-cells = <2>;
+			reg = <0x20080000 0x100>;
+			interrupts = <89>;
+			interrupt-parent = <&GIC>;
+		};
+
+		usb0: usb@10180000 {
+			compatible = "synopsys,designware-hs-otg2";
+			reg = <0x10180000 0x40000>;
+			interrupts = <48>;
+			interrupt-parent = <&GIC>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+		};
+
+		usb1: usb@101c0000 {
+			compatible = "synopsys,designware-hs-otg2";
+			reg = <0x101c0000 0x40000>;
+			interrupts = < 49 >;
+			interrupt-parent = <&GIC>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+		};
+
+		uart0: serial@10124000 {
+			compatible = "ns16550";
+			reg = <0x10124000 0x400>;
+			reg-shift = <2>;
+			interrupts = <66>;
+			interrupt-parent = <&GIC>;
+			current-speed = <115200>;
+			clock-frequency = < 24000000 >;
+			busy-detect = <1>;
+			broken-txfifo = <1>;
+			status = "disabled";
+		};
+
+		uart1: serial@10126000 {
+			compatible = "ns16550";
+			reg = <0x10126000 0x400>;
+			reg-shift = <2>;
+			interrupts = <67>;
+			interrupt-parent = <&GIC>;
+			current-speed = <115200>;
+			clock-frequency = < 24000000 >;
+			busy-detect = <1>;
+			broken-txfifo = <1>;
+			status = "disabled";
+		};
+
+		uart2: serial@20064000 {
+			compatible = "ns16550";
+			reg = <0x20064000 0x400>;
+			reg-shift = <2>;
+			interrupts = <68>;
+			interrupt-parent = <&GIC>;
+			current-speed = <115200>;
+			clock-frequency = < 24000000 >;
+			busy-detect = <1>;
+			broken-txfifo = <1>;
+			status = "disabled";
+		};
+
+		uart3: serial@20068000 {
+			compatible = "ns16550";
+			reg = <0x20068000 0x400>;
+			reg-shift = <2>;
+			interrupts = <69>;
+			interrupt-parent = <&GIC>;
+			current-speed = <115200>;
+			clock-frequency = < 24000000 >;
+			busy-detect = <1>;
+			broken-txfifo = <1>;
+			status = "disabled";
+		};
+
+		mmc@10214000 {
+			compatible = "rockchip,rk30xx-mmc";
+			reg = <0x10214000 0x1000>;
+			interrupts = <55>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			clocks = <24000000>;	/* TODO: verify freq */
+			status = "disabled";
+		};
+
+		mmc@10218000 {
+			compatible = "rockchip,rk30xx-mmc";
+			reg = <0x10218000 0x1000>;
+			interrupts = <56>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			clocks = <24000000>;	/* TODO: verify freq */
+			status = "disabled";
+		};
+	};
+};
+

Copied: stable/10/sys/boot/fdt/dts/vybrid-cosmic.dts (from r258057, head/sys/boot/fdt/dts/vybrid-cosmic.dts)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/sys/boot/fdt/dts/vybrid-cosmic.dts	Wed May 14 20:11:20 2014	(r266085, copy of r258057, head/sys/boot/fdt/dts/vybrid-cosmic.dts)
@@ -0,0 +1,56 @@
+/*-
+ * Copyright (c) 2013 Ruslan Bukin <br@bsdpad.com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+/dts-v1/;
+
+/include/ "vybrid.dtsi"
+
+/ {
+	model = "Cosmic Board";
+
+	memory {
+		device_type = "memory";
+		reg = < 0x80000000 0x10000000 >;	/* 256MB RAM */
+	};
+
+	SOC: vybrid {
+		serial0: serial@40027000 {
+			status = "disabled";
+		};
+
+		fec0: ethernet@400D0000 {
+			status = "disabled";
+		};
+	};
+
+	chosen {
+		bootargs = "-v";
+		stdin = "serial1";
+		stdout = "serial1";
+	};
+};

Copied: stable/10/sys/boot/fdt/dts/vybrid.dtsi (from r258057, head/sys/boot/fdt/dts/vybrid.dtsi)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/sys/boot/fdt/dts/vybrid.dtsi	Wed May 14 20:11:20 2014	(r266085, copy of r258057, head/sys/boot/fdt/dts/vybrid.dtsi)
@@ -0,0 +1,223 @@
+/*-
+ * Copyright (c) 2013 Ruslan Bukin <br@bsdpad.com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+/ {
+	model = "Freescale Vybrid Family";
+	compatible = "freescale,vybrid", "fsl,vf";
+	#address-cells = <1>;
+	#size-cells = <1>;
+
+	interrupt-parent = <&GIC>;
+
+	aliases {
+		soc = &SOC;
+		serial0 = &serial0;
+		serial1 = &serial1;
+		src = &SRC;
+	};
+
+	SOC: vybrid {
+		#address-cells = <1>;
+		#size-cells = <1>;
+		compatible = "simple-bus";
+		ranges;
+		bus-frequency = <0>;
+
+		SRC: src@4006E000 {
+			compatible = "fsl,mvf600-src";
+			reg = <0x4006E000 0x100>;
+		};
+
+		mscm@40001000 {
+			compatible = "fsl,mvf600-mscm";
+			reg = <0x40001000 0x1000>;
+		};
+
+		GIC: interrupt-controller@01c81000 {
+			compatible = "arm,gic";
+			reg = 	<0x40003000 0x1000>,	/* Distributor Registers */
+				<0x40002100 0x100>;	/* CPU Interface Registers */
+			interrupt-controller;
+			#interrupt-cells = <1>;
+		};
+
+		anadig@40050000 {
+			compatible = "fsl,mvf600-anadig";
+			reg = <0x40050000 0x300>;
+		};
+
+		ccm@4006b000 {
+			compatible = "fsl,mvf600-ccm";
+			reg = <0x4006b000 0x1000>;
+		};
+
+		mp_tmr@40002100 {
+			compatible = "arm,mpcore-timers";
+			clock-frequency = <133000000>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+			reg = < 0x40002200 0x100 >, /* Global Timer Registers */
+			      < 0x40002600 0x100 >; /* Private Timer Registers */
+			interrupts = < 27 29 >;
+			interrupt-parent = < &GIC >;
+		};
+
+		pit@40037000 {
+			compatible = "fsl,mvf600-pit";
+			reg = <0x40037000 0x1000>;
+			interrupts = < 71 >;
+			interrupt-parent = <&GIC>;
+			clock-frequency = < 24000000 >;
+		};
+
+		lptmr@40040000 {
+			compatible = "fsl,mvf600-lptmr";
+			reg = <0x40040000 0x1000>;
+			interrupts = < 72 >;
+			interrupt-parent = <&GIC>;
+			clock-frequency = < 24000000 >;
+		};
+
+		iomuxc@40048000 {
+			compatible = "fsl,mvf600-iomuxc";
+			reg = <0x40048000 0x1000>;
+		};
+
+		gpio@400FF000 {
+			compatible = "fsl,mvf600-gpio";
+			reg = <0x400FF000 0x200>;
+			#gpio-cells = <3>;
+			gpio-controller;
+			interrupts = < 139 140 141 142 143 >;
+			interrupt-parent = <&GIC>;
+
+		};
+
+		nand@400E0000 {
+			#address-cells = <1>;
+			#size-cells = <1>;
+			compatible = "fsl,mvf600-nand";
+			reg = <0x400E0000 0x10000>;
+			interrupts = < 115 >;
+			interrupt-parent = <&GIC>;
+
+			partition@40000 {
+				reg = <0x40000 0x200000>; /* 2MB */
+				label =	"u-boot";
+				read-only;
+			};
+
+			partition@240000 {
+				reg = <0x240000 0x200000>; /* 2MB */
+				label =	"test";
+			};
+
+			partition@440000 {
+				reg = <0x440000 0xa00000>; /* 10MB */
+				label =	"kernel";
+			};
+
+			partition@e40000 {
+				reg = <0xe40000 0x1e000000>; /* 480MB */
+				label =	"root";
+			};
+
+		};
+
+		sdhci0: sdhci@400B1000 {
+			compatible = "fsl,mvf600-sdhci";
+			reg = <0x400B1000 0x1000>;
+			interrupts = < 59 >;
+			interrupt-parent = <&GIC>;
+			clock-frequency = <50000000>;
+		};
+
+		sdhci1: sdhci@400B2000 {
+			compatible = "fsl,mvf600-sdhci";
+			reg = <0x400B2000 0x1000>;
+			interrupts = < 60 >;
+			interrupt-parent = <&GIC>;
+			clock-frequency = <50000000>;
+		};
+
+		serial0: serial@40027000 {
+			compatible = "fsl,mvf600-uart";
+			reg = <0x40027000 0x1000>;
+			interrupts = <93>;
+			interrupt-parent = <&GIC>;
+			current-speed = <115200>;
+			clock-frequency = < 24000000 >;
+		};
+
+		serial1: serial@40028000 {
+			compatible = "fsl,mvf600-uart";
+			reg = <0x40028000 0x1000>;
+			interrupts = <94>;
+			interrupt-parent = <&GIC>;
+			current-speed = <115200>;
+			clock-frequency = < 24000000 >;
+		};
+
+		usb@40034000 {
+			compatible = "fsl,mvf600-usb-ehci", "usb-ehci";
+			reg = < 0x40034000 0x1000 >, /* ehci */
+			      < 0x40035000 0x1000 >, /* usbc */
+			      < 0x40050800 0x100 >; /* phy */
+			interrupts = < 107 >;
+			interrupt-parent = <&GIC>;
+		};
+
+		usb@400b4000 {
+			compatible = "fsl,mvf600-usb-ehci", "usb-ehci";
+			reg = < 0x400b4000 0x1000 >, /* ehci */
+			      < 0x400b5000 0x1000 >, /* usbc */
+			      < 0x40050C00 0x100 >; /* phy */
+			interrupts = < 108 >;
+			interrupt-parent = <&GIC>;
+		};
+
+		fec0: ethernet@400D0000 {
+			compatible = "fsl,mvf600-fec";
+			reg = <0x400D0000 0x1000>;
+			interrupts = < 110 >;
+			interrupt-parent = <&GIC>;
+			phy-mode = "rmii";
+			phy-disable-preamble;
+		};
+
+		fec1: ethernet@400D1000 {
+			compatible = "fsl,mvf600-fec";
+			reg = <0x400D1000 0x1000>;
+			interrupts = < 111 >;
+			interrupt-parent = <&GIC>;
+			phy-mode = "rmii";
+			phy-disable-preamble;
+		};
+
+	};
+};

Modified: stable/10/sys/dev/uart/uart.h
==============================================================================
--- stable/10/sys/dev/uart/uart.h	Wed May 14 19:18:58 2014	(r266084)
+++ stable/10/sys/dev/uart/uart.h	Wed May 14 20:11:20 2014	(r266085)
@@ -75,6 +75,7 @@ extern struct uart_class uart_lpc_class 
 extern struct uart_class uart_pl011_class __attribute__((weak));
 extern struct uart_class uart_cdnc_class __attribute__((weak));
 extern struct uart_class uart_ti8250_class __attribute__((weak));
+extern struct uart_class uart_vybrid_class __attribute__((weak));
 
 #ifdef FDT
 struct ofw_compat_data;

Modified: stable/10/sys/dev/uart/uart_bus_fdt.c
==============================================================================
--- stable/10/sys/dev/uart/uart_bus_fdt.c	Wed May 14 19:18:58 2014	(r266084)
+++ stable/10/sys/dev/uart/uart_bus_fdt.c	Wed May 14 20:11:20 2014	(r266085)
@@ -80,6 +80,7 @@ static struct ofw_compat_data compat_dat
 	{"fsl,imx27-uart",	(uintptr_t)&uart_imx_class},
 	{"fsl,imx25-uart",	(uintptr_t)&uart_imx_class},
 	{"fsl,imx21-uart",	(uintptr_t)&uart_imx_class},
+	{"fsl,mvf600-uart",	(uintptr_t)&uart_vybrid_class},
 	{"lpc,uart",		(uintptr_t)&uart_lpc_class},
 	{"ti,ns16550",		(uintptr_t)&uart_ti8250_class},
 	{"ns16550",		(uintptr_t)&uart_ns8250_class},

Copied: stable/10/sys/dev/usb/controller/dwc_otg_fdt.c (from r256839, head/sys/dev/usb/controller/dwc_otg_fdt.c)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/10/sys/dev/usb/controller/dwc_otg_fdt.c	Wed May 14 20:11:20 2014	(r266085, copy of r256839, head/sys/dev/usb/controller/dwc_otg_fdt.c)
@@ -0,0 +1,211 @@
+/*-
+ * Copyright (c) 2012 Hans Petter Selasky. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <sys/stdint.h>
+#include <sys/stddef.h>
+#include <sys/param.h>
+#include <sys/queue.h>
+#include <sys/types.h>
+#include <sys/systm.h>
+#include <sys/kernel.h>
+#include <sys/bus.h>
+#include <sys/module.h>
+#include <sys/lock.h>
+#include <sys/mutex.h>
+#include <sys/condvar.h>
+#include <sys/sysctl.h>
+#include <sys/sx.h>
+#include <sys/unistd.h>

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201405142011.s4EKBKpM032405>