\hypertarget{lio__console_8c}{}\doxysection{dev/liquidio/base/lio\+\_\+console.c File Reference}
\label{lio__console_8c}\index{dev/liquidio/base/lio\_console.c@{dev/liquidio/base/lio\_console.c}}
{\ttfamily \#include \char`\"{}lio\+\_\+bsd.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}lio\+\_\+common.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}lio\+\_\+droq.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}lio\+\_\+iq.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}lio\+\_\+response\+\_\+manager.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}lio\+\_\+device.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}lio\+\_\+image.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}lio\+\_\+mem\+\_\+ops.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}lio\+\_\+main.\+h\char`\"{}}\newline
Include dependency graph for lio\+\_\+console.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d44/lio__console_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structcvmx__bootmem__desc}{cvmx\+\_\+bootmem\+\_\+desc}}
\item 
struct \mbox{\hyperlink{structlio__pci__console}{lio\+\_\+pci\+\_\+console}}
\item 
struct \mbox{\hyperlink{structlio__pci__console__desc}{lio\+\_\+pci\+\_\+console\+\_\+desc}}
\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{lio__console_8c_a7ad1a62c1c012e0acd975d8f22c372fe}{CAST\+\_\+\+ULL}}(v)~((unsigned long long)(v))
\item 
\#define \mbox{\hyperlink{lio__console_8c_aac0f29a3c0441968f2813a23d11b12a3}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+DATA\+\_\+\+ADDR}}~0x0006c008
\item 
\#define \mbox{\hyperlink{lio__console_8c_a51cc6ba972085cad8b826e913284d7c1}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+LEN\+\_\+\+ADDR}}~0x0006c004
\item 
\#define \mbox{\hyperlink{lio__console_8c_a0b4ca8b680b72ad593f839619b96aa92}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+OWNER\+\_\+\+ADDR}}~0x0006c000
\item 
\#define \mbox{\hyperlink{lio__console_8c_a58dfca4fc61f3b9894f8d075cc291601}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+DESC\+\_\+\+ADDR}}~0x0006c100
\item 
\#define \mbox{\hyperlink{lio__console_8c_a175b9bdf90adddf16370a8b3961a4fb1}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+WRITE\+\_\+\+BUFFER\+\_\+\+STR\+\_\+\+LEN}}~248
\item 
\#define \mbox{\hyperlink{lio__console_8c_a11c5360803c1ce87c2a999cd811f1f07}{LIO\+\_\+\+PCI\+\_\+\+IO\+\_\+\+BUF\+\_\+\+OWNER\+\_\+\+OCTEON}}~0x00000001
\item 
\#define \mbox{\hyperlink{lio__console_8c_a1c4abb9ed40bfc0410a5efc2dec4e428}{LIO\+\_\+\+PCI\+\_\+\+IO\+\_\+\+BUF\+\_\+\+OWNER\+\_\+\+HOST}}~0x00000002
\item 
\#define \mbox{\hyperlink{lio__console_8c_a061f25d7ebfb922c46ce2564ab4e1a7d}{LIO\+\_\+\+PCI\+\_\+\+CONSOLE\+\_\+\+BLOCK\+\_\+\+NAME}}~\char`\"{}\+\_\+\+\_\+pci\+\_\+console\char`\"{}
\item 
\#define \mbox{\hyperlink{lio__console_8c_a9ba54ebd0ba8b663917ad3320f829eef}{LIO\+\_\+\+CONSOLE\+\_\+\+POLL\+\_\+\+INTERVAL\+\_\+\+MS}}~100 /$\ast$ 10 times per second $\ast$/
\item 
\#define \mbox{\hyperlink{lio__console_8c_a702b0dd1ac75146dd5ef8d96a5150588}{SIZEOF\+\_\+\+FIELD}}(s,  field)~sizeof(((s $\ast$)NULL)-\/$>$field)
\item 
\#define \mbox{\hyperlink{lio__console_8c_a3461614bbf80ee0af40f7ee45a7262bf}{FBUF\+\_\+\+SIZE}}~(4 $\ast$ 1024 $\ast$ 1024)
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
static void \mbox{\hyperlink{lio__console_8c_a989c365b922d8f961720c3ec9ecae6e0}{lio\+\_\+get\+\_\+uboot\+\_\+version}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct)
\item 
static void \mbox{\hyperlink{lio__console_8c_a954d8088823e16bbc291c4855a1b7310}{lio\+\_\+remote\+\_\+lock}} (void)
\item 
static void \mbox{\hyperlink{lio__console_8c_a10aa47e840712fb04f96a2663b53b727}{lio\+\_\+remote\+\_\+unlock}} (void)
\item 
static uint64\+\_\+t \mbox{\hyperlink{lio__console_8c_a82da54f95d48fc497439779e0211409f}{cvmx\+\_\+bootmem\+\_\+phy\+\_\+named\+\_\+block\+\_\+find}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, const char $\ast$name, uint32\+\_\+t flags)
\item 
static int \mbox{\hyperlink{lio__console_8c_aaa6df0f3b5c13ba5909838a343de2a8b}{lio\+\_\+console\+\_\+read}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, uint32\+\_\+t console\+\_\+num, char $\ast$buffer, uint32\+\_\+t buf\+\_\+size)
\item 
static uint64\+\_\+t \mbox{\hyperlink{lio__console_8c_a9c5d689ac5ba1c8bed6072c432e2b327}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+desc\+\_\+get}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, uint64\+\_\+t base, uint32\+\_\+t offset, uint32\+\_\+t size)
\item 
static void \mbox{\hyperlink{lio__console_8c_acbafda39b5a3322d1878fd61a1337560}{lio\+\_\+bootmem\+\_\+named\+\_\+get\+\_\+name}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, uint64\+\_\+t addr, char $\ast$str, uint32\+\_\+t len)
\item 
static int \mbox{\hyperlink{lio__console_8c_a82a88e55e94eea7b00bf6eff92e2cb61}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+check\+\_\+version}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, uint32\+\_\+t exact\+\_\+match)
\item 
static const struct \mbox{\hyperlink{structcvmx__bootmem__named__block__desc}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc}} $\ast$ \mbox{\hyperlink{lio__console_8c_acd48e30afe46f58bb7962ff98db99b8c}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+find\+\_\+named\+\_\+block\+\_\+flags}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, const char $\ast$name, uint32\+\_\+t flags)
\item 
static int \mbox{\hyperlink{lio__console_8c_a72055dc240dead97ba42ff0dde329a32}{lio\+\_\+named\+\_\+block\+\_\+find}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, const char $\ast$name, uint64\+\_\+t $\ast$base\+\_\+addr, uint64\+\_\+t $\ast$size)
\item 
int \mbox{\hyperlink{lio__console_8c_ab5366969909f9cce5bd208c1271c4b19}{lio\+\_\+console\+\_\+send\+\_\+cmd}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, char $\ast$cmd\+\_\+str, uint32\+\_\+t wait\+\_\+hundredths)
\item 
int \mbox{\hyperlink{lio__console_8c_af4510ca9c7c7627e57ba92f182267c51}{lio\+\_\+wait\+\_\+for\+\_\+bootloader}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, uint32\+\_\+t wait\+\_\+time\+\_\+hundredths)
\item 
static void \mbox{\hyperlink{lio__console_8c_a1b07b5c98da17405593e2bd965a9b963}{lio\+\_\+console\+\_\+handle\+\_\+result}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, size\+\_\+t console\+\_\+num)
\item 
static void \mbox{\hyperlink{lio__console_8c_a71163063d7df291e51c77ccf9118b154}{lio\+\_\+output\+\_\+console\+\_\+line}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, struct \mbox{\hyperlink{structlio__console}{lio\+\_\+console}} $\ast$console, size\+\_\+t console\+\_\+num, char $\ast$\mbox{\hyperlink{lio__console_8c_abec4a6f99fa0b30d6ea34db20777760b}{console\+\_\+buffer}}, int32\+\_\+t bytes\+\_\+read)
\item 
static void \mbox{\hyperlink{lio__console_8c_ab1a6def6e82cf9c8b4df5b5226e1b142}{lio\+\_\+check\+\_\+console}} (void $\ast$arg)
\item 
int \mbox{\hyperlink{lio__console_8c_aa0d11dee6603e2177f9673230f3ec26b}{lio\+\_\+init\+\_\+consoles}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct)
\item 
int \mbox{\hyperlink{lio__console_8c_ab15c65664cbe0cfdec60f705bc5eba7c}{lio\+\_\+add\+\_\+console}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, uint32\+\_\+t console\+\_\+num, char $\ast$dbg\+\_\+enb)
\item 
void \mbox{\hyperlink{lio__console_8c_a298cdd9fe302f43e769044bc0f9130e0}{lio\+\_\+remove\+\_\+consoles}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct)
\item 
static int \mbox{\hyperlink{lio__console_8c_ad19d8c1b63f1c4c2e734a729daf18233}{lio\+\_\+console\+\_\+free\+\_\+bytes}} (uint32\+\_\+t buffer\+\_\+size, uint32\+\_\+t wr\+\_\+idx, uint32\+\_\+t rd\+\_\+idx)
\item 
static int \mbox{\hyperlink{lio__console_8c_aeaae18bea35f19407a0bc2685bccddc8}{lio\+\_\+console\+\_\+avail\+\_\+bytes}} (uint32\+\_\+t buffer\+\_\+size, uint32\+\_\+t wr\+\_\+idx, uint32\+\_\+t rd\+\_\+idx)
\item 
int \mbox{\hyperlink{lio__console_8c_ac0683f2249537b8e2e3153732f7c5fb9}{lio\+\_\+download\+\_\+firmware}} (struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$oct, const uint8\+\_\+t $\ast$data, size\+\_\+t size)
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static char \mbox{\hyperlink{lio__console_8c_abec4a6f99fa0b30d6ea34db20777760b}{console\+\_\+buffer}} \mbox{[}\mbox{\hyperlink{lio__device_8h_a2a89cbef1320d53c51aff3b69bbc1e63}{LIO\+\_\+\+MAX\+\_\+\+CONSOLE\+\_\+\+READ\+\_\+\+BYTES}}\mbox{]}
\end{DoxyCompactItemize}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{lio__console_8c_a7ad1a62c1c012e0acd975d8f22c372fe}\label{lio__console_8c_a7ad1a62c1c012e0acd975d8f22c372fe}} 
\index{lio\_console.c@{lio\_console.c}!CAST\_ULL@{CAST\_ULL}}
\index{CAST\_ULL@{CAST\_ULL}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{CAST\_ULL}{CAST\_ULL}}
{\footnotesize\ttfamily \#define CAST\+\_\+\+ULL(\begin{DoxyParamCaption}\item[{}]{v }\end{DoxyParamCaption})~((unsigned long long)(v))}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00059}{59}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a3461614bbf80ee0af40f7ee45a7262bf}\label{lio__console_8c_a3461614bbf80ee0af40f7ee45a7262bf}} 
\index{lio\_console.c@{lio\_console.c}!FBUF\_SIZE@{FBUF\_SIZE}}
\index{FBUF\_SIZE@{FBUF\_SIZE}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{FBUF\_SIZE}{FBUF\_SIZE}}
{\footnotesize\ttfamily \#define FBUF\+\_\+\+SIZE~(4 $\ast$ 1024 $\ast$ 1024)}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00854}{854}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_aac0f29a3c0441968f2813a23d11b12a3}\label{lio__console_8c_aac0f29a3c0441968f2813a23d11b12a3}} 
\index{lio\_console.c@{lio\_console.c}!LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_DATA\_ADDR@{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_DATA\_ADDR}}
\index{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_DATA\_ADDR@{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_DATA\_ADDR}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_DATA\_ADDR}{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_DATA\_ADDR}}
{\footnotesize\ttfamily \#define LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+DATA\+\_\+\+ADDR~0x0006c008}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00061}{61}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a51cc6ba972085cad8b826e913284d7c1}\label{lio__console_8c_a51cc6ba972085cad8b826e913284d7c1}} 
\index{lio\_console.c@{lio\_console.c}!LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_LEN\_ADDR@{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_LEN\_ADDR}}
\index{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_LEN\_ADDR@{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_LEN\_ADDR}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_LEN\_ADDR}{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_LEN\_ADDR}}
{\footnotesize\ttfamily \#define LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+LEN\+\_\+\+ADDR~0x0006c004}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00062}{62}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a0b4ca8b680b72ad593f839619b96aa92}\label{lio__console_8c_a0b4ca8b680b72ad593f839619b96aa92}} 
\index{lio\_console.c@{lio\_console.c}!LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_OWNER\_ADDR@{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_OWNER\_ADDR}}
\index{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_OWNER\_ADDR@{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_OWNER\_ADDR}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_OWNER\_ADDR}{LIO\_BOOTLOADER\_PCI\_READ\_BUFFER\_OWNER\_ADDR}}
{\footnotesize\ttfamily \#define LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+OWNER\+\_\+\+ADDR~0x0006c000}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00063}{63}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a58dfca4fc61f3b9894f8d075cc291601}\label{lio__console_8c_a58dfca4fc61f3b9894f8d075cc291601}} 
\index{lio\_console.c@{lio\_console.c}!LIO\_BOOTLOADER\_PCI\_READ\_DESC\_ADDR@{LIO\_BOOTLOADER\_PCI\_READ\_DESC\_ADDR}}
\index{LIO\_BOOTLOADER\_PCI\_READ\_DESC\_ADDR@{LIO\_BOOTLOADER\_PCI\_READ\_DESC\_ADDR}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{LIO\_BOOTLOADER\_PCI\_READ\_DESC\_ADDR}{LIO\_BOOTLOADER\_PCI\_READ\_DESC\_ADDR}}
{\footnotesize\ttfamily \#define LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+DESC\+\_\+\+ADDR~0x0006c100}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00064}{64}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a175b9bdf90adddf16370a8b3961a4fb1}\label{lio__console_8c_a175b9bdf90adddf16370a8b3961a4fb1}} 
\index{lio\_console.c@{lio\_console.c}!LIO\_BOOTLOADER\_PCI\_WRITE\_BUFFER\_STR\_LEN@{LIO\_BOOTLOADER\_PCI\_WRITE\_BUFFER\_STR\_LEN}}
\index{LIO\_BOOTLOADER\_PCI\_WRITE\_BUFFER\_STR\_LEN@{LIO\_BOOTLOADER\_PCI\_WRITE\_BUFFER\_STR\_LEN}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{LIO\_BOOTLOADER\_PCI\_WRITE\_BUFFER\_STR\_LEN}{LIO\_BOOTLOADER\_PCI\_WRITE\_BUFFER\_STR\_LEN}}
{\footnotesize\ttfamily \#define LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+WRITE\+\_\+\+BUFFER\+\_\+\+STR\+\_\+\+LEN~248}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00065}{65}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a9ba54ebd0ba8b663917ad3320f829eef}\label{lio__console_8c_a9ba54ebd0ba8b663917ad3320f829eef}} 
\index{lio\_console.c@{lio\_console.c}!LIO\_CONSOLE\_POLL\_INTERVAL\_MS@{LIO\_CONSOLE\_POLL\_INTERVAL\_MS}}
\index{LIO\_CONSOLE\_POLL\_INTERVAL\_MS@{LIO\_CONSOLE\_POLL\_INTERVAL\_MS}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{LIO\_CONSOLE\_POLL\_INTERVAL\_MS}{LIO\_CONSOLE\_POLL\_INTERVAL\_MS}}
{\footnotesize\ttfamily \#define LIO\+\_\+\+CONSOLE\+\_\+\+POLL\+\_\+\+INTERVAL\+\_\+\+MS~100 /$\ast$ 10 times per second $\ast$/}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00071}{71}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a061f25d7ebfb922c46ce2564ab4e1a7d}\label{lio__console_8c_a061f25d7ebfb922c46ce2564ab4e1a7d}} 
\index{lio\_console.c@{lio\_console.c}!LIO\_PCI\_CONSOLE\_BLOCK\_NAME@{LIO\_PCI\_CONSOLE\_BLOCK\_NAME}}
\index{LIO\_PCI\_CONSOLE\_BLOCK\_NAME@{LIO\_PCI\_CONSOLE\_BLOCK\_NAME}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{LIO\_PCI\_CONSOLE\_BLOCK\_NAME}{LIO\_PCI\_CONSOLE\_BLOCK\_NAME}}
{\footnotesize\ttfamily \#define LIO\+\_\+\+PCI\+\_\+\+CONSOLE\+\_\+\+BLOCK\+\_\+\+NAME~\char`\"{}\+\_\+\+\_\+pci\+\_\+console\char`\"{}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00070}{70}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a1c4abb9ed40bfc0410a5efc2dec4e428}\label{lio__console_8c_a1c4abb9ed40bfc0410a5efc2dec4e428}} 
\index{lio\_console.c@{lio\_console.c}!LIO\_PCI\_IO\_BUF\_OWNER\_HOST@{LIO\_PCI\_IO\_BUF\_OWNER\_HOST}}
\index{LIO\_PCI\_IO\_BUF\_OWNER\_HOST@{LIO\_PCI\_IO\_BUF\_OWNER\_HOST}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{LIO\_PCI\_IO\_BUF\_OWNER\_HOST}{LIO\_PCI\_IO\_BUF\_OWNER\_HOST}}
{\footnotesize\ttfamily \#define LIO\+\_\+\+PCI\+\_\+\+IO\+\_\+\+BUF\+\_\+\+OWNER\+\_\+\+HOST~0x00000002}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00068}{68}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a11c5360803c1ce87c2a999cd811f1f07}\label{lio__console_8c_a11c5360803c1ce87c2a999cd811f1f07}} 
\index{lio\_console.c@{lio\_console.c}!LIO\_PCI\_IO\_BUF\_OWNER\_OCTEON@{LIO\_PCI\_IO\_BUF\_OWNER\_OCTEON}}
\index{LIO\_PCI\_IO\_BUF\_OWNER\_OCTEON@{LIO\_PCI\_IO\_BUF\_OWNER\_OCTEON}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{LIO\_PCI\_IO\_BUF\_OWNER\_OCTEON}{LIO\_PCI\_IO\_BUF\_OWNER\_OCTEON}}
{\footnotesize\ttfamily \#define LIO\+\_\+\+PCI\+\_\+\+IO\+\_\+\+BUF\+\_\+\+OWNER\+\_\+\+OCTEON~0x00000001}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00067}{67}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.

\mbox{\Hypertarget{lio__console_8c_a702b0dd1ac75146dd5ef8d96a5150588}\label{lio__console_8c_a702b0dd1ac75146dd5ef8d96a5150588}} 
\index{lio\_console.c@{lio\_console.c}!SIZEOF\_FIELD@{SIZEOF\_FIELD}}
\index{SIZEOF\_FIELD@{SIZEOF\_FIELD}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{SIZEOF\_FIELD}{SIZEOF\_FIELD}}
{\footnotesize\ttfamily \#define SIZEOF\+\_\+\+FIELD(\begin{DoxyParamCaption}\item[{}]{s,  }\item[{}]{field }\end{DoxyParamCaption})~sizeof(((s $\ast$)NULL)-\/$>$field)}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00147}{147}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{lio__console_8c_a82a88e55e94eea7b00bf6eff92e2cb61}\label{lio__console_8c_a82a88e55e94eea7b00bf6eff92e2cb61}} 
\index{lio\_console.c@{lio\_console.c}!\_\_cvmx\_bootmem\_check\_version@{\_\_cvmx\_bootmem\_check\_version}}
\index{\_\_cvmx\_bootmem\_check\_version@{\_\_cvmx\_bootmem\_check\_version}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{\_\_cvmx\_bootmem\_check\_version()}{\_\_cvmx\_bootmem\_check\_version()}}
{\footnotesize\ttfamily static int \+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+check\+\_\+version (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{uint32\+\_\+t}]{exact\+\_\+match }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00212}{212}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__console_8c_source_l00162}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+desc\+\_\+get()}}, \mbox{\hyperlink{lio__device_8h_source_l00444}{octeon\+\_\+device\+::bootmem\+\_\+desc\+\_\+addr}}, \mbox{\hyperlink{lio__console_8c_source_l00059}{CAST\+\_\+\+ULL}}, \mbox{\hyperlink{lio__console_8c_source_l00064}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+DESC\+\_\+\+ADDR}}, \mbox{\hyperlink{lio__bsd_8h_source_l00110}{lio\+\_\+dev\+\_\+dbg}}, \mbox{\hyperlink{lio__bsd_8h_source_l00103}{lio\+\_\+dev\+\_\+err}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00250}{lio\+\_\+read\+\_\+device\+\_\+mem64()}}, and \mbox{\hyperlink{lio__console_8c_source_l00147}{SIZEOF\+\_\+\+FIELD}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00275}{cvmx\+\_\+bootmem\+\_\+phy\+\_\+named\+\_\+block\+\_\+find()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a82a88e55e94eea7b00bf6eff92e2cb61_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a82a88e55e94eea7b00bf6eff92e2cb61_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_a9c5d689ac5ba1c8bed6072c432e2b327}\label{lio__console_8c_a9c5d689ac5ba1c8bed6072c432e2b327}} 
\index{lio\_console.c@{lio\_console.c}!\_\_cvmx\_bootmem\_desc\_get@{\_\_cvmx\_bootmem\_desc\_get}}
\index{\_\_cvmx\_bootmem\_desc\_get@{\_\_cvmx\_bootmem\_desc\_get}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{\_\_cvmx\_bootmem\_desc\_get()}{\_\_cvmx\_bootmem\_desc\_get()}}
{\footnotesize\ttfamily static uint64\+\_\+t \+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+desc\+\_\+get (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{uint64\+\_\+t}]{base,  }\item[{uint32\+\_\+t}]{offset,  }\item[{uint32\+\_\+t}]{size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00162}{162}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__mem__ops_8c_source_l00260}{lio\+\_\+read\+\_\+device\+\_\+mem32()}}, and \mbox{\hyperlink{lio__mem__ops_8c_source_l00250}{lio\+\_\+read\+\_\+device\+\_\+mem64()}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00212}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+check\+\_\+version()}}, \mbox{\hyperlink{lio__console_8c_source_l00244}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+find\+\_\+named\+\_\+block\+\_\+flags()}}, and \mbox{\hyperlink{lio__console_8c_source_l00275}{cvmx\+\_\+bootmem\+\_\+phy\+\_\+named\+\_\+block\+\_\+find()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a9c5d689ac5ba1c8bed6072c432e2b327_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a9c5d689ac5ba1c8bed6072c432e2b327_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_acd48e30afe46f58bb7962ff98db99b8c}\label{lio__console_8c_acd48e30afe46f58bb7962ff98db99b8c}} 
\index{lio\_console.c@{lio\_console.c}!\_\_cvmx\_bootmem\_find\_named\_block\_flags@{\_\_cvmx\_bootmem\_find\_named\_block\_flags}}
\index{\_\_cvmx\_bootmem\_find\_named\_block\_flags@{\_\_cvmx\_bootmem\_find\_named\_block\_flags}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{\_\_cvmx\_bootmem\_find\_named\_block\_flags()}{\_\_cvmx\_bootmem\_find\_named\_block\_flags()}}
{\footnotesize\ttfamily static const struct \mbox{\hyperlink{structcvmx__bootmem__named__block__desc}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc}} $\ast$ \+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+find\+\_\+named\+\_\+block\+\_\+flags (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{const char $\ast$}]{name,  }\item[{uint32\+\_\+t}]{flags }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00244}{244}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__console_8c_source_l00162}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+desc\+\_\+get()}}, \mbox{\hyperlink{lio__device_8h_source_l00258}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc\+::base\+\_\+addr}}, \mbox{\hyperlink{lio__device_8h_source_l00450}{octeon\+\_\+device\+::bootmem\+\_\+named\+\_\+block\+\_\+desc}}, \mbox{\hyperlink{lio__console_8c_source_l00275}{cvmx\+\_\+bootmem\+\_\+phy\+\_\+named\+\_\+block\+\_\+find()}}, \mbox{\hyperlink{lio__device_8h_source_l00264}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc\+::name}}, \mbox{\hyperlink{lio__device_8h_source_l00261}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc\+::size}}, and \mbox{\hyperlink{lio__console_8c_source_l00147}{SIZEOF\+\_\+\+FIELD}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00357}{lio\+\_\+named\+\_\+block\+\_\+find()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_acd48e30afe46f58bb7962ff98db99b8c_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_acd48e30afe46f58bb7962ff98db99b8c_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_a82da54f95d48fc497439779e0211409f}\label{lio__console_8c_a82da54f95d48fc497439779e0211409f}} 
\index{lio\_console.c@{lio\_console.c}!cvmx\_bootmem\_phy\_named\_block\_find@{cvmx\_bootmem\_phy\_named\_block\_find}}
\index{cvmx\_bootmem\_phy\_named\_block\_find@{cvmx\_bootmem\_phy\_named\_block\_find}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{cvmx\_bootmem\_phy\_named\_block\_find()}{cvmx\_bootmem\_phy\_named\_block\_find()}}
{\footnotesize\ttfamily static uint64\+\_\+t cvmx\+\_\+bootmem\+\_\+phy\+\_\+named\+\_\+block\+\_\+find (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{const char $\ast$}]{name,  }\item[{uint32\+\_\+t}]{flags }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00275}{275}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__console_8c_source_l00212}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+check\+\_\+version()}}, \mbox{\hyperlink{lio__console_8c_source_l00162}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+desc\+\_\+get()}}, \mbox{\hyperlink{lio__device_8h_source_l00444}{octeon\+\_\+device\+::bootmem\+\_\+desc\+\_\+addr}}, \mbox{\hyperlink{lio__console_8c_source_l00189}{lio\+\_\+bootmem\+\_\+named\+\_\+get\+\_\+name()}}, \mbox{\hyperlink{lio__device_8h_source_l00264}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc\+::name}}, \mbox{\hyperlink{lio__device_8h_source_l00261}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc\+::size}}, and \mbox{\hyperlink{lio__console_8c_source_l00147}{SIZEOF\+\_\+\+FIELD}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00244}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+find\+\_\+named\+\_\+block\+\_\+flags()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a82da54f95d48fc497439779e0211409f_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a82da54f95d48fc497439779e0211409f_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_ab15c65664cbe0cfdec60f705bc5eba7c}\label{lio__console_8c_ab15c65664cbe0cfdec60f705bc5eba7c}} 
\index{lio\_console.c@{lio\_console.c}!lio\_add\_console@{lio\_add\_console}}
\index{lio\_add\_console@{lio\_add\_console}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_add\_console()}{lio\_add\_console()}}
{\footnotesize\ttfamily int lio\+\_\+add\+\_\+console (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{uint32\+\_\+t}]{console\+\_\+num,  }\item[{char $\ast$}]{dbg\+\_\+enb }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00621}{621}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__device_8h_source_l00205}{lio\+\_\+console\+::active}}, \mbox{\hyperlink{lio__device_8h_source_l00207}{lio\+\_\+console\+::addr}}, \mbox{\hyperlink{lio__device_8h_source_l00208}{lio\+\_\+console\+::buffer\+\_\+size}}, \mbox{\hyperlink{lio__device_8h_source_l00459}{octeon\+\_\+device\+::console}}, \mbox{\hyperlink{lio__device_8h_source_l00453}{octeon\+\_\+device\+::console\+\_\+desc\+\_\+addr}}, \mbox{\hyperlink{lio__device_8h_source_l00489}{octeon\+\_\+device\+::console\+\_\+timer}}, \mbox{\hyperlink{lio__device_8h_source_l00282}{lio\+\_\+callout\+::ctxptr}}, \mbox{\hyperlink{lio__device_8h_source_l00283}{lio\+\_\+callout\+::ctxul}}, \mbox{\hyperlink{lio__device_8h_source_l00209}{lio\+\_\+console\+::input\+\_\+base\+\_\+addr}}, \mbox{\hyperlink{lio__device_8h_source_l00212}{lio\+\_\+console\+::leftover}}, \mbox{\hyperlink{lio__console_8c_source_l00515}{lio\+\_\+check\+\_\+console()}}, \mbox{\hyperlink{lio__console_8c_source_l00071}{LIO\+\_\+\+CONSOLE\+\_\+\+POLL\+\_\+\+INTERVAL\+\_\+\+MS}}, \mbox{\hyperlink{lio__console_8c_source_l00390}{lio\+\_\+console\+\_\+send\+\_\+cmd()}}, \mbox{\hyperlink{lio__bsd_8h_source_l00103}{lio\+\_\+dev\+\_\+err}}, \mbox{\hyperlink{lio__console_8c_source_l00774}{lio\+\_\+get\+\_\+uboot\+\_\+version()}}, \mbox{\hyperlink{lio__bsd_8h_source_l00084}{lio\+\_\+ms\+\_\+to\+\_\+ticks}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00260}{lio\+\_\+read\+\_\+device\+\_\+mem32()}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00250}{lio\+\_\+read\+\_\+device\+\_\+mem64()}}, \mbox{\hyperlink{lio__device_8h_source_l00456}{octeon\+\_\+device\+::num\+\_\+consoles}}, \mbox{\hyperlink{lio__device_8h_source_l00210}{lio\+\_\+console\+::output\+\_\+base\+\_\+addr}}, \mbox{\hyperlink{lio__device_8h_source_l00281}{lio\+\_\+callout\+::timer}}, \mbox{\hyperlink{lio__device_8h_source_l00529}{octeon\+\_\+device\+::uboot\+\_\+len}}, and \mbox{\hyperlink{lio__device_8h_source_l00206}{lio\+\_\+console\+::waiting}}.



