\hypertarget{mlx5__tls_8c}{}\doxysection{dev/mlx5/mlx5\+\_\+core/mlx5\+\_\+tls.c File Reference}
\label{mlx5__tls_8c}\index{dev/mlx5/mlx5\_core/mlx5\_tls.c@{dev/mlx5/mlx5\_core/mlx5\_tls.c}}
{\ttfamily \#include \char`\"{}opt\+\_\+rss.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}opt\+\_\+ratelimit.\+h\char`\"{}}\newline
{\ttfamily \#include $<$linux/kernel.\+h$>$}\newline
{\ttfamily \#include $<$linux/module.\+h$>$}\newline
{\ttfamily \#include $<$dev/mlx5/driver.\+h$>$}\newline
{\ttfamily \#include $<$dev/mlx5/tls.\+h$>$}\newline
{\ttfamily \#include $<$dev/mlx5/mlx5\+\_\+core/mlx5\+\_\+core.\+h$>$}\newline
{\ttfamily \#include $<$dev/mlx5/mlx5\+\_\+core/transobj.\+h$>$}\newline
Include dependency graph for mlx5\+\_\+tls.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d6/de3/mlx5__tls_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \mbox{\hyperlink{mlx5__tls_8c_a12ad79d75719d67815a938331297bea1}{mlx5\+\_\+encryption\+\_\+key\+\_\+create}} (struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$mdev, u32 pdn, const void $\ast$p\+\_\+key, u32 key\+\_\+len, u32 $\ast$p\+\_\+obj\+\_\+id)
\item 
int \mbox{\hyperlink{mlx5__tls_8c_acaf4b93cdf33dbdbd90fa3d3de424803}{mlx5\+\_\+encryption\+\_\+key\+\_\+destroy}} (struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$mdev, u32 oid)
\item 
int \mbox{\hyperlink{mlx5__tls_8c_a04f53bbfd8f233950819b6f81ccf1a64}{mlx5\+\_\+tls\+\_\+open\+\_\+tis}} (struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$mdev, int \mbox{\hyperlink{en_8h_a0cea5104d05c6d3949115ddd0eed432e}{tc}}, int tdn, int pdn, u32 $\ast$p\+\_\+tisn)
\item 
void \mbox{\hyperlink{mlx5__tls_8c_abe216d2526d653b1858bb2eea6b7a2ab}{mlx5\+\_\+tls\+\_\+close\+\_\+tis}} (struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$mdev, u32 \mbox{\hyperlink{en__hw__tls_8h_a33d586020a05722555d43c4e38a3d3bc}{tisn}})
\item 
int \mbox{\hyperlink{mlx5__tls_8c_adeaad2fdb6996fab9304d2840626c5c0}{mlx5\+\_\+tls\+\_\+open\+\_\+tir}} (struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$mdev, int tdn, int \mbox{\hyperlink{en_8h_aab1d72225f1261399d9944a11816f74d}{rqtn}}, u32 $\ast$p\+\_\+tirn)
\item 
void \mbox{\hyperlink{mlx5__tls_8c_af92381f137a851572518e9d4e5129304}{mlx5\+\_\+tls\+\_\+close\+\_\+tir}} (struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$mdev, u32 \mbox{\hyperlink{en__hw__tls__rx_8h_aa62e8a451871642b40879686a141fd20}{tirn}})
\end{DoxyCompactItemize}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{mlx5__tls_8c_a12ad79d75719d67815a938331297bea1}\label{mlx5__tls_8c_a12ad79d75719d67815a938331297bea1}} 
\index{mlx5\_tls.c@{mlx5\_tls.c}!mlx5\_encryption\_key\_create@{mlx5\_encryption\_key\_create}}
\index{mlx5\_encryption\_key\_create@{mlx5\_encryption\_key\_create}!mlx5\_tls.c@{mlx5\_tls.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_encryption\_key\_create()}{mlx5\_encryption\_key\_create()}}
{\footnotesize\ttfamily int mlx5\+\_\+encryption\+\_\+key\+\_\+create (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$}]{mdev,  }\item[{u32}]{pdn,  }\item[{const void $\ast$}]{p\+\_\+key,  }\item[{u32}]{key\+\_\+len,  }\item[{u32 $\ast$}]{p\+\_\+obj\+\_\+id }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{mlx5__tls_8c_source_l00038}{38}} of file \mbox{\hyperlink{mlx5__tls_8c_source}{mlx5\+\_\+tls.\+c}}.



References \mbox{\hyperlink{device_8h_source_l00070}{MLX5\+\_\+\+ADDR\+\_\+\+OF}}, \mbox{\hyperlink{device_8h_source_l01030}{MLX5\+\_\+\+CAP\+\_\+\+GEN\+\_\+64}}, \mbox{\hyperlink{mlx5__cmd_8c_source_l01347}{mlx5\+\_\+cmd\+\_\+exec()}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l00290}{MLX5\+\_\+\+CMD\+\_\+\+OP\+\_\+\+CREATE\+\_\+\+GENERAL\+\_\+\+OBJ}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l00330}{MLX5\+\_\+\+GENERAL\+\_\+\+OBJECT\+\_\+\+TYPE\+\_\+\+ENCRYPTION\+\_\+\+KEY\+\_\+\+KEY\+\_\+\+SIZE\+\_\+128}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l00331}{MLX5\+\_\+\+GENERAL\+\_\+\+OBJECT\+\_\+\+TYPE\+\_\+\+ENCRYPTION\+\_\+\+KEY\+\_\+\+KEY\+\_\+\+SIZE\+\_\+256}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l00335}{MLX5\+\_\+\+GENERAL\+\_\+\+OBJECT\+\_\+\+TYPE\+\_\+\+ENCRYPTION\+\_\+\+KEY\+\_\+\+TYPE\+\_\+\+DEK}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l00322}{MLX5\+\_\+\+GENERAL\+\_\+\+OBJECT\+\_\+\+TYPES\+\_\+\+ENCRYPTION\+\_\+\+KEY}}, \mbox{\hyperlink{device_8h_source_l00091}{MLX5\+\_\+\+GET}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l00326}{MLX5\+\_\+\+HCA\+\_\+\+CAP\+\_\+\+GENERAL\+\_\+\+OBJ\+\_\+\+TYPES\+\_\+\+ENCRYPTION\+\_\+\+KEY}}, \mbox{\hyperlink{device_8h_source_l00073}{MLX5\+\_\+\+SET}}, and \mbox{\hyperlink{device_8h_source_l00065}{MLX5\+\_\+\+ST\+\_\+\+SZ\+\_\+\+DW}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d1d/mlx5__tls_8c_a12ad79d75719d67815a938331297bea1_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5__tls_8c_acaf4b93cdf33dbdbd90fa3d3de424803}\label{mlx5__tls_8c_acaf4b93cdf33dbdbd90fa3d3de424803}} 
\index{mlx5\_tls.c@{mlx5\_tls.c}!mlx5\_encryption\_key\_destroy@{mlx5\_encryption\_key\_destroy}}
\index{mlx5\_encryption\_key\_destroy@{mlx5\_encryption\_key\_destroy}!mlx5\_tls.c@{mlx5\_tls.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_encryption\_key\_destroy()}{mlx5\_encryption\_key\_destroy()}}
{\footnotesize\ttfamily int mlx5\+\_\+encryption\+\_\+key\+\_\+destroy (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$}]{mdev,  }\item[{u32}]{oid }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{mlx5__tls_8c_source_l00086}{86}} of file \mbox{\hyperlink{mlx5__tls_8c_source}{mlx5\+\_\+tls.\+c}}.



