Skip to content

Commit

Permalink
boards: add EOS S3 Quick Feather board
Browse files Browse the repository at this point in the history
Add basic port for EOS S3 Quick Feather board.

Signed-off-by: Jan Kowalewski <jkowalewski@antmicro.com>
  • Loading branch information
Jan Kowalewski committed Sep 4, 2020
1 parent c77c222 commit 11763f7
Show file tree
Hide file tree
Showing 10 changed files with 149 additions and 0 deletions.
1 change: 1 addition & 0 deletions CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@
/boards/arm/qemu_cortex_a53/ @carlocaione
/boards/arm/qemu_cortex_r*/ @stephanosio
/boards/arm/qemu_cortex_m*/ @ioannisg
/boards/arm/quick_feather/ @kowalewskijan @kgugala
/boards/arm/xmc45_relax_kit/ @parthitce
/boards/arm/sam4e_xpro/ @nandojve
/boards/arm/sam4s_xplained/ @fallrisk
Expand Down
6 changes: 6 additions & 0 deletions boards/arm/quick_feather/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Copyright (c) 2020 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

zephyr_library_include_directories(${ZEPHYR_BASE}/drivers)
zephyr_library_sources(board.c)
zephyr_include_directories(.)
10 changes: 10 additions & 0 deletions boards/arm/quick_feather/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Quick Feather board

# Copyright (c) 2020 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

config BOARD_INIT_PRIORITY
int
default KERNEL_INIT_PRIORITY_DEFAULT
help
Board initialization priority.
8 changes: 8 additions & 0 deletions boards/arm/quick_feather/Kconfig.board
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Quick Feather board

# Copyright (c) 2020 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

config BOARD_QUICK_FEATHER
bool "QuickLogic Quick Feather target"
depends on SOC_EOS_S3
11 changes: 11 additions & 0 deletions boards/arm/quick_feather/Kconfig.defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# QuickLogic Quick Feather board

# Copyright (c) 2020 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

if BOARD_QUICK_FEATHER

config BOARD
default "quick_feather"

endif # BOARD_QUICK_FEATHER
24 changes: 24 additions & 0 deletions boards/arm/quick_feather/board.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
/*
* Copyright (c) 2020 Antmicro <www.antmicro.com>
*
* SPDX-License-Identifier: Apache-2.0
*/

#include <init.h>
#include <soc.h>
#include <board.h>

static int eos_s3_board_init(const struct device *arg)
{
ARG_UNUSED(arg);

/* IO MUX setup for UART */
eos_s3_io_mux(UART_TX_PAD, UART_TX_PAD_CFG);
eos_s3_io_mux(UART_RX_PAD, UART_RX_PAD_CFG);

IO_MUX->UART_rxd_SEL = UART_RX_SEL;

return 0;
}

SYS_INIT(eos_s3_board_init, PRE_KERNEL_1, CONFIG_BOARD_INIT_PRIORITY);
19 changes: 19 additions & 0 deletions boards/arm/quick_feather/board.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
/*
* Copyright (c) 2020 Antmicro <www.antmicro.com>
*
* SPDX-License-Identifier: Apache-2.0
*/

#ifndef __INC_BOARD_H
#define __INC_BOARD_H

#include <soc_pinmap.h>

#define UART_TX_PAD 44
#define UART_TX_PAD_CFG UART_TXD_PAD44
#define UART_RX_PAD 45
#define UART_RX_PAD_CFG UART_RXD_PAD45

#define UART_RX_SEL UART_RXD_SEL_PAD45

#endif /* __INC_BOARD_H */
30 changes: 30 additions & 0 deletions boards/arm/quick_feather/quick_feather.dts
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
/*
* Copyright (c) 2020 Antmicro <www.antmicro.com>
*
* SPDX-License-Identifier: Apache-2.0
*/

/dts-v1/;
#include <quicklogic/quicklogic_eos_s3.dtsi>

/ {
model = "QuickLogic Quick Feather board";
compatible = "quicklogic,eos_s3";

chosen {
zephyr,sram = &sram0;
zephyr,console = &uart0;
zephyr,shell-uart = &uart0;
zephyr,uart-pipe = &uart0;
};

};

&cpu0 {
clock-frequency = <61440000>;
};

&uart0 {
status = "okay";
current-speed = <115200>;
};
12 changes: 12 additions & 0 deletions boards/arm/quick_feather/quick_feather.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
identifier: quick_feather
name: QuickLogic Quick Feather
type: mcu
arch: arm
toolchain:
- zephyr
- gnuarmemb
- xtools
testing:
ignore_tags:
- net
- bluetooth
28 changes: 28 additions & 0 deletions boards/arm/quick_feather/quick_feather_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Copyright (c) 2020 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

CONFIG_ARM_MPU=n
CONFIG_SOC_EOS_S3=y
CONFIG_BOARD_QUICK_FEATHER=y

# system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=61440000
CONFIG_CORTEX_M_SYSTICK=y

# console
CONFIG_SERIAL=y
CONFIG_CONSOLE=y
CONFIG_PRINTK=y
CONFIG_UART_CONSOLE=y

# misc
CONFIG_BOOT_BANNER=y

# EOS S3 Configuartion Manager copies software from external flash to MCU
# memory using preconfigured DMA and execute it there.
# Thus we do not use flash directly.

CONFIG_XIP=n
CONFIG_FLASH=n
CONFIG_FLASH_SIZE=0
CONFIG_FLASH_BASE_ADDRESS=0x0

0 comments on commit 11763f7

Please sign in to comment.