linux/drivers/uwb/lc-dev.c
<<
>>
Prefs
   1/*
   2 * Ultra Wide Band
   3 * Life cycle of devices
   4 *
   5 * Copyright (C) 2005-2006 Intel Corporation
   6 * Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
   7 *
   8 * This program is free software; you can redistribute it and/or
   9 * modify it under the terms of the GNU General Public License version
  10 * 2 as published by the Free Software Foundation.
  11 *
  12 * This program is distributed in the hope that it will be useful,
  13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15 * GNU General Public License for more details.
  16 *
  17 * You should have received a copy of the GNU General Public License
  18 * along with this program; if not, write to the Free Software
  19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
  20 * 02110-1301, USA.
  21 *
  22 *
  23 * FIXME: docs
  24 */
  25#include <linux/kernel.h>
  26#include <linux/slab.h>
  27#include <linux/device.h>
  28#include <linux/export.h>
  29#include <linux/err.h>
  30#include <linux/kdev_t.h>
  31#include <linux/random.h>
  32#include <linux/stat.h>
  33#include "uwb-internal.h"
  34
  35/* We initialize addresses to 0xff (invalid, as it is bcast) */
  36static inline void uwb_dev_addr_init(struct uwb_dev_addr *addr)
  37{
  38        memset(&addr->data, 0xff, sizeof(addr->data));
  39}
  40
  41static inline void uwb_mac_addr_init(struct uwb_mac_addr *addr)
  42{
  43        memset(&addr->data, 0xff, sizeof(addr->data));
  44}
  45
  46/* @returns !0 if a device @addr is a broadcast address */
  47static inline int uwb_dev_addr_bcast(const struct uwb_dev_addr *addr)
  48{
  49        static const struct uwb_dev_addr bcast = { .data = { 0xff, 0xff } };
  50        return !uwb_dev_addr_cmp(addr, &bcast);
  51}
  52
  53/*
  54 * Add callback @new to be called when an event occurs in @rc.
  55 */
  56int uwb_notifs_register(struct uwb_rc=data"4>  44}
uwb_rc=data"4>  44/* @returns !0+1uamess=" 44}
/* @re cahref="drivers/uwb/lc-dev.c#L48" id="L57" class5"line" name="L47">  47<5a>sta5 href="drivers/uwb/lc-dev.c#L38" id="L58" class5"line" name="L48">  48<5a>{
<5    ruptibl"sref">inlineruptibl";/* @re  !0+1uchain af""+code=data" clamute sref">inline  49<5a>   5    static coeturn !inline  50<6a>   6    return !<+code=data" clal(stsref">inline;/* @re cahrefref="+code=data" clal(stinline/* @re  !0+1uchain af""+code=data" clal(stsref">inline  51<6a>}
<61   inline/* @re  !0+1uchain af""+code=data" clamute sref">inline  52<6a>
  53<6a>  54<6a>inlineuwb_notifs_register(struct   55<6a>   6int6n class="comment">/* @returnsa href="drivers/uwb/lc-dev.c#L6" id="L6"7" class6"line" name="L47">  47<6a>sta6n class="comment"> * You shoulRemovecurs inamess=" (@new to )a href="drivers/uwb/lc-dev.c#L6" id="L6"8" class6"line" name="L48">  48<6a>{
<6n class="comment"> * along wi  49<6a>   69a href="+code=uwb_notifs_register"de class="sref">uwb_notifs_registeruwb_rc=data"4>  44}
uwb_rc=data"4>  44/* @returns !0+1uamess=" 44}
/* @relonryhref="drivers/uwb/lc-dev.c#L48" id="L70" class7"line" name="L50">  50<7a>   70href="drivers/uwb/lc-dev.c#L38" id="L71" class7"line" name="L51">  51<7a>}
<71   ruptibl"sref">inlineruptibl";/* @re  !0+1uchain af""+code=data" clamute sref">inline  52<7a>
inline  53<7a>inline/* @relonryhrefref="+code=data" clal(stinline  54<7a>inline/* @re  !0+1uchain af""+code=data" clamute sref">inline  55<7a>   6int76href="drivers/uwb/lc-dev.c#L52" id="L7" class=""line" name="L7">   7sta77 clascode=data" claEXPORT_SYMBOL_GPLsref">inlineuwb_notifs_register  48<7a>{
<78ref="drivers/uwb/lc-dev.c#L46" id="L79" class7"line" name="L49">  49<7a>   7n class="comment"> * Foundansa href="drivers/uwb/lc-dev.c#L6" id="L680" class8"line" name="L50">  50<8a>   8n class="comment"> * 02110-130Nistey newcurs inamess="GNU Ga gimpliurs in pan>
a href="drivers/uwb/lc-dev.c#L6" id="L681" class8"line" name="L51">  51<8a>}
<8n class="comment"> *
  52<8a>
 * This progWe atioen an evproga  it i
  53<8a> * FIXME: dours iniste t detaa particularours in(e.g.,aa BG joiliurs i)  54<8a> */
  55<8a>/* @reddr_gisteyct uwb_rc=data"4>  44}
uwb_rc=data"4>  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44<, enumdata"4>  44uwb_notifs_registerref="+code=bcast" clurs icomment">/* @relrs ihref="drivers/uwb/lc-dev.c#L48" id="L8" class=8"line" name="L6">   6int86href="drivers/uwb/lc-dev.c#L38" id="L8" class=8"line" name="L7">   7sta87   static cons_rc=data"4>  44/* @returns !0+1uamess=" 44}
/* @reamess=" 44<="drivers/uwb/lc-dev.c#L51" id="L8" class=""line" name="L8">   8{
<8    ruptibl"sref">inlineruptibl";/* @re  !0+1uchain af""+code=data" clamute sref">inline  49<8a>   8    static coeturn !  50<9a>   90   /* @rel(st/* @re  !0+1uchain af""+code=data" clal(stsref">inline  51<9a>}
<91   static coeturn !<+code=uwb_dev_al(st/* @rel(st/* @reamess=" 44< href="+code=bcast" clvers/uwb/lc-deid="L af"ref="+code=data" clas !0+1uchaincomment">/* @re  !0+1uchain af""+code=data" clal(stsref">inlineinline  52<9a>
/* @reamess=" 44/* @recbref="+code=addr" claamess="comment">/* @reamess=" 44data, 0xff, siz>}
uwb_dev_addr_cmp 44<, +code=bcast" clurs icomment">/* @relrs ihref=="drivers/uwb/lc-dev.c#L51" id="L93" class9"line" name="L53">  53<9a>  54<9a>  55<9a>inline/* @re  !0+1uchain af""+code=data" clamute sref">inline   6int96href="drivers/uwb/lc-dev.c#L52" id="L9" class=9"line" name="L7">   7sta97ref="drivers/uwb/lc-dev.c#L46" id="L9" class=9"line" name="L8">   8{
<9n class="comment"> * along nsa href="drivers/uwb/lc-dev.c#L6" id="L69" class=""line" name="L9">   9   9n class="comment"> * FoundatioReleasan>
<  to ingaddr is U Ga ddr_cmpwill bhas beplidy>  ien ay newocated  10  /aa class="comment"> */
  11  /aic uwb_dev_addr_cmpdata, dr is 44}
