UACUninit

Syntax

#include <cafe/uac.h>

int UACUninit(void);

Parameters

None.

Return Values

A value of zero indicates success and any other value the type of error that was encountered.

Description

This function can be called at any time to uninitialize and shut down the UAC stack. Upon return, the UAC stack is in a quiescent state and all resources, such as the shared ring buffer or callback functions are released.

This function is typically called in the process of an orderly shut down of the UAC stack. That can be in response to releasing foreground or when use of UAC is no longer required by an application.

As part of the process of uninitializing the UAC driver stack, attached devices will be detached and notifications will be sent to the event handler that was provided with UACInit. An application's logic must be structured to avoid deadlocks when events are sent as a side effect of calling UACUninit.

For more information, see the overview on foreground and background switching and how to handle the required processing.

This function requires tens milliseconds to complete, although much of that time is spent waiting on synchronization objects. It is not recommended to call this function from a timing sensitive thread.

Do Not Call From

Background Do not call this function from the background.
Multiple threads This function is not thread-safe.
Callbacks Do not call this function from any callback function.
Interrupt handler Do not call this function from any interrupt handler.
Exception handler Do not call this function from any exception handler.

See Also

UAC Overview
UACInit
usb_event_handler_t
Error Codes

Revision History

2013/05/29 Initial version.


CONFIDENTIAL