\hypertarget{mlx5fpga__tools__main_8c}{}\doxysection{dev/mlx5/mlx5\+\_\+fpga\+\_\+tools/mlx5fpga\+\_\+tools\+\_\+main.c File Reference}
\label{mlx5fpga__tools__main_8c}\index{dev/mlx5/mlx5\_fpga\_tools/mlx5fpga\_tools\_main.c@{dev/mlx5/mlx5\_fpga\_tools/mlx5fpga\_tools\_main.c}}
{\ttfamily \#include $<$linux/module.\+h$>$}\newline
{\ttfamily \#include $<$dev/mlx5/mlx5\+\_\+fpga\+\_\+tools/tools.\+h$>$}\newline
{\ttfamily \#include $<$dev/mlx5/mlx5\+\_\+fpga\+\_\+tools/tools\+\_\+char.\+h$>$}\newline
Include dependency graph for mlx5fpga\+\_\+tools\+\_\+main.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{dd/d09/mlx5fpga__tools__main_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{mlx5fpga__tools__main_8c_ad2705d21c4b8b00518399218b7534249}{MODULE\+\_\+\+DEPEND}} (mlx5fpga\+\_\+tools, mlx5, 1, 1, 1)
\item 
\mbox{\hyperlink{mlx5fpga__tools__main_8c_ada569a27e19b643361480e46b44865bf}{MODULE\+\_\+\+DEPEND}} (mlx5fpga\+\_\+tools, mlx5fpga, 1, 1, 1)
\item 
\mbox{\hyperlink{mlx5fpga__tools__main_8c_a63a7fe54f4d3987c6ead93c32d966fe9}{MODULE\+\_\+\+VERSION}} (mlx5fpga\+\_\+tools, 1)
\item 
static void \mbox{\hyperlink{mlx5fpga__tools__main_8c_a147f24a5182a440404cdbe7acb6db06e}{mlx5\+\_\+fpga\+\_\+tools\+\_\+create}} (struct mlx5\+\_\+fpga\+\_\+device $\ast$fdev)
\item 
static int \mbox{\hyperlink{mlx5fpga__tools__main_8c_a7064cf4479a704000b0cd8116c7885b5}{mlx5\+\_\+fpga\+\_\+tools\+\_\+add}} (struct mlx5\+\_\+fpga\+\_\+device $\ast$fdev, u32 vid, u16 pid)
\item 
static void \mbox{\hyperlink{mlx5fpga__tools__main_8c_a47a98539f730be3dfd53f4fb7be9ed97}{mlx5\+\_\+fpga\+\_\+tools\+\_\+remove}} (struct mlx5\+\_\+fpga\+\_\+device $\ast$fdev)
\item 
static void \mbox{\hyperlink{mlx5fpga__tools__main_8c_ac3572324bc1d2c8fb8f7a755eeafcca7}{mlx5\+\_\+fpga\+\_\+tools\+\_\+destroy}} (struct mlx5\+\_\+fpga\+\_\+device $\ast$fdev)
\item 
struct \mbox{\hyperlink{structmlx5__fpga__tools__dev}{mlx5\+\_\+fpga\+\_\+tools\+\_\+dev}} $\ast$ \mbox{\hyperlink{mlx5fpga__tools__main_8c_a819ecf2a368dbd3af2593db870aaf095}{mlx5\+\_\+fpga\+\_\+tools\+\_\+alloc}} (struct mlx5\+\_\+fpga\+\_\+device $\ast$fdev)
\item 
void \mbox{\hyperlink{mlx5fpga__tools__main_8c_a1ef987d802bbe748124cf608c10207de}{mlx5\+\_\+fpga\+\_\+tools\+\_\+free}} (struct \mbox{\hyperlink{structmlx5__fpga__tools__dev}{mlx5\+\_\+fpga\+\_\+tools\+\_\+dev}} $\ast$tdev)
\item 
static int \+\_\+\+\_\+init \mbox{\hyperlink{mlx5fpga__tools__main_8c_a62d8abd398f407e6bd68550ae7d7cec1}{mlx5\+\_\+fpga\+\_\+tools\+\_\+init}} (void)
\item 
static void \+\_\+\+\_\+exit \mbox{\hyperlink{mlx5fpga__tools__main_8c_a0245adaa93fa1a1be528c9a97a0e6cd9}{mlx5\+\_\+fpga\+\_\+tools\+\_\+exit}} (void)
\item 
\mbox{\hyperlink{mlx5fpga__tools__main_8c_a4e673e98072480159cf9c13e7663d3db}{module\+\_\+init\+\_\+order}} (\mbox{\hyperlink{mlx5fpga__tools__main_8c_a62d8abd398f407e6bd68550ae7d7cec1}{mlx5\+\_\+fpga\+\_\+tools\+\_\+init}}, SI\+\_\+\+ORDER\+\_\+\+SECOND)
\item 
\mbox{\hyperlink{mlx5fpga__tools__main_8c_a13da5edc16455e14e12baa90ea04a34f}{module\+\_\+exit\+\_\+order}} (\mbox{\hyperlink{mlx5fpga__tools__main_8c_a0245adaa93fa1a1be528c9a97a0e6cd9}{mlx5\+\_\+fpga\+\_\+tools\+\_\+exit}}, SI\+\_\+\+ORDER\+\_\+\+SECOND)
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static struct \mbox{\hyperlink{structmlx5__fpga__client}{mlx5\+\_\+fpga\+\_\+client}} \mbox{\hyperlink{mlx5fpga__tools__main_8c_a5908f7f8d0dfd1d26d2790422981733a}{mlx5\+\_\+fpga\+\_\+tools\+\_\+client}}
\end{DoxyCompactItemize}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a7064cf4479a704000b0cd8116c7885b5}\label{mlx5fpga__tools__main_8c_a7064cf4479a704000b0cd8116c7885b5}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!mlx5\_fpga\_tools\_add@{mlx5\_fpga\_tools\_add}}
\index{mlx5\_fpga\_tools\_add@{mlx5\_fpga\_tools\_add}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_fpga\_tools\_add()}{mlx5\_fpga\_tools\_add()}}
{\footnotesize\ttfamily static int mlx5\+\_\+fpga\+\_\+tools\+\_\+add (\begin{DoxyParamCaption}\item[{struct mlx5\+\_\+fpga\+\_\+device $\ast$}]{fdev,  }\item[{u32}]{vid,  }\item[{u16}]{pid }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00106}{106}} of file \mbox{\hyperlink{mlx5fpga__tools__main_8c_source}{mlx5fpga\+\_\+tools\+\_\+main.\+c}}.

