zephyr/drivers/can/Kconfig
Henrik Brix Andersen c11326300f drivers: can: remove option for configuring CAN-FD max DLC
Remove the Kconfig option for configuring the maximum value of the CAN-FD
Data Length Code in order to ensure standard compliance.

Allowing users to configure the max DLC allows the user to save a number of
bytes per CAN frame in RAM, but it also renders the Zephyr CAN-FD
implementation non-compliant with the CAN-FD standard.

There are no guarantees that a Zephyr CAN-FD node will not receive a CAN
frame with a DLC higher than the Kconfig limit, which opens up for all
sorts of bugs when trying to handle received CAN-FD frames.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2022-08-12 14:15:10 +01:00

90 lines
1.9 KiB
Plaintext

# CAN configuration options
# Copyright (c) 2018 Alexander Wachter
# SPDX-License-Identifier: Apache-2.0
#
# CAN options
#
menuconfig CAN
bool "CAN Drivers"
help
Enable CAN Driver Configuration
if CAN
module = CAN
module-str = CAN
source "subsys/logging/Kconfig.template.log_config"
config CAN_INIT_PRIORITY
int "CAN driver init priority"
default KERNEL_INIT_PRIORITY_DEVICE
help
CAN driver device initialization priority.
config CAN_SHELL
bool "CAN Shell"
default y
depends on SHELL
select POLL
help
Enable CAN Shell for testing.
config CAN_STATS
bool "CAN controller device statistics"
depends on STATS
help
Enable CAN controller device statistics.
config CAN_HAS_CANFD
bool
help
driver supports CAN-FD
config CAN_HAS_RX_TIMESTAMP
bool
help
driver supports RX timestamps
config CAN_FD_MODE
bool "CAN-FD"
default y
depends on CAN_HAS_CANFD
help
Enable CAN-FD compatible API
config CAN_RX_TIMESTAMP
bool "Receiving timestamps"
depends on CAN_HAS_RX_TIMESTAMP
help
This option enables a timestamp value of the CAN free running timer.
The value is incremented every bit time and starts when the controller
is initialized.
config CAN_AUTO_BUS_OFF_RECOVERY
bool "Automatic recovery from bus-off"
default y
help
This option enables the automatic bus-off recovery according to
ISO 11898-1 (recovery after 128 occurrences of 11 consecutive
recessive bits). When this option is enabled, the recovery API is not
available.
source "drivers/can/Kconfig.sam"
source "drivers/can/Kconfig.stm32"
source "drivers/can/Kconfig.stm32fd"
source "drivers/can/Kconfig.stm32h7"
source "drivers/can/Kconfig.mcux"
source "drivers/can/Kconfig.mcp2515"
source "drivers/can/Kconfig.mcan"
source "drivers/can/Kconfig.rcar"
source "drivers/can/Kconfig.loopback"
source "drivers/can/Kconfig.sja1000"
source "drivers/can/Kconfig.esp32"
source "drivers/can/transceiver/Kconfig"
endif # CAN