Nios® V Processor Software Developer Handbook

ID 743810
Date 9/26/2022
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

12.4.3. BSP Settings Reference

This section lists all settings for BSPs, software packages, and device drivers.

hal.enable_instruction_related_exceptions_api

  • Identifier:ALT_INCLUDE_INSTRUCTION_RELATED_EXCEPTION_API
  • Type: Boolean definition
  • Default Value: false
  • Destination File: system.h
  • Description: Enables application program interface (API) for registering handlers to service instruction-related exceptions. These exception types can be generated if various processor options are enabled, such as the memory management unit (MMU), memory protection unit (MPU), or other advanced exception types. Enabling this setting increases the size of the exception entry code.
  • Restrictions: none

hal.max_file_descriptors

  • Identifier: ALT_MAX_FD
  • Type: Decimal number
  • Default Value: 32
  • Destination File: system.h
  • Description: Determines the number of file descriptors statically allocated.
  • Restriction: If hal.enable_lightweight_device_driver_api is true, there are no file descriptors so this setting is ignored. If hal.enable_lightweight_device_driver_api is false, this setting must be at least 4 because HAL needs a file descriptor for /dev/null, /dev/stdin, /dev/stdout, and /dev/stderr. This setting defines the value of ALT_MAX_FD in system.h.

hal.sys_clk_timer

  • Identifier: ALT_SYS_CLK
  • Type: Unquoted string
  • Default Value: none
  • Destination File: system.h
  • Description: Slave descriptor of the system clock timer device. This device provides a periodic interrupt ("tick") and is typically required for RTOS use. This setting defines the value of ALT_SYS_CLK in system.h.
  • Restriction: none

hal.timestamp_timer

  • Identifier: ALT_TIMESTAMP_CLK
  • Type: Unquoted string
  • Default Value: none
  • Destination File: system.h
  • Description: Slave descriptor of timestamp timer device. This device is used by Intel HAL timestamp drivers for high-resolution time measurement. This setting defines the value of ALT_TIMESTAMP_CLK in system.h.
  • Restriction: none

ucosii.os_max_tasks

  • Identifier : OS_MAX_TASKS
  • Type: Decimal number
  • Default Value: 10
  • Destination File: system.h
  • Description: Maximum number of tasks
  • Restriction: none

ucosii.os_lowest_prio

  • Identifier: OS_LOWEST_PRIO
  • Type: Decimal number
  • Default Value: 20
  • Destination File: system.h
  • Description: Lowest assignable priority
  • Restriction: none

ucosii.os_thread_safe_newlib

  • Identifier: OS_THREAD_SAFE_NEWLIB
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Thread safe C library
  • Restriction: none

ucosii.miscellaneous.os_arg_chk_en

  • Identifier: OS_ARG_CHK_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable argument checking
  • Restriction: none

ucosii.miscellaneous.os_cpu_hooks_en

  • Identifier: OS_CPU_HOOKS_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable MicroC/OS-II hooks
  • Restriction: none

ucosii.miscellaneous.os_debug_en

  • Identifier: OS_DEBUG_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable debug variables
  • Restriction: none

ucosii.miscellaneous.os_sched_lock_en

  • Identifier: OS_SCHED_LOCK_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSSchedLock() and OSSchedUnlock()
  • Restriction: none

ucosii.miscellaneous.os_task_stat_en

  • Identifier: OS_TASK_STAT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable statistics task
  • Restriction: none

ucosii.miscellaneous.os_task_stat_stk_chk_en

  • Identifier: OS_TASK_STAT_STK_CHK_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Check task stacks from statistics task
  • Restriction: none

ucosii.miscellaneous.os_tick_step_en

  • Identifier: OS_TICK_STEP_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable tick stepping feature for uCOS-View
  • Restriction: none

ucosii.miscellaneous.os_event_name_size

  • Identifier: OS_EVENT_NAME_SIZE
  • Type: Decimal number
  • Default Value: 32
  • Destination File: system.h
  • Description: Size of name of Event Control Block groups
  • Restriction: none

ucosii.miscellaneous.os_max_events

  • Identifier: OS_MAX_EVENTS
  • Type: Decimal number
  • Default Value: 60
  • Destination File: system.h
  • Description: Maximum number of event control blocks
  • Restriction: none

