* P1020WLAN RevD
 * SMP enabled kernel

Signed-off-by: Wojciech Dubowik <wojciech.dubo...@neratec.com>
---
 target/linux/mpc85xx/config-default                |   30 ++-
 target/linux/mpc85xx/image/Makefile                |    2 +-
 .../linux/mpc85xx/patches/230-p1020wlan-dts.patch  |  300 ++++++++++++++++++++
 target/linux/mpc85xx/profiles/201-p1020wlan.mk     |   17 ++
 4 files changed, 342 insertions(+), 7 deletions(-)
 create mode 100644 target/linux/mpc85xx/patches/230-p1020wlan-dts.patch
 create mode 100644 target/linux/mpc85xx/profiles/201-p1020wlan.mk

diff --git a/target/linux/mpc85xx/config-default 
b/target/linux/mpc85xx/config-default
index 2a388fc..8f3795c 100644
--- a/target/linux/mpc85xx/config-default
+++ b/target/linux/mpc85xx/config-default
@@ -15,7 +15,6 @@ CONFIG_ARCH_MAY_HAVE_PC_FDC=y
 CONFIG_ARCH_REQUIRE_GPIOLIB=y
 CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
 CONFIG_ARCH_SUPPORTS_MSI=y
-CONFIG_ARCH_SUSPEND_POSSIBLE=y
 CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
 CONFIG_AUDIT_ARCH=y
 CONFIG_BCMA_POSSIBLE=y
@@ -25,6 +24,7 @@ CONFIG_BOUNCE=y
 CONFIG_CMDLINE="console=ttyS0,115200"
 CONFIG_CMDLINE_BOOL=y
 # CONFIG_CPM2 is not set
+CONFIG_CPU_RMAP=y
 CONFIG_DEBUG_BUGVERBOSE=y
 CONFIG_DECOMPRESS_LZMA=y
 CONFIG_DEFAULT_UIMAGE=y
@@ -44,7 +44,7 @@ CONFIG_FSL_PCI=y
 CONFIG_FSL_PQ_MDIO=y
 CONFIG_FSL_SOC=y
 CONFIG_FSL_SOC_BOOKE=y
-# CONFIG_FSL_ULI1575 is not set
+CONFIG_FSL_ULI1575=y
 CONFIG_GENERIC_ATOMIC64=y
 CONFIG_GENERIC_BUG=y
 CONFIG_GENERIC_CLOCKEVENTS=y
@@ -57,7 +57,7 @@ CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
 CONFIG_GENERIC_ISA_DMA=y
 CONFIG_GENERIC_NVRAM=y
 CONFIG_GENERIC_PCI_IOMAP=y
-# CONFIG_GENERIC_TBSYNC is not set
+CONFIG_GENERIC_TBSYNC=y
 CONFIG_GENERIC_TIME_VSYSCALL=y
 CONFIG_GEN_RTC=y
 # CONFIG_GEN_RTC_X is not set
@@ -89,6 +89,7 @@ CONFIG_HAVE_MEMBLOCK=y
 CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
 CONFIG_HAVE_OPROFILE=y
 CONFIG_HAVE_PERF_EVENTS=y
+CONFIG_HAVE_RCU_TABLE_FREE=y
 CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
 # CONFIG_HAVE_SETUP_PER_CPU_AREA is not set
 CONFIG_HAVE_SPARSE_IRQ=y
@@ -101,6 +102,7 @@ CONFIG_INET_TCP_DIAG=y
 CONFIG_INITRAMFS_SOURCE=""
 CONFIG_IOMMU_HELPER=y
 # CONFIG_IPIC is not set
+# CONFIG_IRQ_ALL_CPUS is not set
 CONFIG_IRQ_FORCED_THREADING=y
 CONFIG_ISA_DMA_API=y
 CONFIG_KERNEL_START=0xc0000000
@@ -124,16 +126,24 @@ CONFIG_MIGRATION=y
 CONFIG_MPC85xx_CDS=y
 # CONFIG_MPC85xx_DS is not set
 CONFIG_MPC85xx_MDS=y
-# CONFIG_MPC85xx_RDB is not set
+CONFIG_MPC85xx_RDB=y
 CONFIG_MPIC=y
 # CONFIG_MPIC_U3_HT_IRQS is not set
 # CONFIG_MPIC_WEIRD is not set
