Author: ian
Date: Wed Feb 11 22:35:32 2015
New Revision: 278599
URL: https://svnweb.freebsd.org/changeset/base/278599

Log:
  MFC r266943, r266950, r267390:
  
    Add support for Exynos 5420 Octa - 8-core (big.LITTLE) ARM machine
    Enable SMP for both Exynos5 models we support.

Added:
  stable/10/sys/arm/conf/ARNDALE-OCTA
     - copied unchanged from r266943, head/sys/arm/conf/ARNDALE-OCTA
  stable/10/sys/arm/conf/EXYNOS5.common
     - copied, changed from r266943, head/sys/arm/conf/EXYNOS5.common
  stable/10/sys/arm/conf/EXYNOS5250
     - copied, changed from r266943, head/sys/arm/conf/EXYNOS5250
  stable/10/sys/arm/conf/EXYNOS5420
     - copied, changed from r266943, head/sys/arm/conf/EXYNOS5420
  stable/10/sys/arm/samsung/exynos/std.exynos5250
     - copied unchanged from r266943, head/sys/arm/samsung/exynos/std.exynos5250
  stable/10/sys/arm/samsung/exynos/std.exynos5420
     - copied unchanged from r266943, head/sys/arm/samsung/exynos/std.exynos5420
  stable/10/sys/boot/fdt/dts/arm/exynos5.dtsi
     - copied unchanged from r266943, head/sys/boot/fdt/dts/arm/exynos5.dtsi
  stable/10/sys/boot/fdt/dts/arm/exynos5420-arndale-octa.dts
     - copied unchanged from r266943, 
head/sys/boot/fdt/dts/arm/exynos5420-arndale-octa.dts
  stable/10/sys/boot/fdt/dts/arm/exynos5420.dtsi
     - copied unchanged from r266943, head/sys/boot/fdt/dts/arm/exynos5420.dtsi
Deleted:
  stable/10/sys/arm/samsung/exynos/std.exynos5
Modified:
  stable/10/sys/arm/conf/ARNDALE
  stable/10/sys/arm/conf/CHROMEBOOK
  stable/10/sys/boot/fdt/dts/arm/exynos5250-arndale.dts
  stable/10/sys/boot/fdt/dts/arm/exynos5250.dtsi
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/arm/conf/ARNDALE
==============================================================================
--- stable/10/sys/arm/conf/ARNDALE      Wed Feb 11 22:03:23 2015        
(r278598)
+++ stable/10/sys/arm/conf/ARNDALE      Wed Feb 11 22:35:32 2015        
(r278599)
@@ -19,7 +19,7 @@
 
 #NO_UNIVERSE
 
-include                "EXYNOS5250.common"
+include                "EXYNOS5250"
 ident          ARNDALE
 
 #FDT

Copied: stable/10/sys/arm/conf/ARNDALE-OCTA (from r266943, 
head/sys/arm/conf/ARNDALE-OCTA)
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ stable/10/sys/arm/conf/ARNDALE-OCTA Wed Feb 11 22:35:32 2015        
(r278599, copy of r266943, head/sys/arm/conf/ARNDALE-OCTA)
@@ -0,0 +1,28 @@
+# Kernel configuration for Arndale Octa Board (Exynos 5420)
+#
+# 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$
+
+#NO_UNIVERSE
+
+include                "EXYNOS5420"
+ident          ARNDALE-OCTA
+
+#FDT
+options        FDT
+options        FDT_DTB_STATIC
+makeoptions    FDT_DTS_FILE=exynos5420-arndale-octa.dts

Modified: stable/10/sys/arm/conf/CHROMEBOOK
==============================================================================
--- stable/10/sys/arm/conf/CHROMEBOOK   Wed Feb 11 22:03:23 2015        
(r278598)
+++ stable/10/sys/arm/conf/CHROMEBOOK   Wed Feb 11 22:35:32 2015        
(r278599)
@@ -17,7 +17,7 @@
 #
 # $FreeBSD$
 
-include                "EXYNOS5250.common"
+include                "EXYNOS5250"
 ident          CHROMEBOOK
 
 hints          "CHROMEBOOK.hints"

