\hypertarget{usb__template_8h}{}\doxysection{dev/usb/template/usb\+\_\+template.h File Reference}
\label{usb__template_8h}\index{dev/usb/template/usb\_template.h@{dev/usb/template/usb\_template.h}}
This graph shows which files directly or indirectly include this file\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/dc4/usb__template_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structusb__temp__packet__size}{usb\+\_\+temp\+\_\+packet\+\_\+size}}
\item 
struct \mbox{\hyperlink{structusb__temp__interval}{usb\+\_\+temp\+\_\+interval}}
\item 
struct \mbox{\hyperlink{structusb__temp__endpoint__desc}{usb\+\_\+temp\+\_\+endpoint\+\_\+desc}}
\item 
struct \mbox{\hyperlink{structusb__temp__interface__desc}{usb\+\_\+temp\+\_\+interface\+\_\+desc}}
\item 
struct \mbox{\hyperlink{structusb__temp__config__desc}{usb\+\_\+temp\+\_\+config\+\_\+desc}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}}
\item 
struct \mbox{\hyperlink{structusb__temp__data}{usb\+\_\+temp\+\_\+data}}
\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{usb__template_8h_a4eb1c883c2f66f7f4ae94383fd6e01e3}{USB\+\_\+\+TEMPLATE\+\_\+\+VENDOR}}~0x16c0
\item 
\#define \mbox{\hyperlink{usb__template_8h_a1a5f2918512e51fd0164ca8208965e24}{USB\+\_\+\+TEMPLATE\+\_\+\+MANUFACTURER}}~ \char`\"{}The Free\+BSD Project (https\+://www.\+Free\+BSD.\+org)\char`\"{}
\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef const void $\ast$() \mbox{\hyperlink{usb__template_8h_ab56131b3dcadea9f2be25f942a4f2af7}{usb\+\_\+temp\+\_\+get\+\_\+string\+\_\+desc\+\_\+t}}(uint16\+\_\+t lang\+\_\+id, uint8\+\_\+t string\+\_\+index)
\item 
typedef const void $\ast$() \mbox{\hyperlink{usb__template_8h_ab111925929cf0aecdc4029bf4fe9a869}{usb\+\_\+temp\+\_\+get\+\_\+vendor\+\_\+desc\+\_\+t}}(const struct \mbox{\hyperlink{structusb__device__request}{usb\+\_\+device\+\_\+request}} $\ast$\mbox{\hyperlink{usb__if_8m_accfb270fc1884a0d1e4b9a0fb6234f14}{req}}, uint16\+\_\+t $\ast$\mbox{\hyperlink{usb__if_8m_aaba3806a5156b2c2a6d6f95f0d95ed03}{plen}})
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \mbox{\hyperlink{usb__template_8h_ac9d752167a4066535a7fa9bedbcbfd04}{usb\+\_\+decode\+\_\+str\+\_\+desc}} (struct \mbox{\hyperlink{structusb__string__descriptor}{usb\+\_\+string\+\_\+descriptor}} $\ast$sd, char $\ast$buf, size\+\_\+t buflen)
\item 
\mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}} \mbox{\hyperlink{usb__template_8h_a0774bf7603669de4ba5852200dca8c11}{usb\+\_\+temp\+\_\+setup}} (struct \mbox{\hyperlink{structusb__device}{usb\+\_\+device}} $\ast$, const struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} $\ast$)
\item 
void \mbox{\hyperlink{usb__template_8h_a65df10b023c888c03cbc04dc683e36f4}{usb\+\_\+temp\+\_\+unsetup}} (struct \mbox{\hyperlink{structusb__device}{usb\+\_\+device}} $\ast$)
\item 
int \mbox{\hyperlink{usb__template_8h_ac1536ea79836e5972f25ba49ab7d0b40}{usb\+\_\+temp\+\_\+sysctl}} (SYSCTL\+\_\+\+HANDLER\+\_\+\+ARGS)
\item 
\mbox{\hyperlink{usb__template_8h_adba160627c6633b6f69be05c8e2e5ac2}{SYSCTL\+\_\+\+DECL}} (\+\_\+hw\+\_\+usb\+\_\+templates)
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_a413ac0cd9b9ca2134584a40cdb06e8a2}{usb\+\_\+template\+\_\+audio}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_af29c5e51284e133f290f6dc5e1e44cae}{usb\+\_\+template\+\_\+cdce}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_aedc880ca8b7086b12a1272d153255c2b}{usb\+\_\+template\+\_\+kbd}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_a32b896c86b732a715203c7b1948c6cb9}{usb\+\_\+template\+\_\+modem}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_a2f61f4a46537c9e66c7e5eade75c92c7}{usb\+\_\+template\+\_\+mouse}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_aaa15875bc0e9412eaa4140407bf3afa3}{usb\+\_\+template\+\_\+msc}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_a2cd386591316db266679b0682c489193}{usb\+\_\+template\+\_\+mtp}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_a699d47468cb3fa080b845f9ef81e9897}{usb\+\_\+template\+\_\+phone}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_a6aba6e4f855631d8c6942ff710fcd866}{usb\+\_\+template\+\_\+serialnet}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_adca25a20438c06c44568a17e6cbd4209}{usb\+\_\+template\+\_\+midi}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_a4dcf841fe7e2ceb0b4052bd671ed709c}{usb\+\_\+template\+\_\+multi}}
\item 
struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} \mbox{\hyperlink{usb__template_8h_a21fa41850851cbd6a414d004b1d751a7}{usb\+\_\+template\+\_\+cdceem}}
\end{DoxyCompactItemize}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{usb__template_8h_a1a5f2918512e51fd0164ca8208965e24}\label{usb__template_8h_a1a5f2918512e51fd0164ca8208965e24}} 
\index{usb\_template.h@{usb\_template.h}!USB\_TEMPLATE\_MANUFACTURER@{USB\_TEMPLATE\_MANUFACTURER}}
\index{USB\_TEMPLATE\_MANUFACTURER@{USB\_TEMPLATE\_MANUFACTURER}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{USB\_TEMPLATE\_MANUFACTURER}{USB\_TEMPLATE\_MANUFACTURER}}
{\footnotesize\ttfamily \#define USB\+\_\+\+TEMPLATE\+\_\+\+MANUFACTURER~ \char`\"{}The Free\+BSD Project (https\+://www.\+Free\+BSD.\+org)\char`\"{}}



Definition at line \mbox{\hyperlink{usb__template_8h_source_l00040}{40}} of file \mbox{\hyperlink{usb__template_8h_source}{usb\+\_\+template.\+h}}.

\mbox{\Hypertarget{usb__template_8h_a4eb1c883c2f66f7f4ae94383fd6e01e3}\label{usb__template_8h_a4eb1c883c2f66f7f4ae94383fd6e01e3}} 
\index{usb\_template.h@{usb\_template.h}!USB\_TEMPLATE\_VENDOR@{USB\_TEMPLATE\_VENDOR}}
\index{USB\_TEMPLATE\_VENDOR@{USB\_TEMPLATE\_VENDOR}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{USB\_TEMPLATE\_VENDOR}{USB\_TEMPLATE\_VENDOR}}
{\footnotesize\ttfamily \#define USB\+\_\+\+TEMPLATE\+\_\+\+VENDOR~0x16c0}



Definition at line \mbox{\hyperlink{usb__template_8h_source_l00039}{39}} of file \mbox{\hyperlink{usb__template_8h_source}{usb\+\_\+template.\+h}}.



\doxysubsection{Typedef Documentation}
\mbox{\Hypertarget{usb__template_8h_ab56131b3dcadea9f2be25f942a4f2af7}\label{usb__template_8h_ab56131b3dcadea9f2be25f942a4f2af7}} 
\index{usb\_template.h@{usb\_template.h}!usb\_temp\_get\_string\_desc\_t@{usb\_temp\_get\_string\_desc\_t}}
\index{usb\_temp\_get\_string\_desc\_t@{usb\_temp\_get\_string\_desc\_t}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_temp\_get\_string\_desc\_t}{usb\_temp\_get\_string\_desc\_t}}
{\footnotesize\ttfamily typedef const void $\ast$() usb\+\_\+temp\+\_\+get\+\_\+string\+\_\+desc\+\_\+t(uint16\+\_\+t lang\+\_\+id, uint8\+\_\+t string\+\_\+index)}



Definition at line \mbox{\hyperlink{usb__template_8h_source_l00044}{44}} of file \mbox{\hyperlink{usb__template_8h_source}{usb\+\_\+template.\+h}}.

\mbox{\Hypertarget{usb__template_8h_ab111925929cf0aecdc4029bf4fe9a869}\label{usb__template_8h_ab111925929cf0aecdc4029bf4fe9a869}} 
\index{usb\_template.h@{usb\_template.h}!usb\_temp\_get\_vendor\_desc\_t@{usb\_temp\_get\_vendor\_desc\_t}}
\index{usb\_temp\_get\_vendor\_desc\_t@{usb\_temp\_get\_vendor\_desc\_t}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_temp\_get\_vendor\_desc\_t}{usb\_temp\_get\_vendor\_desc\_t}}
{\footnotesize\ttfamily typedef const void $\ast$() usb\+\_\+temp\+\_\+get\+\_\+vendor\+\_\+desc\+\_\+t(const struct \mbox{\hyperlink{structusb__device__request}{usb\+\_\+device\+\_\+request}} $\ast$\mbox{\hyperlink{usb__if_8m_accfb270fc1884a0d1e4b9a0fb6234f14}{req}}, uint16\+\_\+t $\ast$\mbox{\hyperlink{usb__if_8m_aaba3806a5156b2c2a6d6f95f0d95ed03}{plen}})}



