Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003  * Copyright (C) 2017 Marvell Technology Group Ltd.
0004  *
0005  * Device Tree file for the Armada 80x0 SoC family
0006  */
0007 
0008 / {
0009         aliases {
0010                 gpio1 = &cp1_gpio1;
0011                 gpio2 = &cp0_gpio2;
0012                 spi1 = &cp0_spi0;
0013                 spi2 = &cp0_spi1;
0014                 spi3 = &cp1_spi0;
0015                 spi4 = &cp1_spi1;
0016         };
0017 };
0018 
0019 /*
0020  * Instantiate the master CP110
0021  */
0022 #define CP11X_NAME              cp0
0023 #define CP11X_BASE              f2000000
0024 #define CP11X_PCIEx_MEM_BASE(iface) (0xf6000000 + (iface * 0x1000000))
0025 #define CP11X_PCIEx_MEM_SIZE(iface) 0xf00000
0026 #define CP11X_PCIE0_BASE        f2600000
0027 #define CP11X_PCIE1_BASE        f2620000
0028 #define CP11X_PCIE2_BASE        f2640000
0029 
0030 #include "armada-cp110.dtsi"
0031 
0032 #undef CP11X_NAME
0033 #undef CP11X_BASE
0034 #undef CP11X_PCIEx_MEM_BASE
0035 #undef CP11X_PCIEx_MEM_SIZE
0036 #undef CP11X_PCIE0_BASE
0037 #undef CP11X_PCIE1_BASE
0038 #undef CP11X_PCIE2_BASE
0039 
0040 /*
0041  * Instantiate the slave CP110
0042  */
0043 #define CP11X_NAME              cp1
0044 #define CP11X_BASE              f4000000
0045 #define CP11X_PCIEx_MEM_BASE(iface) (0xfa000000 + (iface * 0x1000000))
0046 #define CP11X_PCIEx_MEM_SIZE(iface) 0xf00000
0047 #define CP11X_PCIE0_BASE        f4600000
0048 #define CP11X_PCIE1_BASE        f4620000
0049 #define CP11X_PCIE2_BASE        f4640000
0050 
0051 #include "armada-cp110.dtsi"
0052 
0053 #undef CP11X_NAME
0054 #undef CP11X_BASE
0055 #undef CP11X_PCIEx_MEM_BASE
0056 #undef CP11X_PCIEx_MEM_SIZE
0057 #undef CP11X_PCIE0_BASE
0058 #undef CP11X_PCIE1_BASE
0059 #undef CP11X_PCIE2_BASE
0060 
0061 /* The 80x0 has two CP blocks, but uses only one block from each. */
0062 &cp1_gpio1 {
0063         status = "okay";
0064 };
0065 
0066 &cp0_gpio2 {
0067         status = "okay";
0068 };
0069 
0070 &cp0_syscon0 {
0071         cp0_pinctrl: pinctrl {
0072                 compatible = "marvell,armada-8k-cpm-pinctrl";
0073         };
0074 };
0075 
0076 &cp1_syscon0 {
0077         cp1_pinctrl: pinctrl {
0078                 compatible = "marvell,armada-8k-cps-pinctrl";
0079 
0080                 nand_pins: nand-pins {
0081                         marvell,pins =
0082                         "mpp0", "mpp1", "mpp2", "mpp3",
0083                         "mpp4", "mpp5", "mpp6", "mpp7",
0084                         "mpp8", "mpp9", "mpp10", "mpp11",
0085                         "mpp15", "mpp16", "mpp17", "mpp18",
0086                         "mpp19", "mpp20", "mpp21", "mpp22",
0087                         "mpp23", "mpp24", "mpp25", "mpp26",
0088                         "mpp27";
0089                         marvell,function = "dev";
0090                 };
0091 
0092                 nand_rb: nand-rb {
0093                         marvell,pins = "mpp13", "mpp12";
0094                         marvell,function = "nf";
0095                 };
0096         };
0097 };
0098 
0099 &cp1_crypto {
0100         /*
0101          * The cryptographic engine found on the cp110
0102          * master is enabled by default at the SoC
0103          * level. Because it is not possible as of now
0104          * to enable two cryptographic engines in
0105          * parallel, disable this one by default.
0106          */
0107         status = "disabled";
0108 };