\hypertarget{gpio_8h}{
\section{libbroadway/include/broadway/gpio.h File Reference}
\label{gpio_8h}\index{libbroadway/include/broadway/gpio.h@{libbroadway/include/broadway/gpio.h}}
}
{\ttfamily \#include $<$types.h$>$}\par
{\ttfamily \#include $<$broadway.h$>$}\par
\subsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{gpio\_\-pin\_\-t} \{ \par
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea107381c516781cb41137c54e7baf546a}{GPIO\_\-POWER} =  (1 $<$$<$ 0), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea6cb0c23c890890c7f2d327657167c6b7}{GPIO\_\-SHUTDOWN} =  (1 $<$$<$ 1), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea5673244f4864a616f6fbe7ec9b83165f}{GPIO\_\-FAN\_\-SPEED} =  (1 $<$$<$ 2), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea143138a56c912a89fbaed5665dfff6e3}{GPIO\_\-DC\_\-DC} =  (1 $<$$<$ 3), 
\par
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea679fafe5c57692e8f8d21cd3fffef115}{GPIO\_\-DI\_\-SPIN} =  (1 $<$$<$ 4), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eab95c09110b64163db8cda16c24f2f39b}{GPIO\_\-SLOT\_\-LED} =  (1 $<$$<$ 5), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eadf0ae5941ac8c9e2ad41cbf534891d20}{GPIO\_\-EJECT} =  (1 $<$$<$ 6), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eac9bb0c4ad697ff43abe356caf7d2b191}{GPIO\_\-SLOT\_\-IN} =  (1 $<$$<$ 7), 
\par
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea45a4858a3767a22bee1ada4e2264ac84}{GPIO\_\-SENSOR\_\-BAR} =  (1 $<$$<$ 8), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eaa93b3df90fd91fc7d0436aa605454d3b}{GPIO\_\-DI\_\-EJECT} =  (1 $<$$<$ 9), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea1edb35cad12f3b8e51e72bd8914ef3af}{GPIO\_\-EEP\_\-CS} =  (1 $<$$<$ 10), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea1ae84e97df872a7e8e4dd86fd3a170e6}{GPIO\_\-EEP\_\-CLK} =  (1 $<$$<$ 11), 
\par
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea36303e3866944804351076d8b6cfd4d7}{GPIO\_\-EEP\_\-MOSI} =  (1 $<$$<$ 12), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea73d80c59745cf55064dcdac682e591df}{GPIO\_\-EEP\_\-MISO} =  (1 $<$$<$ 13), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ead0aee502bf33786e2313c8f8534d7d70}{GPIO\_\-AVE\_\-CLK} =  (1 $<$$<$ 14), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea56f15e034d99b673959915344e2cde58}{GPIO\_\-AVE\_\-DATA} =  (1 $<$$<$ 15), 
\par
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea7823c05ab99b619b9c1f88a0629f1d43}{GPIO\_\-DEBUG0} =  (1 $<$$<$ 16), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea0a578de751ce10617ceef5d9fbefbfe2}{GPIO\_\-DEBUG1} =  (1 $<$$<$ 17), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea3c8cf7db81cef95972b0a23f7053c32f}{GPIO\_\-DEBUG2} =  (1 $<$$<$ 18), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea04796a7278e61df9b7a05017a5b25bce}{GPIO\_\-DEBUG3} =  (1 $<$$<$ 19), 
\par
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eab138cfd747dc13a4b55b898d027665b1}{GPIO\_\-DEBUG4} =  (1 $<$$<$ 20), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea2ba52c17cdc431e5bdeda00607527d59}{GPIO\_\-DEBUG5} =  (1 $<$$<$ 21), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea61c84a184864e08be63ddb68fe6f9de7}{GPIO\_\-DEBUG6} =  (1 $<$$<$ 22), 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea26cc96884895e6e7998ba9823d0d761f}{GPIO\_\-DEBUG7} =  (1 $<$$<$ 23)
 \}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \hyperlink{gpio_8h_acf5b03f8b83db07ec65fd37b3aeb439f}{gpio\_\-initialize} (void)
