\hypertarget{umodem_8c}{}\doxysection{dev/usb/serial/umodem.c File Reference}
\label{umodem_8c}\index{dev/usb/serial/umodem.c@{dev/usb/serial/umodem.c}}
{\ttfamily \#include $<$sys/cdefs.\+h$>$}\newline
{\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/usbdi\+\_\+util.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usbhid.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+cdc.\+h$>$}\newline
{\ttfamily \#include \char`\"{}usbdevs.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}usb\+\_\+if.\+h\char`\"{}}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+ioctl.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+debug.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/usb\+\_\+process.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/quirk/usb\+\_\+quirk.\+h$>$}\newline
{\ttfamily \#include $<$dev/usb/serial/usb\+\_\+serial.\+h$>$}\newline
Include dependency graph for umodem.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/d22/umodem_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structumodem__softc}{umodem\+\_\+softc}}
\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{umodem_8c_a927dd6f59caf10a2991dfb564bcbb1e1}{USB\+\_\+\+DEBUG\+\_\+\+VAR}}~umodem\+\_\+debug
\item 
\#define \mbox{\hyperlink{umodem_8c_af621910bb0c23bbb1279c708bd053fe1}{UMODEM\+\_\+\+BUF\+\_\+\+SIZE}}~1024
\item 
\#define \mbox{\hyperlink{umodem_8c_a7312420ca7775df64dd249dc51cee54d}{UMODEM\+\_\+\+MODVER}}~1 /$\ast$ module version $\ast$/
\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \{ \newline
\mbox{\hyperlink{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26aafca144c569ef34461caa5d2335e4e55}{UMODEM\+\_\+\+BULK\+\_\+\+WR}}
, \mbox{\hyperlink{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a394f9479bb4e7d9ccf6b51d8b585007a}{UMODEM\+\_\+\+BULK\+\_\+\+RD}}
, \mbox{\hyperlink{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a7dbf79ad8e33baca79f9d98b41c0fda3}{UMODEM\+\_\+\+INTR\+\_\+\+WR}}
, \mbox{\hyperlink{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a3462e2b95337486b5447f384f9aee375}{UMODEM\+\_\+\+INTR\+\_\+\+RD}}
, \newline
\mbox{\hyperlink{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a6234f768713f542994cd5078b9c196b8}{UMODEM\+\_\+\+N\+\_\+\+TRANSFER}}
 \}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{umodem_8c_a8c3ef283470a68cd30afe9b8a72cb60f}{\+\_\+\+\_\+\+FBSDID}} (\char`\"{}\$Free\+BSD\$\char`\"{})
\item 
static void \mbox{\hyperlink{umodem_8c_ac3bca544e058f7323390d69d46f68b9e}{umodem\+\_\+free\+\_\+softc}} (struct \mbox{\hyperlink{structumodem__softc}{umodem\+\_\+softc}} $\ast$)
\item 
static void \mbox{\hyperlink{umodem_8c_a7ab37ea0f05664c10297223f621c2f76}{umodem\+\_\+free}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$)
\item 
static void \mbox{\hyperlink{umodem_8c_a0ad1fda686b465fc51c241983e8e0fde}{umodem\+\_\+start\+\_\+read}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$)
\item 
static void \mbox{\hyperlink{umodem_8c_a768f675dd8c25eb0e3ab628b1c57a0d9}{umodem\+\_\+stop\+\_\+read}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$)
\item 
static void \mbox{\hyperlink{umodem_8c_aa4b0c9051304d2ac83a921a7efd27c84}{umodem\+\_\+start\+\_\+write}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$)
\item 
static void \mbox{\hyperlink{umodem_8c_a3ffbaf21f3016632d08a187f55cd1668}{umodem\+\_\+stop\+\_\+write}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$)
\item 
static void \mbox{\hyperlink{umodem_8c_ae38407ca7254f3bd0c2122b686fff54d}{umodem\+\_\+get\+\_\+caps}} (struct \mbox{\hyperlink{structusb__attach__arg}{usb\+\_\+attach\+\_\+arg}} $\ast$, uint8\+\_\+t $\ast$, uint8\+\_\+t $\ast$)
\item 
static void \mbox{\hyperlink{umodem_8c_af26d7682b163671c7f5ce8d5d7bf6057}{umodem\+\_\+cfg\+\_\+get\+\_\+status}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$, uint8\+\_\+t $\ast$, uint8\+\_\+t $\ast$)
\item 
static int \mbox{\hyperlink{umodem_8c_a3e44afa97272de488b3a5984bb8ae666}{umodem\+\_\+pre\+\_\+param}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$, struct termios $\ast$)
\item 
static void \mbox{\hyperlink{umodem_8c_a4274784ee61a4221c71f6f981f90c963}{umodem\+\_\+cfg\+\_\+param}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$, struct termios $\ast$)
\item 
static int \mbox{\hyperlink{umodem_8c_a09e1d0f6824d4cd694348e9a193574a2}{umodem\+\_\+ioctl}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$, uint32\+\_\+t, caddr\+\_\+t, int, struct thread $\ast$)
\item 
static void \mbox{\hyperlink{umodem_8c_a08f557bf9cc8b1f7bceffbd7f109a388}{umodem\+\_\+cfg\+\_\+set\+\_\+dtr}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$, uint8\+\_\+t)
\item 
static void \mbox{\hyperlink{umodem_8c_a6e2be7254ddecd49b02f89f2a1d7e449}{umodem\+\_\+cfg\+\_\+set\+\_\+rts}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$, uint8\+\_\+t)
\item 
static void \mbox{\hyperlink{umodem_8c_a0c2e92da009d5b82f80d13c2f9ee608a}{umodem\+\_\+cfg\+\_\+set\+\_\+break}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$, uint8\+\_\+t)
\item 
static void $\ast$ \mbox{\hyperlink{umodem_8c_a62024211158c65738bef9c4d62f67616}{umodem\+\_\+get\+\_\+desc}} (struct \mbox{\hyperlink{structusb__attach__arg}{usb\+\_\+attach\+\_\+arg}} $\ast$, uint8\+\_\+t, uint8\+\_\+t)
\item 
static \mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}} \mbox{\hyperlink{umodem_8c_a530f336c357cdd7c99e59bc1807da837}{umodem\+\_\+set\+\_\+comm\+\_\+feature}} (struct \mbox{\hyperlink{structusb__device}{usb\+\_\+device}} $\ast$, uint8\+\_\+t, uint16\+\_\+t, uint16\+\_\+t)
\item 
static void \mbox{\hyperlink{umodem_8c_a8443dd23062cd42966e6d7ff33405f26}{umodem\+\_\+poll}} (struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$ucom)
\item 
static void \mbox{\hyperlink{umodem_8c_a1be6b9f2b8327bf2e0028c4145c0d79c}{umodem\+\_\+find\+\_\+data\+\_\+iface}} (struct \mbox{\hyperlink{structusb__attach__arg}{usb\+\_\+attach\+\_\+arg}} $\ast$uaa, uint8\+\_\+t, uint8\+\_\+t $\ast$, uint8\+\_\+t $\ast$)
\item 
\mbox{\hyperlink{umodem_8c_a7b23812d217be1a6412bc4a45c38cfff}{DRIVER\+\_\+\+MODULE}} (umodem, uhub, \mbox{\hyperlink{umodem_8c_a0f2a32e26ada3e6851806e8ac9698ecd}{umodem\+\_\+driver}}, \mbox{\hyperlink{umodem_8c_a18e41f6097b22aeedf7f73e46045759e}{umodem\+\_\+devclass}}, NULL, 0)
\item 
\mbox{\hyperlink{umodem_8c_a15e93b7a2380f183ed9bc3cfd27ec1bd}{MODULE\+\_\+\+DEPEND}} (umodem, ucom, 1, 1, 1)
\item 
\mbox{\hyperlink{umodem_8c_aaae00851d1ce3f79a8f3831a183afbd1}{MODULE\+\_\+\+DEPEND}} (umodem, \mbox{\hyperlink{usb__if_8m_adfa3f6da9c4881e494b180c4ebb06470}{usb}}, 1, 1, 1)
\item 
\mbox{\hyperlink{umodem_8c_ac388ca4d41892e0acdc7e3665bcc295c}{MODULE\+\_\+\+VERSION}} (umodem, \mbox{\hyperlink{umodem_8c_a7312420ca7775df64dd249dc51cee54d}{UMODEM\+\_\+\+MODVER}})
\item 
\mbox{\hyperlink{umodem_8c_afc828e7bac9ee7ad4ae4d7d9ce8b3334}{USB\+\_\+\+PNP\+\_\+\+DUAL\+\_\+\+INFO}} (\mbox{\hyperlink{umodem_8c_a4851e1c262b7e4937af0c029789fa9b2}{umodem\+\_\+dual\+\_\+devs}})
\item 
\mbox{\hyperlink{umodem_8c_a22969523b113c1d1f32cd1f0ace00ef2}{USB\+\_\+\+PNP\+\_\+\+HOST\+\_\+\+INFO}} (\mbox{\hyperlink{umodem_8c_af4743736359dccaaf6c053d97b8a8a5f}{umodem\+\_\+host\+\_\+devs}})
\item 
static int \mbox{\hyperlink{umodem_8c_a63149bd8d37faf9598b1e857c27dbb3c}{umodem\+\_\+probe}} (device\+\_\+t \textbf{ dev})
\item 
static int \mbox{\hyperlink{umodem_8c_a1d740360f6bb63f32a384a0b1a3d04c1}{umodem\+\_\+attach}} (device\+\_\+t \textbf{ dev})
\item 
static void \mbox{\hyperlink{umodem_8c_a6c582495baff2b2996a6ea7f17db7ca0}{umodem\+\_\+intr\+\_\+write\+\_\+callback}} (struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$xfer, \mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}} \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}})
\item 
static void \mbox{\hyperlink{umodem_8c_a8ad62758d8f35e351bd144573af9bbd4}{umodem\+\_\+intr\+\_\+read\+\_\+callback}} (struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$xfer, \mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}} \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}})
\item 
static void \mbox{\hyperlink{umodem_8c_a75aef2b0d11e61aa70b1a02a00fa59b3}{umodem\+\_\+write\+\_\+callback}} (struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$xfer, \mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}} \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}})
\item 
static void \mbox{\hyperlink{umodem_8c_ae9ddbabf035998ee61c9c7d166cb454e}{umodem\+\_\+read\+\_\+callback}} (struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$xfer, \mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}} \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}})
\item 
static int \mbox{\hyperlink{umodem_8c_af149fe83ed6ee13cc74f5da64b329ded}{umodem\+\_\+detach}} (device\+\_\+t \textbf{ dev})
\item 
\mbox{\hyperlink{umodem_8c_ad0b55bfe38114b2909231e0b3ac43a30}{UCOM\+\_\+\+UNLOAD\+\_\+\+DRAIN}} (umodem)
\item 
static int \mbox{\hyperlink{umodem_8c_a3fb547c665356a03f40e340feb4ed829}{umodem\+\_\+handle\+\_\+request}} (device\+\_\+t \textbf{ dev}, const void $\ast$preq, void $\ast$$\ast$\mbox{\hyperlink{usb__if_8m_a074c17a419327b41805af2dd7cb152e7}{pptr}}, uint16\+\_\+t $\ast$\mbox{\hyperlink{usb__if_8m_aaba3806a5156b2c2a6d6f95f0d95ed03}{plen}}, uint16\+\_\+t \mbox{\hyperlink{usb__if_8m_ac681806181c80437cfab37335f62ff39}{offset}}, uint8\+\_\+t $\ast$\mbox{\hyperlink{usb__if_8m_a8a16a0091a5793ece040278427496b23}{pstate}})
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static const \mbox{\hyperlink{usbdi_8h_af64e69291bcbb3b3649ec36583d47c87}{STRUCT\+\_\+\+USB\+\_\+\+DUAL\+\_\+\+ID}} \mbox{\hyperlink{umodem_8c_a4851e1c262b7e4937af0c029789fa9b2}{umodem\+\_\+dual\+\_\+devs}} \mbox{[}$\,$\mbox{]}
\item 
static const \mbox{\hyperlink{usbdi_8h_acf836fd8d6349b66a31f45420728da8d}{STRUCT\+\_\+\+USB\+\_\+\+HOST\+\_\+\+ID}} \mbox{\hyperlink{umodem_8c_af4743736359dccaaf6c053d97b8a8a5f}{umodem\+\_\+host\+\_\+devs}} \mbox{[}$\,$\mbox{]}
\item 
static device\+\_\+probe\+\_\+t \mbox{\hyperlink{umodem_8c_a4f1c8881b927e1d677207bf0a57a45ae}{umodem\+\_\+probe}}
\item 
static device\+\_\+attach\+\_\+t \mbox{\hyperlink{umodem_8c_a8260d7415a69f8a319c0d6f761784816}{umodem\+\_\+attach}}
\item 
static device\+\_\+detach\+\_\+t \mbox{\hyperlink{umodem_8c_a89ac9df44f5a591071b56d140edd7aa6}{umodem\+\_\+detach}}
\item 
static usb\+\_\+handle\+\_\+request\+\_\+t \mbox{\hyperlink{umodem_8c_a72165ba972dafa9b19f45a63052ed769}{umodem\+\_\+handle\+\_\+request}}
\item 
static \mbox{\hyperlink{usbdi_8h_aad1085e1e87347ed71e554c4b0209239}{usb\+\_\+callback\+\_\+t}} \mbox{\hyperlink{umodem_8c_ac8741afef4bcfec3b7a2880f2aafe674}{umodem\+\_\+intr\+\_\+read\+\_\+callback}}
\item 
static \mbox{\hyperlink{usbdi_8h_aad1085e1e87347ed71e554c4b0209239}{usb\+\_\+callback\+\_\+t}} \mbox{\hyperlink{umodem_8c_aaaeb2c6ff8b7d424f388740ec4745534}{umodem\+\_\+intr\+\_\+write\+\_\+callback}}
\item 
static \mbox{\hyperlink{usbdi_8h_aad1085e1e87347ed71e554c4b0209239}{usb\+\_\+callback\+\_\+t}} \mbox{\hyperlink{umodem_8c_a1bd45e9812900e75f81d07060c44a364}{umodem\+\_\+write\+\_\+callback}}
\item 
static \mbox{\hyperlink{usbdi_8h_aad1085e1e87347ed71e554c4b0209239}{usb\+\_\+callback\+\_\+t}} \mbox{\hyperlink{umodem_8c_ae9fa59a604623434cdd4b0b21edeea8f}{umodem\+\_\+read\+\_\+callback}}
\item 
static const struct \mbox{\hyperlink{structusb__config}{usb\+\_\+config}} \mbox{\hyperlink{umodem_8c_a43c44403e0ffc9d687f3241b3b4d595b}{umodem\+\_\+config}} \mbox{[}\mbox{\hyperlink{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a6234f768713f542994cd5078b9c196b8}{UMODEM\+\_\+\+N\+\_\+\+TRANSFER}}\mbox{]}
\item 
static const struct \mbox{\hyperlink{structucom__callback}{ucom\+\_\+callback}} \mbox{\hyperlink{umodem_8c_aad6b75d5a33ee23fbf7493b44581f8b0}{umodem\+\_\+callback}}
\item 
static device\+\_\+method\+\_\+t \mbox{\hyperlink{umodem_8c_a7a0769ed28af5e3c80a4cc07488e8298}{umodem\+\_\+methods}} \mbox{[}$\,$\mbox{]}
\item 
static devclass\+\_\+t \mbox{\hyperlink{umodem_8c_a18e41f6097b22aeedf7f73e46045759e}{umodem\+\_\+devclass}}
\item 
static driver\+\_\+t \mbox{\hyperlink{umodem_8c_a0f2a32e26ada3e6851806e8ac9698ecd}{umodem\+\_\+driver}}
\end{DoxyCompactItemize}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{umodem_8c_af621910bb0c23bbb1279c708bd053fe1}\label{umodem_8c_af621910bb0c23bbb1279c708bd053fe1}} 
\index{umodem.c@{umodem.c}!UMODEM\_BUF\_SIZE@{UMODEM\_BUF\_SIZE}}
\index{UMODEM\_BUF\_SIZE@{UMODEM\_BUF\_SIZE}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{UMODEM\_BUF\_SIZE}{UMODEM\_BUF\_SIZE}}
{\footnotesize\ttfamily \#define UMODEM\+\_\+\+BUF\+\_\+\+SIZE~1024}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00165}{165}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_a7312420ca7775df64dd249dc51cee54d}\label{umodem_8c_a7312420ca7775df64dd249dc51cee54d}} 
\index{umodem.c@{umodem.c}!UMODEM\_MODVER@{UMODEM\_MODVER}}
\index{UMODEM\_MODVER@{UMODEM\_MODVER}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{UMODEM\_MODVER}{UMODEM\_MODVER}}
{\footnotesize\ttfamily \#define UMODEM\+\_\+\+MODVER~1 /$\ast$ module version $\ast$/}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00175}{175}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_a927dd6f59caf10a2991dfb564bcbb1e1}\label{umodem_8c_a927dd6f59caf10a2991dfb564bcbb1e1}} 
\index{umodem.c@{umodem.c}!USB\_DEBUG\_VAR@{USB\_DEBUG\_VAR}}
\index{USB\_DEBUG\_VAR@{USB\_DEBUG\_VAR}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{USB\_DEBUG\_VAR}{USB\_DEBUG\_VAR}}
{\footnotesize\ttfamily \#define USB\+\_\+\+DEBUG\+\_\+\+VAR~umodem\+\_\+debug}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00106}{106}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



\doxysubsection{Enumeration Type Documentation}
\mbox{\Hypertarget{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26}\label{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26}} 
\doxysubsubsection{\texorpdfstring{anonymous enum}{anonymous enum}}
{\footnotesize\ttfamily anonymous enum}

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{UMODEM\_BULK\_WR@{UMODEM\_BULK\_WR}!umodem.c@{umodem.c}}\index{umodem.c@{umodem.c}!UMODEM\_BULK\_WR@{UMODEM\_BULK\_WR}}}\mbox{\Hypertarget{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26aafca144c569ef34461caa5d2335e4e55}\label{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26aafca144c569ef34461caa5d2335e4e55}} 
UMODEM\+\_\+\+BULK\+\_\+\+WR&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{UMODEM\_BULK\_RD@{UMODEM\_BULK\_RD}!umodem.c@{umodem.c}}\index{umodem.c@{umodem.c}!UMODEM\_BULK\_RD@{UMODEM\_BULK\_RD}}}\mbox{\Hypertarget{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a394f9479bb4e7d9ccf6b51d8b585007a}\label{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a394f9479bb4e7d9ccf6b51d8b585007a}} 
UMODEM\+\_\+\+BULK\+\_\+\+RD&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{UMODEM\_INTR\_WR@{UMODEM\_INTR\_WR}!umodem.c@{umodem.c}}\index{umodem.c@{umodem.c}!UMODEM\_INTR\_WR@{UMODEM\_INTR\_WR}}}\mbox{\Hypertarget{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a7dbf79ad8e33baca79f9d98b41c0fda3}\label{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a7dbf79ad8e33baca79f9d98b41c0fda3}} 
UMODEM\+\_\+\+INTR\+\_\+\+WR&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{UMODEM\_INTR\_RD@{UMODEM\_INTR\_RD}!umodem.c@{umodem.c}}\index{umodem.c@{umodem.c}!UMODEM\_INTR\_RD@{UMODEM\_INTR\_RD}}}\mbox{\Hypertarget{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a3462e2b95337486b5447f384f9aee375}\label{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a3462e2b95337486b5447f384f9aee375}} 
UMODEM\+\_\+\+INTR\+\_\+\+RD&\\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{UMODEM\_N\_TRANSFER@{UMODEM\_N\_TRANSFER}!umodem.c@{umodem.c}}\index{umodem.c@{umodem.c}!UMODEM\_N\_TRANSFER@{UMODEM\_N\_TRANSFER}}}\mbox{\Hypertarget{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a6234f768713f542994cd5078b9c196b8}\label{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a6234f768713f542994cd5078b9c196b8}} 
UMODEM\+\_\+\+N\+\_\+\+TRANSFER&\\
\hline