Definition at line \mbox{\hyperlink{usb__template_8h_source_l00045}{45}} of file \mbox{\hyperlink{usb__template_8h_source}{usb\+\_\+template.\+h}}.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{usb__template_8h_adba160627c6633b6f69be05c8e2e5ac2}\label{usb__template_8h_adba160627c6633b6f69be05c8e2e5ac2}} 
\index{usb\_template.h@{usb\_template.h}!SYSCTL\_DECL@{SYSCTL\_DECL}}
\index{SYSCTL\_DECL@{SYSCTL\_DECL}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{SYSCTL\_DECL()}{SYSCTL\_DECL()}}
{\footnotesize\ttfamily SYSCTL\+\_\+\+DECL (\begin{DoxyParamCaption}\item[{\+\_\+hw\+\_\+usb\+\_\+templates}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{usb__template_8h_ac9d752167a4066535a7fa9bedbcbfd04}\label{usb__template_8h_ac9d752167a4066535a7fa9bedbcbfd04}} 
\index{usb\_template.h@{usb\_template.h}!usb\_decode\_str\_desc@{usb\_decode\_str\_desc}}
\index{usb\_decode\_str\_desc@{usb\_decode\_str\_desc}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_decode\_str\_desc()}{usb\_decode\_str\_desc()}}
{\footnotesize\ttfamily void usb\+\_\+decode\+\_\+str\+\_\+desc (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__string__descriptor}{usb\+\_\+string\+\_\+descriptor}} $\ast$}]{sd,  }\item[{char $\ast$}]{buf,  }\item[{size\+\_\+t}]{buflen }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{usb__template_8c_source_l00151}{151}} of file \mbox{\hyperlink{usb__template_8c_source}{usb\+\_\+template.\+c}}.