Copied and modified: stable/10/sys/arm/conf/EXYNOS5.common (from r266943, 
head/sys/arm/conf/EXYNOS5.common)
==============================================================================
--- head/sys/arm/conf/EXYNOS5.common    Sun Jun  1 08:15:34 2014        
(r266943, copy source)
+++ stable/10/sys/arm/conf/EXYNOS5.common       Wed Feb 11 22:35:32 2015        
(r278599)
@@ -51,6 +51,8 @@ options       PREEMPTION
 options        FREEBSD_BOOT_LOADER
 options        VFP                     # vfp/neon
 
+options        SMP
+
 # Debugging
 makeoptions    DEBUG=-g                # Build kernel with gdb(1) debug symbols
 options        BREAK_TO_DEBUGGER

Copied and modified: stable/10/sys/arm/conf/EXYNOS5250 (from r266943, 
head/sys/arm/conf/EXYNOS5250)
==============================================================================
--- head/sys/arm/conf/EXYNOS5250        Sun Jun  1 08:15:34 2014        
(r266943, copy source)
+++ stable/10/sys/arm/conf/EXYNOS5250   Wed Feb 11 22:35:32 2015        
(r278599)
@@ -17,10 +17,9 @@
 #
 # $FreeBSD$
 
+ident          EXYNOS5250
 include                "EXYNOS5.common"
 include                "../samsung/exynos/std.exynos5250"
 
-options                SMP
-
 #FDT
 options        FDT

Copied and modified: stable/10/sys/arm/conf/EXYNOS5420 (from r266943, 
head/sys/arm/conf/EXYNOS5420)
==============================================================================
--- head/sys/arm/conf/EXYNOS5420        Sun Jun  1 08:15:34 2014        
(r266943, copy source)
+++ stable/10/sys/arm/conf/EXYNOS5420   Wed Feb 11 22:35:32 2015        
(r278599)
@@ -17,6 +17,7 @@
 #
 # $FreeBSD$
 
+ident          EXYNOS5420
 include                "EXYNOS5.common"
 include                "../samsung/exynos/std.exynos5420"
 

Copied: stable/10/sys/arm/samsung/exynos/std.exynos5250 (from r266943, 
head/sys/arm/samsung/exynos/std.exynos5250)
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ stable/10/sys/arm/samsung/exynos/std.exynos5250     Wed Feb 11 22:35:32 
2015        (r278599, copy of r266943, 
head/sys/arm/samsung/exynos/std.exynos5250)
@@ -0,0 +1,21 @@
+# $FreeBSD$
+
+makeoption     ARM_LITTLE_ENDIAN
+
+cpu            CPU_CORTEXA
+machine                arm armv6
+
+options                PHYSADDR=0x40000000
+
+makeoptions    KERNPHYSADDR=0x40f00000
+options                KERNPHYSADDR=0x40f00000
+
+makeoptions    KERNVIRTADDR=0xc0f00000
+options                KERNVIRTADDR=0xc0f00000
+
+options                ARM_L2_PIPT
+
+options                IPI_IRQ_START=0
+options                IPI_IRQ_END=15
+
+files          "../samsung/exynos/files.exynos5"

Copied: stable/10/sys/arm/samsung/exynos/std.exynos5420 (from r266943, 
head/sys/arm/samsung/exynos/std.exynos5420)
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ stable/10/sys/arm/samsung/exynos/std.exynos5420     Wed Feb 11 22:35:32 
2015        (r278599, copy of r266943, 
head/sys/arm/samsung/exynos/std.exynos5420)
@@ -0,0 +1,21 @@
+# $FreeBSD$
+
+makeoption     ARM_LITTLE_ENDIAN
+
+cpu            CPU_CORTEXA
+machine                arm armv6
+
+options                PHYSADDR=0x20000000
+
+makeoptions    KERNPHYSADDR=0x20f00000
+options                KERNPHYSADDR=0x20f00000
+
+makeoptions    KERNVIRTADDR=0xc0f00000
+options                KERNVIRTADDR=0xc0f00000
+
+options                ARM_L2_PIPT
+
+options                IPI_IRQ_START=0
+options                IPI_IRQ_END=15
+
+files          "../samsung/exynos/files.exynos5"