ucosii.miscellaneous.os_task_idle_stk_size

  • Identifier: OS_TASK_IDLE_STK_SIZE
  • Type: Decimal number
  • Default Value: 512
  • Destination File: system.h
  • Description: Idle task stack size
  • Restriction: none

ucosii.miscellaneous.os_task_stat_stk_size

  • Identifier: OS_TASK_STAT_STK_SIZE
  • Type: Decimal number
  • Default Value: 512
  • Destination File: system.h
  • Description: Statistics task stack size
  • Restriction: none

ucosii.task.os_task_change_prio_en

  • Identifier: OS_TASK_CHANGE_PRIO_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTaskChangePrio()
  • Restriction: none

ucosii.task.os_task_create_en

  • Identifier: OS_TASK_CREATE_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTaskCreate()
  • Restriction: none

ucosii.task.os_task_create_ext_en

  • Identifier: OS_TASK_CREATE_EXT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTaskCreateExt()
  • Restriction: none

ucosii.task.os_task_del_en

  • Identifier: OS_TASK_DEL_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTaskDel()
  • Restriction: none

ucosii.task.os_task_name_size

  • Identifier: OS_TASK_NAME_SIZE
  • Type: Decimal number
  • Default Value: 32
  • Destination File: system.h
  • Description: Size of task name
  • Restriction: none

ucosii.task.os_task_profile_en

  • Identifier: OS_TASK_PROFILE_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include data structure for run-time task profiling
  • Restriction: none

ucosii.task.os_task_query_en

  • Identifier: OS_TASK_QUERY_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTaskQuery
  • Restriction: none

ucosii.task.os_task_suspend_en

  • Identifier: OS_TASK_SUSPEND_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTaskSuspend() and OSTaskResume()
  • Restriction: none

ucosii.task.os_task_sw_hook_en

  • Identifier: OS_TASK_SW_HOOK_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTaskSwHook()
  • Restriction: none

ucosii.time.os_time_tick_hook_en

  • Identifier: OS_TIME_TICK_HOOK_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTimeTickHook()
  • Restriction: none

ucosii.time.os_time_dly_resume_en

  • Identifier: OS_TIME_DLY_RESUME_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTimeDlyResume()
  • Restriction: none

ucosii.time.os_time_dly_hmsm_en

  • Identifier: OS_TIME_DLY_HMSM_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTimeDlyHMSM()
  • Restriction: none

ucosii.time.os_time_get_set_en

  • Identifier: OS_TIME_GET_SET_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSTimeGet and OSTimeSet()
  • Restriction: none

ucosii.os_flag_en

  • Identifier: OS_FLAG_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable code for Event Flags. This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.event_flag.os_flag_wait_clr_en

  • Identifier: OS_FLAG_WAIT_CLR_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for Wait on Clear Event Flags. This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.event_flag.os_flag_accept_en

  • Identifier: OS_FLAG_ACCEPT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSFlagAccept(). This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.event_flag.os_flag_del_en

  • Identifier: OS_FLAG_DEL_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSFlagDel(). This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.event_flag.os_flag_query_en

  • Identifier: OS_FLAG_QUERY_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSFlagQuery(). This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.event_flag.os_flag_name_size

  • Identifier: OS_FLAG_NAME_SIZE
  • Type: Decimal number
  • Default Value: 32
  • Destination File: system.h
  • Description: Size of name of Event Flags group. CAUTION: This is required by the HAL and many Intel FPGA device drivers; use caution in reducing this value.
  • Restriction: none

ucosii.event_flag.os_flags_nbits

  • Identifier: OS_FLAGS_NBITS
  • Type: Decimal number
  • Default Value: 16
  • Destination File: system.h
  • Description: Event Flag bits (8,16,32). CAUTION: This is required by the HAL and many Intel FPGA device drivers; use caution in changing this value.
  • Restriction: none

ucosii.event_flag.os_max_flags

  • Identifier: OS_MAX_FLAGS
  • Type: Decimal number
  • Default Value: 20
  • Destination File: system.h
  • Description: Maximum number of Event Flags groups. CAUTION: This is required by the HAL and many Intel FPGA device drivers; use caution in reducing this value.
  • Restriction: none

ucosii.os_mutex_en

  • Identifier: OS_MUTEX_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable code for Mutex Semaphores
  • Restriction: none

