\hypertarget{usb__debug_8c}{}\doxysection{dev/usb/usb\+\_\+debug.c File Reference}
\label{usb__debug_8c}\index{dev/usb/usb\_debug.c@{dev/usb/usb\_debug.c}}
{\ttfamily \#include $<$sys/stdint.\+h$>$}\newline
{\ttfamily \#include $<$sys/stddef.\+h$>$}\newline
{\ttfamily \#include $<$sys/param.\+h$>$}\newline
{\ttfamily \#include $<$sys/queue.\+h$>$}\newline
{\ttfamily \#include $<$sys/types.\+h$>$}\newline
{\ttfamily \#include $<$sys/systm.\+h$>$}\newline
{\ttfamily \#include $<$sys/kernel.\+h$>$}\newline
{\ttfamily \#include $<$sys/bus.\+h$>$}\newline
{\ttfamily \#include $<$sys/module.\+h$>$}\newline
{\ttfamily \#include $<$sys/lock.\+h$>$}\newline
{\ttfamily \#include $<$sys/mutex.\+h$>$}\newline
{\ttfamily \#include $<$sys/condvar.\+h$>$}\newline
{\ttfamily \#include $<$sys/sysctl.\+h$>$}\newline
{\ttfamily \#include $<$sys/sx.\+h$>$}\newline
{\ttfamily \#include $<$sys/unistd.\+h$>$}\newline
{\ttfamily \#include $<$sys/callout.\+h$>$}\newline
{\ttfamily \#include $<$sys/malloc.\+h$>$}\newline
{\ttfamily \#include $<$sys/priv.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usbdi.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+core.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+debug.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+process.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+device.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+busdma.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+transfer.\+h$>$}\newline
{\ttfamily \#include $<$ddb/ddb.\+h$>$}\newline
{\ttfamily \#include $<$ddb/db\+\_\+sym.\+h$>$}\newline
Include dependency graph for usb\+\_\+debug.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{db/d2f/usb__debug_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{usb__debug_8c_a2a16b9ed051450223c7d26240a705202}{SYSCTL\+\_\+\+NODE}} (\+\_\+hw, OID\+\_\+\+AUTO, \mbox{\hyperlink{usb__if_8m_adfa3f6da9c4881e494b180c4ebb06470}{usb}}, CTLFLAG\+\_\+\+RW$\vert$CTLFLAG\+\_\+\+MPSAFE, 0, \char`\"{}USB debugging\char`\"{})
\item 
\mbox{\hyperlink{usb__debug_8c_a0f7a704da0d53c7028148a8d6b75a225}{SYSCTL\+\_\+\+INT}} (\+\_\+hw\+\_\+usb, OID\+\_\+\+AUTO, \mbox{\hyperlink{cfumass_8c_ac3e1795766a80ec63b157951b4b9a7d4}{debug}}, CTLFLAG\+\_\+\+RWTUN, \&\mbox{\hyperlink{usb__debug_8h_ae3f6d70c719c77e228ccc905331d7784}{usb\+\_\+debug}}, 0, \char`\"{}Debug level\char`\"{})
\item 
void \mbox{\hyperlink{usb__debug_8c_a69432ceed2a34b88ad8531f66d8dca4b}{usb\+\_\+dump\+\_\+iface}} (struct \mbox{\hyperlink{structusb__interface}{usb\+\_\+interface}} $\ast$iface)
\item 
void \mbox{\hyperlink{usb__debug_8c_a939efe6e6f5cff79e949df72bd3e7b2d}{usb\+\_\+dump\+\_\+device}} (struct \mbox{\hyperlink{structusb__device}{usb\+\_\+device}} $\ast$udev)
\item 
void \mbox{\hyperlink{usb__debug_8c_a8cc7ca9131f0a3a3c89763991c8744ff}{usb\+\_\+dump\+\_\+queue}} (struct \mbox{\hyperlink{structusb__endpoint}{usb\+\_\+endpoint}} $\ast$ep)
\item 
void \mbox{\hyperlink{usb__debug_8c_a53569170d5f469d5a61bbbd1e6174155}{usb\+\_\+dump\+\_\+endpoint}} (struct \mbox{\hyperlink{structusb__endpoint}{usb\+\_\+endpoint}} $\ast$ep)
\item 
void \mbox{\hyperlink{usb__debug_8c_afe6108b077fb297947353cc4f5fce313}{usb\+\_\+dump\+\_\+xfer}} (struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$xfer)
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
int \mbox{\hyperlink{usb__debug_8c_ae3f6d70c719c77e228ccc905331d7784}{usb\+\_\+debug}} = 0
\end{DoxyCompactItemize}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{usb__debug_8c_a0f7a704da0d53c7028148a8d6b75a225}\label{usb__debug_8c_a0f7a704da0d53c7028148a8d6b75a225}} 
\index{usb\_debug.c@{usb\_debug.c}!SYSCTL\_INT@{SYSCTL\_INT}}
\index{SYSCTL\_INT@{SYSCTL\_INT}!usb\_debug.c@{usb\_debug.c}}
\doxysubsubsection{\texorpdfstring{SYSCTL\_INT()}{SYSCTL\_INT()}}
{\footnotesize\ttfamily SYSCTL\+\_\+\+INT (\begin{DoxyParamCaption}\item[{\+\_\+hw\+\_\+usb}]{,  }\item[{OID\+\_\+\+AUTO}]{,  }\item[{\mbox{\hyperlink{cfumass_8c_ac3e1795766a80ec63b157951b4b9a7d4}{debug}}}]{,  }\item[{CTLFLAG\+\_\+\+RWTUN}]{,  }\item[{\&}]{usb\+\_\+debug,  }\item[{0}]{,  }\item[{\char`\"{}Debug level\char`\"{}}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{usb__debug_8c_a2a16b9ed051450223c7d26240a705202}\label{usb__debug_8c_a2a16b9ed051450223c7d26240a705202}} 
\index{usb\_debug.c@{usb\_debug.c}!SYSCTL\_NODE@{SYSCTL\_NODE}}
\index{SYSCTL\_NODE@{SYSCTL\_NODE}!usb\_debug.c@{usb\_debug.c}}
\doxysubsubsection{\texorpdfstring{SYSCTL\_NODE()}{SYSCTL\_NODE()}}
{\footnotesize\ttfamily SYSCTL\+\_\+\+NODE (\begin{DoxyParamCaption}\item[{\+\_\+hw}]{,  }\item[{OID\+\_\+\+AUTO}]{,  }\item[{\mbox{\hyperlink{usb__if_8m_adfa3f6da9c4881e494b180c4ebb06470}{usb}}}]{,  }\item[{CTLFLAG\+\_\+\+RW$\vert$}]{CTLFLAG\+\_\+\+MPSAFE,  }\item[{0}]{,  }\item[{\char`\"{}USB debugging\char`\"{}}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{usb__debug_8c_a939efe6e6f5cff79e949df72bd3e7b2d}\label{usb__debug_8c_a939efe6e6f5cff79e949df72bd3e7b2d}} 
\index{usb\_debug.c@{usb\_debug.c}!usb\_dump\_device@{usb\_dump\_device}}
\index{usb\_dump\_device@{usb\_dump\_device}!usb\_debug.c@{usb\_debug.c}}
\doxysubsubsection{\texorpdfstring{usb\_dump\_device()}{usb\_dump\_device()}}
{\footnotesize\ttfamily void usb\+\_\+dump\+\_\+device (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__device}{usb\+\_\+device}} $\ast$}]{udev }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{usb__debug_8c_source_l00150}{150}} of file \mbox{\hyperlink{usb__debug_8c_source}{usb\+\_\+debug.\+c}}.



References \mbox{\hyperlink{usb__device_8h_source_l00243}{usb\+\_\+device\+::address}}, \mbox{\hyperlink{usb__device_8h_source_l00216}{usb\+\_\+device\+::bus}}, \mbox{\hyperlink{usb__device_8h_source_l00248}{usb\+\_\+device\+::curr\+\_\+config\+\_\+no}}, \mbox{\hyperlink{usb__device_8h_source_l00249}{usb\+\_\+device\+::depth}}, \mbox{\hyperlink{usb__device_8h_source_l00266}{usb\+\_\+device\+::flags}}, \mbox{\hyperlink{usb__device_8h_source_l00240}{usb\+\_\+device\+::langid}}, \mbox{\hyperlink{usb__device_8h_source_l00239}{usb\+\_\+device\+::power}}, \mbox{\hyperlink{usb__device_8h_source_l00095}{usb\+\_\+device\+\_\+flags\+::self\+\_\+powered}}, and \mbox{\hyperlink{usb__device_8h_source_l00235}{usb\+\_\+device\+::speed}}.

\mbox{\Hypertarget{usb__debug_8c_a53569170d5f469d5a61bbbd1e6174155}\label{usb__debug_8c_a53569170d5f469d5a61bbbd1e6174155}} 
\index{usb\_debug.c@{usb\_debug.c}!usb\_dump\_endpoint@{usb\_dump\_endpoint}}
\index{usb\_dump\_endpoint@{usb\_dump\_endpoint}!usb\_debug.c@{usb\_debug.c}}
\doxysubsubsection{\texorpdfstring{usb\_dump\_endpoint()}{usb\_dump\_endpoint()}}
{\footnotesize\ttfamily void usb\+\_\+dump\+\_\+endpoint (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__endpoint}{usb\+\_\+endpoint}} $\ast$}]{ep }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{usb__debug_8c_source_l00189}{189}} of file \mbox{\hyperlink{usb__debug_8c_source}{usb\+\_\+debug.\+c}}.



References \mbox{\hyperlink{usb_8h_source_l00528}{usb\+\_\+endpoint\+\_\+descriptor\+::b\+Endpoint\+Address}}, \mbox{\hyperlink{usbdi_8h_source_l00144}{usb\+\_\+endpoint\+::edesc}}, \mbox{\hyperlink{usbdi_8h_source_l00148}{usb\+\_\+endpoint\+::isoc\+\_\+next}}, \mbox{\hyperlink{usbdi_8h_source_l00150}{usb\+\_\+endpoint\+::toggle\+\_\+next}}, and \mbox{\hyperlink{usb__debug_8c_source_l00170}{usb\+\_\+dump\+\_\+queue()}}.



Referenced by \mbox{\hyperlink{usb__transfer_8c_source_l01719}{usbd\+\_\+transfer\+\_\+submit()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=333pt]{dc/da5/usb__debug_8c_a53569170d5f469d5a61bbbd1e6174155_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{dc/da5/usb__debug_8c_a53569170d5f469d5a61bbbd1e6174155_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{usb__debug_8c_a69432ceed2a34b88ad8531f66d8dca4b}\label{usb__debug_8c_a69432ceed2a34b88ad8531f66d8dca4b}} 
\index{usb\_debug.c@{usb\_debug.c}!usb\_dump\_iface@{usb\_dump\_iface}}
\index{usb\_dump\_iface@{usb\_dump\_iface}!usb\_debug.c@{usb\_debug.c}}
\doxysubsubsection{\texorpdfstring{usb\_dump\_iface()}{usb\_dump\_iface()}}
{\footnotesize\ttfamily void usb\+\_\+dump\+\_\+iface (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__interface}{usb\+\_\+interface}} $\ast$}]{iface }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{usb__debug_8c_source_l00134}{134}} of file \mbox{\hyperlink{usb__debug_8c_source}{usb\+\_\+debug.\+c}}.



References \mbox{\hyperlink{usbdi_8h_source_l00180}{usb\+\_\+interface\+::alt\+\_\+index}}, and \mbox{\hyperlink{usbdi_8h_source_l00175}{usb\+\_\+interface\+::idesc}}.

\mbox{\Hypertarget{usb__debug_8c_a8cc7ca9131f0a3a3c89763991c8744ff}\label{usb__debug_8c_a8cc7ca9131f0a3a3c89763991c8744ff}} 
\index{usb\_debug.c@{usb\_debug.c}!usb\_dump\_queue@{usb\_dump\_queue}}
\index{usb\_dump\_queue@{usb\_dump\_queue}!usb\_debug.c@{usb\_debug.c}}
\doxysubsubsection{\texorpdfstring{usb\_dump\_queue()}{usb\_dump\_queue()}}
{\footnotesize\ttfamily void usb\+\_\+dump\+\_\+queue (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__endpoint}{usb\+\_\+endpoint}} $\ast$}]{ep }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{usb__debug_8c_source_l00170}{170}} of file \mbox{\hyperlink{usb__debug_8c_source}{usb\+\_\+debug.\+c}}.



References \mbox{\hyperlink{usbdi_8h_source_l00142}{usb\+\_\+endpoint\+::endpoint\+\_\+q}}, and \mbox{\hyperlink{usb__freebsd_8h_source_l00083}{USB\+\_\+\+MAX\+\_\+\+EP\+\_\+\+STREAMS}}.



Referenced by \mbox{\hyperlink{usb__debug_8c_source_l00189}{usb\+\_\+dump\+\_\+endpoint()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{dc/da5/usb__debug_8c_a8cc7ca9131f0a3a3c89763991c8744ff_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{usb__debug_8c_afe6108b077fb297947353cc4f5fce313}\label{usb__debug_8c_afe6108b077fb297947353cc4f5fce313}} 
\index{usb\_debug.c@{usb\_debug.c}!usb\_dump\_xfer@{usb\_dump\_xfer}}
\index{usb\_dump\_xfer@{usb\_dump\_xfer}!usb\_debug.c@{usb\_debug.c}}
\doxysubsubsection{\texorpdfstring{usb\_dump\_xfer()}{usb\_dump\_xfer()}}
{\footnotesize\ttfamily void usb\+\_\+dump\+\_\+xfer (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$}]{xfer }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{usb__debug_8c_source_l00214}{214}} of file \mbox{\hyperlink{usb__debug_8c_source}{usb\+\_\+debug.\+c}}.



References \mbox{\hyperlink{usb__device_8h_source_l00243}{usb\+\_\+device\+::address}}, \mbox{\hyperlink{usb_8h_source_l00528}{usb\+\_\+endpoint\+\_\+descriptor\+::b\+Endpoint\+Address}}, \mbox{\hyperlink{usb_8h_source_l00539}{usb\+\_\+endpoint\+\_\+descriptor\+::bm\+Attributes}}, \mbox{\hyperlink{usb__device_8h_source_l00270}{usb\+\_\+device\+::ddesc}}, \mbox{\hyperlink{usbdi_8h_source_l00144}{usb\+\_\+endpoint\+::edesc}}, \mbox{\hyperlink{usb__core_8h_source_l00140}{usb\+\_\+xfer\+::endpoint}}, \mbox{\hyperlink{usb_8h_source_l00302}{usb\+\_\+device\+\_\+descriptor\+::id\+Product}}, \mbox{\hyperlink{usb_8h_source_l00301}{usb\+\_\+device\+\_\+descriptor\+::id\+Vendor}}, \mbox{\hyperlink{usb__transfer_8h_source_l00079}{usb\+\_\+xfer\+\_\+root\+::udev}}, \mbox{\hyperlink{usb__endian_8h_source_l00053}{UGETW}}, and \mbox{\hyperlink{usb__core_8h_source_l00141}{usb\+\_\+xfer\+::xroot}}.



\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{usb__debug_8c_ae3f6d70c719c77e228ccc905331d7784}\label{usb__debug_8c_ae3f6d70c719c77e228ccc905331d7784}} 
\index{usb\_debug.c@{usb\_debug.c}!usb\_debug@{usb\_debug}}
\index{usb\_debug@{usb\_debug}!usb\_debug.c@{usb\_debug.c}}
\doxysubsubsection{\texorpdfstring{usb\_debug}{usb\_debug}}
{\footnotesize\ttfamily int usb\+\_\+debug = 0}



Definition at line \mbox{\hyperlink{usb__debug_8c_source_l00069}{69}} of file \mbox{\hyperlink{usb__debug_8c_source}{usb\+\_\+debug.\+c}}.



Referenced by \mbox{\hyperlink{usb__hub__acpi_8c_source_l00265}{acpi\+\_\+uhub\+\_\+parse\+\_\+pld()}}, and \mbox{\hyperlink{usb__hub__acpi_8c_source_l00139}{acpi\+\_\+uhub\+\_\+parse\+\_\+upc()}}.