uwb_dev_acmp 44  12  /a href="drivers/uwb/lc-dev.c#L43" id="L103" class=0"line" name="L13">  13  /a3   return !  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  14  /ahref="drivers/uwb/lc-dev.c#L35" id="L105" class=0"line" name="L15">  15  /a5   return !<+code=memset" css="bce_pu"sref">uwb_dev_addr_bce_pu"ref="+code=addr" clas_re" isref">uwb_dev_addr_cmp 44data,bclp;  16  /a6   return !<+code=memset" class="sref">memset(&}
uwb_dev_addr_cmp 44<, 0x69uwb_dev_addr_cmp 44  17  /a7   return !<+code=memset" ckwaresref">uwb_dev_akware;}
uwb_dev_addr_cmp 44  18  /a8href="drivers/uwb/lc-dev.c#L52" id="L109" class=0"line" name="L19">  19  /a9ref="drivers/uwb/lc-dev.c#L35" id="L110" class=="line" name="L10">  10 * 2 as pnsa href="drivers/uwb/lc-dev.c#L6" id="L6111" class=""line" name="L11">  11  /an class="comment"> *
< I addresses  UWBaddr is in hrnc  12 * This proa href="drivers/uwb/lc-dev.c#L19" id="L113" class=="line" name="L13">  13 * but WITHOAewoc, zerospanoen agram; funcan>
  14 * MERCHANT  15uwb_dev_addr_initstruct uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44  16  17uwb_dev_amute vss=";uwb_dev_addr_cmp 44inline  18data, dr is_e addresse;uwb_dev_addr_cmp 44uwb_dev_acmp 44  19uwb_dev_addr_cmp 44uwb_dev_acmp 44<"+code=data" cla/aleasasref">uwb_dev_a/aleasact < =data"4>  44uwb_dev_addr_cmp  20<1/a>uwb_dev_addr_init(struct uwb_dev_addr_cmp 44uwb_dev_ada>   21<1/a>uwb_mac_addr_init(struct uwb_dev_addr_cmp 44uwb_mac_a/a> *  12inlineuwb_dev_addr_cmp 44uwb_notif hream  44<, +code=bcast" clUWB_NUM_GLOBAL_STREAMSsref">inline  23<1/a>  24<1/a>  25<1/a>#i1clude  href="+code=inline" cs hre_"sref">uwb_mac_as hre_"ref="+code=bcast" clddr_initEUI_48_shoacomment">/* @reddr_initEUI_48_shoact data, dr is 44}
