\hypertarget{structmlx5__eswitch}{}\doxysection{mlx5\+\_\+eswitch Struct Reference}
\label{structmlx5__eswitch}\index{mlx5\_eswitch@{mlx5\_eswitch}}


{\ttfamily \#include $<$eswitch.\+h$>$}



Collaboration diagram for mlx5\+\_\+eswitch\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d9/d32/structmlx5__eswitch__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}} $\ast$ \mbox{\hyperlink{structmlx5__eswitch_a067793840a9d896c7b7e3c276cbe545c}{dev}}
\item 
struct \mbox{\hyperlink{structmlx5__l2__table}{mlx5\+\_\+l2\+\_\+table}} \mbox{\hyperlink{structmlx5__eswitch_a2c9205394bea57a97448c80a6ecc0fdb}{l2\+\_\+table}}
\item 
struct \mbox{\hyperlink{structmlx5__eswitch__fdb}{mlx5\+\_\+eswitch\+\_\+fdb}} \mbox{\hyperlink{structmlx5__eswitch_a9e94a4bd212cd67f80343bfe635ac813}{fdb\+\_\+table}}
\item 
struct hlist\+\_\+head \mbox{\hyperlink{structmlx5__eswitch_a0298f7db04718898f304d3b1c486ec07}{mc\+\_\+table}} \mbox{[}\mbox{\hyperlink{eswitch_8h_a669d4925f0b52290a6bd3fb001315e4a}{MLX5\+\_\+\+L2\+\_\+\+ADDR\+\_\+\+HASH\+\_\+\+SIZE}}\mbox{]}
\item 
struct workqueue\+\_\+struct $\ast$ \mbox{\hyperlink{structmlx5__eswitch_ac3a13399dcda24290f6da1ef46a40e1f}{work\+\_\+queue}}
\item 
struct \mbox{\hyperlink{structmlx5__vport}{mlx5\+\_\+vport}} $\ast$ \mbox{\hyperlink{structmlx5__eswitch_af4a141b9b40d78d4190290f1f3296b33}{vports}}
\item 
int \mbox{\hyperlink{structmlx5__eswitch_ab59a5c4f4bda1c723d07209fc972d71b}{total\+\_\+vports}}
\item 
int \mbox{\hyperlink{structmlx5__eswitch_a474ccc3613e368863ef976a86cb3d1c9}{enabled\+\_\+vports}}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}


Definition at line \mbox{\hyperlink{eswitch_8h_source_l00132}{132}} of file \mbox{\hyperlink{eswitch_8h_source}{eswitch.\+h}}.



\doxysubsection{Field Documentation}
\mbox{\Hypertarget{structmlx5__eswitch_a067793840a9d896c7b7e3c276cbe545c}\label{structmlx5__eswitch_a067793840a9d896c7b7e3c276cbe545c}} 
\index{mlx5\_eswitch@{mlx5\_eswitch}!dev@{dev}}
\index{dev@{dev}!mlx5\_eswitch@{mlx5\_eswitch}}
\doxysubsubsection{\texorpdfstring{dev}{dev}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structmlx5__core__dev}{mlx5\+\_\+core\+\_\+dev}}$\ast$ mlx5\+\_\+eswitch\+::dev}



Definition at line \mbox{\hyperlink{eswitch_8h_source_l00133}{133}} of file \mbox{\hyperlink{eswitch_8h_source}{eswitch.\+h}}.



