Expand description
Re-export of zephyr-sys as zephyr::raw
.
Structs§
- @cond INTERNAL_HIDDEN
- @cond INTERNAL_HIDDEN
- @cond INTERNAL_HIDDEN
- @cond INTERNAL_HIDDEN
- Bluetooth LE Device Address
- Bluetooth Device Address
- Information about a bond with a remote device.
- BR/EDR discovery parameters
- @private @brief BR/EDR discovery private structure
- @brief BR/EDR discovery result structure
- @brief Bluetooth data.
- LE Advertising Parameters.
- Opaque type representing an advertiser.
- @brief Advertising set info structure.
- LE Out of Band information.
- LE Secure Connections pairing Out of Band data.
- Opaque type representing an periodic advertising sync.
- @brief Advertising set info structure.
- Listener context for (LE) scanning.
- LE scan parameters
- LE advertisement and scan response packet information
- @defgroup sys_init System Initialization @ingroup os_services
- @brief Runtime device dynamic structure (in RAM) per driver instance
- @brief GPIO callback structure
- @brief Container for GPIO pin information specified in devicetree
- @}
- Event Structure @ingroup event_apis
- @}
- @addtogroup heap_apis @{
- @brief Mailbox Structure
- @brief Mailbox Message Structure
- @cond INTERNAL_HIDDEN
- @brief Message Queue Structure
- @brief Message Queue Attributes
- Mutex Structure @ingroup mutex_apis
- Object core structure
- Object type structure
- Pipe Structure
- @brief Poll Event
- per-type data
- @}
- @cond INTERNAL_HIDDEN
- @brief Kernel Spin Lock
- @ingroup thread_apis Thread Structure
- @brief Kernel timeout type
- @brief Kernel timepoint type
- @cond INTERNAL_HIDDEN
- @cond INTERNAL_HIDDEN
- @cond INTERNAL_HIDDEN
- @cond INTERNAL_HIDDEN
- @brief A structure used to hold work until it can be processed.
- @brief A structure holding optional configuration items for a work queue.
- @brief A structure holding internal state for a pending synchronous operation on a work item or queue.
- @}
- @cond INTERNAL_HIDDEN
- @endcond
- @brief Generic packet header.
- @brief Generic packet header.
- @brief Skip packet used internally by the packet buffer.
- @brief Simple network buffer representation.
- @brief Balanced red/black tree node structure
- @brief Spinlock APIs @defgroup spinlock_apis Spinlock APIs @ingroup kernel_apis @{
- @cond INTERNAL_HIDDEN
Constants§
- @endcond
Functions§
- @}
- @brief Compare Bluetooth device addresses.
- @brief Copy Bluetooth device address.
- @brief Determine equality of two Bluetooth device addresses.
- @brief Convert Bluetooth address from string to binary.
- @brief Compare Bluetooth LE device addresses.
- @brief Copy Bluetooth LE device address.
- @brief Create a Bluetooth LE random non-resolvable private address.
- @brief Create a Bluetooth LE random static address.
- @brief Determine equality of two Bluetooth LE device addresses.
- @brief Convert LE Bluetooth address from string to binary.
- @brief Check if a Bluetooth LE address is valid identity address.
- @brief Check if a Bluetooth LE address is a random private resolvable address.
- @brief Converts binary LE Bluetooth address to string.
- @brief Converts binary Bluetooth address to string.
- @brief Register discovery packet callbacks.
- @brief Unregister discovery packet callbacks.
- @brief Start BR/EDR discovery
- @brief Stop BR/EDR discovery.
- @brief Get BR/EDR local Out Of Band information
- @brief Enable/disable set controller in connectable state.
- @brief Enable/disable set controller in discoverable state.
- @brief Decrypt big-endian data with AES-CCM.
- @brief Encrypt big-endian data with AES-CCM.
- @brief Configure vendor data path
- @brief Get the total size (in bytes) of a given set of @ref bt_data structures.
- @brief Helper for parsing advertising (or EIR or OOB) data.
- @brief Serialize a @ref bt_data struct into an advertising structure (a flat byte array).
- @brief Disable Bluetooth
- @brief Enable Bluetooth
- @brief AES encrypt big-endian data.
- @brief AES encrypt little-endian data.
- @brief Iterate through all existing bonds.
- @brief Get local Bluetooth appearance
- @brief Get Bluetooth Device Name
- @brief Create a new identity.
- @brief Delete an identity.
- @brief Get the currently configured identities.
- @brief Reset/reclaim an identity for reuse.
- @brief Check if Bluetooth is ready
- @brief Start advertising
- @brief Stop advertising
- @brief Update advertising
- @brief Create advertising set.
- @brief Delete advertising set.
- @brief Get array index of an advertising set.
- @brief Get advertising set info
- @brief Get local LE Out of Band (OOB) information.
- @brief Set an advertising set’s advertising or scan response data.
- @brief Start advertising with the given advertising set
- @brief Stop advertising with the given advertising set
- @brief Update advertising parameters.
- @brief Add device (LE) to filter accept list.
- @brief Clear filter accept list.
- @brief Remove device (LE) from filter accept list.
- @brief Get local LE Out of Band (OOB) information.
- @brief Add a device to the periodic advertising list.
- @brief Clear the periodic advertising list.
- @brief Remove a device from the periodic advertising list.
- @brief Set or update the periodic advertising data.
- @brief Transfer the information about a periodic advertising set.
- @brief Set or update the periodic advertising parameters.
- @brief Set the data for a response slot in a specific subevent of the PAwR.
- @brief Set the periodic advertising with response subevent data.
- @brief Starts periodic advertising.
- @brief Stops periodic advertising.
- @brief Register periodic advertising sync callbacks.
- @brief Create a periodic advertising sync object.
- @brief Delete periodic advertising sync.
- @brief Get array index of an periodic advertising sync object.
- @brief Get periodic adv sync information.
- @brief Look up an existing periodic advertising sync object by advertiser address.
- @brief Get a periodic advertising sync object from the array index.
- @brief Disables receiving periodic advertising reports for a sync.
- @brief Enables receiving periodic advertising reports for a sync.
- @brief Synchronize with a subset of subevents
- @brief Transfer the periodic advertising sync information to a peer device.
- @brief Subscribe to periodic advertising sync transfers (PASTs).
- @brief Unsubscribe from periodic advertising sync transfers (PASTs).
- @brief Register scanner packet callbacks.
- @brief Unregister scanner packet callbacks.
- @brief Start (LE) scanning
- @brief Stop (LE) scanning.
- @brief Set (LE) channel map.
- @brief Set the Resolvable Private Address timeout in runtime
- @brief Generate random data.
- @brief Set local Bluetooth appearance
- @brief Set Bluetooth Device Name
- @brief Clear pairing information.
- @brief Add an application callback. @param port Pointer to the device structure for the driver instance. @param callback A valid Application’s callback structure pointer. @retval 0 If successful @retval -ENOSYS If driver does not implement the operation @retval -errno Other negative errno code on failure.
- @brief Add an application callback.
- @brief Function to get pending interrupts
- @brief Helper to initialize a struct gpio_callback properly @param callback A valid Application’s callback structure pointer. @param handler A valid handler function pointer. @param pin_mask A bit mask of relevant pins for the handler
- @brief Validate that GPIO port is ready.
- @brief Configure a single pin.
- @brief Configure a single pin from a @p gpio_dt_spec and some extra flags.
- @brief Get logical level of an input pin.
- @brief Get a configuration of a single pin.
- @brief Get a configuration of a single pin from a @p gpio_dt_spec.
- @brief Get logical level of an input pin from a @p gpio_dt_spec.
- @brief Get physical level of an input pin.
- @brief Configure pin interrupt.
- @brief Configure pin interrupts from a @p gpio_dt_spec.
- @brief Check if @p pin is configured for input
- @brief Check if a single pin from @p gpio_dt_spec is configured for input
- @brief Check if @p pin is configured for output
- @brief Check if a single pin from @p gpio_dt_spec is configured for output
- @brief Set logical level of an output pin.
- @brief Set logical level of a output pin from a @p gpio_dt_spec.
- @brief Set physical level of an output pin.
- @brief Toggle pin level.
- @brief Toggle pin level from a @p gpio_dt_spec.
- @brief Set logical level of selected output pins to inactive.
- @brief Set physical level of selected output pins to low.
- @brief Get logical level of all input pins in a port.
- @brief Get direction of select pins in a port.
- @brief Get physical level of all input pins in a port.
- @brief Set logical level of selected output pins to active.
- @brief Set physical level of selected output pins to high.
- @brief Set logical level of selected output pins.
- @brief Set physical level of selected output pins.
- @brief Set logical level of output pins in a port.
- @brief Set physical level of output pins in a port.
- @brief Toggle level of selected output pins.
- @brief Remove an application callback. @param port Pointer to the device structure for the driver instance. @param callback A valid application’s callback structure pointer. @retval 0 If successful @retval -ENOSYS If driver does not implement the operation @retval -errno Other negative errno code on failure.
- @brief Remove an application callback.
- @brief Allocate memory from the heap with a specified alignment.
- @brief Cause the current thread to busy wait.
- @brief Allocate memory from heap, array style
- @brief Check whether it is possible to yield in the current context.
- @brief Unblock all threads that are pending on the condition variable
- @brief Initialize a condition variable
- @brief Signals one thread that is pending on the condition variable
- @brief Waits on the condition variable releasing the mutex lock
- @brief Make the CPU idle in an atomic fashion.
- @defgroup cpu_idle_apis CPU Idling APIs @ingroup kernel_apis @{ / /** @brief Make the CPU idle.
- @brief Get thread ID of the current thread.
- @brief Read the hardware clock.
- @brief Read the 64-bit hardware clock.
- @brief Clear the events in an event object
- @brief Initialize an event object
- @brief Post one or more events to an event object
- @brief Set the events in an event object
- @brief Set or clear the events in an event object
- @brief Test the events currently tracked in the event object
- @brief Wait for any of the specified events
- @brief Wait for all of the specified events
- @brief Halt the system on a fatal error
- @brief Disable preservation of floating point context information.
- @brief Enable preservation of floating point context information.
- @brief Free memory allocated from heap.
- @brief Allocate aligned memory from a k_heap
- @brief Allocate memory from a k_heap
- @brief Free memory allocated by k_heap_alloc()
- @brief Initialize a k_heap
- @brief Reallocate memory from a k_heap
- @brief Determine if code is running at interrupt level.
- @brief Test whether startup is in the before-main-task phase.
- @brief Determine if code is running in a preemptible thread.
- Indicate whether the CPU is currently in user mode
- @brief Allocate memory from the heap.
- @brief Send a mailbox message in an asynchronous manner.
- @brief Retrieve mailbox message data into a buffer.
- @brief Receive a mailbox message.
- @brief Initialize a mailbox.
- @brief Send a mailbox message in a synchronous manner.
- @brief Add a memory partition into a memory domain.
- @brief Add a thread into a memory domain.
- @brief Initialize a memory domain.
- @brief Remove a memory partition from a memory domain.
- Return the amount of free memory available
- Map anonymous memory into Zephyr’s address space
- Map a physical memory region into the kernel’s virtual address space
- Map memory into virtual address space with guard pages.
- @brief Get physical address from virtual address.
- Given an arbitrary region, provide a aligned region that covers it
- @brief Allocate memory from a memory slab.
- @brief Free memory allocated from a memory slab.
- @brief Initialize a memory slab.
- @brief Get the number of maximum used blocks so far in a memory slab.
- @brief Get the number of unused blocks in a memory slab.
- @brief Get the number of used blocks in a memory slab.
- @brief Get the memory stats for a memory slab
- @brief Reset the maximum memory usage for a slab
- Un-map mapped memory
- Unmap a virtual memory region from kernel’s virtual address space.
- Un-map memory mapped via k_mem_map_phys_guard().
- Modify memory mapping attribute flags
- @brief Get virtual address from physical address.
- @brief Initialize a message queue.
- @brief Release allocated buffer for a queue
- @brief Receive a message from a message queue.
- @brief Get basic attributes of a message queue.
- @brief Initialize a message queue.
- @brief Get the amount of free space in a message queue.
- @brief Get the number of messages in a message queue.
- @brief Peek/read a message from a message queue.
- @brief Peek/read a message from a message queue at the specified index
- @brief Purge a message queue.
- @brief Send a message to a message queue.
- @brief Put the current thread to sleep.
- @brief Initialize a mutex.
- @brief Lock a mutex.
- @brief Unlock a mutex.
- @brief Initialize the core of the kernel object
- @brief Automatically link the kernel object after initializing it
- @brief Link the kernel object to the kernel object type list
- @brief Deregister kernel object from gathering statistics
- @brief Stop gathering the stats associated with the kernel object
- @brief Reset the stats associated with the kernel object
- @brief Retrieve the statistics associated with the kernel object
- @brief Retrieve the raw statistics associated with the kernel object
- @brief Register kernel object for gathering statistics
- @brief Reset the stats associated with the kernel object
- @brief Unlink the kernel object from the kernel object type list
- @brief Find a specific object type by ID
- @brief Walk the object type’s list of object cores
- @brief Walk the object type’s list of object cores
- @internal
- @brief Free an object
- @brief Initialize a pipe and allocate a buffer for it
- @brief Flush the pipe’s internal buffer
- @brief Release a pipe’s allocated buffer
- @brief Flush the pipe of write data
- @brief Read data from a pipe.
- @brief Initialize a pipe.
- @brief Write data to a pipe.
- @brief Query the number of bytes that may be read from @a pipe.
- @brief Query the number of bytes that may be written to @a pipe
- @brief Wait for one or many of multiple poll events to occur
- @brief Initialize one struct k_poll_event instance
- @brief Fetch the signaled state and result value of a poll signal
- @brief Initialize a poll signal object.
- @brief Signal a poll signal object.
- @brief Reset a poll signal object’s state to unsignaled.
- @brief Append an element to a queue.
- @brief Prepend an element to a queue.
- @brief Append an element to the end of a queue.
- @brief Atomically append a list of elements to a queue.
- @brief Cancel waiting on a queue.
- @brief Get an element from a queue.
- @brief Initialize a queue.
- @brief Inserts an element to a queue.
- @brief Query a queue to see if it has data available.
- @brief Atomically add a list of elements to a queue.
- @brief Peek element at the head of queue.
- @brief Peek element at the tail of queue.
- @brief Prepend an element to a queue.
- @brief Remove an element from a queue.
- @brief Append an element to a queue only if it’s not present already.
- @brief Expand the size of an existing allocation
- @brief Query thread ID of the current thread.
- @brief Lock the scheduler.
- @brief Set time-slicing period and scope.
- @brief Unlock the scheduler.
- @brief Get a semaphore’s count.
- @brief Give a semaphore.
- @brief Initialize a semaphore.
- @brief Resets a semaphore’s count to zero.
- @brief Take a semaphore.
- @brief Put the current thread to sleep.
- @brief Lock a spinlock
- @brief Attempt to lock a spinlock
- @brief Unlock a spin lock
- @brief Initialize a stack.
- @brief Release a stack’s allocated buffer
- @brief Initialize a stack.
- @brief Pop an element from a stack.
- @brief Push an element onto a stack.
- @brief Emit a character buffer to the console device
- @brief Fatal error policy handler
- @brief Disable gathering of system runtime statistics
- @brief Enable gathering of system runtime statistics
- @brief Abort a thread.
- @brief Create a thread.
- @brief Get current thread’s custom data.
- @brief Set current thread’s custom data.
- @brief Iterate over all the threads in the system.
- @brief Iterate over all the threads in the system without locking.
- @brief Assign a resource memory pool to a thread
- @brief Sleep until a thread exits
- @brief Copy the thread name into a supplied buffer
- @brief Get thread name
- @brief Set current thread name
- @brief Get a thread’s priority.
- @brief Set a thread’s priority.
- @brief Resume a suspended thread.
- @brief Get the runtime statistics of all threads
- @brief Get the runtime statistics of all threads on specified cpu
- @brief Disable gathering of runtime statistics for specified thread
- @brief Enable gathering of runtime statistics for specified thread
- @brief Get the runtime statistics of a thread
- @brief Dynamically allocate a thread stack.
- @brief Free a dynamically allocated thread stack.
- @brief Start an inactive thread
- @brief Get thread state string
- @brief Suspend a thread.
- @brief Set thread time slice
- @brief Get time when a thread wakes up, in system ticks
- @brief Get time remaining before a thread wakes up, in system ticks
- @brief Drop a thread’s privileges permanently to user mode
- @brief Get next expiration time of a timer, in system ticks
- @brief Initialize a timer.
- @brief Get time remaining before a timer next expires.
- @brief Get time remaining before a timer next expires, in system ticks
- @brief Start a timer.
- @brief Read timer status.
- @brief Synchronize thread to timer expiration.
- @brief Stop a timer.
- @brief Retrieve the user-specific data from a timer.
- @brief Associate user-specific data with a timer.
- @brief Get elapsed time.
- @brief Get system uptime.
- @brief Get system uptime (32-bit version).
- @brief Get system uptime in seconds.
- @brief Get system uptime, in system ticks.
- @brief Put the current thread to sleep with microsecond resolution.
- @brief Wake up a sleeping thread.
- @brief Busy state flags from the work item.
- @brief Cancel a work item.
- @brief Cancel delayable work.
- @brief Cancel delayable work and wait.
- @brief Cancel a work item and wait for it to complete.
- @brief Busy state flags from the delayable work item.
- @brief Get the absolute tick count at which a scheduled delayable work will be submitted.
- @brief Get the parent delayable work structure from a work pointer.
- @brief Test whether a delayed work item is currently pending.
- @brief Get the number of ticks until a scheduled delayable work will be submitted.
- @brief Wait for last-submitted instance to complete.
- @brief Flush delayable work.
- @brief Initialize a (non-delayable) work structure.
- @brief Initialize a delayable work structure.
- @brief Test whether a work item is currently pending.
- @brief Cancel a triggered work item.
- @brief Initialize a triggered work item.
- @brief Submit a triggered work item to the system workqueue.
- @brief Submit a triggered work item.
- @brief Wait until the work queue has drained, optionally plugging it.
- @brief Initialize a work queue structure.
- @brief Initialize a work queue.
- @brief Access the thread that animates a work queue.
- @brief Release a work queue to accept new submissions.
- @brief Reschedule a work item to the system work queue after a delay.
- @brief Reschedule a work item to a queue after a delay.
- @brief Submit an idle work item to the system work queue after a delay.
- @brief Submit an idle work item to a queue after a delay.
- @brief Submit a work item to the system queue.
- @brief Submit a work item to a queue.
- @brief Initialize a userspace work item.
- @brief Check if a userspace work item is pending.
- @brief Start a workqueue in user mode
- @brief Access the user mode thread that animates a work queue.
- @brief Submit a work item to a user mode workqueue
- @brief Yield the current thread.
- @brief Return the current system tick count
- @brief Return the lower part of the current system tick count
- @brief add node to tail of list
- @brief get the first node in a list
- @brief check if more than one node present
- @brief initialize list to its empty state
- @brief Insert a node into a list
- @brief insert node at position
- @brief check if the list is empty
- @brief check if a node is the list’s head
- @brief check if a node is the list’s tail
- @brief Compute the size of the given list in O(n) time
- @brief get a reference to the head item in the list
- @brief get a reference to the head item in the list
- @brief get a reference to the next item in the list
- @brief get a reference to the next item in the list, node is not NULL
- @brief get a reference to the previous item in the list
- @brief get a reference to the previous item in the list, node is not NULL
- @brief get a reference to the tail item in the list
- @brief add node to head of list
- @brief remove a specific node from a list
- @brief initialize node to its state when not in a list
- @brief check if a node is a member of any list
- @brief Allocate aligned memory from a sys_heap
- @brief Expand the size of an existing allocation
- @brief Allocate memory from a sys_heap
- @brief Free memory into a sys_heap
- @brief Initialize sys_heap
- @brief Print heap internal structure information to the console
- @brief sys_heap stress test rig
- @brief Return allocated memory size
- @brief Return the kernel version of the present build
- @brief Check if a physical address is within range of physical memory.
- @brief Check if a virtual address is within range of virtual memory.
- @brief Append a node to the given list
- @brief Append a list to the given list
- @brief Find and remove a node from a list
- @brief Fetch and remove the first node of the given list
- @brief Fetch and remove the first node of the given list
- @brief Initialize a list
- @brief Insert a node to the given list
- @brief Test if the given list is empty
- @brief Compute the size of the given list in O(n) time
- @brief merge two sflists, appending the second one to the first
- @brief Peek the first node from the list
- @brief Peek the next node from current node
- @brief Peek the next node from current node, node is not NULL
- @brief Peek the last node from the list
- @brief Prepend a node to the given list
- @brief Remove a node
- @brief Fetch flags value for a particular sfnode
- @brief Set flags value for an sflist node
- @brief Initialize an sflist node
- @brief Append a node to the given list
- @brief Append a list to the given list
- @brief Find if a node is already linked in a singly linked list
- @brief Find and remove a node from a list
- @brief Fetch and remove the first node of the given list
- @brief Fetch and remove the first node of the given list
- @brief Initialize a list
- @brief Insert a node to the given list
- @brief Test if the given list is empty
- @brief Compute the size of the given list in O(n) time
- @brief merge two slists, appending the second one to the first
- @brief Peek the first node from the list
- @brief Peek the next node from current node
- @brief Peek the next node from current node, node is not NULL
- @brief Peek the last node from the list
- @brief Prepend a node to the given list
- @brief Remove a node
- @brief Calculate a timepoint value
- @brief Compare two timepoint values.
- @brief Indicates if timepoint is expired
- @brief Remaining time to given timepoint
- @brief Called when the cpu enters the idle state
- @brief Called when entering an ISR
- @brief Called when exiting an ISR
- @brief Called when exiting an ISR and switching to scheduler
- / /****************** Definitions used by minimal logging *********************/ /
- @brief Allocate log message.
- @brief Finalize message.
- @brief Create message at runtime.
- @brief Create log message using simplified method for string with no arguments.
- @brief Create log message using simplified method for string with a one argument.
- @brief Create log message using simplified method for string with two arguments.
- @brief Create a logging message from message details and string package.
- @brief Writes an formatted string to the log.
Type Aliases§
- @typedef bt_le_scan_cb_t @brief Callback type for reporting LE scan results.
- @typedef bt_ready_cb_t @brief Callback for notifying that Bluetooth has been enabled.
- @typedef gpio_callback_handler_t @brief Define the application callback handler function signature
- @brief Provides a type to hold GPIO devicetree flags.
- @brief Provides a type to hold GPIO configuration flags.
- @brief Provides a type to hold a GPIO pin index.
- @brief Identifies a set of pins associated with a port.
- @brief Provides values for a set of pins associated with a port.
- @brief Kernel Object Types
- @brief Spinlock key type
- @addtogroup thread_apis @{
- @typedef k_timer_expiry_t @brief Timer expiry function type.
- @typedef k_timer_stop_t @brief Timer stop function type.
- @brief The signature for a work item handler function.
- @typedef k_work_user_handler_t @brief Work item handler function type for user work queues.
- @brief Doubly-linked list structure.
- @brief Doubly-linked list node structure.
- Flagged single-linked list structure.
- Flagged single-linked list node structure.
- Single-linked list structure.
- Single-linked list node structure.