\begin{DoxyCompactList}\small\item\em Initialize the GPIO subsystem. \item\end{DoxyCompactList}\item 
int \hyperlink{gpio_8h_a79e288dec2c2b13ea2bf5cad00a6a09e}{gpio\_\-shutdown} (void)
\begin{DoxyCompactList}\small\item\em Shut down the GPIO subsystem. \item\end{DoxyCompactList}\item 
\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{gpio\_\-pin\_\-t} \hyperlink{gpio_8h_aa0bf7fe70cd17f1c6b8a1a65181c51fb}{gpio\_\-read} (void)
\begin{DoxyCompactList}\small\item\em Reads GPIO data. \item\end{DoxyCompactList}\item 
void \hyperlink{gpio_8h_af40485b00fcbefd37e3e2cc637226f37}{gpio\_\-write} (\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{gpio\_\-pin\_\-t} gpios)
\begin{DoxyCompactList}\small\item\em Writes GPIO output data. \item\end{DoxyCompactList}\item 
void \hyperlink{gpio_8h_a2cda54d731fa89f0f1fd4f80c50ef19d}{gpio\_\-set} (\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{gpio\_\-pin\_\-t} gpios)
\begin{DoxyCompactList}\small\item\em Sets GPIO output data bits. \item\end{DoxyCompactList}\item 
void \hyperlink{gpio_8h_a22be2b1db5ce673c1205642c2bbc7e4e}{gpio\_\-clear} (\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{gpio\_\-pin\_\-t} gpios)
\begin{DoxyCompactList}\small\item\em Clears GPIO output data bits. \item\end{DoxyCompactList}\item 
void \hyperlink{gpio_8h_a44474b4270572bdca19e158f0155afe3}{gpio\_\-mask} (\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{gpio\_\-pin\_\-t} setgpios, \hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{gpio\_\-pin\_\-t} clrgpios)
\begin{DoxyCompactList}\small\item\em Masks GPIO output data bits. \item\end{DoxyCompactList}\item 
void \hyperlink{gpio_8h_a971e0e9072f537c82492834676e6cbf2}{gpio\_\-switch} (\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{gpio\_\-pin\_\-t} gpios)
\begin{DoxyCompactList}\small\item\em Switches GPIO output data bits. \item\end{DoxyCompactList}\item 
int \hyperlink{gpio_8h_a60136874bebc1a9943405e3662c0cdc9}{gpio\_\-direction} (\hyperlink{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{gpio\_\-pin\_\-t} pin, int dir)
\begin{DoxyCompactList}\small\item\em Sets GPIO direction. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
General Purpose I/O control 

\subsection{Enumeration Type Documentation}
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}{
\index{gpio.h@{gpio.h}!gpio\_\-pin\_\-t@{gpio\_\-pin\_\-t}}
\index{gpio\_\-pin\_\-t@{gpio\_\-pin\_\-t}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-pin\_\-t}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf gpio\_\-pin\_\-t}}}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120e}
\begin{Desc}
\item[Enumerator: ]\par
\begin{description}
\index{GPIO\_\-POWER@{GPIO\_\-POWER}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-POWER@{GPIO\_\-POWER}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea107381c516781cb41137c54e7baf546a}{
GPIO\_\-POWER}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea107381c516781cb41137c54e7baf546a}
}]Power button \index{GPIO\_\-SHUTDOWN@{GPIO\_\-SHUTDOWN}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-SHUTDOWN@{GPIO\_\-SHUTDOWN}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea6cb0c23c890890c7f2d327657167c6b7}{
GPIO\_\-SHUTDOWN}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea6cb0c23c890890c7f2d327657167c6b7}
}]Shuts down system \index{GPIO\_\-FAN\_\-SPEED@{GPIO\_\-FAN\_\-SPEED}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-FAN\_\-SPEED@{GPIO\_\-FAN\_\-SPEED}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea5673244f4864a616f6fbe7ec9b83165f}{
GPIO\_\-FAN\_\-SPEED}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea5673244f4864a616f6fbe7ec9b83165f}
}]Set fan high or low \index{GPIO\_\-DC\_\-DC@{GPIO\_\-DC\_\-DC}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DC\_\-DC@{GPIO\_\-DC\_\-DC}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea143138a56c912a89fbaed5665dfff6e3}{
GPIO\_\-DC\_\-DC}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea143138a56c912a89fbaed5665dfff6e3}
}]DC/DC converter power (powers Broadway?). When off, yellow power LED \index{GPIO\_\-DI\_\-SPIN@{GPIO\_\-DI\_\-SPIN}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DI\_\-SPIN@{GPIO\_\-DI\_\-SPIN}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea679fafe5c57692e8f8d21cd3fffef115}{
GPIO\_\-DI\_\-SPIN}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea679fafe5c57692e8f8d21cd3fffef115}
}]DI spinup disable. \index{GPIO\_\-SLOT\_\-LED@{GPIO\_\-SLOT\_\-LED}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-SLOT\_\-LED@{GPIO\_\-SLOT\_\-LED}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eab95c09110b64163db8cda16c24f2f39b}{
GPIO\_\-SLOT\_\-LED}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eab95c09110b64163db8cda16c24f2f39b}
}]Blue disc slot LED \index{GPIO\_\-EJECT@{GPIO\_\-EJECT}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-EJECT@{GPIO\_\-EJECT}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eadf0ae5941ac8c9e2ad41cbf534891d20}{
GPIO\_\-EJECT}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eadf0ae5941ac8c9e2ad41cbf534891d20}
}]Eject button \index{GPIO\_\-SLOT\_\-IN@{GPIO\_\-SLOT\_\-IN}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-SLOT\_\-IN@{GPIO\_\-SLOT\_\-IN}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eac9bb0c4ad697ff43abe356caf7d2b191}{
GPIO\_\-SLOT\_\-IN}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eac9bb0c4ad697ff43abe356caf7d2b191}
}]Slot-\/in button \index{GPIO\_\-SENSOR\_\-BAR@{GPIO\_\-SENSOR\_\-BAR}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-SENSOR\_\-BAR@{GPIO\_\-SENSOR\_\-BAR}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea45a4858a3767a22bee1ada4e2264ac84}{
GPIO\_\-SENSOR\_\-BAR}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea45a4858a3767a22bee1ada4e2264ac84}
}]Sensor bar power \index{GPIO\_\-DI\_\-EJECT@{GPIO\_\-DI\_\-EJECT}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DI\_\-EJECT@{GPIO\_\-DI\_\-EJECT}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eaa93b3df90fd91fc7d0436aa605454d3b}{
GPIO\_\-DI\_\-EJECT}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eaa93b3df90fd91fc7d0436aa605454d3b}
}]Trigger DI eject \index{GPIO\_\-EEP\_\-CS@{GPIO\_\-EEP\_\-CS}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-EEP\_\-CS@{GPIO\_\-EEP\_\-CS}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea1edb35cad12f3b8e51e72bd8914ef3af}{
GPIO\_\-EEP\_\-CS}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea1edb35cad12f3b8e51e72bd8914ef3af}
}]SEEPROM chip select \index{GPIO\_\-EEP\_\-CLK@{GPIO\_\-EEP\_\-CLK}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-EEP\_\-CLK@{GPIO\_\-EEP\_\-CLK}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea1ae84e97df872a7e8e4dd86fd3a170e6}{
GPIO\_\-EEP\_\-CLK}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea1ae84e97df872a7e8e4dd86fd3a170e6}
}]SEEPROM clock \index{GPIO\_\-EEP\_\-MOSI@{GPIO\_\-EEP\_\-MOSI}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-EEP\_\-MOSI@{GPIO\_\-EEP\_\-MOSI}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea36303e3866944804351076d8b6cfd4d7}{
GPIO\_\-EEP\_\-MOSI}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea36303e3866944804351076d8b6cfd4d7}
}]Data to SEEPROM \index{GPIO\_\-EEP\_\-MISO@{GPIO\_\-EEP\_\-MISO}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-EEP\_\-MISO@{GPIO\_\-EEP\_\-MISO}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea73d80c59745cf55064dcdac682e591df}{
GPIO\_\-EEP\_\-MISO}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea73d80c59745cf55064dcdac682e591df}
}]Data from SEEPROM \index{GPIO\_\-AVE\_\-CLK@{GPIO\_\-AVE\_\-CLK}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-AVE\_\-CLK@{GPIO\_\-AVE\_\-CLK}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ead0aee502bf33786e2313c8f8534d7d70}{
GPIO\_\-AVE\_\-CLK}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ead0aee502bf33786e2313c8f8534d7d70}
}]A/V Encoder I2C clock \index{GPIO\_\-AVE\_\-DATA@{GPIO\_\-AVE\_\-DATA}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-AVE\_\-DATA@{GPIO\_\-AVE\_\-DATA}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea56f15e034d99b673959915344e2cde58}{
GPIO\_\-AVE\_\-DATA}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea56f15e034d99b673959915344e2cde58}
}]A/V Encoder I2C data \index{GPIO\_\-DEBUG0@{GPIO\_\-DEBUG0}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DEBUG0@{GPIO\_\-DEBUG0}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea7823c05ab99b619b9c1f88a0629f1d43}{
GPIO\_\-DEBUG0}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea7823c05ab99b619b9c1f88a0629f1d43}
}]Debug Testpoint TP221 \index{GPIO\_\-DEBUG1@{GPIO\_\-DEBUG1}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DEBUG1@{GPIO\_\-DEBUG1}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea0a578de751ce10617ceef5d9fbefbfe2}{
GPIO\_\-DEBUG1}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea0a578de751ce10617ceef5d9fbefbfe2}
}]Debug Testpoint TP222 \index{GPIO\_\-DEBUG2@{GPIO\_\-DEBUG2}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DEBUG2@{GPIO\_\-DEBUG2}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea3c8cf7db81cef95972b0a23f7053c32f}{
GPIO\_\-DEBUG2}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea3c8cf7db81cef95972b0a23f7053c32f}
}]Debug Testpoint TP223 \index{GPIO\_\-DEBUG3@{GPIO\_\-DEBUG3}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DEBUG3@{GPIO\_\-DEBUG3}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea04796a7278e61df9b7a05017a5b25bce}{
GPIO\_\-DEBUG3}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea04796a7278e61df9b7a05017a5b25bce}
}]Debug Testpoint TP224 \index{GPIO\_\-DEBUG4@{GPIO\_\-DEBUG4}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DEBUG4@{GPIO\_\-DEBUG4}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eab138cfd747dc13a4b55b898d027665b1}{
GPIO\_\-DEBUG4}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120eab138cfd747dc13a4b55b898d027665b1}
}]Debug Testpoint TP225 \index{GPIO\_\-DEBUG5@{GPIO\_\-DEBUG5}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DEBUG5@{GPIO\_\-DEBUG5}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea2ba52c17cdc431e5bdeda00607527d59}{
GPIO\_\-DEBUG5}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea2ba52c17cdc431e5bdeda00607527d59}
}]Debug Testpoint TP226 \index{GPIO\_\-DEBUG6@{GPIO\_\-DEBUG6}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DEBUG6@{GPIO\_\-DEBUG6}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea61c84a184864e08be63ddb68fe6f9de7}{
GPIO\_\-DEBUG6}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea61c84a184864e08be63ddb68fe6f9de7}
}]Debug Testpoint TP219 \index{GPIO\_\-DEBUG7@{GPIO\_\-DEBUG7}!gpio.h@{gpio.h}}\index{gpio.h@{gpio.h}!GPIO\_\-DEBUG7@{GPIO\_\-DEBUG7}}\item[{\em 
\hypertarget{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea26cc96884895e6e7998ba9823d0d761f}{
GPIO\_\-DEBUG7}
\label{gpio_8h_abf6d98e99fb0fb81b56c89f29bd6120ea26cc96884895e6e7998ba9823d0d761f}
}]Debug Testpoint TP220 \end{description}
\end{Desc}