\end{DoxyEnumFields}


Definition at line \mbox{\hyperlink{umodem_8c_source_l00167}{167}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{umodem_8c_a8c3ef283470a68cd30afe9b8a72cb60f}\label{umodem_8c_a8c3ef283470a68cd30afe9b8a72cb60f}} 
\index{umodem.c@{umodem.c}!\_\_FBSDID@{\_\_FBSDID}}
\index{\_\_FBSDID@{\_\_FBSDID}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{\_\_FBSDID()}{\_\_FBSDID()}}
{\footnotesize\ttfamily \+\_\+\+\_\+\+FBSDID (\begin{DoxyParamCaption}\item[{\char`\"{}\$Free\+BSD\$\char`\"{}}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{umodem_8c_a7b23812d217be1a6412bc4a45c38cfff}\label{umodem_8c_a7b23812d217be1a6412bc4a45c38cfff}} 
\index{umodem.c@{umodem.c}!DRIVER\_MODULE@{DRIVER\_MODULE}}
\index{DRIVER\_MODULE@{DRIVER\_MODULE}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{DRIVER\_MODULE()}{DRIVER\_MODULE()}}
{\footnotesize\ttfamily DRIVER\+\_\+\+MODULE (\begin{DoxyParamCaption}\item[{umodem}]{,  }\item[{uhub}]{,  }\item[{\mbox{\hyperlink{umodem_8c_a0f2a32e26ada3e6851806e8ac9698ecd}{umodem\+\_\+driver}}}]{,  }\item[{\mbox{\hyperlink{umodem_8c_a18e41f6097b22aeedf7f73e46045759e}{umodem\+\_\+devclass}}}]{,  }\item[{NULL}]{,  }\item[{0}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{umodem_8c_a15e93b7a2380f183ed9bc3cfd27ec1bd}\label{umodem_8c_a15e93b7a2380f183ed9bc3cfd27ec1bd}} 
\index{umodem.c@{umodem.c}!MODULE\_DEPEND@{MODULE\_DEPEND}}
\index{MODULE\_DEPEND@{MODULE\_DEPEND}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{MODULE\_DEPEND()}{MODULE\_DEPEND()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily MODULE\+\_\+\+DEPEND (\begin{DoxyParamCaption}\item[{umodem}]{,  }\item[{ucom}]{,  }\item[{1}]{,  }\item[{1}]{,  }\item[{1}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{umodem_8c_aaae00851d1ce3f79a8f3831a183afbd1}\label{umodem_8c_aaae00851d1ce3f79a8f3831a183afbd1}} 
\index{umodem.c@{umodem.c}!MODULE\_DEPEND@{MODULE\_DEPEND}}
\index{MODULE\_DEPEND@{MODULE\_DEPEND}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{MODULE\_DEPEND()}{MODULE\_DEPEND()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily MODULE\+\_\+\+DEPEND (\begin{DoxyParamCaption}\item[{umodem}]{,  }\item[{\mbox{\hyperlink{usb__if_8m_adfa3f6da9c4881e494b180c4ebb06470}{usb}}}]{,  }\item[{1}]{,  }\item[{1}]{,  }\item[{1}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{umodem_8c_ac388ca4d41892e0acdc7e3665bcc295c}\label{umodem_8c_ac388ca4d41892e0acdc7e3665bcc295c}} 
\index{umodem.c@{umodem.c}!MODULE\_VERSION@{MODULE\_VERSION}}
\index{MODULE\_VERSION@{MODULE\_VERSION}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{MODULE\_VERSION()}{MODULE\_VERSION()}}
{\footnotesize\ttfamily MODULE\+\_\+\+VERSION (\begin{DoxyParamCaption}\item[{umodem}]{,  }\item[{\mbox{\hyperlink{umodem_8c_a7312420ca7775df64dd249dc51cee54d}{UMODEM\+\_\+\+MODVER}}}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{umodem_8c_ad0b55bfe38114b2909231e0b3ac43a30}\label{umodem_8c_ad0b55bfe38114b2909231e0b3ac43a30}} 
\index{umodem.c@{umodem.c}!UCOM\_UNLOAD\_DRAIN@{UCOM\_UNLOAD\_DRAIN}}
\index{UCOM\_UNLOAD\_DRAIN@{UCOM\_UNLOAD\_DRAIN}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{UCOM\_UNLOAD\_DRAIN()}{UCOM\_UNLOAD\_DRAIN()}}
{\footnotesize\ttfamily UCOM\+\_\+\+UNLOAD\+\_\+\+DRAIN (\begin{DoxyParamCaption}\item[{umodem}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{umodem_8c_a1d740360f6bb63f32a384a0b1a3d04c1}\label{umodem_8c_a1d740360f6bb63f32a384a0b1a3d04c1}} 
\index{umodem.c@{umodem.c}!umodem\_attach@{umodem\_attach}}
\index{umodem\_attach@{umodem\_attach}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_attach()}{umodem\_attach()}}
{\footnotesize\ttfamily static int umodem\+\_\+attach (\begin{DoxyParamCaption}\item[{device\+\_\+t}]{dev }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00341}{341}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__cdc_8h_source_l00071}{usb\+\_\+cdc\+\_\+cm\+\_\+descriptor\+::b\+Data\+Interface}}, \mbox{\hyperlink{usbdi_8h_source_l00417}{usbd\+\_\+lookup\+\_\+info\+::b\+Iface\+Index}}, \mbox{\hyperlink{usbdi_8h_source_l00418}{usbd\+\_\+lookup\+\_\+info\+::b\+Iface\+Num}}, \mbox{\hyperlink{usb__cdc_8h_source_l00065}{usb\+\_\+cdc\+\_\+cm\+\_\+descriptor\+::b\+Length}}, \mbox{\hyperlink{usb__cdc_8h_source_l00086}{usb\+\_\+cdc\+\_\+union\+\_\+descriptor\+::b\+Length}}, \mbox{\hyperlink{usb__cdc_8h_source_l00090}{usb\+\_\+cdc\+\_\+union\+\_\+descriptor\+::b\+Slave\+Interface}}, \textbf{ dev}, \mbox{\hyperlink{usbdi_8h_source_l00430}{usb\+\_\+attach\+\_\+arg\+::device}}, \mbox{\hyperlink{usb__util_8c_source_l00073}{device\+\_\+set\+\_\+usb\+\_\+desc()}}, \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}}, \mbox{\hyperlink{if__usievar_8h_source_l00004}{id}}, \mbox{\hyperlink{usbdi_8h_source_l00426}{usb\+\_\+attach\+\_\+arg\+::info}}, \mbox{\hyperlink{umodem_8c_source_l00194}{umodem\+\_\+softc\+::sc\+\_\+acm\+\_\+cap}}, \mbox{\hyperlink{umodem_8c_source_l00193}{umodem\+\_\+softc\+::sc\+\_\+cm\+\_\+cap}}, \mbox{\hyperlink{umodem_8c_source_l00192}{umodem\+\_\+softc\+::sc\+\_\+cm\+\_\+over\+\_\+data}}, \mbox{\hyperlink{umodem_8c_source_l00189}{umodem\+\_\+softc\+::sc\+\_\+ctrl\+\_\+iface\+\_\+no}}, \mbox{\hyperlink{umodem_8c_source_l00190}{umodem\+\_\+softc\+::sc\+\_\+data\+\_\+iface\+\_\+no}}, \mbox{\hyperlink{umodem_8c_source_l00191}{umodem\+\_\+softc\+::sc\+\_\+iface\+\_\+index}}, \mbox{\hyperlink{umodem_8c_source_l00183}{umodem\+\_\+softc\+::sc\+\_\+mtx}}, \mbox{\hyperlink{umodem_8c_source_l00178}{umodem\+\_\+softc\+::sc\+\_\+super\+\_\+ucom}}, \mbox{\hyperlink{umodem_8c_source_l00179}{umodem\+\_\+softc\+::sc\+\_\+ucom}}, \mbox{\hyperlink{umodem_8c_source_l00182}{umodem\+\_\+softc\+::sc\+\_\+udev}}, \mbox{\hyperlink{umodem_8c_source_l00181}{umodem\+\_\+softc\+::sc\+\_\+xfer}}, \mbox{\hyperlink{usb__cdc_8h_source_l00108}{UCDC\+\_\+\+ABSTRACT\+\_\+\+STATE}}, \mbox{\hyperlink{usb__cdc_8h_source_l00123}{UCDC\+\_\+\+DATA\+\_\+\+MULTIPLEXED}}, \mbox{\hyperlink{usb__serial_8c_source_l00267}{ucom\+\_\+attach()}}, \mbox{\hyperlink{usb__serial_8c_source_l01695}{ucom\+\_\+ref()}}, \mbox{\hyperlink{usb__serial_8c_source_l00549}{ucom\+\_\+set\+\_\+pnpinfo\+\_\+usb()}}, \mbox{\hyperlink{usb__serial_8c_source_l00584}{ucom\+\_\+set\+\_\+usb\+\_\+mode()}}, \mbox{\hyperlink{usb_8h_source_l00212}{UDESC\+\_\+\+CS\+\_\+\+INTERFACE}}, \mbox{\hyperlink{usb__cdc_8h_source_l00040}{UDESCSUB\+\_\+\+CDC\+\_\+\+CM}}, \mbox{\hyperlink{usb__cdc_8h_source_l00045}{UDESCSUB\+\_\+\+CDC\+\_\+\+UNION}}, \mbox{\hyperlink{umodem_8c_source_l00169}{UMODEM\+\_\+\+BULK\+\_\+\+RD}}, \mbox{\hyperlink{umodem_8c_source_l00168}{UMODEM\+\_\+\+BULK\+\_\+\+WR}}, \mbox{\hyperlink{umodem_8c_source_l00279}{umodem\+\_\+callback}}, \mbox{\hyperlink{umodem_8c_source_l00233}{umodem\+\_\+config}}, \mbox{\hyperlink{umodem_8c_source_l00201}{umodem\+\_\+detach}}, \mbox{\hyperlink{umodem_8c_source_l00478}{umodem\+\_\+find\+\_\+data\+\_\+iface()}}, \mbox{\hyperlink{umodem_8c_source_l00550}{umodem\+\_\+get\+\_\+caps()}}, \mbox{\hyperlink{umodem_8c_source_l00920}{umodem\+\_\+get\+\_\+desc()}}, \mbox{\hyperlink{umodem_8c_source_l00172}{UMODEM\+\_\+\+N\+\_\+\+TRANSFER}}, \mbox{\hyperlink{umodem_8c_source_l00927}{umodem\+\_\+set\+\_\+comm\+\_\+feature()}}, \mbox{\hyperlink{usb__quirk_8h_source_l00067}{UQ\+\_\+\+ASSUME\+\_\+\+CM\+\_\+\+OVER\+\_\+\+DATA}}, \mbox{\hyperlink{usb__cdc_8h_source_l00081}{USB\+\_\+\+CDC\+\_\+\+ACM\+\_\+\+HAS\+\_\+\+BREAK}}, \mbox{\hyperlink{usb__cdc_8h_source_l00079}{USB\+\_\+\+CDC\+\_\+\+ACM\+\_\+\+HAS\+\_\+\+FEATURE}}, \mbox{\hyperlink{usb__cdc_8h_source_l00070}{USB\+\_\+\+CDC\+\_\+\+CM\+\_\+\+OVER\+\_\+\+DATA}}, \mbox{\hyperlink{usbdi_8h_source_l00432}{usb\+\_\+attach\+\_\+arg\+::usb\+\_\+mode}}, \mbox{\hyperlink{usb_8h_source_l00778}{USB\+\_\+\+MODE\+\_\+\+HOST}}, \mbox{\hyperlink{usb__device_8c_source_l02631}{usb\+\_\+test\+\_\+quirk()}}, \mbox{\hyperlink{usb__device_8c_source_l02395}{usbd\+\_\+find\+\_\+descriptor()}}, \mbox{\hyperlink{usb__device_8c_source_l02370}{usbd\+\_\+get\+\_\+iface()}}, \mbox{\hyperlink{usb__device_8c_source_l02654}{usbd\+\_\+get\+\_\+interface\+\_\+descriptor()}}, \mbox{\hyperlink{usb__device_8c_source_l01395}{usbd\+\_\+set\+\_\+parent\+\_\+iface()}}, \mbox{\hyperlink{usb__transfer_8c_source_l00987}{usbd\+\_\+transfer\+\_\+setup()}}, and \mbox{\hyperlink{usb__transfer_8c_source_l02754}{usbd\+\_\+xfer\+\_\+set\+\_\+stall()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a1d740360f6bb63f32a384a0b1a3d04c1_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_af26d7682b163671c7f5ce8d5d7bf6057}\label{umodem_8c_af26d7682b163671c7f5ce8d5d7bf6057}} 
\index{umodem.c@{umodem.c}!umodem\_cfg\_get\_status@{umodem\_cfg\_get\_status}}
\index{umodem\_cfg\_get\_status@{umodem\_cfg\_get\_status}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_cfg\_get\_status()}{umodem\_cfg\_get\_status()}}
{\footnotesize\ttfamily static void umodem\+\_\+cfg\+\_\+get\+\_\+status (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom,  }\item[{uint8\+\_\+t $\ast$}]{lsr,  }\item[{uint8\+\_\+t $\ast$}]{msr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00571}{571}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{umodem_8c_source_l00187}{umodem\+\_\+softc\+::sc\+\_\+lsr}}, \mbox{\hyperlink{umodem_8c_source_l00188}{umodem\+\_\+softc\+::sc\+\_\+msr}}, and \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}.

\mbox{\Hypertarget{umodem_8c_a4274784ee61a4221c71f6f981f90c963}\label{umodem_8c_a4274784ee61a4221c71f6f981f90c963}} 
\index{umodem.c@{umodem.c}!umodem\_cfg\_param@{umodem\_cfg\_param}}
\index{umodem\_cfg\_param@{umodem\_cfg\_param}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_cfg\_param()}{umodem\_cfg\_param()}}
{\footnotesize\ttfamily static void umodem\+\_\+cfg\+\_\+param (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom,  }\item[{struct termios $\ast$}]{t }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00589}{589}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__cdc_8h_source_l00130}{usb\+\_\+cdc\+\_\+line\+\_\+state\+::b\+Char\+Format}}, \mbox{\hyperlink{usb__cdc_8h_source_l00140}{usb\+\_\+cdc\+\_\+line\+\_\+state\+::b\+Data\+Bits}}, \mbox{\hyperlink{usb__cdc_8h_source_l00134}{usb\+\_\+cdc\+\_\+line\+\_\+state\+::b\+Parity\+Type}}, \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{usb__cdc_8h_source_l00129}{usb\+\_\+cdc\+\_\+line\+\_\+state\+::dw\+DTERate}}, \mbox{\hyperlink{usb__if_8m_source_l00051}{req}}, \mbox{\hyperlink{umodem_8c_source_l00189}{umodem\+\_\+softc\+::sc\+\_\+ctrl\+\_\+iface\+\_\+no}}, \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{umodem_8c_source_l00179}{umodem\+\_\+softc\+::sc\+\_\+ucom}}, \mbox{\hyperlink{umodem_8c_source_l00182}{umodem\+\_\+softc\+::sc\+\_\+udev}}, \mbox{\hyperlink{usb__cdc_8h_source_l00137}{UCDC\+\_\+\+PARITY\+\_\+\+EVEN}}, \mbox{\hyperlink{usb__cdc_8h_source_l00135}{UCDC\+\_\+\+PARITY\+\_\+\+NONE}}, \mbox{\hyperlink{usb__cdc_8h_source_l00136}{UCDC\+\_\+\+PARITY\+\_\+\+ODD}}, \mbox{\hyperlink{usb__cdc_8h_source_l00111}{UCDC\+\_\+\+SET\+\_\+\+LINE\+\_\+\+CODING}}, \mbox{\hyperlink{usb__cdc_8h_source_l00131}{UCDC\+\_\+\+STOP\+\_\+\+BIT\+\_\+1}}, \mbox{\hyperlink{usb__cdc_8h_source_l00133}{UCDC\+\_\+\+STOP\+\_\+\+BIT\+\_\+2}}, \mbox{\hyperlink{usb__serial_8h_source_l00208}{ucom\+\_\+cfg\+\_\+do\+\_\+request}}, \mbox{\hyperlink{usb__endian_8h_source_l00057}{UGETDW}}, \mbox{\hyperlink{usb__endian_8h_source_l00082}{USETDW}}, \mbox{\hyperlink{usb__endian_8h_source_l00077}{USETW}}, and \mbox{\hyperlink{usb_8h_source_l00177}{UT\+\_\+\+WRITE\+\_\+\+CLASS\+\_\+\+INTERFACE}}.

\mbox{\Hypertarget{umodem_8c_a0c2e92da009d5b82f80d13c2f9ee608a}\label{umodem_8c_a0c2e92da009d5b82f80d13c2f9ee608a}} 
\index{umodem.c@{umodem.c}!umodem\_cfg\_set\_break@{umodem\_cfg\_set\_break}}
\index{umodem\_cfg\_set\_break@{umodem\_cfg\_set\_break}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_cfg\_set\_break()}{umodem\_cfg\_set\_break()}}
{\footnotesize\ttfamily static void umodem\+\_\+cfg\+\_\+set\+\_\+break (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom,  }\item[{uint8\+\_\+t}]{onoff }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00716}{716}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{usb__if_8m_source_l00051}{req}}, \mbox{\hyperlink{umodem_8c_source_l00194}{umodem\+\_\+softc\+::sc\+\_\+acm\+\_\+cap}}, \mbox{\hyperlink{umodem_8c_source_l00189}{umodem\+\_\+softc\+::sc\+\_\+ctrl\+\_\+iface\+\_\+no}}, \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{umodem_8c_source_l00179}{umodem\+\_\+softc\+::sc\+\_\+ucom}}, \mbox{\hyperlink{umodem_8c_source_l00182}{umodem\+\_\+softc\+::sc\+\_\+udev}}, \mbox{\hyperlink{usb__cdc_8h_source_l00118}{UCDC\+\_\+\+BREAK\+\_\+\+OFF}}, \mbox{\hyperlink{usb__cdc_8h_source_l00117}{UCDC\+\_\+\+BREAK\+\_\+\+ON}}, \mbox{\hyperlink{usb__cdc_8h_source_l00116}{UCDC\+\_\+\+SEND\+\_\+\+BREAK}}, \mbox{\hyperlink{usb__serial_8h_source_l00208}{ucom\+\_\+cfg\+\_\+do\+\_\+request}}, \mbox{\hyperlink{usb__cdc_8h_source_l00081}{USB\+\_\+\+CDC\+\_\+\+ACM\+\_\+\+HAS\+\_\+\+BREAK}}, \mbox{\hyperlink{usb__endian_8h_source_l00077}{USETW}}, and \mbox{\hyperlink{usb_8h_source_l00177}{UT\+\_\+\+WRITE\+\_\+\+CLASS\+\_\+\+INTERFACE}}.

\mbox{\Hypertarget{umodem_8c_a08f557bf9cc8b1f7bceffbd7f109a388}\label{umodem_8c_a08f557bf9cc8b1f7bceffbd7f109a388}} 
\index{umodem.c@{umodem.c}!umodem\_cfg\_set\_dtr@{umodem\_cfg\_set\_dtr}}
\index{umodem\_cfg\_set\_dtr@{umodem\_cfg\_set\_dtr}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_cfg\_set\_dtr()}{umodem\_cfg\_set\_dtr()}}
{\footnotesize\ttfamily static void umodem\+\_\+cfg\+\_\+set\+\_\+dtr (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom,  }\item[{uint8\+\_\+t}]{onoff }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00668}{668}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{usb__if_8m_source_l00051}{req}}, \mbox{\hyperlink{umodem_8c_source_l00189}{umodem\+\_\+softc\+::sc\+\_\+ctrl\+\_\+iface\+\_\+no}}, \mbox{\hyperlink{umodem_8c_source_l00185}{umodem\+\_\+softc\+::sc\+\_\+line}}, \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{umodem_8c_source_l00179}{umodem\+\_\+softc\+::sc\+\_\+ucom}}, \mbox{\hyperlink{umodem_8c_source_l00182}{umodem\+\_\+softc\+::sc\+\_\+udev}}, \mbox{\hyperlink{usb__cdc_8h_source_l00114}{UCDC\+\_\+\+LINE\+\_\+\+DTR}}, \mbox{\hyperlink{usb__cdc_8h_source_l00113}{UCDC\+\_\+\+SET\+\_\+\+CONTROL\+\_\+\+LINE\+\_\+\+STATE}}, \mbox{\hyperlink{usb__serial_8h_source_l00208}{ucom\+\_\+cfg\+\_\+do\+\_\+request}}, \mbox{\hyperlink{usb__endian_8h_source_l00077}{USETW}}, and \mbox{\hyperlink{usb_8h_source_l00177}{UT\+\_\+\+WRITE\+\_\+\+CLASS\+\_\+\+INTERFACE}}.

