![]() |
no-OS
|
Definitions specific to STM32 platform used by capi_selftest project. Copyright (c) 2025-2026 Analog Devices, Inc. More...
#include "stm32_hal.h"#include "stm32_capi_uart.h"#include "stm32_capi_gpio.h"#include "stm32_capi_spi.h"#include "stm32_capi_irq.h"#include "stm32_capi_timer.h"#include "stm32_capi_i2c.h"#include "stm32_capi_dma.h"#include "capi_uart.h"Macros | |
| #define | UART_IDENTIFIER 0U |
| #define | UART_OPS &stm32_capi_uart_ops |
| #define | UART_BAUDRATE 115200U |
| #define | UART_EXTRA_TYPE struct stm32_uart_extra_config |
| #define | UART_EXTRA_INIT { .huart = &huart3 } |
| #define | PLATFORM_NAME "STM32" |
| #define | GPIO_OUTPUT_IDENTIFIER ((uint64_t)(uintptr_t)GPIOE) |
| #define | GPIO_OUTPUT_NUM_PINS 1U |
| #define | GPIO_OUTPUT_OPS &stm32_capi_gpio_ops |
| #define | GPIO_OUTPUT_NAME "PE0" |
| #define | GPIO_OUTPUT_EXTRA struct stm32_capi_gpio_port_config |
| #define | GPIO_OUTPUT_EXTRA_INIT |
| #define | GPIO_INPUT_IDENTIFIER ((uint64_t)(uintptr_t)GPIOC) |
| #define | GPIO_INPUT_NUM_PINS 1U |
| #define | GPIO_INPUT_OPS &stm32_capi_gpio_ops |
| #define | GPIO_INPUT_NAME "PC0" |
| #define | GPIO_INPUT_EXTRA struct stm32_capi_gpio_port_config |
| #define | GPIO_INPUT_EXTRA_INIT |
| #define | GPIO_HAS_TOGGLE 0 |
| #define | GPIO_HAS_PIN_LOOPBACK 1 |
| #define | GPIO_OUTPUT_PIN_NUMBERS { 0U } |
| #define | GPIO_INPUT_PIN_NUMBERS { 0U } |
| #define | SPI_HAS_IRQ 1 |
| #define | SPI_HAS_DMA 0 |
| #define | IRQ_CTRL_IDENTIFIER 0U |
| #define | SPI_IDENTIFIER ((uint64_t)(uintptr_t)SPI1) |
| #define | SPI_OPS &stm32_capi_spi_ops |
| #define | SPI_EXTRA_TYPE struct stm32_spi_extra_config |
| #define | SPI_EXTRA_INIT |
| #define | SPI_CLK_FREQ 96000000U |
| #define | SPI_DEVICE_NATIVE_CS 0x01U |
| #define | SPI_DEVICE_MODE CAPI_SPI_MODE_0 |
| #define | SPI_DEVICE_SPEED_HZ 1000000U |
| #define | TIMER_IDENTIFIER 2U |
| #define | TIMER_OPS &stm32_capi_timer_ops |
| #define | TIMER_INPUT_CLK_HZ 0U /* auto-detected from APB1 */ |
| #define | TIMER_OUTPUT_FREQ_HZ 1000000U /* 1 MHz -> 1 us resolution */ |
| #define | TIMER_EXTRA_TYPE struct stm32_capi_timer_extra_config |
| #define | TIMER_EXTRA_INIT |
| #define | TIMER_DIRECTION CAPI_TIMER_COUNT_UP |
| #define | TIMER_COUNTER_MAX 0x1FFFFU |
| #define | TIMER_COMPARE_VALUE 0x8000U |
| #define | TIMER_RATE_WINDOW_US 10000U |
| #define | TIMER_RATE_COUNTER_MASK 0x1FFFFU |
| #define | TIMER_RATE_TOLERANCE_PCT 5U |
| #define | TIMER_HAS_IRQ 1 |
| #define | TIMER_HAS_COMPARE 1 |
| #define | I2C_IDENTIFIER 1U |
| #define | I2C_OPS &stm32_capi_i2c_ops |
| #define | I2C_EXTRA_TYPE struct stm32_i2c_extra_config |
| #define | I2C_EXTRA_INIT { .hi2c = NULL, .i2c_timing = 0x20303E5D } |
| #define | I2C_TARGET_ADDR 0x42U |
| #define | I2C_HAS_IRQ 0 |
| #define | I2C_TARGET_IDENTIFIER 2U |
| #define | I2C_TARGET_OPS &stm32_capi_i2c_ops |
| #define | I2C_TARGET_EXTRA_TYPE struct stm32_i2c_extra_config |
| #define | I2C_TARGET_EXTRA_INIT { .hi2c = NULL, .i2c_timing = 0x20303E5D } |
| #define | I2C_PLATFORM_INIT() |
| #define | I2C_PLATFORM_DEINIT() |
| #define | I2C_PLATFORM_SET_TARGET(h) |
| #define | DMA_OPS &stm32_capi_dma_ops |
| #define | DMA_IDENTIFIER 0U |
| #define | DMA_NUM_CHANS 1U |
| #define | DMA_XFER_EXTRA_TYPE struct stm32_dma_chan_extra_config |
| #define | DMA_XFER_EXTRA_INIT |
| #define | DMA_PLATFORM_INIT() |
| #define | DMA_XFER_SIZE 64U |
Functions | |
| int | i2c_platform_init (void) |
| void | i2c_platform_deinit (void) |
| void | i2c_platform_set_target_handle (struct capi_i2c_controller_handle *handle) |
Variables | |
| UART_HandleTypeDef | huart3 |
| SPI_HandleTypeDef | hspi1 |
Definitions specific to STM32 platform used by capi_selftest project. Copyright (c) 2025-2026 Analog Devices, Inc.
SPDX-License-Identifier: BSD-3-Clause
| #define DMA_IDENTIFIER 0U |
| #define DMA_NUM_CHANS 1U |
| #define DMA_OPS &stm32_capi_dma_ops |
| #define DMA_PLATFORM_INIT | ( | ) |
| #define DMA_XFER_EXTRA_INIT |
| #define DMA_XFER_EXTRA_TYPE struct stm32_dma_chan_extra_config |
| #define DMA_XFER_SIZE 64U |
| #define GPIO_HAS_PIN_LOOPBACK 1 |
| #define GPIO_HAS_TOGGLE 0 |
| #define GPIO_INPUT_EXTRA struct stm32_capi_gpio_port_config |
| #define GPIO_INPUT_EXTRA_INIT |
| #define GPIO_INPUT_IDENTIFIER ((uint64_t)(uintptr_t)GPIOC) |
| #define GPIO_INPUT_NAME "PC0" |
| #define GPIO_INPUT_NUM_PINS 1U |
| #define GPIO_INPUT_OPS &stm32_capi_gpio_ops |
| #define GPIO_INPUT_PIN_NUMBERS { 0U } |
| #define GPIO_OUTPUT_EXTRA struct stm32_capi_gpio_port_config |
| #define GPIO_OUTPUT_EXTRA_INIT |
| #define GPIO_OUTPUT_IDENTIFIER ((uint64_t)(uintptr_t)GPIOE) |
| #define GPIO_OUTPUT_NAME "PE0" |
| #define GPIO_OUTPUT_NUM_PINS 1U |
| #define GPIO_OUTPUT_OPS &stm32_capi_gpio_ops |
| #define GPIO_OUTPUT_PIN_NUMBERS { 0U } |
| #define I2C_EXTRA_INIT { .hi2c = NULL, .i2c_timing = 0x20303E5D } |
| #define I2C_EXTRA_TYPE struct stm32_i2c_extra_config |
| #define I2C_HAS_IRQ 0 |
| #define I2C_IDENTIFIER 1U |
| #define I2C_OPS &stm32_capi_i2c_ops |
| #define I2C_PLATFORM_DEINIT | ( | ) |
| #define I2C_PLATFORM_INIT | ( | ) |
| #define I2C_PLATFORM_SET_TARGET | ( | h | ) |
| #define I2C_TARGET_ADDR 0x42U |
| #define I2C_TARGET_EXTRA_INIT { .hi2c = NULL, .i2c_timing = 0x20303E5D } |
| #define I2C_TARGET_EXTRA_TYPE struct stm32_i2c_extra_config |
| #define I2C_TARGET_IDENTIFIER 2U |
| #define I2C_TARGET_OPS &stm32_capi_i2c_ops |
| #define IRQ_CTRL_IDENTIFIER 0U |
| #define PLATFORM_NAME "STM32" |
| #define SPI_CLK_FREQ 96000000U |
| #define SPI_DEVICE_MODE CAPI_SPI_MODE_0 |
| #define SPI_DEVICE_NATIVE_CS 0x01U |
| #define SPI_DEVICE_SPEED_HZ 1000000U |
| #define SPI_EXTRA_INIT |
| #define SPI_EXTRA_TYPE struct stm32_spi_extra_config |
| #define SPI_HAS_DMA 0 |
| #define SPI_HAS_IRQ 1 |
| #define SPI_IDENTIFIER ((uint64_t)(uintptr_t)SPI1) |
| #define SPI_OPS &stm32_capi_spi_ops |
| #define TIMER_COMPARE_VALUE 0x8000U |
| #define TIMER_COUNTER_MAX 0x1FFFFU |
| #define TIMER_DIRECTION CAPI_TIMER_COUNT_UP |
| #define TIMER_EXTRA_TYPE struct stm32_capi_timer_extra_config |
| #define TIMER_HAS_COMPARE 1 |
| #define TIMER_HAS_IRQ 1 |
| #define TIMER_IDENTIFIER 2U |
| #define TIMER_INPUT_CLK_HZ 0U /* auto-detected from APB1 */ |
| #define TIMER_OPS &stm32_capi_timer_ops |
| #define TIMER_OUTPUT_FREQ_HZ 1000000U /* 1 MHz -> 1 us resolution */ |
| #define TIMER_RATE_COUNTER_MASK 0x1FFFFU |
| #define TIMER_RATE_TOLERANCE_PCT 5U |
| #define TIMER_RATE_WINDOW_US 10000U |
| #define UART_BAUDRATE 115200U |
| #define UART_EXTRA_INIT { .huart = &huart3 } |
| #define UART_EXTRA_TYPE struct stm32_uart_extra_config |
| #define UART_IDENTIFIER 0U |
| #define UART_OPS &stm32_capi_uart_ops |
| void i2c_platform_deinit | ( | void | ) |
| int i2c_platform_init | ( | void | ) |
| void i2c_platform_set_target_handle | ( | struct capi_i2c_controller_handle * | handle | ) |
|
extern |
|
extern |