Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

powerpc/fsl-booke: Add initial T104x_QDS board support

Add support for T104x board in board file t104x_qds.c, It is common for
both T1040 and T1042 as they share same QDS board.

T1040QDS board Overview
-----------------------
- SERDES Connections, 8 lanes supporting:
— PCI Express: supporting Gen 1 and Gen 2;
— SGMII
— QSGMII
— SATA 2.0
— Aurora debug with dedicated connectors (T1040 only)
- DDR Controller
- Supports rates of up to 1600 MHz data-rate
- Supports one DDR3LP UDIMM/RDIMMs, of single-, dual- or quad-rank types.
-IFC/Local Bus
- NAND flash: 8-bit, async, up to 2GB.
- NOR: 8-bit or 16-bit, non-multiplexed, up to 512MB
- GASIC: Simple (minimal) target within Qixis FPGA
- PromJET rapid memory download support
- Ethernet
- Two on-board RGMII 10/100/1G ethernet ports.
- PHY #0 remains powered up during deep-sleep (T1040 only)
- QIXIS System Logic FPGA
- Clocks
- System and DDR clock (SYSCLK, “DDRCLK”)
- SERDES clocks
- Power Supplies
- Video
- DIU supports video at up to 1280x1024x32bpp
- USB
- Supports two USB 2.0 ports with integrated PHYs
— Two type A ports with 5V@1.5A per port.
— Second port can be converted to OTG mini-AB
- SDHC
- SDHC port connects directly to an adapter card slot, featuring:
- Supporting SD slots for: SD, SDHC (1x, 4x, 8x) and/or MMC
— Supporting eMMC memory devices
- SPI
- On-board support of 3 different devices and sizes
- Other IO
- Two Serial ports
- ProfiBus port
- Four I2C ports

Add T104xQDS support in Kconfig and Makefile. Also create device tree.
Following features are currently not implmented.
- SerDes: Aurora
- IFC: GASIC, Promjet
- QIXIS
- Ethernet
- DIU
- power supplies management
- ProfiBus

Signed-off-by: Priyanka Jain <Priyanka.Jain@freescale.com>
Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>

authored by

Prabhakar Kushwaha and committed by
Scott Wood
0c0fc4d3 fb734eee