\mbox{\Hypertarget{umodem_8c_a6e2be7254ddecd49b02f89f2a1d7e449}\label{umodem_8c_a6e2be7254ddecd49b02f89f2a1d7e449}} 
\index{umodem.c@{umodem.c}!umodem\_cfg\_set\_rts@{umodem\_cfg\_set\_rts}}
\index{umodem\_cfg\_set\_rts@{umodem\_cfg\_set\_rts}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_cfg\_set\_rts()}{umodem\_cfg\_set\_rts()}}
{\footnotesize\ttfamily static void umodem\+\_\+cfg\+\_\+set\+\_\+rts (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom,  }\item[{uint8\+\_\+t}]{onoff }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00692}{692}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{usb__if_8m_source_l00051}{req}}, \mbox{\hyperlink{umodem_8c_source_l00189}{umodem\+\_\+softc\+::sc\+\_\+ctrl\+\_\+iface\+\_\+no}}, \mbox{\hyperlink{umodem_8c_source_l00185}{umodem\+\_\+softc\+::sc\+\_\+line}}, \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{umodem_8c_source_l00179}{umodem\+\_\+softc\+::sc\+\_\+ucom}}, \mbox{\hyperlink{umodem_8c_source_l00182}{umodem\+\_\+softc\+::sc\+\_\+udev}}, \mbox{\hyperlink{usb__cdc_8h_source_l00115}{UCDC\+\_\+\+LINE\+\_\+\+RTS}}, \mbox{\hyperlink{usb__cdc_8h_source_l00113}{UCDC\+\_\+\+SET\+\_\+\+CONTROL\+\_\+\+LINE\+\_\+\+STATE}}, \mbox{\hyperlink{usb__serial_8h_source_l00208}{ucom\+\_\+cfg\+\_\+do\+\_\+request}}, \mbox{\hyperlink{usb__endian_8h_source_l00077}{USETW}}, and \mbox{\hyperlink{usb_8h_source_l00177}{UT\+\_\+\+WRITE\+\_\+\+CLASS\+\_\+\+INTERFACE}}.

