From 022f061632133c8c5b3901ec4500426cb7091f72 Mon Sep 17 00:00:00 2001 From: Wayne Ren Date: Fri, 16 Nov 2018 12:10:55 +0800 Subject: [PATCH] board: add the initial support of iotdk The initial support of iotdk which is a board based on Synopsys ARC IoT SoC. In this commit, it includes * processor support * UART driver Signed-off-by: Wayne Ren --- boards/arc/iotdk/CMakeLists.txt | 1 + boards/arc/iotdk/Kconfig.board | 11 + boards/arc/iotdk/Kconfig.defconfig | 10 + boards/arc/iotdk/arc_mpu_regions.c | 73 ++++++ boards/arc/iotdk/board.cmake | 4 + boards/arc/iotdk/board.dtsi | 0 boards/arc/iotdk/doc/board.rst | 200 ++++++++++++++++ boards/arc/iotdk/doc/iotdk_board.jpg | Bin 0 -> 187350 bytes boards/arc/iotdk/iotdk.dts | 30 +++ boards/arc/iotdk/iotdk.yaml | 16 ++ boards/arc/iotdk/iotdk_defconfig | 13 ++ boards/arc/iotdk/support/openocd.cfg | 52 +++++ dts/arc/arc_iot.dtsi | 257 +++++++++++++++++++++ soc/arc/snps_arc_iot/CMakeLists.txt | 13 ++ soc/arc/snps_arc_iot/Kconfig.defconfig | 142 ++++++++++++ soc/arc/snps_arc_iot/Kconfig.soc | 9 + soc/arc/snps_arc_iot/dts_fixup.h | 49 ++++ soc/arc/snps_arc_iot/linker.ld | 43 ++++ soc/arc/snps_arc_iot/soc.c | 29 +++ soc/arc/snps_arc_iot/soc.h | 60 +++++ soc/arc/snps_arc_iot/soc_irq.h | 117 ++++++++++ soc/arc/snps_arc_iot/sysconf.c | 305 +++++++++++++++++++++++++ soc/arc/snps_arc_iot/sysconf.h | 168 ++++++++++++++ 23 files changed, 1602 insertions(+) create mode 100644 boards/arc/iotdk/CMakeLists.txt create mode 100644 boards/arc/iotdk/Kconfig.board create mode 100644 boards/arc/iotdk/Kconfig.defconfig create mode 100644 boards/arc/iotdk/arc_mpu_regions.c create mode 100644 boards/arc/iotdk/board.cmake create mode 100644 boards/arc/iotdk/board.dtsi create mode 100644 boards/arc/iotdk/doc/board.rst create mode 100644 boards/arc/iotdk/doc/iotdk_board.jpg create mode 100644 boards/arc/iotdk/iotdk.dts create mode 100644 boards/arc/iotdk/iotdk.yaml create mode 100644 boards/arc/iotdk/iotdk_defconfig create mode 100644 boards/arc/iotdk/support/openocd.cfg create mode 100644 dts/arc/arc_iot.dtsi create mode 100644 soc/arc/snps_arc_iot/CMakeLists.txt create mode 100644 soc/arc/snps_arc_iot/Kconfig.defconfig create mode 100644 soc/arc/snps_arc_iot/Kconfig.soc create mode 100644 soc/arc/snps_arc_iot/dts_fixup.h create mode 100644 soc/arc/snps_arc_iot/linker.ld create mode 100644 soc/arc/snps_arc_iot/soc.c create mode 100644 soc/arc/snps_arc_iot/soc.h create mode 100644 soc/arc/snps_arc_iot/soc_irq.h create mode 100644 soc/arc/snps_arc_iot/sysconf.c create mode 100644 soc/arc/snps_arc_iot/sysconf.h diff --git a/boards/arc/iotdk/CMakeLists.txt b/boards/arc/iotdk/CMakeLists.txt new file mode 100644 index 00000000000..ba9f9e45f8f --- /dev/null +++ b/boards/arc/iotdk/CMakeLists.txt @@ -0,0 +1 @@ +zephyr_sources_ifdef(CONFIG_ARC_MPU_ENABLE arc_mpu_regions.c) diff --git a/boards/arc/iotdk/Kconfig.board b/boards/arc/iotdk/Kconfig.board new file mode 100644 index 00000000000..57d642770a7 --- /dev/null +++ b/boards/arc/iotdk/Kconfig.board @@ -0,0 +1,11 @@ +# Kconfig - DesignWare ARC IoT Development Kit board configuration +# +# Copyright (c) 2018 Synopsys, Inc. All rights reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# +config BOARD_IOTDK + bool "ARC IoT Development Kit" + depends on SOC_ARC_IOT + help + The DesignWare ARC IoT Development Kit board is a versatile platform that includes the necessary hardware and software to accelerate software development and debugging of sensor fusion, voice recognition and face detection designs. It includes a silicon implementation of the ARC Data Fusion IP Subsystem running at 144 MHz on SMIC's 55-nm ultra-low power process, and a rich set of peripherals commonly used in IoT designs such as USB, UART, SPI, I2C, PWM, SDIO and ADCs. diff --git a/boards/arc/iotdk/Kconfig.defconfig b/boards/arc/iotdk/Kconfig.defconfig new file mode 100644 index 00000000000..7a9a0d834c2 --- /dev/null +++ b/boards/arc/iotdk/Kconfig.defconfig @@ -0,0 +1,10 @@ + +if BOARD_IOTDK + +config BOARD + default "iotdk" + +config CPU_ARCEM4 + def_bool y + +endif # BOARD_IOTDK diff --git a/boards/arc/iotdk/arc_mpu_regions.c b/boards/arc/iotdk/arc_mpu_regions.c new file mode 100644 index 00000000000..a31cf35777b --- /dev/null +++ b/boards/arc/iotdk/arc_mpu_regions.c @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2018 Synopsys + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include +#include +#include +#include + +#ifdef CONFIG_USERSPACE +static struct arc_mpu_region mpu_regions[] = { + /* Region ICCM */ + MPU_REGION_ENTRY("ICCM", + CONFIG_ICCM_BASE_ADDRESS, + CONFIG_ICCM_SIZE * 1024, + REGION_FLASH_ATTR), + /* Region DCCM */ + MPU_REGION_ENTRY("DCCM", + CONFIG_DCCM_BASE_ADDRESS, + CONFIG_DCCM_SIZE * 1024, + AUX_MPU_RDP_KW | AUX_MPU_RDP_KR), + /* Region DDR RAM */ + MPU_REGION_ENTRY("SRAM", + CONFIG_SRAM_BASE_ADDRESS, + CONFIG_SRAM_SIZE * 1024, + AUX_MPU_RDP_KW | AUX_MPU_RDP_KR | + AUX_MPU_RDP_KE | AUX_MPU_RDP_UE), + MPU_REGION_ENTRY("FLASH_0", + CONFIG_FLASH_BASE_ADDRESS, + CONFIG_FLASH_SIZE * 1024, + AUX_MPU_RDP_KR | + AUX_MPU_RDP_KE | AUX_MPU_RDP_UE), + /* Region Peripheral */ + MPU_REGION_ENTRY("PERIPHERAL", + 0xF0000000, + 64 * 1024, + AUX_MPU_RDP_KW | AUX_MPU_RDP_KR), +}; +#else /* CONFIG_USERSPACE */ +static struct arc_mpu_region mpu_regions[] = { + /* Region ICCM */ + MPU_REGION_ENTRY("ICCM", + CONFIG_ICCM_BASE_ADDRESS, + CONFIG_ICCM_SIZE * 1024, + REGION_FLASH_ATTR), + /* Region DCCM */ + MPU_REGION_ENTRY("DCCM", + CONFIG_DCCM_BASE_ADDRESS, + CONFIG_DCCM_SIZE * 1024, + REGION_RAM_ATTR), + MPU_REGION_ENTRY("FLASH_0", + CONFIG_FLASH_BASE_ADDRESS, + CONFIG_FLASH_SIZE * 1024, + REGION_FLASH_ATTR), + /* Region DDR RAM */ + MPU_REGION_ENTRY("SRAM", + CONFIG_SRAM_BASE_ADDRESS, + CONFIG_SRAM_SIZE * 1024, + REGION_ALL_ATTR), + /* Region Peripheral */ + MPU_REGION_ENTRY("PERIPHERAL", + 0xF0000000, + 64 * 1024, + REGION_IO_ATTR), +}; +#endif + +struct arc_mpu_config mpu_config = { + .num_regions = ARRAY_SIZE(mpu_regions), + .mpu_regions = mpu_regions, +}; diff --git a/boards/arc/iotdk/board.cmake b/boards/arc/iotdk/board.cmake new file mode 100644 index 00000000000..02525f205af --- /dev/null +++ b/boards/arc/iotdk/board.cmake @@ -0,0 +1,4 @@ +# TODO: can this board just use the usual openocd runner? +set(BOARD_FLASH_RUNNER em-starterkit) +set(BOARD_DEBUG_RUNNER em-starterkit) +board_finalize_runner_args(em-starterkit) diff --git a/boards/arc/iotdk/board.dtsi b/boards/arc/iotdk/board.dtsi new file mode 100644 index 00000000000..e69de29bb2d diff --git a/boards/arc/iotdk/doc/board.rst b/boards/arc/iotdk/doc/board.rst new file mode 100644 index 00000000000..eb0646ca8d3 --- /dev/null +++ b/boards/arc/iotdk/doc/board.rst @@ -0,0 +1,200 @@ +.. _iotdk: + +DesignWare(R) ARC(R) IoT Development Kit +######################################## + +Overview +******** + +The DesignWare(R) ARC(R) IoT Development Kit is a versatile platform that +includes the necessary hardware and software to accelerate software +development and debugging of sensor fusion, voice recognition, and face +detection designs. The ARC IoT Development Kit includes a silicon +implementation of the ARC Data Fusion IP Subsystem running at 144 MHz on +SMIC's 55-nm ultra-low power process, and a rich set of peripherals commonly +used in IoT designs such as USB, UART, SPI, I2C, PWM, SDIO, and ADCs. + +.. image:: iotdk_board.jpg + :width: 442px + :align: center + :alt: DesignWare(R) ARC(R)IoT Development Kit (synopsys.com) + +For details about the board, see: `ARC IoT Development Kit +(IoTDK) `__ + + +Hardware +******** + +For hardware feature details, refer to : `ARC IoT Development Kit +`__ + + +Programming and Debugging +************************* + +Required Hardware and Software +============================== + +To use Zephyr RTOS applications on the IoT Development Kit board, a few +additional pieces of hardware are required. + +* A micro USB cable provides power to the board; however, if the + board is to run standalone, the universal switching power adaptor (110-240V + AC to 5V DC), provided in the package, can be used to power the board. + +* :ref:`The Zephyr SDK ` + +* Terminal emulator software for use with the USB-UART. Suggestion: + `Putty Website`_. + +* (optional) A collection of Pmods, Arduino modules, or Mikro modules. + See `Digilent Pmod Modules`_ or develop your custom interfaces to attach + to the Pmod connector. + +Set up the ARC IoT Development Kit +================================== + +To run Zephyr application on IoT Development Kit, you need to +setup the board correctly. + +* Connect the digilent usb cable from your host to the board. + +* Connect the 5V DC power supply to your board (optional). + +Set up Zephyr Software +====================== + +Building Sample Applications +============================== + +You can try many of the sample applications or tests, but let us discuss +the one called :ref:`hello_world`. +It is found in :file:`$ZEPHYR_BASE/samples/hello_world`. + +Configuring +----------- + +You may need to write a prj_arc.conf file if the sample doesn't have one. +Next, you can use the menuconfig rule to configure the target. By specifying +``iotdk`` as the board configuration, you can select the ARC IoT Development +Kit board support for Zephyr. + +.. zephyr-app-commands:: + :board: iotdk + :zephyr-app: samples/hello_world + :goals: menuconfig + + +Building +-------- + +You can build an application in the usual way. Refer to +:ref:`build_an_application` for more details. Here is an example for +:ref:`hello_world`. + +.. zephyr-app-commands:: + :board: iotdk + :zephyr-app: samples/hello_world + :maybe-skip-config: + :goals: build + +Connecting Serial Output +========================= + +In the default configuration, Zephyr's IoT Development Kit images support +serial output via the USB-UART on the board. To enable serial output: + +* Open a serial port emulator (i.e. on Linux minicom, putty, screen, etc) + +* Specify the tty driver name, for example, on Linux this may be + :file:`/dev/ttyUSB0` + +* Set the communication settings to: + + +========= ===== +Parameter Value +========= ===== +Baud: 115200 +Data: 8 bits +Parity: None +Stopbits: 1 +========= ===== + +Debugging +========== + +Using the latest version of Zephyr SDK(>=0.9), you can debug and flash IoT +Development Kit directly. + +One option is to build and debug the application using the usual +Zephyr build system commands. + +.. zephyr-app-commands:: + :board: iotdk + :app: + :goals: debug + +At this point you can do your normal debug session. Set breakpoints and then +'c' to continue into the program. + +The other option is to launch a debug server, as follows. + +.. zephyr-app-commands:: + :board: iotdk + :app: + :goals: debugserver + +Then connect to the debug server at the IoT Development Kit from a second +console, from the build directory containing the output :file:`zephyr.elf`. + +.. code-block:: console + + $ cd + $ $ZEPHYR_SDK_INSTALL_DIR/sysroots/x86_64-pokysdk-linux/usr/bin/ \ + arc-zephyr-elf/arc-zephyr-elf-gdb zephyr.elf + (gdb) target remote localhost:3333 + (gdb) load + (gdb) b main + (gdb) c + +Flashing +======== + +If you just want to download the application to the IoT Development Kit's CCM +and run, you can do so in the usual way. + +.. zephyr-app-commands:: + :board: iotdk + :app: + :goals: flash + +This command still uses openocd and gdb to load the application elf file to +IoT Development Kit, but it will load the application and immediately run. If +power is removed, the application will be lost since it wasn't written to flash. + +Most of the time you will not be flashing your program but will instead debug +it using openocd and gdb. The program can be download via the USB cable into +the code and data memories. + +When you are ready to deploy the program so that it boots up automatically on +reset or power-up, you can follow the steps to place the program on SPI-FLASH +or internal eFlash. + +For instructions on how to write your program to FLASH, refer to the +documentation on the IoT Development Kit at the `embARC website`_. + +Release Notes +************* + +References +********** + +.. _embARC website: https://www.embarc.org + +.. _Designware ARC IoT Development Kit website: `_ + +.. _Digilent Pmod Modules: http://store.digilentinc.com/pmod-modules + +.. _Putty website: http://www.putty.org \ No newline at end of file diff --git a/boards/arc/iotdk/doc/iotdk_board.jpg b/boards/arc/iotdk/doc/iotdk_board.jpg new file mode 100644 index 0000000000000000000000000000000000000000..984068253382dfc21e58e196a5fae7723f0a1ea9 GIT binary patch literal 187350 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

