hsdk: initial port for HSDK board
Subsystems (2)
PATCH 1/1 hsdk: initial port for HSDK board
This initial port adds support of ARC HS Development Kit board with some basic features such serial port, USB, SD/MMC and Ethernet.
Essentially we run Linux kernel on all 4 cores (i.e. utilize SMP) and heavily use IO Coherency for speeding-up DMA-aware peripherals.
Note as opposed to other ARC boards we link Linux kernel to 0x9000_0000 intentionally because cores 1 and 3 configured with DCCM situated at our more usual link base 0x8000_0000.
Signed-off-by Eugeniy Paltsev <paltsev at synopsys.com>
Signed-off-by Alexey Brodkin <abrodkin at synopsys.com>
Cc Vineet Gupta <vgupta at synopsys.com>
Cc Rob Herring <robh+dt at kernel.org>
--- Documentation/devicetree/bindings/arc/hsdk.txt | 7 ++ arch/arc/Kconfig | 1 + arch/arc/Makefile | 1 + arch/arc/boot/dts/hsdk.dts | 151 +++++++++++++++++++++++++ arch/arc/configs/hsdk_defconfig | 71 ++++++++++++ arch/arc/kernel/devtree.c | 5 +- arch/arc/plat-hsdk/Kconfig | 12 ++ arch/arc/plat-hsdk/Makefile | 9 ++ arch/arc/plat-hsdk/platform.c | 59 ++++++++++ 9 files changed, 314 insertions(+), 2 deletions(-) create mode 100644 Documentation/devicetree/bindings/arc/hsdk.txt create mode 100644 arch/arc/boot/dts/hsdk.dts create mode 100644 arch/arc/configs/hsdk_defconfig create mode 100644 arch/arc/plat-hsdk/Kconfig create mode 100644 arch/arc/plat-hsdk/Makefile create mode 100644 arch/arc/plat-hsdk/platform.c
Documentation/devicetree/bindings/arc/hsdk.txt new file +7 -0
@@ -0,0 +1,7 @@ +Synopsys DesignWare ARC HS Development Kit Device Tree Bindings +--------------------------------------------------------------------------- + +ARC HSDK Board with quad-core ARC HS38x4 in silicon. + +Required root node properties: + - compatible = "snps,hsdk";
arch/arc/Kconfig +1 -0
@@ -101,6 +101,7 @@ source "arch/arc/plat-tb10x/Kconfig" source "arch/arc/plat-axs10x/Kconfig" #New platform adds here source "arch/arc/plat-eznps/Kconfig" +source "arch/arc/plat-hsdk/Kconfig" endmenu
arch/arc/Makefile +1 -0
@@ -111,6 +111,7 @@ core-$(CONFIG_ARC_PLAT_SIM) += arch/arc/plat-sim/ core-$(CONFIG_ARC_PLAT_TB10X) += arch/arc/plat-tb10x/ core-$(CONFIG_ARC_PLAT_AXS10X) += arch/arc/plat-axs10x/ core-$(CONFIG_ARC_PLAT_EZNPS) += arch/arc/plat-eznps/ +core-$(CONFIG_ARC_PLAT_HSDK) += arch/arc/plat-hsdk/ ifdef CONFIG_ARC_PLAT_EZNPS KBUILD_CPPFLAGS += -I$(srctree)/arch/arc/plat-eznps/include
arch/arc/boot/dts/hsdk.dts new file +151 -0
151 lines not on this page · raw message
arch/arc/configs/hsdk_defconfig new file +71 -0
71 lines not on this page · raw message
arch/arc/kernel/devtree.c +3 -2
@@ -29,8 +29,9 @@ static void __init arc_set_early_base_baud(unsigned long dt_root) {if (of_flat_dt_is_compatible (dt_root,"abilis,arc-tb10x" )) arc_base_baud =166666666 ;/* Fixed 166.6MHz clk (TB10x) */ -else if (of_flat_dt_is_compatible (dt_root,"snps,arc-sdp" )) - arc_base_baud =33333333 ;/* Fixed 33MHz clk (AXS10x) */ +else if (of_flat_dt_is_compatible (dt_root,"snps,arc-sdp" ) || +of_flat_dt_is_compatible (dt_root,"snps,hsdk" )) + arc_base_baud =33333333 ;/* Fixed 33MHz clk (AXS10x & HSDK) */ else if (of_flat_dt_is_compatible (dt_root,"ezchip,arc-nps" )) arc_base_baud =800000000 ;/* Fixed 800MHz clk (NPS) */ else
arch/arc/plat-hsdk/Kconfig new file +12 -0
@@ -0,0 +1,12 @@ +# +# Copyright (C) 2017 Synopsys, Inc. (www.synopsys.com) +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation. +# + +menuconfig ARC_PLAT_HSDK + bool "ARC HS Development Kit board" + help + Support for ARC HS Development Kit board
arch/arc/plat-hsdk/Makefile new file +9 -0
@@ -0,0 +1,9 @@ +# +# Copyright (C) 2017 Synopsys, Inc. (www.synopsys.com) +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation. +# + +obj-y := platform.o
arch/arc/plat-hsdk/platform.c new file +59 -0
59 lines not on this page · raw message
Signature · 1 line
2.7.5