-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'zynq/multiplatform' of git://git.monstr.eu/linux-2.6-mi…
…croblaze into next/multiplatform From Michal Simek: This branch depends on arm-soc devel/debug_ll_init branch because we needed Rob's "ARM: implement debug_ll_io_init()" (sha1: afaee03511ba8002b26a9c6b1fe7d6baf33eac86) patch. This branch also depends on zynq/dt branch because of previous major zynq changes. zynq/cleanup branch is subset of zynq/dt. * 'zynq/multiplatform' of git://git.monstr.eu/linux-2.6-microblaze: ARM: zynq: Remove all unused mach headers ARM: zynq: add support for ARCH_MULTIPLATFORM ARM: zynq: make use of debug_ll_io_init() ARM: zynq: remove TTC early mapping ARM: zynq: add clk binding support to the ttc ARM: zynq: use zynq clk bindings clk: Add support for fundamental zynq clks ARM: zynq: dts: split up device tree ARM: zynq: Allow UART1 to be used as DEBUG_LL console. ARM: zynq: dts: add description of the second uart ARM: zynq: move arm-specific sys_timer out of ttc zynq: move static peripheral mappings zynq: remove use of CLKDEV_LOOKUP zynq: use pl310 device tree bindings zynq: use GIC device tree bindings Add/add conflict in arch/arm/Kconfig.debug. Signed-off-by: Olof Johansson <olof@lixom.net>
- Loading branch information
Showing
23 changed files
with
936 additions
and
459 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
Device Tree Clock bindings for the Zynq 7000 EPP | ||
|
||
The Zynq EPP has several different clk providers, each with there own bindings. | ||
The purpose of this document is to document their usage. | ||
|
||
See clock_bindings.txt for more information on the generic clock bindings. | ||
See Chapter 25 of Zynq TRM for more information about Zynq clocks. | ||
|
||
== PLLs == | ||
|
||
Used to describe the ARM_PLL, DDR_PLL, and IO_PLL. | ||
|
||
Required properties: | ||
- #clock-cells : shall be 0 (only one clock is output from this node) | ||
- compatible : "xlnx,zynq-pll" | ||
- reg : pair of u32 values, which are the address offsets within the SLCR | ||
of the relevant PLL_CTRL register and PLL_CFG register respectively | ||
- clocks : phandle for parent clock. should be the phandle for ps_clk | ||
|
||
Optional properties: | ||
- clock-output-names : name of the output clock | ||
|
||
Example: | ||
armpll: armpll { | ||
#clock-cells = <0>; | ||
compatible = "xlnx,zynq-pll"; | ||
clocks = <&ps_clk>; | ||
reg = <0x100 0x110>; | ||
clock-output-names = "armpll"; | ||
}; | ||
|
||
== Peripheral clocks == | ||
|
||
Describes clock node for the SDIO, SMC, SPI, QSPI, and UART clocks. | ||
|
||
Required properties: | ||
- #clock-cells : shall be 1 | ||
- compatible : "xlnx,zynq-periph-clock" | ||
- reg : a single u32 value, describing the offset within the SLCR where | ||
the CLK_CTRL register is found for this peripheral | ||
- clocks : phandle for parent clocks. should hold phandles for | ||
the IO_PLL, ARM_PLL, and DDR_PLL in order | ||
- clock-output-names : names of the output clock(s). For peripherals that have | ||
two output clocks (for example, the UART), two clocks | ||
should be listed. | ||
|
||
Example: | ||
uart_clk: uart_clk { | ||
#clock-cells = <1>; | ||
compatible = "xlnx,zynq-periph-clock"; | ||
clocks = <&iopll &armpll &ddrpll>; | ||
reg = <0x154>; | ||
clock-output-names = "uart0_ref_clk", | ||
"uart1_ref_clk"; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,166 @@ | ||
/* | ||
* Copyright (C) 2011 Xilinx | ||
* | ||
* This software is licensed under the terms of the GNU General Public | ||
* License version 2, as published by the Free Software Foundation, and | ||
* may be copied, distributed, and modified under those terms. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
*/ | ||
/include/ "skeleton.dtsi" | ||
|
||
/ { | ||
compatible = "xlnx,zynq-7000"; | ||
|
||
amba { | ||
compatible = "simple-bus"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
interrupt-parent = <&intc>; | ||
ranges; | ||
|
||
intc: interrupt-controller@f8f01000 { | ||
compatible = "arm,cortex-a9-gic"; | ||
#interrupt-cells = <3>; | ||
#address-cells = <1>; | ||
interrupt-controller; | ||
reg = <0xF8F01000 0x1000>, | ||
<0xF8F00100 0x100>; | ||
}; | ||
|
||
L2: cache-controller { | ||
compatible = "arm,pl310-cache"; | ||
reg = <0xF8F02000 0x1000>; | ||
arm,data-latency = <2 3 2>; | ||
arm,tag-latency = <2 3 2>; | ||
cache-unified; | ||
cache-level = <2>; | ||
}; | ||
|
||
uart0: uart@e0000000 { | ||
compatible = "xlnx,xuartps"; | ||
reg = <0xE0000000 0x1000>; | ||
interrupts = <0 27 4>; | ||
clock = <50000000>; | ||
}; | ||
|
||
uart1: uart@e0001000 { | ||
compatible = "xlnx,xuartps"; | ||
reg = <0xE0001000 0x1000>; | ||
interrupts = <0 50 4>; | ||
clock = <50000000>; | ||
}; | ||
|
||
slcr: slcr@f8000000 { | ||
compatible = "xlnx,zynq-slcr"; | ||
reg = <0xF8000000 0x1000>; | ||
|
||
clocks { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
|
||
ps_clk: ps_clk { | ||
#clock-cells = <0>; | ||
compatible = "fixed-clock"; | ||
/* clock-frequency set in board-specific file */ | ||
clock-output-names = "ps_clk"; | ||
}; | ||
armpll: armpll { | ||
#clock-cells = <0>; | ||
compatible = "xlnx,zynq-pll"; | ||
clocks = <&ps_clk>; | ||
reg = <0x100 0x110>; | ||
clock-output-names = "armpll"; | ||
}; | ||
ddrpll: ddrpll { | ||
#clock-cells = <0>; | ||
compatible = "xlnx,zynq-pll"; | ||
clocks = <&ps_clk>; | ||
reg = <0x104 0x114>; | ||
clock-output-names = "ddrpll"; | ||
}; | ||
iopll: iopll { | ||
#clock-cells = <0>; | ||
compatible = "xlnx,zynq-pll"; | ||
clocks = <&ps_clk>; | ||
reg = <0x108 0x118>; | ||
clock-output-names = "iopll"; | ||
}; | ||
uart_clk: uart_clk { | ||
#clock-cells = <1>; | ||
compatible = "xlnx,zynq-periph-clock"; | ||
clocks = <&iopll &armpll &ddrpll>; | ||
reg = <0x154>; | ||
clock-output-names = "uart0_ref_clk", | ||
"uart1_ref_clk"; | ||
}; | ||
cpu_clk: cpu_clk { | ||
#clock-cells = <1>; | ||
compatible = "xlnx,zynq-cpu-clock"; | ||
clocks = <&iopll &armpll &ddrpll>; | ||
reg = <0x120 0x1C4>; | ||
clock-output-names = "cpu_6x4x", | ||
"cpu_3x2x", | ||
"cpu_2x", | ||
"cpu_1x"; | ||
}; | ||
}; | ||
}; | ||
|
||
ttc0: ttc0@f8001000 { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
compatible = "xlnx,ttc"; | ||
reg = <0xF8001000 0x1000>; | ||
clocks = <&cpu_clk 3>; | ||
clock-names = "cpu_1x"; | ||
clock-ranges; | ||
|
||
ttc0_0: ttc0.0 { | ||
status = "disabled"; | ||
reg = <0>; | ||
interrupts = <0 10 4>; | ||
}; | ||
ttc0_1: ttc0.1 { | ||
status = "disabled"; | ||
reg = <1>; | ||
interrupts = <0 11 4>; | ||
}; | ||
ttc0_2: ttc0.2 { | ||
status = "disabled"; | ||
reg = <2>; | ||
interrupts = <0 12 4>; | ||
}; | ||
}; | ||
|
||
ttc1: ttc1@f8002000 { | ||
#interrupt-parent = <&intc>; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
compatible = "xlnx,ttc"; | ||
reg = <0xF8002000 0x1000>; | ||
clocks = <&cpu_clk 3>; | ||
clock-names = "cpu_1x"; | ||
clock-ranges; | ||
|
||
ttc1_0: ttc1.0 { | ||
status = "disabled"; | ||
reg = <0>; | ||
interrupts = <0 37 4>; | ||
}; | ||
ttc1_1: ttc1.1 { | ||
status = "disabled"; | ||
reg = <1>; | ||
interrupts = <0 38 4>; | ||
}; | ||
ttc1_2: ttc1.2 { | ||
status = "disabled"; | ||
reg = <2>; | ||
interrupts = <0 39 4>; | ||
}; | ||
}; | ||
}; | ||
}; |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
/* | ||
* Copyright (C) 2011 Xilinx | ||
* Copyright (C) 2012 National Instruments Corp. | ||
* | ||
* This software is licensed under the terms of the GNU General Public | ||
* License version 2, as published by the Free Software Foundation, and | ||
* may be copied, distributed, and modified under those terms. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
*/ | ||
/dts-v1/; | ||
/include/ "zynq-7000.dtsi" | ||
|
||
/ { | ||
model = "Zynq ZC702 Development Board"; | ||
compatible = "xlnx,zynq-zc702", "xlnx,zynq-7000"; | ||
|
||
memory { | ||
device_type = "memory"; | ||
reg = <0x0 0x40000000>; | ||
}; | ||
|
||
chosen { | ||
bootargs = "console=ttyPS1,115200 earlyprintk"; | ||
}; | ||
|
||
}; | ||
|
||
&ps_clk { | ||
clock-frequency = <33333330>; | ||
}; | ||
|
||
&ttc0_0 { | ||
status = "ok"; | ||
compatible = "xlnx,ttc-counter-clocksource"; | ||
}; | ||
|
||
&ttc0_1 { | ||
status = "ok"; | ||
compatible = "xlnx,ttc-counter-clockevent"; | ||
}; |
Oops, something went wrong.