RADPx-OS Kernel (Radical Posix OS)  Crimson 0.1.4
POSIX-inspired kernel API with embedded and desktop VM targets
radkernel.h File Reference

Portable RADPx-OS kernel service ABI for RADLib and RADPx-OS targets. More...

#include <stddef.h>
#include <stdint.h>
#include <stdarg.h>
+ Include dependency graph for radkernel.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  rad_credentials
 Public data structure for process credentials. More...
 
struct  rad_kernel_config
 Public data structure for rad_kernel_config. More...
 
struct  rad_boot_arg
 Public data structure for rad_boot_arg. More...
 
struct  rad_boot_memory_region
 Public data structure for rad_boot_memory_region. More...
 
struct  rad_boot_info
 Public data structure for rad_boot_info. More...
 
struct  rad_boot_handoff
 Public data structure for rad_boot_handoff. More...
 
struct  rad_memory_stats
 Public data structure for rad_memory_stats. More...
 
struct  rad_perf_counter_info
 Public data structure for rad_perf_counter_info. More...
 
struct  rad_timer_source_config
 Public data structure for rad_timer_source_config. More...
 
struct  rad_timer_source_ops
 Public data structure for rad_timer_source_ops. More...
 
struct  rad_timer_source_info
 Public data structure for rad_timer_source_info. More...
 
struct  rad_task_info
 Public data structure for rad_task_info. More...
 
struct  rad_task_config
 Public data structure for rad_task_config. More...
 
struct  rad_core_info
 Public data structure for rad_core_info. More...
 
struct  rad_scheduler_info
 Public data structure for rad_scheduler_info. More...
 
struct  rad_tree_node_info
 Public data structure for rad_tree_node_info. More...
 
struct  rad_overlay_info
 Public data structure for rad_overlay_info. More...
 
struct  rad_vfs_stat
 Public data structure for rad_vfs_stat. More...
 
struct  rad_block_info
 Public data structure for rad_block_info. More...
 
struct  rad_block_request
 Public data structure for rad_block_request. More...
 
struct  rad_usb_host_info
 Public data structure for rad_usb_host_info. More...
 
struct  rad_mac_address
 Public data structure for rad_mac_address. More...
 
struct  rad_ipv4_address
 Public data structure for rad_ipv4_address. More...
 
struct  rad_net_packet
 Public data structure for rad_net_packet. More...
 
struct  rad_net_link_info
 Public data structure for rad_net_link_info. More...
 
struct  rad_net_stack_info
 Public data structure for rad_net_stack_info. More...
 
struct  rad_net_stack_config
 Public data structure for rad_net_stack_config. More...
 
struct  rad_ntp_status
 Public data structure for rad_ntp_status. More...
 
struct  rad_ntp_query
 Public data structure for rad_ntp_query. More...
 
struct  rad_sockaddr_in
 Public data structure for rad_sockaddr_in. More...
 
struct  rad_socket_info
 Public data structure for rad_socket_info. More...
 
struct  rad_posix_timeval
 Public data structure for rad_posix_timeval. More...
 
struct  rad_pollfd
 POSIX-style poll descriptor used by RADPx-OS userland. More...
 
struct  rad_process_info
 Public data structure for rad_process_info. More...
 
struct  rad_process_arch_ops
 Public data structure for rad_process_arch_ops. More...
 
struct  rad_vfs_dirent
 Public data structure for rad_vfs_dirent. More...
 
struct  rad_dirent_user
 Public data structure for userspace directory enumeration. More...
 
struct  rad_vfs_backend_ops
 Public data structure for rad_vfs_backend_ops. More...
 
struct  rad_program_info
 Public data structure for rad_program_info. More...
 
struct  rad_device_ops
 Public data structure for rad_device_ops. More...
 
struct  rad_input_event
 Public data structure for rad_input_event. More...
 
struct  rad_framebuffer_rect
 Public data structure for rad_framebuffer_rect. More...
 
struct  rad_framebuffer_info
 Public data structure for rad_framebuffer_info. More...
 
struct  rad_framebuffer_present
 Public data structure for rad_framebuffer_present. More...
 
struct  rad_display_mode
 Public data structure for rad_display_mode. More...
 
struct  rad_framebuffer_ops
 Public data structure for rad_framebuffer_ops. More...
 
struct  rad_framebuffer_config
 Public data structure for rad_framebuffer_config. More...
 
struct  rad_framebuffer_display_info
 Public data structure for rad_framebuffer_display_info. More...
 
struct  rad_shm_info
 Public data structure for rad_shm_info. More...
 
struct  rad_compositor_ipc_surface
 Public data structure for rad_compositor_ipc_surface. More...
 
struct  rad_compositor_ipc_damage
 Public data structure for rad_compositor_ipc_damage. More...
 
struct  rad_i2c_transfer
 Public data structure for rad_i2c_transfer. More...
 
struct  rad_i2c_controller_ops
 Public data structure for rad_i2c_controller_ops. More...
 
struct  rad_i2c_controller_config
 Public data structure for rad_i2c_controller_config. More...
 
struct  rad_i2c_driver
 Public data structure for rad_i2c_driver. More...
 
struct  rad_spi_transfer
 Public data structure for rad_spi_transfer. More...
 
struct  rad_dma_transfer
 Public data structure for rad_dma_transfer. More...
 
struct  rad_dma_backend_ops
 Public data structure for rad_dma_backend_ops. More...
 
struct  rad_dma_controller_config
 Public data structure for rad_dma_controller_config. More...
 
struct  rad_spi_controller_ops
 Public data structure for rad_spi_controller_ops. More...
 
struct  rad_spi_controller_config
 Public data structure for rad_spi_controller_config. More...
 
struct  rad_spi_driver
 Public data structure for rad_spi_driver. More...
 
struct  rad_module_descriptor
 Public data structure for rad_module_descriptor. More...
 
struct  rad_module_info
 Public data structure for rad_module_info. More...
 
struct  rad_service_config
 Public data structure for rad_service_config. More...
 
struct  rad_service_descriptor
 Public data structure for rad_service_descriptor. More...
 
struct  rad_service_info
 Public data structure for rad_service_info. More...
 
struct  rad_driver_info
 Public data structure for rad_driver_info. More...
 
struct  rad_irq_domain_config
 Public data structure for rad_irq_domain_config. More...
 
struct  rad_irq_resource
 Public data structure for rad_irq_resource. More...
 
struct  rad_i2c_device_info
 Public data structure for rad_i2c_device_info. More...
 
struct  rad_spi_device_info
 Public data structure for rad_spi_device_info. More...
 
struct  rad_dma_channel_info
 Public data structure for rad_dma_channel_info. More...
 
struct  rad_irq_info
 Public data structure for rad_irq_info. More...
 
struct  rad_audio_format
 Public data structure for rad_audio_format. More...
 
struct  rad_serial_config
 Public data structure for rad_serial_config. More...
 
struct  rad_sd_config
 Public data structure for rad_sd_config. More...
 
struct  rad_tty_window_size
 Public data structure for rad_tty_window_size. More...
 
struct  rad_tty_termios
 POSIX-shaped terminal attributes stored by RADPx-OS TTY devices. More...
 
struct  rad_log_entry
 Public data structure for rad_log_entry. More...
 

Macros

#define RADEK_VERSION_MAJOR   0
 Public constant or ioctl helper.
 
#define RADEK_VERSION_MINOR   1
 Public constant or ioctl helper.
 
#define RADEK_VERSION_PATCH   2
 Public constant or ioctl helper.
 
#define RAD_IOCTL_NONE   0u
 Public constant or ioctl helper.
 
#define RAD_IOCTL_WRITE   1u
 Public constant or ioctl helper.
 
#define RAD_IOCTL_READ   2u
 Public constant or ioctl helper.
 
#define RAD_IOCTL_READWRITE   3u
 Public constant or ioctl helper.
 
#define RAD_IOCTL(dir, type, nr, size)   ((((uint32_t)(dir) & 3u) << 30) | (((uint32_t)(size) & 0x3fffu) << 16) | (((uint32_t)(type) & 0xffu) << 8) | ((uint32_t)(nr) & 0xffu))
 Public constant or ioctl helper.
 
#define RAD_IO(type, nr)   RAD_IOCTL(RAD_IOCTL_NONE, type, nr, 0u)
 Public constant or ioctl helper.
 
#define RAD_IOR(type, nr, type_name)   RAD_IOCTL(RAD_IOCTL_READ, type, nr, sizeof(type_name))
 Public constant or ioctl helper.
 
#define RAD_IOW(type, nr, type_name)   RAD_IOCTL(RAD_IOCTL_WRITE, type, nr, sizeof(type_name))
 Public constant or ioctl helper.
 
#define RAD_IOWR(type, nr, type_name)   RAD_IOCTL(RAD_IOCTL_READWRITE, type, nr, sizeof(type_name))
 Public constant or ioctl helper.
 
#define RAD_IOCTL_DIR(request)   (((uint32_t)(request) >> 30) & 3u)
 Public constant or ioctl helper.
 
#define RAD_IOCTL_SIZE(request)   (((uint32_t)(request) >> 16) & 0x3fffu)
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE(request)   (((uint32_t)(request) >> 8) & 0xffu)
 Public constant or ioctl helper.
 
#define RAD_IOCTL_NR(request)   ((uint32_t)(request) & 0xffu)
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_I2C   'I'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_SPI   'S'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_AUDIO   'A'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_SERIAL   'T'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_FRAMEBUFFER   'F'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_INPUT   'K'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_BLOCK   'B'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_NET   'N'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_COMPOSITOR   'C'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_USB   'U'
 Public constant or ioctl helper.
 
#define RAD_IOCTL_TYPE_TTY   'Y'
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_I2C_TRANSFER   RAD_IOWR(RAD_IOCTL_TYPE_I2C, 1u, struct rad_i2c_transfer)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_SPI_TRANSFER   RAD_IOWR(RAD_IOCTL_TYPE_SPI, 1u, struct rad_spi_transfer)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_AUDIO_CONFIGURE   RAD_IOW(RAD_IOCTL_TYPE_AUDIO, 1u, struct rad_audio_format)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_SERIAL_CONFIGURE   RAD_IOW(RAD_IOCTL_TYPE_SERIAL, 1u, struct rad_serial_config)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_FRAMEBUFFER_INFO   RAD_IOR(RAD_IOCTL_TYPE_FRAMEBUFFER, 1u, struct rad_framebuffer_info)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_FRAMEBUFFER_FLUSH   RAD_IOW(RAD_IOCTL_TYPE_FRAMEBUFFER, 2u, struct rad_framebuffer_rect)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_BLOCK_INFO   RAD_IOR(RAD_IOCTL_TYPE_BLOCK, 1u, struct rad_block_info)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_BLOCK_READ   RAD_IOWR(RAD_IOCTL_TYPE_BLOCK, 2u, struct rad_block_request)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_BLOCK_WRITE   RAD_IOWR(RAD_IOCTL_TYPE_BLOCK, 3u, struct rad_block_request)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_BLOCK_FLUSH   RAD_IO(RAD_IOCTL_TYPE_BLOCK, 4u)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_NET_LINK_INFO   RAD_IOR(RAD_IOCTL_TYPE_NET, 1u, struct rad_net_link_info)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_NET_SEND   RAD_IOW(RAD_IOCTL_TYPE_NET, 2u, struct rad_net_packet)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_NET_POLL   RAD_IO(RAD_IOCTL_TYPE_NET, 3u)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_NET_RECV   RAD_IOWR(RAD_IOCTL_TYPE_NET, 4u, struct rad_net_packet)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_NET_STACK_INFO   RAD_IOR(RAD_IOCTL_TYPE_NET, 5u, struct rad_net_stack_info)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_NET_NTP_QUERY   RAD_IOWR(RAD_IOCTL_TYPE_NET, 6u, struct rad_ntp_query)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_NET_CONFIGURE   RAD_IOW(RAD_IOCTL_TYPE_NET, 7u, struct rad_net_stack_config)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_COMPOSITOR_CREATE_SURFACE   RAD_IOWR(RAD_IOCTL_TYPE_COMPOSITOR, 1u, struct rad_compositor_ipc_surface)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_COMPOSITOR_QUEUE_DAMAGE   RAD_IOW(RAD_IOCTL_TYPE_COMPOSITOR, 2u, struct rad_compositor_ipc_damage)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_FRAMEBUFFER_PRESENT   RAD_IOW(RAD_IOCTL_TYPE_FRAMEBUFFER, 3u, struct rad_framebuffer_present)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_USB_HOST_INFO   RAD_IOR(RAD_IOCTL_TYPE_USB, 1u, struct rad_usb_host_info)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_TTY_GET_WINSIZE   RAD_IOR(RAD_IOCTL_TYPE_TTY, 1u, struct rad_tty_window_size)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_TTY_SET_WINSIZE   RAD_IOW(RAD_IOCTL_TYPE_TTY, 2u, struct rad_tty_window_size)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_TTY_GET_MODE   RAD_IOR(RAD_IOCTL_TYPE_TTY, 3u, uint32_t)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_TTY_SET_MODE   RAD_IOW(RAD_IOCTL_TYPE_TTY, 4u, uint32_t)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_TTY_GET_TERMIOS   RAD_IOR(RAD_IOCTL_TYPE_TTY, 5u, struct rad_tty_termios)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_TTY_SET_TERMIOS   RAD_IOW(RAD_IOCTL_TYPE_TTY, 6u, struct rad_tty_termios)
 Public constant or ioctl helper.
 
#define RAD_DEVICE_IOCTL_TTY_FLUSH   RAD_IOW(RAD_IOCTL_TYPE_TTY, 7u, uint32_t)
 Public constant or ioctl helper.
 
#define RAD_BOOT_MAX_ARGS   16u
 Public constant or ioctl helper.
 
#define RAD_BOOT_MAX_MEMORY_REGIONS   8u
 Public constant or ioctl helper.
 
#define RAD_BOOT_MAX_STRING   64u
 Public constant or ioctl helper.
 