\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a819ecf2a368dbd3af2593db870aaf095}\label{mlx5fpga__tools__main_8c_a819ecf2a368dbd3af2593db870aaf095}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!mlx5\_fpga\_tools\_alloc@{mlx5\_fpga\_tools\_alloc}}
\index{mlx5\_fpga\_tools\_alloc@{mlx5\_fpga\_tools\_alloc}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_fpga\_tools\_alloc()}{mlx5\_fpga\_tools\_alloc()}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structmlx5__fpga__tools__dev}{mlx5\+\_\+fpga\+\_\+tools\+\_\+dev}} $\ast$ mlx5\+\_\+fpga\+\_\+tools\+\_\+alloc (\begin{DoxyParamCaption}\item[{struct mlx5\+\_\+fpga\+\_\+device $\ast$}]{fdev }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00062}{62}} of file \mbox{\hyperlink{mlx5fpga__tools__main_8c_source}{mlx5fpga\+\_\+tools\+\_\+main.\+c}}.



References \mbox{\hyperlink{tools_8h_source_l00049}{mlx5\+\_\+fpga\+\_\+tools\+\_\+dev\+::fdev}}, \mbox{\hyperlink{tools_8h_source_l00052}{mlx5\+\_\+fpga\+\_\+tools\+\_\+dev\+::lock}}, and \mbox{\hyperlink{mlx5fpga__tools__char_8c_source_l00290}{mlx5\+\_\+fpga\+\_\+tools\+\_\+char\+\_\+add\+\_\+one()}}.



Referenced by \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00093}{mlx5\+\_\+fpga\+\_\+tools\+\_\+create()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d4a/mlx5fpga__tools__main_8c_a819ecf2a368dbd3af2593db870aaf095_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d4a/mlx5fpga__tools__main_8c_a819ecf2a368dbd3af2593db870aaf095_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a147f24a5182a440404cdbe7acb6db06e}\label{mlx5fpga__tools__main_8c_a147f24a5182a440404cdbe7acb6db06e}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!mlx5\_fpga\_tools\_create@{mlx5\_fpga\_tools\_create}}
\index{mlx5\_fpga\_tools\_create@{mlx5\_fpga\_tools\_create}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_fpga\_tools\_create()}{mlx5\_fpga\_tools\_create()}}
{\footnotesize\ttfamily static void mlx5\+\_\+fpga\+\_\+tools\+\_\+create (\begin{DoxyParamCaption}\item[{struct mlx5\+\_\+fpga\+\_\+device $\ast$}]{fdev }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00093}{93}} of file \mbox{\hyperlink{mlx5fpga__tools__main_8c_source}{mlx5fpga\+\_\+tools\+\_\+main.\+c}}.



