1ae701b60SGregory CLEMENT/*
2ae701b60SGregory CLEMENT * Copyright (C) 2017 Marvell Technology Group Ltd.
3ae701b60SGregory CLEMENT *
4ae701b60SGregory CLEMENT * This file is dual-licensed: you can use it either under the terms
5ae701b60SGregory CLEMENT * of the GPLv2 or the X11 license, at your option. Note that this dual
6ae701b60SGregory CLEMENT * licensing only applies to this file, and not this project as a
7ae701b60SGregory CLEMENT * whole.
8ae701b60SGregory CLEMENT *
9ae701b60SGregory CLEMENT *  a) This library is free software; you can redistribute it and/or
10ae701b60SGregory CLEMENT *     modify it under the terms of the GNU General Public License as
11ae701b60SGregory CLEMENT *     published by the Free Software Foundation; either version 2 of the
12ae701b60SGregory CLEMENT *     License, or (at your option) any later version.
13ae701b60SGregory CLEMENT *
14ae701b60SGregory CLEMENT *     This library is distributed in the hope that it will be useful,
15ae701b60SGregory CLEMENT *     but WITHOUT ANY WARRANTY; without even the implied warranty of
16ae701b60SGregory CLEMENT *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17ae701b60SGregory CLEMENT *     GNU General Public License for more details.
18ae701b60SGregory CLEMENT *
19ae701b60SGregory CLEMENT * Or, alternatively,
20ae701b60SGregory CLEMENT *
21ae701b60SGregory CLEMENT *  b) Permission is hereby granted, free of charge, to any person
22ae701b60SGregory CLEMENT *     obtaining a copy of this software and associated documentation
23ae701b60SGregory CLEMENT *     files (the "Software"), to deal in the Software without
24ae701b60SGregory CLEMENT *     restriction, including without limitation the rights to use,
25ae701b60SGregory CLEMENT *     copy, modify, merge, publish, distribute, sublicense, and/or
26ae701b60SGregory CLEMENT *     sell copies of the Software, and to permit persons to whom the
27ae701b60SGregory CLEMENT *     Software is furnished to do so, subject to the following
28ae701b60SGregory CLEMENT *     conditions:
29ae701b60SGregory CLEMENT *
30ae701b60SGregory CLEMENT *     The above copyright notice and this permission notice shall be
31ae701b60SGregory CLEMENT *     included in all copies or substantial portions of the Software.
32ae701b60SGregory CLEMENT *
33ae701b60SGregory CLEMENT *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
34ae701b60SGregory CLEMENT *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
35ae701b60SGregory CLEMENT *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
36ae701b60SGregory CLEMENT *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
37ae701b60SGregory CLEMENT *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
38ae701b60SGregory CLEMENT *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
39ae701b60SGregory CLEMENT *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
40ae701b60SGregory CLEMENT *     OTHER DEALINGS IN THE SOFTWARE.
41ae701b60SGregory CLEMENT */
42ae701b60SGregory CLEMENT
43ae701b60SGregory CLEMENT/*
44ae701b60SGregory CLEMENT * Device Tree file for the Armada 70x0 SoC
45ae701b60SGregory CLEMENT */
46ae701b60SGregory CLEMENT
4763dac0f4SGregory CLEMENT/ {
4863dac0f4SGregory CLEMENT	aliases {
4963dac0f4SGregory CLEMENT		gpio1 = &cpm_gpio1;
5063dac0f4SGregory CLEMENT		gpio2 = &cpm_gpio2;
51e2a393c6SThomas Petazzoni		spi1 = &cpm_spi0;
52e2a393c6SThomas Petazzoni		spi2 = &cpm_spi1;
5363dac0f4SGregory CLEMENT	};
5463dac0f4SGregory CLEMENT};
5563dac0f4SGregory CLEMENT
5672a3713fSThomas Petazzoni/*
5772a3713fSThomas Petazzoni * Instantiate the CP110
5872a3713fSThomas Petazzoni */
5972a3713fSThomas Petazzoni#define CP110_NAME		cpm
6072a3713fSThomas Petazzoni#define CP110_BASE		f2000000
6172a3713fSThomas Petazzoni#define CP110_PCIE_IO_BASE	0xf9000000
6272a3713fSThomas Petazzoni#define CP110_PCIE_MEM_BASE	0xf6000000
6372a3713fSThomas Petazzoni#define CP110_PCIE0_BASE	f2600000
6472a3713fSThomas Petazzoni#define CP110_PCIE1_BASE	f2620000
6572a3713fSThomas Petazzoni#define CP110_PCIE2_BASE	f2640000
6672a3713fSThomas Petazzoni
6772a3713fSThomas Petazzoni#include "armada-cp110.dtsi"
6872a3713fSThomas Petazzoni
6972a3713fSThomas Petazzoni#undef CP110_NAME
7072a3713fSThomas Petazzoni#undef CP110_BASE
7172a3713fSThomas Petazzoni#undef CP110_PCIE_IO_BASE
7272a3713fSThomas Petazzoni#undef CP110_PCIE_MEM_BASE
7372a3713fSThomas Petazzoni#undef CP110_PCIE0_BASE
7472a3713fSThomas Petazzoni#undef CP110_PCIE1_BASE
7572a3713fSThomas Petazzoni#undef CP110_PCIE2_BASE
7672a3713fSThomas Petazzoni
7763dac0f4SGregory CLEMENT&cpm_gpio1 {
7863dac0f4SGregory CLEMENT	status = "okay";
7963dac0f4SGregory CLEMENT};
8063dac0f4SGregory CLEMENT
8163dac0f4SGregory CLEMENT&cpm_gpio2 {
8263dac0f4SGregory CLEMENT	status = "okay";
8363dac0f4SGregory CLEMENT};
8463dac0f4SGregory CLEMENT
85ae701b60SGregory CLEMENT&cpm_syscon0 {
86ae701b60SGregory CLEMENT	cpm_pinctrl: pinctrl {
87ae701b60SGregory CLEMENT		compatible = "marvell,armada-7k-pinctrl";
8873ae5fe8SGregory CLEMENT
8973ae5fe8SGregory CLEMENT		nand_pins: nand-pins {
9073ae5fe8SGregory CLEMENT			marvell,pins =
9173ae5fe8SGregory CLEMENT			"mpp15", "mpp16", "mpp17", "mpp18",
9273ae5fe8SGregory CLEMENT			"mpp19", "mpp20", "mpp21", "mpp22",
9373ae5fe8SGregory CLEMENT			"mpp23", "mpp24", "mpp25", "mpp26",
9473ae5fe8SGregory CLEMENT			"mpp27";
9573ae5fe8SGregory CLEMENT			marvell,function = "dev";
9673ae5fe8SGregory CLEMENT		};
9773ae5fe8SGregory CLEMENT
9873ae5fe8SGregory CLEMENT		nand_rb: nand-rb {
9973ae5fe8SGregory CLEMENT			marvell,pins = "mpp13";
10073ae5fe8SGregory CLEMENT			marvell,function = "nf";
10173ae5fe8SGregory CLEMENT		};
102ae701b60SGregory CLEMENT	};
103ae701b60SGregory CLEMENT};
104