References \mbox{\hyperlink{usb_8h_source_l00577}{usb\+\_\+string\+\_\+descriptor\+::b\+Length}}, \mbox{\hyperlink{usb_8h_source_l00579}{usb\+\_\+string\+\_\+descriptor\+::b\+String}}, and \mbox{\hyperlink{usb__endian_8h_source_l00053}{UGETW}}.



Referenced by \mbox{\hyperlink{usb__template_8c_source_l00173}{usb\+\_\+temp\+\_\+sysctl()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{db/daf/usb__template_8h_ac9d752167a4066535a7fa9bedbcbfd04_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{usb__template_8h_a0774bf7603669de4ba5852200dca8c11}\label{usb__template_8h_a0774bf7603669de4ba5852200dca8c11}} 
\index{usb\_template.h@{usb\_template.h}!usb\_temp\_setup@{usb\_temp\_setup}}
\index{usb\_temp\_setup@{usb\_temp\_setup}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_temp\_setup()}{usb\_temp\_setup()}}
{\footnotesize\ttfamily \mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}} \mbox{\hyperlink{structusb__temp__setup}{usb\+\_\+temp\+\_\+setup}} (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__device}{usb\+\_\+device}} $\ast$}]{udev,  }\item[{const struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} $\ast$}]{tdd }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{usb__template_8c_source_l01306}{1306}} of file \mbox{\hyperlink{usb__template_8c_source}{usb\+\_\+template.\+c}}.