#define RAD_BOOT_HANDOFF_MAGIC   0x52414448u
 Public constant or ioctl helper.
 
#define RAD_BOOT_HANDOFF_VERSION   1u
 Public constant or ioctl helper.
 
#define RAD_BOOT_HANDOFF_FLAG_SECONDARIES_PARKED   0x00000001u
 Public constant or ioctl helper.
 
#define RAD_BOOT_HANDOFF_FLAG_MMU_DISABLED   0x00000002u
 Public constant or ioctl helper.
 
#define RAD_BOOT_HANDOFF_FLAG_DCACHE_DISABLED   0x00000004u
 Public constant or ioctl helper.
 
#define RAD_BOOT_HANDOFF_FLAG_ICACHE_INVALIDATED   0x00000008u
 Public constant or ioctl helper.
 
#define RAD_BOOT_HANDOFF_FLAG_TLB_INVALIDATED   0x00000010u
 Public constant or ioctl helper.
 
#define RAD_BOOT_HANDOFF_FLAG_INTERRUPTS_MASKED   0x00000020u
 Public constant or ioctl helper.
 
#define RAD_OVERLAY_MAGIC   0x4f444152u
 Public constant or ioctl helper.
 
#define RAD_OVERLAY_VERSION   1u
 Public constant or ioctl helper.
 
#define RAD_TREE_MAX_PROPERTY_NAME   64u
 Public constant or ioctl helper.
 
#define RAD_TREE_MAX_PATH   96u
 Public constant or ioctl helper.
 
#define RAD_TREE_MAX_VALUE   96u
 Public constant or ioctl helper.
 
#define RAD_I2C_BUS_NAME_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_SPI_BUS_NAME_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_DRIVER_NAME_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_COMPATIBLE_MAX   64u
 Public constant or ioctl helper.
 
#define RAD_MODULE_NAME_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_MODULE_MAX_INFO   32u
 Public constant or ioctl helper.
 
#define RAD_SERVICE_NAME_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_SERVICE_COMPATIBLE_MAX   64u
 Public constant or ioctl helper.
 
#define RAD_SERVICE_CAPABILITY_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_IRQ_NAME_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_IRQ_DOMAIN_NAME_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_IRQ_MAX_RESOURCES   4u
 Public constant or ioctl helper.
 
#define RAD_FRAMEBUFFER_NAME_MAX   64u
 Public constant or ioctl helper.
 
#define RAD_DISPLAY_CONNECTOR_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_FRAMEBUFFER_MAX_MODES   8u
 Public constant or ioctl helper.
 
#define RAD_SHM_NAME_MAX   64u
 Public constant or ioctl helper.
 
#define RAD_SHM_MAX_PAGES   16u
 Public constant or ioctl helper.
 
#define RAD_MMAP_PROT_READ   1u
 Public constant or ioctl helper.
 
#define RAD_MMAP_PROT_WRITE   2u
 Public constant or ioctl helper.
 
#define RAD_MMAP_SHARED   1u
 Public constant or ioctl helper.
 
#define RAD_MMAP_PRIVATE   2u
 Public constant or ioctl helper.
 
#define RAD_COMPOSITOR_DAMAGE_EXPOSED   1u
 Public constant or ioctl helper.
 
#define RAD_AF_INET   2u
 Public constant or ioctl helper.
 
#define RAD_SOCK_DGRAM   2u
 Public constant or ioctl helper.
 
#define RAD_SOCK_STREAM   1u
 Public constant or ioctl helper.
 
#define RAD_IPPROTO_UDP   17u
 Public constant or ioctl helper.
 
#define RAD_IPPROTO_TCP   6u
 Public constant or ioctl helper.
 
#define RAD_PERF_NAME_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_TIMER_NAME_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_INPUT_QUEUE_NAME_MAX   64u
 Public constant or ioctl helper.
 
#define RAD_WAIT_FOREVER   0xffffffffu
 Public constant or ioctl helper.
 
#define RAD_LOG_CATEGORY_MAX   32u
 Public constant or ioctl helper.
 
#define RAD_LOG_MESSAGE_MAX   192u
 Public constant or ioctl helper.
 
#define RAD_BOOT_MEMORY_USABLE   1u
 Public constant or ioctl helper.
 
#define RAD_BOOT_MEMORY_RESERVED   2u
 Public constant or ioctl helper.
 
#define RAD_BOOT_MEMORY_PSRAM   3u
 Public constant or ioctl helper.
 
#define RAD_BOOT_MEMORY_MMIO   4u
 Public constant or ioctl helper.
 
#define RAD_WAIT_NOHANG   1u
 Public constant or ioctl helper.
 
#define RAD_FD_CLOEXEC   1u
 Public constant or ioctl helper.
 
#define RAD_FD_NONBLOCK   256u
 Public constant or ioctl helper.
 
#define RAD_FCNTL_GETFD   1u
 Public constant or ioctl helper.
 
#define RAD_FCNTL_SETFD   2u
 Public constant or ioctl helper.
 
#define RAD_FCNTL_GETFL   3u
 Public constant or ioctl helper.
 
#define RAD_FCNTL_SETFL   4u
 Public constant or ioctl helper.
 
#define RAD_POLLIN   0x0001
 Data other than high-priority data may be read.
 
#define RAD_POLLOUT   0x0004
 Normal data may be written.
 
#define RAD_POLLERR   0x0008
 Error condition.
 
#define RAD_POLLHUP   0x0010
 Hung up.
 
#define RAD_POLLNVAL   0x0020
 Invalid file descriptor.
 
#define RAD_TASK_CORE_ANY   (-1)
 Public constant or ioctl helper.
 
#define RAD_TASK_CORE_SERVICE   0
 Public constant or ioctl helper.
 
#define RAD_TTY_NCCS   32u
 Number of POSIX-shaped terminal control character slots.
 
#define RAD_TTY_FLUSH_INPUT   1u
 Flush pending input bytes from a RADPx-OS TTY or PTY endpoint.
 
#define RAD_TTY_FLUSH_OUTPUT   2u
 Flush pending output bytes from a RADPx-OS TTY or PTY endpoint.
 

Typedefs

typedef enum rad_status rad_status_t
 Public enumeration for rad_status. More...
 
typedef enum rad_log_level rad_log_level_t
 Public enumeration for rad_log_level. More...
 
typedef enum rad_kernel_print_level rad_kernel_print_level_t
 Kernel-only printk severity. More...
 
typedef enum rad_posix_syscall rad_posix_syscall_t
 Public enumeration for rad_posix_syscall. More...
 
typedef enum rad_process_state rad_process_state_t
 Public enumeration for rad_process_state. More...
 
typedef enum rad_vfs_open_flags rad_vfs_open_flags_t
 Public enumeration for rad_vfs_open_flags. More...
 
typedef enum rad_seek_origin rad_seek_origin_t
 Public enumeration for rad_seek_origin. More...
 
typedef uint32_t rad_uid_t
 POSIX-style user identifier.
 
typedef uint32_t rad_gid_t
 POSIX-style group identifier.
 
typedef struct rad_credentials rad_credentials_t
 Public data structure for process credentials. More...
 
typedef enum rad_device_type rad_device_type_t
 Public enumeration for rad_device_type. More...
 
typedef enum rad_usb_controller_type rad_usb_controller_type_t
 Public enumeration for rad_usb_controller_type. More...
 
typedef enum rad_usb_device_class rad_usb_device_class_t
 Public enumeration for rad_usb_device_class. More...
 
typedef enum rad_input_event_type rad_input_event_type_t
 Public enumeration for rad_input_event_type. More...
 
typedef enum rad_input_key rad_input_key_t
 Public enumeration for rad_input_key. More...
 
typedef enum rad_input_modifier_flags rad_input_modifier_flags_t
 Public enumeration for rad_input_modifier_flags. More...
 
typedef enum rad_input_pointer_button_flags rad_input_pointer_button_flags_t
 Public enumeration for rad_input_pointer_button_flags. More...
 
typedef enum rad_pixel_format rad_pixel_format_t
 Public enumeration for rad_pixel_format. More...
 
typedef enum rad_sd_mode rad_sd_mode_t
 Public enumeration for rad_sd_mode. More...
 
typedef enum rad_spi_transfer_mode rad_spi_transfer_mode_t
 Public enumeration for rad_spi_transfer_mode. More...
 
typedef enum rad_dma_transfer_type rad_dma_transfer_type_t
 Public enumeration for rad_dma_transfer_type. More...
 
typedef enum rad_dma_request_id rad_dma_request_id_t
 Public enumeration for rad_dma_request_id. More...
 
typedef enum rad_display_output_type rad_display_output_type_t
 Public enumeration for rad_display_output_type. More...
 
typedef enum rad_tty_mode_flags rad_tty_mode_flags_t
 Public enumeration for rad_tty_mode_flags. More...
 
typedef enum rad_irq_trigger rad_irq_trigger_t
 Public enumeration for rad_irq_trigger. More...
 
typedef enum rad_task_state rad_task_state_t
 Public enumeration for rad_task_state. More...
 
typedef struct rad_kernel_config rad_kernel_config_t
 Public data structure for rad_kernel_config. More...
 
typedef struct rad_boot_arg rad_boot_arg_t
 Public data structure for rad_boot_arg. More...
 
typedef struct rad_boot_memory_region rad_boot_memory_region_t
 Public data structure for rad_boot_memory_region. More...
 
typedef struct rad_boot_info rad_boot_info_t
 Public data structure for rad_boot_info. More...
 
typedef struct rad_boot_handoff rad_boot_handoff_t
 Public data structure for rad_boot_handoff. More...
 
typedef struct rad_memory_stats rad_memory_stats_t
 Public data structure for rad_memory_stats. More...
 
typedef struct rad_perf_counter_info rad_perf_counter_info_t
 Public data structure for rad_perf_counter_info. More...
 
typedef struct rad_timer_source_config rad_timer_source_config_t
 Public data structure for rad_timer_source_config. More...
 
typedef struct rad_timer_source_ops rad_timer_source_ops_t
 Public data structure for rad_timer_source_ops. More...
 
typedef struct rad_timer_source_info rad_timer_source_info_t
 Public data structure for rad_timer_source_info. More...
 
typedef struct rad_task_info rad_task_info_t
 Public data structure for rad_task_info. More...
 
typedef struct rad_task_config rad_task_config_t
 Public data structure for rad_task_config. More...
 
typedef struct rad_core_info rad_core_info_t
 Public data structure for rad_core_info. More...
 
typedef enum rad_scheduler_mode rad_scheduler_mode_t
 Public enumeration for rad_scheduler_mode. More...
 
typedef struct rad_scheduler_info rad_scheduler_info_t
 Public data structure for rad_scheduler_info. More...
 
typedef enum rad_tree_property_type rad_tree_property_type_t
 Public enumeration for rad_tree_property_type. More...
 
typedef struct rad_tree_node_handle * rad_tree_node_t
 Opaque handle type rad_tree_node_t backed by rad_tree_node_handle.
 
typedef struct rad_tree_node_info rad_tree_node_info_t
 Public data structure for rad_tree_node_info. More...
 
typedef struct rad_overlay_info rad_overlay_info_t
 Public data structure for rad_overlay_info. More...
 
typedef struct rad_vfs_stat rad_vfs_stat_t
 Public data structure for rad_vfs_stat. More...
 
typedef struct rad_block_info rad_block_info_t
 Public data structure for rad_block_info. More...
 
typedef struct rad_block_request rad_block_request_t
 Public data structure for rad_block_request. More...
 
typedef struct rad_usb_host_info rad_usb_host_info_t
 Public data structure for rad_usb_host_info. More...
 
typedef struct rad_mac_address rad_mac_address_t
 Public data structure for rad_mac_address. More...
 
typedef struct rad_ipv4_address rad_ipv4_address_t
 Public data structure for rad_ipv4_address. More...
 
typedef struct rad_net_packet rad_net_packet_t
 Public data structure for rad_net_packet. More...
 
typedef struct rad_net_link_info rad_net_link_info_t
 Public data structure for rad_net_link_info. More...
 
typedef struct rad_net_stack_info rad_net_stack_info_t
 Public data structure for rad_net_stack_info. More...
 
typedef struct rad_net_stack_config rad_net_stack_config_t
 Public data structure for rad_net_stack_config. More...
 
typedef struct rad_ntp_status rad_ntp_status_t
 Public data structure for rad_ntp_status. More...
 
typedef struct rad_ntp_query rad_ntp_query_t
 Public data structure for rad_ntp_query. More...
 
typedef struct rad_sockaddr_in rad_sockaddr_in_t
 Public data structure for rad_sockaddr_in. More...
 
typedef enum rad_tcp_state rad_tcp_state_t
 Public enumeration for rad_tcp_state. More...
 
typedef struct rad_socket_info rad_socket_info_t
 Public data structure for rad_socket_info. More...
 
typedef struct rad_posix_timeval rad_posix_timeval_t
 Public data structure for rad_posix_timeval. More...
 
typedef struct rad_pollfd rad_pollfd_t
 POSIX-style poll descriptor used by RADPx-OS userland. More...
 
typedef struct rad_process_info rad_process_info_t
 Public data structure for rad_process_info. More...
 
typedef struct rad_process_arch_ops rad_process_arch_ops_t
 Public data structure for rad_process_arch_ops. More...
 
typedef struct rad_vfs_dirent rad_vfs_dirent_t
 Public data structure for rad_vfs_dirent. More...
 
typedef struct rad_dirent_user rad_dirent_user_t
 Public data structure for userspace directory enumeration. More...
 
typedef int(* rad_vfs_list_callback_t) (const char *name, const rad_vfs_stat_t *stat, void *context)
 Public callback typedef used by the RADPx-OS API.
 
typedef struct rad_vfs_backend_ops rad_vfs_backend_ops_t
 Public data structure for rad_vfs_backend_ops. More...
 
typedef enum rad_program_state rad_program_state_t
 Public enumeration for rad_program_state. More...
 
typedef struct rad_program_info rad_program_info_t
 Public data structure for rad_program_info. More...
 
typedef struct rad_device_ops rad_device_ops_t
 Public data structure for rad_device_ops. More...
 
