From cda8e7b619ad61fc87d53fc3cb908860a17de24f Mon Sep 17 00:00:00 2001 From: Burak Babaoglu Date: Tue, 4 Feb 2025 13:17:26 +0300 Subject: [PATCH] boards: adi: Add MAX32650EVKIT board This commit adds MAX32650EVKIT board basic port. Signed-off-by: Burak Babaoglu Signed-off-by: Yasin Ustuner --- .../adi/max32650evkit/Kconfig.max32650evkit | 7 ++ boards/adi/max32650evkit/board.cmake | 8 ++ boards/adi/max32650evkit/board.yml | 9 ++ .../max32650evkit/doc/img/max32650evkit.webp | Bin 0 -> 36500 bytes boards/adi/max32650evkit/doc/index.rst | 119 ++++++++++++++++++ boards/adi/max32650evkit/max32650evkit.dts | 89 +++++++++++++ boards/adi/max32650evkit/max32650evkit.yaml | 13 ++ .../adi/max32650evkit/max32650evkit_defconfig | 16 +++ boards/common/openocd-adi-max32.boards.cmake | 4 +- 9 files changed, 264 insertions(+), 1 deletion(-) create mode 100644 boards/adi/max32650evkit/Kconfig.max32650evkit create mode 100644 boards/adi/max32650evkit/board.cmake create mode 100644 boards/adi/max32650evkit/board.yml create mode 100644 boards/adi/max32650evkit/doc/img/max32650evkit.webp create mode 100644 boards/adi/max32650evkit/doc/index.rst create mode 100644 boards/adi/max32650evkit/max32650evkit.dts create mode 100644 boards/adi/max32650evkit/max32650evkit.yaml create mode 100644 boards/adi/max32650evkit/max32650evkit_defconfig diff --git a/boards/adi/max32650evkit/Kconfig.max32650evkit b/boards/adi/max32650evkit/Kconfig.max32650evkit new file mode 100644 index 00000000000..accb9f0e0f3 --- /dev/null +++ b/boards/adi/max32650evkit/Kconfig.max32650evkit @@ -0,0 +1,7 @@ +# MAX32650EVKIT boards configuration + +# Copyright (c) 2025 Analog Devices, Inc. +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_MAX32650EVKIT + select SOC_MAX32650 diff --git a/boards/adi/max32650evkit/board.cmake b/boards/adi/max32650evkit/board.cmake new file mode 100644 index 00000000000..716d8121461 --- /dev/null +++ b/boards/adi/max32650evkit/board.cmake @@ -0,0 +1,8 @@ +# Copyright (c) 2025 Analog Devices, Inc. +# SPDX-License-Identifier: Apache-2.0 + +board_runner_args(jlink "--device=MAX32650" "--reset-after-load") + +include(${ZEPHYR_BASE}/boards/common/openocd-adi-max32.boards.cmake) +include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake) +include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake) diff --git a/boards/adi/max32650evkit/board.yml b/boards/adi/max32650evkit/board.yml new file mode 100644 index 00000000000..24e70315fb5 --- /dev/null +++ b/boards/adi/max32650evkit/board.yml @@ -0,0 +1,9 @@ +# Copyright (c) 2025 Analog Devices, Inc. +# SPDX-License-Identifier: Apache-2.0 + +board: + name: max32650evkit + full_name: MAX32650EVKIT + vendor: adi + socs: + - name: max32650 diff --git a/boards/adi/max32650evkit/doc/img/max32650evkit.webp b/boards/adi/max32650evkit/doc/img/max32650evkit.webp new file mode 100644 index 0000000000000000000000000000000000000000..1300e5e44b910b6adfd33e0b460fba59c10e76b1 GIT binary patch literal 36500 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 QSRetIqy>Q>PXGV_0B1}f-T(jq literal 0 HcmV?d00001 diff --git a/boards/adi/max32650evkit/doc/index.rst b/boards/adi/max32650evkit/doc/index.rst new file mode 100644 index 00000000000..9d5a6ccaff3 --- /dev/null +++ b/boards/adi/max32650evkit/doc/index.rst @@ -0,0 +1,119 @@ +.. zephyr:board:: max32650evkit + +Overview +******** +The MAX32650 evaluation kit (EV kit) provides a platform for evaluating the +capabilities of the MAX32650 ultra-low power memory-scalable microcontroller +designed specifically for high performance battery powered applications. + +The Zephyr port is running on the MAX32650 MCU. + +.. image:: img/max32650evkit.webp + :align: center + :alt: MAX32650 EVKIT Front + +Hardware +******** + +- MAX32650 MCU: + + - Ultra Efficient Microcontroller for Battery-Powered Applications + + - 120MHz Arm Cortex-M4 with FPU + - SmartDMA Provides Background Memory Transfers with Programmable Data Processing + - 120MHz High-Speed and 50MHz Low-Power Oscillators + - 7.3728MHz Low Power Oscillators + - 32.768kHz and RTC Clock (Requires External Crystal) + - 8kHz, Always-on, Ultra-Low-Power Oscillator + - 3MB Internal Flash, 1MB Internal SRAM + - 104µW/MHz Executing from Cache at 1.1V + - Five Low-Power Modes: Active, Sleep, Background, Deep-Sleep, and Backup + - 1.8V and 3.3V I/O with No Level Translators + - Programming and Debugging + + - Scalable Cached External Memory Interfaces + + - 120MB/s HyperBus/Xccela DDR Interface + - SPIXF/SPIXR for External Flash/RAM Expansion + - 240Mbps SDHC/eMMC/SDIO/microSD Interface + + - Optimal Peripheral Mix Provides Platform Scalability + + - 16-Channel DMA + - Three SPI Master (60MHz)/Slave (48MHz) + - One QuadSPI Master (60MHz)/Slave (48MHz) + - Up to Three 4Mbaud UARTs with Flow Control + - Two 1MHz I2C Master/Slave + - I2S Slave + - Four-Channel, 7.8ksps, 10-bit Delta-Sigma ADC + - USB 2.0 Hi-Speed Device Interface with PHY + - 16 Pulse Train Generators + - Six 32-bit Timers with 8mA Hi-Drive + - 1-Wire® Master + + - Trust Protection Unit (TPU) for IP/Data and Security + + - Modular Arithmetic Accelerator (MAA), True Random Number Generator (TRNG) + - Secure Nonvolatile Key Storage, SHA-256, AES-128/192/256 + - Memory Decryption Integrity Unit, Secure Boot ROM + +- External devices connected to the MAX32650EVKIT: + + - 3.5in 320 x 240 Color TFT Display + - 64MB HyperRAM + - 64MB XIP Flash + - 1MB XIP RAM + - USB 2.0 Micro B + - Two General-Purpose LEDs and Two GeneralPurpose Pushbutton Switches + +Supported Features +================== + +The ``max32650evkit`` board supports the following interfaces: + ++-----------+------------+-------------------------------------+ +| Interface | Controller | Driver/Component | ++===========+============+=====================================+ +| NVIC | on-chip | nested vector interrupt controller | ++-----------+------------+-------------------------------------+ +| SYSTICK | on-chip | systick | ++-----------+------------+-------------------------------------+ +| CLOCK | on-chip | clock and reset control | ++-----------+------------+-------------------------------------+ +| GPIO | on-chip | gpio | ++-----------+------------+-------------------------------------+ +| UART | on-chip | serial | ++-----------+------------+-------------------------------------+ + +Programming and Debugging +************************* + +Flashing +======== +The MAX32650 MCU can be flashed by connecting an external debug probe to the +SWD port. SWD debug can be accessed through the Cortex 10-pin connector, J3. +Logic levels are fixed to VDDIO (1.8V). + +Once the debug probe is connected to your host computer, then you can simply run the +``west flash`` command to write a firmware image into flash. + +.. note:: + + This board uses OpenOCD as the default debug interface. You can also use + a Segger J-Link with Segger's native tooling by overriding the runner, + appending ``--runner jlink`` to your ``west`` command(s). The J-Link should + be connected to the standard 2*5 pin debug connector (J3) using an + appropriate adapter board and cable + +Debugging +========= +Please refer to the `Flashing`_ section and run the ``west debug`` command +instead of ``west flash``. + +References +********** + +- `MAX32650EVKIT web page`_ + +.. _MAX32650EVKIT web page: + https://www.analog.com/en/resources/evaluation-hardware-and-software/evaluation-boards-kits/max32650-evkit.html diff --git a/boards/adi/max32650evkit/max32650evkit.dts b/boards/adi/max32650evkit/max32650evkit.dts new file mode 100644 index 00000000000..2292bfd8b8a --- /dev/null +++ b/boards/adi/max32650evkit/max32650evkit.dts @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2025 Analog Devices, Inc. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/dts-v1/; + +#include +#include +#include +#include + +/ { + model = "Analog Devices MAX32650EVKIT"; + compatible = "adi,max32650evkit"; + + chosen { + zephyr,console = &uart0; + zephyr,shell-uart = &uart0; + zephyr,sram = &sram0; + zephyr,flash = &flash0; + }; + + leds { + compatible = "gpio-leds"; + + led1: led_1 { + gpios = <&gpio2 25 GPIO_ACTIVE_HIGH>; + label = "Red LED"; + }; + + led2: led_2 { + gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>; + label = "Green LED"; + }; + }; + + buttons { + compatible = "gpio-keys"; + + pb1: pb1 { + gpios = <&gpio2 28 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; + label = "SW2"; + zephyr,code = ; + }; + + pb2: pb2 { + gpios = <&gpio2 30 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; + label = "SW3"; + zephyr,code = ; + }; + }; + + /* These aliases are provided for compatibility with samples */ + aliases { + led0 = &led1; + led1 = &led2; + }; +}; + +&uart0 { + pinctrl-0 = <&uart0_tx_p2_12 &uart0_rx_p2_11>; + pinctrl-names = "default"; + current-speed = <115200>; + data-bits = <8>; + parity = "none"; + status = "okay"; +}; + +&clk_ipo { + status = "okay"; +}; + +&gpio0 { + status = "okay"; +}; + +&gpio1 { + status = "okay"; +}; + +&gpio2 { + status = "okay"; +}; + +&gpio3 { + status = "okay"; +}; diff --git a/boards/adi/max32650evkit/max32650evkit.yaml b/boards/adi/max32650evkit/max32650evkit.yaml new file mode 100644 index 00000000000..8e3ced3c437 --- /dev/null +++ b/boards/adi/max32650evkit/max32650evkit.yaml @@ -0,0 +1,13 @@ +identifier: max32650evkit +name: max32650evkit +vendor: adi +type: mcu +arch: arm +toolchain: + - zephyr + - gnuarmemb +supported: + - gpio + - serial +ram: 1024 +flash: 3072 diff --git a/boards/adi/max32650evkit/max32650evkit_defconfig b/boards/adi/max32650evkit/max32650evkit_defconfig new file mode 100644 index 00000000000..9428e5334a0 --- /dev/null +++ b/boards/adi/max32650evkit/max32650evkit_defconfig @@ -0,0 +1,16 @@ +# Copyright (c) 2025 Analog Devices, Inc. +# SPDX-License-Identifier: Apache-2.0 + +# Enable MPU +CONFIG_ARM_MPU=y + +# Enable GPIO +CONFIG_GPIO=y + +# Console +CONFIG_CONSOLE=y +CONFIG_UART_CONSOLE=y + +# Enable UART +CONFIG_SERIAL=y +CONFIG_UART_INTERRUPT_DRIVEN=y diff --git a/boards/common/openocd-adi-max32.boards.cmake b/boards/common/openocd-adi-max32.boards.cmake index 93409dd6901..3f2c3829cf1 100644 --- a/boards/common/openocd-adi-max32.boards.cmake +++ b/boards/common/openocd-adi-max32.boards.cmake @@ -6,7 +6,9 @@ # Default cmsis-dap, it will be overwritten below if requires set(MAX32_INTERFACE_CFG "cmsis-dap.cfg") -if(CONFIG_SOC_MAX32655_M4) +if(CONFIG_SOC_MAX32650) + set(MAX32_TARGET_CFG "max32650.cfg") +elseif(CONFIG_SOC_MAX32655_M4) set(MAX32_TARGET_CFG "max32655.cfg") elseif(CONFIG_SOC_MAX32662) set(MAX32_TARGET_CFG "max32662.cfg")