uwb_dev_acmp 44<,"drivers/uwb/lc-dev.c#L35" id="L126" class=="line" name="L26">  26<1/a>#i126   return !<<<<<<<<<<<<<<<<<<<<<<<<<<<< href="+code=uwb_rc" cddr is_atin the sref">data, dr is_atin the  44}
data,atin 44<, char/a>}
inline  27<1/a>#i12 href="drivers/uwb/lc-dev.c#L38" id="L128" class1="line" name="L28">  28<1/a>#i12      44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  29<1/a>#i129   return !}
addr, &inline  30<1/a>#i13href="drivers/uwb/lc-dev.c#L41" id="L131" class1="line" name="L31">  31<1/a>#i131   /* @reudr_init" clapri iref="+code=addr" class="sref">addr, &addr->uwb_dev_addr_cmp 44uwb_mac_a/a> *  32<1/a>#i132   return !inlineinline in ng"a href=%s\nhref="d href=, +code=bcast" clss="sref">addr->  13  34<1/a>
<1 href= href="+code=inline" cDEVICE_ATTRsref">addr-DEVICE_ATTRref="+code=addr" claEUI_48sref">addr-EUI_48 44<, +code=bcast" clS_IRUGOsref">addr-S_IRUGOf, siz>}
/* @reddr_initEUI_48_shoact }
/* @reNULL  35<1/a>  36<1/a>st1tic uwb_mac_as hre_"ref="+code=bcast" clddr_initDevA clashoacomment">/* @reddr_initDevA clashoact data, dr is 44}
uwb_dev_acmp 44<,"drivers/uwb/lc-dev.c#L35" id="L137" class1="line" name="L37">  37<1/a>{
137   return !<<<<<<<<<<<<<<<<<<<<<<<<<<<<< href="+code=uwb_rc" cddr is_atin the sref">data, dr is_atin the  44}
data,atin 44<, char/a>}
inline  38<1/a>  13 href="drivers/uwb/lc-dev.c#L49" id="L139" class1="line" name="L39">  39<1/a>}
13    static cons_rc=data"4>  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  40<1/a>
<14    return !}
addr, &inline  41<1/a>st1tic   42<1/a>{
142   (pri icomment">/* @reudr_init(pri iref="+code=addr" class="sref">addr, &addr->uwb_dev_addr_cmp 44uwb_dev_ada>   43<1/a>  1     inlineinline in ng"a href=%s\nhref="d href=, +code=bcast" clss="sref">addr->  44<1/a>}
1a href="drivers/uwb/lc-dev.c#L45" id="L145" class1="line" name="L45">  45<1/a>
<14lude  href="+code=inline" cDEVICE_ATTRsref">addr-DEVICE_ATTRref="+code=addr" claDevA clsref">addr-DevA cl 44<, +code=bcast" clS_IRUGOsref">addr-S_IRUGOf, siz>}
/* @reddr_initDevA clashoact }
/* @reNULL  36<14a>st1an cla"drivers/uwb/lc-dev.c#L51" id="L147" class1="line" name="L47">  47<1/a>st14n class="comment"> * You shnsa href="drivers/uwb/lc-dev.c#L6" id="L6148" class1="line" name="L48">  48<1/a>{
14n class="comment"> * along witShoan>
< BPSTNU Genbutea>>a href="drivers/uwb/lc-dev.c#L6" id="L6149" class1="line" name="L49">  49<1/a>  14n class="comment"> * Foundatia href="drivers/uwb/lc-dev.c#L15" id="L150" class1="line" name="L50">  50<1/a>  15n class="comment"> * 02110-130Calculae hofromn>
< a copy  timeNU Generea>>'s beaconspanoit'sa href="drivers/uwb/lc-dev.c#L15" id="L151" class1="line" name="L51">  51<1/a>}
15n class="comment"> *
< slot number;a href="drivers/uwb/lc-dev.c#L6" id="L6152" class1="line" name="L52">  52<1/a>
<15n class="comment"> * This pro  53<1/a>uwb_mac_as hre_"ref="+code=bcast" clddr_initBPSTashoacomment">/* @reddr_initBPSTashoact data, dr is 44}
uwb_dev_acmp 44<,"drivers/uwb/lc-dev.c#L35" id="L154" class1="line" name="L54">  54<1/a>data, dr is_atin the  44}
data,atin 44<, char/a>}
inline  55<1/a>  56<1/a>in156   return !  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  47<15a>st157   static cons_rc=data"4>  44uwb_dev_addr_beca_a 44}
data,bclp;  48<15a>{
15      44  sref">uwb_dev_addr_beacon_fr>   44}
inline  49<15a>  159   return !<+code=memset" cs="line" nam_dev_ad16href"+code=memset" cbp="sref">bcast)pst hre="drivers/uwb/lc-dev.c#L51" id="L160" class16"line" name="L50">  50<16a>  16href="drivers/uwb/lc-dev.c#L41" id="L161" class16"line" name="L51">  51<16a>}
161   data,bclp;  44uwb_dev_addr_cmp 44data,bclp;  52<16a>
<162   uwb_mac_a/ute valckct data,bclp;inline  53<16a>inline  sref">uwb_dev_addr_beacon_fr>   44data,bclp;data,blp;data,BeaconInfop;  54<16a>bcast)pst hre =data"4>  44data,bclp;data,blp;memset  55<16a>inlinedata,Beacon_Slot_Number 44inline  16in166   return !<+code=memset" clute vunalcksref">inlinedata,bclp;inline  47<16a>st167ref="drivers/uwb/lc-dev.c#L46" id="L1"8" class16"line" name="L48">  48<16a>{
16    inlineinline in ng"a href=%d\nhref="d href=, +code=bcast" clbp="sref">bcast)pst hree="drivers/uwb/lc-dev.c#L51" id="L169" class16"line" name="L49">  49<16a>  16 href="drivers/uwb/lc-dev.c#L40" id="L170" class17"line" name="L50">  50<17a>  170href href="+code=inline" cDEVICE_ATTRsref">addr-DEVICE_ATTRref="+code=addr" claBPSTsref">data,BPST 44<, +code=bcast" clS_IRUGOsref">addr-S_IRUGOf, siz>}
/* @reddr_initBPSTashoact }
/* @reNULL  51<17a>}
17ic   52<17a>
<17n class="comment"> * This pnsa href="drivers/uwb/lc-dev.c#L6" id="L6173" class17"line" name="L53">  53<17a> * but WITHOShoan>
< IEs @addr is is beacon nga href="drivers/uwb/lc-dev.c#L6" id="L6174" class17"line" name="L54">  54<17a> *
  55<17a> * GNU GenerWe needree accpan>>
<  eaconscache, so we just alckast)ren aya href="drivers/uwb/lc-dev.c#L5" id="L5176" class=7"line" name="L6">   6in17n class="comment"> * Inaky Perquick, pri in>
< IEs @nd unalck;a href="drivers/uwb/lc-dev.c#L6" id="L617" class=1""line" name="L7">   7st17n class="comment"> *
  48<17a>{
17n class="comment"> * along witWe ived a  49<17a>  17n class="comment"> * FoundaPerquite saft;a href="drivers/uwb/lc-dev.c#L6" id="L6180" class18"line" name="L50">  50<18a>  18n class="comment"> * 02110-13  51<18a>}
18ic uwb_mac_as hre_"ref="+code=bcast" clddr_initIEsashoacomment">/* @reddr_initIEsashoact data, dr is 44}
uwb_dev_acmp 44<,"drivers/uwb/lc-dev.c#L35" id="L182" class18"line" name="L52">  52<18a>
<182   return !data, dr is_atin the  44}
data,atin 44<, char/a>}
inline  53<18a>  54<18a>  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  55<18a>   6in186   return !uwb_dev_addr_bce_pri itIEsref="+code=addr" class="" isref">uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44data,bclp;inlineinline   7st187   s="drivers/uwb/lc-dev.c#L40" id="L18" class=1""line" name="L8">   8{
18    < href="+code=inline" cDEVICE_ATTRsref">addr-DEVICE_ATTRref="+code=addr" claIEssref">uwb_dev_aIEsref=, +code=bcast" clS_IRUGOsref">addr-S_IRUGOf, s | +code=bcast" clS_IWUSRsref">addr-S_IWUSRf, siz>}
/* @reddr_initIEsashoact }
/* @reNULL  49<18a>  189ref="drivers/uwb/lc-dev.c#L35" id="L190" class19"line" name="L50">  50<19a>  190href href="+code=inline" cs hre_"sref">uwb_mac_as hre_"ref="+code=bcast" clddr_initLQEashoacomment">/* @reddr_initLQEashoact data, dr is 44}
uwb_dev_acmp 44<,"drivers/uwb/lc-dev.c#L35" id="L191" class19"line" name="L51">  51<19a>}
191   static coeturn !data, dr is_atin the  44}
data,atin 44<, char/a>}
inline  52<19a>
<19 href="drivers/uwb/lc-dev.c#L43" id="L193" class19"line" name="L53">  53<19a>  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  54<19a>  44uwb_dev_addr_beca_a 44}
data,bclp;  44uwb_dev_addr_cmp 44data,bclp;  55<19a>uwb_mac_ashre_"ref="+code=bcast" clresul"sref">uwb_mac_aresul"p;   6in19n cla"drivers/uwb/lc-dev.c#L51" id="L19" class=19"line" name="L7">   7st197   return !<+code=memset" cmute valcksref">uwb_mac_a/ute valckct data,bclp;inline   8{
19    uwb_mac_aresul"p;  44/* @re hresashoact uwb_dev_addr_cmp 44data,bclp;data,lqe_ hresp;inline   9  199   return !<+code=memset" clute vunalcksref">inlinedata,bclp;inline  10<2aa>  20    return !uwb_mac_aresul"p;  11<201>  20 href="drivers/uwb/lc-dev.c#L52" id="L202" class20"line" name="L12">  12<202>  20href="drivers/uwb/lc-dev.c#L53" id="L203" class20"line" name="L13">  13<203>  20n cla href="+code=inline" cs hre_"sref">uwb_mac_as hre_"ref="+code=bcast" clddr_initLQEastorasref">uwb_dev_addr_initLQEastoract data, dr is 44}
uwb_dev_acmp 44<,"drivers/uwb/lc-dev.c#L35" id="L204" class20"line" name="L14">  14<204>  204   data, dr is_atin the  44}
data,atin 44<,"drivers/uwb/lc-dev.c#L35" id="L205" class20"line" name="L55">  55<205>  205   return !<<<<<<<<<<<<<<<<<<<<<<<<<}
inlineuwb_mac_ashre_"ref="+code=bcast" clsssesref">data,ssse;  16<206>  206href="drivers/uwb/lc-dev.c#L38" id="L207" class20"line" name="L17">  17<207>  207   static cons_rc=data"4>  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  18<208>  20      44uwb_dev_addr_beca_a 44}
data,bclp;  44uwb_dev_addr_cmp 44data,bclp;  19<209>  209   return !<+code=memset" cs hre_"sref">uwb_mac_as hre_"ref="+code=bcast" clresul"sref">uwb_mac_aresul"p;  10<2/a>  11<2a1>  211   uwb_mac_a/ute valckct data,bclp;inline  12<2/a>uwb_mac_aresul"p;  44uwb_dev_a hresastoract uwb_dev_addr_cmp 44data,bclp;data,lqe_ hresp;inlinedata,ssse;  13<2/a>inlinedata,bclp;inline  14<2/a>uwb_mac_aresul"p;  15<2/a>  16<2/a>addr-DEVICE_ATTRref="+code=addr" claLQEsref">addr-LQEref=, +code=bcast" clS_IRUGOsref">addr-S_IRUGOf, s | +code=bcast" clS_IWUSRsref">addr-S_IWUSRf, siz>}
/* @reddr_initLQEashoact }
uwb_dev_addr_initLQEastoract   17<2/a>  18<2/a>uwb_mac_as hre_"ref="+code=bcast" clddr_initRSSIashoacomment">/* @reddr_initRSSIashoact data, dr is 44}
uwb_dev_acmp 44<,"drivers/uwb/lc-dev.c#L35" id="L219" class2="line" name="L19">  19<2/a>data, dr is_atin the  44}
data,atin 44<, char/a>}
inline  20<2/a>  21<2/a>  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  12<2aa>  44uwb_dev_addr_beca_a 44}
data,bclp;  44uwb_dev_addr_cmp 44data,bclp;  23<2/a>uwb_mac_ashre_"ref="+code=bcast" clresul"sref">uwb_mac_aresul"p;  24<2/a>  25<2/a>#i225   return !<+code=memset" clute valcksref">uwb_mac_a/ute valckct data,bclp;inline  26<2/a>#i226   return !<+code=memset" cresul"sref">uwb_mac_aresul"p;  44/* @re hresashoact uwb_dev_addr_cmp 44data,bclp;data,rs h_ hresp;inline  27<2/a>#i227   return !<+code=memset" cmute vunalcksref">inlinedata,bclp;inline  28<2/a>#i22    uwb_mac_aresul"p;  29<2/a>#i22 href="drivers/uwb/lc-dev.c#L40" id="L230" class2="line" name="L30">  30<2/a>#i23href="drivers/uwb/lc-dev.c#L41" id="L231" class2="line" name="L31">  31<2/a>#i23ic uwb_mac_as hre_"ref="+code=bcast" clddr_initRSSIastorasref">uwb_dev_addr_initRSSIastoract data, dr is 44}
uwb_dev_acmp 44<,"drivers/uwb/lc-dev.c#L35" id="L232" class2="line" name="L32">  32<2/a>#i232   return !data, dr is_atin the  44}
data,atin 44<,"drivers/uwb/lc-dev.c#L35" id="L233" class2""line" name="L13">  13<2aa>}
inlineuwb_mac_ashre_"ref="+code=bcast" clsssesref">data,ssse;  34<2/a>
<2 href=="drivers/uwb/lc-dev.c#L38" id="L235" class2="line" name="L35">  35<2/a>  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  36<2/a>st236   return !  44uwb_dev_addr_beca_a 44}
data,bclp;  44uwb_dev_addr_cmp 44data,bclp;  37<2/a>{
237   return !<+code=memset" cs hre_"sref">uwb_mac_as hre_"ref="+code=bcast" clresul"sref">uwb_mac_aresul"p;  38<2/a>  238ref="drivers/uwb/lc-dev.c#L46" id="L239" class2="line" name="L39">  39<2/a>}
239   return !<+code=memset" clute valcksref">uwb_mac_a/ute valckct data,bclp;inline  40<2/a>
<24    return !<+code=data" claresul"sref">uwb_mac_aresul"p;  44uwb_dev_a hresastoract uwb_dev_addr_cmp 44data,bclp;data,rs h_ hresp;inlinedata,ssse;  41<2/a>st241   inlinedata,bclp;inline  42<2/a>{
242   uwb_mac_aresul"p;  43<2/a>  243href="drivers/uwb/lc-dev.c#L52" id="L244" class2="line" name="L44">  44<2/a>}
24href= href="+code=inline" cDEVICE_ATTRsref">addr-DEVICE_ATTRref="+code=addr" claRSSIsref">addr-RSSIref=, +code=bcast" clS_IRUGOsref">addr-S_IRUGOf, s | +code=bcast" clS_IWUSRsref">addr-S_IWUSRf, siz>}
/* @reddr_initRSSIashoact }
uwb_dev_addr_initRSSIastoract   45<2/a>
<24href="drivers/uwb/lc-dev.c#L46" id="L246" class24"line" name="L36">  36<24a>st2an cla"drivers/uwb/lc-dev.c#L51" id="L247" class2="line" name="L47">  47<2/a>st24n cla href="ns_rc=data"4>  44data,atin the  44}
data,initatins 44<[] =d="drivers/uwb/lc-dev.c#L38" id="L248" class2="line" name="L48">  48<2/a>{
24    addr-initatin_EUI_48   <"+code=data" claatinsref">data,atin 44<,"drivers/uwb/lc-dev.c#L35" id="L249" class2="line" name="L49">  49<2/a>  249   addr-initatin_DevA cl   <"+code=data" claatinsref">data,atin 44<,"drivers/uwb/lc-dev.c#L35" id="L250" class2="line" name="L50">  50<2/a>  250   data,initatin_BPST   <"+code=data" claatinsref">data,atin 44<,"drivers/uwb/lc-dev.c#L35" id="L251" class2="line" name="L51">  51<2/a>}
251   uwb_dev_ainitatin_IEs   <"+code=data" claatinsref">data,atin 44<,"drivers/uwb/lc-dev.c#L35" id="L252" class2="line" name="L52">  52<2/a>
<252   addr-initatin_LQE   <"+code=data" claatinsref">data,atin 44<,"drivers/uwb/lc-dev.c#L35" id="L253" class2="line" name="L53">  53<2/a>addr-initatin_RSSI   <"+code=data" claatinsref">data,atin 44<,"drivers/uwb/lc-dev.c#L35" id="L254" class2="line" name="L54">  54<2/a>/* @reNULL  55<2/a>  56<2/a>in25n cla"drivers/uwb/lc-dev.c#L51" id="L257" class25"line" name="L47">  47<25a>st25n cla href="ns_rc=data"4>  44data,atin the _groupref="+code=bcast" clinitatin_groupsref">data,initatin_groupp;  48<25a>{
25    uwb_dev_aatins 44< =data"4>  44data,initatins 44<,"drivers/uwb/lc-dev.c#L35" id="L259" class25"line" name="L49">  49<25a>  259   r}="drivers/uwb/lc-dev.c#L51" id="L260" class26"line" name="L50">  50<26a>  26href="drivers/uwb/lc-dev.c#L41" id="L261" class26"line" name="L51">  51<26a>}
26ic   44data,atin the _groupref="a>}
data,groups 44<[] =d="drivers/uwb/lc-dev.c#L38" id="L262" class26"line" name="L52">  52<26a>
<262   data,initatin_groupp;  53<26a>/* @reNULL  54<26a>  55<26a>  16<2aa>in26n class="comment"> * Inaky /*  47<26a>st26n class="comment"> *
< Ddr is SYSFS"a gins_aan>
a href="drivers/uwb/lc-dev.c#L8" id="L8268" class26"line" name="L48">  48<26a>{
26n class="comment"> * along wia href="drivers/uwb/lc-dev.c#L8" id="L8269" class26"line" name="L49">  49<26a>  26n class="comment"> * Foundatia href="drivers/uwb/lc-dev.c#L15" id="L270" class27"line" name="L50">  50<27a>  27n class="comment"> * 02110-13  51<27a>}
27ic /* @re__ss="" iuwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44<,< href="+code=uwb_rc" cddr issref">data, dr is 44}
uwb_dev_apar211"" i;  52<27a>
<27 href="drivers/uwb/lc-dev.c#L43" id="L273" class27"line" name="L53">  53<27a>  44data, dr is 44}
uwb_dev_acmp 44<="drivers/uwb/lc-dev.c#L51" id="L274" class27"line" name="L54">  54<27a>  55<27a>uwb_dev_acmp 44< =dref="+code=addr" clas_re" isref">uwb_dev_addr_cmp 44uwb_dev_acmp 44<="drivers/uwb/lc-dev.c#L51" id="L276" class27"line" name="L6">   6in276   return !<+s="comment"> * Inaky /* Ddr is syrfs files ar2 only useful for neighbor  dr iss nota href="drivers/uwb/lc-dev.c#L25" id="L277" class2""line" name="L7">   7st27n class="comment"> *










local radio"ucttrollc-d.13  48<27a>{
27    uwb_dev_addr_cmp 44uwb_mac_arc 44uwb_dev_addr_cmp 44  44uwb_dev_addr_cmp 44  49<27a>  27    static coeturn !<+code=data" cla" isref">uwb_dev_acmp 44data,groups 44< =data"4>  44data,groups 44<="drivers/uwb/lc-dev.c#L51" id="L280" class28"line" name="L50">  50<28a>  28    return !<+code=data" cla" isref">uwb_dev_acmp 44uwb_dev_apar211 44< =data"4>  44uwb_dev_apar211"" i;  51<28a>}
281   data,initse1""rvdataref="+code=addr" cla" isref">uwb_dev_acmp 44}
uwb_dev_addr_cmp 44  52<28a>
<28href="drivers/uwb/lc-dev.c#L53" id="L283" class28"line" name="L53">  53<28a>/* @reddr is_addref="+code=addr" cla" isref">uwb_dev_acmp 44  54<28a>  55<28a>   6in28n cla"drivers/uwb/lc-dev.c#L51" id="L28" class=28"line" name="L7">   7st28n cla href="voidn+code=memset" c__ss="" i/* @re__ss="" iuwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44   8{
28 href="drivers/uwb/lc-dev.c#L49" id="L289" class28"line" name="L49">  49<28a>  289   return !<+code=memset" c" idata,initse1""rvdataref="ref="+code=addr" clas_re" isref">uwb_dev_addr_cmp 44uwb_dev_acmp 44}
/* @reNULL  50<29a>  29    return !<+code=data" cla" i is_delcomment">/* @reddr is_delref="ref="+code=addr" clas_re" isref">uwb_dev_addr_cmp 44uwb_dev_acmp 44<)="drivers/uwb/lc-dev.c#L51" id="L291" class29"line" name="L51">  51<29a>}
29 href="drivers/uwb/lc-dev.c#L52" id="L292" class29"line" name="L52">  52<29a>
<29href="drivers/uwb/lc-dev.c#L53" id="L293" class29"line" name="L53">  53<29a>  54<29a> */*  55<29a> * GNU GenerR ginserspanoinitializd a   6in29n class="comment"> * Inaky Pe 4href="drivers/uwb/lc-dev.c#L8" id="L829" class=29"line" name="L7">   7st29n class="comment"> *
< Didnyou call ss="" i   8{
29n class="comment"> * along wia href="drivers/uwb/lc-dev.c#L8" id="L8299" class2""line" name="L9">   9  29n class="comment"> * FoundaPer@par211"rc: is ed wpar211 radio"ucttrollc- who has ed we="kree ed a href="drivers/uwb/lc-dev.c#L8" id="L8300" class3""line" name="L10">  10<3aa>  30n class="comment"> * 02110-130000000000000 dr is. When"a ginsen ng ed wUWB  dr is ill bis @aUWBa href="drivers/uwb/lc-dev.c#L8" id="L8301" class3""line" name="L51">  51<301>  30n class="comment"> *
<             Radio"Ccttrollc-, we poi inbackree it;a href="drivers/uwb/lc-dev.c#L6" id="L6302" class30"line" name="L12">  12<302>  30n class="comment"> * This proa href="drivers/uwb/lc-dev.c#L6" id="L6303" class30"line" name="L53">  53<303>  30n class="comment"> * but WITHOIf"a ginsen ng ed w dr is ill bis partNU Ga radio, callc- has s="rehref="drivers/uwb/lc-dev.c#L6" id="L6304" class30"line" name="L54">  54<304>  30n class="comment"> *
< rcref="ss="" iref=" id= Oed rwiseast)is eo b weeft NULL--a  55<305>  30n class="comment"> * GNU Generb wallocae h;a href="drivers/uwb/lc-dev.c#L6" id="L6306" class30"line" name="L6">   6  30n class="comment"> * Inaky Pe  17<307>  307   si in+code=memset" css="" i/* @ress="" iuwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44<,< href="+code=uwb_rc" cddr issref">data, dr is 44}
uwb_dev_apar211"" i;  18<308>  30      44uwb_mac_addr_rc 44}
uwb_mac_apar211"rc 44  19<309>  309   r="drivers/uwb/lc-dev.c#L49" id="L310" class3="line" name="L10">  10<3/a>uwb_mac_aresul"p;  11<3a1>  311     44data, dr is 44}
uwb_dev_acmp 44<="drivers/uwb/lc-dev.c#L51" id="L312" class3="line" name="L12">  12<3/a>  13<3/a>uwb_dev_aBUG_ONref="+code=addr" class="" isref">uwb_dev_addr_cmp 44  44/* @reNULL  14<3/a>uwb_dev_aBUG_ONref="+code=addr" clapar211"" isref">uwb_dev_apar211"" i;  44/* @reNULL  15<3/a>uwb_dev_aBUG_ONref="+code=addr" clapar211"rcsref">uwb_mac_apar211"rc 44  44/* @reNULL  16<3/a>  17<3/a>uwb_mac_a/ute valckct uwb_dev_addr_cmp 44inline  18<3/a>uwb_dev_acmp 44< =dref="+code=addr" clas_re" isref">uwb_dev_addr_cmp 44uwb_dev_acmp 44<="drivers/uwb/lc-dev.c#L51" id="L319" class3="line" name="L19">  19<3/a>uwb_dev_addr_cmp 44uwb_mac_arc 44< =data"4>  44uwb_mac_apar211"rc 44<="drivers/uwb/lc-dev.c#L51" id="L320" class3="line" name="L20">  20<3/a>uwb_mac_aresul"p;  44/* @re__ss="" i}
uwb_dev_addr_cmp 44<,<>}
uwb_dev_apar211"" i;  21<3/a>uwb_mac_aresul"p;  12<3aa>}
uwb_mac_apri ikct }
addr-KERN_ERR   re+s="comment"> in ng"a href=UWB: unable eo a ginsenw dr %s with syrfs: %d\nhref="d href=,"drivers/uwb/lc-dev.c#L51" id="L323" class3="line" name="L23">  23<3/a>  sref">data,init">  ref="+code=addr" cla" isref">uwb_dev_acmp 44}
uwb_mac_aresul"p;  24<3/a>inlineuwb_dev_addr_cmp 44inline  25<3/a>#i325   return !uwb_mac_aresul"p;  26<3/a>#i326   r="drivers/uwb/lc-dev.c#L52" id="L327" class3="line" name="L27">  27<3/a>#i327ref="drivers/uwb/lc-dev.c#L46" id="L328" class3="line" name="L28">  28<3/a>#i328ref="drivers/uwb/lc-dev.c#L46" id="L329" class3="line" name="L29">  29<3/a>#i32 hrefvoidn+code=memset" css="" i/* @ress="" iuwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44  30<3/a>#i330href="drivers/uwb/lc-dev.c#L38" id="L331" class3="line" name="L31">  31<3/a>#i331   uwb_mac_a/ute valckct uwb_dev_addr_cmp 44inline  32<3/a>#i332   /* @re__ss="" i}
uwb_dev_addr_cmp 44  13<3aa>inlineuwb_dev_addr_cmp 44inline  34<3/a>
<33 href="drivers/uwb/lc-dev.c#L45" id="L335" class3="line" name="L35">  35<3/a>  36<3/a>st33n cla"drivers/uwb/lc-dev.c#L51" id="L337" class3="line" name="L37">  37<3/a>{
33n cla href="drivers/uwb/lc-dev.c#L51" id="L338" class3="line" name="L38">  38<3/a>  338ref=i in+code=memset" c__ss="" imemsetdata, dr is 44}
uwb_dev_acmp 44<,"voidna>}
uwb_dev_a__targ="_ss="" i 44  39<3/a>}
339   r="drivers/uwb/lc-dev.c#L49" id="L340" class3="line" name="L40">  40<3/a>
<34    return !< href="+code=uwb_rc" css="" isref">uwb_dev_addr_cmp 44}
uwb_dev_atarg="_ss="" i 44< =data"4>  44uwb_dev_a__targ="_ss="" i 44<="drivers/uwb/lc-dev.c#L51" id="L341" class3="line" name="L41">  41<3/a>st341     44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_ato_ss="" iref="+code=addr" cla" isref">uwb_dev_acmp 44  42<3/a>{
342   uwb_dev_addr_cmp 44  44uwb_dev_atarg="_ss="" i 44<)d="drivers/uwb/lc-dev.c#L38" id="L343" class3="line" name="L43">  43<3/a>  343   return !memsetuwb_dev_addr_cmp 44  44<3/a>}
344     45<3/a>
<345   return !<} else"drivers/uwb/lc-dev.c#L51" id="L346" class34"line" name="L36">  36<34a>st346     47<3/a>st347   s="drivers/uwb/lc-dev.c#L40" id="L348" class3="line" name="L48">  48<3/a>{
348ref="drivers/uwb/lc-dev.c#L46" id="L349" class3="line" name="L49">  49<3/a>  349ref="drivers/uwb/lc-dev.c#L35" id="L350" class3="line" name="L50">  50<3/a>  35n class="comment"> * 02110-/*  51<3/a>}
35n class="comment"> *
< G/lcn @aUWBw dr is descriptor,"validatespanoerscou ini"rehref="drivers/uwb/lc-dev.c#L6" id="L6352" class3="line" name="L52">  52<3/a>
<35n class="comment"> * This proa href="drivers/uwb/lc-dev.c#L6" id="L6353" class3="line" name="L53">  53<3/a> * but WITHO@a hrefs NULL"if ed w dr is doss not exist or)is quiescing; ed wptr toa href="drivers/uwb/lc-dev.c#L6" id="L6354" class3="line" name="L54">  54<3/a> *
<               it oed rwise;a href="drivers/uwb/lc-dev.c#L6" id="L6355" class3="line" name="L55">  55<3/a> * GNU Gene  56<3/a>in35ic   44uwb_dev_addr_cmp 44}
memsetuwb_mac_addr_rc 44}
uwb_mac_arc 44<,< href="+code=uwb_rc" css="" isref">uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44  47<35a>st35n cla="drivers/uwb/lc-dev.c#L38" id="L358" class35"line" name="L48">  48<35a>{
35    memset}
uwb_mac_arc 44<,<+code=memset" c__ss="" imemsetuwb_dev_addr_cmp 44  49<35a>  35    static coeturn !uwb_dev_addr_cmp 44<="drivers/uwb/lc-dev.c#L51" id="L360" class36"line" name="L50">  50<36a>  36    return !  51<36a>}
361   static coeturn !/* @reNULL  52<36a>
<362   <="drivers/uwb/lc-dev.c#L40" id="L363" class36"line" name="L53">  53<36a>/* @reEXPORT_SYMBOL_GPLct }
memset  54<36a>  55<36a>  16<3aa>in36n class="comment"> * Inaky /*  47<36a>st36n class="comment"> *
< Removd a< dr is from ed wsystem [gru infor oed r funcan>
s]a href="drivers/uwb/lc-dev.c#L8" id="L8368" class36"line" name="L48">  48<36a>{
36n class="comment"> * along wi  49<36a>  36n clai in+code=memset" c__ss="" idata,__ss="" iuwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44<,< href="+code=uwb_rc" css="rcsref">uwb_mac_addr_rc 44}
uwb_mac_arc 44  50<37a>  370href="drivers/uwb/lc-dev.c#L38" id="L371" class37"line" name="L51">  51<37a>}
371     44data, dr is 44}
uwb_dev_acmp 44< =dref="+code=addr" clas_re" isref">uwb_dev_addr_cmp 44uwb_dev_acmp 44<="drivers/uwb/lc-dev.c#L51" id="L372" class37"line" name="L52">  52<37a>
<372   inlineinline}
inlineinline  53<37a>  54<37a>uwb_dev_addr_mac}
inline}
inlineuwb_dev_addr_cmp 44inline  55<37a>uwb_dev_addr_" iinline}
inlineuwb_dev_addr_cmp 44data,initaddrct    6in376   return !<+code=data" cla" idata,initinforef="+code=addr" cla" isref">uwb_dev_acmp 44<,e+s="comment"> in ng"a href=v.c< dr is (mac %s ddr %s) disconnected from %s %s\nhref="d href=,"drivers/uwb/lc-dev.c#L51" id="L377" class3""line" name="L7">   7st377   return !< eturn !<+code=data" clamacbufsref">inlineinline  48<37a>{
37    uwb_mac_arc 44< ?=+code=inline" crcsref">uwb_mac_arc 44uwb_dev_addr_cmp 44<"+code=data" cla" isref">uwb_dev_acmp 44<"+code=data" clapar211sref">uwb_dev_apar211 44data,bus 44  sref">data,">  ref= :e+s="comment"> in ng"a href=n/ahref="d href=,"drivers/uwb/lc-dev.c#L51" id="L379" class37"line" name="L49">  49<37a>  37    static coeturn !<=+code=inline" crcsref">uwb_mac_arc 44< ?=+code=inline" cd i<">  sref">data,init">  ref="+code=addr" clarcsref">uwb_mac_arc 44uwb_dev_addr_cmp 44<"+code=data" cla" isref">uwb_dev_acmp 44<"+code=data" clapar211sref">uwb_dev_apar211 44<) :e+s="comment"> in ng"a href=href="d href=e="drivers/uwb/lc-dev.c#L51" id="L380" class38"line" name="L50">  50<38a>  38    return !<+code=data" claddr_" i/* @ress="" i}
uwb_dev_addr_cmp 44  51<38a>}
381   /* @relis1"" l;uwb_dev_addr_cmp 44data,bclp;data," cl 44  52<38a>
<382   uwb_dev_addr_bcl_puict }
uwb_dev_addr_cmp 44data,bclp;  53<38a>uwb_dev_addr_" i}
uwb_dev_addr_cmp 44 * Inaky /* for ed wcreaan>
 in _onain()wi  54<38a>  55<38a>   6in386   r="drivers/uwb/lc-dev.c#L52" id="L38" class=38"line" name="L7">   7st387ref="drivers/uwb/lc-dev.c#L46" id="L38" class=3""line" name="L8">   8{
388ref="drivers/uwb/lc-dev.c#L46" id="L389" class38"line" name="L49">  49<38a>  38n class="comment"> * Founda/*  50<39a>  39n class="comment"> * 02110-130A< dr is w211 off ed wain,omme"coup afsenwit!a href="drivers/uwb/lc-dev.c#L8" id="L8391" class39"line" name="L51">  51<39a>}
39n class="comment"> *
  52<39a>
<39n class="comment"> * This pro This)is callcd by ed wUWB Daem>
 (through ed wbeacon purge funcan>
a href="drivers/uwb/lc-dev.c#L8" id="L8393" class39"line" name="L53">  53<39a> * but WITHOddr_bcn_cachl_purge) when"st)is detected ill ba< dr is has been"s
a href="drivers/uwb/lc-dev.c#L8" id="L8394" class39"line" name="L54">  54<39a> *
< radio"silenis for a while;a href="drivers/uwb/lc-dev.c#L6" id="L6395" class39"line" name="L55">  55<39a> * GNU Genea href="drivers/uwb/lc-dev.c#L6" id="L639" class=39"line" name="L6">   6in39n class="comment"> * Inaky PeOIf"this der is is @ctually a local radio"ucttrollc- we don't needa href="drivers/uwb/lc-dev.c#L6" id="L639" class=39"line" name="L7">   7st39n class="comment"> *
< to ge edrough ed woffain process, as st)is not a ginsened as edat;a href="drivers/uwb/lc-dev.c#L6" id="L639" class=39"line" name="L8">   8{
39n class="comment"> * along wia href="drivers/uwb/lc-dev.c#L8" id="L8399" class3""line" name="L9">   9  39n class="comment"> * FoundaPerNOTE:Oddr_bcn_cachl.mute )is held!a href="drivers/uwb/lc-dev.c#L8" id="L8400" class4""line" name="L10">  10<4aa>  40n class="comment"> * 02110-13  51<401>  40n clavoidn+code=memset" css=d"" idata,ss=d"" iuwb_dev_addr_beca_a 44}
data,bclp;  12<402>  40 href="drivers/uwb/lc-dev.c#L43" id="L403" class40"line" name="L53">  53<403>  403   return !  44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44<="drivers/uwb/lc-dev.c#L51" id="L404" class40"line" name="L54">  54<404>  40href="drivers/uwb/lc-dev.c#L35" id="L405" class40"line" name="L55">  55<405>  405   return !<+code=memset" css="" isref">uwb_dev_addr_cmp 44  44data,bclp;uwb_dev_addr_cmp 44<="drivers/uwb/lc-dev.c#L51" id="L406" class40"line" name="L6">   6  406   return !uwb_dev_addr_cmp 44<)d="drivers/uwb/lc-dev.c#L38" id="L407" class40"line" name="L17">  17<407>  407   return !< eturn !+code=data" class="notifysref">uwb_dev_addr_notifyct }
uwb_dev_addr_cmp 44uwb_mac_arc 44<,<+code=memset" css="" isref">uwb_dev_addr_cmp 44<,<+code=data" claUWB_NOTIF_OFFAIRsref">addr-UWB_NOTIF_OFFAIRp;  18<408>  40    data,__ss="" iuwb_dev_addr_cmp 44<,<+code=data" class="" isref">uwb_dev_addr_cmp 44uwb_mac_arc 44   9  40    static co="drivers/uwb/lc-dev.c#L52" id="L410" class4="line" name="L10">  10<4/a>  11<4a1>  411   <"drivers/uwb/lc-dev.c#L52" id="L412" class4="line" name="L12">  12<4/a>  13<4/a> * but WI/*  14<4/a> *
< A< dr is w211 on ed wain,ostartNst)up!a href="drivers/uwb/lc-dev.c#L8" id="L8415" class4="line" name="L15">  15<4/a> * GNU Genea href="drivers/uwb/lc-dev.c#L6" id="L6416" class4="line" name="L16">  16<4/a> * Inaky PeOThis)is callcd by ed wUWB Daem>
 when"st)is detected ill ba< dr isa href="drivers/uwb/lc-dev.c#L6" id="L6417" class4="line" name="L17">  17<4/a> *
< has popped up in ed wradio"rang wof ed wradio"ucttrollc-;a href="drivers/uwb/lc-dev.c#L6" id="L6418" class4="line" name="L18">  18<4/a> * along wia href="drivers/uwb/lc-dev.c#L8" id="L8419" class4="line" name="L19">  19<4/a> * FoundaPerIt will ju   20<4/a> * 02110-130stuffspanoyatla, done;a href="drivers/uwb/lc-dev.c#L6" id="L6421" class4="line" name="L21">  21<4/a> *
  12<4aa> * This proa href="drivers/uwb/lc-dev.c#L6" id="L6423" class4="line" name="L23">  23<4/a> * but WITHONOTE:Oddr_beca.mute )is held, bclref="mute )is helda href="drivers/uwb/lc-dev.c#L6" id="L6424" class4="line" name="L24">  24<4/a> *
<  25<4/a>#i425   rvoidn+code=memset" css=d"" idata,ss=d"" iuwb_mac_addr_rc 44}
uwb_mac_arc 44<,< href="+code=uwb_rc" css="beca_asref">uwb_dev_addr_beca_a 44}
data,bclp;  26<4/a>#i426   r="drivers/uwb/lc-dev.c#L38" id="L427" class4="line" name="L27">  27<4/a>#i427   return !uwb_mac_aresul"p;  28<4/a>#i42      44data, dr is 44}
uwb_dev_acmp 44< =dref="+code=addr" clarcsref">uwb_mac_arc 44uwb_dev_addr_cmp 44<"+code=data" cla" isref">uwb_dev_acmp 44<="drivers/uwb/lc-dev.c#L51" id="L429" class4="line" name="L29">  29<4/a>#i429     44uwb_dev_addr_cmp 44}
uwb_dev_addr_cmp 44<="drivers/uwb/lc-dev.c#L51" id="L430" class4="line" name="L30">  30<4/a>#i43    return !inlineinline}
inlineinline  31<4/a>#i431   <"drivers/uwb/lc-dev.c#L52" id="L432" class4="line" name="L32">  32<4/a>#i432   uwb_dev_addr_mac}
inline}
inline  44data,bclp;inline  13<4aa>uwb_dev_addr_" iinline}
inlinedata,bclp;data,initaddrct   34<4/a>
<434   uwb_dev_addr_cmp 44  44uwb_dev_akzallocct   44uwb_dev_addr_cmp 44<),data"4>  44/* @reGFP_KERNELct   35<4/a>uwb_dev_addr_cmp 44  44/* @reNULL  36<4/a>st436   data,initerrref="+code=addr" cla" isref">uwb_dev_acmp 44<,e+s="comment"> in ng"a href=new  dr is %s: Cannot allocae  mem>ry\nhref="d href=,"drivers/uwb/lc-dev.c#L51" id="L437" class4="line" name="L37">  37<4/a>{
437   return !< eturn !<<<<<<<<+code=data" clamacbufsref">inline  38<4/a>  43      39<4/a>}
43    static co="drivers/uwb/lc-dev.c#L52" id="L440" class4="line" name="L40">  40<4/a>
<44    return !<+code=data" claddr_" iuwb_dev_addr_" i}
uwb_dev_addr_cmp 44 * Inaky /* This)setsoersc into one, we own"st)<  41<4/a>st441   uwb_dev_addr_cmp 44inline}
data,bclp;inline  42<4/a>{
442   uwb_dev_addr_cmp 44data,initaddrct   44data,bclp;data,initaddrct <="drivers/uwb/lc-dev.c#L51" id="L443" class4="line" name="L43">  43<4/a>  44      sref">data,initse1"">  ct uwb_dev_addr_cmp 44uwb_dev_acmp 44}
inline  44<4/a>}
444   uwb_mac_aresul"p;  44uwb_dev_addr_" iuwb_dev_addr_cmp 44<,uwb_mac_arc 44uwb_dev_addr_cmp 44<"+code=data" cla" isref">uwb_dev_acmp 44<,<>}
uwb_mac_arc 44  45<4/a>
<445   return !uwb_mac_aresul"p;  36<44a>st446   data,initerrref="+code=addr" cla" isref">uwb_dev_acmp 44<,e+s="comment"> in ng"a href=new  dr is %s: cannot instantiae   dr is\nhref="d href=,"drivers/uwb/lc-dev.c#L51" id="L447" class4="line" name="L47">  47<4/a>st447   return !< eturn !<<<<<<<<+code=data" clamacbufsref">inline  48<4/a>{
44    uwb_dev_aerror_" i  49<4/a>  44    static co="drivers/uwb/lc-dev.c#L52" id="L450" class4="line" name="L50">  50<4/a>  45    return !<+s="comment"> * Inaky /* plugwed wbeacon cachl)<  51<4/a>}
451   data,bclp;uwb_dev_addr_cmp 44< =data"4>  44uwb_dev_addr_cmp 44<="drivers/uwb/lc-dev.c#L51" id="L452" class4="line" name="L52">  52<4/a>
<452   uwb_dev_addr_cmp 44data,bclp;  44data,bclp;  53<4/a>memsetdata,bclp; * Inaky /* releasenoin ss="" i  54<4/a>data,initinforef="+code=addr" cla" isref">uwb_dev_acmp 44<,e+s="comment"> in ng"a href=v.c< dr is (mac %s ddr %s) connected to %s %s\nhref="d href=,"drivers/uwb/lc-dev.c#L51" id="L455" class4="line" name="L55">  55<4/a>}
inlineinlineuwb_mac_arc 44uwb_dev_addr_cmp 44<"+code=data" cla" isref">uwb_dev_acmp 44<"+code=data" clapar211sref">uwb_dev_apar211 44data,bus 44  sref">data,">  ref=,"drivers/uwb/lc-dev.c#L51" id="L456" class4="line" name="L56">  56<4/a>in456     sref">data,init">  ref="+code=addr" clarcsref">uwb_mac_arc 44uwb_dev_addr_cmp 44<"+code=data" cla" isref">uwb_dev_acmp 44<"+code=data" clapar211sref">uwb_dev_apar211 44<))="drivers/uwb/lc-dev.c#L51" id="L457" class45"line" name="L47">  47<45a>st457   return !<+code=memset" cus="notifysref">uwb_dev_addr_notifyct }
uwb_mac_arc 44<,<+code=memset" css="" isref">uwb_dev_addr_cmp 44<,<+code=data" claUWB_NOTIF_ONAIRsref">addr-UWB_NOTIF_ONAIRp;  48<45a>{
45      49<45a>  459ref="drivers/uwb/lc-dev.c#L35" id="L460" class46"line" name="L50">  50<46a>  46    r+code=data" claerror_" iuwb_dev_aerror_" i  51<46a>}
461   data,kfre ct }
uwb_dev_addr_cmp 44  52<46a>
<462     53<46a>  54<46a>  55<46a> * GNU Ge/*  16<4aa>in46n class="comment"> * Inaky PerIterae  ovenwed wlist ofaUWBw dr iss, call ng a @funcan>
 on eachcthref="drivers/uwb/lc-dev.c#L8" id="L8467" class46"line" name="L47">  47<46a>st46n class="comment"> *
  48<46a>{
46n class="comment"> * along wi See docs for bus  49<46a>  46n class="comment"> * FoundaPecthref="drivers/uwb/lc-dev.c#L8" id="L8470" class47"line" name="L50">  50<47a>  47n class="comment"> * 02110-130@rc: href="aadio"ucttrollc- for ed w dr iss.cthref="drivers/uwb/lc-dev.c#L8" id="L8471" class47"line" name="L51">  51<47a>}
47n class="comment"> *
< @funcan>
: funcan>
 to call.cthref="drivers/uwb/lc-dev.c#L8" id="L8472" class47"line" name="L52">  52<47a>
<47n class="comment"> * This pro @pb/l: hrefdata to pent to @funcan>
.cthref="drivers/uwb/lc-dev.c#L8" id="L8473" class47"line" name="L53">  53<47a> * but WITHO@a hrefs: h0
 of funcan>
()wa hrefed a"valusa href="drivers/uwb/lc-dev.c#L6" id="L6474" class47"line" name="L54">  54<47a> *
<            differ211 to zero. Tll bvalus oed rwise;a href="drivers/uwb/lc-dev.c#L6" id="L6475" class47"line" name="L55">  55<47a> * GNU Gene   6in476   ri in+code=memset" css="" imemsetuwb_mac_addr_rc 44}
uwb_mac_arc 44<,<+code=memset" css="" iinline
sref">inline
a 4<,"voidna>}
uwb_dev_apb/l 44   7st47n cla="drivers/uwb/lc-dev.c#L38" id="L478" class47"line" name="L48">  48<47a>{
47      44uwb_dev_addr isuwb_mac_arc 44uwb_dev_addr_cmp 44<"+code=data" cla" isref">uwb_dev_acmp 44<,<>}
uwb_dev_apb/l 44<,<>}
inline
a 4  49<47a>  47    s="drivers/uwb/lc-dev.c#L52" id="L480" class48"line" name="L50">  50<48a>  48    r+code=data" claEXPORT_SYMBOL_GPLcomment">/* @reEXPORT_SYMBOL_GPLct }
memset  51<48a>}
481   <


Td woriginal LXR softwar2 by ed wdrivers/uhttp://sourceforge.net/projects/lxr">LXR * Gunity 44<, by drivers/umailto:lxr@e="ux.no">lxr@e="ux.no 44<"
lxr.e="ux.no kindly hostcd by drivers/uhttp://www.redpill-e="pro.no">Redpill L="pro AS 44<, s serr iss sinis 1995.