Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  * Cavium Thunder DTS file - Thunder SoC description
0003  *
0004  * Copyright (C) 2014, Cavium Inc.
0005  *
0006  * This file is dual-licensed: you can use it either under the terms
0007  * of the GPL or the X11 license, at your option. Note that this dual
0008  * licensing only applies to this file, and not this project as a
0009  * whole.
0010  *
0011  *  a) This library is free software; you can redistribute it and/or
0012  *     modify it under the terms of the GNU General Public License as
0013  *     published by the Free Software Foundation; either version 2 of the
0014  *     License, or (at your option) any later version.
0015  *
0016  *     This library is distributed in the hope that it will be useful,
0017  *     but WITHOUT ANY WARRANTY; without even the implied warranty of
0018  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0019  *     GNU General Public License for more details.
0020  *
0021  *     You should have received a copy of the GNU General Public
0022  *     License along with this library; if not, write to the Free
0023  *     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
0024  *     MA 02110-1301 USA
0025  *
0026  * Or, alternatively,
0027  *
0028  *  b) Permission is hereby granted, free of charge, to any person
0029  *     obtaining a copy of this software and associated documentation
0030  *     files (the "Software"), to deal in the Software without
0031  *     restriction, including without limitation the rights to use,
0032  *     copy, modify, merge, publish, distribute, sublicense, and/or
0033  *     sell copies of the Software, and to permit persons to whom the
0034  *     Software is furnished to do so, subject to the following
0035  *     conditions:
0036  *
0037  *     The above copyright notice and this permission notice shall be
0038  *     included in all copies or substantial portions of the Software.
0039  *
0040  *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
0041  *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
0042  *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
0043  *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
0044  *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
0045  *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
0046  *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
0047  *     OTHER DEALINGS IN THE SOFTWARE.
0048  */
0049 
0050 / {
0051         compatible = "cavium,thunder-88xx";
0052         interrupt-parent = <&gic0>;
0053         #address-cells = <2>;
0054         #size-cells = <2>;
0055 
0056         psci {
0057                 compatible = "arm,psci-0.2";
0058                 method = "smc";
0059         };
0060 
0061         cpus {
0062                 #address-cells = <2>;
0063                 #size-cells = <0>;
0064 
0065                 cpu@0 {
0066                         device_type = "cpu";
0067                         compatible = "cavium,thunder";
0068                         reg = <0x0 0x000>;
0069                         enable-method = "psci";
0070                 };
0071                 cpu@1 {
0072                         device_type = "cpu";
0073                         compatible = "cavium,thunder";
0074                         reg = <0x0 0x001>;
0075                         enable-method = "psci";
0076                 };
0077                 cpu@2 {
0078                         device_type = "cpu";
0079                         compatible = "cavium,thunder";
0080                         reg = <0x0 0x002>;
0081                         enable-method = "psci";
0082                 };
0083                 cpu@3 {
0084                         device_type = "cpu";
0085                         compatible = "cavium,thunder";
0086                         reg = <0x0 0x003>;
0087                         enable-method = "psci";
0088                 };
0089                 cpu@4 {
0090                         device_type = "cpu";
0091                         compatible = "cavium,thunder";
0092                         reg = <0x0 0x004>;
0093                         enable-method = "psci";
0094                 };
0095                 cpu@5 {
0096                         device_type = "cpu";
0097                         compatible = "cavium,thunder";
0098                         reg = <0x0 0x005>;
0099                         enable-method = "psci";
0100                 };
0101                 cpu@6 {
0102                         device_type = "cpu";
0103                         compatible = "cavium,thunder";
0104                         reg = <0x0 0x006>;
0105                         enable-method = "psci";
0106                 };
0107                 cpu@7 {
0108                         device_type = "cpu";
0109                         compatible = "cavium,thunder";
0110                         reg = <0x0 0x007>;
0111                         enable-method = "psci";
0112                 };
0113                 cpu@8 {
0114                         device_type = "cpu";
0115                         compatible = "cavium,thunder";
0116                         reg = <0x0 0x008>;
0117                         enable-method = "psci";
0118                 };
0119                 cpu@9 {
0120                         device_type = "cpu";
0121                         compatible = "cavium,thunder";
0122                         reg = <0x0 0x009>;
0123                         enable-method = "psci";
0124                 };
0125                 cpu@a {
0126                         device_type = "cpu";
0127                         compatible = "cavium,thunder";
0128                         reg = <0x0 0x00a>;
0129                         enable-method = "psci";
0130                 };
0131                 cpu@b {
0132                         device_type = "cpu";
0133                         compatible = "cavium,thunder";
0134                         reg = <0x0 0x00b>;
0135                         enable-method = "psci";
0136                 };
0137                 cpu@c {
0138                         device_type = "cpu";
0139                         compatible = "cavium,thunder";
0140                         reg = <0x0 0x00c>;
0141                         enable-method = "psci";
0142                 };
0143                 cpu@d {
0144                         device_type = "cpu";
0145                         compatible = "cavium,thunder";
0146                         reg = <0x0 0x00d>;
0147                         enable-method = "psci";
0148                 };
0149                 cpu@e {
0150                         device_type = "cpu";
0151                         compatible = "cavium,thunder";
0152                         reg = <0x0 0x00e>;
0153                         enable-method = "psci";
0154                 };
0155                 cpu@f {
0156                         device_type = "cpu";
0157                         compatible = "cavium,thunder";
0158                         reg = <0x0 0x00f>;
0159                         enable-method = "psci";
0160                 };
0161                 cpu@100 {
0162                         device_type = "cpu";
0163                         compatible = "cavium,thunder";
0164                         reg = <0x0 0x100>;
0165                         enable-method = "psci";
0166                 };
0167                 cpu@101 {
0168                         device_type = "cpu";
0169                         compatible = "cavium,thunder";
0170                         reg = <0x0 0x101>;
0171                         enable-method = "psci";
0172                 };
0173                 cpu@102 {
0174                         device_type = "cpu";
0175                         compatible = "cavium,thunder";
0176                         reg = <0x0 0x102>;
0177                         enable-method = "psci";
0178                 };
0179                 cpu@103 {
0180                         device_type = "cpu";
0181                         compatible = "cavium,thunder";
0182                         reg = <0x0 0x103>;
0183                         enable-method = "psci";
0184                 };
0185                 cpu@104 {
0186                         device_type = "cpu";
0187                         compatible = "cavium,thunder";
0188                         reg = <0x0 0x104>;
0189                         enable-method = "psci";
0190                 };
0191                 cpu@105 {
0192                         device_type = "cpu";
0193                         compatible = "cavium,thunder";
0194                         reg = <0x0 0x105>;
0195                         enable-method = "psci";
0196                 };
0197                 cpu@106 {
0198                         device_type = "cpu";
0199                         compatible = "cavium,thunder";
0200                         reg = <0x0 0x106>;
0201                         enable-method = "psci";
0202                 };
0203                 cpu@107 {
0204                         device_type = "cpu";
0205                         compatible = "cavium,thunder";
0206                         reg = <0x0 0x107>;
0207                         enable-method = "psci";
0208                 };
0209                 cpu@108 {
0210                         device_type = "cpu";
0211                         compatible = "cavium,thunder";
0212                         reg = <0x0 0x108>;
0213                         enable-method = "psci";
0214                 };
0215                 cpu@109 {
0216                         device_type = "cpu";
0217                         compatible = "cavium,thunder";
0218                         reg = <0x0 0x109>;
0219                         enable-method = "psci";
0220                 };
0221                 cpu@10a {
0222                         device_type = "cpu";
0223                         compatible = "cavium,thunder";
0224                         reg = <0x0 0x10a>;
0225                         enable-method = "psci";
0226                 };
0227                 cpu@10b {
0228                         device_type = "cpu";
0229                         compatible = "cavium,thunder";
0230                         reg = <0x0 0x10b>;
0231                         enable-method = "psci";
0232                 };
0233                 cpu@10c {
0234                         device_type = "cpu";
0235                         compatible = "cavium,thunder";
0236                         reg = <0x0 0x10c>;
0237                         enable-method = "psci";
0238                 };
0239                 cpu@10d {
0240                         device_type = "cpu";
0241                         compatible = "cavium,thunder";
0242                         reg = <0x0 0x10d>;
0243                         enable-method = "psci";
0244                 };
0245                 cpu@10e {
0246                         device_type = "cpu";
0247                         compatible = "cavium,thunder";
0248                         reg = <0x0 0x10e>;
0249                         enable-method = "psci";
0250                 };
0251                 cpu@10f {
0252                         device_type = "cpu";
0253                         compatible = "cavium,thunder";
0254                         reg = <0x0 0x10f>;
0255                         enable-method = "psci";
0256                 };
0257                 cpu@200 {
0258                         device_type = "cpu";
0259                         compatible = "cavium,thunder";
0260                         reg = <0x0 0x200>;
0261                         enable-method = "psci";
0262                 };
0263                 cpu@201 {
0264                         device_type = "cpu";
0265                         compatible = "cavium,thunder";
0266                         reg = <0x0 0x201>;
0267                         enable-method = "psci";
0268                 };
0269                 cpu@202 {
0270                         device_type = "cpu";
0271                         compatible = "cavium,thunder";
0272                         reg = <0x0 0x202>;
0273                         enable-method = "psci";
0274                 };
0275                 cpu@203 {
0276                         device_type = "cpu";
0277                         compatible = "cavium,thunder";
0278                         reg = <0x0 0x203>;
0279                         enable-method = "psci";
0280                 };
0281                 cpu@204 {
0282                         device_type = "cpu";
0283                         compatible = "cavium,thunder";
0284                         reg = <0x0 0x204>;
0285                         enable-method = "psci";
0286                 };
0287                 cpu@205 {
0288                         device_type = "cpu";
0289                         compatible = "cavium,thunder";
0290                         reg = <0x0 0x205>;
0291                         enable-method = "psci";
0292                 };
0293                 cpu@206 {
0294                         device_type = "cpu";
0295                         compatible = "cavium,thunder";
0296                         reg = <0x0 0x206>;
0297                         enable-method = "psci";
0298                 };
0299                 cpu@207 {
0300                         device_type = "cpu";
0301                         compatible = "cavium,thunder";
0302                         reg = <0x0 0x207>;
0303                         enable-method = "psci";
0304                 };
0305                 cpu@208 {
0306                         device_type = "cpu";
0307                         compatible = "cavium,thunder";
0308                         reg = <0x0 0x208>;
0309                         enable-method = "psci";
0310                 };
0311                 cpu@209 {
0312                         device_type = "cpu";
0313                         compatible = "cavium,thunder";
0314                         reg = <0x0 0x209>;
0315                         enable-method = "psci";
0316                 };
0317                 cpu@20a {
0318                         device_type = "cpu";
0319                         compatible = "cavium,thunder";
0320                         reg = <0x0 0x20a>;
0321                         enable-method = "psci";
0322                 };
0323                 cpu@20b {
0324                         device_type = "cpu";
0325                         compatible = "cavium,thunder";
0326                         reg = <0x0 0x20b>;
0327                         enable-method = "psci";
0328                 };
0329                 cpu@20c {
0330                         device_type = "cpu";
0331                         compatible = "cavium,thunder";
0332                         reg = <0x0 0x20c>;
0333                         enable-method = "psci";
0334                 };
0335                 cpu@20d {
0336                         device_type = "cpu";
0337                         compatible = "cavium,thunder";
0338                         reg = <0x0 0x20d>;
0339                         enable-method = "psci";
0340                 };
0341                 cpu@20e {
0342                         device_type = "cpu";
0343                         compatible = "cavium,thunder";
0344                         reg = <0x0 0x20e>;
0345                         enable-method = "psci";
0346                 };
0347                 cpu@20f {
0348                         device_type = "cpu";
0349                         compatible = "cavium,thunder";
0350                         reg = <0x0 0x20f>;
0351                         enable-method = "psci";
0352                 };
0353         };
0354 
0355         timer {
0356                 compatible = "arm,armv8-timer";
0357                 interrupts = <1 13 4>,
0358                              <1 14 4>,
0359                              <1 11 4>,
0360                              <1 10 4>;
0361         };
0362 
0363         pmu {
0364                 compatible = "cavium,thunder-pmu", "arm,armv8-pmuv3";
0365                 interrupts = <1 7 4>;
0366         };
0367 
0368         soc {
0369                 compatible = "simple-bus";
0370                 #address-cells = <2>;
0371                 #size-cells = <2>;
0372                 ranges;
0373 
0374                 refclk50mhz: refclk50mhz {
0375                         compatible = "fixed-clock";
0376                         #clock-cells = <0>;
0377                         clock-frequency = <50000000>;
0378                         clock-output-names = "refclk50mhz";
0379                 };
0380 
0381                 gic0: interrupt-controller@8010,00000000 {
0382                         compatible = "arm,gic-v3";
0383                         #interrupt-cells = <3>;
0384                         #address-cells = <2>;
0385                         #size-cells = <2>;
0386                         ranges;
0387                         interrupt-controller;
0388                         reg = <0x8010 0x00000000 0x0 0x010000>, /* GICD */
0389                               <0x8010 0x80000000 0x0 0x600000>; /* GICR */
0390                         interrupts = <1 9 0xf04>;
0391 
0392                         its: gic-its@8010,00020000 {
0393                                 compatible = "arm,gic-v3-its";
0394                                 msi-controller;
0395                                 reg = <0x8010 0x20000 0x0 0x200000>;
0396                         };
0397                 };
0398 
0399                 uaa0: serial@87e0,24000000 {
0400                         compatible = "arm,pl011", "arm,primecell";
0401                         reg = <0x87e0 0x24000000 0x0 0x1000>;
0402                         interrupts = <1 21 4>;
0403                         clocks = <&refclk50mhz>;
0404                         clock-names = "apb_pclk";
0405                 };
0406 
0407                 uaa1: serial@87e0,25000000 {
0408                         compatible = "arm,pl011", "arm,primecell";
0409                         reg = <0x87e0 0x25000000 0x0 0x1000>;
0410                         interrupts = <1 22 4>;
0411                         clocks = <&refclk50mhz>;
0412                         clock-names = "apb_pclk";
0413                 };
0414         };
0415 };