\hypertarget{if__ath__drv_8c_source}{}\doxysection{if\+\_\+ath\+\_\+drv.\+c}
\label{if__ath__drv_8c_source}\index{dev/ath/if\_ath\_drv.c@{dev/ath/if\_ath\_drv.c}}
\mbox{\hyperlink{if__ath__drv_8c}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00001}00001 \textcolor{comment}{/*-\/}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00002}00002 \textcolor{comment}{ * Copyright (c) 2017 Adrian Chadd <adrian@FreeBSD.org>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00003}00003 \textcolor{comment}{ * All rights reserved.}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00004}00004 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00005}00005 \textcolor{comment}{ * Redistribution and use in source and binary forms, with or without}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00006}00006 \textcolor{comment}{ * modification, are permitted provided that the following conditions}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00007}00007 \textcolor{comment}{ * are met:}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00008}00008 \textcolor{comment}{ * 1. Redistributions of source code must retain the above copyright}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00009}00009 \textcolor{comment}{ *    notice, this list of conditions and the following disclaimer,}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00010}00010 \textcolor{comment}{ *    without modification.}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00011}00011 \textcolor{comment}{ * 2. Redistributions in binary form must reproduce at minimum a disclaimer}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00012}00012 \textcolor{comment}{ *    similar to the "{}NO WARRANTY"{} disclaimer below ("{}Disclaimer"{}) and any}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00013}00013 \textcolor{comment}{ *    redistribution must be conditioned upon including a substantially}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00014}00014 \textcolor{comment}{ *    similar Disclaimer requirement for further binary redistribution.}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00015}00015 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00016}00016 \textcolor{comment}{ * NO WARRANTY}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00017}00017 \textcolor{comment}{ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00018}00018 \textcolor{comment}{ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00019}00019 \textcolor{comment}{ * LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00020}00020 \textcolor{comment}{ * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00021}00021 \textcolor{comment}{ * THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00022}00022 \textcolor{comment}{ * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00023}00023 \textcolor{comment}{ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00024}00024 \textcolor{comment}{ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00025}00025 \textcolor{comment}{ * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00026}00026 \textcolor{comment}{ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00027}00027 \textcolor{comment}{ * THE POSSIBILITY OF SUCH DAMAGES.}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00028}00028 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00029}00029 \textcolor{comment}{ * \$FreeBSD\$}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00030}00030 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00031}00031 \textcolor{preprocessor}{\#include "{}opt\_ah.h"{}}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00032}00032 }
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00033}00033 \textcolor{preprocessor}{\#include <sys/param.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00034}00034 \textcolor{preprocessor}{\#include <sys/systm.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00035}00035 \textcolor{preprocessor}{\#include <sys/kernel.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00036}00036 \textcolor{preprocessor}{\#include <sys/module.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00037}00037 \textcolor{preprocessor}{\#include <sys/sysctl.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00038}00038 \textcolor{preprocessor}{\#include <sys/bus.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00039}00039 \textcolor{preprocessor}{\#include <sys/malloc.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00040}00040 \textcolor{preprocessor}{\#include <sys/proc.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00041}00041 \textcolor{preprocessor}{\#include <sys/pcpu.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00042}00042 \textcolor{preprocessor}{\#include <sys/lock.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00043}00043 \textcolor{preprocessor}{\#include <sys/mutex.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00044}00044 \textcolor{preprocessor}{\#include <sys/conf.h>}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00045}00045 }
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00046}00046 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00047}00047 \textcolor{comment}{ * This implements the "{}old"{} style ath(4) module behaviour, which loaded the}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00048}00048 \textcolor{comment}{ * driver, HAL and PCI glue.}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00049}00049 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00050}00050 }
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00051}00051 \textcolor{keyword}{static} \textcolor{keywordtype}{int}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00052}\mbox{\hyperlink{if__ath__drv_8c_af649247eb72e3e21e8871a2435ae6b4e}{00052}} \mbox{\hyperlink{if__ath__drv_8c_af649247eb72e3e21e8871a2435ae6b4e}{ath\_modevent}}(module\_t mod \_\_unused, \textcolor{keywordtype}{int} type, \textcolor{keywordtype}{void} *data \_\_unused)}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00053}00053 \{}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00054}00054         \textcolor{keywordtype}{int} error = 0;}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00055}00055 }
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00056}00056         \textcolor{keywordflow}{switch} (type) \{}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00057}00057         \textcolor{keywordflow}{case} MOD\_LOAD:}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00058}00058                 printf(\textcolor{stringliteral}{"{}[ath] loaded\(\backslash\)n"{}});}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00059}00059                 \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00060}00060 }
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00061}00061         \textcolor{keywordflow}{case} MOD\_UNLOAD:}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00062}00062                 printf(\textcolor{stringliteral}{"{}[ath] unloaded\(\backslash\)n"{}});}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00063}00063                 \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00064}00064 }
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00065}00065         \textcolor{keywordflow}{case} MOD\_SHUTDOWN:}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00066}00066                 \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00067}00067 }
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00068}00068         \textcolor{keywordflow}{default}:}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00069}00069                 error = EOPNOTSUPP;}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00070}00070                 \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00071}00071         \}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00072}00072         \textcolor{keywordflow}{return} (error);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00073}00073 \}}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00074}00074 }
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00075}\mbox{\hyperlink{if__ath__drv_8c_a23977e9d8e1fd019a2d72ea88877cba5}{00075}} \mbox{\hyperlink{if__ath__drv_8c_a23977e9d8e1fd019a2d72ea88877cba5}{DEV\_MODULE}}(if\_ath, \mbox{\hyperlink{if__ath__drv_8c_af649247eb72e3e21e8871a2435ae6b4e}{ath\_modevent}}, NULL);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00076}00076 }
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00077}\mbox{\hyperlink{if__ath__drv_8c_abdf4e4f034dae8ddc19015b50d75d64c}{00077}} \mbox{\hyperlink{if__ath__drv_8c_abdf4e4f034dae8ddc19015b50d75d64c}{MODULE\_VERSION}}(if\_ath, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00078}\mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{00078}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, \mbox{\hyperlink{structath__hal}{ath\_hal}}, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00079}\mbox{\hyperlink{if__ath__drv_8c_a443b425ff226eae673132df8f57db0e9}{00079}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, ath\_hal\_ar5210, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00080}\mbox{\hyperlink{if__ath__drv_8c_ac56bb2493e24c363d85156c245585f84}{00080}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, ath\_hal\_ar5211, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00081}\mbox{\hyperlink{if__ath__drv_8c_a494dc0798dafce6c2c7661d118857830}{00081}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, ath\_hal\_ar5212, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00082}\mbox{\hyperlink{if__ath__drv_8c_a5d93f2fbe454bd65394f6771c27f89cd}{00082}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, ath\_hal\_ar5416, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00083}\mbox{\hyperlink{if__ath__drv_8c_a1df2bed31d56511ec96fcf9c949cffac}{00083}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, ath\_hal\_ar9300, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00084}\mbox{\hyperlink{if__ath__drv_8c_a69dba8a39913a60290e6ec26f5d23746}{00084}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, ath\_rate, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00085}\mbox{\hyperlink{if__ath__drv_8c_a329e5db25b7e10b68eb20840b3dcf1b2}{00085}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, ath\_dfs, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00086}\mbox{\hyperlink{if__ath__drv_8c_ae22a0e6af82a98e3a6210ad8c47accc3}{00086}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, wlan, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00087}\mbox{\hyperlink{if__ath__drv_8c_a0d0d217b66d6258b29f44bc12dea3269}{00087}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, ath\_main, 1, 1, 1);}
\DoxyCodeLine{\Hypertarget{if__ath__drv_8c_source_l00088}\mbox{\hyperlink{if__ath__drv_8c_aa1ca3ba14c9e010844856a38b7004e58}{00088}} \mbox{\hyperlink{if__ath__drv_8c_ab326a5789e90f9a1d33b1a8f7be5aa3c}{MODULE\_DEPEND}}(if\_ath, if\_ath\_pci, 1, 1, 1);}

\end{DoxyCode}
