CONFIG_MBEDTLS_HEAP_SIZE

Heap size for mbed TLS

Heap size for mbed TLS

Type: int

Help

Heap size for mbed TLS in bytes. For streaming communication with arbitrary (HTTPS) servers on the Internet, 32KB + overheads (up to another 20KB) may be needed. Ensure to adjust the heap size according to the need of the application.

Help

The mbedtls routines will use this heap if enabled. See ext/lib/crypto/mbedtls/include/mbedtls/config.h and MBEDTLS_MEMORY_BUFFER_ALLOC_C option for details. That option is not enabled by default. Default value for the heap size is not set as it depends on the application. For streaming communication with arbitrary (HTTPS) servers on the Internet, 32KB + overheads (up to another 20KB) may be needed. For some dedicated and specific usage of mbedtls API, the 1000 bytes might be ok.

Direct dependencies

FMFU_FDEV || (MBEDTLS_ENABLE_HEAP && NORDIC_SECURITY_BACKEND) || (MBEDTLS_ENABLE_HEAP && MBEDTLS)

(Includes any dependencies from ifs and menus.)

Defaults

Kconfig definitions

At <nRF>/subsys/dfu/fmfu_fdev/Kconfig:21

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:23<Zephyr>/modules/Kconfig:6<BuildDir>/Kconfig/Kconfig.modules:2<nRF>/Kconfig.nrf:25<nRF>/subsys/Kconfig:12<nRF>/subsys/dfu/Kconfig:11

Menu path: (Top) → Modules → nrf (/home/runner/work/sdk-nrf/sdk-nrf/ncs/nrf) → Nordic nRF Connect → DFU → Full Modem Firmware Upgrade from flash device

config MBEDTLS_HEAP_SIZE
    int
    default 4096
    depends on FMFU_FDEV

At <nrfxlib>/nrf_security/Kconfig:108

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:23<Zephyr>/modules/Kconfig:6<BuildDir>/Kconfig/Kconfig.modules:14<nrfxlib>/Kconfig.nrfxlib:13

Menu path: (Top) → Modules → nrfxlib (/home/runner/work/sdk-nrf/sdk-nrf/ncs/nrfxlib) → Nordic nrfxlib → Nordic Security → Use Nordic provided security backend → mbed TLS memory configuration → Enable global heap for mbed TLS

config MBEDTLS_HEAP_SIZE
    int "Heap size for mbed TLS"
    default 15360 if OPENTHREAD_NRF_SECURITY
    default 512
    depends on MBEDTLS_ENABLE_HEAP && NORDIC_SECURITY_BACKEND
    help
      Heap size for mbed TLS in bytes.
      For streaming communication with arbitrary (HTTPS) servers on the
      Internet, 32KB + overheads (up to another 20KB) may be needed.
      Ensure to adjust the heap size according to the need of the
      application.

At <Zephyr>/modules/Kconfig.mbedtls:120

Included via <Zephyr>/Kconfig:8<Zephyr>/Kconfig.zephyr:23<Zephyr>/modules/Kconfig:21

Menu path: (Top) → Modules → mbedTLS Support → Enable global heap for mbed TLS

config MBEDTLS_HEAP_SIZE
    int "Heap size for mbed TLS"
    default 10240 if OPENTHREAD_COMMISSIONER || OPENTHREAD_JOINER
    default 512
    depends on MBEDTLS_ENABLE_HEAP && MBEDTLS
    help
      The mbedtls routines will use this heap if enabled.
      See ext/lib/crypto/mbedtls/include/mbedtls/config.h and
      MBEDTLS_MEMORY_BUFFER_ALLOC_C option for details. That option is not
      enabled by default.
      Default value for the heap size is not set as it depends on the
      application. For streaming communication with arbitrary (HTTPS)
      servers on the Internet, 32KB + overheads (up to another 20KB) may
      be needed. For some dedicated and specific usage of mbedtls API, the
      1000 bytes might be ok.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)