References \mbox{\hyperlink{tools_8h_source_l00049}{mlx5\+\_\+fpga\+\_\+tools\+\_\+dev\+::fdev}}, \mbox{\hyperlink{mlx5fpga__sdk_8c_source_l00279}{mlx5\+\_\+fpga\+\_\+client\+\_\+data\+\_\+set()}}, \mbox{\hyperlink{mlx5fpga__sdk_8c_source_l00529}{mlx5\+\_\+fpga\+\_\+dev()}}, \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00062}{mlx5\+\_\+fpga\+\_\+tools\+\_\+alloc()}}, and \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00054}{mlx5\+\_\+fpga\+\_\+tools\+\_\+client}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d4a/mlx5fpga__tools__main_8c_a147f24a5182a440404cdbe7acb6db06e_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5fpga__tools__main_8c_ac3572324bc1d2c8fb8f7a755eeafcca7}\label{mlx5fpga__tools__main_8c_ac3572324bc1d2c8fb8f7a755eeafcca7}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!mlx5\_fpga\_tools\_destroy@{mlx5\_fpga\_tools\_destroy}}
\index{mlx5\_fpga\_tools\_destroy@{mlx5\_fpga\_tools\_destroy}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_fpga\_tools\_destroy()}{mlx5\_fpga\_tools\_destroy()}}
{\footnotesize\ttfamily static void mlx5\+\_\+fpga\+\_\+tools\+\_\+destroy (\begin{DoxyParamCaption}\item[{struct mlx5\+\_\+fpga\+\_\+device $\ast$}]{fdev }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00115}{115}} of file \mbox{\hyperlink{mlx5fpga__tools__main_8c_source}{mlx5fpga\+\_\+tools\+\_\+main.\+c}}.



References \mbox{\hyperlink{tools_8h_source_l00049}{mlx5\+\_\+fpga\+\_\+tools\+\_\+dev\+::fdev}}, \mbox{\hyperlink{mlx5fpga__sdk_8c_source_l00295}{mlx5\+\_\+fpga\+\_\+client\+\_\+data\+\_\+get()}}, \mbox{\hyperlink{mlx5fpga__sdk_8c_source_l00529}{mlx5\+\_\+fpga\+\_\+dev()}}, \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00054}{mlx5\+\_\+fpga\+\_\+tools\+\_\+client}}, and \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00087}{mlx5\+\_\+fpga\+\_\+tools\+\_\+free()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d4a/mlx5fpga__tools__main_8c_ac3572324bc1d2c8fb8f7a755eeafcca7_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a0245adaa93fa1a1be528c9a97a0e6cd9}\label{mlx5fpga__tools__main_8c_a0245adaa93fa1a1be528c9a97a0e6cd9}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!mlx5\_fpga\_tools\_exit@{mlx5\_fpga\_tools\_exit}}
\index{mlx5\_fpga\_tools\_exit@{mlx5\_fpga\_tools\_exit}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_fpga\_tools\_exit()}{mlx5\_fpga\_tools\_exit()}}
{\footnotesize\ttfamily static void \+\_\+\+\_\+exit mlx5\+\_\+fpga\+\_\+tools\+\_\+exit (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00136}{136}} of file \mbox{\hyperlink{mlx5fpga__tools__main_8c_source}{mlx5fpga\+\_\+tools\+\_\+main.\+c}}.