-# CONFIG_MTD is not set
+CONFIG_MTD_NAND=y
+CONFIG_MTD_NAND_ECC=y
+CONFIG_MTD_NAND_FSL_ELBC=y
+# CONFIG_MTD_OF_PARTS is not set
+CONFIG_MTD_PHYSMAP=y
+CONFIG_MTD_PHYSMAP_OF=y
+# CONFIG_MTD_SM_COMMON is not set
+# CONFIG_MTD_WRSBC8260 is not set
+CONFIG_MUTEX_SPIN_ON_OWNER=y
 # CONFIG_NEED_DMA_MAP_STATE is not set
 # CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK is not set
-CONFIG_NEED_PER_CPU_KM=y
 CONFIG_NEED_SG_DMA_LENGTH=y
 # CONFIG_NONSTATIC_KERNEL is not set
+CONFIG_NR_CPUS=4
 CONFIG_NR_IRQS=512
 CONFIG_OF=y
 CONFIG_OF_ADDRESS=y
@@ -213,6 +223,8 @@ CONFIG_PROC_PAGE_MONITOR=y
 CONFIG_QE_GPIO=y
 CONFIG_QUICC_ENGINE=y
 # CONFIG_QUOTACTL is not set
+CONFIG_RFS_ACCEL=y
+CONFIG_RPS=y
 CONFIG_RWSEM_XCHGADD_ALGORITHM=y
 # CONFIG_SBC8548 is not set
 CONFIG_SBC8560=y
@@ -229,9 +241,11 @@ CONFIG_SERIAL_OF_PLATFORM=y
 CONFIG_SIMPLE_GPIO=y
 # CONFIG_SLAB is not set
 CONFIG_SLUB=y
+CONFIG_SMP=y
 # CONFIG_SOCRATES is not set
 CONFIG_SPE=y
 # CONFIG_SQUASHFS is not set
+CONFIG_STOP_MACHINE=y
 # CONFIG_STRIP_ASM_SYMS is not set
 # CONFIG_STX_GP3 is not set
 CONFIG_SWIOTLB=y
@@ -241,12 +255,16 @@ CONFIG_TASK_SIZE=0xc0000000
 # CONFIG_TQM8548 is not set
 # CONFIG_TQM8555 is not set
 # CONFIG_TQM8560 is not set
+CONFIG_TREE_RCU=y
 CONFIG_UCC=y
 CONFIG_UCC_FAST=y
 CONFIG_UCC_GETH=y
 # CONFIG_UGETH_TX_ON_DEMAND is not set
 CONFIG_USB_ARCH_HAS_XHCI=y
 CONFIG_USB_SUPPORT=y
+CONFIG_USE_GENERIC_SMP_HELPERS=y
+CONFIG_VITESSE_PHY=y
 CONFIG_VM_EVENT_COUNTERS=y
 CONFIG_WORD_SIZE=32
 # CONFIG_XES_MPC85xx is not set
+CONFIG_XPS=y
diff --git a/target/linux/mpc85xx/image/Makefile 
b/target/linux/mpc85xx/image/Makefile
index 1d2ac85..ec4da3f 100644
--- a/target/linux/mpc85xx/image/Makefile
+++ b/target/linux/mpc85xx/image/Makefile
@@ -7,7 +7,7 @@
 include $(TOPDIR)/rules.mk
 include $(INCLUDE_DIR)/image.mk
 
-DTS_TARGETS = mpc8548cds p1010rdb
+DTS_TARGETS = mpc8548cds p1010rdb p1020wlan
 
 define Image/Prepare
        cp $(LINUX_DIR)/arch/powerpc/boot/zImage $(KDIR)/zImage