\mbox{\Hypertarget{umodem_8c_af149fe83ed6ee13cc74f5da64b329ded}\label{umodem_8c_af149fe83ed6ee13cc74f5da64b329ded}} 
\index{umodem.c@{umodem.c}!umodem\_detach@{umodem\_detach}}
\index{umodem\_detach@{umodem\_detach}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_detach()}{umodem\_detach()}}
{\footnotesize\ttfamily static int umodem\+\_\+detach (\begin{DoxyParamCaption}\item[{device\+\_\+t}]{dev }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00948}{948}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \textbf{ dev}, \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{umodem_8c_source_l00178}{umodem\+\_\+softc\+::sc\+\_\+super\+\_\+ucom}}, \mbox{\hyperlink{umodem_8c_source_l00179}{umodem\+\_\+softc\+::sc\+\_\+ucom}}, \mbox{\hyperlink{umodem_8c_source_l00181}{umodem\+\_\+softc\+::sc\+\_\+xfer}}, \mbox{\hyperlink{usb__serial_8c_source_l00336}{ucom\+\_\+detach()}}, \mbox{\hyperlink{umodem_8c_source_l00967}{umodem\+\_\+free\+\_\+softc()}}, \mbox{\hyperlink{umodem_8c_source_l00172}{UMODEM\+\_\+\+N\+\_\+\+TRANSFER}}, and \mbox{\hyperlink{usb__transfer_8c_source_l01431}{usbd\+\_\+transfer\+\_\+unsetup()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_af149fe83ed6ee13cc74f5da64b329ded_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a1be6b9f2b8327bf2e0028c4145c0d79c}\label{umodem_8c_a1be6b9f2b8327bf2e0028c4145c0d79c}} 
\index{umodem.c@{umodem.c}!umodem\_find\_data\_iface@{umodem\_find\_data\_iface}}
\index{umodem\_find\_data\_iface@{umodem\_find\_data\_iface}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_find\_data\_iface()}{umodem\_find\_data\_iface()}}
{\footnotesize\ttfamily static void umodem\+\_\+find\+\_\+data\+\_\+iface (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__attach__arg}{usb\+\_\+attach\+\_\+arg}} $\ast$}]{uaa,  }\item[{uint8\+\_\+t}]{iface\+\_\+index,  }\item[{uint8\+\_\+t $\ast$}]{p\+\_\+data\+\_\+no,  }\item[{uint8\+\_\+t $\ast$}]{p\+\_\+match\+\_\+class }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00478}{478}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usbdi_8h_source_l00430}{usb\+\_\+attach\+\_\+arg\+::device}}, \mbox{\hyperlink{if__usievar_8h_source_l00004}{id}}, \mbox{\hyperlink{usb_8h_source_l00485}{UICLASS\+\_\+\+CDC\+\_\+\+DATA}}, \mbox{\hyperlink{usb_8h_source_l00486}{UISUBCLASS\+\_\+\+DATA}}, \mbox{\hyperlink{usb__device_8c_source_l02370}{usbd\+\_\+get\+\_\+iface()}}, and \mbox{\hyperlink{usb__device_8c_source_l02654}{usbd\+\_\+get\+\_\+interface\+\_\+descriptor()}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00341}{umodem\+\_\+attach()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a1be6b9f2b8327bf2e0028c4145c0d79c_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a1be6b9f2b8327bf2e0028c4145c0d79c_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a7ab37ea0f05664c10297223f621c2f76}\label{umodem_8c_a7ab37ea0f05664c10297223f621c2f76}} 
\index{umodem.c@{umodem.c}!umodem\_free@{umodem\_free}}
\index{umodem\_free@{umodem\_free}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_free()}{umodem\_free()}}
{\footnotesize\ttfamily static void umodem\+\_\+free (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00976}{976}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, and \mbox{\hyperlink{umodem_8c_source_l00967}{umodem\+\_\+free\+\_\+softc()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a7ab37ea0f05664c10297223f621c2f76_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_ac3bca544e058f7323390d69d46f68b9e}\label{umodem_8c_ac3bca544e058f7323390d69d46f68b9e}} 
\index{umodem.c@{umodem.c}!umodem\_free\_softc@{umodem\_free\_softc}}
\index{umodem\_free\_softc@{umodem\_free\_softc}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_free\_softc()}{umodem\_free\_softc()}}
{\footnotesize\ttfamily static void umodem\+\_\+free\+\_\+softc (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structumodem__softc}{umodem\+\_\+softc}} $\ast$}]{sc }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00967}{967}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{umodem_8c_source_l00183}{umodem\+\_\+softc\+::sc\+\_\+mtx}}, \mbox{\hyperlink{umodem_8c_source_l00178}{umodem\+\_\+softc\+::sc\+\_\+super\+\_\+ucom}}, and \mbox{\hyperlink{usb__serial_8c_source_l01730}{ucom\+\_\+unref()}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00948}{umodem\+\_\+detach()}}, and \mbox{\hyperlink{umodem_8c_source_l00976}{umodem\+\_\+free()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_ac3bca544e058f7323390d69d46f68b9e_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=327pt]{d9/d44/umodem_8c_ac3bca544e058f7323390d69d46f68b9e_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_ae38407ca7254f3bd0c2122b686fff54d}\label{umodem_8c_ae38407ca7254f3bd0c2122b686fff54d}} 
\index{umodem.c@{umodem.c}!umodem\_get\_caps@{umodem\_get\_caps}}
\index{umodem\_get\_caps@{umodem\_get\_caps}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_get\_caps()}{umodem\_get\_caps()}}
{\footnotesize\ttfamily static void umodem\+\_\+get\+\_\+caps (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__attach__arg}{usb\+\_\+attach\+\_\+arg}} $\ast$}]{uaa,  }\item[{uint8\+\_\+t $\ast$}]{cm,  }\item[{uint8\+\_\+t $\ast$}]{acm }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00550}{550}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__cdc_8h_source_l00065}{usb\+\_\+cdc\+\_\+cm\+\_\+descriptor\+::b\+Length}}, \mbox{\hyperlink{usb__cdc_8h_source_l00075}{usb\+\_\+cdc\+\_\+acm\+\_\+descriptor\+::b\+Length}}, \mbox{\hyperlink{usb__cdc_8h_source_l00068}{usb\+\_\+cdc\+\_\+cm\+\_\+descriptor\+::bm\+Capabilities}}, \mbox{\hyperlink{usb__cdc_8h_source_l00078}{usb\+\_\+cdc\+\_\+acm\+\_\+descriptor\+::bm\+Capabilities}}, \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{usb_8h_source_l00212}{UDESC\+\_\+\+CS\+\_\+\+INTERFACE}}, \mbox{\hyperlink{usb__cdc_8h_source_l00041}{UDESCSUB\+\_\+\+CDC\+\_\+\+ACM}}, \mbox{\hyperlink{usb__cdc_8h_source_l00040}{UDESCSUB\+\_\+\+CDC\+\_\+\+CM}}, \mbox{\hyperlink{umodem_8c_source_l00920}{umodem\+\_\+get\+\_\+desc()}}, \mbox{\hyperlink{usb__cdc_8h_source_l00069}{USB\+\_\+\+CDC\+\_\+\+CM\+\_\+\+DOES\+\_\+\+CM}}, and \mbox{\hyperlink{usb__cdc_8h_source_l00070}{USB\+\_\+\+CDC\+\_\+\+CM\+\_\+\+OVER\+\_\+\+DATA}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00341}{umodem\+\_\+attach()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_ae38407ca7254f3bd0c2122b686fff54d_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=321pt]{d9/d44/umodem_8c_ae38407ca7254f3bd0c2122b686fff54d_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a62024211158c65738bef9c4d62f67616}\label{umodem_8c_a62024211158c65738bef9c4d62f67616}} 
\index{umodem.c@{umodem.c}!umodem\_get\_desc@{umodem\_get\_desc}}
\index{umodem\_get\_desc@{umodem\_get\_desc}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_get\_desc()}{umodem\_get\_desc()}}
{\footnotesize\ttfamily static void $\ast$ umodem\+\_\+get\+\_\+desc (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__attach__arg}{usb\+\_\+attach\+\_\+arg}} $\ast$}]{uaa,  }\item[{uint8\+\_\+t}]{type,  }\item[{uint8\+\_\+t}]{subtype }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00920}{920}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usbdi_8h_source_l00417}{usbd\+\_\+lookup\+\_\+info\+::b\+Iface\+Index}}, \mbox{\hyperlink{usbdi_8h_source_l00430}{usb\+\_\+attach\+\_\+arg\+::device}}, \mbox{\hyperlink{usbdi_8h_source_l00426}{usb\+\_\+attach\+\_\+arg\+::info}}, \textbf{ type}, and \mbox{\hyperlink{usb__device_8c_source_l02395}{usbd\+\_\+find\+\_\+descriptor()}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00341}{umodem\+\_\+attach()}}, and \mbox{\hyperlink{umodem_8c_source_l00550}{umodem\+\_\+get\+\_\+caps()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a62024211158c65738bef9c4d62f67616_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a62024211158c65738bef9c4d62f67616_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a3fb547c665356a03f40e340feb4ed829}\label{umodem_8c_a3fb547c665356a03f40e340feb4ed829}} 
\index{umodem.c@{umodem.c}!umodem\_handle\_request@{umodem\_handle\_request}}
\index{umodem\_handle\_request@{umodem\_handle\_request}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_handle\_request()}{umodem\_handle\_request()}}
{\footnotesize\ttfamily static int umodem\+\_\+handle\+\_\+request (\begin{DoxyParamCaption}\item[{device\+\_\+t}]{dev,  }\item[{const void $\ast$}]{preq,  }\item[{void $\ast$$\ast$}]{pptr,  }\item[{uint16\+\_\+t $\ast$}]{plen,  }\item[{uint16\+\_\+t}]{offset,  }\item[{uint8\+\_\+t $\ast$}]{pstate }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00989}{989}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \textbf{ dev}, \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{usb__if_8m_source_l00054}{offset}}, \mbox{\hyperlink{usb__if_8m_source_l00053}{plen}}, \mbox{\hyperlink{usb__if_8m_source_l00052}{pptr}}, \mbox{\hyperlink{usb__if_8m_source_l00055}{pstate}}, \mbox{\hyperlink{usb__if_8m_source_l00051}{req}}, \mbox{\hyperlink{umodem_8c_source_l00196}{umodem\+\_\+softc\+::sc\+\_\+abstract\+\_\+state}}, \mbox{\hyperlink{umodem_8c_source_l00189}{umodem\+\_\+softc\+::sc\+\_\+ctrl\+\_\+iface\+\_\+no}}, \mbox{\hyperlink{umodem_8c_source_l00195}{umodem\+\_\+softc\+::sc\+\_\+line\+\_\+coding}}, \mbox{\hyperlink{usb__cdc_8h_source_l00116}{UCDC\+\_\+\+SEND\+\_\+\+BREAK}}, \mbox{\hyperlink{usb__cdc_8h_source_l00106}{UCDC\+\_\+\+SET\+\_\+\+COMM\+\_\+\+FEATURE}}, \mbox{\hyperlink{usb__cdc_8h_source_l00113}{UCDC\+\_\+\+SET\+\_\+\+CONTROL\+\_\+\+LINE\+\_\+\+STATE}}, \mbox{\hyperlink{usb__cdc_8h_source_l00111}{UCDC\+\_\+\+SET\+\_\+\+LINE\+\_\+\+CODING}}, and \mbox{\hyperlink{usb_8h_source_l00177}{UT\+\_\+\+WRITE\+\_\+\+CLASS\+\_\+\+INTERFACE}}.