Sld&6aX^;lqZ)z;7}o+_sI&37~~| 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
P- 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 +#include "board.dtsi" + +/ { + model = "iotdk"; + compatible = "snps,iotdk", "snps,iotdk"; + + aliases { + uart-0 = &uart0; + }; + + chosen { + zephyr,sram = &dccm0; + zephyr,flash = &flash0; + zephyr,console = &uart0; + }; +}; + +&uart0 { + status = "ok"; + current-speed = <115200>; +}; diff --git a/boards/arc/iotdk/iotdk.yaml b/boards/arc/iotdk/iotdk.yaml new file mode 100644 index 00000000000..9064b1e1e89 --- /dev/null +++ b/boards/arc/iotdk/iotdk.yaml @@ -0,0 +1,16 @@ +identifier: iotdk +name: IoT Development Kit +type: mcu +arch: arc +toolchain: + - zephyr + - xtools +ram: 128 +supported: + - i2c + - spi + - gpio +testing: + ignore_tags: + - net + - bluetooth diff --git a/boards/arc/iotdk/iotdk_defconfig b/boards/arc/iotdk/iotdk_defconfig new file mode 100644 index 00000000000..53064480e73 --- /dev/null +++ b/boards/arc/iotdk/iotdk_defconfig @@ -0,0 +1,13 @@ +CONFIG_ARC=y +CONFIG_SOC_ARC_IOT=y +CONFIG_BOARD_IOTDK=y +CONFIG_SYS_CLOCK_TICKS_PER_SEC=100 +CONFIG_XIP=n +CONFIG_BUILD_OUTPUT_BIN=n +CONFIG_PRINTK=y +CONFIG_ARCV2_INTERRUPT_UNIT=y +CONFIG_ARCV2_TIMER=y +CONFIG_CONSOLE=y +CONFIG_UART_CONSOLE=y +CONFIG_SERIAL=y +CONFIG_UART_INTERRUPT_DRIVEN=y \ No newline at end of file diff --git a/boards/arc/iotdk/support/openocd.cfg b/boards/arc/iotdk/support/openocd.cfg new file mode 100644 index 00000000000..97af4650254 --- /dev/null +++ b/boards/arc/iotdk/support/openocd.cfg @@ -0,0 +1,52 @@ +# Copyright (C) 2018 Synopsys, Inc. +# SPDX-License-Identifier: Apache-2.0 +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# 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. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see . + +# +# Synopsys DesignWare ARC IoT Development Kit +# + +# Configure JTAG cable +# IoT DK has built-in FT2232 chip, which is similar to Digilent HS-1. +interface ftdi +ftdi_vid_pid 0x0403 0x6010 +ftdi_layout_init 0x0088 0x008b +ftdi_channel 1 + + +# EM9D requires 8 MHz. +adapter_khz 8000 + +# ARCs support only JTAG. +transport select jtag + +source [find cpu/arc/em.tcl] + +set _CHIPNAME arc-em +set _TARGETNAME $_CHIPNAME.cpu + +# IOTDK IDENTITY is 0x200444b1 +jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -expected-id 0x200444b1 + +set _coreid 0 +set _dbgbase [expr 0x00000000 | ($_coreid << 13)] + +target create $_TARGETNAME arcv2 -chain-position $_TARGETNAME \ + -coreid 0 -dbgbase $_dbgbase -endian little + +# There is no SRST, so do a software reset +$_TARGETNAME configure -event reset-assert "arc_em_reset $_TARGETNAME" + +arc_em_init_regs \ No newline at end of file diff --git a/dts/arc/arc_iot.dtsi b/dts/arc/arc_iot.dtsi new file mode 100644 index 00000000000..a891938b6b5 --- /dev/null +++ b/dts/arc/arc_iot.dtsi @@ -0,0 +1,257 @@ +/* + * Copyright (c) 2018, Synopsys, Inc. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include "skeleton.dtsi" + +#include +#include + +/ { + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu@0 { + device_type = "cpu"; + compatible = "snps,arcem"; + reg = <1>; + }; + + intc: arcv2-intc { + compatible = "snps,arcv2-intc"; + interrupt-controller; + #interrupt-cells = <2>; + }; + }; + + iccm0: iccm@20000000 { + device_type = "memory"; + compatible = "arc,iccm"; + reg = <0x20000000 0x40000>; + }; + + dccm0: dccm@80000000 { + device_type = "memory"; + compatible = "arc,dccm"; + reg = <0x80000000 0x20000>; + }; + + + sram: memory@30000000 { + device_type = "memory"; + compatible = "mmio-sram"; + reg = <0x30000000 0x20000>; + }; + + flash0: flash@0 { + compatible = "soc-nv-flash"; + reg = <0x0 0x40000>; + }; + + soc { + #address-cells = <1>; + #size-cells = <1>; + compatible = "simple-bus"; + ranges; + + + uart0: uart@80014000 { + compatible = "ns16550"; + clock-frequency = <16000000>; + reg = <0x80014000 0x100>; + label = "UART_0"; + interrupts = <86 0>; + interrupt-parent = <&intc>; + }; + + uart1: uart@80014100 { + compatible = "ns16550"; + clock-frequency = <16000000>; + reg = <0x80014100 0x100>; + label = "UART_1"; + interrupts = <87 0>; + interrupt-parent = <&intc>; + + }; + + uart2: uart@80014200 { + compatible = "ns16550"; + clock-frequency = <16000000>; + reg = <0x80014200 0x1000>; + label = "UART_2"; + interrupts = <88 0>; + interrupt-parent = <&intc>; + + }; + + uart3: uart@80014300 { + compatible = "ns16550"; + clock-frequency = <144000000>; + reg = <0x80014300 0x100>; + label = "UART_3"; + interrupts = <89 0>; + interrupt-parent = <&intc>; + + }; + + gpio8b0: gpio@80017800 { + compatible = "intel,qmsi-ss-gpio"; + reg = <0x80017800 0x100>; + interrupts = <54 1>; + interrupt-parent = <&intc>; + label = "GPIO_8B_0"; + + gpio-controller; + #gpio-cells = <2>; + }; + + gpio8b1: gpio@80017900 { + compatible = "intel,qmsi-ss-gpio"; + reg = <0x80017900 0x100>; + interrupts = <55 1>; + interrupt-parent = <&intc>; + label = "GPIO_8B_1"; + + gpio-controller; + #gpio-cells = <2>; + }; + + gpio8b2: gpio@80017a00 { + compatible = "intel,qmsi-ss-gpio"; + reg = <0x80017a00 0x100>; + interrupts = <56 1>; + interrupt-parent = <&intc>; + label = "GPIO_8B_2"; + + gpio-controller; + #gpio-cells = <2>; + }; + + gpio8b3: gpio@80017b00 { + compatible = "intel,qmsi-ss-gpio"; + reg = <0x80017b00 0x100>; + interrupts = <57 1>; + interrupt-parent = <&intc>; + label = "GPIO_8B_3"; + + gpio-controller; + #gpio-cells = <2>; + }; + + gpio4b0: gpio@80017c00 { + compatible = "intel,qmsi-ss-gpio"; + reg = <0x80017c00 0x100>; + interrupts = <19 1>; + interrupt-parent = <&intc>; + label = "GPIO_4B_0"; + + gpio-controller; + #gpio-cells = <2>; + }; + + gpio4b1: gpio@80017d00 { + compatible = "intel,qmsi-ss-gpio"; + reg = <0x80017d00 0x100>; + interrupts = <52 1>; + interrupt-parent = <&intc>; + label = "GPIO_4B_1"; + + gpio-controller; + #gpio-cells = <2>; + }; + + gpio4b2: gpio@80017e00 { + compatible = "intel,qmsi-ss-gpio"; + reg = <0x80017e00 0x100>; + interrupts = <53 1>; + interrupt-parent = <&intc>; + label = "GPIO_4B_2"; + + gpio-controller; + #gpio-cells = <2>; + }; + + + i2c0: i2c@80012000 { + compatible = "intel,qmsi-ss-i2c"; + clock-frequency = ; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x80012000 0x100>; + interrupts = <58 1>, <61 1>, <60 1>, <59 1>; + interrupt-names = "error", "stop", "tx", "rx"; + interrupt-parent = <&intc>; + label = "I2C_0"; + + status = "disabled"; + }; + + i2c1: i2c@80012100 { + compatible = "intel,qmsi-ss-i2c"; + clock-frequency = ; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x80012100 0x100>; + interrupts = <62 1>, <65 1>, <64 1>, <63 1>; + interrupt-names = "error", "stop", "tx", "rx"; + interrupt-parent = <&intc>; + label = "I2C_1"; + + status = "disabled"; + }; + + i2c2: i2c@80012200 { + compatible = "intel,qmsi-ss-i2c"; + clock-frequency = ; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x80012200 0x100>; + interrupts = <66 1>, <69 1>, <68 1>, <67 1>; + interrupt-names = "error", "stop", "tx", "rx"; + interrupt-parent = <&intc>; + label = "I2C_2"; + + status = "disabled"; + }; + + spi0: spi@80010000 { + compatible = "snps,designware-spi"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x80010000 0x100>; + interrupts = <70 2>, <71 2>, <72 2>; + interrupt-names = "err-int", "rx-avail", "tx-req"; + interrupt-parent = <&intc>; + label = "SPI_0"; + status = "disabled"; + }; + + spi1: spi@80010100 { + compatible = "snps,designware-spi"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x80010100 0x100>; + interrupts = <74 2>, <75 2>, <76 2>; + interrupt-names = "err-int", "rx-avail", "tx-req"; + interrupt-parent = <&intc>; + label = "SPI_1"; + status = "disabled"; + }; + + spi2: spi@80010200 { + compatible = "snps,designware-spi"; + #address-cells = <1>; + #size-cells = <0>; + reg = <0x80010100 0x100>; + interrupts = <78 2>, <79 2>, <80 2>; + interrupt-names = "err-int", "rx-avail", "tx-req"; + interrupt-parent = <&intc>; + label = "SPI_2"; + status = "disabled"; + }; + + }; +}; diff --git a/soc/arc/snps_arc_iot/CMakeLists.txt b/soc/arc/snps_arc_iot/CMakeLists.txt new file mode 100644 index 00000000000..4621a3cdef4 --- /dev/null +++ b/soc/arc/snps_arc_iot/CMakeLists.txt @@ -0,0 +1,13 @@ +zephyr_library_include_directories(${ZEPHYR_BASE}/drivers) + +zephyr_cc_option(-mcpu=${GCC_M_CPU}) +zephyr_cc_option(-mno-sdata -mdiv-rem -mswap -mnorm) +zephyr_cc_option(-mmpy-option=6 -mbarrel-shifter) +zephyr_cc_option_ifdef(CONFIG_CODE_DENSITY -mcode-density) +zephyr_cc_option_ifdef(CONFIG_FLOAT -mfpu=fpuda_all) + + +zephyr_sources( + soc.c + sysconf.c + ) diff --git a/soc/arc/snps_arc_iot/Kconfig.defconfig b/soc/arc/snps_arc_iot/Kconfig.defconfig new file mode 100644 index 00000000000..b23fc13a92b --- /dev/null +++ b/soc/arc/snps_arc_iot/Kconfig.defconfig @@ -0,0 +1,142 @@ +# +# Copyright (c) 2014 Wind River Systems, Inc. +# Copyright (c) 2018 Synopsys, Inc. All rights reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +if SOC_ARC_IOT + +config SOC + string + default "snps_arc_iot" + +config CPU_EM4_FPUS + def_bool y + +config NUM_IRQ_PRIO_LEVELS + # This processor supports 4 priority levels: + # 0 for Fast Interrupts (FIRQs) and 1-3 for Regular Interrupts (IRQs). + default 4 + +config NUM_IRQS + # must be > the highest interrupt number used + default 95 + +config RGF_NUM_BANKS + default 2 + +config SYS_CLOCK_HW_CYCLES_PER_SEC + default 144000000 + +config HARVARD + def_bool y + +if SERIAL + +config UART_NS16550 + def_bool y + +endif # SERIAL + +if UART_CONSOLE + +config UART_NS16550_PORT_0 + def_bool y + +endif # UART_CONSOLE + + +if GPIO + +config GPIO_QMSI_SS + def_bool y + +if GPIO_QMSI_SS + +config GPIO_QMSI_SS_0 + def_bool y + +config GPIO_QMSI_SS_1 + def_bool y + +endif # GPIO_QMSI_SS + +endif # GPIO + +if I2C + +config I2C_QMSI_SS + def_bool y + +if I2C_QMSI_SS +config I2C_SS_0 + def_bool y + +config I2C_SS_1 + def_bool y + +config I2C_SS_SDA_SETUP + default 2 + +config I2C_SS_SDA_HOLD + default 10 + +endif + +endif # I2C + + +if SPI + +config SPI_DW + def_bool y + +if SPI_DW + +config SPI_DW_FIFO_DEPTH + default 7 + +config CLOCK_CONTROL + def_bool y + +config CLOCK_CONTROL_QUARK_SE + def_bool y + +config CLOCK_CONTROL_QUARK_SE_SENSOR + def_bool y + +config SPI_0 + def_bool y + +config SPI_DW_PORT_0_INTERRUPT_SINGLE_LINE + def_bool n + +config SPI_DW_PORT_0_CLOCK_GATE + def_bool y + +config SPI_DW_PORT_0_CLOCK_GATE_DRV_NAME + default CLOCK_CONTROL_QUARK_SE_SENSOR_DRV_NAME + +config SPI_DW_PORT_0_CLOCK_GATE_SUBSYS + default 3 + +config SPI_1 + def_bool y + +config SPI_DW_PORT_1_INTERRUPT_SINGLE_LINE + def_bool n + +config SPI_DW_PORT_1_CLOCK_GATE + def_bool y + +config SPI_DW_PORT_1_CLOCK_GATE_DRV_NAME + default CLOCK_CONTROL_QUARK_SE_SENSOR_DRV_NAME + +config SPI_DW_PORT_1_CLOCK_GATE_SUBSYS + default 4 + +endif # SPI_DW +endif # SPI + +endif #ARC_IOT diff --git a/soc/arc/snps_arc_iot/Kconfig.soc b/soc/arc/snps_arc_iot/Kconfig.soc new file mode 100644 index 00000000000..676903b56bd --- /dev/null +++ b/soc/arc/snps_arc_iot/Kconfig.soc @@ -0,0 +1,9 @@ +# +# Copyright (c) 2014 Wind River Systems, Inc. +# Copyright (c) 2018 Synopsys, Inc. All rights reserved. +# +# SPDX-License-Identifier: Apache-2.0 +# + +config SOC_ARC_IOT + bool "Synopsys ARC IoT SoC" diff --git a/soc/arc/snps_arc_iot/dts_fixup.h b/soc/arc/snps_arc_iot/dts_fixup.h new file mode 100644 index 00000000000..b26b8e33014 --- /dev/null +++ b/soc/arc/snps_arc_iot/dts_fixup.h @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2018 Synopsys, Inc. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/* SoC level DTS fixup file */ + +/* CCM configuration */ +#define CONFIG_DCCM_BASE_ADDRESS ARC_DCCM_80000000_BASE_ADDRESS +#define CONFIG_DCCM_SIZE (ARC_DCCM_80000000_SIZE >> 10) + +#define CONFIG_ICCM_BASE_ADDRESS ARC_ICCM_20000000_BASE_ADDRESS +#define CONFIG_ICCM_SIZE (ARC_ICCM_20000000_SIZE >> 10) + +/* + * UART configuration + */ +#define CONFIG_UART_NS16550_PORT_0_BASE_ADDR NS16550_80014000_BASE_ADDRESS +#define CONFIG_UART_NS16550_PORT_0_IRQ NS16550_80014000_IRQ_0 +#define CONFIG_UART_NS16550_PORT_0_CLK_FREQ NS16550_80014000_CLOCK_FREQUENCY +#define CONFIG_UART_NS16550_PORT_0_BAUD_RATE NS16550_80014000_CURRENT_SPEED +#define CONFIG_UART_NS16550_PORT_0_NAME NS16550_80014000_LABEL +#define CONFIG_UART_NS16550_PORT_0_IRQ_PRI NS16550_80014000_IRQ_0_PRIORITY + +#define CONFIG_UART_NS16550_PORT_1_BASE_ADDR NS16550_80014100_BASE_ADDRESS +#define CONFIG_UART_NS16550_PORT_1_IRQ NS16550_80014100_IRQ_0 +#define CONFIG_UART_NS16550_PORT_1_CLK_FREQ NS16550_80014100_CLOCK_FREQUENCY +#define CONFIG_UART_NS16550_PORT_1_BAUD_RATE NS16550_80014100_CURRENT_SPEED +#define CONFIG_UART_NS16550_PORT_1_NAME NS16550_80014100_LABEL +#define CONFIG_UART_NS16550_PORT_1_IRQ_PRI NS16550_80014100_IRQ_0_PRIORITY + +#define CONFIG_UART_NS16550_PORT_2_BASE_ADDR NS16550_80014200_BASE_ADDRESS +#define CONFIG_UART_NS16550_PORT_2_IRQ NS16550_80014200_IRQ_0 +#define CONFIG_UART_NS16550_PORT_2_CLK_FREQ NS16550_80014200_CLOCK_FREQUENCY +#define CONFIG_UART_NS16550_PORT_2_BAUD_RATE NS16550_80014200_CURRENT_SPEED +#define CONFIG_UART_NS16550_PORT_2_NAME NS16550_80014200_LABEL +#define CONFIG_UART_NS16550_PORT_2_IRQ_PRI NS16550_80014200_IRQ_0_PRIORITY + + +#define CONFIG_UART_NS16550_PORT_3_BASE_ADDR NS16550_80014300_BASE_ADDRESS +#define CONFIG_UART_NS16550_PORT_3_IRQ NS16550_80014300_IRQ_0 +#define CONFIG_UART_NS16550_PORT_3_CLK_FREQ NS16550_80014300_CLOCK_FREQUENCY +#define CONFIG_UART_NS16550_PORT_3_BAUD_RATE NS16550_80014300_CURRENT_SPEED +#define CONFIG_UART_NS16550_PORT_3_NAME NS16550_80014300_LABEL +#define CONFIG_UART_NS16550_PORT_3_IRQ_PRI NS16550_80014300_IRQ_0_PRIORITY + + +/* End of SoC Level DTS fixup file */ diff --git a/soc/arc/snps_arc_iot/linker.ld b/soc/arc/snps_arc_iot/linker.ld new file mode 100644 index 00000000000..4d8a9647922 --- /dev/null +++ b/soc/arc/snps_arc_iot/linker.ld @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2018 Synopsys, Inc. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/** + * @brief Linker script for the Synopsys ARC IoT Development Kit + */ + +#include + +/* + * SRAM base address and size + * + */ +#if defined(CONFIG_SRAM_BASE_ADDRESS) && (CONFIG_SRAM_SIZE > 0) +#define SRAM_START CONFIG_SRAM_BASE_ADDRESS +#define SRAM_SIZE CONFIG_SRAM_SIZE +#endif + +#if defined(CONFIG_FLASH_BASE_ADDRESS) && (CONFIG_FLASH_SIZE > 0) +#define FLASH_START CONFIG_FLASH_BASE_ADDRESS +#define FLASH_SIZE CONFIG_FLASH_SIZE +#endif + + +/* Instruction Closely Coupled Memory (ICCM) base address and size */ +#if defined(CONFIG_ICCM_BASE_ADDRESS) && (CONFIG_ICCM_SIZE > 0) +#define ICCM_START CONFIG_ICCM_BASE_ADDRESS +#define ICCM_SIZE CONFIG_ICCM_SIZE +#endif + +/* + * DCCM base address and size. DCCM is the data memory. + */ +/* Data Closely Coupled Memory (DCCM) base address and size */ +#if defined(CONFIG_DCCM_BASE_ADDRESS) && (CONFIG_DCCM_SIZE > 0) +#define DCCM_START CONFIG_DCCM_BASE_ADDRESS +#define DCCM_SIZE CONFIG_DCCM_SIZE +#endif + +#include diff --git a/soc/arc/snps_arc_iot/soc.c b/soc/arc/snps_arc_iot/soc.c new file mode 100644 index 00000000000..fe66ac7ae43 --- /dev/null +++ b/soc/arc/snps_arc_iot/soc.c @@ -0,0 +1,29 @@ + +/* + * Copyright (c) 2018 Synopsys, Inc. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/** + * This module provides routines to initialize and support board-level hardware + * for the IoT Development Kit board. + * + */ +#include +#include +#include "sysconf.h" + +static int arc_iot_init(struct device *dev) +{ + ARG_UNUSED(dev); + + if (arc_iot_pll_fout_config( + CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC/1000000) < 0) { + return -1; + } + + return 0; +} + +SYS_INIT(arc_iot_init, PRE_KERNEL_1, CONFIG_KERNEL_INIT_PRIORITY_DEFAULT); diff --git a/soc/arc/snps_arc_iot/soc.h b/soc/arc/snps_arc_iot/soc.h new file mode 100644 index 00000000000..f1aca165a07 --- /dev/null +++ b/soc/arc/snps_arc_iot/soc.h @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2018 Synopsys, Inc. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/** + * @brief Board configuration macros for EM Starter kit board + * + * This header file is used to specify and describe board-level + * aspects for the target. + */ + +#ifndef _SOC_H_ +#define _SOC_H_ + +#include + +/* default system clock */ +#define SYSCLK_DEFAULT_IOSC_HZ MHZ(16) + +/* + * UART + */ +#define UART_NS16550_ACCESS_IOPORT + + +/* ARC EM Core IRQs */ +#define IRQ_TIMER0 16 +#define IRQ_TIMER1 17 +#include "soc_irq.h" + +#define BASE_ADDR_SYSCONFIG 0xF000A000 + +#ifndef _ASMLANGUAGE + + +#include +#include + +#define ARCV2_TIMER0_INT_LVL IRQ_TIMER0 +#define ARCV2_TIMER0_INT_PRI 0 + +#define ARCV2_TIMER1_INT_LVL IRQ_TIMER1 +#define ARCV2_TIMER1_INT_PRI 1 + +#define INT_ENABLE_ARC ~(0x00000001 << 8) +#define INT_ENABLE_ARC_BIT_POS (8) + +/* + * UARTs: UART0 & UART1 & UART2 + */ +#define CONFIG_UART_NS16550_PORT_0_IRQ_FLAGS 0 /* Default */ +#define CONFIG_UART_NS16550_PORT_1_IRQ_FLAGS 0 /* Default */ +#define CONFIG_UART_NS16550_PORT_2_IRQ_FLAGS 0 /* Default */ + + +#endif /* !_ASMLANGUAGE */ + +#endif /* _SOC_H_ */ diff --git a/soc/arc/snps_arc_iot/soc_irq.h b/soc/arc/snps_arc_iot/soc_irq.h new file mode 100644 index 00000000000..c3f11731b16 --- /dev/null +++ b/soc/arc/snps_arc_iot/soc_irq.h @@ -0,0 +1,117 @@ +/* + * Copyright (c) 2018 Synopsys, Inc. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#ifndef _ARC_IOT_SOC_IRQ_H_ +#define _ARC_IOT_SOC_IRQ_H_ + + +#define IRQ_WATCHDOG 18 +#define IRQ_GPIO_4B0 19 +#define IRQ_DMA0_DONE 20 +#define IRQ_DMA1_DONE 21 +#define IRQ_DMA2_DONE 22 +#define IRQ_DMA3_DONE 23 +#define IRQ_DMA4_DONE 24 +#define IRQ_DMA5_DONE 25 +#define IRQ_DMA6_DONE 26 +#define IRQ_DMA7_DONE 27 +#define IRQ_DMA8_DONE 28 +#define IRQ_DMA9_DONE 29 +#define IRQ_DMA10_DONE 30 +#define IRQ_DMA11_DONE 31 +#define IRQ_DMA12_DONE 32 +#define IRQ_DMA13_DONE 33 +#define IRQ_DMA14_DONE 34 +#define IRQ_DMA15_DONE 35 +#define IRQ_DMA0_ERR 36 +#define IRQ_DMA1_ERR 37 +#define IRQ_DMA2_ERR 38 +#define IRQ_DMA3_ERR 39 +#define IRQ_DMA4_ERR 40 +#define IRQ_DMA5_ERR 41 +#define IRQ_DMA6_ERR 42 +#define IRQ_DMA7_ERR 43 +#define IRQ_DMA8_ERR 44 +#define IRQ_DMA9_ERR 45 +#define IRQ_DMA10_ERR 46 +#define IRQ_DMA11_ERR 47 +#define IRQ_DMA12_ERR 48 +#define IRQ_DMA13_ERR 49 +#define IRQ_DMA14_ERR 50 +#define IRQ_DMA15_ERR 51 + +#define IRQ_GPIO_4B1 52 +#define IRQ_GPIO_4B2 53 +#define IRQ_GPIO_8B0 54 +#define IRQ_GPIO_8B1 55 +#define IRQ_GPIO_8B2 56 +#define IRQ_GPIO_8B3 57 + +#define IRQ_I2CMST0_MST_ERR 58 +#define IRQ_I2CMST0_MST_RX_AVAIL 59 +#define IRQ_I2CMST0_MST_TX_REQ 60 +#define IRQ_I2CMST0_MST_STOP_DET 61 +#define IRQ_I2CMST1_MST_ERR 62 +#define IRQ_I2CMST1_MST_RX_AVAIL 63 +#define IRQ_I2CMST1_MST_TX_REQ 64 +#define IRQ_I2CMST1_MST_STOP_DET 65 +#define IRQ_I2CMST2_MST_ERR 66 +#define IRQ_I2CMST2_MST_RX_AVAIL 67 +#define IRQ_I2CMST2_MST_TX_REQ 68 +#define IRQ_I2CMST2_MST_STOP_DET 69 + +/* SPI */ +#define IRQ_SPIMST0_MST_ERR 70 +#define IRQ_SPIMST0_MST_RX_AVAIL 71 +#define IRQ_SPIMST0_MST_TX_REQ 72 +#define IRQ_SPIMST0_MST_IDLE 73 +#define IRQ_SPIMST1_MST_ERR 74 +#define IRQ_SPIMST1_MST_RX_AVAIL 75 +#define IRQ_SPIMST1_MST_TX_REQ 76 +#define IRQ_SPIMST1_MST_IDLE 77 +#define IRQ_SPIMST2_MST_ERR 78 +#define IRQ_SPIMST2_MST_RX_AVAIL 79 +#define IRQ_SPIMST2_MST_TX_REQ 80 +#define IRQ_SPIMST2_MST_IDLE 81 + +#define IRQ_SPISLV0_SLV_ERR 82 +#define IRQ_SPISLV0_SLV_RX_AVAIL 83 +#define IRQ_SPISLV0_SLV_TX_REQ 84 +#define IRQ_SPISLV0_SLV_IDLE 85 + +/* UART */ +#define IRQ_UART0_UART 86 +#define IRQ_UART1_UART 87 +#define IRQ_UART2_UART 88 +#define IRQ_UART3_UART 89 + +#define IRQ_EXT_WAKE_UP 90 +#define IRQ_SDIO 91 +/* I2S */ +#define IRQ_I2S_TX_EMP_0 92 +#define IRQ_I2S_TX_OR_0 93 +#define IRQ_I2S_RX_DA_0 94 +#define IRQ_I2S_RX_OR_0 95 + +#define IRQ_USB 96 +#define IRQ_ADC 97 + +#define IRQ_DW_TIMER0 98 +#define IRQ_DW_TIMER1 99 +#define IRQ_DW_TIMER2 100 +#define IRQ_DW_TIMER3 101 +#define IRQ_DW_TIMER4 102 +#define IRQ_DW_TIMER5 103 +#define IRQ_DW_RTC 104 +#define IRQ_DW_I3C 105 + +#define IRQ_RESERVED0 106 +#define IRQ_RESERVED1 107 +#define IRQ_RESERVED2 108 +#define IRQ_RESERVED3 109 +#define IRQ_RESERVED4 110 + +#endif /* _ARC_IOT_SOC_IRQ_H_ */ diff --git a/soc/arc/snps_arc_iot/sysconf.c b/soc/arc/snps_arc_iot/sysconf.c new file mode 100644 index 00000000000..69a6c9d33ae --- /dev/null +++ b/soc/arc/snps_arc_iot/sysconf.c @@ -0,0 +1,305 @@ +/* + * Copyright (c) 2018 Synopsys, Inc. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +#include "soc.h" +#include "sysconf.h" + + +#define PLL_CLK_IN (SYSCLK_DEFAULT_IOSC_HZ / 1000000) /* PLL clock in */ + + +#define sysconf_reg_ptr ((sysconf_reg_t *)(BASE_ADDR_SYSCONFIG)) + + +typedef struct pll_conf { + uint32_t fout; + uint32_t pll; +} pll_conf_t; + +#define PLL_CONF_VAL(n, m, od) \ + (((n) << PLLCON_BIT_OFFSET_N) | \ + ((m) << (PLLCON_BIT_OFFSET_M)) | \ + ((od) << PLLCON_BIT_OFFSET_OD)) + + +/* the following configuration is based on Fin = 16 Mhz */ +static const pll_conf_t pll_configuration[] = { + {100, PLL_CONF_VAL(1, 25, 2)}, /* 100 Mhz */ + {50, PLL_CONF_VAL(1, 25, 3)}, /* 50 Mhz */ + {150, PLL_CONF_VAL(4, 75, 1)}, /* 150 Mhz */ + {75, PLL_CONF_VAL(4, 75, 2)}, /* 75 Mhz */ + {25, PLL_CONF_VAL(2, 25, 3)}, /* 25 Mhz */ + {72, PLL_CONF_VAL(8, 144, 2)}, /* 72 Mhz */ + {144, PLL_CONF_VAL(8, 144, 1)}, /* 144 Mhz */ +}; + + +/** + * PLL Fout = Fin * M/ (N *n NO) + * + * Fref = Fin / N; Fvco = Fref * M Fout = Fvco / NO + * + * N = input divider value (1, 2, 3 … 15) + * M = feedback divider value (4, 5, 6 … 16383) + * NO = output divider value (1, 2, 4, or 8) + * + * 1 Mhz <= Fref <= 50 Mhz + * 200 Mhz <= Fvco <= 400 Mhz + * + */ +void arc_iot_pll_conf_reg(uint32_t val) +{ + + sysconf_reg_ptr->CLKSEL = CLKSEL_EXT_16M; + /* 0x52000000 is not described in spec. */ + sysconf_reg_ptr->PLLCON = val | (0x52000000); + + sysconf_reg_ptr->PLLCON = val | (1 << PLLCON_BIT_OFFSET_PLLRST); + sysconf_reg_ptr->PLLCON = val & (~(1 << PLLCON_BIT_OFFSET_PLLRST)); + + while (!(sysconf_reg_ptr->PLLSTAT & (1 << PLLSTAT_BIT_OFFSET_PLLSTB))) + ; + + sysconf_reg_ptr->CLKSEL = CLKSEL_PLL; + /* from AHB_CLK_DIVIDER, not from DVFSS&PMC */ + sysconf_reg_ptr->AHBCLKDIV_SEL |= 1; + /* AHB clk divisor = 1 */ + sysconf_reg_ptr->AHBCLKDIV = 0x1; +} + +int32_t arc_iot_pll_fout_config(uint32_t freq) +{ + uint32_t i; + + if (freq == PLL_CLK_IN) { + sysconf_reg_ptr->CLKSEL = CLKSEL_EXT_16M; + } + + for (i = 0; i < ARRAY_SIZE(pll_configuration); i++) { + if (pll_configuration[i].fout == freq) { + break; + } + } + + if (i >= ARRAY_SIZE(pll_configuration)) { + return -1; + } + + /* config eflash clk, must be < 100 Mhz */ + if (freq > 100) { + arc_iot_eflash_clk_div(2); + } else { + arc_iot_eflash_clk_div(1); + } + + arc_iot_pll_conf_reg(pll_configuration[i].pll); + + return 0; +} + +void arc_iot_ahb_clk_divisor(uint8_t div) +{ + sysconf_reg_ptr->AHBCLKDIV = div; +} + +void arc_iot_ahb_clk_enable(uint8_t dev) +{ + if (dev > AHBCLKEN_BIT_SDIO) { + return; + } + + sysconf_reg_ptr->AHBCLKEN |= (1 << dev); +} + +void arc_iot_ahb_clk_disable(uint8_t dev) +{ + if (dev > AHBCLKEN_BIT_SDIO) { + return; + } + + sysconf_reg_ptr->AHBCLKEN &= (~(1 << dev)); +} + +void arc_iot_apb_clk_divisor(uint8_t div) +{ + sysconf_reg_ptr->APBCLKDIV = div; +} + +void arc_iot_apb_clk_enable(uint8_t dev) +{ + if (dev > APBCLKEN_BIT_I3C) { + return; + } + + sysconf_reg_ptr->APBCLKEN |= (1 << dev); +} + +void arc_iot_apb_clk_disable(uint8_t dev) +{ + if (dev > APBCLKEN_BIT_I3C) { + return; + } + + sysconf_reg_ptr->APBCLKEN &= (~(1 << dev)); +} + +void arc_iot_dio_clk_divisor(uint8_t div) +{ + sysconf_reg_ptr->SDIO_REFCLK_DIV; +} + + +void arc_iot_spi_master_clk_divisor(uint8_t id, uint8_t div) +{ + if (id == SPI_MASTER_0) { + sysconf_reg_ptr->SPI_MST_CLKDIV = + (sysconf_reg_ptr->SPI_MST_CLKDIV & 0xffffff00) | div; + } else if (id == SPI_MASTER_1) { + sysconf_reg_ptr->SPI_MST_CLKDIV = + (sysconf_reg_ptr->SPI_MST_CLKDIV & 0xffff00ff) | (div << 8); + } else if (id == SPI_MASTER_2) { + sysconf_reg_ptr->SPI_MST_CLKDIV = + (sysconf_reg_ptr->SPI_MST_CLKDIV & 0xff00ffff) | (div << 16); + } +} + +void arc_iot_gpio8b_dbclk_div(uint8_t bank, uint8_t div) +{ + if (bank == GPIO8B_BANK0) { + sysconf_reg_ptr->GPIO8B_DBCLK_DIV = + (sysconf_reg_ptr->GPIO8B_DBCLK_DIV & 0xffffff00) | div; + } else if (bank == GPIO8B_BANK1) { + sysconf_reg_ptr->GPIO8B_DBCLK_DIV = + (sysconf_reg_ptr->GPIO8B_DBCLK_DIV & 0xffff00ff) | (div << 8); + } else if (bank == GPIO8B_BANK2) { + sysconf_reg_ptr->GPIO8B_DBCLK_DIV = + (sysconf_reg_ptr->GPIO8B_DBCLK_DIV & 0xff00ffff) | (div << 16); + } else if (bank == GPIO8B_BANK3) { + sysconf_reg_ptr->GPIO8B_DBCLK_DIV = + (sysconf_reg_ptr->GPIO8B_DBCLK_DIV & 0x00ffffff) | (div << 24); + } +} + +void arc_iot_gpio4b_dbclk_div(uint8_t bank, uint8_t div) +{ + if (bank == GPIO4B_BANK0) { + sysconf_reg_ptr->GPIO4B_DBCLK_DIV = + (sysconf_reg_ptr->GPIO4B_DBCLK_DIV & 0xffffff00) | div; + } else if (bank == GPIO4B_BANK1) { + sysconf_reg_ptr->GPIO4B_DBCLK_DIV = + (sysconf_reg_ptr->GPIO4B_DBCLK_DIV & 0xffff00ff) | (div << 8); + } else if (bank == GPIO4B_BANK2) { + sysconf_reg_ptr->GPIO4B_DBCLK_DIV = + (sysconf_reg_ptr->GPIO4B_DBCLK_DIV & 0xff00ffff) | (div << 16); + } +} + +void arc_iot_i2s_tx_clk_div(uint8_t div) +{ + sysconf_reg_ptr->I2S_TX_SCLKDIV = div; +} + +void arc_iot_i2s_rx_clk_div(uint8_t div) +{ + sysconf_reg_ptr->I2S_RX_SCLKDIV = div; +} + +void arc_iot_i2s_rx_clk_sel(uint8_t sel) +{ + sysconf_reg_ptr->I2S_RX_SCLKSEL = sel; +} + +void arc_iot_syscon_reset(void) +{ + sysconf_reg_ptr->RSTCON = 0x55AA6699; +} + +uint32_t arc_iot_is_poweron_rst(void) +{ + if (sysconf_reg_ptr->RSTSTAT & SYS_RST_SOFTWARE_ON) { + return 0; + } else { + return 1; + } +} + +void arc_iot_dvfs_clk_divisor(uint8_t level, uint8_t div) +{ + if (level == DVFS_PERF_LEVEL0) { + sysconf_reg_ptr->DVFS_CLKDIV = + (sysconf_reg_ptr->DVFS_CLKDIV & 0xffffff00) | div; + } else if (level == DVFS_PERF_LEVEL1) { + sysconf_reg_ptr->DVFS_CLKDIV = + (sysconf_reg_ptr->DVFS_CLKDIV & 0xffff00ff) | (div << 8); + } else if (level == DVFS_PERF_LEVEL2) { + sysconf_reg_ptr->DVFS_CLKDIV = + (sysconf_reg_ptr->DVFS_CLKDIV & 0xff00ffff) | (div << 16); + } else if (level == DVFS_PERF_LEVEL3) { + sysconf_reg_ptr->DVFS_CLKDIV = + (sysconf_reg_ptr->DVFS_CLKDIV & 0x00ffffff) | (div << 24); + } +} + +void arc_iot_dvfs_vdd_config(uint8_t level, uint8_t val) +{ + val &= 0xf; + + if (level == DVFS_PERF_LEVEL0) { + sysconf_reg_ptr->DVFS_VDDSET = + (sysconf_reg_ptr->DVFS_VDDSET & 0xfffffff0) | val; + } else if (level == DVFS_PERF_LEVEL1) { + sysconf_reg_ptr->DVFS_VDDSET = + (sysconf_reg_ptr->DVFS_VDDSET & 0xffffff0f) | (val << 4); + } else if (level == DVFS_PERF_LEVEL2) { + sysconf_reg_ptr->DVFS_VDDSET = + (sysconf_reg_ptr->DVFS_VDDSET & 0xfffff0ff) | (val << 8); + } else if (level == DVFS_PERF_LEVEL3) { + sysconf_reg_ptr->DVFS_CLKDIV = + (sysconf_reg_ptr->DVFS_CLKDIV & 0xffff0fff) | (val << 12); + } +} + +void arc_iot_dvfs_vwtime_config(uint8_t time) +{ + sysconf_reg_ptr->DVFS_VWTIME = time; +} + +void arc_iot_pmc_pwwtime_config(uint8_t time) +{ + sysconf_reg_ptr->PMC_PUWTIME = time; +} + +void arc_iot_uart3_clk_divisor(uint8_t div) +{ + sysconf_reg_ptr->UART3SCLK_DIV = div; +} + +void arc_iot_reset_powerdown_vector(uint32_t addr) +{ + sysconf_reg_ptr->RESET_PD_VECTOR = addr; +} + +void arc_iot_pwm_timer_pause(uint32_t id, uint32_t pause) +{ + uint32_t val = sysconf_reg_ptr->TIMER_PAUSE; + + if (id > PWM_TIMER5) { + return; + } + + if (pause) { + val |= (1 << id); + } else { + val &= (~(1 << id)); + } + + sysconf_reg_ptr->TIMER_PAUSE = val; +} + +void arc_iot_eflash_clk_div(uint8_t div) +{ + sysconf_reg_ptr->AHBCLKDIV |= (div << 8); +} \ No newline at end of file diff --git a/soc/arc/snps_arc_iot/sysconf.h b/soc/arc/snps_arc_iot/sysconf.h new file mode 100644 index 00000000000..d5a3102b92e --- /dev/null +++ b/soc/arc/snps_arc_iot/sysconf.h @@ -0,0 +1,168 @@ +/* + * Copyright (c) 2018 Synopsys, Inc. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + */ + + +#ifndef _ARC_IOT_SYSCONF_H_ +#define _ARC_IOT_SYSCONF_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +typedef struct sysconf_reg { + volatile uint32_t reserved1; /* 0x0 */ + volatile uint32_t AHBCLKDIV; /* AHB clock divisor */ + volatile uint32_t APBCLKDIV; /* APB clock divisor */ + volatile uint32_t APBCLKEN; /* APB module clock enable */ + volatile uint32_t CLKODIV; /* AHB clock output enable and divisor set */ + volatile uint32_t reserved2; /* 0x14 */ + volatile uint32_t RSTCON; /* reset contrl */ + volatile uint32_t RSTSTAT; /* reset status */ + volatile uint32_t AHBCLKDIV_SEL; /* AHB clock divisor select */ + volatile uint32_t CLKSEL; /* main clock source select */ + volatile uint32_t PLLSTAT; /* PLL status register */ + volatile uint32_t PLLCON; /* PLL control register */ + volatile uint32_t reserved3; /* 0x30 */ + volatile uint32_t AHBCLKEN; /* AHB module clock enbale */ + volatile uint32_t reserved4[2]; /* 0x38, 0x3c */ + volatile uint32_t I2S_TX_SCLKDIV; /* I2S TX SCLK divisor */ + volatile uint32_t I2S_RX_SCLKDIV; /* I2S RX SCLK divisor */ + volatile uint32_t I2S_RX_SCLKSEL; /* I2S RX SCLK source select */ + volatile uint32_t SDIO_REFCLK_DIV; /* SDIO reference clock divisor */ + volatile uint32_t GPIO4B_DBCLK_DIV; /* GPIO4B DBCLK divisor */ + volatile uint32_t IMAGE_CHK; /* Image pad status */ + volatile uint32_t PROT_RANGE; /* PROT range */ + volatile uint32_t SPI_MST_CLKDIV; /* SPI master clock divisor */ + volatile uint32_t DVFS_CLKDIV; /* DFSS main clock domain divider */ + volatile uint32_t DVFS_VDDSET; /* VDD setting */ + volatile uint32_t DVFS_VWTIME; /* VDD adjust waiting time */ + volatile uint32_t PMC_PUWTIME; /* power up waiting time */ + volatile uint32_t PMOD_MUX; /* PMOD IO mux */ + volatile uint32_t ARDUINO_MUX; /* arduino IO mux */ + volatile uint32_t USBPHY_PLL; /* USBPHY PLL */ + volatile uint32_t USBCFG; /* USB configuration */ + volatile uint32_t TIMER_PAUSE; /* PWM timer puse */ + volatile uint32_t GPIO8B_DBCLK_DIV; /* GPIO8B DBCLK divisor */ + volatile uint32_t RESET_PD_VECTOR; /* reset powerdown vector */ + volatile uint32_t UART3SCLK_DIV; /* UART3SCLK_DIV */ +} sysconf_reg_t; + +/* CLKSEL_CONST is not described in spec. */ +#define CLKSEL_CONST (0x5A690000) +#define CLKSEL_EXT_16M (0 | CLKSEL_CONST) +#define CLKSEL_PLL (1 | CLKSEL_CONST) +#define CLKSEL_EXT_32K (2 | CLKSEL_CONST) + +#define PLLCON_BIT_OFFSET_N 0 +#define PLLCON_BIT_OFFSET_M 4 +#define PLLCON_BIT_OFFSET_OD 20 +#define PLLCON_BIT_OFFSET_BP 24 +#define PLLCON_BIT_OFFSET_PLLRST 26 + + +#define PLLSTAT_BIT_OFFSET_PLLSTB 2 +#define PLLSTAT_BIT_OFFSET_PLLRDY 3 + + +#define AHBCLKEN_BIT_I2S 0 +#define AHBCLKEN_BIT_USB 1 +#define AHBCLKEN_BIT_FLASH 2 +#define AHBCLKEN_BIT_FMC 3 +#define AHBCLKEN_BIT_DVFS 4 +#define AHBCLKEN_BIT_PMC 5 +#define AHBCLKEN_BIT_BOOT_SPI 6 +#define AHBCLKEN_BIT_SDIO 7 + +#define APBCLKEN_BIT_ADC 0 +#define APBCLKEN_BIT_I2S_TX 1 +#define APBCLKEN_BIT_I2S_RX 2 +#define APBCLKEN_BIT_RTC 3 +#define APBCLKEN_BIT_PWM 4 +#define APBCLKEN_BIT_I3C 5 + + +#define SPI_MASTER_0 0 +#define SPI_MASTER_1 1 +#define SPI_MASTER_2 2 + +#define GPIO8B_BANK0 0 +#define GPIO8B_BANK1 1 +#define GPIO8B_BANK2 2 +#define GPIO8B_BANK3 3 + +#define GPIO4B_BANK0 0 +#define GPIO4B_BANK1 1 +#define GPIO4B_BANK2 2 + +/* reset caused by power on */ +#define SYS_RST_SOFTWARE_ON 0x2 + + +#define DVFS_PERF_LEVEL0 0 +#define DVFS_PERF_LEVEL1 1 +#define DVFS_PERF_LEVEL2 2 +#define DVFS_PERF_LEVEL3 3 + +/* pmode mux definition */ +#define PMOD_MUX_PMA (0x1) +#define PMOD_MUX_PMB (0x2) +#define PMOD_MUX_PMC (0x4) + +/* arduino mux definition */ +#define ARDUINO_MUX_UART (0x1) +#define ARDUINO_MUX_SPI (0x2) +#define ARDUINO_MUX_PWM0 (0x4) +#define ARDUINO_MUX_PWM1 (0x8) +#define ARDUINO_MUX_PWM2 (0x10) +#define ARDUINO_MUX_PWM3 (0x20) +#define ARDUINO_MUX_PWM4 (0x40) +#define ARDUINO_MUX_PWM5 (0x80) +#define ARDUINO_MUX_I2C (0x100) +#define ARDUINO_MUX_ADC0 (0x400) +#define ARDUINO_MUX_ADC1 (0x800) +#define ARDUINO_MUX_ADC2 (0x1000) +#define ARDUINO_MUX_ADC3 (0x2000) +#define ARDUINO_MUX_ADC4 (0x4000) +#define ARDUINO_MUX_ADC5 (0x8000) + +#define PWM_TIMER0 0 +#define PWM_TIMER1 1 +#define PWM_TIMER2 2 +#define PWM_TIMER3 3 +#define PWM_TIMER4 4 +#define PWM_TIMER5 5 + + +extern void arc_iot_pll_conf_reg(uint32_t val); +extern int32_t arc_iot_pll_fout_config(uint32_t freq); + +extern void arc_iot_ahb_clk_divisor(uint8_t div); +extern void arc_iot_ahb_clk_enable(uint8_t dev); +extern void arc_iot_ahb_clk_disable(uint8_t dev); +extern void arc_iot_sdio_clk_divisor(uint8_t div); +extern void arc_iot_spi_master_clk_divisor(uint8_t id, uint8_t div); +extern void arc_iot_gpio8b_dbclk_div(uint8_t bank, uint8_t div); +extern void arc_iot_gpio4b_dbclk_div(uint8_t bank, uint8_t div); +extern void arc_iot_i2s_tx_clk_div(uint8_t div); +extern void arc_iot_i2s_rx_clk_div(uint8_t div); +extern void arc_iot_i2s_rx_clk_sel(uint8_t sel); +extern void arc_iot_syscon_reset(void); +extern uint32_t arc_iot_is_poweron_rst(void); +extern void arc_iot_dvfs_clk_divisor(uint8_t level, uint8_t div); +extern void arc_iot_dvfs_vdd_config(uint8_t level, uint8_t val); +extern void arc_iot_dvfs_vwtime_config(uint8_t time); +extern void arc_iot_pmc_pwwtime_config(uint8_t time); +extern void arc_iot_uart3_clk_divisor(uint8_t div); +extern void arc_iot_reset_powerdown_vector(uint32_t addr); +extern void arc_iot_eflash_clk_div(uint8_t div); + +#ifdef __cplusplus +} +#endif + +#endif /* _ARC_IOT_SYSCONF_H_ */ \ No newline at end of file