ucosii.mutex.os_mutex_accept_en

  • Identifier: OS_MUTEX_ACCEPT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSMutexAccept()
  • Restriction: none

ucosii.mutex.os_mutex_del_en

  • Identifier: OS_MUTEX_DEL_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSMutexDel()
  • Restriction: none

ucosii.mutex.os_mutex_query_en

  • Identifier: OS_MUTEX_QUERY_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSMutexQuery
  • Restriction: none

ucosii.os_sem_en

  • Identifier: OS_SEM_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable code for semaphores. This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.semaphore.os_sem_accept_en

  • Identifier: OS_SEM_ACCEPT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSSemAccept(). This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.semaphore.os_sem_set_en

  • Identifier: OS_SEM_SET_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSSemSet(). This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.semaphore.os_sem_del_en

  • Identifier: OS_SEM_DEL_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSSemDel(). This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.semaphore.os_sem_query_en

  • Identifier: OS_SEM_QUERY_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSSemQuery(). This setting is enabled by default in MicroC-OS/II BSPs, because it is required for correct functioning of Intel FPGA device drivers and the HAL in a multithreaded environment. Avoid disabling it.
  • Restriction: none

ucosii.os_mbox_en

  • Identifier: OS_MBOX_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable code for mailboxes
  • Restriction: none

ucosii.mailbox.os_mbox_accept_en

  • Identifier: OS_MBOX_ACCEPT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSMboxAccept()
  • Restriction: none

ucosii.mailbox.os_mbox_del_en

  • Identifier: OS_MBOX_DEL_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSMboxDel()
  • Restriction: none

ucosii.mailbox.os_mbox_post_en

  • Identifier: OS_MBOX_POST_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSMboxPost()
  • Restriction: none

ucosii.mailbox.os_mbox_post_opt_en

  • Identifier: OS_MBOX_POST_OPT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSMboxPostOpt()
  • Restriction: none

ucosii.mailbox.os_mbox_query_en

  • Identifier: OS_MBOX_QUERY_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSMboxQuery()
  • Restriction: none

ucosii.os_q_en

  • Identifier: OS_Q_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable code for Queues
  • Restriction: none

ucosii.queue.os_q_accept_en

  • Identifier: OS_Q_ACCEPT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSQAccept()
  • Restriction: none

ucosii.queue.os_q_del_en

  • Identifier: OS_Q_DEL_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSQDel()
  • Restriction: none

ucosii.queue.os_q_flush_en

  • Identifier: OS_Q_FLUSH_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSQFlush()
  • Restriction: none

ucosii.queue.os_q_post_en

  • Identifier: OS_Q_POST_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code of OSQFlush()
  • Restriction: none

ucosii.queue.os_q_post_front_en

  • Identifier: OS_Q_POST_FRONT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSQPostFront()
  • Restriction: none

ucosii.queue.os_q_post_opt_en

  • Identifier: OS_Q_POST_OPT_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSQPostOpt()
  • Restriction: none

ucosii.queue.os_q_query_en

  • Identifier: OS_Q_QUERY_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSQQuery()
  • Restriction: none

ucosii.queue.os_max_qs

  • Identifier: OS_MAX_QS
  • Type: Decimal number
  • Default Value: 20
  • Destination File: system.h
  • Description: Maximum number of Queue Control Blocks
  • Restriction: none

ucosii.os_mem_en

  • Identifier: OS_MEM_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Enable code for memory management
  • Restriction: none

ucosii.memory.os_mem_query_en

  • Identifier: OS_MEM_QUERY_EN
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: system.h
  • Description: Include code for OSMemQuery()
  • Restriction: none

ucosii.memory.os_mem_name_size

  • Identifier: OS_MEM_NAME_SIZE
  • Type: Decimal number
  • Default Value: 32
  • Destination File: system.h
  • Description: Size of memory partition name
  • Restriction: none

ucosii.memory.os_max_mem_part

  • Identifier: OS_MAX_MEM_PART
  • Type: Decimal number
  • Default Value: 60
  • Destination File: system.h
  • Description: Maximum number of memory partitions
  • Restriction: none

ucosii.os_tmr_en

  • Identifier: OS_TMR_EN
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: system.h
  • Description: Enable code for timers
  • Restriction: none