typedef struct rad_input_event rad_input_event_t
 Public data structure for rad_input_event. More...
 
typedef struct rad_framebuffer_rect rad_framebuffer_rect_t
 Public data structure for rad_framebuffer_rect. More...
 
typedef struct rad_framebuffer_info rad_framebuffer_info_t
 Public data structure for rad_framebuffer_info. More...
 
typedef struct rad_framebuffer_present rad_framebuffer_present_t
 Public data structure for rad_framebuffer_present. More...
 
typedef struct rad_display_mode rad_display_mode_t
 Public data structure for rad_display_mode. More...
 
typedef struct rad_framebuffer_ops rad_framebuffer_ops_t
 Public data structure for rad_framebuffer_ops. More...
 
typedef struct rad_framebuffer_handle * rad_framebuffer_t
 Opaque handle type rad_framebuffer_t backed by rad_framebuffer_handle.
 
typedef struct rad_framebuffer_config rad_framebuffer_config_t
 Public data structure for rad_framebuffer_config. More...
 
typedef struct rad_framebuffer_display_info rad_framebuffer_display_info_t
 Public data structure for rad_framebuffer_display_info. More...
 
typedef struct rad_shm_info rad_shm_info_t
 Public data structure for rad_shm_info. More...
 
typedef struct rad_compositor_ipc_surface rad_compositor_ipc_surface_t
 Public data structure for rad_compositor_ipc_surface. More...
 
typedef struct rad_compositor_ipc_damage rad_compositor_ipc_damage_t
 Public data structure for rad_compositor_ipc_damage. More...
 
typedef struct rad_i2c_transfer rad_i2c_transfer_t
 Public data structure for rad_i2c_transfer. More...
 
typedef struct rad_i2c_bus_handle * rad_i2c_bus_t
 Opaque handle type rad_i2c_bus_t backed by rad_i2c_bus_handle.
 
typedef struct rad_i2c_device rad_i2c_device_t
 Forward-declared public type rad_i2c_device_t backed by rad_i2c_device.
 
typedef struct rad_i2c_controller_ops rad_i2c_controller_ops_t
 Public data structure for rad_i2c_controller_ops. More...
 
typedef struct rad_i2c_controller_config rad_i2c_controller_config_t
 Public data structure for rad_i2c_controller_config. More...
 
typedef struct rad_i2c_driver rad_i2c_driver_t
 Public data structure for rad_i2c_driver. More...
 
typedef struct rad_spi_transfer rad_spi_transfer_t
 Public data structure for rad_spi_transfer. More...
 
typedef struct rad_spi_bus_handle * rad_spi_bus_t
 Opaque handle type rad_spi_bus_t backed by rad_spi_bus_handle.
 
typedef struct rad_spi_device rad_spi_device_t
 Forward-declared public type rad_spi_device_t backed by rad_spi_device.
 
typedef struct rad_dma_channel_handle * rad_dma_channel_t
 Opaque handle type rad_dma_channel_t backed by rad_dma_channel_handle.
 
typedef struct rad_dma_transfer rad_dma_transfer_t
 Public data structure for rad_dma_transfer. More...
 
typedef struct rad_dma_backend_ops rad_dma_backend_ops_t
 Public data structure for rad_dma_backend_ops. More...
 
typedef struct rad_dma_controller_config rad_dma_controller_config_t
 Public data structure for rad_dma_controller_config. More...
 
typedef struct rad_spi_controller_ops rad_spi_controller_ops_t
 Public data structure for rad_spi_controller_ops. More...
 
typedef struct rad_spi_controller_config rad_spi_controller_config_t
 Public data structure for rad_spi_controller_config. More...
 
typedef struct rad_spi_driver rad_spi_driver_t
 Public data structure for rad_spi_driver. More...
 
typedef struct rad_module_descriptor rad_module_descriptor_t
 Public data structure for rad_module_descriptor. More...
 
typedef enum rad_module_state rad_module_state_t
 Public enumeration for rad_module_state. More...
 
typedef enum rad_service_state rad_service_state_t
 Public enumeration for rad_service_state. More...
 
typedef struct rad_module_info rad_module_info_t
 Public data structure for rad_module_info. More...
 
typedef struct rad_service_config rad_service_config_t
 Public data structure for rad_service_config. More...
 
typedef struct rad_service_descriptor rad_service_descriptor_t
 Public data structure for rad_service_descriptor. More...
 
typedef struct rad_service_info rad_service_info_t
 Public data structure for rad_service_info. More...
 
typedef struct rad_driver_info rad_driver_info_t
 Public data structure for rad_driver_info. More...
 
typedef struct rad_irq_domain_handle * rad_irq_domain_t
 Opaque handle type rad_irq_domain_t backed by rad_irq_domain_handle.
 
typedef struct rad_irq_domain_config rad_irq_domain_config_t
 Public data structure for rad_irq_domain_config. More...
 
typedef struct rad_irq_resource rad_irq_resource_t
 Public data structure for rad_irq_resource. More...
 
typedef struct rad_i2c_device_info rad_i2c_device_info_t
 Public data structure for rad_i2c_device_info. More...
 
typedef struct rad_spi_device_info rad_spi_device_info_t
 Public data structure for rad_spi_device_info. More...
 
typedef struct rad_dma_channel_info rad_dma_channel_info_t
 Public data structure for rad_dma_channel_info. More...
 
typedef struct rad_irq_info rad_irq_info_t
 Public data structure for rad_irq_info. More...
 
typedef struct rad_audio_format rad_audio_format_t
 Public data structure for rad_audio_format. More...
 
typedef struct rad_serial_config rad_serial_config_t
 Public data structure for rad_serial_config. More...
 
typedef struct rad_sd_config rad_sd_config_t
 Public data structure for rad_sd_config. More...
 
typedef void(* rad_task_entry_t) (void *context)
 Public callback typedef used by the RADPx-OS API.
 
typedef void(* rad_terminal_write_t) (const char *text, void *context)
 Public callback typedef used by the RADPx-OS API.
 
typedef rad_status_t(* rad_terminal_handler_t) (int argc, const char **argv, rad_terminal_write_t write, void *write_context, void *command_context)
 Public callback typedef used by the RADPx-OS API.
 
typedef void(* rad_tty_output_t) (const void *data, size_t size, void *context)
 Public callback typedef used by the RADPx-OS API.
 
typedef void(* rad_irq_handler_t) (uint32_t irq, void *context)
 Public callback typedef used by the RADPx-OS API.
 
typedef void(* rad_work_handler_t) (void *context)
 Public callback typedef used by the RADPx-OS API.
 
typedef struct rad_task_handle * rad_task_t
 Opaque handle type rad_task_t backed by rad_task_handle.
 
typedef struct rad_mutex_handle * rad_mutex_t
 Opaque handle type rad_mutex_t backed by rad_mutex_handle.
 
typedef struct rad_event_handle * rad_event_t
 Opaque handle type rad_event_t backed by rad_event_handle.
 
typedef struct rad_wait_queue_handle * rad_wait_queue_t
 Opaque handle type rad_wait_queue_t backed by rad_wait_queue_handle.
 
typedef struct rad_input_queue_handle * rad_input_queue_t
 Opaque handle type rad_input_queue_t backed by rad_input_queue_handle.
 
typedef struct rad_file_handle * rad_file_t
 Opaque handle type rad_file_t backed by rad_file_handle.
 
typedef struct rad_dir_handle * rad_dir_t
 Opaque handle type rad_dir_t backed by rad_dir_handle.
 
typedef struct rad_device_handle * rad_device_t
 Opaque handle type rad_device_t backed by rad_device_handle.
 
typedef struct rad_program_handle * rad_program_t
 Opaque handle type rad_program_t backed by rad_program_handle.
 
typedef struct rad_tty_handle * rad_tty_t
 Opaque handle type rad_tty_t backed by rad_tty_handle.
 
typedef struct rad_pty_handle * rad_pty_t
 Opaque handle type rad_pty_t backed by rad_pty_handle.
 
typedef struct rad_tty_window_size rad_tty_window_size_t
 Public data structure for rad_tty_window_size. More...
 
typedef struct rad_tty_termios rad_tty_termios_t
 POSIX-shaped terminal attributes stored by RADPx-OS TTY devices. More...
 
typedef struct rad_log_entry rad_log_entry_t
 Public data structure for rad_log_entry. More...
 

Enumerations

enum  rad_status {
  RAD_STATUS_OK = 0 , RAD_STATUS_ERROR = -1 , RAD_STATUS_INVALID_ARGUMENT = -2 , RAD_STATUS_NOT_FOUND = -3 ,
  RAD_STATUS_NO_MEMORY = -4 , RAD_STATUS_TIMEOUT = -5 , RAD_STATUS_NOT_SUPPORTED = -6 , RAD_STATUS_ALREADY_EXISTS = -7 ,
  RAD_STATUS_NOT_INITIALIZED = -8
}
 Public enumeration for rad_status. More...
 
enum  rad_log_level {
  RAD_LOG_TRACE = 0 , RAD_LOG_DEBUG = 1 , RAD_LOG_INFO = 2 , RAD_LOG_WARNING = 3 ,
  RAD_LOG_ERROR = 4 , RAD_LOG_CRITICAL = 5
}
 Public enumeration for rad_log_level. More...
 
enum  rad_kernel_print_level { RKERN_DBG = 0 , RKERN_STAT = 1 , RKERN_WARN = 2 , RKERN_ERR = 3 }
 Kernel-only printk severity. More...
 
enum  rad_posix_syscall {
  RAD_SYSCALL_READ = 0 , RAD_SYSCALL_WRITE = 1 , RAD_SYSCALL_OPEN = 2 , RAD_SYSCALL_CLOSE = 3 ,
  RAD_SYSCALL_IOCTL = 4 , RAD_SYSCALL_LSEEK = 5 , RAD_SYSCALL_STAT = 6 , RAD_SYSCALL_FSTAT = 7 ,
  RAD_SYSCALL_GETTIMEOFDAY = 8 , RAD_SYSCALL_NANOSLEEP = 9 , RAD_SYSCALL_EXIT = 10 , RAD_SYSCALL_FORK = 11 ,
  RAD_SYSCALL_EXECVE = 12 , RAD_SYSCALL_WAITPID = 13 , RAD_SYSCALL_GETPID = 14 , RAD_SYSCALL_GETPPID = 15 ,
  RAD_SYSCALL_DUP = 16 , RAD_SYSCALL_DUP2 = 17 , RAD_SYSCALL_CHDIR = 18 , RAD_SYSCALL_GETCWD = 19 ,
  RAD_SYSCALL_BRK = 20 , RAD_SYSCALL_PIPE = 21 , RAD_SYSCALL_FCNTL = 22 , RAD_SYSCALL_ACCESS = 23 ,
  RAD_SYSCALL_ISATTY = 24 , RAD_SYSCALL_SOCKET = 25 , RAD_SYSCALL_BIND = 26 , RAD_SYSCALL_CONNECT = 27 ,
  RAD_SYSCALL_LISTEN = 28 , RAD_SYSCALL_ACCEPT = 29 , RAD_SYSCALL_SENDTO = 30 , RAD_SYSCALL_RECVFROM = 31 ,
  RAD_SYSCALL_SHUTDOWN = 32 , RAD_SYSCALL_SETSOCKOPT = 33 , RAD_SYSCALL_GETSOCKOPT = 34 , RAD_SYSCALL_MMAP = 35 ,
  RAD_SYSCALL_MUNMAP = 36 , RAD_SYSCALL_SHM_OPEN = 37 , RAD_SYSCALL_SHM_UNLINK = 38 , RAD_SYSCALL_POLL = 39 ,
  RAD_SYSCALL_SETTIMEOFDAY = 40 , RAD_SYSCALL_GETDENTS = 1000 , RAD_SYSCALL_REMOVE = 1001 , RAD_SYSCALL_MKDIR = 1002 ,
  RAD_SYSCALL_RMDIR = 1003 , RAD_SYSCALL_RENAME = 1004 , RAD_SYSCALL_TRUNCATE = 1005 , RAD_SYSCALL_LOG_READ = 1006 ,
  RAD_SYSCALL_LOG_FLUSH = 1007 , RAD_SYSCALL_GETUID = 1008 , RAD_SYSCALL_GETEUID = 1009 , RAD_SYSCALL_GETGID = 1010 ,
  RAD_SYSCALL_GETEGID = 1011 , RAD_SYSCALL_SETUID = 1012 , RAD_SYSCALL_SETGID = 1013 , RAD_SYSCALL_CHMOD = 1014 ,
  RAD_SYSCALL_LINK = 1015 , RAD_SYSCALL_SYMLINK = 1016 , RAD_SYSCALL_READLINK = 1017 , RAD_SYSCALL_FSYNC = 1018 ,
  RAD_SYSCALL_KILL = 1019 , RAD_SYSCALL_FCHDIR = 1020 , RAD_SYSCALL_FTRUNCATE = 1021 , RAD_SYSCALL_UTIME = 1022 ,
  RAD_SYSCALL_GETPGID = 1023 , RAD_SYSCALL_SETPGID = 1024 , RAD_SYSCALL_GETSID = 1025 , RAD_SYSCALL_SETSID = 1026 ,
  RAD_SYSCALL_TCGETPGRP = 1027 , RAD_SYSCALL_TCSETPGRP = 1028 , RAD_SYSCALL_PIPE2 = 1029
}
 Public enumeration for rad_posix_syscall. More...
 
enum  rad_process_state { RAD_PROCESS_RUNNING = 1 , RAD_PROCESS_WAITING = 2 , RAD_PROCESS_ZOMBIE = 3 }
 Public enumeration for rad_process_state. More...
 
enum  rad_vfs_open_flags {
  RAD_VFS_READ = 1u << 0 , RAD_VFS_WRITE = 1u << 1 , RAD_VFS_CREATE = 1u << 2 , RAD_VFS_TRUNCATE = 1u << 3 ,
  RAD_VFS_APPEND = 1u << 4 , RAD_VFS_DIRECTORY = 1u << 5
}
 Public enumeration for rad_vfs_open_flags. More...
 
