mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-05-04 20:26:13 +02:00
The devm alloc functions that we have may follow the Linux kernel model
where allocations are (almost always) automatically free()'d. However,
quite often we don't enable, in full U-Boot, the tracking and free()'ing
functionality. This in turn leads to memory leaks because the driver
author expects that since the functions have the same name as in the
Linux Kernel they have the same behavior. In turn we then get
functionally correct commits such as commit 00e1fed93c8c ("firmware:
ti_sci: Fix memory leaks in devm_ti_sci_get_of_resource") that manually
add these calls. Rather than manually tracking allocations and
implementing free()s, rework things so that we follow expectations by
enabling the DEVRES functionality (outside of xPL phases).
This turns DEVRES from a prompted symbol to a symbol that must be
select'd, and we now remove our non-managed alloc/free functions from
outside of xPL builds.
Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
52 lines
1.5 KiB
Plaintext
52 lines
1.5 KiB
Plaintext
config FIRMWARE
|
|
bool "Enable Firmware driver support"
|
|
|
|
config SPL_FIRMWARE
|
|
bool "Enable Firmware driver support in SPL"
|
|
depends on FIRMWARE && SPL
|
|
|
|
config SPL_ARM_PSCI_FW
|
|
bool
|
|
select SPL_FIRMWARE
|
|
|
|
config ARM_PSCI_FW
|
|
bool
|
|
select FIRMWARE
|
|
|
|
config TI_SCI_PROTOCOL
|
|
tristate "TI System Control Interface (TISCI) Message Protocol"
|
|
depends on K3_SEC_PROXY
|
|
select DEVRES
|
|
select FIRMWARE
|
|
select SPL_FIRMWARE if SPL
|
|
help
|
|
TI System Control Interface (TISCI) Message Protocol is used to manage
|
|
compute systems such as ARM, DSP etc with the system controller in
|
|
complex System on Chip (SoC) such as those found on certain K3
|
|
generation SoC from TI.
|
|
|
|
This protocol library is used by client drivers to use the features
|
|
provided by the system controller.
|
|
|
|
config ZYNQMP_FIRMWARE
|
|
bool "ZynqMP Firmware interface"
|
|
depends on ARCH_ZYNQMP || ARCH_VERSAL || ARCH_VERSAL_NET || ARCH_VERSAL2
|
|
select FIRMWARE
|
|
help
|
|
Firmware interface driver is used by different
|
|
drivers to communicate with the firmware for
|
|
various platform management services.
|
|
Say yes to enable ZynqMP firmware interface driver.
|
|
If in doubt, say N.
|
|
|
|
config ARM_SMCCC_FEATURES
|
|
bool "Arm SMCCC features discovery"
|
|
depends on ARM_PSCI_FW
|
|
help
|
|
Discover Arm SMCCC features for which a U-Boot driver is defined. When enabled,
|
|
the PSCI driver is always probed and binds dirvers registered to the Arm SMCCC
|
|
services if any and reported as supported by the SMCCC firmware.
|
|
|
|
source "drivers/firmware/arm-ffa/Kconfig"
|
|
source "drivers/firmware/scmi/Kconfig"
|