References \mbox{\hyperlink{mlx5__cmd_8c_source_l01347}{mlx5\+\_\+cmd\+\_\+exec()}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l00293}{MLX5\+\_\+\+CMD\+\_\+\+OP\+\_\+\+DESTROY\+\_\+\+GENERAL\+\_\+\+OBJ}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l00322}{MLX5\+\_\+\+GENERAL\+\_\+\+OBJECT\+\_\+\+TYPES\+\_\+\+ENCRYPTION\+\_\+\+KEY}}, \mbox{\hyperlink{device_8h_source_l00073}{MLX5\+\_\+\+SET}}, and \mbox{\hyperlink{device_8h_source_l00065}{MLX5\+\_\+\+ST\+\_\+\+SZ\+\_\+\+DW}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d1d/mlx5__tls_8c_acaf4b93cdf33dbdbd90fa3d3de424803_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5__tls_8c_af92381f137a851572518e9d4e5129304}\label{mlx5__tls_8c_af92381f137a851572518e9d4e5129304}} 
\index{mlx5\_tls.c@{mlx5\_tls.c}!mlx5\_tls\_close\_tir@{mlx5\_tls\_close\_tir}}
\index{mlx5\_tls\_close\_tir@{mlx5\_tls\_close\_tir}!mlx5\_tls.c@{mlx5\_tls.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_tls\_close\_tir()}{mlx5\_tls\_close\_tir()}}
{\footnotesize\ttfamily void mlx5\+\_\+tls\+\_\+close\+\_\+tir (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$}]{mdev,  }\item[{u32}]{tirn }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{mlx5__tls_8c_source_l00148}{148}} of file \mbox{\hyperlink{mlx5__tls_8c_source}{mlx5\+\_\+tls.\+c}}.



