\doxysection{src/l1/tch9.c File Reference}
\label{tch9_8c}\index{src/l1/tch9.c@{src/l1/tch9.c}}


Osmocom GMR-\/1 TCH9 channel coding implementation.  


{\ttfamily \#include $<$stdint.\+h$>$}\newline
{\ttfamily \#include $<$string.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/bits.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/conv.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/crc16gen.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gmr1/l1/conv.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gmr1/l1/crc.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gmr1/l1/interleave.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gmr1/l1/punct.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gmr1/l1/scramb.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/gmr1/l1/tch9.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \textbf{ gmr1\+\_\+tch9\+\_\+encode} (\textbf{ ubit\+\_\+t} $\ast$bits\+\_\+e, const uint8\+\_\+t $\ast$l2, enum \textbf{ gmr1\+\_\+tch9\+\_\+mode} mode, const \textbf{ ubit\+\_\+t} $\ast$bits\+\_\+sacch, const \textbf{ ubit\+\_\+t} $\ast$bits\+\_\+status, const \textbf{ ubit\+\_\+t} $\ast$ciph, struct \textbf{ gmr1\+\_\+interleaver} $\ast$il)
\begin{DoxyCompactList}\small\item\em GMR-\/1 TCH9 channel coder. \end{DoxyCompactList}\item 
void \textbf{ gmr1\+\_\+tch9\+\_\+decode} (uint8\+\_\+t $\ast$l2, \textbf{ sbit\+\_\+t} $\ast$bits\+\_\+sacch, \textbf{ sbit\+\_\+t} $\ast$bits\+\_\+status, const \textbf{ sbit\+\_\+t} $\ast$bits\+\_\+e, enum \textbf{ gmr1\+\_\+tch9\+\_\+mode} mode, const \textbf{ ubit\+\_\+t} $\ast$ciph, struct \textbf{ gmr1\+\_\+interleaver} $\ast$il, int $\ast$conv\+\_\+rv)
\begin{DoxyCompactList}\small\item\em GMR-\/1 TCH9 channel decoder. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Osmocom GMR-\/1 TCH9 channel coding implementation. 

