From: andrew@lunn•ch (Andrew Lunn)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH 26/29] ARM: orion5x: convert RD-88F5182 to Device Tree
Date: Sun, 13 Apr 2014 17:47:15 +0200 [thread overview]
Message-ID: <20140413154715.GE10033@lunn.ch> (raw)
In-Reply-To: <1397400006-4315-27-git-send-email-thomas.petazzoni@free-electrons.com>
On Sun, Apr 13, 2014 at 04:40:03PM +0200, Thomas Petazzoni wrote:
> This commit converts the RD-88F5182 platform to the Device Tree. All
> devices except the PCI are converted to the Device Tree.
>
> It is worth noting that:
>
> * The PCI description for the DT case is kept in board-rd88f5182.c.
>
> * The existing non-DT support in rd88f5182-setup.c is kept as is, in
> order to allow testing of a given platform in both DT and non-DT
> cases. It will ultimately be removed, once we no longer care about
> non-DT support for Orion5x.
>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons•com>
> ---
> arch/arm/boot/dts/Makefile | 3 +-
> arch/arm/boot/dts/orion5x-rd88f5182-nas.dts | 153 ++++++++++++++++++++++++++++
> arch/arm/mach-orion5x/Kconfig | 8 ++
> arch/arm/mach-orion5x/Makefile | 1 +
> arch/arm/mach-orion5x/board-rd88f5182.c | 116 +++++++++++++++++++++
> 5 files changed, 280 insertions(+), 1 deletion(-)
> create mode 100644 arch/arm/boot/dts/orion5x-rd88f5182-nas.dts
> create mode 100644 arch/arm/mach-orion5x/board-rd88f5182.c
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 35c146f..f7943a8 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -289,7 +289,8 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
> am43x-epos-evm.dtb \
> am437x-gp-evm.dtb \
> dra7-evm.dtb
> -dtb-$(CONFIG_ARCH_ORION5X) += orion5x-lacie-ethernet-disk-mini-v2.dtb
> +dtb-$(CONFIG_ARCH_ORION5X) += orion5x-lacie-ethernet-disk-mini-v2.dtb \
> + orion5x-rd88f5182-nas.dtb
> dtb-$(CONFIG_ARCH_PRIMA2) += prima2-evb.dtb
> dtb-$(CONFIG_ARCH_QCOM) += qcom-msm8660-surf.dtb \
> qcom-msm8960-cdp.dtb \
> diff --git a/arch/arm/boot/dts/orion5x-rd88f5182-nas.dts b/arch/arm/boot/dts/orion5x-rd88f5182-nas.dts
> new file mode 100644
> index 0000000..b5fd087
> --- /dev/null
> +++ b/arch/arm/boot/dts/orion5x-rd88f5182-nas.dts
> @@ -0,0 +1,153 @@
> +/*
> + * Copyright (C) 2014 Thomas Petazzoni <thomas.petazzoni@free-electrons•com>
> + *
> + * This file is licensed under the terms of the GNU General Public
> + * License version 2. This program is licensed "as is" without any
> + * warranty of any kind, whether express or implied.
> + */
> +
> +/dts-v1/;
> +#include "orion5x-mv88f5182.dtsi"
> +
> +/ {
> + model = "Marvell Reference Design 88F5182 NAS";
> + compatible = "marvell,rd-88f5182-nas", "marvell,orion5x-88f5182", "marvell,orion5x";
> +
> + memory {
> + reg = <0x00000000 0x4000000>; /* 64 MB */
> + };
> +
> + chosen {
> + bootargs = "console=ttyS0,115200n8 earlyprintk";
> + };
> +
> + soc {
> + ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000>,
> + <MBUS_ID(0x09, 0x00) 0 0xf2200000 0x800>,
> + <MBUS_ID(0x01, 0x0f) 0 0xf4000000 0x80000>,
> + <MBUS_ID(0x01, 0x1d) 0 0xfc000000 0x1000000>;
> +
> + devbus-bootcs {
> + status = "okay";
> + /* TODO: Device Bus parameters */
> + nor at 0 {
> + compatible = "cfi-flash";
> + reg = <0 0x80000>;
> + bank-width = <1>;
> + };
> + };
> +
> + devbus-cs1 {
> + status = "okay";
> + /* TODO: Device Bus parameters */
> + nor at 0 {
> + compatible = "cfi-flash";
> + reg = <0 0x1000000>;
> + bank-width = <1>;
> + };
> + };
> +
> + internal-regs {
> + pinctrl at 10000 {
> + pinctrl-0 = <&pmx_reset_switch &pmx_misc_gpios
> + &pmx_pci_gpios>;
> + pinctrl-names = "default";
> +
> + /*
> + * MPP[20] PCI Clock to MV88F5182
> + * MPP[21] PCI Clock to mini PCI CON11
> + * MPP[22] USB 0 over current indication
> + * MPP[23] USB 1 over current indication
> + * MPP[24] USB 1 over current enable
> + * MPP[25] USB 0 over current enable
> + */
> +
> + pmx_debug_led: pmx-debug_led {
> + marvell,pins = "mpp0";
> + marvell,function = "gpio";
> + };
> +
> + pmx_reset_switch: pmx-reset-switch {
> + marvell,pins = "mpp1";
> + marvell,function = "gpio";
> + };
> +
> + pmx_rtc: pmx-rtc {
> + marvell,pins = "mpp3";
> + marvell,function = "gpio";
> + };
> +
> + pmx_misc_gpios: pmx-misc-gpios {
> + marvell,pins = "mpp4", "mpp5";
> + marvell,function = "gpio";
> + };
> +
> + pmx_pci_gpios: pmx-pci-gpios {
> + marvell,pins = "mpp6", "mpp7";
> + marvell,function = "gpio";
> + };
> + };
> +
> + i2c at 11000 {
> + status = "okay";
> + clock-frequency = <100000>;
> + #address-cells = <1>;
> +
> + rtc at 68 {
> + pinctrl-0 = <&pmx_rtc>;
> + pinctrl-names = "default";
> + compatible = "ds1338";
Hi Thomas
Vendor prefix again.
> + reg = <0x68>;
> + };
> + };
> +
> + serial at 12000 {
> + clock-frequency = <166666667>;
I don't think you need this, so long as there is tclk in the node.
> + gpio_leds {
> + compatible = "gpio-leds";
> + pinctrl-0 = <&pmx_debug_led>;
> + pinctrl-names = "default";
> +
> + led at 0 {
> + label = "rd88f5182:cpu";
> + linux,default-trigger = "heartbeat";
Jason probably won't like that.
> + gpios = <&gpio0 0 0>;
gpio.h defines?
> +static int __init rd88f5182_pci_init(void)
> +{
> + if (of_machine_is_compatible("marvell,rd-88f5182-nas"))
> + pci_common_init(&rd88f5182_pci);
> +
> + return 0;
> +}
> +
> +subsys_initcall(rd88f5182_pci_init);
Nice to see you are checking for compatibility in the initcall. How
far do you think this from a multi_v5 kernel?
Andrew
next prev parent reply other threads:[~2014-04-13 15:47 UTC|newest]
Thread overview: 93+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-13 14:39 [PATCH 00/29] ARM: orion5x: big step towards DT conversion Thomas Petazzoni
2014-04-13 14:39 ` [PATCH 01/29] ARM: orion5x: fix target ID for crypto SRAM window Thomas Petazzoni
2014-04-14 8:59 ` Sebastian Hesselbarth
2014-04-17 4:55 ` Jason Cooper
2014-04-13 14:39 ` [PATCH 02/29] pinctrl: mvebu: new driver for Orion platforms Thomas Petazzoni
2014-04-14 9:15 ` Sebastian Hesselbarth
2014-04-19 17:28 ` Thomas Petazzoni
2014-04-20 10:04 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 03/29] clk: mvebu: add Orion5x clock driver Thomas Petazzoni
2014-04-14 9:27 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 04/29] memory: mvebu-devbus: fix the conversion of the bus width Thomas Petazzoni
2014-04-14 9:30 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 05/29] memory: mvebu-devbus: use ARMADA_ prefix in defines Thomas Petazzoni
2014-04-14 9:33 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 06/29] memory: mvebu-devbus: split functions Thomas Petazzoni
2014-04-14 9:36 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 07/29] memory: mvebu-devbus: add Orion5x support Thomas Petazzoni
2014-04-14 9:41 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 08/29] ARM: orion5x: move interrupt controller node into ocp Thomas Petazzoni
2014-04-14 9:42 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 09/29] ARM: orion5x: switch to preprocessor includes in DT Thomas Petazzoni
2014-04-14 9:43 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 10/29] ARM: orion5x: use existing dt-bindings include for Device Tree files Thomas Petazzoni
2014-04-14 9:43 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 11/29] ARM: orion5x: convert DT to use the mvebu-mbus driver Thomas Petazzoni
2014-04-14 10:33 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 12/29] ARM: orion5x: add interrupt for Ethernet in Device Tree Thomas Petazzoni
2014-04-14 10:33 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 13/29] ARM: orion5x: switch to use the clock driver for DT platforms Thomas Petazzoni
2014-04-14 10:35 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 14/29] ARM: orion: switch to a per-platform handle_irq() function Thomas Petazzoni
2014-04-14 10:40 ` Sebastian Hesselbarth
2014-04-19 7:27 ` Thomas Petazzoni
2014-04-19 9:09 ` Sebastian Hesselbarth
2014-04-19 12:04 ` Thomas Petazzoni
2014-04-19 16:16 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 15/29] ARM: orion5x: switch to DT interrupts and timer Thomas Petazzoni
2014-04-14 10:43 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 16/29] ARM: orion5x: enable pinctrl driver at SoC level Thomas Petazzoni
2014-04-14 10:44 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 17/29] ARM: orion5x: update I2C description " Thomas Petazzoni
2014-04-14 10:45 ` Sebastian Hesselbarth
2014-04-19 7:38 ` Thomas Petazzoni
2014-04-19 9:10 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 18/29] ARM: orion5x: add Device Bus " Thomas Petazzoni
2014-04-14 10:47 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 19/29] ARM: orion5x: add standard pinctrl configs for sata0 and sata1 Thomas Petazzoni
2014-04-14 10:48 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 20/29] ARM: orion5x: convert edmini_v2 to DT pinctrl Thomas Petazzoni
2014-04-13 15:26 ` Andrew Lunn
2014-04-13 15:41 ` Thomas Petazzoni
2014-04-14 10:51 ` Sebastian Hesselbarth
2014-04-14 11:23 ` Thomas Petazzoni
2014-04-14 11:27 ` Sebastian Hesselbarth
2014-04-14 12:06 ` Andrew Lunn
2014-04-14 12:24 ` Ezequiel Garcia
2014-04-14 12:28 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 21/29] ARM: orion5x: use DT to describe I2C devices on edmini_v2 Thomas Petazzoni
2014-04-13 15:28 ` Andrew Lunn
2014-04-13 15:43 ` Thomas Petazzoni
2014-04-13 15:53 ` Andrew Lunn
2014-04-14 10:53 ` Sebastian Hesselbarth
2014-04-13 14:39 ` [PATCH 22/29] ARM: orion5x: use DT to describe EHCI " Thomas Petazzoni
2014-04-14 10:57 ` Sebastian Hesselbarth
2014-04-13 14:40 ` [PATCH 23/29] ARM: orion5x: use DT to describe NOR " Thomas Petazzoni
2014-04-13 15:31 ` Andrew Lunn
2014-04-13 15:45 ` Thomas Petazzoni
2014-04-14 2:10 ` Chris Moore
2014-04-14 2:19 ` Chris Moore
2014-04-14 18:44 ` Andrew Lunn
2014-04-14 11:14 ` Sebastian Hesselbarth
2014-04-14 11:24 ` Thomas Petazzoni
2014-04-14 11:28 ` Sebastian Hesselbarth
2014-04-13 14:40 ` [PATCH 24/29] ARM: orion5x: keep TODO list in edmini_v2 DT Thomas Petazzoni
2014-04-14 11:17 ` Sebastian Hesselbarth
2014-04-15 2:59 ` Chris Moore
2014-04-13 14:40 ` [PATCH 25/29] ARM: orion5x: remove unneeded code for edmini_v2 Thomas Petazzoni
2014-04-14 11:18 ` Sebastian Hesselbarth
2014-04-13 14:40 ` [PATCH 26/29] ARM: orion5x: convert RD-88F5182 to Device Tree Thomas Petazzoni
2014-04-13 15:47 ` Andrew Lunn [this message]
2014-04-13 15:56 ` Thomas Petazzoni
2014-04-13 15:59 ` Andrew Lunn
2014-04-13 16:53 ` Thomas Petazzoni
2014-04-13 16:59 ` Sebastian Hesselbarth
2014-04-13 17:50 ` Arnd Bergmann
2014-04-14 8:01 ` Andrew Lunn
2014-04-14 9:08 ` Arnd Bergmann
2014-04-14 11:26 ` Sebastian Hesselbarth
2014-04-19 7:46 ` Thomas Petazzoni
2014-04-19 9:18 ` Sebastian Hesselbarth
2014-04-13 14:40 ` [PATCH 27/29] ARM: orion5x: convert d2net " Thomas Petazzoni
2014-04-13 14:40 ` [PATCH 28/29] ARM: orion: remove no longer needed DT IRQ code Thomas Petazzoni
2014-04-13 14:40 ` [PATCH 29/29] ARM: orion: remove no longer needed gpio DT code Thomas Petazzoni
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140413154715.GE10033@lunn.ch \
--to=andrew@lunn$(echo .)ch \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox