ncm namespace
Classes
- class INcmDevice
- struct QueuedFrame
- struct QueueState
- class TinyUsbNcmDevice
Functions
- auto begin_tx_frame() -> QueuedFrame*
- void complete_tx_frame()
- auto default_device() -> INcmDevice&
- auto dequeue_rx_frame(uint8_t*const out, const size_t out_capacity, size_t*const out_size) -> bool
- auto enqueue_tx_frame(const uint8_t*const frame, const size_t frame_size) -> bool
- auto init() -> bool
- void init_mac_identity()
- auto link_up() -> bool
- auto mac_address() -> const uint8_t*
- auto maybe_start_tx() -> bool
- auto packetrf_usb_ncm_mac_string(void) -> const char*
- auto pop_rx_frame(uint8_t*const out, const size_t out_capacity, size_t*const out_size) -> bool
- auto push_rx_frame(const uint8_t*const src, const uint16_t size) -> bool
- auto push_tx_frame(const uint8_t*const src, const size_t size) -> bool
- auto ready() -> bool
- void service()
Variables
- std::atomic_bool g_initialized
- std::atomic_bool g_link_up
- std::array<char, 13> g_mac_string
- QueueState g_queue
- std::atomic_bool g_tx_in_flight
- size_t kMaxFrameBytes constexpr
Function documentation
QueuedFrame* prf:: usb:: ncm:: begin_tx_frame()
#include <hal/usb/ncm_device.cpp>
void prf:: usb:: ncm:: complete_tx_frame()
#include <hal/usb/ncm_device.cpp>
INcmDevice& prf:: usb:: ncm:: default_device()
#include <hal/usb/ncm_device.hpp>
bool prf:: usb:: ncm:: dequeue_rx_frame(uint8_t*const out,
const size_t out_capacity,
size_t*const out_size)
#include <hal/usb/ncm_device.hpp>
bool prf:: usb:: ncm:: enqueue_tx_frame(const uint8_t*const frame,
const size_t frame_size)
#include <hal/usb/ncm_device.hpp>
bool prf:: usb:: ncm:: init()
#include <hal/usb/ncm_device.hpp>
void prf:: usb:: ncm:: init_mac_identity()
#include <hal/usb/ncm_device.cpp>
bool prf:: usb:: ncm:: link_up()
#include <hal/usb/ncm_device.hpp>
const uint8_t* prf:: usb:: ncm:: mac_address()
#include <hal/usb/ncm_device.hpp>
bool prf:: usb:: ncm:: maybe_start_tx()
#include <hal/usb/ncm_device.cpp>
const char* prf:: usb:: ncm:: packetrf_usb_ncm_mac_string(void)
#include <hal/usb/ncm_device.hpp>
bool prf:: usb:: ncm:: pop_rx_frame(uint8_t*const out,
const size_t out_capacity,
size_t*const out_size)
#include <hal/usb/ncm_device.cpp>
bool prf:: usb:: ncm:: push_rx_frame(const uint8_t*const src,
const uint16_t size)
#include <hal/usb/ncm_device.cpp>
bool prf:: usb:: ncm:: push_tx_frame(const uint8_t*const src,
const size_t size)
#include <hal/usb/ncm_device.cpp>
bool prf:: usb:: ncm:: ready()
#include <hal/usb/ncm_device.hpp>
void prf:: usb:: ncm:: service()
#include <hal/usb/ncm_device.hpp>
Variable documentation
std::atomic_bool prf:: usb:: ncm:: g_initialized
#include <hal/usb/ncm_device.cpp>
std::atomic_bool prf:: usb:: ncm:: g_link_up
#include <hal/usb/ncm_device.cpp>
std::array<char, 13> prf:: usb:: ncm:: g_mac_string
#include <hal/usb/ncm_device.cpp>
QueueState prf:: usb:: ncm:: g_queue
#include <hal/usb/ncm_device.cpp>
std::atomic_bool prf:: usb:: ncm:: g_tx_in_flight
#include <hal/usb/ncm_device.cpp>
size_t prf:: usb:: ncm:: kMaxFrameBytes constexpr
#include <hal/usb/ncm_device.cpp>