enum  rad_seek_origin { RAD_SEEK_SET = 0 , RAD_SEEK_CUR = 1 , RAD_SEEK_END = 2 }
 Public enumeration for rad_seek_origin. More...
 
enum  rad_device_type {
  RAD_DEVICE_GENERIC = 0 , RAD_DEVICE_I2C = 1 , RAD_DEVICE_SPI = 2 , RAD_DEVICE_AUDIO = 3 ,
  RAD_DEVICE_SERIAL = 4 , RAD_DEVICE_FRAMEBUFFER = 5 , RAD_DEVICE_TTY = 6 , RAD_DEVICE_PTY = 7 ,
  RAD_DEVICE_INPUT = 8 , RAD_DEVICE_BLOCK = 9 , RAD_DEVICE_NETWORK = 10 , RAD_DEVICE_COMPOSITOR = 11 ,
  RAD_DEVICE_USB = 12
}
 Public enumeration for rad_device_type. More...
 
enum  rad_usb_controller_type { RAD_USB_CONTROLLER_UNKNOWN = 0 , RAD_USB_CONTROLLER_DWC_OTG = 1 }
 Public enumeration for rad_usb_controller_type. More...
 
enum  rad_usb_device_class { RAD_USB_CLASS_UNKNOWN = 0 , RAD_USB_CLASS_HID_KEYBOARD = 1 , RAD_USB_CLASS_HID_MOUSE = 2 , RAD_USB_CLASS_MASS_STORAGE = 3 }
 Public enumeration for rad_usb_device_class. More...
 
enum  rad_input_event_type {
  RAD_INPUT_EVENT_NONE = 0 , RAD_INPUT_EVENT_KEY = 1 , RAD_INPUT_EVENT_POINTER_MOTION = 2 , RAD_INPUT_EVENT_POINTER_BUTTON = 3 ,
  RAD_INPUT_EVENT_POINTER_SCROLL = 4
}
 Public enumeration for rad_input_event_type. More...
 
enum  rad_input_key {
  RAD_INPUT_KEY_UNKNOWN = 0 , RAD_INPUT_KEY_ESCAPE = 1 , RAD_INPUT_KEY_ENTER = 2 , RAD_INPUT_KEY_BACKSPACE = 3 ,
  RAD_INPUT_KEY_TAB = 4 , RAD_INPUT_KEY_UP = 5 , RAD_INPUT_KEY_DOWN = 6 , RAD_INPUT_KEY_LEFT = 7 ,
  RAD_INPUT_KEY_RIGHT = 8 , RAD_INPUT_KEY_HOME = 9 , RAD_INPUT_KEY_END = 10 , RAD_INPUT_KEY_PAGE_UP = 11 ,
  RAD_INPUT_KEY_PAGE_DOWN = 12 , RAD_INPUT_KEY_INSERT = 13 , RAD_INPUT_KEY_DELETE = 14 , RAD_INPUT_KEY_LEFT_SHIFT = 15 ,
  RAD_INPUT_KEY_RIGHT_SHIFT = 16 , RAD_INPUT_KEY_LEFT_CTRL = 17 , RAD_INPUT_KEY_RIGHT_CTRL = 18 , RAD_INPUT_KEY_LEFT_ALT = 19 ,
  RAD_INPUT_KEY_RIGHT_ALT = 20 , RAD_INPUT_KEY_CAPS_LOCK = 21
}
 Public enumeration for rad_input_key. More...
 
enum  rad_input_modifier_flags {
  RAD_INPUT_MOD_SHIFT = 1u << 0 , RAD_INPUT_MOD_CTRL = 1u << 1 , RAD_INPUT_MOD_ALT = 1u << 2 , RAD_INPUT_MOD_META = 1u << 3 ,
  RAD_INPUT_MOD_CAPS_LOCK = 1u << 4
}
 Public enumeration for rad_input_modifier_flags. More...
 
enum  rad_input_pointer_button_flags { RAD_INPUT_POINTER_BUTTON_LEFT = 1u << 0 , RAD_INPUT_POINTER_BUTTON_RIGHT = 1u << 1 , RAD_INPUT_POINTER_BUTTON_MIDDLE = 1u << 2 }
 Public enumeration for rad_input_pointer_button_flags. More...
 
enum  rad_pixel_format { RAD_PIXEL_FORMAT_RGB565 = 1 , RAD_PIXEL_FORMAT_XRGB8888 = 2 }
 Public enumeration for rad_pixel_format. More...
 
enum  rad_sd_mode { RAD_SD_MODE_AUTO = 0 , RAD_SD_MODE_SPI = 1 , RAD_SD_MODE_PIO_SDIO = 2 }
 Public enumeration for rad_sd_mode. More...
 
enum  rad_spi_transfer_mode { RAD_SPI_TRANSFER_MODE_AUTO = 0 , RAD_SPI_TRANSFER_MODE_PIO = 1 , RAD_SPI_TRANSFER_MODE_DMA = 2 }
 Public enumeration for rad_spi_transfer_mode. More...
 
enum  rad_dma_transfer_type { RAD_DMA_MEMORY_TO_MEMORY = 0 , RAD_DMA_MEMORY_TO_DEVICE = 1 , RAD_DMA_DEVICE_TO_MEMORY = 2 }
 Public enumeration for rad_dma_transfer_type. More...
 
enum  rad_dma_request_id {
  RAD_DMA_DREQ_NONE = 0 , RAD_DMA_DREQ_SPI0_TX = 1 , RAD_DMA_DREQ_SPI0_RX = 2 , RAD_DMA_DREQ_SPI1_TX = 3 ,
  RAD_DMA_DREQ_SPI1_RX = 4 , RAD_DMA_DREQ_RP2350_HSTX_TX = 5
}
 Public enumeration for rad_dma_request_id. More...
 
enum  rad_display_output_type {
  RAD_DISPLAY_OUTPUT_MEMORY = 0 , RAD_DISPLAY_OUTPUT_CIRCLE = 1 , RAD_DISPLAY_OUTPUT_GRUB = 2 , RAD_DISPLAY_OUTPUT_RP2350_HSTX = 3 ,
  RAD_DISPLAY_OUTPUT_SPI_PANEL = 4 , RAD_DISPLAY_OUTPUT_BCM283X_MAILBOX = 5
}
 Public enumeration for rad_display_output_type. More...
 
enum  rad_tty_mode_flags { RAD_TTY_MODE_CANONICAL = 1u << 0 , RAD_TTY_MODE_ECHO = 1u << 1 , RAD_TTY_MODE_CRLF = 1u << 2 }
 Public enumeration for rad_tty_mode_flags. More...
 
enum  rad_irq_trigger {
  RAD_IRQ_TRIGGER_NONE = 0 , RAD_IRQ_TRIGGER_EDGE_RISING = 1u << 0 , RAD_IRQ_TRIGGER_EDGE_FALLING = 1u << 1 , RAD_IRQ_TRIGGER_LEVEL_HIGH = 1u << 2 ,
  RAD_IRQ_TRIGGER_LEVEL_LOW = 1u << 3
}
 Public enumeration for rad_irq_trigger. More...
 
enum  rad_task_state {
  RAD_TASK_NEW = 0 , RAD_TASK_READY = 1 , RAD_TASK_RUNNING = 2 , RAD_TASK_SLEEPING = 3 ,
  RAD_TASK_BLOCKED = 4 , RAD_TASK_FINISHED = 5 , RAD_TASK_DETACHED = 6
}
 Public enumeration for rad_task_state. More...
 
enum  rad_scheduler_mode { RAD_SCHEDULER_COOPERATIVE = 0 , RAD_SCHEDULER_PREEMPTIVE = 1 }
 Public enumeration for rad_scheduler_mode. More...
 
enum  rad_tree_property_type {
  RAD_TREE_PROP_BOOL = 1 , RAD_TREE_PROP_U32 = 2 , RAD_TREE_PROP_STRING = 3 , RAD_TREE_PROP_U32_ARRAY = 4 ,
  RAD_TREE_PROP_STRING_ARRAY = 5
}
 Public enumeration for rad_tree_property_type. More...
 
enum  rad_tcp_state {
  RAD_TCP_CLOSED = 0 , RAD_TCP_LISTEN = 1 , RAD_TCP_SYN_SENT = 2 , RAD_TCP_SYN_RECEIVED = 3 ,
  RAD_TCP_ESTABLISHED = 4 , RAD_TCP_FIN_WAIT = 5 , RAD_TCP_CLOSE_WAIT = 6 , RAD_TCP_LAST_ACK = 7 ,
  RAD_TCP_TIME_WAIT = 8
}
 Public enumeration for rad_tcp_state. More...
 
enum  rad_program_state { RAD_PROGRAM_LOADED = 0 , RAD_PROGRAM_RUNNING = 1 , RAD_PROGRAM_FINISHED = 2 , RAD_PROGRAM_FAILED = 3 }
 Public enumeration for rad_program_state. More...
 
enum  rad_module_state { RAD_MODULE_REGISTERED = 1 , RAD_MODULE_INITIALIZED = 2 , RAD_MODULE_FAILED = 3 , RAD_MODULE_EXITED = 4 }
 Public enumeration for rad_module_state. More...
 
enum  rad_service_state {
  RAD_SERVICE_REGISTERED = 1 , RAD_SERVICE_CONFIGURED = 2 , RAD_SERVICE_RUNNING = 3 , RAD_SERVICE_FAILED = 4 ,
  RAD_SERVICE_STOPPED = 5
}
 Public enumeration for rad_service_state. More...
 

Functions

rad_status_t rad_kernel_init (const rad_kernel_config_t *config)
 Public RADPx-OS kernel API entry point.
 
void rad_kernel_shutdown (void)
 Public RADPx-OS kernel API entry point.
 
int rad_kernel_is_initialized (void)
 Public RADPx-OS kernel API entry point.
 
const char * rad_kernel_backend_name (void)
 Return the active backend name string.
 
const char * rad_kernel_version_string (void)
 Return the kernel version string.
 
rad_status_t rad_kernel_poll (void)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_kernel_run (void)
 Public RADPx-OS kernel API entry point.
 
void rad_kernel_request_shutdown (void)
 Public RADPx-OS kernel API entry point.
 
int rad_kernel_is_shutdown_requested (void)
 Public RADPx-OS kernel API entry point.
 
int rad_vprintk (const char *format, va_list args)
 Public RADPx-OS kernel API entry point.
 
int rad_printk (const char *format,...)
 Public RADPx-OS kernel API entry point.
 
int rad_vkprintk (rad_kernel_print_level_t level, const char *format, va_list args)
 Public RADPx-OS kernel API entry point.
 
int rad_kprintk (rad_kernel_print_level_t level, const char *format,...)
 Public RADPx-OS kernel API entry point.
 
int rad_early_vprintk (const char *format, va_list args)
 Public RADPx-OS kernel API entry point.
 
int rad_early_printk (const char *format,...)
 Public RADPx-OS kernel API entry point.
 
void rad_debug_marker (const char *marker)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_log_write (rad_log_level_t level, const char *category, const char *message)
 Public RADPx-OS kernel API entry point.
 