References \mbox{\hyperlink{usb__device_8h_source_l00154}{usb\+\_\+temp\+\_\+setup\+::buf}}, \mbox{\hyperlink{usb__device_8h_source_l00162}{usb\+\_\+temp\+\_\+setup\+::err}}, \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}}, \mbox{\hyperlink{usb__device_8h_source_l00266}{usb\+\_\+device\+::flags}}, \mbox{\hyperlink{if__run_8c_source_l00612}{n}}, \mbox{\hyperlink{usb__device_8h_source_l00289}{usb\+\_\+device\+::scratch}}, \mbox{\hyperlink{usb__device_8h_source_l00095}{usb\+\_\+device\+\_\+flags\+::self\+\_\+powered}}, \mbox{\hyperlink{usb__device_8h_source_l00157}{usb\+\_\+temp\+\_\+setup\+::self\+\_\+powered}}, \mbox{\hyperlink{usb__device_8h_source_l00155}{usb\+\_\+temp\+\_\+setup\+::size}}, \mbox{\hyperlink{usb__device_8h_source_l00235}{usb\+\_\+device\+::speed}}, \mbox{\hyperlink{usb__device_8h_source_l00171}{usb\+\_\+device\+\_\+scratch\+::temp\+\_\+setup}}, \mbox{\hyperlink{usbdi_8h_source_l00049}{USB\+\_\+\+ERR\+\_\+\+INVAL}}, \mbox{\hyperlink{usbdi_8h_source_l00050}{USB\+\_\+\+ERR\+\_\+\+NOMEM}}, \mbox{\hyperlink{usb__template_8c_source_l00918}{usb\+\_\+hw\+\_\+ep\+\_\+resolve()}}, \mbox{\hyperlink{usb__template_8c_source_l00512}{usb\+\_\+make\+\_\+device\+\_\+desc()}}, \mbox{\hyperlink{usb__device_8h_source_l00156}{usb\+\_\+temp\+\_\+setup\+::usb\+\_\+speed}}, \mbox{\hyperlink{usb__template_8c_source_l01108}{usb\+\_\+temp\+\_\+get\+\_\+config\+\_\+desc()}}, \mbox{\hyperlink{usb__template_8c_source_l01062}{usb\+\_\+temp\+\_\+get\+\_\+device\+\_\+desc()}}, \mbox{\hyperlink{usb__template_8c_source_l01409}{usb\+\_\+temp\+\_\+unsetup()}}, \mbox{\hyperlink{usb__device_8h_source_l00223}{usb\+\_\+device\+::usb\+\_\+template\+\_\+ptr}}, \mbox{\hyperlink{usb__request_8c_source_l01303}{usbd\+\_\+alloc\+\_\+config\+\_\+desc()}}, \mbox{\hyperlink{usb__device_8c_source_l02983}{usbd\+\_\+ctrl\+\_\+lock()}}, \mbox{\hyperlink{usb__device_8c_source_l02999}{usbd\+\_\+ctrl\+\_\+unlock()}}, and \mbox{\hyperlink{usb__error_8c_source_l00093}{usbd\+\_\+errstr()}}.