ucosii.timer.os_task_tmr_stk_size

  • Identifier: OS_TASK_TMR_STK_SIZE
  • Type: Decimal number
  • Default Value: 512
  • Destination File: system.h
  • Description: Stack size for timer task
  • Restriction: none

ucosii.timer.os_task_tmr_prio

  • Identifier: OS_TASK_TMR_PRIO
  • Type: Decimal number
  • Default Value: 2
  • Destination File: system.h
  • Description: Priority of timer task (0=highest)
  • Restriction: none

ucosii.timer.os_tmr_cfg_max

  • Identifier: OS_TMR_CFG_MAX
  • Type: Decimal number
  • Default Value: 16
  • Destination File: system.h
  • Description: Maximum number of timers
  • Restriction: none

ucosii.timer.os_tmr_cfg_name_size

  • Identifier: OS_TMR_CFG_NAME_SIZE
  • Type: Decimal number
  • Default Value: 16
  • Destination File: system.h
  • Description: Size of timer name
  • Restriction: none

ucosii.timer.os_tmr_cfg_ticks_per_sec

  • Identifier: OS_TMR_CFG_TICKS_PER_SEC
  • Type: Decimal number
  • Default Value: 10
  • Destination File: system.h
  • Description: Rate at which timer management task runs (Hz)
  • Restriction: none

ucosii.timer.os_tmr_cfg_wheel_size

  • Identifier: OS_TMR_CFG_WHEEL_SIZE
  • Type: Decimal number
  • Default Value: 2
  • Destination File: system.h
  • Description: Size of timer wheel (number of spokes)
  • Restriction: none

altera_avalon_uart_driver.enable_small_driver

  • Identifier: ALTERA_AVALON_UART_SMALL
  • Type: Boolean definition
  • Default Value: false
  • Destination File: toolchain.cmake
  • Description: Small-footprint (polled mode) driver
  • Restriction: none

altera_avalon_uart_driver.enable_ioctl

  • Identifier: ALTERA_AVALON_UART_USE_IOCTL
  • Type: Boolean definition
  • Default Value: false
  • Destination File: toolchain.cmake
  • Description: Enable driver ioctl() support. This feature is not compatible with the small driver; ioctl() support is not compiled if either the UART enable_small_driver or the HAL enable_reduced_device_drivers setting is enabled.
  • Restriction: none

altera_avalon_jtag_uart_driver.enable_small_driver

  • Identifier: ALTERA_AVALON_JTAG_UART_SMALL
  • Type: Boolean definition
  • Default Value: false
  • Destination File: toolchain.cmake
  • Description: Small-footprint (polled mode) driver
  • Restriction: none

altera_avalon_uart_driver.enable_jtag_uart_ignore_fifo_full_error

  • Identifier: ALTERA_AVALON_JTAG_UART_IGNORE_FIFO_FULL_ERROR
  • Type: Boolean definition
  • Default Value: false
  • Destination File: toolchain.cmake
  • Description: JTAG UART FIFO full error after timeout
  • Restriction: none

hal.linker.allow_code_at_reset

  • Identifier: none
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: none
  • Description: Indicates if initialization code is allowed at the reset address. If true, defines the macro ALT_ALLOW_CODE_AT_RESET in linker.h.
  • Restriction: This setting is typically false if an external bootloader (e.g. flash bootloader) is present.

hal.linker.enable_alt_load

  • Identifier: none
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: none
  • Description: Enables the alt_load() facility. The alt_load() facility copies sections from the .text memory into RAM. If true, this setting sets up the VMA/LMA (virtual memory address/low memory address) of sections in linker.x to allow them to be loaded into the .text memory.
  • Restriction: This setting is typically false if an external bootloader (e.g. flash bootloader) is present.

hal.linker.enable_alt_load_copy_exceptions

  • Identifier: none
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: none
  • Description: Causes the alt_load() facility to copy the .exceptions section. If true, this setting defines the macro ALT_LOAD_COPY_EXCEPTIONS in linker.h.
  • Restriction: none

hal.linker.enable_alt_load_copy_rodata

  • Identifier: none
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: none
  • Description: Causes the alt_load() facility to copy the .rodata section. If true, this setting defines the macro ALT_LOAD_COPY_RODATA in linker.h.
  • Restriction: none

