Commit bdc68151 authored by Jan Kowalewski's avatar Jan Kowalewski Committed by Fabio Baltieri
Browse files

boards: ct: ctcc: add nrf9161 soc variant

Add support for CTHINGS.CO Connectivity Card with
nRF9161 SoC variant.

Signed-off-by: default avatarJan Kowalewski <jkowalewski@cthings.co>
parent 57a7f769
Loading
Loading
Loading
Loading
+1 −0
Changes for boards/ct/ctcc/Kconfig.ctcc: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
@@ -5,3 +5,4 @@

config BOARD_CTCC
	select SOC_NRF52840_QIAA if BOARD_CTCC_NRF52840
	select SOC_NRF9161_LACA if BOARD_CTCC_NRF9161 || BOARD_CTCC_NRF9161_NS
+21 −0
Changes for boards/ct/ctcc/Kconfig.defconfig: 21 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -8,3 +8,24 @@ if BOARD_CTCC_NRF52840
source "boards/common/usb/Kconfig.cdc_acm_serial.defconfig"

endif # BOARD_CTCC_NRF52840

if BOARD_CTCC_NRF9161 || BOARD_CTCC_NRF9161_NS

# Workaround for not being able to have commas in macro arguments.
# For explanation please see: boards/nordic/nrf9161dk/Kconfig.defconfig
DT_CHOSEN_Z_CODE_PARTITION := zephyr,code-partition

config FLASH_LOAD_SIZE
	default $(dt_chosen_reg_size_hex,$(DT_CHOSEN_Z_CODE_PARTITION))
	depends on BOARD_CTCC_NRF9161 && TRUSTED_EXECUTION_SECURE

if BOARD_CTCC_NRF9161_NS

config FLASH_LOAD_OFFSET
	default $(dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_CODE_PARTITION))

config FLASH_LOAD_SIZE
	default $(dt_chosen_reg_size_hex,$(DT_CHOSEN_Z_CODE_PARTITION))

endif # BOARD_CTCC_NRF9161_NS
endif # BOARD_CTCC_NRF9161 || BOARD_CTCC_NRF9161_NS
+13 −0
Changes for boards/ct/ctcc/board.cmake: 13 added lines, 0 removed lines.
Original line number Diff line number Diff line
# SPDX-License-Identifier: Apache-2.0

if(CONFIG_BOARD_CTCC_NRF52840)
  board_runner_args(nrfjprog "--softreset")
  board_runner_args(pyocd "--target=nrf52840" "--frequency=4000000")
  include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
  include(${ZEPHYR_BASE}/boards/common/pyocd.board.cmake)
elseif(CONFIG_BOARD_CTCC_NRF9161 OR CONFIG_BOARD_CTCC_NRF9161_NS)
  if(CONFIG_BOARD_CTCC_NRF9161_NS)
    set(TFM_PUBLIC_KEY_FORMAT "full")
  endif()
  if(CONFIG_TFM_FLASH_MERGED_BINARY)
    set_property(TARGET runners_yaml_props_target PROPERTY hex_file tfm_merged.hex)
  endif()
  board_runner_args(nrfjprog "--softreset")
  board_runner_args(pyocd "--target=nrf9161" "--frequency=4000000")
  include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
  include(${ZEPHYR_BASE}/boards/common/pyocd.board.cmake)
endif()
+4 −1
Changes for boards/ct/ctcc/board.yml: 4 added lines, 1 removed line.
Original line number Diff line number Diff line
board:
  name: ctcc
  full_name: Connectivity Card nRF52840
  full_name: CTHINGS.CO Connectivity Card
  socs:
    - name: nrf52840
    - name: nrf9161
      variants:
        - name: 'ns'
+67 −0
Changes for boards/ct/ctcc/ctcc_nrf9161-pinctrl.dtsi: 67 added lines, 0 removed lines.
Original line number Diff line number Diff line
/*
 * Copyright (c) 2024 CTHINGS.CO
 * SPDX-License-Identifier: Apache-2.0
 */

&pinctrl {
	uart0_default: uart0_default {
		group1 {
			psels = <NRF_PSEL(UART_TX, 0, 28)>,
				<NRF_PSEL(UART_RTS, 0, 14)>;
		};
		group2 {
			psels = <NRF_PSEL(UART_RX, 0, 29)>,
				<NRF_PSEL(UART_CTS, 0, 15)>;
		};
	};

	uart0_sleep: uart0_sleep {
		group1 {
			psels = <NRF_PSEL(UART_TX, 0, 28)>,
				<NRF_PSEL(UART_RX, 0, 29)>,
				<NRF_PSEL(UART_RTS, 0, 14)>,
				<NRF_PSEL(UART_CTS, 0, 15)>;
			low-power-enable;
		};
	};

	uart1_default: uart1_default {
		group1 {
			psels = <NRF_PSEL(UART_TX, 0, 27)>,
				<NRF_PSEL(UART_RTS, 0, 16)>;
		};
		group2 {
			psels = <NRF_PSEL(UART_RX, 0, 26)>,
				<NRF_PSEL(UART_CTS, 0, 17)>;
			bias-pull-up;
		};
	};

	uart1_sleep: uart1_sleep {
		group1 {
			psels = <NRF_PSEL(UART_TX, 0, 27)>,
				<NRF_PSEL(UART_RX, 0, 26)>,
				<NRF_PSEL(UART_RTS, 0, 16)>,
				<NRF_PSEL(UART_CTS, 0, 17)>;
			low-power-enable;
		};
	};

	spi3_default: spi3_default {
		group1 {
			psels = <NRF_PSEL(SPIM_SCK, 0, 3)>,
				<NRF_PSEL(SPIM_MISO, 0, 5)>,
				<NRF_PSEL(SPIM_MOSI, 0, 4)>;
			nordic,drive-mode = <NRF_DRIVE_H0H1>;
		};
	};

	spi3_sleep: spi3_sleep {
		group1 {
			psels = <NRF_PSEL(SPIM_SCK, 0, 3)>,
				<NRF_PSEL(SPIM_MISO, 0, 5)>,
				<NRF_PSEL(SPIM_MOSI, 0, 4)>;
			low-power-enable;
		};
	};
};
Loading