Referenced by \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{db/daf/usb__template_8h_a0774bf7603669de4ba5852200dca8c11_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{db/daf/usb__template_8h_a0774bf7603669de4ba5852200dca8c11_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{usb__template_8h_ac1536ea79836e5972f25ba49ab7d0b40}\label{usb__template_8h_ac1536ea79836e5972f25ba49ab7d0b40}} 
\index{usb\_template.h@{usb\_template.h}!usb\_temp\_sysctl@{usb\_temp\_sysctl}}
\index{usb\_temp\_sysctl@{usb\_temp\_sysctl}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_temp\_sysctl()}{usb\_temp\_sysctl()}}
{\footnotesize\ttfamily int usb\+\_\+temp\+\_\+sysctl (\begin{DoxyParamCaption}\item[{SYSCTL\+\_\+\+HANDLER\+\_\+\+ARGS}]{ }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{usb__template_8c_source_l00173}{173}} of file \mbox{\hyperlink{usb__template_8c_source}{usb\+\_\+template.\+c}}.



References \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}}, \mbox{\hyperlink{ehci_8h_source_l00041}{len}}, \mbox{\hyperlink{usb__if_8m_source_l00051}{req}}, \mbox{\hyperlink{usb__template_8c_source_l00151}{usb\+\_\+decode\+\_\+str\+\_\+desc()}}, and \mbox{\hyperlink{usb__util_8c_source_l00193}{usb\+\_\+make\+\_\+str\+\_\+desc()}}.



Referenced by \mbox{\hyperlink{usb__template__audio_8c_source_l00413}{audio\+\_\+init()}}, \mbox{\hyperlink{usb__template__cdceem_8c_source_l00202}{cdceem\+\_\+init()}}, \mbox{\hyperlink{usb__template__cdce_8c_source_l00280}{eth\+\_\+init()}}, \mbox{\hyperlink{usb__template__kbd_8c_source_l00238}{kbd\+\_\+init()}}, \mbox{\hyperlink{usb__template__midi_8c_source_l00259}{midi\+\_\+init()}}, \mbox{\hyperlink{usb__template__modem_8c_source_l00273}{modem\+\_\+init()}}, \mbox{\hyperlink{usb__template__mouse_8c_source_l00236}{mouse\+\_\+init()}}, \mbox{\hyperlink{usb__template__msc_8c_source_l00201}{msc\+\_\+init()}}, \mbox{\hyperlink{usb__template__mtp_8c_source_l00268}{mtp\+\_\+init()}}, \mbox{\hyperlink{usb__template__multi_8c_source_l00432}{multi\+\_\+init()}}, \mbox{\hyperlink{usb__template__phone_8c_source_l00431}{phone\+\_\+init()}}, and \mbox{\hyperlink{usb__template__serialnet_8c_source_l00388}{serialnet\+\_\+init()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=334pt]{db/daf/usb__template_8h_ac1536ea79836e5972f25ba49ab7d0b40_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=294pt]{db/daf/usb__template_8h_ac1536ea79836e5972f25ba49ab7d0b40_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{usb__template_8h_a65df10b023c888c03cbc04dc683e36f4}\label{usb__template_8h_a65df10b023c888c03cbc04dc683e36f4}} 
\index{usb\_template.h@{usb\_template.h}!usb\_temp\_unsetup@{usb\_temp\_unsetup}}
\index{usb\_temp\_unsetup@{usb\_temp\_unsetup}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_temp\_unsetup()}{usb\_temp\_unsetup()}}
{\footnotesize\ttfamily void usb\+\_\+temp\+\_\+unsetup (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__device}{usb\+\_\+device}} $\ast$}]{udev }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{usb__template_8c_source_l01409}{1409}} of file \mbox{\hyperlink{usb__template_8c_source}{usb\+\_\+template.\+c}}.