hal.linker.enable_alt_load_copy_rwdata

  • Identifier: none
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: none
  • Description: Causes the initialization code to copy the .rwdata section. If true, this setting defines the macro ALT_LOAD_COPY_RWDATA in linker.h.
  • Restriction: none

hal.linker.enable_exception_stack

  • Identifier: none
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: none
  • Description: Enables use of a separate exception stack. If true, defines the macro ALT_EXCEPTION_STACK in linker.h, adds a memory region called exception_stack to linker.x, and provides the symbols __alt_exception_stack_pointer and __alt_exception_stack_limit in linker.x.
  • Restriction: The hal.linker.exception_stack_size and hal.linker.exception_stack_memory_region_name settings must also be valid. This setting must be false for MicroC/OS-II BSPs. The exception stack can be used to improve interrupt and other exception performance if an EIC is not implemented.

hal.linker.exception_stack_memory_region_name

  • Identifier: none
  • Type: Unquoted string
  • Default Value: none
  • Destination File: none
  • Description: Name of the existing memory region to be divided up to create the exception_stack memory region. The selected region name is adjusted automatically when the BSP is generated to create the exception_stack memory region.
  • Restriction: Only used if hal.linker.enable_exception_stack is true.

hal.linker.exception_stack_size

  • Identifier: none
  • Type: Decimal number
  • Default Value: 1024
  • Destination File: none
  • Description: Size of the exception stack in bytes.
  • Restriction: Only used if hal.linker.enable_exception_stack is true. none

hal.toolchain.ar

  • Identifier: AR
  • Type: Unquoted string
  • Default Value: riscv32-unknown-elf-ar
  • Destination File: toolchain.cmake
  • Description: Archiver command. Creates library files.
  • Restriction: none

hal.toolchain.as

  • Identifier: none
  • Type: Unquoted string
  • Default Value: riscv32-unknown-elf-as
  • Destination File: toolchain.cmake
  • Description: Assembler command. Note that CC is used for Nios® V processor assembly language source files (.S).
  • Restriction: none

hal.make.arflags

  • Identifier: ARFLAGS
  • Type: Unquoted string
  • Default Value: -src
  • Destination File: toolchain.cmake
  • Description: Custom flags only passed to the archiver. The content of this variable is directly passed to the archiver rather than the more standard ARFLAGS. The reason for this is that GNU Make assumes some default content in ARFLAGS.This setting defines the value of ARFLAGS in Makefile.
  • Restriction: none

hal.make.asflags

  • Identifier: ASFLAGS
  • Type: Unquoted string
  • Default Value: -Wa,-gdwarf2
  • Destination File: toolchain.cmake
  • Description: Custom flags only passed to the assembler. This setting defines the value of ASFLAGS in toolchain.cmake.
  • Restriction: none

hal.make.cflags_debug

  • Identifier: CFLAGS_DEBUG
  • Type: Unquoted string
  • Default Value: -g
  • Destination File: toolchain.cmake
  • Description: C/C++ compiler debug level. -g provides the default set of debug symbols typically required to debug a typical application. Omitting -g removes debug symbols from the .elf file. This setting defines the value of BSP_CFLAGS_DEBUG in toolchain.cmake.
  • Restriction: none

hal.make.cflags_defined_symbols

  • Identifier: CFLAGS_DEFINED_SYMBOLS
  • Type: Unquoted string
  • Default Value: none
  • Destination File: toolchain.cmake
  • Description: Preprocessor macros to define. A macro definition in this setting has the same effect as a #define in source code. Adding -DALT_DEBUG to this setting has the same effect as #define ALT_DEBUG in a source file. Adding -DFOO=1 to this setting is equivalent to the macro #define FOO 1 in a source file. Macros defined with this setting are applied to all . S , C source ( .c ), and C++ files in the BSP. This setting defines the value of CFLAGS_DEFINED_SYMBOLS in the toolchain.cmake.
  • Restriction: none

hal.make.cflags_optimization

  • Identifier: CFLAGS_OPTIMIZATION
  • Type: Unquoted string
  • Default Value: -O0
  • Destination File: toolchain.cmake
  • Description: C/C++ compiler optimization level. -O0 = no optimization, -O2 = normal optimization, etc. -O0 is recommended for code that you want to debug since compiler optimization can remove variables and produce non-sequential execution of code while debugging. This setting defines the value of CFLAGS_OPTIMIZATION in toolchain.cmake.
  • Restriction: none

