From cc8be222d1cf37c4299c019b95d7d932f2a4bbcc Mon Sep 17 00:00:00 2001 From: Alexey Brodkin Date: Thu, 4 Aug 2016 14:35:01 +0300 Subject: arc: Rename ARCangel4 board to nSIM ARCangel was one of the main development boards back in the day but now it's gone and replaced by other boards like ARC SDP. But we also used to have simulation platform very similar to ARCangel4 in terms of CPU settings as well as basic IO like UART. Even though ARCangel4 is long gone now we have a replacement for simulation which is a plain or stand-alone nSIM and Free nSIM. Note Free nSIM is available for download here: https://www.synopsys.com/cgi-bin/dwarcnsim/req1.cgi And while at it: * Finally switch hex numerical values in nsim.h to defines from include/linux/sizes.h * Add defconfigs with ARC HS38 cores * Recreated all defconfigs with savedefconfig Signed-off-by: Alexey Brodkin diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig index f1dc6c8..b81d0ca 100644 --- a/arch/arc/Kconfig +++ b/arch/arc/Kconfig @@ -123,8 +123,8 @@ choice config TARGET_TB100 bool "Support tb100" -config TARGET_ARCANGEL4 - bool "Support arcangel4" +config TARGET_NSIM + bool "Support standalone nSIM & Free nSIM" config TARGET_AXS101 bool "Support axs101" diff --git a/arch/arc/dts/Makefile b/arch/arc/dts/Makefile index d4772ec..196f882 100644 --- a/arch/arc/dts/Makefile +++ b/arch/arc/dts/Makefile @@ -3,7 +3,7 @@ # dtb-$(CONFIG_TARGET_AXS101) += axs10x.dtb -dtb-$(CONFIG_TARGET_ARCANGEL4) += arcangel4.dtb +dtb-$(CONFIG_TARGET_NSIM) += nsim.dtb dtb-$(CONFIG_TARGET_TB100) += abilis_tb100.dtb targets += $(dtb-y) diff --git a/arch/arc/dts/arcangel4.dts b/arch/arc/dts/arcangel4.dts deleted file mode 100644 index bfcb9d8..0000000 --- a/arch/arc/dts/arcangel4.dts +++ /dev/null @@ -1,24 +0,0 @@ -/* - * Copyright (C) 2015 Synopsys, Inc. (www.synopsys.com) - * - * SPDX-License-Identifier: GPL-2.0+ - */ -/dts-v1/; - -#include "skeleton.dtsi" - -/ { - #address-cells = <1>; - #size-cells = <1>; - - aliases { - console = &arcuart0; - }; - - arcuart0: serial@0xc0fc1000 { - compatible = "snps,arc-uart"; - reg = <0xc0fc1000 0x100>; - clock-frequency = <80000000>; - }; - -}; diff --git a/arch/arc/dts/nsim.dts b/arch/arc/dts/nsim.dts new file mode 100644 index 0000000..69e16c2 --- /dev/null +++ b/arch/arc/dts/nsim.dts @@ -0,0 +1,24 @@ +/* + * Copyright (C) 2015-2016 Synopsys, Inc. (www.synopsys.com) + * + * SPDX-License-Identifier: GPL-2.0+ + */ +/dts-v1/; + +#include "skeleton.dtsi" + +/ { + #address-cells = <1>; + #size-cells = <1>; + + aliases { + console = &arcuart0; + }; + + arcuart0: serial@0xc0fc1000 { + compatible = "snps,arc-uart"; + reg = <0xc0fc1000 0x100>; + clock-frequency = <80000000>; + }; + +}; diff --git a/board/synopsys/Kconfig b/board/synopsys/Kconfig index 8ab48cd..27e5509 100644 --- a/board/synopsys/Kconfig +++ b/board/synopsys/Kconfig @@ -1,9 +1,9 @@ -if TARGET_ARCANGEL4 +if TARGET_NSIM config SYS_VENDOR default "synopsys" config SYS_CONFIG_NAME - default "arcangel4" + default "nsim" endif diff --git a/board/synopsys/MAINTAINERS b/board/synopsys/MAINTAINERS index 43114ce..b9bfd3c 100644 --- a/board/synopsys/MAINTAINERS +++ b/board/synopsys/MAINTAINERS @@ -1,6 +1,8 @@ - BOARD M: Alexey Brodkin S: Maintained -F: include/configs/arcangel4.h -F: configs/arcangel4_defconfig -F: configs/arcangel4-be_defconfig +F: include/configs/nsim.h +F: configs/nsim_700_defconfig +F: configs/nsim_700be_defconfig +F: configs/nsim_hs38_defconfig +F: configs/nsim_hs38be_defconfig diff --git a/configs/arcangel4-be_defconfig b/configs/arcangel4-be_defconfig deleted file mode 100644 index c0c2e4b..0000000 --- a/configs/arcangel4-be_defconfig +++ /dev/null @@ -1,15 +0,0 @@ -CONFIG_ARC=y -CONFIG_CPU_BIG_ENDIAN=y -CONFIG_TARGET_ARCANGEL4=y -CONFIG_DM_SERIAL=y -CONFIG_SYS_CLK_FREQ=70000000 -CONFIG_SYS_TEXT_BASE=0x81000000 -CONFIG_DEFAULT_DEVICE_TREE="arcangel4" -CONFIG_BOOTDELAY=3 -# CONFIG_CMD_IMLS is not set -# CONFIG_CMD_FLASH is not set -# CONFIG_CMD_SETEXPR is not set -CONFIG_OF_CONTROL=y -CONFIG_OF_EMBED=y -CONFIG_DM=y -CONFIG_USE_PRIVATE_LIBGCC=y diff --git a/configs/arcangel4_defconfig b/configs/arcangel4_defconfig deleted file mode 100644 index efa55d0..0000000 --- a/configs/arcangel4_defconfig +++ /dev/null @@ -1,15 +0,0 @@ -CONFIG_ARC=y -CONFIG_TARGET_ARCANGEL4=y -CONFIG_DM_SERIAL=y -CONFIG_SYS_CLK_FREQ=70000000 -CONFIG_SYS_TEXT_BASE=0x81000000 -CONFIG_DEFAULT_DEVICE_TREE="arcangel4" -CONFIG_BOOTDELAY=3 -CONFIG_SYS_PROMPT="arcangel4# " -# CONFIG_CMD_IMLS is not set -# CONFIG_CMD_FLASH is not set -# CONFIG_CMD_SETEXPR is not set -CONFIG_OF_CONTROL=y -CONFIG_OF_EMBED=y -CONFIG_DM=y -CONFIG_USE_PRIVATE_LIBGCC=y diff --git a/configs/nsim_700_defconfig b/configs/nsim_700_defconfig new file mode 100644 index 0000000..202f77c --- /dev/null +++ b/configs/nsim_700_defconfig @@ -0,0 +1,15 @@ +CONFIG_ARC=y +CONFIG_TARGET_NSIM=y +CONFIG_SYS_CLK_FREQ=70000000 +CONFIG_DM_SERIAL=y +CONFIG_SYS_TEXT_BASE=0x81000000 +CONFIG_DEFAULT_DEVICE_TREE="nsim" +CONFIG_BOOTDELAY=3 +CONFIG_SYS_PROMPT="nsim# " +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_SETEXPR is not set +CONFIG_OF_CONTROL=y +CONFIG_OF_EMBED=y +CONFIG_DM=y +CONFIG_USE_PRIVATE_LIBGCC=y diff --git a/configs/nsim_700be_defconfig b/configs/nsim_700be_defconfig new file mode 100644 index 0000000..b7f7924 --- /dev/null +++ b/configs/nsim_700be_defconfig @@ -0,0 +1,16 @@ +CONFIG_ARC=y +CONFIG_CPU_BIG_ENDIAN=y +CONFIG_TARGET_NSIM=y +CONFIG_SYS_CLK_FREQ=70000000 +CONFIG_DM_SERIAL=y +CONFIG_SYS_TEXT_BASE=0x81000000 +CONFIG_DEFAULT_DEVICE_TREE="nsim" +CONFIG_BOOTDELAY=3 +CONFIG_SYS_PROMPT="nsim# " +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_SETEXPR is not set +CONFIG_OF_CONTROL=y +CONFIG_OF_EMBED=y +CONFIG_DM=y +CONFIG_USE_PRIVATE_LIBGCC=y diff --git a/configs/nsim_hs38_defconfig b/configs/nsim_hs38_defconfig new file mode 100644 index 0000000..6b448ef --- /dev/null +++ b/configs/nsim_hs38_defconfig @@ -0,0 +1,16 @@ +CONFIG_ARC=y +CONFIG_ISA_ARCV2=y +CONFIG_TARGET_NSIM=y +CONFIG_SYS_CLK_FREQ=70000000 +CONFIG_DM_SERIAL=y +CONFIG_SYS_TEXT_BASE=0x81000000 +CONFIG_DEFAULT_DEVICE_TREE="nsim" +CONFIG_BOOTDELAY=3 +CONFIG_SYS_PROMPT="nsim# " +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_SETEXPR is not set +CONFIG_OF_CONTROL=y +CONFIG_OF_EMBED=y +CONFIG_DM=y +CONFIG_USE_PRIVATE_LIBGCC=y diff --git a/configs/nsim_hs38be_defconfig b/configs/nsim_hs38be_defconfig new file mode 100644 index 0000000..3e1c599 --- /dev/null +++ b/configs/nsim_hs38be_defconfig @@ -0,0 +1,17 @@ +CONFIG_ARC=y +CONFIG_ISA_ARCV2=y +CONFIG_CPU_BIG_ENDIAN=y +CONFIG_TARGET_NSIM=y +CONFIG_SYS_CLK_FREQ=70000000 +CONFIG_DM_SERIAL=y +CONFIG_SYS_TEXT_BASE=0x81000000 +CONFIG_DEFAULT_DEVICE_TREE="nsim" +CONFIG_BOOTDELAY=3 +CONFIG_SYS_PROMPT="nsim# " +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_SETEXPR is not set +CONFIG_OF_CONTROL=y +CONFIG_OF_EMBED=y +CONFIG_DM=y +CONFIG_USE_PRIVATE_LIBGCC=y diff --git a/include/configs/arcangel4.h b/include/configs/arcangel4.h deleted file mode 100644 index d608104..0000000 --- a/include/configs/arcangel4.h +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#ifndef _CONFIG_ARCANGEL4_H_ -#define _CONFIG_ARCANGEL4_H_ - -/* - * CPU configuration - */ -#define CONFIG_SYS_TIMER_RATE CONFIG_SYS_CLK_FREQ - -/* - * Memory configuration - */ -#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE - -#define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000 -#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE -#define CONFIG_SYS_SDRAM_SIZE 0x10000000 /* 256 Mb */ - -#define CONFIG_SYS_INIT_SP_ADDR \ - (CONFIG_SYS_SDRAM_BASE + 0x1000 - GENERATED_GBL_DATA_SIZE) - -#define CONFIG_SYS_MALLOC_LEN 0x200000 /* 2 MB */ -#define CONFIG_SYS_BOOTM_LEN 0x2000000 /* 32 MB */ -#define CONFIG_SYS_LOAD_ADDR 0x82000000 - -#define CONFIG_SYS_NO_FLASH - -/* - * UART configuration - * - */ -#define CONFIG_ARC_SERIAL -#define CONFIG_ARC_UART_BASE 0xC0FC1000 -#define CONFIG_BAUDRATE 115200 - -/* - * Command line configuration - */ -#define CONFIG_AUTO_COMPLETE -#define CONFIG_SYS_MAXARGS 16 - -/* - * Environment settings - */ -#define CONFIG_ENV_IS_NOWHERE -#define CONFIG_ENV_SIZE 0x00200 /* 512 bytes */ -#define CONFIG_ENV_OFFSET 0 - -/* - * Environment configuration - */ -#define CONFIG_BOOTFILE "uImage" -#define CONFIG_BOOTARGS "console=ttyARC0,115200n8" -#define CONFIG_LOADADDR CONFIG_SYS_LOAD_ADDR - -/* - * Console configuration - */ -#define CONFIG_SYS_LONGHELP -#define CONFIG_SYS_CBSIZE 256 -#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE -#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ - sizeof(CONFIG_SYS_PROMPT) + 16) - -#endif /* _CONFIG_ARCANGEL4_H_ */ diff --git a/include/configs/nsim.h b/include/configs/nsim.h new file mode 100644 index 0000000..1edc560 --- /dev/null +++ b/include/configs/nsim.h @@ -0,0 +1,72 @@ +/* + * Copyright (C) 2013-2016 Synopsys, Inc. All rights reserved. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef _CONFIG_NSIM_H_ +#define _CONFIG_NSIM_H_ + +#include + +/* + * CPU configuration + */ +#define CONFIG_SYS_TIMER_RATE CONFIG_SYS_CLK_FREQ + +/* + * Memory configuration + */ +#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE + +#define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000 +#define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE +#define CONFIG_SYS_SDRAM_SIZE SZ_256M + +#define CONFIG_SYS_INIT_SP_ADDR \ + (CONFIG_SYS_SDRAM_BASE + 0x1000 - GENERATED_GBL_DATA_SIZE) + +#define CONFIG_SYS_MALLOC_LEN SZ_2M +#define CONFIG_SYS_BOOTM_LEN SZ_32M +#define CONFIG_SYS_LOAD_ADDR 0x82000000 + +#define CONFIG_SYS_NO_FLASH + +/* + * UART configuration + * + */ +#define CONFIG_ARC_SERIAL +#define CONFIG_ARC_UART_BASE 0xC0FC1000 +#define CONFIG_BAUDRATE 115200 + +/* + * Command line configuration + */ +#define CONFIG_AUTO_COMPLETE +#define CONFIG_SYS_MAXARGS 16 + +/* + * Environment settings + */ +#define CONFIG_ENV_IS_NOWHERE +#define CONFIG_ENV_SIZE SZ_512 +#define CONFIG_ENV_OFFSET 0 + +/* + * Environment configuration + */ +#define CONFIG_BOOTFILE "uImage" +#define CONFIG_BOOTARGS "console=ttyARC0,115200n8" +#define CONFIG_LOADADDR CONFIG_SYS_LOAD_ADDR + +/* + * Console configuration + */ +#define CONFIG_SYS_LONGHELP +#define CONFIG_SYS_CBSIZE SZ_256 +#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE +#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ + sizeof(CONFIG_SYS_PROMPT) + 16) + +#endif /* _CONFIG_NSIM_H_ */ -- cgit v0.10.2