Referenced by \mbox{\hyperlink{mlx5__eswitch_8c_source_l00409}{esw\+\_\+add\+\_\+mc\+\_\+addr()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00346}{esw\+\_\+add\+\_\+uc\+\_\+addr()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00269}{esw\+\_\+create\+\_\+fdb\+\_\+table()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00440}{esw\+\_\+del\+\_\+mc\+\_\+addr()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00382}{esw\+\_\+del\+\_\+uc\+\_\+addr()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00330}{esw\+\_\+destroy\+\_\+fdb\+\_\+table()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00989}{esw\+\_\+disable\+\_\+vport()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00930}{esw\+\_\+enable\+\_\+vport()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00221}{esw\+\_\+fdb\+\_\+set\+\_\+vport\+\_\+rule()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00512}{esw\+\_\+update\+\_\+vport\+\_\+addr\+\_\+list()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00575}{esw\+\_\+vport\+\_\+change\+\_\+handler()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00697}{esw\+\_\+vport\+\_\+disable\+\_\+egress\+\_\+acl()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00783}{esw\+\_\+vport\+\_\+disable\+\_\+ingress\+\_\+acl()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00854}{esw\+\_\+vport\+\_\+egress\+\_\+config()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00607}{esw\+\_\+vport\+\_\+enable\+\_\+egress\+\_\+acl()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00714}{esw\+\_\+vport\+\_\+enable\+\_\+ingress\+\_\+acl()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00798}{esw\+\_\+vport\+\_\+ingress\+\_\+config()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01158}{mlx5\+\_\+eswitch\+\_\+cleanup()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01067}{mlx5\+\_\+eswitch\+\_\+disable\+\_\+sriov()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01026}{mlx5\+\_\+eswitch\+\_\+enable\+\_\+sriov()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01253}{mlx5\+\_\+eswitch\+\_\+get\+\_\+vport\+\_\+config()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01087}{mlx5\+\_\+eswitch\+\_\+init()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01209}{mlx5\+\_\+eswitch\+\_\+set\+\_\+vport\+\_\+mac()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01240}{mlx5\+\_\+eswitch\+\_\+set\+\_\+vport\+\_\+state()}}, and \mbox{\hyperlink{mlx5__eswitch_8c_source_l01279}{mlx5\+\_\+eswitch\+\_\+set\+\_\+vport\+\_\+vlan()}}.

\mbox{\Hypertarget{structmlx5__eswitch_a474ccc3613e368863ef976a86cb3d1c9}\label{structmlx5__eswitch_a474ccc3613e368863ef976a86cb3d1c9}} 
\index{mlx5\_eswitch@{mlx5\_eswitch}!enabled\_vports@{enabled\_vports}}
\index{enabled\_vports@{enabled\_vports}!mlx5\_eswitch@{mlx5\_eswitch}}
\doxysubsubsection{\texorpdfstring{enabled\_vports}{enabled\_vports}}
{\footnotesize\ttfamily int mlx5\+\_\+eswitch\+::enabled\+\_\+vports}



Definition at line \mbox{\hyperlink{eswitch_8h_source_l00140}{140}} of file \mbox{\hyperlink{eswitch_8h_source}{eswitch.\+h}}.



Referenced by \mbox{\hyperlink{mlx5__eswitch_8c_source_l00989}{esw\+\_\+disable\+\_\+vport()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00930}{esw\+\_\+enable\+\_\+vport()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01067}{mlx5\+\_\+eswitch\+\_\+disable\+\_\+sriov()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01026}{mlx5\+\_\+eswitch\+\_\+enable\+\_\+sriov()}}, and \mbox{\hyperlink{mlx5__eswitch_8c_source_l01087}{mlx5\+\_\+eswitch\+\_\+init()}}.

\mbox{\Hypertarget{structmlx5__eswitch_a9e94a4bd212cd67f80343bfe635ac813}\label{structmlx5__eswitch_a9e94a4bd212cd67f80343bfe635ac813}} 
\index{mlx5\_eswitch@{mlx5\_eswitch}!fdb\_table@{fdb\_table}}
\index{fdb\_table@{fdb\_table}!mlx5\_eswitch@{mlx5\_eswitch}}
\doxysubsubsection{\texorpdfstring{fdb\_table}{fdb\_table}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structmlx5__eswitch__fdb}{mlx5\+\_\+eswitch\+\_\+fdb}} mlx5\+\_\+eswitch\+::fdb\+\_\+table}