hal.make.cflags_undefined_symbols

  • Identifier: CFLAGS_UNDEFINED_SYMBOLS
  • Type: Unquoted string
  • Default Value: none
  • Destination File: toolchain.cmake
  • Description: Preprocessor macros to undefine. Undefined macros are similar to defined macros, but replicate the #undef directive in source code. To undefine the macro FOO use the syntax -u FOO in this setting. This is equivalent to #undef FOO in a source file. Note: the syntax differs from macro definition (there is a space, i.e. -u FOO versus -DFOO). Macros defined with this setting are applied to all . S , . c , and C++ files in the BSP. This setting defines the value of CFLAGS_UNDEFINED_SYMBOLS in the toolchain.cmake.
  • Restriction: none

hal.make.cflags_user_flags

  • Identifier: CFLAGS_USER_FLAGS
  • Type: Unquoted string
  • Default Value: none
  • Destination File: toolchain.cmake
  • Description: Custom flags passed to the compiler when compiling C, C++, and . S files . This setting defines the value of CFLAGS_USER_FLAGS in toolchain.cmake.
  • Restriction: none

hal.make.cflags_warnings

  • Identifier: CFLAGS_WARNINGS
  • Type: Unquoted string
  • Default Value: -Wall
  • Destination File: toolchain.cmake
  • Description: C/C++ compiler warning level. -Wall is commonly used. This setting defines the value of CFLAGS_WARNINGS in toolchain.cmake.
  • Restriction: none

hal.make.cxx_flags

  • Identifier: CXXFLAGS
  • Type: Unquoted string
  • Default Value: none
  • Destination File: toolchain.cmake
  • Description: Custom flags only passed to the C++ compiler. This setting defines the value of CXXFLAGS in toolchain.cmake.
  • Restriction: none

hal.toolchain.cc

  • Identifier: CC
  • Type: Unquoted string
  • Default Value: riscv32-unknown-elf-gcc
  • Destination File: toolchain.cmake
  • Description: C compiler command
  • Restriction: none

hal.toolchain.cxx

  • Identifier: CXX
  • Type: Unquoted string
  • Default Value: riscv32-unknown-elf-g++
  • Destination File: toolchain.cmake
  • Description: C++ compiler command
  • Restriction: none

hal.make.enable_cflag_fstack_protector_strong

  • Identifier: none
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: toolchain.cmake
  • Description: Enable the fstack-protector-strong compiler flag in toolchain.cmake. If true: ALT_CFLAGS += -fstack-protector-strong.
  • Restriction: none

hal.make.enable_cflag_wformat_security

  • Identifier: none
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: toolchain.cmake
  • Description: Enable the Wformat and Wformat-security compiler flags in toolchain.cmake to warn against security problems when using format functions. If true: ALT_CFLAGS += -Wformat -Wformat-security.
  • Restriction: none

hal.toolchain.prefix

  • Identifier: none
  • Type: Unquoted string
  • Default Value: riscv32-unknown-elf-
  • Description: Prefix to be used for toolchain executables. The value affects the individual values of the archiver, assembler, compiler, and linker. Specifically, it affects the settings.
    • hal.toolchain.ar
    • hal.toolchain.as
    • hal.toolchain.cc
    • hal.toolchain.cxx
    • hal.toolchain.objdump
    Example of the value: ${hal.toolchain.prefix}gcc, ${hal.toolchain.prefix}objdump, and others.

    However, if the override setting hal.toolchain.enable_executable_overrides is enabled, the individual settings hal.toolchain.ar, hal.toolchain.as, hal.toolchain.cc, hal.toolchain.cxx, and hal.toolchain.objdump may be set to custom values and are not derived from this setting's value.

    The riscv32-unknown-elf toolchain is available with the Ashling* RiscFree* IDE for Intel FPGAs. You must install the Ashling* RiscFree* IDE for Intel FPGAs to use this toolchain.

  • Restriction: none

hal.toolchain.enable_executable_overrides

  • Identifier: none
  • Type: Boolean assignment
  • Default value: false
  • Description: Enable custom values to be set for the toolchain executables. You can set the settings for hal.toolchain.ar, hal.toolchain.as, hal.toolchain.cc, hal.toolchain.cxx, and hal.toolchain.objdump to custom values.
  • Restriction: none

