zephyr/drivers/can/Kconfig.xmc4xxx
Andriy Gelman c7dab3df08 drivers: can: Add xmc4xxx CAN support
Adds CAN drivers for XMC4xxx SoCs.

XMC4xxx has multiple CAN nodes. The nodes share a common clock and
a message object pool.

The CAN nodes do not have a loopback mode. Instead there is an
internal bus which can be used to exchange messages between
nodes on the SoC. For this reason tests/samples which rely on the
loopback feature have been disabled.

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
2024-01-30 19:06:06 +01:00

44 lines
1.1 KiB
Plaintext

# Infineon XMC4xxx CAN configuration options
# Copyright (c) 2023 Andriy Gelman
# SPDX-License-Identifier: Apache-2.0
config CAN_XMC4XXX
bool "Infineon XMC4xxx CAN Driver"
default y
depends on DT_HAS_INFINEON_XMC4XXX_CAN_NODE_ENABLED
help
Enable Infineon XMC4xxx CAN Driver
if CAN_XMC4XXX
config CAN_XMC4XXX_MAX_TX_QUEUE
int "Maximum number of queued messages"
default 8
range 1 32
help
Defines the array size of transmit callback pointers and semaphores,
as well as the number of messages in the TX queue.
config CAN_XMC4XXX_RX_FIFO_ITEMS
int "Number of CAN messages allocated to each RX FIFO"
default 8
range 1 32
help
Defines the number of CAN messages in each RX FIFO. A separate RX FIFO
is created for each RX filter.
config CAN_XMC4XXX_INTERNAL_BUS_MODE
bool "Internal bus mode"
help
Connects all XMC4XXX CAN devices to an internal bus. Enables
message exchange between MCU CAN devices without any external connectors.
config CAN_MAX_FILTER
int "Maximum number of concurrent active filters"
default 4
range 1 32
help
Maximum number of filters supported by the can_add_rx_callback() API call.
endif # CAN_XMC4XXX