\subsection{Function Documentation}
\hypertarget{gpio_8h_a22be2b1db5ce673c1205642c2bbc7e4e}{
\index{gpio.h@{gpio.h}!gpio\_\-clear@{gpio\_\-clear}}
\index{gpio\_\-clear@{gpio\_\-clear}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-clear}]{\setlength{\rightskip}{0pt plus 5cm}void gpio\_\-clear ({\bf gpio\_\-pin\_\-t} {\em gpios})}}
\label{gpio_8h_a22be2b1db5ce673c1205642c2bbc7e4e}


Clears GPIO output data bits. 


\begin{DoxyParams}{Parameters}
\item[{\em gpios}]The GPIO states to clear. \end{DoxyParams}
\hypertarget{gpio_8h_a60136874bebc1a9943405e3662c0cdc9}{
\index{gpio.h@{gpio.h}!gpio\_\-direction@{gpio\_\-direction}}
\index{gpio\_\-direction@{gpio\_\-direction}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-direction}]{\setlength{\rightskip}{0pt plus 5cm}int gpio\_\-direction ({\bf gpio\_\-pin\_\-t} {\em pin}, \/  int {\em dir})}}
\label{gpio_8h_a60136874bebc1a9943405e3662c0cdc9}


Sets GPIO direction. 


