linux/sound/firewire/iso-resources.c
<<
./spaalu .spaa class="lxr_search"> < hidden" nam > navtarget" " > "> text" nam > search" id> search"> submit">Search ./spaalu .input typ > hidden" nam > ajax_lookup" id> ajax_lookup" " > "> search_results" class="search_results"u vlu content">u .div id> file_contents"l
5d/9a/f5faab02c90d54d3fe1c26f067640160603e_3/0"l
L1" class="line" nam >
L1">4 41./a>.spaa class="comment">/*./spaalu
L2" class="line" nam >
L2">4 42./a>.spaa class="comment"> * isochronous resources helper funcn vas./spaalu
L3" class="line" nam >
L3">4 43./a>.spaa class="comment"> *./spaalu
L4" class="line" nam >
L4">4 44./a>.spaa class="comment"> * Copyright (c) Clemens Ladisch <clemens@ladisch.de>./spaalu
L5" class="line" nam >
L5">4 45./a>.spaa class="comment"> * Licensed under the terms of the GNU General Public License, vers.8.62../spaalu
L6" class="line" nam >
L6">4 46./a>.spaa class="comment"> */./spaalu
L7" class="line" nam >
L7">4 47./a> 
L8" class="line" nam >
L8">4 48./a>#include <linux/device.h./a>> 
L9" class="line" nam >
L9">4 49./a>#include <linux/firewire.h./a>> 
L10" class="line" nam >
L10">4 
pe=a>#include <linux/firewire-constants.h./a>> 
L11" class="line" nam >
L11">4 11e=a>#include <linux/export.h./a>> 
L12" class="line" nam >
L12">4 12e=a>#include <linux/jiffies.h./a>> 
L13" class="line" nam >
L13">4 13e=a>#include <linux/mutex.h./a>> 
L14" class="line" nam >
L14">4 14e=a>#include <linux/sched.h./a>> 
L15" class="line" nam >
L15">4 15e=a>#include <linux/spinlock.h./a>> 
L16" class="line" nam >
L16">4 16e=a>#include "iso-resources.h./a>" 
L17" class="line" nam >
L17">4 17./a> 
L18" class="line" nam >
L18">4 18./a>.spaa class="comment">/**./spaalu
L19" class="line" nam >
L19">4 19./a>.spaa class="comment"> * fw_iso_resources_init - initializes a &struct fw_iso_resources./spaalu
L20" class="line" nam >
L20">4 20./a>.spaa class="comment"> * @r: the resource manager to initialize./spaalu
L21" class="line" nam >
L21">4 21./a>.spaa class="comment"> * @unit: the device unit for which the resources will be needed./spaalu
L22" class="line" nam >
L22">4 22./a>.spaa class="comment"> *./spaalu
L23" class="line" nam >
L23">4 23./a>.spaa class="comment"> * If the device does not support all channel numbers, change @r->channels_mask./spaalu
L24" class="line" nam >
L24">4 24./a>.spaa class="comment"> * after calling this funcn va../spaalu
L25" class="line" nam >
L25">4 25./a>.spaa class="comment"> */./spaalu
L26" class="line" nam >
L26">4 26e=a>int4.a href="+code=fw_iso_resources_init" class="sref">fw_iso_resources_inite=a>(struct .a href="+code=fw_iso_resources" class="sref">fw_iso_resourcese=a> *.a href="+code=r" class="sref">re=a>, struct .a href="+code=fw_unit" class="sref">fw_unite=a> *.a href="+code=unit" class="sref">unite=a>)u
L27" class="line" nam >
L27">4 27./a>{u
L28" class="line" nam >
L28">4 28./a>        .a href="+code=r" class="sref">re=a>->.a href="+code=channels_mask" class="sref">channels_mask./a> = ~0uLL; 
L29" class="line" nam >
L29">4 29./a>        .a href="+code=r" class="sref">re=a>->.a href="+code=unit" class="sref">unite=a> = .a href="+code=fw_unit_get" class="sref">fw_unit_gete=a>(.a href="+code=unit" class="sref">unite=a>); 
L30" class="line" nam >
L30">4 30./a>        .a href="+code=mutex_init" class="sref">mutex_inite=a>(&.a href="+code=r" class="sref">re=a>->.a href="+code=mutex" class="sref">mutexe=a>); 
L31" class="line" nam >
L31">4 31./a>        .a href="+code=r" class="sref">re=a>->.a href="+code=allocated" class="sref">allocatede=a> = .a href="+code=false" class="sref">falsee=a>; 
L32" class="line" nam >
L32">4 32./a> 
L33" class="line" nam >
L33">4 33./a>        return 0; 
L34" class="line" nam >
L34">4 34./a>} 
L35" class="line" nam >
L35">4 35./a>.a href="+code=EXPORT_SYMBOL" class="sref">EXPORT_SYMBOLe=a>(.a href="+code=fw_iso_resources_init" class="sref">fw_iso_resources_inite=a>); 
L36" class="line" nam >
L36">4 36./a> 
L37" class="line" nam >
L37">4 37./a>.spaa class="comment">/**./spaalu
L38" class="line" nam >
L38">4 38./a>.spaa class="comment"> * fw_iso_resources_destroy - destroy a resource manager./spaalu
L39" class="line" nam >
L39">4 39./a>.spaa class="comment"> * @r: the resource manager that is no longer needed./spaalu
L40" class="line" nam >
L40">4 40./a>.spaa class="comment"> */./spaalu
L41" class="line" nam >
L41">4 41./a>void4.a href="+code=fw_iso_resources_destroy" class="sref">fw_iso_resources_destroye=a>(struct .a href="+code=fw_iso_resources" class="sref">fw_iso_resourcese=a> *.a href="+code=r" class="sref">re=a>)u
L42" class="line" nam >
L42">4 42./a>{u
L43" class="line" nam >
L43">4 43./a>        .a href="+code=WARN_ON" class="sref">WARN_ONe=a>(.a href="+code=r" class="sref">re=a>->.a href="+code=allocated" class="sref">allocatede=a>); 
L44" class="line" nam >
L44">4 44./a>        .a href="+code=mutex_destroy" class="sref">mutex_destroye=a>(&.a href="+code=r" class="sref">re=a>->.a href="+code=mutex" class="sref">mutexe=a>); 
L45" class="line" nam >
L45">4 45./a>        .a href="+code=fw_unit_put" class="sref">fw_unit_pute=a>(.a href="+code=r" class="sref">re=a>->.a href="+code=unit" class="sref">unite=a>); 
L46" class="line" nam >
L46">4 46./a>} 
L47" class="line" nam >
L47">4 47./a>.a href="+code=EXPORT_SYMBOL" class="sref">EXPORT_SYMBOLe=a>(.a href="+code=fw_iso_resources_destroy" class="sref">fw_iso_resources_destroye=a>); 
L48" class="line" nam >
L48">4 48./a> 
L49" class="line" nam >
L49">4 49./a>static unsigned int4.a href="+code=packet_bandwidth" class="sref">packet_bandwidthe=a>(unsigned int4.a href="+code=max_payload_bytes" class="sref">max_payload_bytese=a>, int4.a href="+code=speed" class="sref">speede=a>)u
L50" class="line" nam >
L50">4 50./a>{u
L51" class="line" nam >
L51">4 51./a>        unsigned int4.a href="+code=bytes" class="sref">bytese=a>, .a href="+code=s400_bytes" class="sref">s400_bytese=a>; 
L52" class="line" nam >
L52">4 52./a> 
L53" class="line" nam >
L53">4 53./a>        .spaa class="comment">/* iso packets have three header quadlets and quadlet-aligned payload */./spaalu
L54" class="line" nam >
L54">4 54./a>        .a href="+code=bytes" class="sref">bytese=a> = 3 * 4 + .a href="+code=ALIGN" class="sref">ALIGNe=a>(.a href="+code=max_payload_bytes" class="sref">max_payload_bytese=a>, 4); 
L55" class="line" nam >
L55">4 55./a> 
L56" class="line" nam >
L56">4 56./a>        .spaa class="comment">/* convert to bandwidth units (quadlets at S1600 = bytes at S400) */./spaalu
L57" class="line" nam >
L57">4 57./a>        if (.a href="+code=speed" class="sref">speede=a> <= .a href="+code=SCODE_400" class="sref">SCODE_400e=a>)u
L58" class="line" nam >
L58">4 58./a>                .a href="+code=s400_bytes" class="sref">s400_bytese=a> = .a href="+code=bytes" class="sref">bytese=a> * (1 << (.a href="+code=SCODE_400" class="sref">SCODE_400e=a> - .a href="+code=speed" class="sref">speede=a>)); 
L59" class="line" nam >
L59">4 59./a>        elseu
L60" class="line" nam >
L60">4 60./a>                .a href="+code=s400_bytes" class="sref">s400_bytese=a> = .a href="+code=DIV_ROUND_UP" class="sref">DIV_ROUND_UPe=a>(.a href="+code=bytes" class="sref">bytese=a>, 1 << (.a href="+code=speed" class="sref">speede=a> - .a href="+code=SCODE_400" class="sref">SCODE_400e=a>)); 
L61" class="line" nam >
L61">4 61./a> 
L62" class="line" nam >
L62">4 62./a>        return .a href="+code=s400_bytes" class="sref">s400_bytese=a>; 
L63" class="line" nam >
L63">4 63./a>} 
L64" class="line" nam >
L64">4 64./a> 
L65" class="line" nam >
L65">4 65./a>static 8" class="line" nam >
L65">4 65./a>static 8 resourcevuni href="+co_oetsignea> = ~0uLL; fwcarea> = ~0uLL; fwcare"sref">re=a>)u = ~0uLL; 
L58" class="line" nam 6L6">4 46../a>.spaa class="comment="com66iso-resources.c#L51" id>
L51" class="line" nam 6
L57">4 67./a>        if (.a hre6="+co67nt">/* convert to bandwidth units (qe/iso-resources.c#L6" id>
L6" class="line" nam >
L
L58">4 68./a>                .a6href=6fw_iso_resources_destroy - ddddddddd* Ural Publiusual pessimis>4 6cesum2 v41>(cable lengbyt4.5 m),Puble/iso-resources.c#L6" id>
L6" class="line" nam >
L
L59">4 69./a>        elseu
L39" class="line" nam 7
L60">4 70./a>                .a7href=7./spaalu
L25" class="line" nam 7
L61">4 71./a> 
L25" class="line" nam 7
L62">4 72./a>        return .a 7ref="7/spaalu
L25" class="line" nam 7
L63">4 73./a>} 
L25" class="line" nam 7
L64">4 74./a> 
L25" class="line" nam 7
L65">4 75./a>static 8" class="l7ne" n7./spaalu
L25" class="line" nam 7L6">4 467./a>.spaa class="commen7="com7./spaalu
L7" class="line" nam >
LL7">4 47../a> s400_carea> = ~0uLL; unite=a>); gap_adunta> = ~0uLL; s400_carea> = ~0uLL; unite=a>); gap_adunta> = ~0uLL; 
L63" class="line" nam 7
L58">4 78./a>                .a7href=78iso-resources.c#L64" id>
L64" class="line" nam 7
L59">4 79./a>        elseu
L65" class="line" nam 8
L60">4 80./a>                .a8href=80 >
L65">4 65./a>static 8 resouwait_uncn ef="sound_delay_spaal_busef="a>(.a href="+codewait_uncn ef="sound_delay_spaal_busef="a>iso_resources" class="sref">fwcarea> = ~0uLL; fwcare"sref">re=a>)u = ~0uLL; 
L58" class="line" nam 8
L61">4 81./a> 
L51" class="line" nam 8
L62">4 82./a>        return .a 8ref="8code=s400_byte ne(;;) resources.c#L51" id>
L51" class="line" nam 8
L63">4 83./a>} /* iso ptes" class="sref">s400_b64./a> s400_delay./a> speede=a> carea> = ~0uLL; unite=a>); f="a>_nd/fireef="+code=unit" ="a>_nd/fireD_UP""sref">ALIGNe=a>(HZef="+code=unit"HZ"srerlass="sref">SCODE_ga>_nd/fire_64./a> _nd/fire_64iso_r-resources.c#L61" id>
L61" class="line" nam 8
L64">4 84./a> /* iso ptes" clas="sref">speede=a> delay./a> 
L58" class="line" nam 8
L65">4 85./a>static 8" class="l8ne" n85nt">/* iso ptes" clas400_bytes" cla-resources.c#L34" id>
L34" class="line" nam 8L6">4 468./a>.spaa class="commen8="com86nt">/* iso ptes" clas="sref">speede=a> /fireule_almeout_unaalruaalble./a> bytese=a>,delay./a> 
L58" class="line" nam 8L7">4 478./a> /* iso ptes" clas400_bytes" cla-class="sref">EXPRESTARTSYSa>(.a href="+codRESTARTSYSiso-resources.c#L63" id>
L63" class="line" nam 8L8">4 48../a>#include <
L64" class="line" nam 8
L59">4 89./a>        elseu
L64" class="line" nam 9
L60">4 90./a>                .a9href=90so-resources.c#L65" id>
L65" class="line" nam 9
L61">4 91./a> 
L25" class="line" nam 9
L62">4 92./a>        return .a 9ref="9isochronous resources helper f 
L25" class="line" nam 9
L63">4 93./a>} 
L25" class="line" nam 9
L64">4 94./a> 
L25" class="line" nam 9
L65">4 95./a>static 8" class="l9ne" n9Licensed under the terms of th@DE_40 no loDE_40 (e.g., d/firewir)oundeded./spaalets and"sound/fsenae/iso-resources.c#L25" id>
L25" class="line" nam 9L6">4 469./a>.spaa class="commen9="com9./spaalu
L25" class="line" nam 9L7">4 479./a> 
L6" class="line" nam >
9L8">4 489./a>#include <
L25" class="line" nam 9L9">4 49../a>#include <
L19" class="line" nam >0
L10">4 
ppe=a>#include <
L39" class="line" nam 10
L11">4 101e=a>#include <4ve alr nef">E.  Due t Spod/9aewially"soun delays,="sound/firewilune/iso-resources.c#L39" id>
L39" class="line" nam 10
L12">4 102e=a>#include <
L39" class="line" nam 10
L13">4 103e=a>#include <b/spaal an,l./se/iso-resources.c#L39" id>
L39" class="line" nam 10
L14">4 104e=a>#include <
L25" class="line" nam 10
L15">4 105e=a>#include <
L26" class="line" nam 10
L16">4 106e=a>#include "fw_iso_reso/firewirs_destroye=a>); fw_iso_resourcese=a> *.a href="+code=r" class="sref">re=a>)u
L26" class="line" nam 10
L17">4 107./a> /* iso ptes" clas400_bytttttttx_payload_bytes" class="sref">max_payload_bytese=a>, int4.a href="+code=speed" class="sref">speede=a>)u
L50" class="line" nam 10
L18">4 108./a>.spaa class="commen08ref108iso-resources.c#L51" id>
L51" class="line" nam 10
L19">4 109./a>.spaa class="commen09ref10nd/firewire/iesources" class="sref">fwcarea> = ~0uLL; fwcare"sref">re=a>)u = ~0uLL; fw_unitpavuni annel a> = ~0uLL; fwpavuni annel sref">re=a>->.a href="+code=unit" class="sref">unite=a>); chaarea> = ~0uLL; 
L11" class="line" nam >

L10">4 

pe=a>#include <bytese=a>, bandwidthe=a>(unsigned href="+code=mlass="sref">s400_hchannea> = ~0uLL; s400_alra> = ~0uLL; 
L11" class="line" nam >

L11">4 111e=a>#include <
L62" class="line" nam 1>
L12">4 112e=a>#include <speede=a> =a>(.a href="+code=r" class="sref">re=a>->.a href="+code=allocated" class="sref">allocatede=a>); 
L50" class="line" nam 1>
L13">4 113e=a>#include </* iso ptes" claes" cla-class="sref">EXPBADFDa>(.a href="+codBADFD"sreresources.c#L11" id>
L11" class="line" nam >

L14">4 114e=a>#include <
L65" class="line" nam 1>
L15">4 115e=a>#include <fw_uref="+code=allocated" class="sref">alloca bandwidthe=a>(unsigned href="+code=m class="sref">fw_u>packet_bandwidthe=a>(unsigned int4.a href="+code=maes" class="sref">max_payload_bytese=a>, int4.a href="+code=speed" clasref">speede=a>)u
L11" class="line" nam >

L16">4 116e=a>#include "
L37" class="line" nam 1>
L17">4 117./a> EXes"ry_spaal_busef="a>(.a href="+codees"ry_spaal_busef="a>OL" :esources.c#L37" id>
L37" class="line" nam 1>
L18">4 118./a>.spaa class="commennt">/11 class="sref">re=a>->.a hund/_fire_irqref="sound/firewid/_fire_irqde=masref">re=a>->.a hcarea> = ~0uLL; unite=a>); firea> = ~0uLL; 
L11" class="line" nam >

L19">4 119./a>.spaa class="commennt"> 11 class="sref">re=a>->.a href="+code=unit" class="sref">unite=a> = g62../rewi./a> fw_ucarea> = ~0uLL; unite=a>); g62../rewi./a> 
L12" class="line" nam >

L10">4 
20./a>.spaa class="comme1nt"> 12tex_init" class="sref">mutexref="+code=allocated" class="sref">alloca bandwidt_oetsignea> = ~0uLL; fw_uccevuni href="+co_oetsignea> = ~0uLL; 
L12" class="line" nam >

L11">4 121./a>.spaa class="comme1nt"> 12 class="sref">re=a>->.a hwid/_unfire_irqref="sound/firewid/_unfire_irqde=masref">re=a>->.a hcarea> = ~0uLL; unite=a>); firea> = ~0uLL; 
L11" class="line" nam >>
L22">4 122./a>.spaa class="comme1nt"> 12iso-resources.c#L53" id>
L53" class="line" nam 1>
L23">4 123./a>.spaa class="comme1nt"> 12RN_ON" class="sref">WARN_ONealra> = ~0uLL; fw_uwait_uncn ef="sound_delay_spaal_busef="a>(.a href="+codewait_uncn ef="sound_delay_spaal_busef="a>iso_r>re=a>)u = ~0uLL; 
L12" class="line" nam >

L14">4 124./a>.spaa class="comme1nt"> 124nt">/* iso ps="sref">speede=a> alra> = ~0uLL; 
L58" class="line" nam 1>
L25">4 125./a>.spaa class="comme1nt"> 125nt">/* iso ptes" claes" class="sref">s400_alra> = ~0uLL; 
L11" class="line" nam >>
L26">4 126e=a>int4.a href="+code1=fw_i12iso-resources.c#L37" id>
L37" class="line" nam 1>
L27">4 127./a>{uWARN_ONe="+codfirea> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>); 
L45" class="line" nam 1>
L28">4 128./a>        .a href="+1code=12iso-resources.c#L49" id>
L49" class="line" nam 1>
L29">4 129./a>        .a href="+1code=1" class="sref">re=a>->.a h bandwidthe=a>(unsigned href="+code=m class="sref">fw_uref="+code=allocated" class="sref">alloca bandwidthe=a>(unsigned href="+code=m "sref">ALIGNe=a>(ref="+code=allocated" class="sref">alloca bandwidt_oetsignea> = ~0uLL; 
L13" class="line" nam >

L10">4 
30./a>        .a href="+1code=1utex_init" class="sref">mutex"+code=r" class_ed./spse=a> *.a href="+code=r" class_ed./spiso_r>re=a>)u = ~0uLL; speede=a>)ref="+code=unit" class="sref">unite=a> = g62../rewi./a> speede=a>)ref="+code=unit" class="sref">unite=a> = annels_mask./a> = ~0uLL; 
L26" class="line" nam 1>
L31">4 131./a>        .a href="+1code=1" class="sref""""""""""""""""""""""""sref">re=a>->.a hcchannea> = ~0uLL; re=a>->.a h bandwidthe=a>(unsigned href="+code=mlass="sref">s400_trupse=a> *.a href=trup/iso-resources.c#L45" id>
L45" class="line" nam 1>
L32">4 132./a> speede=a> cchannea> = ~0uLL; EXPAGAI href="+code=r" PAGAI D_UP) resources.c#L51" id>
L51" class="line" nam 1>
L33">4 133./a>        return 0; 1/* iso ptes" class="sref">s400_="+codunfirea> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>); 
L45" class="line" nam 1>
L34">4 134./a>} /* iso ptes" clagotosref">speede=a>)rs"ry_spaal_busef="a>(.a href="+codees"ry_spaal_busef="a>OL" resources.c#L45" id>
L45" class="line" nam 1>
L25">4 135./a>.a href="+code=EXP1ORT_S135nt">/* iso presources.c#L64" id>
L64" class="line" nam 1>
L36">4 136./a> speede=a> cchannea> = ~0uLL; 
L51" class="line" nam 1>
L27">4 137./a>.spaa class="comme1nt">/137nt">/* iso ptes" claref">speede=a>)ref="+code=unit" class="sref">unite=a> = annels_a> = ~0uLL; s400_hchannea> = ~0uLL; 
L45" class="line" nam 1>
L28">4 138./a>.spaa class="comme1nt"> 13+code=s400_bytes" class="sref">s400_ref="+code=allocated" class="sref">allocatede=a> = .a href="+code=false" class="sref">falsee=a>;trupse=a> *.a href=trup/isoresources.c#L45" id>
L45" class="line" nam 1>
L29">4 139./a>.spaa class="comme1nt"> 13 class="sref"}iso-r resources.c#L51" id>
L51" class="line" nam 1>
L40">4 140./a>.spaa class="comme1nt"> 14+code=s400_bytes" clas="sref">speede=a> cchannea> = ~0uLL; EXPBUSYa>(.a href="+codBUSYiso-resources.c#L50" id>
L50" class="line" nam 1>
L41">4 141./a>void4.a href="+cod1e=fw_14 class="sref"""""""""""""""""class="sref">EXdev_alra> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>)mutexe=a>)annel a> = ~0uLL; 
L26" class="line" nam 1>
L42">4 142./a>{u
L45" class="line" nam 1>
L43">4 143./a>        .a href="+1code=14ent">/* iso ptes" claso-resources.c#L60" id>
L60" class="line" nam 1>
L44">4 144./a>        .a href="+1code=144nt">/* iso ptes" cla""""""""class="sref">EXdev_alra> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>)mutexe=a>)annel a> = ~0uLL; 
L26" class="line" nam 1>
L25">4 145./a>        .a href="+1code=145nt">/* iso ptes" clas400_byt""""""""clu
L45" class="line" nam 1>
L36">4 146./a>} /* iso presources.c#L64" id>
L64" class="line" nam 1>
L47">4 147./a>.a href="+code=EXP1ORT_S14iso-resources.c#L18" id>
L18" class="line" nam >>
L48">4 148./a> re=a>->.a h="+codunfirea> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>); 
L45" class="line" nam 1>
L49">4 149./a>static unsigned in1t4.a 149so-resources.c#L65" id>
L65" class="line" nam 1>
L50">4 150./a>{us400_cchannea> = ~0uLL; 
L45" class="line" nam 1>
L51">4 151./a>        unsigned i1nt4.a1href="resources.c#L64" id>
L64" class="line" nam 1>
L52">4 152./a> EXPORT_SYMBOLe=a>(.a href="+code=fw_iso_resources_destroy" class="sref">fw_iso_r/firewirs_destroye=a>); 
L45" class="line" nam 1>
L53">4 153./a>        .spaa clas1s="co1ment">esources.c#L45" id>
L45" class="line" nam 1>
L44">4 154./a>        .a href="+1code=15after calling this funcn vawire/iso-resources.c#L19" id>
L19" class="line" nam >>
L55">4 155./a> b/spaal ae/iso-resources.c#L19" id>
L19" class="line" nam >>
L36">4 156./a>        .spaa clas1s="co15./spaalu
L25" class="line" nam 1>
L57">4 157./a>        if (.a hre1f="+c15./spaalu
L25" class="line" nam 1>
L48">4 158./a>                .a1 href15fw_iso_resources_destroy - desTbound/firewismust blicallsddfromPublid ivsr's .update chadlf="soure/firewirisiso-resources.c#L25" id>
L25" class="line" nam 1>
L49">4 159./a>        elseu
L25" class="line" nam 1>
L60">4 160./a>                .a1 href16@r: the resource manager to in"sound/firewilufef="lu
L25" class="line" nam 1>
L61">4 161./a> 
L25" class="line" nam 1>
L52">4 162./a>        return .a 1href=16isochronous resources helper fRs" clsPa neg">4ve alr nef">E wilfailurE.   all ind qppens,="slicallskamuste/iso-resources.c#L25" id>
L25" class="line" nam 1>
L53">4 163./a>} 
L25" class="line" nam 1>
L44">4 164./a> 
L26" class="line" nam 1>
L65">4 165./a>static 8" class="l1ine" 1am >
Lurces_init" class="sref">fw_iso_resoupdates_destroye=a>); fw_iso_resourcese=a> *.a href="+code=r" class="sref">re=a>)u
L42" class="line" nam 16
L16">4 166e=a>#include "
L51" class="line" nam 16
L57">4 167./a>        if (.a hre16="+c167nt">/* conveesources" class="sref">fwcarea> = ~0uLL; fwcare"sref">re=a>)u = ~0uLL; fw_unitpavuni annel a> = ~0uLL; fwpavuni annel sref">re=a>->.a href="+code=unit" class="sref">unite=a>); re=a>)u = ~0uLL; 
L16" class="line" nam >

L48">4 168./a>                .a16href16 class="sref"s="sref">bytese=a>, bandwidthe=a>(unsigned href="+code=mlass="sref">s400_hchannea> = ~0uLL; 
L16" class="line" nam >

L49">4 169./a>        elseu
L65" class="line" nam 17
L60">4 170./a>                .a17href17tex_init" class="sref">mutex_initefirea> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>); 
L45" class="line" nam 17
L61">4 171./a> 
L62" class="line" nam 17
L62">4 172./a>        return .a 17ref=17code=s400_byts="s!ss="sref">s400_ref="+code=allocated" class="sref">allocatede=a> = .a href="+code=false" classr resources.c#L51" id>
L51" class="line" nam 17
L63">4 173./a>} /* iso ptes" class="sref">s400_="+codunfirea> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>); 
L45" class="line" nam 17
L64">4 174./a> /* iso ptes" claes" cla-resources.c#L34" id>
L34" class="line" nam 17
L65">4 175./a>static 8" class="l17ne" 175nt">/* iso presources.c#L64" id>
L64" class="line" nam 17L6">4 4617./a>.spaa class="commen17="co17iso-resources.c#L37" id>
L37" class="line" nam 17
L17">4 177./a> WARN_ONeund/_fire_irqref="sound/firewid/_fire_irqde=masref">re=a>->.a hcarea> = ~0uLL; unite=a>); firea> = ~0uLL; 
L11" class="line" nam >7
L58">4 178./a>                .a17href17 class="sref">re=a>->.a href="+code=channels_mask" class="sref">chg62../rewi./a> fw_ucarea> = ~0uLL; unite=a>); g62../rewi./a> 
L12" class="line" nam >7
L59">4 179./a>        elseure=a>->.a href="+code=unit" class="sref">unite=a> =  bandwidt_oetsignea> = ~0uLL; fw_uccevuni href="+co_oetsignea> = ~0uLL; 
L12" class="line" nam >8
L60">4 180./a>                .a18href18tex_init" class="sref">mutexwid/_unfire_irqref="sound/firewid/_unfire_irqde=masref">re=a>->.a hcarea> = ~0uLL; unite=a>); firea> = ~0uLL; 
L11" class="line" nam >8
L61">4 181./a> 
L62" class="line" nam 18
L62">4 182./a>        return .a 18ref=18code=s400_byts="sref">alloca bandwidthe=a>(unsigned href="+code=m class="sref">fw_uref="+code=allocated" class="sref">alloca bandwidthe=a>(unsigned href="+code=m "sref">ALIGNe=a>(ref="+code=allocated" class="sref">alloca bandwidt_oetsignea> = ~0uLL; 
L13" class="line" nam >8
L63">4 183./a>} esources.c#L45" id>
L45" class="line" nam 18
L64">4 184./a> /* iso ps" class="sref">fw_iso_resourc_ed./spse=a> *.a href="+code=r" class_ed./spiso_r>re=a>)u = ~0uLL; speede=a>)ref="+code=unit" class="sref">unite=a> = g62../rewi./a> speede=a>)ref="+code=unit" class="sref">unite=a> = annels_a> = ~0uLL; 
L26" class="line" nam 18
L65">4 185./a>static 8" class="l18ne" 185nt">/* iso ptes" clas400_byttttttttsref">re=a>->.a hcchannea> = ~0uLL; re=a>->.a h bandwidthe=a>(unsigned href="+code=mlass="sref">s400_trupse=a> *.a href=trup/iso-resources.c#L45" id>
L45" class="line" nam 18L6">4 4618./a>.spaa class="commen18="co18ent">/* convert to bandwidth units (qe/iso-resources.c#L26" id>
L26" class="line" nam 18L7">4 4718./a> 
L26" class="line" nam 18
L18">4 188./a>.spaa class="commenthref18fw_iso_resources_destroy - ddddddddd* suce"ewir; wed"sountry againte neubl new ga2../rewi le" rre/iso-resources.c#L25" id>
L25" class="line" nam 18
L59">4 189./a>        elseu
L26" class="line" nam 19
L60">4 190./a>                .a19href19+code=s400_bys="sref">speede=a> cchannea> = ~0uLL; s400_hchannea> = ~0uLL; EXPAGAI href="+code=r" PAGAI D_UP) resources.c#L51" id>
L51" class="line" nam 19
L61">4 191./a> s400_ref="+code=allocated" class="sref">allocatede=a> = .a href="+code=false" class="sref">falsee=a>; 
L32" class="line" nam 19
L62">4 192./a>        return .a 19ref=192class="sref"""""""""s="sref">speede=a> cchannea> = ~0uLL; EXPBUSYa>(.a href="+codBUSYiso-resources.c#L50" id>
L50" class="line" nam 19
L63">4 193./a>} /* iso ptes" cla""""""""ss="sref">s400_dev_alra> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>)mutexe=a>)annel a> = ~0uLL; 
L26" class="line" nam 19
L64">4 194./a> /* iso ptes" cla""""""""/* convert to bandwidstrref"e/iso-rincn vas./spaalu
L45" class="line" nam 19
L65">4 195./a>static 8" class="l19ne" 195nt">/* iso ptes" claso-resources.c#L60" id>
L60" class="line" nam 19L6">4 4619./a>.spaa class="commen19="co196nt">/* iso ptes" cla""""""""ss="sref">s400_dev_alra> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>)mutexe=a>)annel a> = ~0uLL; 
L26" class="line" nam 19L7">4 4719./a> /* iso ptes" clas400_byttttttt""clu
L45" class="line" nam 19L8">4 4819./a>#include <
L64" class="line" nam 19L9">4 491../a>#include <
L65" class="line" nam 20
L10">4 2ppe=a>#include <mutex_initeunfirea> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>); 
L45" class="line" nam 20
L11">4 201e=a>#include <
L62" class="line" nam 20
L12">4 202e=a>#include <s400_hchannea> = ~0uLL; 
L16" class="line" nam 20
L13">4 203e=a>#include <
L64" class="line" nam 20
L14">4 204e=a>#include <EXPORT_SYMBOLe=a>(.a href="+code=fw_iso_resources_destroy" class="sref">fw_iso_rupdates_destroye=a>); 
L45" class="line" nam 205L14">4 205./a>static 8" class="l205ref20iso-resources.c#L56" id>
L56" class="line" nam 20
L16">4 206e=a>#include "
L19" class="line" nam 20
L17">4 207./a> 
L19" class="line" nam 208L17">4 20./a>#include <
L25" class="line" nam 20
L19">4 209./a>.spaa class="comme209ref20@r: the resource manager thate/iso-resources.c#L19" id>
L19" class="line" nam 2

L10">4 2
pe=a>#include <
L25" class="line" nam 2

L11">4 211e=a>#include <
L26" class="line" nam 2>
L12">4 212e=a>#include <fw_iso_rfrees_destroye=a>); fw_iso_resourcese=a> *.a href="+code=r" class="sref">re=a>)u
L42" class="line" nam 2>
L13">4 213e=a>#include <resources.c#L51" id>
L51" class="line" nam 2

L14">4 214e=a>#include </* iso pesources" class="sref">fwcarea> = ~0uLL; fwcare"sref">re=a>)u = ~0uLL; fw_unitpavuni annel a> = ~0uLL; fwpavuni annel sref">re=a>->.a href="+code=unit" class="sref">unite=a>); re=a>)u = ~0uLL; 
L16" class="line" nam 2>
L15">4 215e=a>#include <bytese=a>, bandwidthe=a>(unsigned href="+code=mlass="sref">s400_hchannea> = ~0uLL; 
L16" class="line" nam 2

L16">4 216e=a>#include "
L37" class="line" nam 2>
L17">4 217./a> WARN_ONe="+codfirea> = ~0uLL; re=a>->.a href="+code=mutex" class="sref">mutexe=a>); 
L45" class="line" nam 2>
L18">4 218./a>.spaa class="comme2nt">/21iso-resources.c#L49" id>
L49" class="line" nam 2

L19">4 219./a>.spaa class="comme2nt"> 21 class="sref"s="sref">speede=a> ref="+code=allocated" class="sref">allocatede=a> = .a href="+code=false" classr resources.c#L51" id>
L51" class="line" nam 2

L10">4 220./a>.spaa class="comme2nt"> 22+code=s400_bytes" class="sref">s400_ bandwidthe=a>(unsigned href="+code=m class="sref">fw_uref="+code=allocated" class="sref">alloca bandwidthe=a>(unsigned href="+code=m "sref">ALIGNe=a>(ref="+code=allocated" class="sref">alloca bandwidt_oetsignea> = ~0uLL; 
L51" class="line" nam 2

L11">4 221./a>.spaa class="comme2nt"> 22 class="sref"""""""""ss="sref">s400_>fw_iso_resourc_ed./spse=a> *.a href="+code=r" class_ed./spiso_r>re=a>)u = ~0uLL; speede=a>)ref="+code=unit" class="sref">unite=a> = g62../rewi./a> speede=a>)ref="+code=unit" class="sref">unite=a> = annels_a> = ~0uLL; 
L26" class="line" nam 2>
L22">4 2ndwidthe=a>(unsigned hre2nt"> 222class="sref"""""""""""""""""""""""1M>)9 class="sref"""""""""ss="sreONe="+codfirea> = ~0uLL; 
L11" class="li2e" na22=a-class="sref">EXPBUsource manager thadddddddd*re/iso-resources.c#L26" id>
L26"href="sound/ffreeourceesources" class="sref"wait_uncn2ef="sound_delay_spaal_bu2ef="a22sref">mutexe=a>)annel a> = ~0* iso ptes" claso-resources.c#L60" id>
L60" class="line" nam 19L6">4 4619./a>.spaa class="commen19="co196nt">/* iso ptes" cla""""""""ss="sref">s400_dev_alra> = ~0uLL; re=a>->.a href="+code=mutex" class="sref2spaa clas2="comme1nt"> 124nt">/* i2o ps=2sref">speede=a> alra> a>)annel a> = ~0*nnel sref,esources.c#L26" id>
L26" class="line"so-resourL7">4 4719./a> /* iso ptes" clas400_by2 class="c2mme1nt"> 125nt">/* iso p2es" c2aes" class="sref">s400_alra> = ~0uLL; 
L11" class="li2e" na22=a> cchannea> = ~0uLL; 
L51" class="line" nam 19
L61">4 191./a> s400_ref="+code=allocated" class="sref">2ef">re=a>2>.a href="+code=mutex2 clas22s./spaalu
L45" class="li2e" na22819./a>#include <alloca2bandw2dt_oetsignea> = ~0uLL; 
L65" class="line" nam 20
L10">4 2ppe=a>#include <mutex_initeunfirea> = ~0uLL; )ref="+2ode=unit" class="sref">u2ite=a23s="sref">s400_cchannea> = ~0uLL; (unsigned hre2="+co23>
L51">4 151./a>        unsigned i1nt4.a1href="resources.c#L64" id>
L64" class="line" nam 1>
L52">/iso-resources.c#L26" id>
L26" class="line" initeunfirea> = ~0uLL;  = ~0uLL; 


ddddoriginal LXR softw25" bys.c#Lteunfireahttp://nfiredforge.net/projects/lxr">LXR ref=""""y""""""ss="lexperi="+cal dthiso-rbysteunfiream 47to:lxr@ lxr@ lxr. Redpill Lrs sermasrs sinne"1995.