\mbox{\Hypertarget{umodem_8c_a8ad62758d8f35e351bd144573af9bbd4}\label{umodem_8c_a8ad62758d8f35e351bd144573af9bbd4}} 
\index{umodem.c@{umodem.c}!umodem\_intr\_read\_callback@{umodem\_intr\_read\_callback}}
\index{umodem\_intr\_read\_callback@{umodem\_intr\_read\_callback}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_intr\_read\_callback()}{umodem\_intr\_read\_callback()}}
{\footnotesize\ttfamily static void umodem\+\_\+intr\+\_\+read\+\_\+callback (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$}]{xfer,  }\item[{\mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}}}]{error }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00767}{767}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__cdc_8h_source_l00146}{usb\+\_\+cdc\+\_\+notification\+::bm\+Request\+Type}}, \mbox{\hyperlink{usb__cdc_8h_source_l00148}{usb\+\_\+cdc\+\_\+notification\+::b\+Notification}}, \mbox{\hyperlink{usb__cdc_8h_source_l00160}{usb\+\_\+cdc\+\_\+notification\+::data}}, \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}}, \mbox{\hyperlink{umodem_8c_source_l00187}{umodem\+\_\+softc\+::sc\+\_\+lsr}}, \mbox{\hyperlink{umodem_8c_source_l00188}{umodem\+\_\+softc\+::sc\+\_\+msr}}, \mbox{\hyperlink{umodem_8c_source_l00179}{umodem\+\_\+softc\+::sc\+\_\+ucom}}, \mbox{\hyperlink{usb__cdc_8h_source_l00175}{UCDC\+\_\+\+N\+\_\+\+SERIAL\+\_\+\+DCD}}, \mbox{\hyperlink{usb__cdc_8h_source_l00174}{UCDC\+\_\+\+N\+\_\+\+SERIAL\+\_\+\+DSR}}, \mbox{\hyperlink{usb__cdc_8h_source_l00172}{UCDC\+\_\+\+N\+\_\+\+SERIAL\+\_\+\+RI}}, \mbox{\hyperlink{usb__cdc_8h_source_l00153}{UCDC\+\_\+\+N\+\_\+\+SERIAL\+\_\+\+STATE}}, \mbox{\hyperlink{usb__cdc_8h_source_l00147}{UCDC\+\_\+\+NOTIFICATION}}, \mbox{\hyperlink{usb__serial_8c_source_l01229}{ucom\+\_\+status\+\_\+change()}}, \mbox{\hyperlink{usb__endian_8h_source_l00053}{UGETW}}, \mbox{\hyperlink{usbdi_8h_source_l00051}{USB\+\_\+\+ERR\+\_\+\+CANCELLED}}, \mbox{\hyperlink{usbdi_8h_source_l00515}{USB\+\_\+\+GET\+\_\+\+STATE}}, \mbox{\hyperlink{usbdi_8h_source_l00502}{USB\+\_\+\+ST\+\_\+\+SETUP}}, \mbox{\hyperlink{usbdi_8h_source_l00503}{USB\+\_\+\+ST\+\_\+\+TRANSFERRED}}, \mbox{\hyperlink{usb__busdma_8c_source_l00283}{usbd\+\_\+copy\+\_\+out()}}, \mbox{\hyperlink{usb__transfer_8c_source_l01719}{usbd\+\_\+transfer\+\_\+submit()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02156}{usbd\+\_\+xfer\+\_\+get\+\_\+frame()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02304}{usbd\+\_\+xfer\+\_\+max\+\_\+len()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02316}{usbd\+\_\+xfer\+\_\+set\+\_\+frame\+\_\+len()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02754}{usbd\+\_\+xfer\+\_\+set\+\_\+stall()}}, \mbox{\hyperlink{usb__transfer_8c_source_l03602}{usbd\+\_\+xfer\+\_\+softc()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02247}{usbd\+\_\+xfer\+\_\+status()}}, and \mbox{\hyperlink{usb__cdc_8h_source_l00159}{usb\+\_\+cdc\+\_\+notification\+::w\+Length}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a8ad62758d8f35e351bd144573af9bbd4_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a6c582495baff2b2996a6ea7f17db7ca0}\label{umodem_8c_a6c582495baff2b2996a6ea7f17db7ca0}} 
\index{umodem.c@{umodem.c}!umodem\_intr\_write\_callback@{umodem\_intr\_write\_callback}}
\index{umodem\_intr\_write\_callback@{umodem\_intr\_write\_callback}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_intr\_write\_callback()}{umodem\_intr\_write\_callback()}}
{\footnotesize\ttfamily static void umodem\+\_\+intr\+\_\+write\+\_\+callback (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$}]{xfer,  }\item[{\mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}}}]{error }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00740}{740}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}}, \mbox{\hyperlink{usbdi_8h_source_l00051}{USB\+\_\+\+ERR\+\_\+\+CANCELLED}}, \mbox{\hyperlink{usbdi_8h_source_l00515}{USB\+\_\+\+GET\+\_\+\+STATE}}, \mbox{\hyperlink{usbdi_8h_source_l00502}{USB\+\_\+\+ST\+\_\+\+SETUP}}, \mbox{\hyperlink{usbdi_8h_source_l00503}{USB\+\_\+\+ST\+\_\+\+TRANSFERRED}}, \mbox{\hyperlink{usb__transfer_8c_source_l02754}{usbd\+\_\+xfer\+\_\+set\+\_\+stall()}}, and \mbox{\hyperlink{usb__transfer_8c_source_l02247}{usbd\+\_\+xfer\+\_\+status()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a6c582495baff2b2996a6ea7f17db7ca0_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a09e1d0f6824d4cd694348e9a193574a2}\label{umodem_8c_a09e1d0f6824d4cd694348e9a193574a2}} 
\index{umodem.c@{umodem.c}!umodem\_ioctl@{umodem\_ioctl}}
\index{umodem\_ioctl@{umodem\_ioctl}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_ioctl()}{umodem\_ioctl()}}
{\footnotesize\ttfamily static int umodem\+\_\+ioctl (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom,  }\item[{uint32\+\_\+t}]{cmd,  }\item[{caddr\+\_\+t}]{data,  }\item[{int}]{flag,  }\item[{struct thread $\ast$}]{td }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00639}{639}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \textbf{ data}, \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}}, \mbox{\hyperlink{umodem_8c_source_l00192}{umodem\+\_\+softc\+::sc\+\_\+cm\+\_\+over\+\_\+data}}, \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{usb__ioctl_8h_source_l00294}{USB\+\_\+\+GET\+\_\+\+CM\+\_\+\+OVER\+\_\+\+DATA}}, and \mbox{\hyperlink{usb__ioctl_8h_source_l00295}{USB\+\_\+\+SET\+\_\+\+CM\+\_\+\+OVER\+\_\+\+DATA}}.

