1# Copyright (c) 2016 Intel Corporation 2# SPDX-License-Identifier: Apache-2.0 3 4if NEWLIB_LIBC 5 6config NEWLIB_LIBC_NANO 7 bool "Build with newlib-nano C library" 8 depends on HAS_NEWLIB_LIBC_NANO 9 help 10 Build with newlib-nano library, for small embedded apps. 11 The newlib-nano library for ARM embedded processors is a part of the 12 GNU Tools for ARM Embedded Processors. 13 14config NEWLIB_LIBC_MAX_MAPPED_REGION_SIZE 15 int "Maximum memory mapped for newlib heap" 16 depends on MMU 17 default 1048576 18 help 19 On MMU-based systems, indicates the maximum amount of memory which 20 will be used for the newlib malloc() heap. The actual amount of 21 memory used will be the minimum of this value and the amount of 22 free physical memory at kernel boot. 23 24config NEWLIB_LIBC_MIN_REQUIRED_HEAP_SIZE 25 int "Newlib minimum required heap size" 26 default 2048 if NEWLIB_LIBC_NANO 27 default 8192 if !NEWLIB_LIBC_NANO 28 help 29 Specifies the amount of memory space that must be available for the 30 newlib heap. An assertion failure message will be displayed during 31 initialization if the memory space available for the newlib heap is 32 smaller than this value. 33 34config NEWLIB_LIBC_ALIGNED_HEAP_SIZE 35 int "Newlib aligned heap size" 36 depends on MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT 37 depends on USERSPACE 38 default 0 39 help 40 If user mode is enabled, and MPU hardware has requirements that 41 regions be sized to a power of two and aligned to their size, 42 and user mode threads need to access this heap, then this is necessary 43 to properly define an MPU region for the heap. 44 45 If this is left at 0, then remaining system RAM will be used for this 46 area and it may not be possible to program it as an MPU region. 47 48config NEWLIB_LIBC_FLOAT_PRINTF 49 bool "Build with newlib float printf" 50 help 51 Build with floating point printf enabled. This will increase the size of 52 the image. 53 54config NEWLIB_LIBC_FLOAT_SCANF 55 bool "Build with newlib float scanf" 56 help 57 Build with floating point scanf enabled. This will increase the size of 58 the image. 59 60config NEWLIB_LIBC_HEAP_LISTENER 61 bool "Notify heap listeners of newlib libc heap events" 62 select HEAP_LISTENER 63 help 64 Notify registered heap listeners upon certain events related to the newlib 65 libc heap usage, such as the heap resize. 66 67endif # NEWLIB_LIBC 68