\begin{DoxyParams}{Parameters}
\item[{\em dir}]the new GPIO direction. -\/1 is input, 1 is output, 0 is no change. \end{DoxyParams}
\begin{DoxyReturn}{Returns}
The old GPIO direction. 
\end{DoxyReturn}
\hypertarget{gpio_8h_acf5b03f8b83db07ec65fd37b3aeb439f}{
\index{gpio.h@{gpio.h}!gpio\_\-initialize@{gpio\_\-initialize}}
\index{gpio\_\-initialize@{gpio\_\-initialize}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-initialize}]{\setlength{\rightskip}{0pt plus 5cm}int gpio\_\-initialize (void)}}
\label{gpio_8h_acf5b03f8b83db07ec65fd37b3aeb439f}


Initialize the GPIO subsystem. 

Initializes the GPIO subsystem, registers the handler for the GPIO interrupt and performs all other required initialization tasks. \begin{DoxyReturn}{Returns}
If initialization was successful, returns 1. Otherwise 0. 
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}
\hyperlink{gpio_8h_a79e288dec2c2b13ea2bf5cad00a6a09e}{gpio\_\-shutdown()} 
\end{DoxySeeAlso}
\hypertarget{gpio_8h_a44474b4270572bdca19e158f0155afe3}{
\index{gpio.h@{gpio.h}!gpio\_\-mask@{gpio\_\-mask}}
\index{gpio\_\-mask@{gpio\_\-mask}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-mask}]{\setlength{\rightskip}{0pt plus 5cm}void gpio\_\-mask ({\bf gpio\_\-pin\_\-t} {\em setgpios}, \/  {\bf gpio\_\-pin\_\-t} {\em clrgpios})}}
\label{gpio_8h_a44474b4270572bdca19e158f0155afe3}


