Operating systems, development tools, and professional services
for connected embedded systems
for connected embedded systems
![]() |
![]() |
![]() |
![]() |
usbd_alloc()
Allocate a memory area to use for data transfers
Synopsis:
#include <sys/usbdi.h> void *usbd_alloc( size_t size );
Arguments:
- size
- The size, in bytes, of the area to allocate.
Library:
libusbdi
Description:
The usbd_alloc() function allocates a memory area that can then be used for data transfers. You should use the memory area allocated by this function, because it's allocated efficiently and because its physical address is quickly obtained via usbd_mphys().
![]() |
The usbd_setup_*() functions require usbd_alloc()'d data buffers. |
To free the memory, use usbd_free().
Returns:
A pointer to the start of the allocated memory, or NULL if there's not enough memory.
Errors:
- ENOMEM
- Insufficient memory available.
Classification:
| Safety: | |
|---|---|
| Cancellation point | No |
| Interrupt handler | No |
| Signal handler | No |
| Thread | Yes |
See also:
usbd_alloc_urb(), usbd_free(), usbd_free_urb(), usbd_mphys()
![]() |
![]() |
![]() |
![]() |

![[Previous]](prev.gif)
![[Contents]](contents.gif)
![[Index]](keyword_index.gif)
![[Next]](next.gif)