Copied: stable/10/sys/boot/fdt/dts/arm/exynos5.dtsi (from r266943, 
head/sys/boot/fdt/dts/arm/exynos5.dtsi)
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ stable/10/sys/boot/fdt/dts/arm/exynos5.dtsi Wed Feb 11 22:35:32 2015        
(r278599, copy of r266943, head/sys/boot/fdt/dts/arm/exynos5.dtsi)
@@ -0,0 +1,284 @@
+/*-
+ * Copyright (c) 2013-2014 Ruslan Bukin <[email protected]>
+ * 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 = "samsung,exynos5";
+       #address-cells = <1>;
+       #size-cells = <1>;
+       interrupt-parent = <&GIC>;
+
+       aliases {
+               soc = &SOC;
+               serial0 = &serial0;
+               serial1 = &serial1;
+               serial2 = &serial2;
+               serial3 = &serial3;
+               clk0 = &clk0;
+               dp0 = &dp0;
+               fimd0 = &fimd0;
+       };
+
+       SOC: Exynos5@0 {
+               #address-cells = <1>;
+               #size-cells = <1>;
+               compatible = "simple-bus";
+               ranges;
+               bus-frequency = <0>;
+
+               GIC: interrupt-controller@10481000 {
+                       compatible = "arm,gic";
+                       reg =   < 0x10481000 0x1000 >,  /* Distributor 
Registers */
+                               < 0x10482000 0x2000 >;  /* CPU Interface 
Registers */
+                       interrupt-controller;
+                       #address-cells = <0>;
+                       #interrupt-cells = <1>;
+               };
+
+               combiner: interrupt-controller@10440000 {
+                       compatible = "exynos,combiner";
+                       reg = <0x10440000 0x1000>;
+                       interrupts = < 32 33 34 35 36 37 38 39
+                                      40 41 42 43 44 45 46 47
+                                      48 49 50 51 52 53 54 55
+                                      56 57 58 59 60 61 62 63 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               clk0: clk@10010000 {
+                       compatible = "exynos,clk";
+                       reg = < 0x10020000 0x20000 >;
+               };
+
+               mct {
+                       compatible = "exynos,mct";
+                       reg = < 0x101C0000 0x1000 >;
+                       clock-frequency = <24000000>;
+               };
+
+               generic_timer {
+                       compatible = "arm,armv7-timer";
+                       clock-frequency = <24000000>;
+                       interrupts = < 29 30 27 26 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               pwm {
+                       compatible = "samsung,s3c24x0-timer";
+                       reg = <0x12DD0000 0x1000>;
+                       interrupts = < 71 >;
+                       interrupt-parent = <&GIC>;
+                       clock-frequency = <24000000>;
+               };
+
+               pad0: pad@11400000 {
+                       compatible = "exynos,pad";
+                       status = "disabled";
+                       reg = <0x11400000 0x1000>, /* gpio left */
+                             <0x13400000 0x1000>, /* gpio right */
+                             <0x10D10000 0x1000>, /* gpio c2c */
+                             <0x03860000 0x1000>;
+                       interrupts = < 78 77 82 79 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               usb@12110000 {
+                       compatible = "exynos,usb-ehci", "usb-ehci";
+                       reg = <0x12110000 0x1000>, /* EHCI */
+                             <0x12130000 0x1000>, /* EHCI host ctrl */
+                             <0x10040000 0x1000>, /* Power */
+                             <0x10050230 0x10>; /* Sysreg */
+                       interrupts = < 103 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               usb@12120000 {
+                       compatible = "exynos,usb-ohci", "usb-ohci";
+                       status = "disabled";
+                       reg = <0x12120000 0x10000>;
+                       interrupts = < 103 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               sdhci@12200000 {
+                       compatible = "sdhci_generic";
+                       status = "disabled";
+                       reg = <0x12200000 0x1000>;
+                       interrupts = <107>;
+                       interrupt-parent = <&GIC>;
+                       max-frequency = <24000000>; /* TODO: verify freq */
+               };
+
+               sdhci@12210000 {
+                       compatible = "sdhci_generic";
+                       status = "disabled";
+                       reg = <0x12210000 0x1000>;
+                       interrupts = <108>;
+                       interrupt-parent = <&GIC>;
+                       max-frequency = <24000000>;
+               };
+
+               sdhci@12220000 {
+                       compatible = "sdhci_generic";
+                       status = "disabled";
+                       reg = <0x12220000 0x1000>;
+                       interrupts = <109>;
+                       interrupt-parent = <&GIC>;
+                       max-frequency = <24000000>;
+               };
+
+               sdhci@12230000 {
+                       compatible = "sdhci_generic";
+                       status = "disabled";
+                       reg = <0x12230000 0x1000>;
+                       interrupts = <110>;
+                       interrupt-parent = <&GIC>;
+                       max-frequency = <24000000>;
+               };
+
+               serial0: serial@12C00000 {
+                       compatible = "exynos";
+                       status = "disabled";
+                       reg = <0x12C00000 0x100>;
+                       interrupts = < 83 >;
+                       interrupt-parent = <&GIC>;
+                       clock-frequency = < 100000000 >;
+                       current-speed = <115200>;
+               };
+
+               serial1: serial@12C10000 {
+                       compatible = "exynos";
+                       status = "disabled";
+                       reg = <0x12C10000 0x100>;
+                       interrupts = < 84 >;
+                       interrupt-parent = <&GIC>;
+                       clock-frequency = < 100000000 >;
+                       current-speed = <115200>;
+               };
+
+               serial2: serial@12C20000 {
+                       compatible = "exynos";
+                       status = "disabled";
+                       reg = <0x12C20000 0x100>;
+                       interrupts = < 85 >;
+                       interrupt-parent = <&GIC>;
+                       clock-frequency = < 100000000 >;
+                       current-speed = <115200>;
+               };
+
+               serial3: serial@12C30000 {
+                       compatible = "exynos";
+                       status = "disabled";
+                       reg = <0x12C30000 0x100>;
+                       interrupts = < 86 >;
+                       interrupt-parent = <&GIC>;
+                       clock-frequency = < 100000000 >;
+                       current-speed = <115200>;
+               };
+
+               i2c0: i2c@12C60000 {
+                       compatible = "exynos,i2c";
+                       status = "disabled";
+                       reg = <0x12C60000 0x10000>;
+                       interrupts = < 88 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               i2c1: i2c@12C70000 {
+                       compatible = "exynos,i2c";
+                       status = "disabled";
+                       reg = <0x12C70000 0x10000>;
+                       interrupts = < 89 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               i2c2: i2c@12C80000 {
+                       compatible = "exynos,i2c";
+                       status = "disabled";
+                       reg = <0x12C80000 0x10000>;
+                       interrupts = < 90 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               i2c3: i2c@12C90000 {
+                       compatible = "exynos,i2c";
+                       status = "disabled";
+                       reg = <0x12C90000 0x10000>;
+                       interrupts = < 91 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               i2c4: i2c@12CA0000 {
+                       compatible = "exynos,i2c";
+                       status = "disabled";
+                       reg = <0x12CA0000 0x10000>;
+                       interrupts = < 92 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               i2c5: i2c@12CB0000 {
+                       compatible = "exynos,i2c";
+                       status = "disabled";
+                       reg = <0x12CB0000 0x10000>;
+                       interrupts = < 93 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               i2c6: i2c@12CC0000 {
+                       compatible = "exynos,i2c";
+                       status = "disabled";
+                       reg = <0x12CC0000 0x10000>;
+                       interrupts = < 94 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               i2c7: i2c@12CD0000 {
+                       compatible = "exynos,i2c";
+                       status = "disabled";
+                       reg = <0x12CD0000 0x10000>;
+                       interrupts = < 95 >;
+                       interrupt-parent = <&GIC>;
+               };
+
+               fimd0: fimd@14400000 {
+                       compatible = "exynos,fimd";
+                       status = "disabled";
+                       reg = < 0x14400000 0x10000 >, /* fimd */
+                             < 0x14420000 0x10000 >, /* disp */
+                             < 0x10050000 0x220 >; /* sysreg */
+                       interrupt-parent = <&GIC>;
+               };
+
+               dp0: dp@145B0000 {
+                       compatible = "exynos,dp";
+                       status = "disabled";
+                       reg = < 0x145B0000 0x10000 >,
+                             < 0x10040720 0x10 >; /* PHY */
+                       interrupt-parent = <&GIC>;
+               };
+       };
+};

Modified: stable/10/sys/boot/fdt/dts/arm/exynos5250-arndale.dts
==============================================================================
--- stable/10/sys/boot/fdt/dts/arm/exynos5250-arndale.dts       Wed Feb 11 
22:03:23 2015        (r278598)
+++ stable/10/sys/boot/fdt/dts/arm/exynos5250-arndale.dts       Wed Feb 11 
22:35:32 2015        (r278599)
@@ -44,6 +44,10 @@
                        status = "okay";
                };
 
+               serial2: serial@12C20000 {
+                       status = "okay";
+               };
+
        };
 
        chosen {

Modified: stable/10/sys/boot/fdt/dts/arm/exynos5250.dtsi
==============================================================================
--- stable/10/sys/boot/fdt/dts/arm/exynos5250.dtsi      Wed Feb 11 22:03:23 
2015        (r278598)
+++ stable/10/sys/boot/fdt/dts/arm/exynos5250.dtsi      Wed Feb 11 22:35:32 
2015        (r278599)
@@ -1,5 +1,5 @@
 /*-
- * Copyright (c) 2013 Ruslan Bukin <[email protected]>
+ * Copyright (c) 2013-2014 Ruslan Bukin <[email protected]>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -26,248 +26,27 @@
  * $FreeBSD$
  */
 
-/ {
-       compatible = "samsung,exynos5250";
-       #address-cells = <1>;
-       #size-cells = <1>;
-       interrupt-parent = <&GIC>;
+/include/ "exynos5.dtsi"
 
-       aliases {
-               soc = &SOC;
-               serial0 = &serial0;
-               serial1 = &serial1;
-               clk0 = &clk0;
-               dp0 = &dp0;
-               fimd0 = &fimd0;
-       };
+/ {
+       compatible = "samsung,exynos5250", "samsung,exynos5";
 
        SOC: Exynos5@0 {
-               #address-cells = <1>;
-               #size-cells = <1>;
-               compatible = "simple-bus";
-               ranges;
-               bus-frequency = <0>;
-
-               GIC: interrupt-controller@10481000 {
-                       compatible = "arm,gic";
-                       reg =   < 0x10481000 0x1000 >,  /* Distributor 
Registers */
-                               < 0x10482000 0x2000 >;  /* CPU Interface 
Registers */
-                       interrupt-controller;
-                       #address-cells = <0>;
-                       #interrupt-cells = <1>;
-               };
-
-               combiner: interrupt-controller@10440000 {
-                       compatible = "exynos,combiner";
-                       reg = <0x10440000 0x1000>;
-                       interrupts = < 32 33 34 35 36 37 38 39
-                                      40 41 42 43 44 45 46 47
-                                      48 49 50 51 52 53 54 55
-                                      56 57 58 59 60 61 62 63 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               clk0: clk@10010000 {
-                       compatible = "exynos,clk";
-                       reg = < 0x10020000 0x20000 >;
-               };
-
-               mct {
-                       compatible = "exynos,mct";
-                       reg = < 0x101C0000 0x1000 >;
-                       clock-frequency = <24000000>;
-               };
-
-               generic_timer {
-                       compatible = "arm,armv7-timer";
-                       clock-frequency = <24000000>;
-                       interrupts = < 29 30 27 26 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               pwm {
-                       compatible = "samsung,s3c24x0-timer";
-                       reg = <0x12DD0000 0x1000>;
-                       interrupts = < 71 >;
-                       interrupt-parent = <&GIC>;
-                       clock-frequency = <24000000>;
-               };
-
-               pad0: pad@11400000 {
-                       compatible = "exynos,pad";
-                       status = "disabled";
-                       reg = <0x11400000 0x1000>, /* gpio left */
-                             <0x13400000 0x1000>, /* gpio right */
-                             <0x10D10000 0x1000>, /* gpio c2c */
-                             <0x03860000 0x1000>;
-                       interrupts = < 78 77 82 79 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               usb@12110000 {
-                       compatible = "exynos,usb-ehci", "usb-ehci";
-                       reg = <0x12110000 0x1000>, /* EHCI */
-                             <0x12130000 0x1000>, /* EHCI host ctrl */
-                             <0x10040000 0x1000>, /* Power */
-                             <0x10050230 0x10>; /* Sysreg */
-                       interrupts = < 103 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               usb@12120000 {
-                       compatible = "exynos,usb-ohci", "usb-ohci";
-                       reg = <0x12120000 0x10000>;
-                       interrupts = < 103 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               sdhci@12200000 {
-                       compatible = "sdhci_generic";
-                       reg = <0x12200000 0x1000>;
-                       interrupts = <107>;
-                       interrupt-parent = <&GIC>;
-                       max-frequency = <24000000>; /* TODO: verify freq */
-               };
-
-               sdhci@12210000 {
-                       compatible = "sdhci_generic";
-                       reg = <0x12210000 0x1000>;
-                       interrupts = <108>;
-                       interrupt-parent = <&GIC>;
-                       max-frequency = <24000000>;
-               };
-
-               sdhci@12220000 {
-                       compatible = "sdhci_generic";
-                       reg = <0x12220000 0x1000>;
-                       interrupts = <109>;
-                       interrupt-parent = <&GIC>;
-                       max-frequency = <24000000>;
-               };
-
-               sdhci@12230000 {
-                       compatible = "sdhci_generic";
-                       reg = <0x12230000 0x1000>;
-                       interrupts = <110>;
-                       interrupt-parent = <&GIC>;
-                       max-frequency = <24000000>;
-               };
 
                serial0: serial@12C00000 {
-                       compatible = "exynos";
-                       reg = <0x12C00000 0x100>;
-                       interrupts = < 83 >;
-                       interrupt-parent = <&GIC>;
                        clock-frequency = < 100000000 >;
-                       current-speed = <115200>;
                };
 
                serial1: serial@12C10000 {
-                       compatible = "exynos";
-                       reg = <0x12C10000 0x100>;
-                       interrupts = < 84 >;
-                       interrupt-parent = <&GIC>;
                        clock-frequency = < 100000000 >;
-                       current-speed = <115200>;
                };
 
                serial2: serial@12C20000 {
-                       compatible = "exynos";
-                       reg = <0x12C20000 0x100>;
-                       interrupts = < 85 >;
-                       interrupt-parent = <&GIC>;
                        clock-frequency = < 100000000 >;
-                       current-speed = <115200>;
                };
 
                serial3: serial@12C30000 {
-                       compatible = "exynos";
-                       reg = <0x12C30000 0x100>;
-                       interrupts = < 86 >;
-                       interrupt-parent = <&GIC>;
                        clock-frequency = < 100000000 >;
-                       current-speed = <115200>;
-               };
-
-               i2c0: i2c@12C60000 {
-                       compatible = "exynos,i2c";
-                       status = "disabled";
-                       reg = <0x12C60000 0x10000>;
-                       interrupts = < 88 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               i2c1: i2c@12C70000 {
-                       compatible = "exynos,i2c";
-                       status = "disabled";
-                       reg = <0x12C70000 0x10000>;
-                       interrupts = < 89 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               i2c2: i2c@12C80000 {
-                       compatible = "exynos,i2c";
-                       status = "disabled";
-                       reg = <0x12C80000 0x10000>;
-                       interrupts = < 90 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               i2c3: i2c@12C90000 {
-                       compatible = "exynos,i2c";
-                       status = "disabled";
-                       reg = <0x12C90000 0x10000>;
-                       interrupts = < 91 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               i2c4: i2c@12CA0000 {
-                       compatible = "exynos,i2c";
-                       status = "disabled";
-                       reg = <0x12CA0000 0x10000>;
-                       interrupts = < 92 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               i2c5: i2c@12CB0000 {
-                       compatible = "exynos,i2c";
-                       status = "disabled";
-                       reg = <0x12CB0000 0x10000>;
-                       interrupts = < 93 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               i2c6: i2c@12CC0000 {
-                       compatible = "exynos,i2c";
-                       status = "disabled";
-                       reg = <0x12CC0000 0x10000>;
-                       interrupts = < 94 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               i2c7: i2c@12CD0000 {
-                       compatible = "exynos,i2c";
-                       status = "disabled";
-                       reg = <0x12CD0000 0x10000>;
-                       interrupts = < 95 >;
-                       interrupt-parent = <&GIC>;
-               };
-
-               fimd0: fimd@14400000 {
-                       compatible = "exynos,fimd";
-                       status = "disabled";
-                       reg = < 0x14400000 0x10000 >, /* fimd */
-                             < 0x14420000 0x10000 >, /* disp */
-                             < 0x10050000 0x220 >; /* sysreg */
-                       interrupt-parent = <&GIC>;
-               };
-
-               dp0: dp@145B0000 {
-                       compatible = "exynos,dp";
-                       status = "disabled";
-                       reg = < 0x145B0000 0x10000 >,
-                             < 0x10040720 0x10 >; /* PHY */
-                       interrupt-parent = <&GIC>;
                };
        };
 };

Copied: stable/10/sys/boot/fdt/dts/arm/exynos5420-arndale-octa.dts (from 
r266943, head/sys/boot/fdt/dts/arm/exynos5420-arndale-octa.dts)
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ stable/10/sys/boot/fdt/dts/arm/exynos5420-arndale-octa.dts  Wed Feb 11 
22:35:32 2015        (r278599, copy of r266943, 
head/sys/boot/fdt/dts/arm/exynos5420-arndale-octa.dts)
@@ -0,0 +1,51 @@
+/*-
+ * Copyright (c) 2014 Ruslan Bukin <[email protected]>
+ * 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/ "exynos5420.dtsi"
+
+/ {
+       model = "Arndale Octa Board";
+
+       memory {
+               device_type = "memory";
+               reg = < 0x20000000 0x40000000 >;  /* 1G */
+       };
+
+       SOC: Exynos5@0 {
+               serial3: serial@12C30000 {
+                       status = "okay";
+               };
+       };
+
+       chosen {
+               stdin = &serial3;
+               stdout = &serial3;
+       };
+};

Copied: stable/10/sys/boot/fdt/dts/arm/exynos5420.dtsi (from r266943, 
head/sys/boot/fdt/dts/arm/exynos5420.dtsi)
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ stable/10/sys/boot/fdt/dts/arm/exynos5420.dtsi      Wed Feb 11 22:35:32 
2015        (r278599, copy of r266943, 
head/sys/boot/fdt/dts/arm/exynos5420.dtsi)
@@ -0,0 +1,52 @@
+/*-
+ * Copyright (c) 2014 Ruslan Bukin <[email protected]>
+ * 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$
+ */
+
+/include/ "exynos5.dtsi"
+
+/ {
+       compatible = "samsung,exynos5420", "samsung,exynos5";
+
+       SOC: Exynos5@0 {
+
+               serial0: serial@12C00000 {
+                       clock-frequency = < 50000000 >;
+               };
+
+               serial1: serial@12C10000 {
+                       clock-frequency = < 50000000 >;
+               };
+
+               serial2: serial@12C20000 {
+                       clock-frequency = < 50000000 >;
+               };
+
+               serial3: serial@12C30000 {
+                       clock-frequency = < 50000000 >;
+               };
+       };
+};
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10
To unsubscribe, send any mail to "[email protected]"

Reply via email to