Referenced by \mbox{\hyperlink{lio__main_8c_source_l00434}{lio\+\_\+device\+\_\+init()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_ab15c65664cbe0cfdec60f705bc5eba7c_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_ab15c65664cbe0cfdec60f705bc5eba7c_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_acbafda39b5a3322d1878fd61a1337560}\label{lio__console_8c_acbafda39b5a3322d1878fd61a1337560}} 
\index{lio\_console.c@{lio\_console.c}!lio\_bootmem\_named\_get\_name@{lio\_bootmem\_named\_get\_name}}
\index{lio\_bootmem\_named\_get\_name@{lio\_bootmem\_named\_get\_name}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_bootmem\_named\_get\_name()}{lio\_bootmem\_named\_get\_name()}}
{\footnotesize\ttfamily static void lio\+\_\+bootmem\+\_\+named\+\_\+get\+\_\+name (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{uint64\+\_\+t}]{addr,  }\item[{char $\ast$}]{str,  }\item[{uint32\+\_\+t}]{len }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00189}{189}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__mem__ops_8c_source_l00234}{lio\+\_\+pci\+\_\+read\+\_\+core\+\_\+mem()}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00275}{cvmx\+\_\+bootmem\+\_\+phy\+\_\+named\+\_\+block\+\_\+find()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_acbafda39b5a3322d1878fd61a1337560_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_acbafda39b5a3322d1878fd61a1337560_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_ab1a6def6e82cf9c8b4df5b5226e1b142}\label{lio__console_8c_ab1a6def6e82cf9c8b4df5b5226e1b142}} 
\index{lio\_console.c@{lio\_console.c}!lio\_check\_console@{lio\_check\_console}}
\index{lio\_check\_console@{lio\_check\_console}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_check\_console()}{lio\_check\_console()}}
{\footnotesize\ttfamily static void lio\+\_\+check\+\_\+console (\begin{DoxyParamCaption}\item[{void $\ast$}]{arg }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00515}{515}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__device_8h_source_l00459}{octeon\+\_\+device\+::console}}, \mbox{\hyperlink{lio__console_8c_source_l00464}{console\+\_\+buffer}}, \mbox{\hyperlink{lio__device_8h_source_l00489}{octeon\+\_\+device\+::console\+\_\+timer}}, \mbox{\hyperlink{lio__device_8h_source_l00282}{lio\+\_\+callout\+::ctxptr}}, \mbox{\hyperlink{lio__device_8h_source_l00283}{lio\+\_\+callout\+::ctxul}}, \mbox{\hyperlink{lio__device_8h_source_l00212}{lio\+\_\+console\+::leftover}}, \mbox{\hyperlink{lio__console_8c_source_l00455}{lio\+\_\+console\+\_\+handle\+\_\+result()}}, \mbox{\hyperlink{lio__console_8c_source_l00071}{LIO\+\_\+\+CONSOLE\+\_\+\+POLL\+\_\+\+INTERVAL\+\_\+\+MS}}, \mbox{\hyperlink{lio__console_8c_source_l00725}{lio\+\_\+console\+\_\+read()}}, \mbox{\hyperlink{lio__bsd_8h_source_l00103}{lio\+\_\+dev\+\_\+err}}, \mbox{\hyperlink{lio__bsd_8h_source_l00084}{lio\+\_\+ms\+\_\+to\+\_\+ticks}}, \mbox{\hyperlink{lio__console_8c_source_l00467}{lio\+\_\+output\+\_\+console\+\_\+line()}}, \mbox{\hyperlink{lio__device_8h_source_l00211}{lio\+\_\+console\+::print}}, \mbox{\hyperlink{lio__device_8h_source_l00281}{lio\+\_\+callout\+::timer}}, and \mbox{\hyperlink{lio__device_8h_source_l00206}{lio\+\_\+console\+::waiting}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00621}{lio\+\_\+add\+\_\+console()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_ab1a6def6e82cf9c8b4df5b5226e1b142_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_ab1a6def6e82cf9c8b4df5b5226e1b142_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_aeaae18bea35f19407a0bc2685bccddc8}\label{lio__console_8c_aeaae18bea35f19407a0bc2685bccddc8}} 
\index{lio\_console.c@{lio\_console.c}!lio\_console\_avail\_bytes@{lio\_console\_avail\_bytes}}
\index{lio\_console\_avail\_bytes@{lio\_console\_avail\_bytes}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_console\_avail\_bytes()}{lio\_console\_avail\_bytes()}}
{\footnotesize\ttfamily static int lio\+\_\+console\+\_\+avail\+\_\+bytes (\begin{DoxyParamCaption}\item[{uint32\+\_\+t}]{buffer\+\_\+size,  }\item[{uint32\+\_\+t}]{wr\+\_\+idx,  }\item[{uint32\+\_\+t}]{rd\+\_\+idx }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00714}{714}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__device_8h_source_l00208}{lio\+\_\+console\+::buffer\+\_\+size}}, and \mbox{\hyperlink{lio__console_8c_source_l00704}{lio\+\_\+console\+\_\+free\+\_\+bytes()}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00725}{lio\+\_\+console\+\_\+read()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_aeaae18bea35f19407a0bc2685bccddc8_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_aeaae18bea35f19407a0bc2685bccddc8_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_ad19d8c1b63f1c4c2e734a729daf18233}\label{lio__console_8c_ad19d8c1b63f1c4c2e734a729daf18233}} 
\index{lio\_console.c@{lio\_console.c}!lio\_console\_free\_bytes@{lio\_console\_free\_bytes}}
\index{lio\_console\_free\_bytes@{lio\_console\_free\_bytes}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_console\_free\_bytes()}{lio\_console\_free\_bytes()}}
{\footnotesize\ttfamily static int lio\+\_\+console\+\_\+free\+\_\+bytes (\begin{DoxyParamCaption}\item[{uint32\+\_\+t}]{buffer\+\_\+size,  }\item[{uint32\+\_\+t}]{wr\+\_\+idx,  }\item[{uint32\+\_\+t}]{rd\+\_\+idx }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00704}{704}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__device_8h_source_l00208}{lio\+\_\+console\+::buffer\+\_\+size}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00714}{lio\+\_\+console\+\_\+avail\+\_\+bytes()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_ad19d8c1b63f1c4c2e734a729daf18233_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_a1b07b5c98da17405593e2bd965a9b963}\label{lio__console_8c_a1b07b5c98da17405593e2bd965a9b963}} 
\index{lio\_console.c@{lio\_console.c}!lio\_console\_handle\_result@{lio\_console\_handle\_result}}
\index{lio\_console\_handle\_result@{lio\_console\_handle\_result}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_console\_handle\_result()}{lio\_console\_handle\_result()}}
{\footnotesize\ttfamily static void lio\+\_\+console\+\_\+handle\+\_\+result (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{size\+\_\+t}]{console\+\_\+num }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00455}{455}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__device_8h_source_l00459}{octeon\+\_\+device\+::console}}, and \mbox{\hyperlink{lio__device_8h_source_l00206}{lio\+\_\+console\+::waiting}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00515}{lio\+\_\+check\+\_\+console()}}, and \mbox{\hyperlink{lio__console_8c_source_l00774}{lio\+\_\+get\+\_\+uboot\+\_\+version()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a1b07b5c98da17405593e2bd965a9b963_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_aaa6df0f3b5c13ba5909838a343de2a8b}\label{lio__console_8c_aaa6df0f3b5c13ba5909838a343de2a8b}} 
\index{lio\_console.c@{lio\_console.c}!lio\_console\_read@{lio\_console\_read}}
\index{lio\_console\_read@{lio\_console\_read}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_console\_read()}{lio\_console\_read()}}
{\footnotesize\ttfamily static int lio\+\_\+console\+\_\+read (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{uint32\+\_\+t}]{console\+\_\+num,  }\item[{char $\ast$}]{buffer,  }\item[{uint32\+\_\+t}]{buf\+\_\+size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00725}{725}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__device_8h_source_l00207}{lio\+\_\+console\+::addr}}, \mbox{\hyperlink{lio__device_8h_source_l00208}{lio\+\_\+console\+::buffer\+\_\+size}}, \mbox{\hyperlink{lio__device_8h_source_l00459}{octeon\+\_\+device\+::console}}, \mbox{\hyperlink{lio__console_8c_source_l00714}{lio\+\_\+console\+\_\+avail\+\_\+bytes()}}, \mbox{\hyperlink{lio__bsd_8h_source_l00103}{lio\+\_\+dev\+\_\+err}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00234}{lio\+\_\+pci\+\_\+read\+\_\+core\+\_\+mem()}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00260}{lio\+\_\+read\+\_\+device\+\_\+mem32()}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00270}{lio\+\_\+write\+\_\+device\+\_\+mem32()}}, \mbox{\hyperlink{lio__device_8h_source_l00456}{octeon\+\_\+device\+::num\+\_\+consoles}}, and \mbox{\hyperlink{lio__device_8h_source_l00210}{lio\+\_\+console\+::output\+\_\+base\+\_\+addr}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00515}{lio\+\_\+check\+\_\+console()}}, and \mbox{\hyperlink{lio__console_8c_source_l00774}{lio\+\_\+get\+\_\+uboot\+\_\+version()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_aaa6df0f3b5c13ba5909838a343de2a8b_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_aaa6df0f3b5c13ba5909838a343de2a8b_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_ab5366969909f9cce5bd208c1271c4b19}\label{lio__console_8c_ab5366969909f9cce5bd208c1271c4b19}} 
\index{lio\_console.c@{lio\_console.c}!lio\_console\_send\_cmd@{lio\_console\_send\_cmd}}
\index{lio\_console\_send\_cmd@{lio\_console\_send\_cmd}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_console\_send\_cmd()}{lio\_console\_send\_cmd()}}
{\footnotesize\ttfamily int lio\+\_\+console\+\_\+send\+\_\+cmd (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{char $\ast$}]{cmd\+\_\+str,  }\item[{uint32\+\_\+t}]{wait\+\_\+hundredths }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00390}{390}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__console_8c_source_l00061}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+DATA\+\_\+\+ADDR}}, \mbox{\hyperlink{lio__console_8c_source_l00062}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+LEN\+\_\+\+ADDR}}, \mbox{\hyperlink{lio__console_8c_source_l00063}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+OWNER\+\_\+\+ADDR}}, \mbox{\hyperlink{lio__console_8c_source_l00065}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+WRITE\+\_\+\+BUFFER\+\_\+\+STR\+\_\+\+LEN}}, \mbox{\hyperlink{lio__bsd_8h_source_l00110}{lio\+\_\+dev\+\_\+dbg}}, \mbox{\hyperlink{lio__bsd_8h_source_l00103}{lio\+\_\+dev\+\_\+err}}, \mbox{\hyperlink{lio__console_8c_source_l00067}{LIO\+\_\+\+PCI\+\_\+\+IO\+\_\+\+BUF\+\_\+\+OWNER\+\_\+\+OCTEON}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00242}{lio\+\_\+pci\+\_\+write\+\_\+core\+\_\+mem()}}, \mbox{\hyperlink{lio__console_8c_source_l00376}{lio\+\_\+remote\+\_\+lock()}}, \mbox{\hyperlink{lio__console_8c_source_l00383}{lio\+\_\+remote\+\_\+unlock()}}, \mbox{\hyperlink{lio__console_8c_source_l00432}{lio\+\_\+wait\+\_\+for\+\_\+bootloader()}}, and \mbox{\hyperlink{lio__mem__ops_8c_source_l00270}{lio\+\_\+write\+\_\+device\+\_\+mem32()}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00621}{lio\+\_\+add\+\_\+console()}}, \mbox{\hyperlink{lio__main_8c_source_l00434}{lio\+\_\+device\+\_\+init()}}, \mbox{\hyperlink{lio__console_8c_source_l00857}{lio\+\_\+download\+\_\+firmware()}}, and \mbox{\hyperlink{lio__console_8c_source_l00774}{lio\+\_\+get\+\_\+uboot\+\_\+version()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_ab5366969909f9cce5bd208c1271c4b19_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_ab5366969909f9cce5bd208c1271c4b19_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_ac0683f2249537b8e2e3153732f7c5fb9}\label{lio__console_8c_ac0683f2249537b8e2e3153732f7c5fb9}} 
\index{lio\_console.c@{lio\_console.c}!lio\_download\_firmware@{lio\_download\_firmware}}
\index{lio\_download\_firmware@{lio\_download\_firmware}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_download\_firmware()}{lio\_download\_firmware()}}
{\footnotesize\ttfamily int lio\+\_\+download\+\_\+firmware (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{const uint8\+\_\+t $\ast$}]{data,  }\item[{size\+\_\+t}]{size }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00857}{857}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__image_8h_source_l00049}{lio\+\_\+firmware\+\_\+desc\+::addr}}, \mbox{\hyperlink{lio__image_8h_source_l00062}{lio\+\_\+firmware\+\_\+file\+\_\+header\+::bootcmd}}, \mbox{\hyperlink{lio__image_8h_source_l00066}{lio\+\_\+firmware\+\_\+file\+\_\+header\+::crc32}}, \mbox{\hyperlink{lio__image_8h_source_l00064}{lio\+\_\+firmware\+\_\+file\+\_\+header\+::desc}}, \mbox{\hyperlink{lio__console_8c_source_l00854}{FBUF\+\_\+\+SIZE}}, \mbox{\hyperlink{lio__device_8h_source_l00476}{octeon\+\_\+device\+::fw\+\_\+info}}, \mbox{\hyperlink{lio__image_8h_source_l00050}{lio\+\_\+firmware\+\_\+desc\+::len}}, \mbox{\hyperlink{lio__common_8h_source_l00050}{LIO\+\_\+\+BASE\+\_\+\+VERSION}}, \mbox{\hyperlink{lio__console_8c_source_l00390}{lio\+\_\+console\+\_\+send\+\_\+cmd()}}, \mbox{\hyperlink{lio__bsd_8h_source_l00103}{lio\+\_\+dev\+\_\+err}}, \mbox{\hyperlink{lio__bsd_8h_source_l00099}{lio\+\_\+dev\+\_\+info}}, \mbox{\hyperlink{lio__device_8h_source_l00277}{lio\+\_\+fw\+\_\+info\+::lio\+\_\+firmware\+\_\+version}}, \mbox{\hyperlink{lio__image_8h_source_l00046}{LIO\+\_\+\+MAX\+\_\+\+IMAGES}}, \mbox{\hyperlink{lio__image_8h_source_l00047}{LIO\+\_\+\+NIC\+\_\+\+MAGIC}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00242}{lio\+\_\+pci\+\_\+write\+\_\+core\+\_\+mem()}}, \mbox{\hyperlink{lio__image_8h_source_l00060}{lio\+\_\+firmware\+\_\+file\+\_\+header\+::magic}}, \mbox{\hyperlink{lio__image_8h_source_l00063}{lio\+\_\+firmware\+\_\+file\+\_\+header\+::num\+\_\+images}}, and \mbox{\hyperlink{lio__image_8h_source_l00061}{lio\+\_\+firmware\+\_\+file\+\_\+header\+::version}}.