\mbox{\Hypertarget{umodem_8c_a8443dd23062cd42966e6d7ff33405f26}\label{umodem_8c_a8443dd23062cd42966e6d7ff33405f26}} 
\index{umodem.c@{umodem.c}!umodem\_poll@{umodem\_poll}}
\index{umodem\_poll@{umodem\_poll}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_poll()}{umodem\_poll()}}
{\footnotesize\ttfamily static void umodem\+\_\+poll (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00982}{982}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{umodem_8c_source_l00181}{umodem\+\_\+softc\+::sc\+\_\+xfer}}, \mbox{\hyperlink{umodem_8c_source_l00172}{UMODEM\+\_\+\+N\+\_\+\+TRANSFER}}, and \mbox{\hyperlink{usb__transfer_8c_source_l03428}{usbd\+\_\+transfer\+\_\+poll()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=306pt]{d9/d44/umodem_8c_a8443dd23062cd42966e6d7ff33405f26_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a3e44afa97272de488b3a5984bb8ae666}\label{umodem_8c_a3e44afa97272de488b3a5984bb8ae666}} 
\index{umodem.c@{umodem.c}!umodem\_pre\_param@{umodem\_pre\_param}}
\index{umodem\_pre\_param@{umodem\_pre\_param}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_pre\_param()}{umodem\_pre\_param()}}
{\footnotesize\ttfamily static int umodem\+\_\+pre\+\_\+param (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom,  }\item[{struct termios $\ast$}]{t }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00583}{583}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_a63149bd8d37faf9598b1e857c27dbb3c}\label{umodem_8c_a63149bd8d37faf9598b1e857c27dbb3c}} 
\index{umodem.c@{umodem.c}!umodem\_probe@{umodem\_probe}}
\index{umodem\_probe@{umodem\_probe}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_probe()}{umodem\_probe()}}
{\footnotesize\ttfamily static int umodem\+\_\+probe (\begin{DoxyParamCaption}\item[{device\+\_\+t}]{dev }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00322}{322}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \textbf{ dev}, \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}}, \mbox{\hyperlink{umodem_8c_source_l00122}{umodem\+\_\+dual\+\_\+devs}}, \mbox{\hyperlink{umodem_8c_source_l00132}{umodem\+\_\+host\+\_\+devs}}, and \mbox{\hyperlink{usb__lookup_8c_source_l00143}{usbd\+\_\+lookup\+\_\+id\+\_\+by\+\_\+uaa()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a63149bd8d37faf9598b1e857c27dbb3c_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_ae9ddbabf035998ee61c9c7d166cb454e}\label{umodem_8c_ae9ddbabf035998ee61c9c7d166cb454e}} 
\index{umodem.c@{umodem.c}!umodem\_read\_callback@{umodem\_read\_callback}}
\index{umodem\_read\_callback@{umodem\_read\_callback}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_read\_callback()}{umodem\_read\_callback()}}
{\footnotesize\ttfamily static void umodem\+\_\+read\+\_\+callback (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$}]{xfer,  }\item[{\mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}}}]{error }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00887}{887}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}}, \mbox{\hyperlink{umodem_8c_source_l00179}{umodem\+\_\+softc\+::sc\+\_\+ucom}}, \mbox{\hyperlink{usb__serial_8c_source_l01462}{ucom\+\_\+put\+\_\+data()}}, \mbox{\hyperlink{usbdi_8h_source_l00051}{USB\+\_\+\+ERR\+\_\+\+CANCELLED}}, \mbox{\hyperlink{usbdi_8h_source_l00515}{USB\+\_\+\+GET\+\_\+\+STATE}}, \mbox{\hyperlink{usbdi_8h_source_l00502}{USB\+\_\+\+ST\+\_\+\+SETUP}}, \mbox{\hyperlink{usbdi_8h_source_l00503}{USB\+\_\+\+ST\+\_\+\+TRANSFERRED}}, \mbox{\hyperlink{usb__transfer_8c_source_l01719}{usbd\+\_\+transfer\+\_\+submit()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02156}{usbd\+\_\+xfer\+\_\+get\+\_\+frame()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02304}{usbd\+\_\+xfer\+\_\+max\+\_\+len()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02316}{usbd\+\_\+xfer\+\_\+set\+\_\+frame\+\_\+len()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02754}{usbd\+\_\+xfer\+\_\+set\+\_\+stall()}}, \mbox{\hyperlink{usb__transfer_8c_source_l03602}{usbd\+\_\+xfer\+\_\+softc()}}, and \mbox{\hyperlink{usb__transfer_8c_source_l02247}{usbd\+\_\+xfer\+\_\+status()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_ae9ddbabf035998ee61c9c7d166cb454e_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a530f336c357cdd7c99e59bc1807da837}\label{umodem_8c_a530f336c357cdd7c99e59bc1807da837}} 
\index{umodem.c@{umodem.c}!umodem\_set\_comm\_feature@{umodem\_set\_comm\_feature}}
\index{umodem\_set\_comm\_feature@{umodem\_set\_comm\_feature}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_set\_comm\_feature()}{umodem\_set\_comm\_feature()}}
{\footnotesize\ttfamily static \mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}} umodem\+\_\+set\+\_\+comm\+\_\+feature (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__device}{usb\+\_\+device}} $\ast$}]{udev,  }\item[{uint8\+\_\+t}]{iface\+\_\+no,  }\item[{uint16\+\_\+t}]{feature,  }\item[{uint16\+\_\+t}]{state }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00927}{927}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{umass_8c_source_l00179}{DPRINTF}}, \textbf{ feature}, \mbox{\hyperlink{usb__if_8m_source_l00051}{req}}, \textbf{ state}, \mbox{\hyperlink{usb__cdc_8h_source_l00126}{UCDC\+\_\+\+ABSTRACT\+\_\+\+STATE\+\_\+\+LENGTH}}, \mbox{\hyperlink{usb__cdc_8h_source_l00106}{UCDC\+\_\+\+SET\+\_\+\+COMM\+\_\+\+FEATURE}}, \mbox{\hyperlink{usbdi_8h_source_l00596}{usbd\+\_\+do\+\_\+request}}, \mbox{\hyperlink{usb__endian_8h_source_l00077}{USETW}}, \mbox{\hyperlink{usb_8h_source_l00177}{UT\+\_\+\+WRITE\+\_\+\+CLASS\+\_\+\+INTERFACE}}, and \mbox{\hyperlink{usb__cdc_8h_source_l00121}{usb\+\_\+cdc\+\_\+abstract\+\_\+state\+::w\+State}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00341}{umodem\+\_\+attach()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a530f336c357cdd7c99e59bc1807da837_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a0ad1fda686b465fc51c241983e8e0fde}\label{umodem_8c_a0ad1fda686b465fc51c241983e8e0fde}} 
\index{umodem.c@{umodem.c}!umodem\_start\_read@{umodem\_start\_read}}
\index{umodem\_start\_read@{umodem\_start\_read}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_start\_read()}{umodem\_start\_read()}}
{\footnotesize\ttfamily static void umodem\+\_\+start\+\_\+read (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00508}{508}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{umodem_8c_source_l00181}{umodem\+\_\+softc\+::sc\+\_\+xfer}}, \mbox{\hyperlink{umodem_8c_source_l00169}{UMODEM\+\_\+\+BULK\+\_\+\+RD}}, \mbox{\hyperlink{umodem_8c_source_l00171}{UMODEM\+\_\+\+INTR\+\_\+\+RD}}, and \mbox{\hyperlink{usb__transfer_8c_source_l01948}{usbd\+\_\+transfer\+\_\+start()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a0ad1fda686b465fc51c241983e8e0fde_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_aa4b0c9051304d2ac83a921a7efd27c84}\label{umodem_8c_aa4b0c9051304d2ac83a921a7efd27c84}} 
\index{umodem.c@{umodem.c}!umodem\_start\_write@{umodem\_start\_write}}
\index{umodem\_start\_write@{umodem\_start\_write}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_start\_write()}{umodem\_start\_write()}}
{\footnotesize\ttfamily static void umodem\+\_\+start\+\_\+write (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00532}{532}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{umodem_8c_source_l00181}{umodem\+\_\+softc\+::sc\+\_\+xfer}}, \mbox{\hyperlink{umodem_8c_source_l00168}{UMODEM\+\_\+\+BULK\+\_\+\+WR}}, \mbox{\hyperlink{umodem_8c_source_l00170}{UMODEM\+\_\+\+INTR\+\_\+\+WR}}, and \mbox{\hyperlink{usb__transfer_8c_source_l01948}{usbd\+\_\+transfer\+\_\+start()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_aa4b0c9051304d2ac83a921a7efd27c84_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a768f675dd8c25eb0e3ab628b1c57a0d9}\label{umodem_8c_a768f675dd8c25eb0e3ab628b1c57a0d9}} 
\index{umodem.c@{umodem.c}!umodem\_stop\_read@{umodem\_stop\_read}}
\index{umodem\_stop\_read@{umodem\_stop\_read}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_stop\_read()}{umodem\_stop\_read()}}
{\footnotesize\ttfamily static void umodem\+\_\+stop\+\_\+read (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00520}{520}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{umodem_8c_source_l00181}{umodem\+\_\+softc\+::sc\+\_\+xfer}}, \mbox{\hyperlink{umodem_8c_source_l00169}{UMODEM\+\_\+\+BULK\+\_\+\+RD}}, \mbox{\hyperlink{umodem_8c_source_l00171}{UMODEM\+\_\+\+INTR\+\_\+\+RD}}, and \mbox{\hyperlink{usb__transfer_8c_source_l01984}{usbd\+\_\+transfer\+\_\+stop()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a768f675dd8c25eb0e3ab628b1c57a0d9_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a3ffbaf21f3016632d08a187f55cd1668}\label{umodem_8c_a3ffbaf21f3016632d08a187f55cd1668}} 
\index{umodem.c@{umodem.c}!umodem\_stop\_write@{umodem\_stop\_write}}
\index{umodem\_stop\_write@{umodem\_stop\_write}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_stop\_write()}{umodem\_stop\_write()}}
{\footnotesize\ttfamily static void umodem\+\_\+stop\+\_\+write (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structucom__softc}{ucom\+\_\+softc}} $\ast$}]{ucom }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00541}{541}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{usb__serial_8h_source_l00170}{ucom\+\_\+softc\+::sc\+\_\+parent}}, \mbox{\hyperlink{umodem_8c_source_l00181}{umodem\+\_\+softc\+::sc\+\_\+xfer}}, \mbox{\hyperlink{umodem_8c_source_l00168}{UMODEM\+\_\+\+BULK\+\_\+\+WR}}, \mbox{\hyperlink{umodem_8c_source_l00170}{UMODEM\+\_\+\+INTR\+\_\+\+WR}}, and \mbox{\hyperlink{usb__transfer_8c_source_l01984}{usbd\+\_\+transfer\+\_\+stop()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a3ffbaf21f3016632d08a187f55cd1668_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_a75aef2b0d11e61aa70b1a02a00fa59b3}\label{umodem_8c_a75aef2b0d11e61aa70b1a02a00fa59b3}} 
\index{umodem.c@{umodem.c}!umodem\_write\_callback@{umodem\_write\_callback}}
\index{umodem\_write\_callback@{umodem\_write\_callback}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_write\_callback()}{umodem\_write\_callback()}}
{\footnotesize\ttfamily static void umodem\+\_\+write\+\_\+callback (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structusb__xfer}{usb\+\_\+xfer}} $\ast$}]{xfer,  }\item[{\mbox{\hyperlink{usbdi_8h_a5daf16538c7ea36dad2de85182c72945}{usb\+\_\+error\+\_\+t}}}]{error }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00858}{858}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