References \mbox{\hyperlink{mlx5fpga__core_8c_source_l00544}{mlx5\+\_\+fpga\+\_\+client\+\_\+unregister()}}, \mbox{\hyperlink{mlx5fpga__tools__char_8c_source_l00338}{mlx5\+\_\+fpga\+\_\+tools\+\_\+char\+\_\+deinit()}}, and \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00054}{mlx5\+\_\+fpga\+\_\+tools\+\_\+client}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d4a/mlx5fpga__tools__main_8c_a0245adaa93fa1a1be528c9a97a0e6cd9_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a1ef987d802bbe748124cf608c10207de}\label{mlx5fpga__tools__main_8c_a1ef987d802bbe748124cf608c10207de}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!mlx5\_fpga\_tools\_free@{mlx5\_fpga\_tools\_free}}
\index{mlx5\_fpga\_tools\_free@{mlx5\_fpga\_tools\_free}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_fpga\_tools\_free()}{mlx5\_fpga\_tools\_free()}}
{\footnotesize\ttfamily void mlx5\+\_\+fpga\+\_\+tools\+\_\+free (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structmlx5__fpga__tools__dev}{mlx5\+\_\+fpga\+\_\+tools\+\_\+dev}} $\ast$}]{tdev }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00087}{87}} of file \mbox{\hyperlink{mlx5fpga__tools__main_8c_source}{mlx5fpga\+\_\+tools\+\_\+main.\+c}}.



References \mbox{\hyperlink{mlx5fpga__tools__char_8c_source_l00322}{mlx5\+\_\+fpga\+\_\+tools\+\_\+char\+\_\+remove\+\_\+one()}}.



Referenced by \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00115}{mlx5\+\_\+fpga\+\_\+tools\+\_\+destroy()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d4a/mlx5fpga__tools__main_8c_a1ef987d802bbe748124cf608c10207de_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d4a/mlx5fpga__tools__main_8c_a1ef987d802bbe748124cf608c10207de_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a62d8abd398f407e6bd68550ae7d7cec1}\label{mlx5fpga__tools__main_8c_a62d8abd398f407e6bd68550ae7d7cec1}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!mlx5\_fpga\_tools\_init@{mlx5\_fpga\_tools\_init}}
\index{mlx5\_fpga\_tools\_init@{mlx5\_fpga\_tools\_init}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_fpga\_tools\_init()}{mlx5\_fpga\_tools\_init()}}
{\footnotesize\ttfamily static int \+\_\+\+\_\+init mlx5\+\_\+fpga\+\_\+tools\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00126}{126}} of file \mbox{\hyperlink{mlx5fpga__tools__main_8c_source}{mlx5fpga\+\_\+tools\+\_\+main.\+c}}.



References \mbox{\hyperlink{mlx5fpga__core_8c_source_l00507}{mlx5\+\_\+fpga\+\_\+client\+\_\+register()}}, \mbox{\hyperlink{mlx5fpga__tools__char_8c_source_l00331}{mlx5\+\_\+fpga\+\_\+tools\+\_\+char\+\_\+init()}}, and \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00054}{mlx5\+\_\+fpga\+\_\+tools\+\_\+client}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d4a/mlx5fpga__tools__main_8c_a62d8abd398f407e6bd68550ae7d7cec1_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a47a98539f730be3dfd53f4fb7be9ed97}\label{mlx5fpga__tools__main_8c_a47a98539f730be3dfd53f4fb7be9ed97}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!mlx5\_fpga\_tools\_remove@{mlx5\_fpga\_tools\_remove}}
\index{mlx5\_fpga\_tools\_remove@{mlx5\_fpga\_tools\_remove}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_fpga\_tools\_remove()}{mlx5\_fpga\_tools\_remove()}}
{\footnotesize\ttfamily static void mlx5\+\_\+fpga\+\_\+tools\+\_\+remove (\begin{DoxyParamCaption}\item[{struct mlx5\+\_\+fpga\+\_\+device $\ast$}]{fdev }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00111}{111}} of file \mbox{\hyperlink{mlx5fpga__tools__main_8c_source}{mlx5fpga\+\_\+tools\+\_\+main.\+c}}.