Masks GPIO output data bits. 


\begin{DoxyParams}{Parameters}
\item[{\em setgpios}]The GPIO states to set. \item[{\em clrgpios}]The GPIO states to clear. \end{DoxyParams}
\hypertarget{gpio_8h_aa0bf7fe70cd17f1c6b8a1a65181c51fb}{
\index{gpio.h@{gpio.h}!gpio\_\-read@{gpio\_\-read}}
\index{gpio\_\-read@{gpio\_\-read}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-read}]{\setlength{\rightskip}{0pt plus 5cm}{\bf gpio\_\-pin\_\-t} gpio\_\-read (void)}}
\label{gpio_8h_aa0bf7fe70cd17f1c6b8a1a65181c51fb}


Reads GPIO data. 

Reads data from the GPIOs. \begin{DoxyReturn}{Returns}
The GPIO state. 
\end{DoxyReturn}
\hypertarget{gpio_8h_a2cda54d731fa89f0f1fd4f80c50ef19d}{
\index{gpio.h@{gpio.h}!gpio\_\-set@{gpio\_\-set}}
\index{gpio\_\-set@{gpio\_\-set}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-set}]{\setlength{\rightskip}{0pt plus 5cm}void gpio\_\-set ({\bf gpio\_\-pin\_\-t} {\em gpios})}}
\label{gpio_8h_a2cda54d731fa89f0f1fd4f80c50ef19d}