References \mbox{\hyperlink{if__runreg_8h_a9f8f252ecb5b3fb46dafe827231faf70}{error}}, \mbox{\hyperlink{umodem_8c_source_l00179}{umodem\+\_\+softc\+::sc\+\_\+ucom}}, \mbox{\hyperlink{usb__serial_8c_source_l01384}{ucom\+\_\+get\+\_\+data()}}, \mbox{\hyperlink{umodem_8c_source_l00165}{UMODEM\+\_\+\+BUF\+\_\+\+SIZE}}, \mbox{\hyperlink{usbdi_8h_source_l00051}{USB\+\_\+\+ERR\+\_\+\+CANCELLED}}, \mbox{\hyperlink{usbdi_8h_source_l00515}{USB\+\_\+\+GET\+\_\+\+STATE}}, \mbox{\hyperlink{usbdi_8h_source_l00502}{USB\+\_\+\+ST\+\_\+\+SETUP}}, \mbox{\hyperlink{usbdi_8h_source_l00503}{USB\+\_\+\+ST\+\_\+\+TRANSFERRED}}, \mbox{\hyperlink{usb__transfer_8c_source_l01719}{usbd\+\_\+transfer\+\_\+submit()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02156}{usbd\+\_\+xfer\+\_\+get\+\_\+frame()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02316}{usbd\+\_\+xfer\+\_\+set\+\_\+frame\+\_\+len()}}, \mbox{\hyperlink{usb__transfer_8c_source_l02754}{usbd\+\_\+xfer\+\_\+set\+\_\+stall()}}, and \mbox{\hyperlink{usb__transfer_8c_source_l03602}{usbd\+\_\+xfer\+\_\+softc()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d44/umodem_8c_a75aef2b0d11e61aa70b1a02a00fa59b3_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{umodem_8c_afc828e7bac9ee7ad4ae4d7d9ce8b3334}\label{umodem_8c_afc828e7bac9ee7ad4ae4d7d9ce8b3334}} 
\index{umodem.c@{umodem.c}!USB\_PNP\_DUAL\_INFO@{USB\_PNP\_DUAL\_INFO}}
\index{USB\_PNP\_DUAL\_INFO@{USB\_PNP\_DUAL\_INFO}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{USB\_PNP\_DUAL\_INFO()}{USB\_PNP\_DUAL\_INFO()}}
{\footnotesize\ttfamily USB\+\_\+\+PNP\+\_\+\+DUAL\+\_\+\+INFO (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{umodem_8c_a4851e1c262b7e4937af0c029789fa9b2}{umodem\+\_\+dual\+\_\+devs}}}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{umodem_8c_a22969523b113c1d1f32cd1f0ace00ef2}\label{umodem_8c_a22969523b113c1d1f32cd1f0ace00ef2}} 
\index{umodem.c@{umodem.c}!USB\_PNP\_HOST\_INFO@{USB\_PNP\_HOST\_INFO}}
\index{USB\_PNP\_HOST\_INFO@{USB\_PNP\_HOST\_INFO}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{USB\_PNP\_HOST\_INFO()}{USB\_PNP\_HOST\_INFO()}}
{\footnotesize\ttfamily USB\+\_\+\+PNP\+\_\+\+HOST\+\_\+\+INFO (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{umodem_8c_af4743736359dccaaf6c053d97b8a8a5f}{umodem\+\_\+host\+\_\+devs}}}]{ }\end{DoxyParamCaption})}



\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{umodem_8c_a8260d7415a69f8a319c0d6f761784816}\label{umodem_8c_a8260d7415a69f8a319c0d6f761784816}} 
\index{umodem.c@{umodem.c}!umodem\_attach@{umodem\_attach}}
\index{umodem\_attach@{umodem\_attach}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_attach}{umodem\_attach}}
{\footnotesize\ttfamily device\+\_\+attach\+\_\+t umodem\+\_\+attach\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00200}{200}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_aad6b75d5a33ee23fbf7493b44581f8b0}\label{umodem_8c_aad6b75d5a33ee23fbf7493b44581f8b0}} 
\index{umodem.c@{umodem.c}!umodem\_callback@{umodem\_callback}}
\index{umodem\_callback@{umodem\_callback}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_callback}{umodem\_callback}}
{\footnotesize\ttfamily const struct \mbox{\hyperlink{structucom__callback}{ucom\+\_\+callback}} umodem\+\_\+callback\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        .ucom\_cfg\_get\_status = \&\mbox{\hyperlink{umodem_8c_af26d7682b163671c7f5ce8d5d7bf6057}{umodem\_cfg\_get\_status}},}
\DoxyCodeLine{        .ucom\_cfg\_set\_dtr = \&\mbox{\hyperlink{umodem_8c_a08f557bf9cc8b1f7bceffbd7f109a388}{umodem\_cfg\_set\_dtr}},}
\DoxyCodeLine{        .ucom\_cfg\_set\_rts = \&\mbox{\hyperlink{umodem_8c_a6e2be7254ddecd49b02f89f2a1d7e449}{umodem\_cfg\_set\_rts}},}
\DoxyCodeLine{        .ucom\_cfg\_set\_break = \&\mbox{\hyperlink{umodem_8c_a0c2e92da009d5b82f80d13c2f9ee608a}{umodem\_cfg\_set\_break}},}
\DoxyCodeLine{        .ucom\_cfg\_param = \&\mbox{\hyperlink{umodem_8c_a4274784ee61a4221c71f6f981f90c963}{umodem\_cfg\_param}},}
\DoxyCodeLine{        .ucom\_pre\_param = \&\mbox{\hyperlink{umodem_8c_a3e44afa97272de488b3a5984bb8ae666}{umodem\_pre\_param}},}
\DoxyCodeLine{        .ucom\_ioctl = \&\mbox{\hyperlink{umodem_8c_a09e1d0f6824d4cd694348e9a193574a2}{umodem\_ioctl}},}
\DoxyCodeLine{        .ucom\_start\_read = \&\mbox{\hyperlink{umodem_8c_a0ad1fda686b465fc51c241983e8e0fde}{umodem\_start\_read}},}
\DoxyCodeLine{        .ucom\_stop\_read = \&\mbox{\hyperlink{umodem_8c_a768f675dd8c25eb0e3ab628b1c57a0d9}{umodem\_stop\_read}},}
\DoxyCodeLine{        .ucom\_start\_write = \&\mbox{\hyperlink{umodem_8c_aa4b0c9051304d2ac83a921a7efd27c84}{umodem\_start\_write}},}
\DoxyCodeLine{        .ucom\_stop\_write = \&\mbox{\hyperlink{umodem_8c_a3ffbaf21f3016632d08a187f55cd1668}{umodem\_stop\_write}},}
\DoxyCodeLine{        .ucom\_poll = \&\mbox{\hyperlink{umodem_8c_a8443dd23062cd42966e6d7ff33405f26}{umodem\_poll}},}
\DoxyCodeLine{        .ucom\_free = \&\mbox{\hyperlink{umodem_8c_a7ab37ea0f05664c10297223f621c2f76}{umodem\_free}},}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{umodem_8c_source_l00279}{279}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00341}{umodem\+\_\+attach()}}.

\mbox{\Hypertarget{umodem_8c_a43c44403e0ffc9d687f3241b3b4d595b}\label{umodem_8c_a43c44403e0ffc9d687f3241b3b4d595b}} 
\index{umodem.c@{umodem.c}!umodem\_config@{umodem\_config}}
\index{umodem\_config@{umodem\_config}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_config}{umodem\_config}}
{\footnotesize\ttfamily const struct \mbox{\hyperlink{structusb__config}{usb\+\_\+config}} umodem\+\_\+config\mbox{[}\mbox{\hyperlink{umodem_8c_af8654c714018c6241d9ebd01f3fb5a26a6234f768713f542994cd5078b9c196b8}{UMODEM\+\_\+\+N\+\_\+\+TRANSFER}}\mbox{]}\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00233}{233}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00341}{umodem\+\_\+attach()}}.

\mbox{\Hypertarget{umodem_8c_a89ac9df44f5a591071b56d140edd7aa6}\label{umodem_8c_a89ac9df44f5a591071b56d140edd7aa6}} 
\index{umodem.c@{umodem.c}!umodem\_detach@{umodem\_detach}}
\index{umodem\_detach@{umodem\_detach}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_detach}{umodem\_detach}}
{\footnotesize\ttfamily device\+\_\+detach\+\_\+t umodem\+\_\+detach\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00201}{201}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00341}{umodem\+\_\+attach()}}.