References \mbox{\hyperlink{usb__device_8h_source_l00223}{usb\+\_\+device\+::usb\+\_\+template\+\_\+ptr}}, and \mbox{\hyperlink{usb__request_8c_source_l01323}{usbd\+\_\+free\+\_\+config\+\_\+desc()}}.



Referenced by \mbox{\hyperlink{usb__template_8c_source_l01465}{usb\+\_\+temp\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01306}{usb\+\_\+temp\+\_\+setup()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{db/daf/usb__template_8h_a65df10b023c888c03cbc04dc683e36f4_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{db/daf/usb__template_8h_a65df10b023c888c03cbc04dc683e36f4_icgraph}
\end{center}
\end{figure}


\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{usb__template_8h_a413ac0cd9b9ca2134584a40cdb06e8a2}\label{usb__template_8h_a413ac0cd9b9ca2134584a40cdb06e8a2}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_audio@{usb\_template\_audio}}
\index{usb\_template\_audio@{usb\_template\_audio}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_audio}{usb\_template\_audio}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+audio\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__audio_8c_source_l00366}{366}} of file \mbox{\hyperlink{usb__template__audio_8c_source}{usb\+\_\+template\+\_\+audio.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__audio_8c_source_l00413}{audio\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_af29c5e51284e133f290f6dc5e1e44cae}\label{usb__template_8h_af29c5e51284e133f290f6dc5e1e44cae}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_cdce@{usb\_template\_cdce}}
\index{usb\_template\_cdce@{usb\_template\_cdce}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_cdce}{usb\_template\_cdce}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+cdce\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__cdce_8c_source_l00232}{232}} of file \mbox{\hyperlink{usb__template__cdce_8c_source}{usb\+\_\+template\+\_\+cdce.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__cdce_8c_source_l00280}{eth\+\_\+init()}}, \mbox{\hyperlink{usb__template__phone_8c_source_l00431}{phone\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_a21fa41850851cbd6a414d004b1d751a7}\label{usb__template_8h_a21fa41850851cbd6a414d004b1d751a7}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_cdceem@{usb\_template\_cdceem}}
\index{usb\_template\_cdceem@{usb\_template\_cdceem}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_cdceem}{usb\_template\_cdceem}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+cdceem\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__cdceem_8c_source_l00156}{156}} of file \mbox{\hyperlink{usb__template__cdceem_8c_source}{usb\+\_\+template\+\_\+cdceem.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__cdceem_8c_source_l00202}{cdceem\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_aedc880ca8b7086b12a1272d153255c2b}\label{usb__template_8h_aedc880ca8b7086b12a1272d153255c2b}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_kbd@{usb\_template\_kbd}}
\index{usb\_template\_kbd@{usb\_template\_kbd}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_kbd}{usb\_template\_kbd}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+kbd\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__kbd_8c_source_l00173}{173}} of file \mbox{\hyperlink{usb__template__kbd_8c_source}{usb\+\_\+template\+\_\+kbd.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__kbd_8c_source_l00238}{kbd\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_adca25a20438c06c44568a17e6cbd4209}\label{usb__template_8h_adca25a20438c06c44568a17e6cbd4209}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_midi@{usb\_template\_midi}}
\index{usb\_template\_midi@{usb\_template\_midi}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_midi}{usb\_template\_midi}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+midi\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__midi_8c_source_l00214}{214}} of file \mbox{\hyperlink{usb__template__midi_8c_source}{usb\+\_\+template\+\_\+midi.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__midi_8c_source_l00259}{midi\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_a32b896c86b732a715203c7b1948c6cb9}\label{usb__template_8h_a32b896c86b732a715203c7b1948c6cb9}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_modem@{usb\_template\_modem}}
\index{usb\_template\_modem@{usb\_template\_modem}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_modem}{usb\_template\_modem}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+modem\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__modem_8c_source_l00214}{214}} of file \mbox{\hyperlink{usb__template__modem_8c_source}{usb\+\_\+template\+\_\+modem.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__modem_8c_source_l00273}{modem\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_a2f61f4a46537c9e66c7e5eade75c92c7}\label{usb__template_8h_a2f61f4a46537c9e66c7e5eade75c92c7}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_mouse@{usb\_template\_mouse}}
\index{usb\_template\_mouse@{usb\_template\_mouse}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_mouse}{usb\_template\_mouse}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+mouse\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__mouse_8c_source_l00171}{171}} of file \mbox{\hyperlink{usb__template__mouse_8c_source}{usb\+\_\+template\+\_\+mouse.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__mouse_8c_source_l00236}{mouse\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_aaa15875bc0e9412eaa4140407bf3afa3}\label{usb__template_8h_aaa15875bc0e9412eaa4140407bf3afa3}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_msc@{usb\_template\_msc}}
\index{usb\_template\_msc@{usb\_template\_msc}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_msc}{usb\_template\_msc}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+msc\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__msc_8c_source_l00155}{155}} of file \mbox{\hyperlink{usb__template__msc_8c_source}{usb\+\_\+template\+\_\+msc.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__msc_8c_source_l00201}{msc\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_a2cd386591316db266679b0682c489193}\label{usb__template_8h_a2cd386591316db266679b0682c489193}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_mtp@{usb\_template\_mtp}}
\index{usb\_template\_mtp@{usb\_template\_mtp}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_mtp}{usb\_template\_mtp}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+mtp\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__mtp_8c_source_l00177}{177}} of file \mbox{\hyperlink{usb__template__mtp_8c_source}{usb\+\_\+template\+\_\+mtp.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__mtp_8c_source_l00268}{mtp\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_a4dcf841fe7e2ceb0b4052bd671ed709c}\label{usb__template_8h_a4dcf841fe7e2ceb0b4052bd671ed709c}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_multi@{usb\_template\_multi}}
\index{usb\_template\_multi@{usb\_template\_multi}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_multi}{usb\_template\_multi}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+multi\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__multi_8c_source_l00382}{382}} of file \mbox{\hyperlink{usb__template__multi_8c_source}{usb\+\_\+template\+\_\+multi.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__multi_8c_source_l00432}{multi\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_a699d47468cb3fa080b845f9ef81e9897}\label{usb__template_8h_a699d47468cb3fa080b845f9ef81e9897}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_phone@{usb\_template\_phone}}
\index{usb\_template\_phone@{usb\_template\_phone}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_phone}{usb\_template\_phone}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+phone\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__phone_8c_source_l00363}{363}} of file \mbox{\hyperlink{usb__template__phone_8c_source}{usb\+\_\+template\+\_\+phone.\+c}}.



