Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c896ed0f authored by Andrew Lunn's avatar Andrew Lunn Committed by Thomas Petazzoni
Browse files

arm: kirkwood: Convert XOR instantiation to DT.



Use DT to describe the two XOR DMA engines on Kirkwood. Remove the
C code initialization.

Signed-off-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
parent 34c93c86
Loading
Loading
Loading
Loading
+40 −0
Original line number Diff line number Diff line
@@ -94,6 +94,46 @@
			status = "okay";
		};

		xor@60800 {
			compatible = "marvell,orion-xor";
			reg = <0x60800 0x100
			       0x60A00 0x100>;
			status = "okay";
			clocks = <&gate_clk 8>;

			xor00 {
			      interrupts = <5>;
			      dmacap,memcpy;
			      dmacap,xor;
			};
			xor01 {
			      interrupts = <6>;
			      dmacap,memcpy;
			      dmacap,xor;
			      dmacap,memset;
			};
		};

		xor@60900 {
			compatible = "marvell,orion-xor";
			reg = <0x60900 0x100
			       0xd0B00 0x100>;
			status = "okay";
			clocks = <&gate_clk 16>;

			xor00 {
			      interrupts = <7>;
			      dmacap,memcpy;
			      dmacap,xor;
			};
			xor01 {
			      interrupts = <8>;
			      dmacap,memcpy;
			      dmacap,xor;
			      dmacap,memset;
			};
		};

		sata@80000 {
			compatible = "marvell,orion-sata";
			reg = <0x80000 0x5000>;
+0 −13
Original line number Diff line number Diff line
@@ -21,7 +21,6 @@
#include <asm/mach/map.h>
#include <mach/bridge-regs.h>
#include <linux/platform_data/usb-ehci-orion.h>
#include <linux/platform_data/dma-mv_xor.h>
#include <plat/irq.h>
#include <plat/common.h>
#include "common.h"
@@ -60,14 +59,6 @@ static void __init kirkwood_legacy_clk_init(void)
	orion_clkdev_add(NULL, "orion-ehci.0",
			 of_clk_get_from_provider(&clkspec));

	clkspec.args[0] = CGC_BIT_XOR0;
	orion_clkdev_add(NULL, MV_XOR_NAME ".0",
			 of_clk_get_from_provider(&clkspec));

	clkspec.args[0] = CGC_BIT_XOR1;
	orion_clkdev_add(NULL, MV_XOR_NAME ".1",
			 of_clk_get_from_provider(&clkspec));

	clkspec.args[0] = CGC_BIT_PEX1;
	orion_clkdev_add("1", "pcie",
			 of_clk_get_from_provider(&clkspec));
@@ -103,10 +94,6 @@ static void __init kirkwood_dt_init(void)
	/* Setup root of clk tree */
	kirkwood_of_clk_init();

	/* internal devices that every board has */
	kirkwood_xor0_init();
	kirkwood_xor1_init();

#ifdef CONFIG_KEXEC
	kexec_reinit = kirkwood_enable_pcie;
#endif