Definition at line \mbox{\hyperlink{eswitch_8h_source_l00135}{135}} of file \mbox{\hyperlink{eswitch_8h_source}{eswitch.\+h}}.



Referenced by \mbox{\hyperlink{mlx5__eswitch_8c_source_l00409}{esw\+\_\+add\+\_\+mc\+\_\+addr()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00346}{esw\+\_\+add\+\_\+uc\+\_\+addr()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00269}{esw\+\_\+create\+\_\+fdb\+\_\+table()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00440}{esw\+\_\+del\+\_\+mc\+\_\+addr()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00330}{esw\+\_\+destroy\+\_\+fdb\+\_\+table()}}, and \mbox{\hyperlink{mlx5__eswitch_8c_source_l00221}{esw\+\_\+fdb\+\_\+set\+\_\+vport\+\_\+rule()}}.

\mbox{\Hypertarget{structmlx5__eswitch_a2c9205394bea57a97448c80a6ecc0fdb}\label{structmlx5__eswitch_a2c9205394bea57a97448c80a6ecc0fdb}} 
\index{mlx5\_eswitch@{mlx5\_eswitch}!l2\_table@{l2\_table}}
\index{l2\_table@{l2\_table}!mlx5\_eswitch@{mlx5\_eswitch}}
\doxysubsubsection{\texorpdfstring{l2\_table}{l2\_table}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structmlx5__l2__table}{mlx5\+\_\+l2\+\_\+table}} mlx5\+\_\+eswitch\+::l2\+\_\+table}



Definition at line \mbox{\hyperlink{eswitch_8h_source_l00134}{134}} of file \mbox{\hyperlink{eswitch_8h_source}{eswitch.\+h}}.



Referenced by \mbox{\hyperlink{mlx5__eswitch_8c_source_l00346}{esw\+\_\+add\+\_\+uc\+\_\+addr()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00382}{esw\+\_\+del\+\_\+uc\+\_\+addr()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01158}{mlx5\+\_\+eswitch\+\_\+cleanup()}}, and \mbox{\hyperlink{mlx5__eswitch_8c_source_l01087}{mlx5\+\_\+eswitch\+\_\+init()}}.

\mbox{\Hypertarget{structmlx5__eswitch_a0298f7db04718898f304d3b1c486ec07}\label{structmlx5__eswitch_a0298f7db04718898f304d3b1c486ec07}} 
\index{mlx5\_eswitch@{mlx5\_eswitch}!mc\_table@{mc\_table}}
\index{mc\_table@{mc\_table}!mlx5\_eswitch@{mlx5\_eswitch}}
\doxysubsubsection{\texorpdfstring{mc\_table}{mc\_table}}
{\footnotesize\ttfamily struct hlist\+\_\+head mlx5\+\_\+eswitch\+::mc\+\_\+table\mbox{[}\mbox{\hyperlink{eswitch_8h_a669d4925f0b52290a6bd3fb001315e4a}{MLX5\+\_\+\+L2\+\_\+\+ADDR\+\_\+\+HASH\+\_\+\+SIZE}}\mbox{]}}



Definition at line \mbox{\hyperlink{eswitch_8h_source_l00136}{136}} of file \mbox{\hyperlink{eswitch_8h_source}{eswitch.\+h}}.



Referenced by \mbox{\hyperlink{mlx5__eswitch_8c_source_l00409}{esw\+\_\+add\+\_\+mc\+\_\+addr()}}, and \mbox{\hyperlink{mlx5__eswitch_8c_source_l00440}{esw\+\_\+del\+\_\+mc\+\_\+addr()}}.

\mbox{\Hypertarget{structmlx5__eswitch_ab59a5c4f4bda1c723d07209fc972d71b}\label{structmlx5__eswitch_ab59a5c4f4bda1c723d07209fc972d71b}} 
\index{mlx5\_eswitch@{mlx5\_eswitch}!total\_vports@{total\_vports}}
\index{total\_vports@{total\_vports}!mlx5\_eswitch@{mlx5\_eswitch}}
\doxysubsubsection{\texorpdfstring{total\_vports}{total\_vports}}
{\footnotesize\ttfamily int mlx5\+\_\+eswitch\+::total\+\_\+vports}