diff --git a/target/linux/mpc85xx/patches/230-p1020wlan-dts.patch 
b/target/linux/mpc85xx/patches/230-p1020wlan-dts.patch
new file mode 100644
index 0000000..9bbb36a
--- /dev/null
+++ b/target/linux/mpc85xx/patches/230-p1020wlan-dts.patch
@@ -0,0 +1,300 @@
+--- /dev/null 
++++ a/arch/powerpc/boot/dts/p1020wlan.dts 
+@@ -1,0 +1,65 @@
++/*
++ * P1020 RDB Device Tree Source
++ *
++ * Copyright 2009-2011 Freescale Semiconductor Inc.
++ *
++ * This program is free software; you can redistribute  it and/or modify it
++ * under  the terms of  the GNU General  Public License as published by the
++ * Free Software Foundation;  either version 2 of the  License, or (at your
++ * option) any later version.
++ */
++
++/include/ "fsl/p1020si-pre.dtsi"
++/ {
++      model = "fsl,P1020WLAN";
++      compatible = "fsl,P1020RDB";
++
++      memory {
++              device_type = "memory";
++      };
++
++      board_lbc: lbc: localbus@ffe05000 {
++              reg = <0 0xffe05000 0 0x1000>;
++
++              /* NOR flash and cpld */
++              ranges = <0x0 0x0 0x0 0xee000000 0x04000000
++                        0x3 0x0 0x0 0xffa00000 0x01000000>;
++      };
++
++      board_soc: soc: soc@ffe00000 {
++              ranges = <0x0 0x0 0xffe00000 0x100000>;
++      };
++
++      pci0: pcie@ffe09000 {
++              ranges = <0x2000000 0x0 0xa0000000 0 0xa0000000 0x0 0x20000000
++                        0x1000000 0x0 0x00000000 0 0xffc10000 0x0 0x10000>;
++              reg = <0 0xffe09000 0 0x1000>;
++              pcie@0 {
++                      ranges = <0x2000000 0x0 0xa0000000
++                                0x2000000 0x0 0xa0000000
++                                0x0 0x20000000
++
++                                0x1000000 0x0 0x0
++                                0x1000000 0x0 0x0
++                                0x0 0x100000>;
++              };
++      };
++
++      pci1: pcie@ffe0a000 {
++              reg = <0 0xffe0a000 0 0x1000>;
++              ranges = <0x2000000 0x0 0x80000000 0 0x80000000 0x0 0x20000000
++                        0x1000000 0x0 0x00000000 0 0xffc00000 0x0 0x10000>;
++              pcie@0 {
++                      ranges = <0x2000000 0x0 0x80000000
++                                0x2000000 0x0 0x80000000
++                                0x0 0x20000000
++
++                                0x1000000 0x0 0x0
++                                0x1000000 0x0 0x0
++                                0x0 0x100000>;
++              };
++      };
++};
++
++/include/ "p1020wlan.dtsi"
++/include/ "fsl/p1020si-post.dtsi"
+--- /dev/null 
++++ a/arch/powerpc/boot/dts/p1020wlan.dtsi 
+@@ -1,0 +1,229 @@
++/*
++ * P1020 RDB Device Tree Source stub (no addresses or top-level ranges)
++ *
++ * Copyright 2011-2012 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.
++ */
++
++&board_lbc {
++      nor@0,0 {
++              #address-cells = <1>;
++              #size-cells = <1>;
++              compatible = "cfi-flash";
++              reg = <0x0 0x0 0x4000000>;
++              bank-width = <2>;
++              device-width = <1>;
++
++                      partition@0 {
++                              /* 4 MB for Linux Kernel Image */
++                              reg = <0x0 0x400000>;
++                              label = "linux";
++                      };
++
++                      partition@400000 {
++                              /* 27MB for JFFS2 based Root file System */
++                              reg = <0x00400000 0x01b00000>;
++                              label = "rootfs";
++                      };
++
++                      partition@1f00000 {
++                              /* This location must not be altered  */
++                              /* 512KB for u-boot Bootloader Image */
++                              /* 512KB for u-boot Environment Variables */
++                              reg = <0x01f00000 0x00100000>;
++                              label = "NOR (RO) U-Boot Image";
++                              read-only;
++                      };
++
++                      partition@2000000 {
++                              /* This location must not be altered  */
++                              reg = <0x02000000 0x00200000>;
++                              label = "free_space";
++                      };
++      };
++
++      nand@1,0 {
++              #address-cells = <1>;
++              #size-cells = <1>;
++              compatible = "fsl,p1020-fcm-nand",
++                           "fsl,elbc-fcm-nand";
++              reg = <0x1 0x0 0x40000>;
++
++              partition@0 {
++                      /* This location must not be altered  */
++                      /* 1MB for u-boot Bootloader Image */
++                      reg = <0x0 0x00100000>;
++                      label = "NAND (RO) U-Boot Image";
++                      read-only;
++              };
++
++              partition@100000 {
++                      /* 1MB for DTB Image */
++                      reg = <0x00100000 0x00100000>;
++                      label = "NAND (RO) DTB Image";
++                      read-only;
++              };
++
++              partition@200000 {
++                      /* 4MB for Linux Kernel Image */
++                      reg = <0x00200000 0x00400000>;
++                      label = "NAND (RO) Linux Kernel Image";
++                      read-only;
++              };
++
++              partition@600000 {
++                      /* 4MB for Compressed Root file System Image */
++                      reg = <0x00600000 0x00400000>;
++                      label = "NAND (RO) Compressed RFS Image";
++                      read-only;
++              };
++
++              partition@a00000 {
++                      /* 7MB for JFFS2 based Root file System */
++                      reg = <0x00a00000 0x00700000>;
++                      label = "NAND (RW) JFFS2 Root File System";
++              };
++
++              partition@1100000 {
++                      /* 15MB for JFFS2 based Root file System */
++                      reg = <0x01100000 0x00f00000>;
++                      label = "NAND (RW) Writable User area";
++              };
++      };
++
++      L2switch@2,0 {
++              #address-cells = <1>;
++              #size-cells = <1>;
++              compatible = "vitesse-7385";
++              reg = <0x2 0x0 0x20000>;
++      };
++};
++
++&board_soc {
++      i2c@3000 {
++              rtc@68 {
++                      compatible = "dallas,ds1339";
++                      reg = <0x68>;
++              };
++      };
++
++      spi@7000 {
++              flash@0 {
++                      #address-cells = <1>;
++                      #size-cells = <1>;
++                      compatible = "spansion,s25sl12801";
++                      reg = <0>;
++                      spi-max-frequency = <40000000>; /* input clock */
++
++                      partition@u-boot {
++                              /* 512KB for u-boot Bootloader Image */
++                              reg = <0x0 0x00080000>;
++                              label = "u-boot";
++                              read-only;
++                      };
++
++                      partition@dtb {
++                              /* 512KB for DTB Image */
++                              reg = <0x00080000 0x00080000>;
++                              label = "dtb";
++                              read-only;
++                      };
++
++                      partition@kernel {
++                              /* 4MB for Linux Kernel Image */
++                              reg = <0x00100000 0x00400000>;
++                              label = "kernel";
++                              read-only;
++                      };
++
++                      partition@fs {
++                              /* 4MB for Compressed RFS Image */
++                              reg = <0x00500000 0x00400000>;
++                              label = "file system";
++                              read-only;
++                      };
++
++                      partition@jffs-fs {
++                              /* 7MB for JFFS2 based RFS */
++                              reg = <0x00900000 0x00700000>;
++                              label = "file system jffs2";
++                      };
++              };
++      };
++
++      usb@22000 {
++              phy_type = "ulpi";
++              dr_mode = "host";
++      };
++
++      /* USB2 is shared with localbus. It is used
++         only in case of SPI and SD boot after
++         appropriate device-tree fixup done by uboot */
++      usb@23000 {
++              phy_type = "ulpi";
++              dr_mode = "host";
++      };
++
++      mdio@24000 {
++              phy0: ethernet-phy@0{
++                      interrupt-parent = <&mpic>;
++                      interrupts = <3 1>;
++                      reg = <0x1>;
++              };
++
++              phy1: ethernet-phy@3 {
++                      interrupt-parent = <&mpic>;
++                      interrupts = <1 1>;
++                      reg = <0x3>;
++              };
++
++              tbi-phy@2 {
++                      device_type = "tbi-phy";
++                      reg = <0x2>;
++              };
++      };
++
++      mdio@25000 {
++              tbi-phy@11 {
++                      reg = <0x11>;
++                      device_type = "tbi-phy";
++              };
++      };
++
++      enet0: ethernet@b0000 {
++              phy-handle = <&phy0>;
++              phy-connection-type = "rgmii-id";
++      };
++
++      enet2: ethernet@b2000 {
++              phy-handle = <&phy1>;
++              phy-connection-type = "rgmii-id";
++      };
++};
diff --git a/target/linux/mpc85xx/profiles/201-p1020wlan.mk 
b/target/linux/mpc85xx/profiles/201-p1020wlan.mk
new file mode 100644
index 0000000..db6d4b5
--- /dev/null
+++ b/target/linux/mpc85xx/profiles/201-p1020wlan.mk
@@ -0,0 +1,17 @@
+#
+# Copyright (C) 2006 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/p1020wlan
+  NAME:=Freescale P1020WLAN Reference Board
+  PACKAGES:=kmod-booke-wdt kmod-i2c-mpc
+endef
+
+define Profile/p1020wlan/Description
+       Package set for Freescale P1020WLAN Reference Board
+endef
+$(eval $(call Profile,p1020wlan))
+
-- 
1.7.4.1

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to