size_t rad_log_read (rad_log_entry_t *entries, size_t capacity, uint64_t after_sequence)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_log_flush_to_path (const char *path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_cpu_interrupts_enable (void)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_cpu_interrupts_disable (void)
 Public RADPx-OS kernel API entry point.
 
int rad_cpu_interrupts_enabled (void)
 Public RADPx-OS kernel API entry point.
 
void rad_cpu_idle (void)
 Public RADPx-OS kernel API entry point.
 
void rad_cpu_halt_forever (void)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_boot_info_set (const rad_boot_info_t *boot_info)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_boot_info_get (rad_boot_info_t *boot_info)
 Public RADPx-OS kernel API entry point.
 
const char * rad_boot_arg_get (const char *key)
 Return a boot argument value by key, or nullptr when absent.
 
uint64_t rad_time_micros (void)
 Public RADPx-OS kernel API entry point.
 
uint64_t rad_time_millis (void)
 Public RADPx-OS kernel API entry point.
 
uint64_t rad_realtime_micros (void)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_realtime_set_micros (uint64_t unix_micros)
 Public RADPx-OS kernel API entry point.
 
void rad_sleep_ms (uint32_t milliseconds)
 Public RADPx-OS kernel API entry point.
 
void rad_sleep_us (uint32_t microseconds)
 Public RADPx-OS kernel API entry point.
 
uint64_t rad_perf_now_cycles (void)
 Public RADPx-OS kernel API entry point.
 
void rad_perf_counter_add (const char *name, uint64_t delta)
 Public RADPx-OS kernel API entry point.
 
size_t rad_perf_counter_list (rad_perf_counter_info_t *counters, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_work_submit (const char *name, rad_work_handler_t handler, void *context)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_work_poll (size_t budget, size_t *ran)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_wait_queue_create (rad_wait_queue_t *queue)
 Public RADPx-OS kernel API entry point.
 
void rad_wait_queue_destroy (rad_wait_queue_t queue)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_wait_queue_wait (rad_wait_queue_t queue, uint32_t timeout_ms)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_wait_queue_wake_one (rad_wait_queue_t queue)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_wait_queue_wake_all (rad_wait_queue_t queue)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_timer_source_register (const rad_timer_source_config_t *config, const rad_timer_source_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_timer_source_unregister (const char *name)
 Public RADPx-OS kernel API entry point.
 
void rad_timer_tick (uint64_t elapsed_micros)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_timer_schedule_oneshot (uint64_t delay_micros)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_timer_cancel_oneshot (void)
 Public RADPx-OS kernel API entry point.
 
size_t rad_timer_list (rad_timer_source_info_t *timers, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_task_create (rad_task_t *task, const char *name, rad_task_entry_t entry, void *context, size_t stack_size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_task_create_config (rad_task_t *task, const rad_task_config_t *config, rad_task_entry_t entry, void *context)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_task_join (rad_task_t task)
 Public RADPx-OS kernel API entry point.
 
void rad_task_detach (rad_task_t task)
 Public RADPx-OS kernel API entry point.
 
uint64_t rad_task_current_id (void)
 Public RADPx-OS kernel API entry point.
 
int rad_task_current_core (void)
 Public RADPx-OS kernel API entry point.
 
void rad_task_yield (void)
 Public RADPx-OS kernel API entry point.
 
void rad_task_sleep_ms (uint32_t milliseconds)
 Public RADPx-OS kernel API entry point.
 
void rad_task_sleep_us (uint32_t microseconds)
 Public RADPx-OS kernel API entry point.
 
size_t rad_task_list (rad_task_info_t *tasks, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_core_info_get (rad_core_info_t *info)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_scheduler_info_get (rad_scheduler_info_t *info)
 Public RADPx-OS kernel API entry point.
 
void rad_scheduler_yield_from_irq (void)
 Public RADPx-OS kernel API entry point.
 
void rad_scheduler_set_preemption_enabled (int enabled)
 Public RADPx-OS kernel API entry point.
 
uint32_t rad_scheduler_current_core (void)
 Public RADPx-OS kernel API entry point.
 
uint32_t rad_scheduler_online_core_mask (void)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_mutex_create (rad_mutex_t *mutex)
 Public RADPx-OS kernel API entry point.
 
void rad_mutex_destroy (rad_mutex_t mutex)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_mutex_lock (rad_mutex_t mutex)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_mutex_unlock (rad_mutex_t mutex)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_event_create (rad_event_t *event, int initially_signaled)
 Public RADPx-OS kernel API entry point.
 
void rad_event_destroy (rad_event_t event)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_event_wait (rad_event_t event, uint32_t timeout_ms)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_event_signal (rad_event_t event)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_event_reset (rad_event_t event)
 Public RADPx-OS kernel API entry point.
 
void * rad_memory_alloc (size_t size)
 Allocate kernel-managed memory.
 
void rad_memory_free (void *pointer)
 Public RADPx-OS kernel API entry point.
 
void rad_memory_get_stats (rad_memory_stats_t *stats)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_mount_host (const char *mount_point, const char *host_path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_mount_sd (const rad_sd_config_t *config)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_mount_provider (const char *mount_point, const rad_vfs_backend_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_unmount (const char *mount_point)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_open (const char *path, uint32_t flags, rad_file_t *file)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_read (rad_file_t file, void *buffer, size_t size, size_t *bytes_read)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_write (rad_file_t file, const void *buffer, size_t size, size_t *bytes_written)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_seek (rad_file_t file, int64_t offset, rad_seek_origin_t origin)
 Public RADPx-OS kernel API entry point.
 
uint64_t rad_vfs_tell (rad_file_t file)
 Public RADPx-OS kernel API entry point.
 
void rad_vfs_close (rad_file_t file)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_stat (const char *path, rad_vfs_stat_t *stat)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_list (const char *path, rad_vfs_list_callback_t callback, void *context)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_mkdir (const char *path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_remove (const char *path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_rename (const char *old_path, const char *new_path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_rmdir (const char *path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_fsync (rad_file_t file)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_truncate (const char *path, uint64_t size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_readlink (const char *path, char *buffer, size_t size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_symlink (const char *target, const char *link_path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_link (const char *old_path, const char *new_path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_chmod (const char *path, uint32_t mode)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_chdir (const char *path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_getcwd (char *buffer, size_t size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_opendir (const char *path, rad_dir_t *dir)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_vfs_readdir (rad_dir_t dir, rad_vfs_dirent_t *entry)
 Public RADPx-OS kernel API entry point.
 
void rad_vfs_closedir (rad_dir_t dir)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_current_pid (void)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_parent_pid (void)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_fork (void)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_execve (const char *path, const char *const argv[])
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_waitpid (int32_t pid, int32_t *status, uint32_t options)
 Public RADPx-OS kernel API entry point.
 
void rad_process_exit (int32_t status)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_kill (int32_t pid, int32_t signal_number)
 Public RADPx-OS kernel API entry point.
 
size_t rad_process_list (rad_process_info_t *processes, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_create (const char *path, int32_t parent_pid)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_process_attach_task (int32_t pid, rad_task_t task)
 Public RADPx-OS kernel API entry point.
 
void rad_process_set_current_pid (int32_t pid)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_process_mark_exec (int32_t pid, const char *path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_process_clone_fds (int32_t parent_pid, int32_t child_pid)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_process_arch_register (const rad_process_arch_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_fork_from_arch_frame (void *trap_frame)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_reap (int32_t pid, int32_t *status)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_process_get_credentials (int32_t pid, rad_credentials_t *credentials)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_process_set_credentials (int32_t pid, const rad_credentials_t *credentials)
 Public RADPx-OS kernel API entry point.
 
rad_uid_t rad_process_getuid (void)
 Public RADPx-OS kernel API entry point.
 
rad_uid_t rad_process_geteuid (void)
 Public RADPx-OS kernel API entry point.
 
rad_gid_t rad_process_getgid (void)
 Public RADPx-OS kernel API entry point.
 
rad_gid_t rad_process_getegid (void)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_process_setuid (rad_uid_t uid)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_process_setgid (rad_gid_t gid)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_getpgid (int32_t pid)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_setpgid (int32_t pid, int32_t pgid)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_getsid (int32_t pid)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_setsid (void)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_tcgetpgrp (int32_t fd)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_process_tcsetpgrp (int32_t fd, int32_t pgid)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_module_register (const rad_module_descriptor_t *descriptor)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_module_unregister (const char *name)
 Public RADPx-OS kernel API entry point.
 
size_t rad_module_list (rad_module_info_t *modules, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_service_register (const rad_service_descriptor_t *descriptor)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_service_unregister (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_service_configure (const char *name, const rad_service_config_t *config)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_service_configure_tree (rad_tree_node_t node)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_service_start (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_service_stop (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_service_poll_all (void)
 Public RADPx-OS kernel API entry point.
 
size_t rad_service_list (rad_service_info_t *services, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_register (uint32_t irq, const char *name, rad_irq_handler_t handler, void *context)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_unregister (uint32_t irq)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_enable (uint32_t irq)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_disable (uint32_t irq)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_dispatch (uint32_t irq)
 Public RADPx-OS kernel API entry point.
 
size_t rad_irq_list (rad_irq_info_t *irqs, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_domain_register (const rad_irq_domain_config_t *config, rad_irq_domain_t *domain)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_domain_unregister (const char *tree_path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_domain_find (const char *tree_path, rad_irq_domain_t *domain)
 Public RADPx-OS kernel API entry point.
 
size_t rad_irq_resolve_tree (rad_tree_node_t node, rad_irq_resource_t *resources, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_resource_enable (const rad_irq_resource_t *resource)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_resource_disable (const rad_irq_resource_t *resource)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_irq_resource_register_handler (const rad_irq_resource_t *resource, const char *name, rad_irq_handler_t handler, void *context)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_open (const char *path, uint32_t flags)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_close (int32_t fd)
 Public RADPx-OS kernel API entry point.
 
intptr_t rad_fd_read (int32_t fd, void *buffer, size_t size)
 Public RADPx-OS kernel API entry point.
 
intptr_t rad_fd_write (int32_t fd, const void *buffer, size_t size)
 Public RADPx-OS kernel API entry point.
 
int64_t rad_fd_lseek (int32_t fd, int64_t offset, rad_seek_origin_t origin)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_ioctl (int32_t fd, uint32_t request, void *argument)
 Public RADPx-OS kernel API entry point.
 
intptr_t rad_fd_getdents (int32_t fd, rad_dirent_user_t *entries, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_stat (const char *path, rad_vfs_stat_t *stat)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_fstat (int32_t fd, rad_vfs_stat_t *stat)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_fchdir (int32_t fd)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_ftruncate (int32_t fd, uint64_t size)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_dup (int32_t fd)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_dup2 (int32_t old_fd, int32_t new_fd)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_fcntl (int32_t fd, uint32_t command, uintptr_t argument)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_fd_poll (rad_pollfd_t *fds, size_t count, int32_t timeout_ms)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_pipe_create (int32_t pipefd[2])
 Public RADPx-OS kernel API entry point.
 
int32_t rad_shm_open (const char *name, size_t byte_size, uint32_t flags)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_shm_unlink (const char *name)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_shm_get_info (int32_t fd, rad_shm_info_t *info)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_shm_set_page (int32_t fd, size_t page_index, uintptr_t page_token)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_shm_get_page (int32_t fd, size_t page_index, uintptr_t *page_token)
 Public RADPx-OS kernel API entry point.
 
void * rad_shm_kernel_pointer (int32_t fd)
 Public RADPx-OS kernel API entry point.
 
intptr_t rad_syscall_dispatch (uintptr_t number, uintptr_t arg0, uintptr_t arg1, uintptr_t arg2, uintptr_t arg3, uintptr_t arg4, uintptr_t arg5)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_program_load (const char *path, rad_program_t *program)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_program_spawn (rad_program_t program, int argc, const char **argv, rad_task_t *task)
 Public RADPx-OS kernel API entry point.
 
void rad_program_unload (rad_program_t program)
 Public RADPx-OS kernel API entry point.
 
size_t rad_program_list (rad_program_info_t *programs, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_overlay_load_memory (const void *data, size_t size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_overlay_load_file (const char *path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_overlay_apply_boot (void)
 Public RADPx-OS kernel API entry point.
 
size_t rad_overlay_list (rad_overlay_info_t *overlays, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
size_t rad_tree_list (rad_tree_node_info_t *nodes, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_tree_node_t rad_tree_find (const char *path)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tree_get_property_u32 (rad_tree_node_t node, const char *name, uint32_t *value)
 Public RADPx-OS kernel API entry point.
 
size_t rad_tree_get_property_u32_array (rad_tree_node_t node, const char *name, uint32_t *values, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tree_get_property_bool (rad_tree_node_t node, const char *name, int *value)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tree_get_property_string (rad_tree_node_t node, const char *name, char *buffer, size_t size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_device_register (const char *name, rad_device_type_t type, const rad_device_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_device_unregister (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_device_open (const char *name, rad_device_t *device)
 Public RADPx-OS kernel API entry point.
 
void rad_device_close (rad_device_t device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_device_read (rad_device_t device, void *buffer, size_t size, size_t *bytes_read)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_device_write (rad_device_t device, const void *buffer, size_t size, size_t *bytes_written)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_device_ioctl (rad_device_t device, uint32_t request, void *argument)
 Public RADPx-OS kernel API entry point.
 
size_t rad_device_list (char names[][64], rad_device_type_t *types, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_input_device_register (const char *name, const rad_device_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_input_device_unregister (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_input_open (const char *name, rad_device_t *device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_input_read_event (rad_device_t device, rad_input_event_t *event)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_input_queue_create (const char *name, size_t capacity, rad_input_queue_t *queue)
 Public RADPx-OS kernel API entry point.
 
void rad_input_queue_destroy (rad_input_queue_t queue)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_input_queue_push (rad_input_queue_t queue, const rad_input_event_t *event)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_input_queue_read (rad_input_queue_t queue, rad_input_event_t *events, size_t capacity, uint32_t timeout_ms, size_t *count)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_input_device_register_queue (const char *name, rad_input_queue_t queue)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_block_device_register (const char *name, const rad_device_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_block_open (const char *name, rad_device_t *device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_block_info (rad_device_t device, rad_block_info_t *info)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_block_read (rad_device_t device, uint64_t sector, uint32_t sector_count, void *buffer)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_block_write (rad_device_t device, uint64_t sector, uint32_t sector_count, const void *buffer)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_block_flush (rad_device_t device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_net_device_register (const char *name, const rad_device_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_net_open (const char *name, rad_device_t *device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_net_link_info (rad_device_t device, rad_net_link_info_t *info)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_net_send (rad_device_t device, const void *data, size_t length)
 Public RADPx-OS kernel API entry point.
 
intptr_t rad_net_receive (rad_device_t device, void *data, size_t length)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_net_poll (rad_device_t device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_net_stack_info (rad_net_stack_info_t *info)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_net_configure (const rad_net_stack_config_t *config)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_net_ntp_status (rad_ntp_status_t *status)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_net_ntp_query (rad_ntp_query_t *query)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_socket_create (int domain, int type, int protocol)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_socket_bind (int32_t fd, const rad_sockaddr_in_t *address, size_t address_length)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_socket_listen (int32_t fd, int backlog)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_socket_accept (int32_t fd, rad_sockaddr_in_t *address, size_t *address_length)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_socket_connect (int32_t fd, const rad_sockaddr_in_t *address, size_t address_length)
 Public RADPx-OS kernel API entry point.
 
intptr_t rad_socket_sendto (int32_t fd, const void *buffer, size_t size, uint32_t flags, const rad_sockaddr_in_t *address, size_t address_length)
 Public RADPx-OS kernel API entry point.
 
intptr_t rad_socket_recvfrom (int32_t fd, void *buffer, size_t size, uint32_t flags, rad_sockaddr_in_t *address, size_t *address_length)
 Public RADPx-OS kernel API entry point.
 
intptr_t rad_socket_send (int32_t fd, const void *buffer, size_t size, uint32_t flags)
 Public RADPx-OS kernel API entry point.
 
intptr_t rad_socket_recv (int32_t fd, void *buffer, size_t size, uint32_t flags)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_socket_shutdown (int32_t fd, int how)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_socket_get_info (int32_t fd, rad_socket_info_t *info)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_socket_setsockopt (int32_t fd, int level, int option, const void *value, size_t value_length)
 Public RADPx-OS kernel API entry point.
 
int32_t rad_socket_getsockopt (int32_t fd, int level, int option, void *value, size_t *value_length)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_register (const char *name, const rad_framebuffer_info_t *info, const rad_framebuffer_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_register_ex (const rad_framebuffer_config_t *config, const rad_framebuffer_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_unregister (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_open (const char *name, rad_framebuffer_t *framebuffer)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_open_primary (rad_framebuffer_t *framebuffer)
 Public RADPx-OS kernel API entry point.
 
void rad_framebuffer_close (rad_framebuffer_t framebuffer)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_get_info (rad_framebuffer_t framebuffer, rad_framebuffer_info_t *info)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_get_display_info (rad_framebuffer_t framebuffer, rad_framebuffer_display_info_t *info)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_set_primary (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_set_mode (rad_framebuffer_t framebuffer, uint32_t mode_index)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_blank (rad_framebuffer_t framebuffer, int blanked)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_get_vsync_counter (rad_framebuffer_t framebuffer, uint64_t *counter)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_clear (rad_framebuffer_t framebuffer, uint32_t color)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_draw_text (rad_framebuffer_t framebuffer, uint32_t cell_x, uint32_t cell_y, const char *text, uint32_t foreground, uint32_t background)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_flush (rad_framebuffer_t framebuffer, const rad_framebuffer_rect_t *rect)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_framebuffer_present (rad_framebuffer_t framebuffer, const rad_framebuffer_present_t *present)
 Public RADPx-OS kernel API entry point.
 
size_t rad_framebuffer_list (rad_framebuffer_info_t *framebuffers, char names[][64], size_t capacity)
 Public RADPx-OS kernel API entry point.
 
size_t rad_framebuffer_list_ex (rad_framebuffer_display_info_t *framebuffers, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_controller_register (const rad_i2c_controller_config_t *config, const rad_i2c_controller_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_controller_unregister (uint32_t bus_id)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_bus_open (uint32_t bus_id, rad_i2c_bus_t *bus)
 Public RADPx-OS kernel API entry point.
 
void rad_i2c_bus_close (rad_i2c_bus_t bus)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_transfer (rad_i2c_bus_t bus, const rad_i2c_transfer_t *transfer)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_bind_tree (void)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_driver_register (const rad_i2c_driver_t *driver)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_driver_unregister (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_device_open (uint32_t bus_id, uint8_t address, rad_i2c_device_t **device)
 Public RADPx-OS kernel API entry point.
 
void rad_i2c_device_close (rad_i2c_device_t *device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_device_transfer (rad_i2c_device_t *device, const rad_i2c_transfer_t *transfer)
 Public RADPx-OS kernel API entry point.
 
size_t rad_i2c_device_irq_count (const rad_i2c_device_t *device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_device_get_irq (const rad_i2c_device_t *device, size_t index, rad_irq_resource_t *resource)
 Public RADPx-OS kernel API entry point.
 
size_t rad_i2c_list_devices (rad_i2c_device_info_t *devices, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_i2c_transfer_device (rad_device_t device, const rad_i2c_transfer_t *transfer)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_controller_register (const rad_spi_controller_config_t *config, const rad_spi_controller_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_controller_unregister (uint32_t bus_id)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_bus_open (uint32_t bus_id, rad_spi_bus_t *bus)
 Public RADPx-OS kernel API entry point.
 
void rad_spi_bus_close (rad_spi_bus_t bus)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_transfer (rad_spi_bus_t bus, const rad_spi_transfer_t *transfer)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_driver_register (const rad_spi_driver_t *driver)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_driver_unregister (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_device_open (uint32_t bus_id, uint8_t cs, rad_spi_device_t **device)
 Public RADPx-OS kernel API entry point.
 
void rad_spi_device_close (rad_spi_device_t *device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_device_transfer (rad_spi_device_t *device, const rad_spi_transfer_t *transfer)
 Public RADPx-OS kernel API entry point.
 
size_t rad_spi_device_irq_count (const rad_spi_device_t *device)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_device_get_irq (const rad_spi_device_t *device, size_t index, rad_irq_resource_t *resource)
 Public RADPx-OS kernel API entry point.
 
size_t rad_spi_list_devices (rad_spi_device_info_t *devices, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_spi_transfer_device (rad_device_t device, const rad_spi_transfer_t *transfer)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_dma_controller_register (const rad_dma_controller_config_t *config, const rad_dma_backend_ops_t *ops)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_dma_controller_unregister (const char *name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_dma_channel_request (rad_dma_request_id_t request_id, rad_dma_channel_t *channel)
 Public RADPx-OS kernel API entry point.
 
void rad_dma_channel_release (rad_dma_channel_t channel)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_dma_submit (rad_dma_channel_t channel, const rad_dma_transfer_t *transfer)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_dma_wait (rad_dma_channel_t channel, uint32_t timeout_ms)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_dma_cancel (rad_dma_channel_t channel)
 Public RADPx-OS kernel API entry point.
 
size_t rad_dma_list_channels (rad_dma_channel_info_t *channels, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
size_t rad_driver_list (rad_driver_info_t *drivers, size_t capacity)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_audio_configure (rad_device_t device, const rad_audio_format_t *format)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_serial_configure (rad_device_t device, const rad_serial_config_t *config)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_open (const char *name, rad_tty_t *tty)
 Public RADPx-OS kernel API entry point.
 
void rad_tty_close (rad_tty_t tty)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_read (rad_tty_t tty, void *buffer, size_t size, size_t *bytes_read)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_write (rad_tty_t tty, const void *buffer, size_t size, size_t *bytes_written)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_push_input (rad_tty_t tty, const void *buffer, size_t size, size_t *bytes_consumed)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_set_output_callback (rad_tty_t tty, rad_tty_output_t output, void *context)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_set_window_size (rad_tty_t tty, const rad_tty_window_size_t *size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_get_window_size (rad_tty_t tty, rad_tty_window_size_t *size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_set_mode (rad_tty_t tty, uint32_t mode)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_get_mode (rad_tty_t tty, uint32_t *mode)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_set_termios (rad_tty_t tty, const rad_tty_termios_t *termios)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_get_termios (rad_tty_t tty, rad_tty_termios_t *termios)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_tty_flush (rad_tty_t tty, uint32_t queues)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_pty_open_pair (const char *name, rad_pty_t *pty)
 Public RADPx-OS kernel API entry point.
 
void rad_pty_close (rad_pty_t pty)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_pty_read_master (rad_pty_t pty, void *buffer, size_t size, size_t *bytes_read)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_pty_write_master (rad_pty_t pty, const void *buffer, size_t size, size_t *bytes_written)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_pty_read_slave (rad_pty_t pty, void *buffer, size_t size, size_t *bytes_read)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_pty_write_slave (rad_pty_t pty, const void *buffer, size_t size, size_t *bytes_written)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_pty_resize (rad_pty_t pty, const rad_tty_window_size_t *size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_pty_slave_name (rad_pty_t pty, char *buffer, size_t size)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_terminal_register_command (const char *name, const char *description, rad_terminal_handler_t handler, void *context)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_terminal_execute (const char *line, rad_terminal_write_t write, void *write_context)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_terminal_poll_tty (rad_tty_t tty)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_terminal_attach_device (const char *device_name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_terminal_attach_tty (const char *serial_device_name, const char *tty_name)
 Public RADPx-OS kernel API entry point.
 
rad_status_t rad_terminal_poll_attached (void)
 Public RADPx-OS kernel API entry point.
 
void rad_terminal_repl_set (int enabled)
 Enable/disable the kernel debug REPL on the attached tty; disable while a user session owns it. Input pumping continues either way.
 
size_t rad_terminal_command_count (void)
 Public RADPx-OS kernel API entry point.
 

Detailed Description

Portable RADPx-OS kernel service ABI for RADLib and RADPx-OS targets.

RADKernel exposes a small POSIX-like service contract for bare-metal and simulator backends. The C ABI is the stable boundary; the C++ wrappers are convenience helpers for RADLib applications and examples.

Typedef Documentation

◆ rad_audio_format_t

Public data structure for rad_audio_format.

Public typedef alias.

◆ rad_block_info_t

Public data structure for rad_block_info.

Public typedef alias.

◆ rad_block_request_t

Public data structure for rad_block_request.

Public typedef alias.

◆ rad_boot_arg_t

typedef struct rad_boot_arg rad_boot_arg_t

Public data structure for rad_boot_arg.

Public typedef alias.

◆ rad_boot_handoff_t

Public data structure for rad_boot_handoff.

Public typedef alias.

◆ rad_boot_info_t

Public data structure for rad_boot_info.

Public typedef alias.

◆ rad_boot_memory_region_t

Public data structure for rad_boot_memory_region.

Public typedef alias.

◆ rad_compositor_ipc_damage_t

Public data structure for rad_compositor_ipc_damage.

Public typedef alias.

◆ rad_compositor_ipc_surface_t

Public data structure for rad_compositor_ipc_surface.

Public typedef alias.

◆ rad_core_info_t

Public data structure for rad_core_info.

Public typedef alias.

◆ rad_credentials_t

Public data structure for process credentials.

Public typedef alias.

◆ rad_device_ops_t

Public data structure for rad_device_ops.

Public typedef alias.

◆ rad_device_type_t

Public enumeration for rad_device_type.

Public typedef alias.

◆ rad_dirent_user_t

Public data structure for userspace directory enumeration.

Public typedef alias.

◆ rad_display_mode_t

Public data structure for rad_display_mode.

Public typedef alias.

◆ rad_display_output_type_t

Public enumeration for rad_display_output_type.

Public typedef alias.

◆ rad_dma_backend_ops_t

Public data structure for rad_dma_backend_ops.

Public typedef alias.

◆ rad_dma_channel_info_t

Public data structure for rad_dma_channel_info.

Public typedef alias.

◆ rad_dma_controller_config_t

Public data structure for rad_dma_controller_config.

Public typedef alias.

◆ rad_dma_request_id_t

Public enumeration for rad_dma_request_id.

Public typedef alias.

◆ rad_dma_transfer_t

Public data structure for rad_dma_transfer.

Public typedef alias.

◆ rad_dma_transfer_type_t

Public enumeration for rad_dma_transfer_type.

Public typedef alias.

◆ rad_driver_info_t

Public data structure for rad_driver_info.

Public typedef alias.

◆ rad_framebuffer_config_t

Public data structure for rad_framebuffer_config.

Public typedef alias.

◆ rad_framebuffer_display_info_t

Public data structure for rad_framebuffer_display_info.

Public typedef alias.

◆ rad_framebuffer_info_t

Public data structure for rad_framebuffer_info.

Public typedef alias.

◆ rad_framebuffer_ops_t

Public data structure for rad_framebuffer_ops.

Public typedef alias.

◆ rad_framebuffer_present_t

Public data structure for rad_framebuffer_present.

Public typedef alias.

◆ rad_framebuffer_rect_t

Public data structure for rad_framebuffer_rect.

Public typedef alias.

◆ rad_i2c_controller_config_t

Public data structure for rad_i2c_controller_config.

Public typedef alias.

◆ rad_i2c_controller_ops_t

Public data structure for rad_i2c_controller_ops.

Public typedef alias.

◆ rad_i2c_device_info_t

Public data structure for rad_i2c_device_info.

Public typedef alias.

◆ rad_i2c_driver_t

Public data structure for rad_i2c_driver.

Public typedef alias.

◆ rad_i2c_transfer_t

Public data structure for rad_i2c_transfer.

Public typedef alias.

◆ rad_input_event_t

Public data structure for rad_input_event.

Public typedef alias.

◆ rad_input_event_type_t

Public enumeration for rad_input_event_type.

Public typedef alias.

◆ rad_input_key_t

Public enumeration for rad_input_key.

Public typedef alias.

◆ rad_input_modifier_flags_t

Public enumeration for rad_input_modifier_flags.

Public typedef alias.

◆ rad_input_pointer_button_flags_t

Public enumeration for rad_input_pointer_button_flags.

Public typedef alias.

◆ rad_ipv4_address_t

Public data structure for rad_ipv4_address.

Public typedef alias.

◆ rad_irq_domain_config_t

Public data structure for rad_irq_domain_config.

Public typedef alias.

◆ rad_irq_info_t

typedef struct rad_irq_info rad_irq_info_t

Public data structure for rad_irq_info.

Public typedef alias.

◆ rad_irq_resource_t

Public data structure for rad_irq_resource.

Public typedef alias.

◆ rad_irq_trigger_t

Public enumeration for rad_irq_trigger.

Public typedef alias.

◆ rad_kernel_config_t

Public data structure for rad_kernel_config.

Public typedef alias.

◆ rad_kernel_print_level_t

Kernel-only printk severity.

Public typedef alias.

◆ rad_log_entry_t

Public data structure for rad_log_entry.

Public typedef alias.

◆ rad_log_level_t

Public enumeration for rad_log_level.

Public typedef alias.

◆ rad_mac_address_t

Public data structure for rad_mac_address.

Public typedef alias.

◆ rad_memory_stats_t

Public data structure for rad_memory_stats.

Public typedef alias.

◆ rad_module_descriptor_t

Public data structure for rad_module_descriptor.

Public typedef alias.

◆ rad_module_info_t

Public data structure for rad_module_info.

Public typedef alias.

◆ rad_module_state_t

Public enumeration for rad_module_state.

Public typedef alias.

◆ rad_net_link_info_t

Public data structure for rad_net_link_info.

Public typedef alias.

◆ rad_net_packet_t

Public data structure for rad_net_packet.

Public typedef alias.

◆ rad_net_stack_config_t

Public data structure for rad_net_stack_config.

Public typedef alias.

◆ rad_net_stack_info_t

Public data structure for rad_net_stack_info.

Public typedef alias.

◆ rad_ntp_query_t

Public data structure for rad_ntp_query.

Public typedef alias.

◆ rad_ntp_status_t

Public data structure for rad_ntp_status.

Public typedef alias.

◆ rad_overlay_info_t

Public data structure for rad_overlay_info.

Public typedef alias.

◆ rad_perf_counter_info_t

Public data structure for rad_perf_counter_info.

Public typedef alias.

◆ rad_pixel_format_t

Public enumeration for rad_pixel_format.

Public typedef alias.

◆ rad_pollfd_t

typedef struct rad_pollfd rad_pollfd_t

POSIX-style poll descriptor used by RADPx-OS userland.

Public typedef alias.

◆ rad_posix_syscall_t

Public enumeration for rad_posix_syscall.

Public typedef alias.

◆ rad_posix_timeval_t

Public data structure for rad_posix_timeval.

Public typedef alias.

◆ rad_process_arch_ops_t

Public data structure for rad_process_arch_ops.

Public typedef alias.

◆ rad_process_info_t

Public data structure for rad_process_info.

Public typedef alias.

◆ rad_process_state_t

Public enumeration for rad_process_state.

Public typedef alias.

◆ rad_program_info_t

Public data structure for rad_program_info.

Public typedef alias.

◆ rad_program_state_t

Public enumeration for rad_program_state.

Public typedef alias.

◆ rad_scheduler_info_t

Public data structure for rad_scheduler_info.

Public typedef alias.

◆ rad_scheduler_mode_t

Public enumeration for rad_scheduler_mode.

Public typedef alias.

◆ rad_sd_config_t

Public data structure for rad_sd_config.

Public typedef alias.

◆ rad_sd_mode_t

typedef enum rad_sd_mode rad_sd_mode_t

Public enumeration for rad_sd_mode.

Public typedef alias.

◆ rad_seek_origin_t

Public enumeration for rad_seek_origin.

Public typedef alias.

◆ rad_serial_config_t

Public data structure for rad_serial_config.

Public typedef alias.

◆ rad_service_config_t

Public data structure for rad_service_config.

Public typedef alias.

◆ rad_service_descriptor_t

Public data structure for rad_service_descriptor.

Public typedef alias.

◆ rad_service_info_t

Public data structure for rad_service_info.

Public typedef alias.

◆ rad_service_state_t

Public enumeration for rad_service_state.

Public typedef alias.

◆ rad_shm_info_t

typedef struct rad_shm_info rad_shm_info_t

Public data structure for rad_shm_info.

Public typedef alias.

◆ rad_sockaddr_in_t

Public data structure for rad_sockaddr_in.

Public typedef alias.

◆ rad_socket_info_t

Public data structure for rad_socket_info.

Public typedef alias.

◆ rad_spi_controller_config_t

Public data structure for rad_spi_controller_config.

Public typedef alias.

◆ rad_spi_controller_ops_t

Public data structure for rad_spi_controller_ops.

Public typedef alias.

◆ rad_spi_device_info_t

Public data structure for rad_spi_device_info.

Public typedef alias.

◆ rad_spi_driver_t

Public data structure for rad_spi_driver.

Public typedef alias.

◆ rad_spi_transfer_mode_t

Public enumeration for rad_spi_transfer_mode.

Public typedef alias.

◆ rad_spi_transfer_t

Public data structure for rad_spi_transfer.

Public typedef alias.

◆ rad_status_t

typedef enum rad_status rad_status_t

Public enumeration for rad_status.

Public typedef alias.

◆ rad_task_config_t

Public data structure for rad_task_config.

Public typedef alias.

◆ rad_task_info_t

Public data structure for rad_task_info.

Public typedef alias.

◆ rad_task_state_t

Public enumeration for rad_task_state.

Public typedef alias.

◆ rad_tcp_state_t

Public enumeration for rad_tcp_state.

Public typedef alias.

◆ rad_timer_source_config_t

Public data structure for rad_timer_source_config.

Public typedef alias.

◆ rad_timer_source_info_t

Public data structure for rad_timer_source_info.

Public typedef alias.

◆ rad_timer_source_ops_t

Public data structure for rad_timer_source_ops.

Public typedef alias.

◆ rad_tree_node_info_t

Public data structure for rad_tree_node_info.

Public typedef alias.

◆ rad_tree_property_type_t

Public enumeration for rad_tree_property_type.

Public typedef alias.

◆ rad_tty_mode_flags_t

Public enumeration for rad_tty_mode_flags.

Public typedef alias.

◆ rad_tty_termios_t

POSIX-shaped terminal attributes stored by RADPx-OS TTY devices.

Public typedef alias.

◆ rad_tty_window_size_t

Public data structure for rad_tty_window_size.

Public typedef alias.

◆ rad_usb_controller_type_t

Public enumeration for rad_usb_controller_type.

Public typedef alias.

◆ rad_usb_device_class_t

Public enumeration for rad_usb_device_class.

Public typedef alias.

◆ rad_usb_host_info_t

Public data structure for rad_usb_host_info.

Public typedef alias.

◆ rad_vfs_backend_ops_t

Public data structure for rad_vfs_backend_ops.

Public typedef alias.

◆ rad_vfs_dirent_t

Public data structure for rad_vfs_dirent.

Public typedef alias.

◆ rad_vfs_open_flags_t

Public enumeration for rad_vfs_open_flags.

Public typedef alias.

◆ rad_vfs_stat_t

typedef struct rad_vfs_stat rad_vfs_stat_t

Public data structure for rad_vfs_stat.

Public typedef alias.

Enumeration Type Documentation

◆ rad_device_type

Public enumeration for rad_device_type.

Enumerator
RAD_DEVICE_GENERIC 

RAD_DEVICE_GENERIC.

RAD_DEVICE_I2C 

RAD_DEVICE_I2C.

RAD_DEVICE_SPI 

RAD_DEVICE_SPI.

RAD_DEVICE_AUDIO 

RAD_DEVICE_AUDIO.

RAD_DEVICE_SERIAL 

RAD_DEVICE_SERIAL.

RAD_DEVICE_FRAMEBUFFER 

RAD_DEVICE_FRAMEBUFFER.

RAD_DEVICE_TTY 

RAD_DEVICE_TTY.

RAD_DEVICE_PTY 

RAD_DEVICE_PTY.

RAD_DEVICE_INPUT 

RAD_DEVICE_INPUT.

RAD_DEVICE_BLOCK 

RAD_DEVICE_BLOCK.

RAD_DEVICE_NETWORK 

RAD_DEVICE_NETWORK.

RAD_DEVICE_COMPOSITOR 

RAD_DEVICE_COMPOSITOR.

RAD_DEVICE_USB 

RAD_DEVICE_USB.

◆ rad_display_output_type

Public enumeration for rad_display_output_type.

Enumerator
RAD_DISPLAY_OUTPUT_MEMORY 

RAD_DISPLAY_OUTPUT_MEMORY.

RAD_DISPLAY_OUTPUT_CIRCLE 

RAD_DISPLAY_OUTPUT_CIRCLE.

RAD_DISPLAY_OUTPUT_GRUB 

RAD_DISPLAY_OUTPUT_GRUB.

RAD_DISPLAY_OUTPUT_RP2350_HSTX 

RAD_DISPLAY_OUTPUT_RP2350_HSTX.

RAD_DISPLAY_OUTPUT_SPI_PANEL 

RAD_DISPLAY_OUTPUT_SPI_PANEL.

RAD_DISPLAY_OUTPUT_BCM283X_MAILBOX 

RAD_DISPLAY_OUTPUT_BCM283X_MAILBOX.

◆ rad_dma_request_id

Public enumeration for rad_dma_request_id.

Enumerator
RAD_DMA_DREQ_NONE 

RAD_DMA_DREQ_NONE.

RAD_DMA_DREQ_SPI0_TX 

RAD_DMA_DREQ_SPI0_TX.

RAD_DMA_DREQ_SPI0_RX 

RAD_DMA_DREQ_SPI0_RX.

RAD_DMA_DREQ_SPI1_TX 

RAD_DMA_DREQ_SPI1_TX.

RAD_DMA_DREQ_SPI1_RX 

RAD_DMA_DREQ_SPI1_RX.

RAD_DMA_DREQ_RP2350_HSTX_TX 

RAD_DMA_DREQ_RP2350_HSTX_TX.

◆ rad_dma_transfer_type

Public enumeration for rad_dma_transfer_type.

Enumerator
RAD_DMA_MEMORY_TO_MEMORY 

RAD_DMA_MEMORY_TO_MEMORY.

RAD_DMA_MEMORY_TO_DEVICE 

RAD_DMA_MEMORY_TO_DEVICE.

RAD_DMA_DEVICE_TO_MEMORY 

RAD_DMA_DEVICE_TO_MEMORY.

◆ rad_input_event_type

Public enumeration for rad_input_event_type.

Enumerator
RAD_INPUT_EVENT_NONE 

RAD_INPUT_EVENT_NONE.

RAD_INPUT_EVENT_KEY 

RAD_INPUT_EVENT_KEY.

RAD_INPUT_EVENT_POINTER_MOTION 

RAD_INPUT_EVENT_POINTER_MOTION.

RAD_INPUT_EVENT_POINTER_BUTTON 

RAD_INPUT_EVENT_POINTER_BUTTON.

RAD_INPUT_EVENT_POINTER_SCROLL 

RAD_INPUT_EVENT_POINTER_SCROLL.

◆ rad_input_key

Public enumeration for rad_input_key.

Enumerator
RAD_INPUT_KEY_UNKNOWN 

RAD_INPUT_KEY_UNKNOWN.

RAD_INPUT_KEY_ESCAPE 

RAD_INPUT_KEY_ESCAPE.

RAD_INPUT_KEY_ENTER 

RAD_INPUT_KEY_ENTER.

RAD_INPUT_KEY_BACKSPACE 

RAD_INPUT_KEY_BACKSPACE.

RAD_INPUT_KEY_TAB 

RAD_INPUT_KEY_TAB.

RAD_INPUT_KEY_UP 

RAD_INPUT_KEY_UP.

RAD_INPUT_KEY_DOWN 

RAD_INPUT_KEY_DOWN.

RAD_INPUT_KEY_LEFT 

RAD_INPUT_KEY_LEFT.

RAD_INPUT_KEY_RIGHT 

RAD_INPUT_KEY_RIGHT.

RAD_INPUT_KEY_HOME 

RAD_INPUT_KEY_HOME.

RAD_INPUT_KEY_END 

RAD_INPUT_KEY_END.

RAD_INPUT_KEY_PAGE_UP 

RAD_INPUT_KEY_PAGE_UP.

RAD_INPUT_KEY_PAGE_DOWN 

RAD_INPUT_KEY_PAGE_DOWN.

RAD_INPUT_KEY_INSERT 

RAD_INPUT_KEY_INSERT.

RAD_INPUT_KEY_DELETE 

RAD_INPUT_KEY_DELETE.

RAD_INPUT_KEY_LEFT_SHIFT 

RAD_INPUT_KEY_LEFT_SHIFT.

RAD_INPUT_KEY_RIGHT_SHIFT 

RAD_INPUT_KEY_RIGHT_SHIFT.

RAD_INPUT_KEY_LEFT_CTRL 

RAD_INPUT_KEY_LEFT_CTRL.

RAD_INPUT_KEY_RIGHT_CTRL 

RAD_INPUT_KEY_RIGHT_CTRL.

RAD_INPUT_KEY_LEFT_ALT 

RAD_INPUT_KEY_LEFT_ALT.

RAD_INPUT_KEY_RIGHT_ALT 

RAD_INPUT_KEY_RIGHT_ALT.

RAD_INPUT_KEY_CAPS_LOCK 

RAD_INPUT_KEY_CAPS_LOCK.

◆ rad_input_modifier_flags

Public enumeration for rad_input_modifier_flags.

Enumerator
RAD_INPUT_MOD_SHIFT 

RAD_INPUT_MOD_SHIFT.

RAD_INPUT_MOD_CTRL 

RAD_INPUT_MOD_CTRL.

RAD_INPUT_MOD_ALT 

RAD_INPUT_MOD_ALT.

RAD_INPUT_MOD_META 

RAD_INPUT_MOD_META.

RAD_INPUT_MOD_CAPS_LOCK 

RAD_INPUT_MOD_CAPS_LOCK.

◆ rad_input_pointer_button_flags

Public enumeration for rad_input_pointer_button_flags.

Enumerator
RAD_INPUT_POINTER_BUTTON_LEFT 

RAD_INPUT_POINTER_BUTTON_LEFT.

RAD_INPUT_POINTER_BUTTON_RIGHT 

RAD_INPUT_POINTER_BUTTON_RIGHT.

RAD_INPUT_POINTER_BUTTON_MIDDLE 

RAD_INPUT_POINTER_BUTTON_MIDDLE.

◆ rad_irq_trigger

Public enumeration for rad_irq_trigger.

Enumerator
RAD_IRQ_TRIGGER_NONE 

RAD_IRQ_TRIGGER_NONE.

RAD_IRQ_TRIGGER_EDGE_RISING 

RAD_IRQ_TRIGGER_EDGE_RISING.

RAD_IRQ_TRIGGER_EDGE_FALLING 

RAD_IRQ_TRIGGER_EDGE_FALLING.

RAD_IRQ_TRIGGER_LEVEL_HIGH 

RAD_IRQ_TRIGGER_LEVEL_HIGH.

RAD_IRQ_TRIGGER_LEVEL_LOW 

RAD_IRQ_TRIGGER_LEVEL_LOW.

◆ rad_kernel_print_level

Kernel-only printk severity.

Enumerator
RKERN_DBG 

Debug-only kernel detail.

RKERN_STAT 

Normal kernel status.

RKERN_WARN 

Recoverable kernel warning.

RKERN_ERR 

Kernel error.

◆ rad_log_level

Public enumeration for rad_log_level.

Enumerator
RAD_LOG_TRACE 

RAD_LOG_TRACE.

RAD_LOG_DEBUG 

RAD_LOG_DEBUG.

RAD_LOG_INFO 

RAD_LOG_INFO.

RAD_LOG_WARNING 

RAD_LOG_WARNING.

RAD_LOG_ERROR 

RAD_LOG_ERROR.

RAD_LOG_CRITICAL 

RAD_LOG_CRITICAL.

◆ rad_module_state

Public enumeration for rad_module_state.

Enumerator
RAD_MODULE_REGISTERED 

RAD_MODULE_REGISTERED.

RAD_MODULE_INITIALIZED 

RAD_MODULE_INITIALIZED.

RAD_MODULE_FAILED 

RAD_MODULE_FAILED.

RAD_MODULE_EXITED 

RAD_MODULE_EXITED.

◆ rad_pixel_format

Public enumeration for rad_pixel_format.

Enumerator
RAD_PIXEL_FORMAT_RGB565 

RAD_PIXEL_FORMAT_RGB565.

RAD_PIXEL_FORMAT_XRGB8888 

RAD_PIXEL_FORMAT_XRGB8888.

◆ rad_posix_syscall

Public enumeration for rad_posix_syscall.

Enumerator
RAD_SYSCALL_READ 

RAD_SYSCALL_READ.

RAD_SYSCALL_WRITE 

RAD_SYSCALL_WRITE.

RAD_SYSCALL_OPEN 

RAD_SYSCALL_OPEN.

RAD_SYSCALL_CLOSE 

RAD_SYSCALL_CLOSE.

RAD_SYSCALL_IOCTL 

RAD_SYSCALL_IOCTL.

RAD_SYSCALL_LSEEK 

RAD_SYSCALL_LSEEK.

RAD_SYSCALL_STAT 

RAD_SYSCALL_STAT.

RAD_SYSCALL_FSTAT 

RAD_SYSCALL_FSTAT.

RAD_SYSCALL_GETTIMEOFDAY 

RAD_SYSCALL_GETTIMEOFDAY.

RAD_SYSCALL_NANOSLEEP 

RAD_SYSCALL_NANOSLEEP.

RAD_SYSCALL_EXIT 

RAD_SYSCALL_EXIT.

RAD_SYSCALL_FORK 

RAD_SYSCALL_FORK.

RAD_SYSCALL_EXECVE 

RAD_SYSCALL_EXECVE.

RAD_SYSCALL_WAITPID 

RAD_SYSCALL_WAITPID.

RAD_SYSCALL_GETPID 

RAD_SYSCALL_GETPID.

RAD_SYSCALL_GETPPID 

RAD_SYSCALL_GETPPID.

RAD_SYSCALL_DUP 

RAD_SYSCALL_DUP.

RAD_SYSCALL_DUP2 

RAD_SYSCALL_DUP2.

RAD_SYSCALL_CHDIR 

RAD_SYSCALL_CHDIR.

RAD_SYSCALL_GETCWD 

RAD_SYSCALL_GETCWD.

RAD_SYSCALL_BRK 

RAD_SYSCALL_BRK.

RAD_SYSCALL_PIPE 

RAD_SYSCALL_PIPE.

RAD_SYSCALL_FCNTL 

RAD_SYSCALL_FCNTL.

RAD_SYSCALL_ACCESS 

RAD_SYSCALL_ACCESS.

RAD_SYSCALL_ISATTY 

RAD_SYSCALL_ISATTY.

RAD_SYSCALL_SOCKET 

RAD_SYSCALL_SOCKET.

RAD_SYSCALL_BIND 

RAD_SYSCALL_BIND.

RAD_SYSCALL_CONNECT 

RAD_SYSCALL_CONNECT.

RAD_SYSCALL_LISTEN 

RAD_SYSCALL_LISTEN.

RAD_SYSCALL_ACCEPT 

RAD_SYSCALL_ACCEPT.

RAD_SYSCALL_SENDTO 

RAD_SYSCALL_SENDTO.

RAD_SYSCALL_RECVFROM 

RAD_SYSCALL_RECVFROM.

RAD_SYSCALL_SHUTDOWN 

RAD_SYSCALL_SHUTDOWN.

RAD_SYSCALL_SETSOCKOPT 

RAD_SYSCALL_SETSOCKOPT.

RAD_SYSCALL_GETSOCKOPT 

RAD_SYSCALL_GETSOCKOPT.

RAD_SYSCALL_MMAP 

RAD_SYSCALL_MMAP.

RAD_SYSCALL_MUNMAP 

RAD_SYSCALL_MUNMAP.

RAD_SYSCALL_SHM_OPEN 

RAD_SYSCALL_SHM_OPEN.

RAD_SYSCALL_SHM_UNLINK 

RAD_SYSCALL_SHM_UNLINK.

RAD_SYSCALL_POLL 

RAD_SYSCALL_POLL.

RAD_SYSCALL_SETTIMEOFDAY 

RAD_SYSCALL_SETTIMEOFDAY.

RAD_SYSCALL_GETDENTS 

RAD_SYSCALL_GETDENTS.

RAD_SYSCALL_REMOVE 

RAD_SYSCALL_REMOVE.

RAD_SYSCALL_MKDIR 

RAD_SYSCALL_MKDIR.

RAD_SYSCALL_RMDIR 

RAD_SYSCALL_RMDIR.

RAD_SYSCALL_RENAME 

RAD_SYSCALL_RENAME.

RAD_SYSCALL_TRUNCATE 

RAD_SYSCALL_TRUNCATE.

RAD_SYSCALL_LOG_READ 

RAD_SYSCALL_LOG_READ.

RAD_SYSCALL_LOG_FLUSH 

RAD_SYSCALL_LOG_FLUSH.

RAD_SYSCALL_GETUID 

RAD_SYSCALL_GETUID.

RAD_SYSCALL_GETEUID 

RAD_SYSCALL_GETEUID.

RAD_SYSCALL_GETGID 

RAD_SYSCALL_GETGID.

RAD_SYSCALL_GETEGID 

RAD_SYSCALL_GETEGID.

RAD_SYSCALL_SETUID 

RAD_SYSCALL_SETUID.

RAD_SYSCALL_SETGID 

RAD_SYSCALL_SETGID.

RAD_SYSCALL_CHMOD 

RAD_SYSCALL_CHMOD.

RAD_SYSCALL_LINK 

RAD_SYSCALL_LINK.

RAD_SYSCALL_SYMLINK 

RAD_SYSCALL_SYMLINK.

RAD_SYSCALL_READLINK 

RAD_SYSCALL_READLINK.

RAD_SYSCALL_FSYNC 

RAD_SYSCALL_FSYNC.

RAD_SYSCALL_KILL 

RAD_SYSCALL_KILL.

RAD_SYSCALL_FCHDIR 

RAD_SYSCALL_FCHDIR.

RAD_SYSCALL_FTRUNCATE 

RAD_SYSCALL_FTRUNCATE.

RAD_SYSCALL_UTIME 

RAD_SYSCALL_UTIME.

RAD_SYSCALL_GETPGID 

RAD_SYSCALL_GETPGID.

RAD_SYSCALL_SETPGID 

RAD_SYSCALL_SETPGID.

RAD_SYSCALL_GETSID 

RAD_SYSCALL_GETSID.

RAD_SYSCALL_SETSID 

RAD_SYSCALL_SETSID.

RAD_SYSCALL_TCGETPGRP 

RAD_SYSCALL_TCGETPGRP.

RAD_SYSCALL_TCSETPGRP 

RAD_SYSCALL_TCSETPGRP.

RAD_SYSCALL_PIPE2 

RAD_SYSCALL_PIPE2.

◆ rad_process_state

Public enumeration for rad_process_state.

Enumerator
RAD_PROCESS_RUNNING 

RAD_PROCESS_RUNNING.

RAD_PROCESS_WAITING 

RAD_PROCESS_WAITING.

RAD_PROCESS_ZOMBIE 

RAD_PROCESS_ZOMBIE.

◆ rad_program_state

Public enumeration for rad_program_state.

Enumerator
RAD_PROGRAM_LOADED 

RAD_PROGRAM_LOADED.

RAD_PROGRAM_RUNNING 

RAD_PROGRAM_RUNNING.

RAD_PROGRAM_FINISHED 

RAD_PROGRAM_FINISHED.

RAD_PROGRAM_FAILED 

RAD_PROGRAM_FAILED.

◆ rad_scheduler_mode

Public enumeration for rad_scheduler_mode.

Enumerator
RAD_SCHEDULER_COOPERATIVE 

RAD_SCHEDULER_COOPERATIVE.

RAD_SCHEDULER_PREEMPTIVE 

RAD_SCHEDULER_PREEMPTIVE.

◆ rad_sd_mode

Public enumeration for rad_sd_mode.

Enumerator
RAD_SD_MODE_AUTO 

RAD_SD_MODE_AUTO.

RAD_SD_MODE_SPI 

RAD_SD_MODE_SPI.

RAD_SD_MODE_PIO_SDIO 

RAD_SD_MODE_PIO_SDIO.

◆ rad_seek_origin

Public enumeration for rad_seek_origin.

Enumerator
RAD_SEEK_SET 

RAD_SEEK_SET.

RAD_SEEK_CUR 

RAD_SEEK_CUR.

RAD_SEEK_END 

RAD_SEEK_END.

◆ rad_service_state

Public enumeration for rad_service_state.

Enumerator
RAD_SERVICE_REGISTERED 

RAD_SERVICE_REGISTERED.

RAD_SERVICE_CONFIGURED 

RAD_SERVICE_CONFIGURED.

RAD_SERVICE_RUNNING 

RAD_SERVICE_RUNNING.

RAD_SERVICE_FAILED 

RAD_SERVICE_FAILED.

RAD_SERVICE_STOPPED 

RAD_SERVICE_STOPPED.

◆ rad_spi_transfer_mode

Public enumeration for rad_spi_transfer_mode.

Enumerator
RAD_SPI_TRANSFER_MODE_AUTO 

RAD_SPI_TRANSFER_MODE_AUTO.

RAD_SPI_TRANSFER_MODE_PIO 

RAD_SPI_TRANSFER_MODE_PIO.

RAD_SPI_TRANSFER_MODE_DMA 

RAD_SPI_TRANSFER_MODE_DMA.

◆ rad_status

enum rad_status

Public enumeration for rad_status.

Enumerator
RAD_STATUS_OK 

RAD_STATUS_OK.

RAD_STATUS_ERROR 

RAD_STATUS_ERROR.

RAD_STATUS_INVALID_ARGUMENT 

RAD_STATUS_INVALID_ARGUMENT.

RAD_STATUS_NOT_FOUND 

RAD_STATUS_NOT_FOUND.

RAD_STATUS_NO_MEMORY 

RAD_STATUS_NO_MEMORY.

RAD_STATUS_TIMEOUT 

RAD_STATUS_TIMEOUT.

RAD_STATUS_NOT_SUPPORTED 

RAD_STATUS_NOT_SUPPORTED.

RAD_STATUS_ALREADY_EXISTS 

RAD_STATUS_ALREADY_EXISTS.

RAD_STATUS_NOT_INITIALIZED 

RAD_STATUS_NOT_INITIALIZED.

◆ rad_task_state

Public enumeration for rad_task_state.

Enumerator
RAD_TASK_NEW 

RAD_TASK_NEW.

RAD_TASK_READY 

RAD_TASK_READY.

RAD_TASK_RUNNING 

RAD_TASK_RUNNING.

RAD_TASK_SLEEPING 

RAD_TASK_SLEEPING.

RAD_TASK_BLOCKED 

RAD_TASK_BLOCKED.

RAD_TASK_FINISHED 

RAD_TASK_FINISHED.

RAD_TASK_DETACHED 

RAD_TASK_DETACHED.

◆ rad_tcp_state

Public enumeration for rad_tcp_state.

Enumerator
RAD_TCP_CLOSED 

RAD_TCP_CLOSED.

RAD_TCP_LISTEN 

RAD_TCP_LISTEN.

RAD_TCP_SYN_SENT 

RAD_TCP_SYN_SENT.

RAD_TCP_SYN_RECEIVED 

RAD_TCP_SYN_RECEIVED.

RAD_TCP_ESTABLISHED 

RAD_TCP_ESTABLISHED.

RAD_TCP_FIN_WAIT 

RAD_TCP_FIN_WAIT.

RAD_TCP_CLOSE_WAIT 

RAD_TCP_CLOSE_WAIT.

RAD_TCP_LAST_ACK 

RAD_TCP_LAST_ACK.

RAD_TCP_TIME_WAIT 

RAD_TCP_TIME_WAIT.

◆ rad_tree_property_type

Public enumeration for rad_tree_property_type.

Enumerator
RAD_TREE_PROP_BOOL 

RAD_TREE_PROP_BOOL.

RAD_TREE_PROP_U32 

RAD_TREE_PROP_U32.

RAD_TREE_PROP_STRING 

RAD_TREE_PROP_STRING.

RAD_TREE_PROP_U32_ARRAY 

RAD_TREE_PROP_U32_ARRAY.

RAD_TREE_PROP_STRING_ARRAY 

RAD_TREE_PROP_STRING_ARRAY.

◆ rad_tty_mode_flags

Public enumeration for rad_tty_mode_flags.

Enumerator
RAD_TTY_MODE_CANONICAL 

RAD_TTY_MODE_CANONICAL.

RAD_TTY_MODE_ECHO 

RAD_TTY_MODE_ECHO.

RAD_TTY_MODE_CRLF 

RAD_TTY_MODE_CRLF.

◆ rad_usb_controller_type

Public enumeration for rad_usb_controller_type.

Enumerator
RAD_USB_CONTROLLER_UNKNOWN 

RAD_USB_CONTROLLER_UNKNOWN.

RAD_USB_CONTROLLER_DWC_OTG 

RAD_USB_CONTROLLER_DWC_OTG.

◆ rad_usb_device_class

Public enumeration for rad_usb_device_class.

Enumerator
RAD_USB_CLASS_UNKNOWN 

RAD_USB_CLASS_UNKNOWN.

RAD_USB_CLASS_HID_KEYBOARD 

RAD_USB_CLASS_HID_KEYBOARD.

RAD_USB_CLASS_HID_MOUSE 

RAD_USB_CLASS_HID_MOUSE.

RAD_USB_CLASS_MASS_STORAGE 

RAD_USB_CLASS_MASS_STORAGE.

◆ rad_vfs_open_flags

Public enumeration for rad_vfs_open_flags.

Enumerator
RAD_VFS_READ 

RAD_VFS_READ.

RAD_VFS_WRITE 

RAD_VFS_WRITE.

RAD_VFS_CREATE 

RAD_VFS_CREATE.

RAD_VFS_TRUNCATE 

RAD_VFS_TRUNCATE.

RAD_VFS_APPEND 

RAD_VFS_APPEND.

RAD_VFS_DIRECTORY 

RAD_VFS_DIRECTORY.