#include <cafe/usb_mic.h>

int USBMICUninit(void);



Return Values

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


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 USBMICInit. An application's logic must be structured to avoid deadlocks when events are sent as a side effect of calling USBMICUninit.

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

USB Microphone Overview
Error Codes

Revision History

2013/05/08 Automated cleanup pass.
2012/07/09 Update for SDK2.06