* 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