References \mbox{\hyperlink{mlx5__transobj_8c_source_l00171}{mlx5\+\_\+core\+\_\+destroy\+\_\+tir()}}, and \mbox{\hyperlink{en__hw__tls__rx_8h_source_l00001}{tirn}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d1d/mlx5__tls_8c_af92381f137a851572518e9d4e5129304_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5__tls_8c_abe216d2526d653b1858bb2eea6b7a2ab}\label{mlx5__tls_8c_abe216d2526d653b1858bb2eea6b7a2ab}} 
\index{mlx5\_tls.c@{mlx5\_tls.c}!mlx5\_tls\_close\_tis@{mlx5\_tls\_close\_tis}}
\index{mlx5\_tls\_close\_tis@{mlx5\_tls\_close\_tis}!mlx5\_tls.c@{mlx5\_tls.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_tls\_close\_tis()}{mlx5\_tls\_close\_tis()}}
{\footnotesize\ttfamily void mlx5\+\_\+tls\+\_\+close\+\_\+tis (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$}]{mdev,  }\item[{u32}]{tisn }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{mlx5__tls_8c_source_l00118}{118}} of file \mbox{\hyperlink{mlx5__tls_8c_source}{mlx5\+\_\+tls.\+c}}.



References \mbox{\hyperlink{mlx5__transobj_8c_source_l00209}{mlx5\+\_\+core\+\_\+destroy\+\_\+tis()}}, and \mbox{\hyperlink{en__hw__tls_8h_source_l00001}{tisn}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d1d/mlx5__tls_8c_abe216d2526d653b1858bb2eea6b7a2ab_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5__tls_8c_adeaad2fdb6996fab9304d2840626c5c0}\label{mlx5__tls_8c_adeaad2fdb6996fab9304d2840626c5c0}} 
\index{mlx5\_tls.c@{mlx5\_tls.c}!mlx5\_tls\_open\_tir@{mlx5\_tls\_open\_tir}}
\index{mlx5\_tls\_open\_tir@{mlx5\_tls\_open\_tir}!mlx5\_tls.c@{mlx5\_tls.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_tls\_open\_tir()}{mlx5\_tls\_open\_tir()}}
{\footnotesize\ttfamily int mlx5\+\_\+tls\+\_\+open\+\_\+tir (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$}]{mdev,  }\item[{int}]{tdn,  }\item[{int}]{rqtn,  }\item[{u32 $\ast$}]{p\+\_\+tirn }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{mlx5__tls_8c_source_l00124}{124}} of file \mbox{\hyperlink{mlx5__tls_8c_source}{mlx5\+\_\+tls.\+c}}.