\mbox{\Hypertarget{umodem_8c_a18e41f6097b22aeedf7f73e46045759e}\label{umodem_8c_a18e41f6097b22aeedf7f73e46045759e}} 
\index{umodem.c@{umodem.c}!umodem\_devclass@{umodem\_devclass}}
\index{umodem\_devclass@{umodem\_devclass}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_devclass}{umodem\_devclass}}
{\footnotesize\ttfamily devclass\+\_\+t umodem\+\_\+devclass\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00306}{306}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_a0f2a32e26ada3e6851806e8ac9698ecd}\label{umodem_8c_a0f2a32e26ada3e6851806e8ac9698ecd}} 
\index{umodem.c@{umodem.c}!umodem\_driver@{umodem\_driver}}
\index{umodem\_driver@{umodem\_driver}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_driver}{umodem\_driver}}
{\footnotesize\ttfamily driver\+\_\+t umodem\+\_\+driver\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        .name = \textcolor{stringliteral}{"{}umodem"{}},}
\DoxyCodeLine{        .methods = \mbox{\hyperlink{umodem_8c_a7a0769ed28af5e3c80a4cc07488e8298}{umodem\_methods}},}
\DoxyCodeLine{        .size = \textcolor{keyword}{sizeof}(\textcolor{keyword}{struct }\mbox{\hyperlink{structumodem__softc}{umodem\_softc}}),}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{umodem_8c_source_l00308}{308}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_a4851e1c262b7e4937af0c029789fa9b2}\label{umodem_8c_a4851e1c262b7e4937af0c029789fa9b2}} 
\index{umodem.c@{umodem.c}!umodem\_dual\_devs@{umodem\_dual\_devs}}
\index{umodem\_dual\_devs@{umodem\_dual\_devs}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_dual\_devs}{umodem\_dual\_devs}}
{\footnotesize\ttfamily const \mbox{\hyperlink{usbdi_8h_af64e69291bcbb3b3649ec36583d47c87}{STRUCT\+\_\+\+USB\+\_\+\+DUAL\+\_\+\+ID}} umodem\+\_\+dual\+\_\+devs\mbox{[}$\,$\mbox{]}\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        }
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(\mbox{\hyperlink{usb_8h_a7ee8a2a46bb5ed7942883b57b7d866a1}{UICLASS\_CDC}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(\mbox{\hyperlink{usb_8h_ace94ac5934fa50385aae1f446dd2ea69}{UISUBCLASS\_ABSTRACT\_CONTROL\_MODEL}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(\mbox{\hyperlink{usb_8h_aa1934756964859731c3e44db069bce7a}{UIPROTO\_CDC\_AT}})\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(\mbox{\hyperlink{usb_8h_a7ee8a2a46bb5ed7942883b57b7d866a1}{UICLASS\_CDC}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(\mbox{\hyperlink{usb_8h_ace94ac5934fa50385aae1f446dd2ea69}{UISUBCLASS\_ABSTRACT\_CONTROL\_MODEL}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(\mbox{\hyperlink{usb_8h_a0102f19193b60623a80c804c7d66c344}{UIPROTO\_CDC\_NONE}})\},}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{umodem_8c_source_l00122}{122}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00322}{umodem\+\_\+probe()}}.

\mbox{\Hypertarget{umodem_8c_a72165ba972dafa9b19f45a63052ed769}\label{umodem_8c_a72165ba972dafa9b19f45a63052ed769}} 
\index{umodem.c@{umodem.c}!umodem\_handle\_request@{umodem\_handle\_request}}
\index{umodem\_handle\_request@{umodem\_handle\_request}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_handle\_request}{umodem\_handle\_request}}
{\footnotesize\ttfamily usb\+\_\+handle\+\_\+request\+\_\+t umodem\+\_\+handle\+\_\+request\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00202}{202}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_af4743736359dccaaf6c053d97b8a8a5f}\label{umodem_8c_af4743736359dccaaf6c053d97b8a8a5f}} 
\index{umodem.c@{umodem.c}!umodem\_host\_devs@{umodem\_host\_devs}}
\index{umodem\_host\_devs@{umodem\_host\_devs}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_host\_devs}{umodem\_host\_devs}}
{\footnotesize\ttfamily const \mbox{\hyperlink{usbdi_8h_acf836fd8d6349b66a31f45420728da8d}{STRUCT\+\_\+\+USB\+\_\+\+HOST\+\_\+\+ID}} umodem\+\_\+host\+\_\+devs\mbox{[}$\,$\mbox{]}\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        }
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_ab5d541c01afa5eb1a62de5dc85273298}{USB\_VENDOR}}(USB\_VENDOR\_HUAWEI), \mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(\mbox{\hyperlink{usb_8h_a62544a681ab6641be1497118649e4c25}{UICLASS\_VENDOR}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(0x02), \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(0x01)\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_ab5d541c01afa5eb1a62de5dc85273298}{USB\_VENDOR}}(USB\_VENDOR\_HUAWEI), \mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(\mbox{\hyperlink{usb_8h_a62544a681ab6641be1497118649e4c25}{UICLASS\_VENDOR}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(0x02), \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(0x02)\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_ab5d541c01afa5eb1a62de5dc85273298}{USB\_VENDOR}}(USB\_VENDOR\_HUAWEI), \mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(\mbox{\hyperlink{usb_8h_a62544a681ab6641be1497118649e4c25}{UICLASS\_VENDOR}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(0x02), \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(0x10)\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_ab5d541c01afa5eb1a62de5dc85273298}{USB\_VENDOR}}(USB\_VENDOR\_HUAWEI), \mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(\mbox{\hyperlink{usb_8h_a62544a681ab6641be1497118649e4c25}{UICLASS\_VENDOR}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(0x02), \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(0x12)\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_ab5d541c01afa5eb1a62de5dc85273298}{USB\_VENDOR}}(USB\_VENDOR\_HUAWEI), \mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(\mbox{\hyperlink{usb_8h_a62544a681ab6641be1497118649e4c25}{UICLASS\_VENDOR}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(0x02), \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(0x61)\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_ab5d541c01afa5eb1a62de5dc85273298}{USB\_VENDOR}}(USB\_VENDOR\_HUAWEI), \mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(\mbox{\hyperlink{usb_8h_a62544a681ab6641be1497118649e4c25}{UICLASS\_VENDOR}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(0x02), \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(0x62)\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_ab5d541c01afa5eb1a62de5dc85273298}{USB\_VENDOR}}(USB\_VENDOR\_HUAWEI),\mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(\mbox{\hyperlink{usb_8h_a7ee8a2a46bb5ed7942883b57b7d866a1}{UICLASS\_CDC}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(\mbox{\hyperlink{usb_8h_ace94ac5934fa50385aae1f446dd2ea69}{UISUBCLASS\_ABSTRACT\_CONTROL\_MODEL}}),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(0xFF)\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_ab5d541c01afa5eb1a62de5dc85273298}{USB\_VENDOR}}(USB\_VENDOR\_HUAWEI), \mbox{\hyperlink{usbdi_8h_a74c0bae2d55b3014e0583ec8ea4d5dc0}{USB\_IFACE\_CLASS}}(0xFF),}
\DoxyCodeLine{                \mbox{\hyperlink{usbdi_8h_a15ff0bc986f953c98128bd03e394b571}{USB\_IFACE\_SUBCLASS}}(0xF), \mbox{\hyperlink{usbdi_8h_a99fe00139ae050549bc725ebd3c0d5cc}{USB\_IFACE\_PROTOCOL}}(0xFF)\},}
\DoxyCodeLine{        }
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_acdab3edd999014815e8baeb9b33e9071}{USB\_VPI}}(USB\_VENDOR\_KYOCERA, USB\_PRODUCT\_KYOCERA\_AHK3001V, 1)\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_acdab3edd999014815e8baeb9b33e9071}{USB\_VPI}}(USB\_VENDOR\_SIERRA, USB\_PRODUCT\_SIERRA\_MC5720, 1)\},}
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_acdab3edd999014815e8baeb9b33e9071}{USB\_VPI}}(USB\_VENDOR\_CURITEL, USB\_PRODUCT\_CURITEL\_PC5740, 1)\},}
\DoxyCodeLine{        }
\DoxyCodeLine{        \{\mbox{\hyperlink{usbdi_8h_ab5d541c01afa5eb1a62de5dc85273298}{USB\_VENDOR}}(USB\_VENDOR\_WINBOND), \mbox{\hyperlink{usbdi_8h_a3a6e3012f2ff278a6c7a19747b9f1650}{USB\_PRODUCT}}(USB\_PRODUCT\_WINBOND\_CDC)\},}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{umodem_8c_source_l00132}{132}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.



Referenced by \mbox{\hyperlink{umodem_8c_source_l00322}{umodem\+\_\+probe()}}.

\mbox{\Hypertarget{umodem_8c_ac8741afef4bcfec3b7a2880f2aafe674}\label{umodem_8c_ac8741afef4bcfec3b7a2880f2aafe674}} 
\index{umodem.c@{umodem.c}!umodem\_intr\_read\_callback@{umodem\_intr\_read\_callback}}
\index{umodem\_intr\_read\_callback@{umodem\_intr\_read\_callback}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_intr\_read\_callback}{umodem\_intr\_read\_callback}}
{\footnotesize\ttfamily \mbox{\hyperlink{usbdi_8h_aad1085e1e87347ed71e554c4b0209239}{usb\+\_\+callback\+\_\+t}} umodem\+\_\+intr\+\_\+read\+\_\+callback\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00206}{206}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_aaaeb2c6ff8b7d424f388740ec4745534}\label{umodem_8c_aaaeb2c6ff8b7d424f388740ec4745534}} 
\index{umodem.c@{umodem.c}!umodem\_intr\_write\_callback@{umodem\_intr\_write\_callback}}
\index{umodem\_intr\_write\_callback@{umodem\_intr\_write\_callback}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_intr\_write\_callback}{umodem\_intr\_write\_callback}}
{\footnotesize\ttfamily \mbox{\hyperlink{usbdi_8h_aad1085e1e87347ed71e554c4b0209239}{usb\+\_\+callback\+\_\+t}} umodem\+\_\+intr\+\_\+write\+\_\+callback\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00207}{207}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_a7a0769ed28af5e3c80a4cc07488e8298}\label{umodem_8c_a7a0769ed28af5e3c80a4cc07488e8298}} 
\index{umodem.c@{umodem.c}!umodem\_methods@{umodem\_methods}}
\index{umodem\_methods@{umodem\_methods}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_methods}{umodem\_methods}}
{\footnotesize\ttfamily device\+\_\+method\+\_\+t umodem\+\_\+methods\mbox{[}$\,$\mbox{]}\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        }
\DoxyCodeLine{        DEVMETHOD(\mbox{\hyperlink{usb__handle__request_8c_acd7ff252b93f3bd9e87d0f8b3eb3ffa5}{usb\_handle\_request}}, \mbox{\hyperlink{umodem_8c_a72165ba972dafa9b19f45a63052ed769}{umodem\_handle\_request}}),}
\DoxyCodeLine{}
\DoxyCodeLine{        }
\DoxyCodeLine{        DEVMETHOD(device\_probe, \mbox{\hyperlink{umodem_8c_a4f1c8881b927e1d677207bf0a57a45ae}{umodem\_probe}}),}
\DoxyCodeLine{        DEVMETHOD(device\_attach, \mbox{\hyperlink{umodem_8c_a8260d7415a69f8a319c0d6f761784816}{umodem\_attach}}),}
\DoxyCodeLine{        DEVMETHOD(device\_detach, \mbox{\hyperlink{umodem_8c_a89ac9df44f5a591071b56d140edd7aa6}{umodem\_detach}}),}
\DoxyCodeLine{        DEVMETHOD\_END}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{umodem_8c_source_l00295}{295}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_a4f1c8881b927e1d677207bf0a57a45ae}\label{umodem_8c_a4f1c8881b927e1d677207bf0a57a45ae}} 
\index{umodem.c@{umodem.c}!umodem\_probe@{umodem\_probe}}
\index{umodem\_probe@{umodem\_probe}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_probe}{umodem\_probe}}
{\footnotesize\ttfamily device\+\_\+probe\+\_\+t umodem\+\_\+probe\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00199}{199}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_ae9fa59a604623434cdd4b0b21edeea8f}\label{umodem_8c_ae9fa59a604623434cdd4b0b21edeea8f}} 
\index{umodem.c@{umodem.c}!umodem\_read\_callback@{umodem\_read\_callback}}
\index{umodem\_read\_callback@{umodem\_read\_callback}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_read\_callback}{umodem\_read\_callback}}
{\footnotesize\ttfamily \mbox{\hyperlink{usbdi_8h_aad1085e1e87347ed71e554c4b0209239}{usb\+\_\+callback\+\_\+t}} umodem\+\_\+read\+\_\+callback\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00209}{209}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

\mbox{\Hypertarget{umodem_8c_a1bd45e9812900e75f81d07060c44a364}\label{umodem_8c_a1bd45e9812900e75f81d07060c44a364}} 
\index{umodem.c@{umodem.c}!umodem\_write\_callback@{umodem\_write\_callback}}
\index{umodem\_write\_callback@{umodem\_write\_callback}!umodem.c@{umodem.c}}
\doxysubsubsection{\texorpdfstring{umodem\_write\_callback}{umodem\_write\_callback}}
{\footnotesize\ttfamily \mbox{\hyperlink{usbdi_8h_aad1085e1e87347ed71e554c4b0209239}{usb\+\_\+callback\+\_\+t}} umodem\+\_\+write\+\_\+callback\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{umodem_8c_source_l00208}{208}} of file \mbox{\hyperlink{umodem_8c_source}{umodem.\+c}}.