Referenced by \mbox{\hyperlink{lio__main_8c_source_l00876}{lio\+\_\+load\+\_\+firmware()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_ac0683f2249537b8e2e3153732f7c5fb9_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_ac0683f2249537b8e2e3153732f7c5fb9_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_a989c365b922d8f961720c3ec9ecae6e0}\label{lio__console_8c_a989c365b922d8f961720c3ec9ecae6e0}} 
\index{lio\_console.c@{lio\_console.c}!lio\_get\_uboot\_version@{lio\_get\_uboot\_version}}
\index{lio\_get\_uboot\_version@{lio\_get\_uboot\_version}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_get\_uboot\_version()}{lio\_get\_uboot\_version()}}
{\footnotesize\ttfamily static void lio\+\_\+get\+\_\+uboot\+\_\+version (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00774}{774}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__device_8h_source_l00459}{octeon\+\_\+device\+::console}}, \mbox{\hyperlink{lio__device_8h_source_l00212}{lio\+\_\+console\+::leftover}}, \mbox{\hyperlink{lio__console_8c_source_l00455}{lio\+\_\+console\+\_\+handle\+\_\+result()}}, \mbox{\hyperlink{lio__console_8c_source_l00725}{lio\+\_\+console\+\_\+read()}}, \mbox{\hyperlink{lio__console_8c_source_l00390}{lio\+\_\+console\+\_\+send\+\_\+cmd()}}, \mbox{\hyperlink{lio__bsd_8h_source_l00110}{lio\+\_\+dev\+\_\+dbg}}, \mbox{\hyperlink{lio__bsd_8h_source_l00103}{lio\+\_\+dev\+\_\+err}}, \mbox{\hyperlink{lio__bsd_8h_source_l00099}{lio\+\_\+dev\+\_\+info}}, \mbox{\hyperlink{lio__device_8h_source_l00527}{OCTEON\+\_\+\+UBOOT\+\_\+\+BUFFER\+\_\+\+SIZE}}, \mbox{\hyperlink{lio__device_8h_source_l00530}{octeon\+\_\+device\+::uboot\+\_\+eidx}}, \mbox{\hyperlink{lio__device_8h_source_l00529}{octeon\+\_\+device\+::uboot\+\_\+len}}, \mbox{\hyperlink{lio__device_8h_source_l00530}{octeon\+\_\+device\+::uboot\+\_\+sidx}}, \mbox{\hyperlink{lio__device_8h_source_l00528}{octeon\+\_\+device\+::uboot\+\_\+version}}, and \mbox{\hyperlink{lio__device_8h_source_l00206}{lio\+\_\+console\+::waiting}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00621}{lio\+\_\+add\+\_\+console()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a989c365b922d8f961720c3ec9ecae6e0_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a989c365b922d8f961720c3ec9ecae6e0_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_aa0d11dee6603e2177f9673230f3ec26b}\label{lio__console_8c_aa0d11dee6603e2177f9673230f3ec26b}} 
\index{lio\_console.c@{lio\_console.c}!lio\_init\_consoles@{lio\_init\_consoles}}
\index{lio\_init\_consoles@{lio\_init\_consoles}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_init\_consoles()}{lio\_init\_consoles()}}
{\footnotesize\ttfamily int lio\+\_\+init\+\_\+consoles (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00578}{578}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__device_8h_source_l00230}{lio\+\_\+fn\+\_\+list\+::bar1\+\_\+idx\+\_\+setup}}, \mbox{\hyperlink{lio__device_8h_source_l00464}{octeon\+\_\+device\+::bar1\+\_\+index}}, \mbox{\hyperlink{lio__device_8h_source_l00453}{octeon\+\_\+device\+::console\+\_\+desc\+\_\+addr}}, \mbox{\hyperlink{structocteon__device_af2e78949b445bb4de7f3051905614273}{octeon\+\_\+device\+::console\+\_\+nb\+\_\+info}}, \mbox{\hyperlink{lio__device_8h_source_l00463}{octeon\+\_\+device\+::dram\+\_\+region\+\_\+base}}, \mbox{\hyperlink{lio__device_8h_source_l00416}{octeon\+\_\+device\+::fn\+\_\+list}}, \mbox{\hyperlink{lio__bsd_8h_source_l00110}{lio\+\_\+dev\+\_\+dbg}}, \mbox{\hyperlink{lio__bsd_8h_source_l00103}{lio\+\_\+dev\+\_\+err}}, \mbox{\hyperlink{lio__device_8c_source_l00956}{lio\+\_\+mem\+\_\+access\+\_\+ok()}}, \mbox{\hyperlink{lio__console_8c_source_l00357}{lio\+\_\+named\+\_\+block\+\_\+find()}}, \mbox{\hyperlink{lio__console_8c_source_l00070}{LIO\+\_\+\+PCI\+\_\+\+CONSOLE\+\_\+\+BLOCK\+\_\+\+NAME}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00260}{lio\+\_\+read\+\_\+device\+\_\+mem32()}}, and \mbox{\hyperlink{lio__device_8h_source_l00456}{octeon\+\_\+device\+::num\+\_\+consoles}}.