References \mbox{\hyperlink{device_8h_source_l00070}{MLX5\+\_\+\+ADDR\+\_\+\+OF}}, \mbox{\hyperlink{mlx5__transobj_8c_source_l00156}{mlx5\+\_\+core\+\_\+create\+\_\+tir()}}, \mbox{\hyperlink{device_8h_source_l00073}{MLX5\+\_\+\+SET}}, \mbox{\hyperlink{device_8h_source_l00065}{MLX5\+\_\+\+ST\+\_\+\+SZ\+\_\+\+DW}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l02361}{MLX5\+\_\+\+TIRC\+\_\+\+DISP\+\_\+\+TYPE\+\_\+\+INDIRECT}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l02371}{MLX5\+\_\+\+TIRC\+\_\+\+RX\+\_\+\+HASH\+\_\+\+FN\+\_\+\+HASH\+\_\+\+INVERTED\+\_\+\+XOR8}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l02377}{MLX5\+\_\+\+TIRC\+\_\+\+SELF\+\_\+\+LB\+\_\+\+EN\+\_\+\+ENABLE\+\_\+\+MULTICAST}}, \mbox{\hyperlink{mlx5__ifc_8h_source_l02376}{MLX5\+\_\+\+TIRC\+\_\+\+SELF\+\_\+\+LB\+\_\+\+EN\+\_\+\+ENABLE\+\_\+\+UNICAST}}, and \mbox{\hyperlink{en_8h_source_l00008}{rqtn}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d1d/mlx5__tls_8c_adeaad2fdb6996fab9304d2840626c5c0_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{mlx5__tls_8c_a04f53bbfd8f233950819b6f81ccf1a64}\label{mlx5__tls_8c_a04f53bbfd8f233950819b6f81ccf1a64}} 
\index{mlx5\_tls.c@{mlx5\_tls.c}!mlx5\_tls\_open\_tis@{mlx5\_tls\_open\_tis}}
\index{mlx5\_tls\_open\_tis@{mlx5\_tls\_open\_tis}!mlx5\_tls.c@{mlx5\_tls.c}}
\doxysubsubsection{\texorpdfstring{mlx5\_tls\_open\_tis()}{mlx5\_tls\_open\_tis()}}
{\footnotesize\ttfamily int mlx5\+\_\+tls\+\_\+open\+\_\+tis (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$}]{mdev,  }\item[{int}]{tc,  }\item[{int}]{tdn,  }\item[{int}]{pdn,  }\item[{u32 $\ast$}]{p\+\_\+tisn }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{mlx5__tls_8c_source_l00098}{98}} of file \mbox{\hyperlink{mlx5__tls_8c_source}{mlx5\+\_\+tls.\+c}}.



References \mbox{\hyperlink{device_8h_source_l00000}{ctx}}, \mbox{\hyperlink{device_8h_source_l00070}{MLX5\+\_\+\+ADDR\+\_\+\+OF}}, \mbox{\hyperlink{mlx5__transobj_8c_source_l00183}{mlx5\+\_\+core\+\_\+create\+\_\+tis()}}, \mbox{\hyperlink{device_8h_source_l00073}{MLX5\+\_\+\+SET}}, \mbox{\hyperlink{device_8h_source_l00065}{MLX5\+\_\+\+ST\+\_\+\+SZ\+\_\+\+DW}}, and \mbox{\hyperlink{en_8h_source_l00049}{tc}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d1d/mlx5__tls_8c_a04f53bbfd8f233950819b6f81ccf1a64_cgraph}
\end{center}
\end{figure}