+263 -1
+46
arch/powerpc/boot/dts/t1040qds.dts
··· 1 + /* 2 + * T1040QDS Device Tree Source 3 + * 4 + * Copyright 2013 Freescale Semiconductor Inc. 5 + * 6 + * Redistribution and use in source and binary forms, with or without 7 + * modification, are permitted provided that the following conditions are met: 8 + * * Redistributions of source code must retain the above copyright 9 + * notice, this list of conditions and the following disclaimer. 10 + * * Redistributions in binary form must reproduce the above copyright 11 + * notice, this list of conditions and the following disclaimer in the 12 + * documentation and/or other materials provided with the distribution. 13 + * * Neither the name of Freescale Semiconductor nor the 14 + * names of its contributors may be used to endorse or promote products 15 + * derived from this software without specific prior written permission. 16 + * 17 + * 18 + * ALTERNATIVELY, this software may be distributed under the terms of the 19 + * GNU General Public License ("GPL") as published by the Free Software 20 + * Foundation, either version 2 of that License or (at your option) any 21 + * later version. 22 + * 23 + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor "AS IS" AND ANY 24 + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 25 + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 26 + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY 27 + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 28 + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 29 + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 30 + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 31 + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 32 + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 + */ 34 + 35 + /include/ "fsl/t104xsi-pre.dtsi" 36 + /include/ "t104xqds.dtsi" 37 + 38 + / { 39 + model = "fsl,T1040QDS"; 40 + compatible = "fsl,T1040QDS"; 41 + #address-cells = <2>; 42 + #size-cells = <2>; 43 + interrupt-parent = <&mpic>; 44 + }; 45 + 46 + /include/ "fsl/t1040si-post.dtsi"
+46
arch/powerpc/boot/dts/t1042qds.dts
··· 1 + /* 2 + * T1042QDS Device Tree Source 3 + * 4 + * Copyright 2013 Freescale Semiconductor Inc. 5 + * 6 + * Redistribution and use in source and binary forms, with or without 7 + * modification, are permitted provided that the following conditions are met: 8 + * * Redistributions of source code must retain the above copyright 9 + * notice, this list of conditions and the following disclaimer. 10 + * * Redistributions in binary form must reproduce the above copyright 11 + * notice, this list of conditions and the following disclaimer in the 12 + * documentation and/or other materials provided with the distribution. 13 + * * Neither the name of Freescale Semiconductor nor the 14 + * names of its contributors may be used to endorse or promote products 15 + * derived from this software without specific prior written permission. 16 + * 17 + * 18 + * ALTERNATIVELY, this software may be distributed under the terms of the 19 + * GNU General Public License ("GPL") as published by the Free Software 20 + * Foundation, either version 2 of that License or (at your option) any 21 + * later version. 22 + * 23 + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor "AS IS" AND ANY 24 + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 25 + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 26 + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY 27 + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 28 + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 29 + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 30 + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 31 + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 32 + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 + */ 34 + 35 + /include/ "fsl/t104xsi-pre.dtsi" 36 + /include/ "t104xqds.dtsi" 37 + 38 + / { 39 + model = "fsl,T1042QDS"; 40 + compatible = "fsl,T1042QDS"; 41 + #address-cells = <2>; 42 + #size-cells = <2>; 43 + interrupt-parent = <&mpic>; 44 + }; 45 + 46 + /include/ "fsl/t1042si-post.dtsi"
+166
arch/powerpc/boot/dts/t104xqds.dtsi
··· 1 + /* 2 + * T104xQDS Device Tree Source 3 + * 4 + * Copyright 2013 Freescale Semiconductor Inc. 5 + * 6 + * Redistribution and use in source and binary forms, with or without 7 + * modification, are permitted provided that the following conditions are met: 8 + * * Redistributions of source code must retain the above copyright 9 + * notice, this list of conditions and the following disclaimer. 10 + * * Redistributions in binary form must reproduce the above copyright 11 + * notice, this list of conditions and the following disclaimer in the 12 + * documentation and/or other materials provided with the distribution. 13 + * * Neither the name of Freescale Semiconductor nor the 14 + * names of its contributors may be used to endorse or promote products 15 + * derived from this software without specific prior written permission. 16 + * 17 + * 18 + * ALTERNATIVELY, this software may be distributed under the terms of the 19 + * GNU General Public License ("GPL") as published by the Free Software 20 + * Foundation, either version 2 of that License or (at your option) any 21 + * later version. 22 + * 23 + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor "AS IS" AND ANY 24 + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 25 + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 26 + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY 27 + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 28 + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 29 + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 30 + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 31 + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 32 + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 + */ 34 + 35 + / { 36 + model = "fsl,T1040QDS"; 37 + #address-cells = <2>; 38 + #size-cells = <2>; 39 + interrupt-parent = <&mpic>; 40 + 41 + ifc: localbus@ffe124000 { 42 + reg = <0xf 0xfe124000 0 0x2000>; 43 + ranges = <0 0 0xf 0xe8000000 0x08000000 44 + 2 0 0xf 0xff800000 0x00010000 45 + 3 0 0xf 0xffdf0000 0x00008000>; 46 + 47 + nor@0,0 { 48 + #address-cells = <1>; 49 + #size-cells = <1>; 50 + compatible = "cfi-flash"; 51 + reg = <0x0 0x0 0x8000000>; 52 + 53 + bank-width = <2>; 54 + device-width = <1>; 55 + }; 56 + 57 + nand@2,0 { 58 + #address-cells = <1>; 59 + #size-cells = <1>; 60 + compatible = "fsl,ifc-nand"; 61 + reg = <0x2 0x0 0x10000>; 62 + }; 63 + 64 + board-control@3,0 { 65 + #address-cells = <1>; 66 + #size-cells = <1>; 67 + compatible = "fsl,fpga-qixis"; 68 + reg = <3 0 0x300>; 69 + }; 70 + }; 71 + 72 + memory { 73 + device_type = "memory"; 74 + }; 75 + 76 + dcsr: dcsr@f00000000 { 77 + ranges = <0x00000000 0xf 0x00000000 0x01072000>; 78 + }; 79 + 80 + soc: soc@ffe000000 { 81 + ranges = <0x00000000 0xf 0xfe000000 0x1000000>; 82 + reg = <0xf 0xfe000000 0 0x00001000>; 83 + 84 + spi@110000 { 85 + flash@0 { 86 + #address-cells = <1>; 87 + #size-cells = <1>; 88 + compatible = "micron,n25q128a11"; 89 + reg = <0>; 90 + spi-max-frequency = <10000000>; /* input clock */ 91 + }; 92 + }; 93 + 94 + i2c@118000 { 95 + pca9547@77 { 96 + compatible = "philips,pca9547"; 97 + reg = <0x77>; 98 + }; 99 + rtc@68 { 100 + compatible = "dallas,ds3232"; 101 + reg = <0x68>; 102 + interrupts = <0x1 0x1 0 0>; 103 + }; 104 + }; 105 + }; 106 + 107 + pci0: pcie@ffe240000 { 108 + reg = <0xf 0xfe240000 0 0x10000>; 109 + ranges = <0x02000000 0 0xe0000000 0xc 0x00000000 0x0 0x10000000 110 + 0x01000000 0 0x00000000 0xf 0xf8000000 0x0 0x00010000>; 111 + pcie@0 { 112 + ranges = <0x02000000 0 0xe0000000 113 + 0x02000000 0 0xe0000000 114 + 0 0x10000000 115 + 116 + 0x01000000 0 0x00000000 117 + 0x01000000 0 0x00000000 118 + 0 0x00010000>; 119 + }; 120 + }; 121 + 122 + pci1: pcie@ffe250000 { 123 + reg = <0xf 0xfe250000 0 0x10000>; 124 + ranges = <0x02000000 0x0 0xe0000000 0xc 0x10000000 0x0 0x10000000 125 + 0x01000000 0x0 0x00000000 0xf 0xf8010000 0x0 0x00010000>; 126 + pcie@0 { 127 + ranges = <0x02000000 0 0xe0000000 128 + 0x02000000 0 0xe0000000 129 + 0 0x10000000 130 + 131 + 0x01000000 0 0x00000000 132 + 0x01000000 0 0x00000000 133 + 0 0x00010000>; 134 + }; 135 + }; 136 + 137 + pci2: pcie@ffe260000 { 138 + reg = <0xf 0xfe260000 0 0x10000>; 139 + ranges = <0x02000000 0 0xe0000000 0xc 0x20000000 0 0x10000000 140 + 0x01000000 0 0x00000000 0xf 0xf8020000 0 0x00010000>; 141 + pcie@0 { 142 + ranges = <0x02000000 0 0xe0000000 143 + 0x02000000 0 0xe0000000 144 + 0 0x10000000 145 + 146 + 0x01000000 0 0x00000000 147 + 0x01000000 0 0x00000000 148 + 0 0x00010000>; 149 + }; 150 + }; 151 + 152 + pci3: pcie@ffe270000 { 153 + reg = <0xf 0xfe270000 0 0x10000>; 154 + ranges = <0x02000000 0 0xe0000000 0xc 0x30000000 0 0x10000000 155 + 0x01000000 0 0x00000000 0xf 0xf8030000 0 0x00010000>; 156 + pcie@0 { 157 + ranges = <0x02000000 0 0xe0000000 158 + 0x02000000 0 0xe0000000 159 + 0 0x10000000 160 + 161 + 0x01000000 0 0x00000000 162 + 0x01000000 0 0x00000000 163 + 0 0x00010000>; 164 + }; 165 + }; 166 + };
+1 -1
arch/powerpc/platforms/85xx/Kconfig
··· 267 267 For 64bit kernel, the following boards are supported: 268 268 T4240 QDS and B4 QDS 269 269 The following boards are supported for both 32bit and 64bit kernel: 270 - P5020 DS and P5040 DS 270 + P5020 DS, P5040 DS and T104xQDS 271 271 272 272 endif # FSL_SOC_BOOKE 273 273
+4
arch/powerpc/platforms/85xx/corenet_generic.c
··· 123 123 "fsl,B4860QDS", 124 124 "fsl,B4420QDS", 125 125 "fsl,B4220QDS", 126 + "fsl,T1040QDS", 127 + "fsl,T1042QDS", 126 128 "keymile,kmcoge4", 127 129 NULL 128 130 }; ··· 140 138 "fsl,B4860QDS-hv", 141 139 "fsl,B4420QDS-hv", 142 140 "fsl,B4220QDS-hv", 141 + "fsl,T1040QDS-hv", 142 + "fsl,T1042QDS-hv", 143 143 NULL 144 144 }; 145 145