Referenced by \mbox{\hyperlink{lio__main_8c_source_l00434}{lio\+\_\+device\+\_\+init()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_aa0d11dee6603e2177f9673230f3ec26b_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_aa0d11dee6603e2177f9673230f3ec26b_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_a72055dc240dead97ba42ff0dde329a32}\label{lio__console_8c_a72055dc240dead97ba42ff0dde329a32}} 
\index{lio\_console.c@{lio\_console.c}!lio\_named\_block\_find@{lio\_named\_block\_find}}
\index{lio\_named\_block\_find@{lio\_named\_block\_find}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_named\_block\_find()}{lio\_named\_block\_find()}}
{\footnotesize\ttfamily static int lio\+\_\+named\+\_\+block\+\_\+find (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{const char $\ast$}]{name,  }\item[{uint64\+\_\+t $\ast$}]{base\+\_\+addr,  }\item[{uint64\+\_\+t $\ast$}]{size }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00357}{357}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__console_8c_source_l00244}{\+\_\+\+\_\+cvmx\+\_\+bootmem\+\_\+find\+\_\+named\+\_\+block\+\_\+flags()}}, \mbox{\hyperlink{lio__device_8h_source_l00258}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc\+::base\+\_\+addr}}, \mbox{\hyperlink{lio__console_8c_source_l00376}{lio\+\_\+remote\+\_\+lock()}}, \mbox{\hyperlink{lio__console_8c_source_l00383}{lio\+\_\+remote\+\_\+unlock()}}, \mbox{\hyperlink{lio__device_8h_source_l00264}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc\+::name}}, and \mbox{\hyperlink{lio__device_8h_source_l00261}{cvmx\+\_\+bootmem\+\_\+named\+\_\+block\+\_\+desc\+::size}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00578}{lio\+\_\+init\+\_\+consoles()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a72055dc240dead97ba42ff0dde329a32_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a72055dc240dead97ba42ff0dde329a32_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_a71163063d7df291e51c77ccf9118b154}\label{lio__console_8c_a71163063d7df291e51c77ccf9118b154}} 
\index{lio\_console.c@{lio\_console.c}!lio\_output\_console\_line@{lio\_output\_console\_line}}
\index{lio\_output\_console\_line@{lio\_output\_console\_line}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_output\_console\_line()}{lio\_output\_console\_line()}}
{\footnotesize\ttfamily static void lio\+\_\+output\+\_\+console\+\_\+line (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{struct \mbox{\hyperlink{structlio__console}{lio\+\_\+console}} $\ast$}]{console,  }\item[{size\+\_\+t}]{console\+\_\+num,  }\item[{char $\ast$}]{console\+\_\+buffer,  }\item[{int32\+\_\+t}]{bytes\+\_\+read }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00467}{467}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__console_8c_source_l00464}{console\+\_\+buffer}}, \mbox{\hyperlink{lio__device_8h_source_l00212}{lio\+\_\+console\+::leftover}}, and \mbox{\hyperlink{lio__device_8h_source_l00211}{lio\+\_\+console\+::print}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00515}{lio\+\_\+check\+\_\+console()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a71163063d7df291e51c77ccf9118b154_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_a954d8088823e16bbc291c4855a1b7310}\label{lio__console_8c_a954d8088823e16bbc291c4855a1b7310}} 
\index{lio\_console.c@{lio\_console.c}!lio\_remote\_lock@{lio\_remote\_lock}}
\index{lio\_remote\_lock@{lio\_remote\_lock}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_remote\_lock()}{lio\_remote\_lock()}}
{\footnotesize\ttfamily static void lio\+\_\+remote\+\_\+lock (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00376}{376}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00390}{lio\+\_\+console\+\_\+send\+\_\+cmd()}}, and \mbox{\hyperlink{lio__console_8c_source_l00357}{lio\+\_\+named\+\_\+block\+\_\+find()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a954d8088823e16bbc291c4855a1b7310_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_a10aa47e840712fb04f96a2663b53b727}\label{lio__console_8c_a10aa47e840712fb04f96a2663b53b727}} 
\index{lio\_console.c@{lio\_console.c}!lio\_remote\_unlock@{lio\_remote\_unlock}}
\index{lio\_remote\_unlock@{lio\_remote\_unlock}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_remote\_unlock()}{lio\_remote\_unlock()}}
{\footnotesize\ttfamily static void lio\+\_\+remote\+\_\+unlock (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00383}{383}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00390}{lio\+\_\+console\+\_\+send\+\_\+cmd()}}, and \mbox{\hyperlink{lio__console_8c_source_l00357}{lio\+\_\+named\+\_\+block\+\_\+find()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a10aa47e840712fb04f96a2663b53b727_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_a298cdd9fe302f43e769044bc0f9130e0}\label{lio__console_8c_a298cdd9fe302f43e769044bc0f9130e0}} 
\index{lio\_console.c@{lio\_console.c}!lio\_remove\_consoles@{lio\_remove\_consoles}}
\index{lio\_remove\_consoles@{lio\_remove\_consoles}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_remove\_consoles()}{lio\_remove\_consoles()}}
{\footnotesize\ttfamily void lio\+\_\+remove\+\_\+consoles (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00682}{682}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__device_8h_source_l00205}{lio\+\_\+console\+::active}}, \mbox{\hyperlink{lio__device_8h_source_l00207}{lio\+\_\+console\+::addr}}, \mbox{\hyperlink{lio__device_8h_source_l00208}{lio\+\_\+console\+::buffer\+\_\+size}}, \mbox{\hyperlink{lio__device_8h_source_l00459}{octeon\+\_\+device\+::console}}, \mbox{\hyperlink{lio__device_8h_source_l00489}{octeon\+\_\+device\+::console\+\_\+timer}}, \mbox{\hyperlink{lio__device_8h_source_l00209}{lio\+\_\+console\+::input\+\_\+base\+\_\+addr}}, \mbox{\hyperlink{lio__device_8h_source_l00456}{octeon\+\_\+device\+::num\+\_\+consoles}}, \mbox{\hyperlink{lio__device_8h_source_l00210}{lio\+\_\+console\+::output\+\_\+base\+\_\+addr}}, and \mbox{\hyperlink{lio__device_8h_source_l00281}{lio\+\_\+callout\+::timer}}.