Definition at line \mbox{\hyperlink{eswitch_8h_source_l00139}{139}} of file \mbox{\hyperlink{eswitch_8h_source}{eswitch.\+h}}.



Referenced by \mbox{\hyperlink{mlx5__eswitch_8c_source_l01067}{mlx5\+\_\+eswitch\+\_\+disable\+\_\+sriov()}}, and \mbox{\hyperlink{mlx5__eswitch_8c_source_l01087}{mlx5\+\_\+eswitch\+\_\+init()}}.

\mbox{\Hypertarget{structmlx5__eswitch_af4a141b9b40d78d4190290f1f3296b33}\label{structmlx5__eswitch_af4a141b9b40d78d4190290f1f3296b33}} 
\index{mlx5\_eswitch@{mlx5\_eswitch}!vports@{vports}}
\index{vports@{vports}!mlx5\_eswitch@{mlx5\_eswitch}}
\doxysubsubsection{\texorpdfstring{vports}{vports}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structmlx5__vport}{mlx5\+\_\+vport}}$\ast$ mlx5\+\_\+eswitch\+::vports}



Definition at line \mbox{\hyperlink{eswitch_8h_source_l00138}{138}} of file \mbox{\hyperlink{eswitch_8h_source}{eswitch.\+h}}.



Referenced by \mbox{\hyperlink{mlx5__eswitch_8c_source_l00477}{esw\+\_\+apply\+\_\+vport\+\_\+addr\+\_\+list()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00968}{esw\+\_\+cleanup\+\_\+vport()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00989}{esw\+\_\+disable\+\_\+vport()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00930}{esw\+\_\+enable\+\_\+vport()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l00512}{esw\+\_\+update\+\_\+vport\+\_\+addr\+\_\+list()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01158}{mlx5\+\_\+eswitch\+\_\+cleanup()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01087}{mlx5\+\_\+eswitch\+\_\+init()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01279}{mlx5\+\_\+eswitch\+\_\+set\+\_\+vport\+\_\+vlan()}}, and \mbox{\hyperlink{mlx5__eswitch_8c_source_l01174}{mlx5\+\_\+eswitch\+\_\+vport\+\_\+event()}}.

\mbox{\Hypertarget{structmlx5__eswitch_ac3a13399dcda24290f6da1ef46a40e1f}\label{structmlx5__eswitch_ac3a13399dcda24290f6da1ef46a40e1f}} 
\index{mlx5\_eswitch@{mlx5\_eswitch}!work\_queue@{work\_queue}}
\index{work\_queue@{work\_queue}!mlx5\_eswitch@{mlx5\_eswitch}}
\doxysubsubsection{\texorpdfstring{work\_queue}{work\_queue}}
{\footnotesize\ttfamily struct workqueue\+\_\+struct$\ast$ mlx5\+\_\+eswitch\+::work\+\_\+queue}



Definition at line \mbox{\hyperlink{eswitch_8h_source_l00137}{137}} of file \mbox{\hyperlink{eswitch_8h_source}{eswitch.\+h}}.



Referenced by \mbox{\hyperlink{mlx5__eswitch_8c_source_l00989}{esw\+\_\+disable\+\_\+vport()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01158}{mlx5\+\_\+eswitch\+\_\+cleanup()}}, \mbox{\hyperlink{mlx5__eswitch_8c_source_l01087}{mlx5\+\_\+eswitch\+\_\+init()}}, and \mbox{\hyperlink{mlx5__eswitch_8c_source_l01174}{mlx5\+\_\+eswitch\+\_\+vport\+\_\+event()}}.



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
dev/mlx5/mlx5\+\_\+core/\mbox{\hyperlink{eswitch_8h}{eswitch.\+h}}\end{DoxyCompactItemize}