Referenced by \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

\mbox{\Hypertarget{usb__template_8h_a6aba6e4f855631d8c6942ff710fcd866}\label{usb__template_8h_a6aba6e4f855631d8c6942ff710fcd866}} 
\index{usb\_template.h@{usb\_template.h}!usb\_template\_serialnet@{usb\_template\_serialnet}}
\index{usb\_template\_serialnet@{usb\_template\_serialnet}!usb\_template.h@{usb\_template.h}}
\doxysubsubsection{\texorpdfstring{usb\_template\_serialnet}{usb\_template\_serialnet}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structusb__temp__device__desc}{usb\+\_\+temp\+\_\+device\+\_\+desc}} usb\+\_\+template\+\_\+serialnet\hspace{0.3cm}{\ttfamily [extern]}}



Definition at line \mbox{\hyperlink{usb__template__serialnet_8c_source_l00339}{339}} of file \mbox{\hyperlink{usb__template__serialnet_8c_source}{usb\+\_\+template\+\_\+serialnet.\+c}}.



Referenced by \mbox{\hyperlink{usb__template__serialnet_8c_source_l00388}{serialnet\+\_\+init()}}, and \mbox{\hyperlink{usb__template_8c_source_l01416}{usb\+\_\+temp\+\_\+setup\+\_\+by\+\_\+index()}}.