\mbox{\Hypertarget{mlx5fpga__tools__main_8c_ad2705d21c4b8b00518399218b7534249}\label{mlx5fpga__tools__main_8c_ad2705d21c4b8b00518399218b7534249}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!MODULE\_DEPEND@{MODULE\_DEPEND}}
\index{MODULE\_DEPEND@{MODULE\_DEPEND}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{MODULE\_DEPEND()}{MODULE\_DEPEND()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily MODULE\+\_\+\+DEPEND (\begin{DoxyParamCaption}\item[{mlx5fpga\+\_\+tools}]{,  }\item[{mlx5}]{,  }\item[{1}]{,  }\item[{1}]{,  }\item[{1}]{ }\end{DoxyParamCaption})}

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

\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a13da5edc16455e14e12baa90ea04a34f}\label{mlx5fpga__tools__main_8c_a13da5edc16455e14e12baa90ea04a34f}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!module\_exit\_order@{module\_exit\_order}}
\index{module\_exit\_order@{module\_exit\_order}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{module\_exit\_order()}{module\_exit\_order()}}
{\footnotesize\ttfamily module\+\_\+exit\+\_\+order (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{mlx5fpga__tools__main_8c_a0245adaa93fa1a1be528c9a97a0e6cd9}{mlx5\+\_\+fpga\+\_\+tools\+\_\+exit}}}]{,  }\item[{SI\+\_\+\+ORDER\+\_\+\+SECOND}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a4e673e98072480159cf9c13e7663d3db}\label{mlx5fpga__tools__main_8c_a4e673e98072480159cf9c13e7663d3db}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!module\_init\_order@{module\_init\_order}}
\index{module\_init\_order@{module\_init\_order}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{module\_init\_order()}{module\_init\_order()}}
{\footnotesize\ttfamily module\+\_\+init\+\_\+order (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{mlx5fpga__tools__main_8c_a62d8abd398f407e6bd68550ae7d7cec1}{mlx5\+\_\+fpga\+\_\+tools\+\_\+init}}}]{,  }\item[{SI\+\_\+\+ORDER\+\_\+\+SECOND}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a63a7fe54f4d3987c6ead93c32d966fe9}\label{mlx5fpga__tools__main_8c_a63a7fe54f4d3987c6ead93c32d966fe9}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!MODULE\_VERSION@{MODULE\_VERSION}}
\index{MODULE\_VERSION@{MODULE\_VERSION}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{MODULE\_VERSION()}{MODULE\_VERSION()}}
{\footnotesize\ttfamily MODULE\+\_\+\+VERSION (\begin{DoxyParamCaption}\item[{mlx5fpga\+\_\+tools}]{,  }\item[{1}]{ }\end{DoxyParamCaption})}



\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{mlx5fpga__tools__main_8c_a5908f7f8d0dfd1d26d2790422981733a}\label{mlx5fpga__tools__main_8c_a5908f7f8d0dfd1d26d2790422981733a}} 
\index{mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}!mlx5\_fpga\_tools\_client@{mlx5\_fpga\_tools\_client}}
\index{mlx5\_fpga\_tools\_client@{mlx5\_fpga\_tools\_client}!mlx5fpga\_tools\_main.c@{mlx5fpga\_tools\_main.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_fpga\_tools\_client}{mlx5\_fpga\_tools\_client}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structmlx5__fpga__client}{mlx5\+\_\+fpga\+\_\+client}} mlx5\+\_\+fpga\+\_\+tools\+\_\+client\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        .name = \mbox{\hyperlink{tools_8h_af110801a5be94b102d360cc24000ad6a}{MLX5\_FPGA\_TOOLS\_DRIVER\_NAME}},}
\DoxyCodeLine{        .create = \mbox{\hyperlink{mlx5fpga__tools__main_8c_a147f24a5182a440404cdbe7acb6db06e}{mlx5\_fpga\_tools\_create}},}
\DoxyCodeLine{        .add = \mbox{\hyperlink{mlx5fpga__tools__main_8c_a7064cf4479a704000b0cd8116c7885b5}{mlx5\_fpga\_tools\_add}},}
\DoxyCodeLine{        .remove = \mbox{\hyperlink{mlx5fpga__tools__main_8c_a47a98539f730be3dfd53f4fb7be9ed97}{mlx5\_fpga\_tools\_remove}},}
\DoxyCodeLine{        .destroy = \mbox{\hyperlink{mlx5fpga__tools__main_8c_ac3572324bc1d2c8fb8f7a755eeafcca7}{mlx5\_fpga\_tools\_destroy}},}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00054}{54}} of file \mbox{\hyperlink{mlx5fpga__tools__main_8c_source}{mlx5fpga\+\_\+tools\+\_\+main.\+c}}.



Referenced by \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00093}{mlx5\+\_\+fpga\+\_\+tools\+\_\+create()}}, \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00115}{mlx5\+\_\+fpga\+\_\+tools\+\_\+destroy()}}, \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00136}{mlx5\+\_\+fpga\+\_\+tools\+\_\+exit()}}, and \mbox{\hyperlink{mlx5fpga__tools__main_8c_source_l00126}{mlx5\+\_\+fpga\+\_\+tools\+\_\+init()}}.