Sets GPIO output data bits. 


\begin{DoxyParams}{Parameters}
\item[{\em gpios}]The GPIO states to set. \end{DoxyParams}
\hypertarget{gpio_8h_a79e288dec2c2b13ea2bf5cad00a6a09e}{
\index{gpio.h@{gpio.h}!gpio\_\-shutdown@{gpio\_\-shutdown}}
\index{gpio\_\-shutdown@{gpio\_\-shutdown}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-shutdown}]{\setlength{\rightskip}{0pt plus 5cm}int gpio\_\-shutdown (void)}}
\label{gpio_8h_a79e288dec2c2b13ea2bf5cad00a6a09e}


Shut down the GPIO subsystem. 

Shuts down the GPIO subsystem, unregisters the handler for the GPIO interrupt and performs all other required shut down tasks. \begin{DoxyReturn}{Returns}
If shut down was successful, returns 1. Otherwise 0. 
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}
\hyperlink{gpio_8h_acf5b03f8b83db07ec65fd37b3aeb439f}{gpio\_\-initialize()} 
\end{DoxySeeAlso}
\hypertarget{gpio_8h_a971e0e9072f537c82492834676e6cbf2}{
\index{gpio.h@{gpio.h}!gpio\_\-switch@{gpio\_\-switch}}
\index{gpio\_\-switch@{gpio\_\-switch}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-switch}]{\setlength{\rightskip}{0pt plus 5cm}void gpio\_\-switch ({\bf gpio\_\-pin\_\-t} {\em gpios})}}
\label{gpio_8h_a971e0e9072f537c82492834676e6cbf2}


Switches GPIO output data bits. 


\begin{DoxyParams}{Parameters}
\item[{\em gpios}]The GPIO states to switch. \end{DoxyParams}
\hypertarget{gpio_8h_af40485b00fcbefd37e3e2cc637226f37}{
\index{gpio.h@{gpio.h}!gpio\_\-write@{gpio\_\-write}}
\index{gpio\_\-write@{gpio\_\-write}!gpio.h@{gpio.h}}
\subsubsection[{gpio\_\-write}]{\setlength{\rightskip}{0pt plus 5cm}void gpio\_\-write ({\bf gpio\_\-pin\_\-t} {\em gpios})}}
\label{gpio_8h_af40485b00fcbefd37e3e2cc637226f37}


Writes GPIO output data. 


\begin{DoxyParams}{Parameters}
\item[{\em gpios}]The GPIO state to output. \end{DoxyParams}
