powerpc/85xx: Add OCA4080 board support
authorMartijn de Gouw <martijn.de.gouw@prodrive.nl>
Tue, 15 Apr 2014 17:51:46 +0000 (19:51 +0200)
committerScott Wood <scottwood@freescale.com>
Thu, 22 May 2014 23:08:20 +0000 (18:08 -0500)
OCA4080 overview:
- 1.466 GHz Freescale QorIQ P4080E Processor
- 4Gbyte DDR3 on board
- 8Mbyte Nor flash
- Serial RapidIO 1.2
- 1 x 10/100/1000 BASE-T front ethernet
- 1 x 1000 BASE-BX ethernet on AMC connector

Signed-off-by: Martijn de Gouw <martijn.de.gouw@prodrive.nl>
[scottwood@freescale.com: minor conflict-related changes]
Signed-off-by: Scott Wood <scottwood@freescale.com>
arch/powerpc/boot/dts/oca4080.dts [new file with mode: 0644]
arch/powerpc/configs/corenet32_smp_defconfig
arch/powerpc/platforms/85xx/Kconfig
arch/powerpc/platforms/85xx/corenet_generic.c

diff --git a/arch/powerpc/boot/dts/oca4080.dts b/arch/powerpc/boot/dts/oca4080.dts
new file mode 100644 (file)
index 0000000..3d4c751
--- /dev/null
@@ -0,0 +1,118 @@
+/*
+ * OCA4080 Device Tree Source
+ *
+ * Copyright 2014 Prodrive Technologies B.V.
+ *
+ * Based on:
+ * P4080DS Device Tree Source
+ * Copyright 2009-2011 Freescale Semiconductor Inc.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * 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.
+ *     * Neither the name of Freescale Semiconductor nor the
+ *       names of its contributors may be used to endorse or promote products
+ *       derived from this software without specific prior written permission.
+ *
+ *
+ * ALTERNATIVELY, this software may be distributed under the terms of the
+ * GNU General Public License ("GPL") as published by the Free Software
+ * Foundation, either version 2 of that License or (at your option) any
+ * later version.
+ *
+ * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``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 Freescale Semiconductor 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/ "fsl/p4080si-pre.dtsi"
+
+/ {
+       model = "fsl,OCA4080";
+       compatible = "fsl,OCA4080";
+       #address-cells = <2>;
+       #size-cells = <2>;
+       interrupt-parent = <&mpic>;
+
+       memory {
+               device_type = "memory";
+       };
+
+       dcsr: dcsr@f00000000 {
+               ranges = <0x00000000 0xf 0x00000000 0x01008000>;
+       };
+
+       soc: soc@ffe000000 {
+               ranges = <0x00000000 0xf 0xfe000000 0x1000000>;
+               reg = <0xf 0xfe000000 0 0x00001000>;
+
+               i2c@118000 {
+                       status = "disabled";
+               };
+
+               i2c@118100 {
+                       status = "disabled";
+               };
+
+               i2c@119000 {
+                       status = "disabled";
+               };
+
+               i2c@119100 {
+                       status = "disabled";
+               };
+
+               usb0: usb@210000 {
+                       status = "disabled";
+               };
+
+               usb1: usb@211000 {
+                       status = "disabled";
+               };
+       };
+
+       rio: rapidio@ffe0c0000 {
+               reg = <0xf 0xfe0c0000 0 0x11000>;
+
+               port1 {
+                       ranges = <0 0 0xc 0x20000000 0 0x10000000>;
+               };
+       };
+
+       lbc: localbus@ffe124000 {
+               reg = <0xf 0xfe124000 0 0x1000>;
+               ranges = <0 0 0xf 0xef800000 0x800000>;
+
+               flash@0,0 {
+                       compatible = "cfi-flash";
+                       reg = <0 0 0x00800000>;
+                       bank-width = <2>;
+                       device-width = <2>;
+               };
+       };
+
+       pci0: pcie@ffe200000 {
+               status = "disabled";
+       };
+
+       pci1: pcie@ffe201000 {
+               status = "disabled";
+       };
+
+       pci2: pcie@ffe202000 {
+               status = "disabled";
+       };
+};
+
+/include/ "fsl/p4080si-post.dtsi"
index bbd794deb6eb13a471d4097996ec57f9f9c7a092..c19ff057d0f94a822c3aee618aa58599ef3f9cd9 100644 (file)
@@ -72,6 +72,7 @@ CONFIG_MTD_CMDLINE_PARTS=y
 CONFIG_MTD_CHAR=y
 CONFIG_MTD_BLOCK=y
 CONFIG_MTD_CFI=y
+CONFIG_MTD_CFI_INTELEXT=y
 CONFIG_MTD_CFI_AMDSTD=y
 CONFIG_MTD_PHYSMAP_OF=y
 CONFIG_MTD_M25P80=y
index fb98fd6b91b5f6acf27983e2a6a4b5850e2bd7ec..a1182796a9d1be2c394228629217e010befae239 100644 (file)
@@ -263,7 +263,7 @@ config CORENET_GENERIC
        help
          This option enables support for the FSL CoreNet based boards.
          For 32bit kernel, the following boards are supported:
-           P2041 RDB, P3041 DS, P4080 DS and kmcoge4
+           P2041 RDB, P3041 DS, P4080 DS, kmcoge4, and OCA4080
          For 64bit kernel, the following boards are supported:
            T4240 QDS and B4 QDS
          The following boards are supported for both 32bit and 64bit kernel:
index ceb0dac32ade5dc2696d7810df7749b5785b1b5c..477c182e4ba5a83d9a72346e76e4ad078576575b 100644 (file)
@@ -115,6 +115,7 @@ int __init corenet_gen_publish_devices(void)
 static const char * const boards[] __initconst = {
        "fsl,P2041RDB",
        "fsl,P3041DS",
+       "fsl,OCA4080",
        "fsl,P4080DS",
        "fsl,P5020DS",
        "fsl,P5040DS",
@@ -129,6 +130,7 @@ static const char * const boards[] __initconst = {
 static const char * const hv_boards[] __initconst = {
        "fsl,P2041RDB-hv",
        "fsl,P3041DS-hv",
+       "fsl,OCA4080-hv",
        "fsl,P4080DS-hv",
        "fsl,P5020DS-hv",
        "fsl,P5040DS-hv",