hal.enable_c_plus_plus

  • Identifier: ALT_NO_C_PLUS_PLUS
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: toolchain.cmake
  • Description: Enable support for a subset of the C++ language. This option increases code footprint by adding support for C++ constructors. Certain features, such as multiple inheritance and exceptions are not supported. If false, adds -DALT_NO_C_PLUS_PLUS to ALT_CPPFLAGS in toolchain.cmake, and reduces code footprint.
  • Restriction: none

hal.enable_clean_exit

  • Identifier: ALT_NO_CLEAN_EXIT
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: toolchain.cmake
  • Description: When your application exits, close file descriptors, call C++ destructors, etc. Code footprint can be reduced by disabling clean exit. If disabled, adds -DALT_NO_CLEAN_EXIT to ALT_CPPFLAGS and -Wl, --defsym, exit=_exit to ALT_LDFLAGS in toolchain.cmake.
  • Restriction: none

hal.enable_exit

  • Identifier: ALT_NO_EXIT
  • Type: Boolean assignment
  • Default Value: 1
  • Destination File: toolchain.cmake
  • Description: Add exit() support. This option increases code footprint if your main() routine returns or calls exit(). If false, adds -DALT_NO_EXIT to ALT_CPPFLAGS in toolchain.cmake, and reduces footprint.
  • Restriction: none

hal.enable_reduced_device_drivers

  • Identifier: ALT_USE_SMALL_DRIVERS
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: toolchain.cmake
  • Description: Certain drivers are compiled with reduced functionality to reduce code footprint. Not all drivers observe this setting. If true, adds -DALT_USE_SMALL_DRIVERS to ALT_CPPFLAGS in toolchain.cmake. Typically, drivers support this setting with a polled mode. For example, the altera_avalon_uart and altera_avalon_jtag_uart reduced drivers operate in polled mode.
  • Restriction: none

hal.enable_runtime_stack_checking

  • Identifier: ALT_STACK_CHECK
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: toolchain.cmake
  • Description: Turns on HAL runtime stack checking feature. Enabling this setting causes additional code to be placed into each subroutine call to generate an exception if a stack collision occurs with the heap or statically allocated data. If true, adds -DALT_STACK_CHECK and -fstack-check to ALT_CPPFLAGS in toolchain.cmake.
  • Restriction: none

hal.enable_sim_optimize

  • Identifier: ALT_SIM_OPTIMIZE
  • Type: Boolean assignment
  • Default Value: 0
  • Destination File: toolchain.cmake
  • Description: The BSP is compiled with optimizations to speedup HDL simulation such as initializing the cache, clearing the .bss section, and skipping long delay loops. If true, adds -DALT_SIM_OPTIMIZE to ALT_CPPFLAGS in toolchain.cmake.
  • Restriction: When this setting is true, the BSP cannot run on hardware.

hal.log_port

  • Identifier: ALT_LOG_PORT
  • Type: Unquoted string
  • Default Value: none
  • Destination File: system.h
  • Description: Slave descriptor of debug logging character-mode device. If defined, it enables extra debug messages in the HAL source. This setting is used by the Intel FPGA logging functions.

hal.log_flags

  • Identifier: ALT_LOG_FLAGS
  • Type: Decimal Number
  • Default Value: 0
  • Destination File: toolchain.cmake
  • Description: The value is assigned to ALT_LOG_FLAGS in the generated toolchain.cmake. Refer to hal.log_port for further details. The valid range of this setting is -1 through 3.

hal.stderr

  • Identifier: ALT_STDERR
  • Type: Unquoted string
  • Default Value: none
  • Destination File: system.h
  • Description: Slave descriptor of STDERR character-mode device. This setting is used by the ALT_STDERR family of defines in system.h.

hal.stdin

  • Identifier:ALT_STDIN
  • Type: Unquoted string
  • Default Value: none
  • Destination File: system.h
  • Description: Slave descriptor of STDIN character-mode device. This setting is used by the ALT_STDIN family of defines in system.h.

hal.stdout

  • Identifier: ALT_STDOUT
  • Type: Unquoted string
  • Default Value: none
  • Destination File: system.h
  • Description: Slave descriptor of STDOUT character-mode device. This setting is used by the ALT_STDOUT family of defines in system.h.