Referenced by \mbox{\hyperlink{lio__main_8c_source_l02161}{lio\+\_\+destroy\+\_\+resources()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_a298cdd9fe302f43e769044bc0f9130e0_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{lio__console_8c_af4510ca9c7c7627e57ba92f182267c51}\label{lio__console_8c_af4510ca9c7c7627e57ba92f182267c51}} 
\index{lio\_console.c@{lio\_console.c}!lio\_wait\_for\_bootloader@{lio\_wait\_for\_bootloader}}
\index{lio\_wait\_for\_bootloader@{lio\_wait\_for\_bootloader}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{lio\_wait\_for\_bootloader()}{lio\_wait\_for\_bootloader()}}
{\footnotesize\ttfamily int lio\+\_\+wait\+\_\+for\+\_\+bootloader (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structocteon__device}{octeon\+\_\+device}} $\ast$}]{oct,  }\item[{uint32\+\_\+t}]{wait\+\_\+time\+\_\+hundredths }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00432}{432}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



References \mbox{\hyperlink{lio__console_8c_source_l00063}{LIO\+\_\+\+BOOTLOADER\+\_\+\+PCI\+\_\+\+READ\+\_\+\+BUFFER\+\_\+\+OWNER\+\_\+\+ADDR}}, \mbox{\hyperlink{lio__bsd_8h_source_l00110}{lio\+\_\+dev\+\_\+dbg}}, \mbox{\hyperlink{lio__device_8c_source_l00956}{lio\+\_\+mem\+\_\+access\+\_\+ok()}}, \mbox{\hyperlink{lio__console_8c_source_l00068}{LIO\+\_\+\+PCI\+\_\+\+IO\+\_\+\+BUF\+\_\+\+OWNER\+\_\+\+HOST}}, \mbox{\hyperlink{lio__mem__ops_8c_source_l00260}{lio\+\_\+read\+\_\+device\+\_\+mem32()}}, and \mbox{\hyperlink{lio__bsd_8h_source_l00094}{lio\+\_\+sleep\+\_\+timeout}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00390}{lio\+\_\+console\+\_\+send\+\_\+cmd()}}, and \mbox{\hyperlink{lio__main_8c_source_l00434}{lio\+\_\+device\+\_\+init()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_af4510ca9c7c7627e57ba92f182267c51_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d5/d65/lio__console_8c_af4510ca9c7c7627e57ba92f182267c51_icgraph}
\end{center}
\end{figure}


\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{lio__console_8c_abec4a6f99fa0b30d6ea34db20777760b}\label{lio__console_8c_abec4a6f99fa0b30d6ea34db20777760b}} 
\index{lio\_console.c@{lio\_console.c}!console\_buffer@{console\_buffer}}
\index{console\_buffer@{console\_buffer}!lio\_console.c@{lio\_console.c}}
\doxysubsubsection{\texorpdfstring{console\_buffer}{console\_buffer}}
{\footnotesize\ttfamily char console\+\_\+buffer\mbox{[}\mbox{\hyperlink{lio__device_8h_a2a89cbef1320d53c51aff3b69bbc1e63}{LIO\+\_\+\+MAX\+\_\+\+CONSOLE\+\_\+\+READ\+\_\+\+BYTES}}\mbox{]}\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{lio__console_8c_source_l00464}{464}} of file \mbox{\hyperlink{lio__console_8c_source}{lio\+\_\+console.\+c}}.



Referenced by \mbox{\hyperlink{lio__console_8c_source_l00515}{lio\+\_\+check\+\_\+console()}}, and \mbox{\hyperlink{lio__console_8c_source_l00467}{lio\+\_\+output\+\_\+console\+\_\+line()}}.

