linux/sound/core/hwdep.c
<<
>>
Prefs

	

	
 0/8d21e;">rn ajax_prefscommf86ed/*
20/8d22e;">rn ajax_prefscommf86ed *  Hardwao0/.B	engbot layer
30/8d23e;">rn ajax_prefscommf86ed *  Copych" m (c) by Jaroslav Ky   a <perex@perex.czsubm
40/8d24e;">rn ajax_prefscommf86ed *
50/8d25e;">rn ajax_prefscommf86ed *
60/8d26e;">rn ajax_prefscommf86ed *   T"se program se free softwao0; you cajaredistrie/he it apt"or modify
70/8d27e;">rn ajax_prefscommf86ed *   it opter the terms of the GNU General Pubaja License ae pubajshed by
80/8d28e;">rn ajax_prefscommf86ed *   the Free Softwao0 F
90/8d29e;">rn ajax_prefscommf86ed *   (at your e/hwde) apy later vers   .
 00/8d2.6.">rn ajax_prefscommf86ed *
  0/8d11e;">rn ajax_prefscommf86ed *   T"se program se distrie/hed in the hope that it will be useful,
120/8d12e;">rn ajax_prefscommf86ed *   e/h WITHOUT ANY WARRANTY; wioku/h even the implied waoranty of
130/8d13e;">rn ajax_prefscommf86ed *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
140/8d14e;">rn ajax_prefscommf86ed *   GNU General Pubaja License for moo0/.Btails.
150/8d15e;">rn ajax_prefscommf86ed *
160/8d16e;">rn ajax_prefscommf86ed *   You sku/ld haveareceived a copy of the GNU General Pubaja License
170/8d17e;">rn ajax_prefscommf86ed *   along wiok t"se program; if not, wrihe to the Free Softwao0
180/8d18e;">rn ajax_prefscommf86ed *   F
190/8d19e;">rn ajax_prefscommf86ed *
200/8d2.6.">rn ajax_prefscommf86ed */
2 0/8d21e;">ta/opt  
  
220/8d22e;">#i="aude <a/opt  
 i="aude>
/major.hlue="v2.6fref">
/major.he;">submta/opt  
  
230/8d23e;">#i="aude <a/opt  
 i="aude>
/init.hlue="v2.6fref">
/init.he;">submta/opt  
  
240/8d24e;">#i="aude <a/opt  
 i="aude>
/slab.hlue="v2.6fref">
/slab.he;">submta/opt  
  
250/8d25e;">#i="aude <a/opt  
 i="aude>
/time.hlue="v2.6fref">
/time.he;">submta/opt  
  
260/8d26e;">#i="aude <a/opt  
 i="aude>
/m/hex.hlue="v2.6fref">
/m/hex.he;">submta/opt  
  
270/8d27e;">#i="aude <a/opt  
 i="aude>
/module.hlue="v2.6fref">
/module.he;">submta/opt  
  
280/8d28e;">#i="aude <a/opt  
 i="aude>  submta/opt  
  
290/8d29e;">#i="aude <a/opt  
 i="aude>  submta/opt  
  
300/8d30e;">#i="aude <a/opt  
 i="aude>  submta/opt  
  
3 0/8d31e;">#i="aude <a/opt  
 i="aude>  submta/opt  
  
320/8d32e;">#i="aude <a/opt  
 i="aude>  submta/opt  
  
330/8d33e;">ta/opt  
  
340/8d34e;">r
	  
code=MODULE_AUTHORe class="dref">MODULE_AUTHORe;">(rn ajax_prefsstring">"Jaroslav Ky   a <perex@perex.czsubm"
350/8d35e;">r
	  
code=MODULE_DESCRIPTIONe class="dref">MODULE_DESCRIPTIONe;">(rn ajax_prefsstring">"Hardwao0/.B	engbot layer"
360/8d36e;">r
	  
code=MODULE_LICENSEe class="dref">MODULE_LICENSEe;">(rn ajax_prefsstring">"GPL"
370/8d37e;">ta/opt  
  
380/8d38e;">tion=" r
	  
code=LIST_HEADe class="dref">LIST_HEADe;">(r
	  
code=snd_32.B	_devicese class="dref">snd_32.B	_devicese;">)mta/opt  
  
390/8d39e;">tion=" r
	  
code=DEFINE_MUTEXe class="dref">DEFINE_MUTEXe;">(r
	  
code=register_m/hexe class="dref">register_m/hexe;">)mta/opt  
  
400/8d40e;">ta/opt  
  
4 0/8d41e;">tion=" iot r
	  
code=snd_32.B	_freee class="dref">snd_32.B	_freee;">(struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32.B	e class="dref">32.B	e;">)mta/opt  
  
420/8d42e;">tion=" iot r
	  
code=snd_32.B	_dev_freee class="dref">snd_32.B	_dev_freee;">(struct r
	  
code=snd_devicee class="dref">snd_devicee;"> *<
	  
code=devicee class="dref">devicee;">)mta/opt  
  
430/8d43e;">tion=" iot r
	  
code=snd_32.B	_dev_registere class="dref">snd_32.B	_dev_registere;">(struct r
	  
code=snd_devicee class="dref">snd_devicee;"> *<
	  
code=devicee class="dref">devicee;">)mta/opt  
  
440/8d44e;">tion=" iot r
	  
code=snd_32.B	_dev_disv2nnecte class="dref">snd_32.B	_dev_disv2nnecte;">(struct r
	  
code=snd_devicee class="dref">snd_devicee;"> *<
	  
code=devicee class="dref">devicee;">)mta/opt  
  
450/8d45e;">ta/opt  
  
460/8d46e;">ta/opt  
  
470/8d47e;">tion=" struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=snd_32.B	_n class=class="dref">snd_32.B	_sund/cor">(struct r
	  
code=snd_cards=class="dref">snd_carde;"> *<
	  
code=cards=class="dref">carde;">, iot r
	  
code=devicee class="dref">devicee;">)ta/opt  
  
480/8d48e;">{ta/opt  
  
490/8d49e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32.B	e class="dref">32.B	e;">mta/opt  
  
500/8d50e;">ta/opt  
  
5 0/8d51e;">        <
	  
code=list_for_each_botrye class="dref">list_for_each_botrye;">(r
	  
code=32.B	e class="dref">32.B	e;">, &r
	  
code=snd_32.B	_devicese class="dref">snd_32.B	_devicese;">, <
	  
code=liste class="dref">liste;">)ta/opt  
  
520/8d52e;">                if (r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	  
code=cards=class="dref">carde;"> == <
	  
code=cards=class="dref">carde;"> && <
	  
code=32.B	e class="dref">32.B	e;">-subm<
	  
code=devicee class="dref">devicee;"> == <
	  
code=devicee class="dref">devicee;">)ta/opt  
  
530/8d53e;">                        <
	  
code=32.B	e class="dref">32.B	e;">mta/opt  
  
540/8d54e;">        <
	  
code=NULLe class="dref">NULLe;">mta/opt  
  
550/8d55e;">}ta/opt  
  
560/8d56e;">ta/opt  
  
570/8d57e;">tion=" <
	  
code=loff_te class="dref">loff_te;"> r
	  
code=snd_32.B	_llseeke class="dref">snd_32.B	_llseekor">(struct r
	  
code=entse class="dref">entse;"> * r
	  
code=entse class="dref">entse;">, <
	  
code=loff_te class="dref">loff_te;"> r
	  
code=offsete class="dref">offsete;">, iot r
	  
code=orige class="dref">orige;">)ta/opt  
  
580/8d58e;">{ta/opt  
  
590/8d59e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;"> = r
	  
code=entse class="dref">entse;">-subm<
	  
code=private_datae class="dref">private_datae;">mta/opt  
  
600/8d60e;">        if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=llseeke class="dref">llseekor">)ta/opt  
  
6 0/8d61e;">                <
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=llseeke class="dref">llseekor">(r
	  
code=32e class="dref">32e;">, <
	  
code=entse class="dref">entse;">, <
	  
code=offsete class="dref">offsete;">, r
	  
code=orige class="dref">orige;">)mta/opt  
  
620/8d62e;">        -r
	  
code=ENXIOe class="dref">ENXIOe;">mta/opt  
  
630/8d63e;">}ta/opt  
  
640/8d64e;">ta/opt  
  
650/8d65e;">tion=" <
	  
code=ssize_te class="dref">ssize_te;"> r
	  
code=snd_32.B	_reads=class="dref">snd_32.B	_reador">(struct r
	  
code=entse class="dref">entse;"> * r
	  
code=entse class="dref">entse;">, char r
	  
code=__usere class="dref">__usere;"> *<
	  
code=bufe class="dref">bufe;">,ta/opt  
  
660/8d66e;">                              <
	  
code=size_te class="dref">size_te;"> r
	  
code=cc, <
	  
code=loff_te class="dref">loff_te;"> *<
	  
code=offsete class="dref">offsete;">)ta/opt  
  
670/8d67e;">{ta/opt  
  
680/8d68e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;"> = r
	  
code=entse class="dref">entse;">-subm<
	  
code=private_datae class="dref">private_datae;">mta/opt  
  
690/8d69e;">        if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=reads=class="dref">reador">)ta/opt  
  
700/8d70e;">                <
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=reads=class="dref">reador">(r
	  
code=32e class="dref">32e;">, <
	  
code=bufe class="dref">bufe;">, r
	  
code=cc, <
	  
code=offsete class="dref">offsete;">)mta/opt  
  
7 0/8d71e;">        -r
	  
code=ENXIOe class="dref">ENXIOe;">mc">
/opt  
  
720/8d72e;">}ta/opt  
  
730/8d73e;">ta/opt  
  
740/8d74e;">tion=" <
	  
code=ssize_te class="dref">ssize_te;"> r
	  
code=snd_32.B	_wrihes=class="dref">snd_32.B	_wriheor">(struct r
	  
code=entse class="dref">entse;"> * r
	  
code=entse class="dref">entse;">, const char r
	  
code=__usere class="dref">__usere;"> *<
	  
code=bufe class="dref">bufe;">,ta/opt  
  
750/8d75e;">                               <
	  
code=size_te class="dref">size_te;"> r
	  
code=cc, <
	  
code=loff_te class="dref">loff_te;"> *<
	  
code=offsete class="dref">offsete;">)ta/opt  
  
760/8d76e;">{ta/opt  
  
770/8d77e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;"> = r
	  
code=entse class="dref">entse;">-subm<
	  
code=private_datae class="dref">private_datae;">mta/opt  
  
780/8d78e;">        if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=wrihes=class="dref">wriheor">)ta/opt  
  
790/8d79e;">                <
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=wrihes=class="dref">wriheor">(r
	  
code=32e class="dref">32e;">, <
	  
code=bufe class="dref">bufe;">, r
	  
code=cc, <
	  
code=offsete class="dref">offsete;">)mta/opt  
  
800/8d80e;">        -r
	  
code=ENXIOe class="dref">ENXIOe;">mc">
/opt  
  
8 0/8d81e;">}ta/opt  
  
820/8d82e;">ta/opt  
  
830/8d83e;">tion=" iot r
	  
code=snd_32.B	_opbottclass="dref">snd_32.B	_opboor">(struct r
	  
code=inodettclass="dref">inodee;"> *<
	  
code=inodettclass="dref">inodee;">, struct r
	  
code=entse class="dref">entse;"> * r
	  
code=entse class="dref">entse;">)ta/opt  
  
840/8d84e;">{ta/opt  
  
850/8d85e;">        iot r
	  
code=majore class="dref">majore;"> = r
	  
code=imajore class="dref">imajore;">(r
	  
code=inodettclass="dref">inodee;">)mta/opt  
  
860/8d86e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;">mta/opt  
  
870/8d87e;">        iot r
	  
code=erre class="dref">erre;">mta/opt  
  
880/8d88e;">        <
	  
code=wait_queue_te class="dref">wait_queue_te;"> r
	  
code=waite class="dref">waite;">mta/opt  
  
890/8d89e;">ta/opt  
  
900/8d90e;">        if (r
	  
code=majore class="dref">majore;"> == r
	  
code=snd_majore class="dref">snd_majore;">) {ta/opt  
  
9 0/8d91e;">                <
	  
code=32e class="dref">32e;"> = r
	  
code=snd_   snd_   (r
	  
code=iminore class="dref">iminore;">(r
	  
code=inodettclass="dref">inodee;">),ta/opt  
  
920/8d92e;">                                           <
	  
code=SNDRV_DEVICE_TYPE_HWDEPttclass="dref">SNDRV_DEVICE_TYPE_HWDEPe;">)mta/opt  
  
930/8d93e;">#ifdef <
	  
code=CONFIG_SND_OSSEMULe class="dref">CONFIG_SND_OSSEMULe;">ta/opt  
  
940/8d94e;">        } else if (r
	  
code=majore class="dref">majore;"> == r
	  
code=SOUND_MAJORe class="dref">SOUND_MAJORe;">) {ta/opt  
  
950/8d95e;">                <
	  
code=32e class="dref">32e;"> = r
	  
code=snd_   snd_   (r
	  
code=iminore class="dref">iminore;">(r
	  
code=inodettclass="dref">inodee;">),ta/opt  
  
960/8d96e;">                                               <
	  
code=SNDRV_OSS_DEVICE_TYPE_DMFMttclass="dref">SNDRV_OSS_DEVICE_TYPE_DMFMe;">)mta/opt  
  
970/8d97e;">#endifta/opt  
  
980/8d98e;">        } elseta/opt  
  
990/8d99e;">                -r
	  
code=ENXIOe class="dref">ENXIOe;">mta/opt  
  
 000/8 00e;">        if (r
	  
code=32e class="dref">32e;"> == r
	  
code=NULLe class="dref">NULLe;">)ta/opt  
  
 010/8 01e;">                -r
	  
code=ENODEVe class="dref">ENODEVe;">mta/opt  
  
1020/8 02e;">ta/opt  
  
1030/8 03e;">        if (!r
	  
code=try_module_gete class="dref">try_module_getor">(r
	  
code=32e class="dref">32e;">-subm<
	  
code=cards=class="dref">carde;">-subm<
	  
code=modulee class="dref">modulee;">))ta/opt  
  
1040/8 04e;">                -r
	  
code=EFAULTe class="dref">EFAULTe;">mta/opt  
  
105l/8 05e;">ta/opt  
  
106l/8 06e;">        r
	  
code=init_waitqueue_botrye class="dref">init_waitqueue_botryor">(&r
	  
code=waite class="dref">waite;">, r
	  
code=currepte class="dref">currepte;">)mta/opt  
  
107l/8 07e;">        r
	  
code=add_wait_queuee class="dref">add_wait_queueor">(&r
	  
code=32e class="dref">32e;">-subm<
	  
code=open_waite class="dref">open_waite;">, &r
	  
code=waite class="dref">waite;">)mta/opt  
  
108l/8 08e;">        <
	  
code=m/hex_  cke class="dref">m/hex_  ckor">(&r
	  
code=32e class="dref">32e;">-subm<
	  
code=open_m/hexe class="dref">open_m/hexe;">)mta/opt  
  
109l/8 09e;">        while (1) {ta/opt  
  
  00/8110e;">                if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=exclusivee class="dref">exclusivee;"> && <
	  
code=32e class="dref">32e;">-subm<
	  
code=useds=class="dref">usede;"> &ubm 0) {ta/opt  
  
  10/8 11e;">                        <
	  
code=erre class="dref">erre;"> = -r
	  
code=EBUSYe class="dref">EBUSYe;">mta/opt  
  
1120/8112e;">                        breakmta/opt  
  
1130/8113e;">                }ta/opt  
  
1140/8114e;">                if (!r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=opbottclass="dref">opboor">) {ta/opt  
  
1150/8115e;">                        <
	  
code=erre class="dref">erre;"> = 0mta/opt  
  
1160/8116e;">                        breakmta/opt  
  
1170/8117e;">                }ta/opt  
  
1180/8118e;">                <
	  
code=erre class="dref">erre;"> = r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=opbottclass="dref">opboor">(r
	  
code=32e class="dref">32e;">, <
	  
code=entse class="dref">entse;">)mta/opt  
  
1190/8119e;">                if (r
	  
code=erre class="dref">erre;"> subm= 0)ta/opt  
  
1200/8120e;">                        breakmta/opt  
  
12 0/8121e;">                if (r
	  
code=erre class="dref">erre;"> == -r
	  
code=EAGAINe class="dref">EAGAINor">) {ta/opt  
  
1220/8122e;">                        if (r
	  
code=entse class="dref">entse;">-subm<
	  
code=f_flagse class="dref">f_flagse;"> & <
	  
code=O_NONBLOCKe class="dref">O_NONBLOCKor">) {ta/opt  
  
1230/8123e;">                                <
	  
code=erre class="dref">erre;"> = -r
	  
code=EBUSYe class="dref">EBUSYe;">mta/opt  
  
1240/8124e;">                                breakmta/opt  
  
1250/8125e;">                        }ta/opt  
  
1260/8126e;">                } elseta/opt  
  
1270/8127e;">                        breakmta/opt  
  
1280/8128e;">                <
	  
code=set_currept_tiones=class="dref">set_currept_tioneor">(r
	  
code=TASK_INTERRUPTIBLEs=class="dref">TASK_INTERRUPTIBLEe;">)mta/opt  
  
1290/8129e;">                <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	  
code=32e class="dref">32e;">-subm<
	  
code=open_m/hexe class="dref">open_m/hexe;">)mta/opt  
  
1300/8130e;">                <
	  
code=schedulee class="dref">scheduleor">()mta/opt  
  
13 0/8131e;">                <
	  
code=m/hex_  cke class="dref">m/hex_  ckor">(&r
	  
code=32e class="dref">32e;">-subm<
	  
code=open_m/hexe class="dref">open_m/hexe;">)mta/opt  
  
1320/8132e;">                if (r
	  
code=signal_	enging" class="dref">signal_	engingor">(r
	  
code=currepte class="dref">currepte;">)) {ta/opt  
  
1330/8133e;">                        <
	  
code=erre class="dref">erre;"> = -r
	  
code=ERESTARTSYSe class="dref">ERESTARTSYSe;">mta/opt  
  
1340/8134e;">                        breakmta/opt  
  
1350/8135e;">                }ta/opt  
  
1360/8136e;">        }ta/opt  
  
1370/8137e;">        r
	  
code=remove_wait_queuee class="dref">remove_wait_queueor">(&r
	  
code=32e class="dref">32e;">-subm<
	  
code=open_waite class="dref">open_waite;">, &r
	  
code=waite class="dref">waite;">)mta/opt  
  
1380/8138e;">        if (r
	  
code=erre class="dref">erre;"> subm= 0) {ta/opt  
  
1390/8139e;">                <
	  
code=erre class="dref">erre;"> = r
	  
code=snd_card_ents"adds=class="dref">snd_card_ents"addor">(r
	  
code=32e class="dref">32e;">-subm<
	  
code=cards=class="dref">carde;">, <
	  
code=entse class="dref">entse;">)mta/opt  
  
1400/8140e;">                if (r
	  
code=erre class="dref">erre;"> subm= 0) {ta/opt  
  
14 0/8141e;">                        <
	  
code=entse class="dref">entse;">-subm<
	  
code=private_datae class="dref">private_datae;"> = r
	  
code=32e class="dref">32e;">mta/opt  
  
1420/8142e;">                        <
	  
code=32e class="dref">32e;">-subm<
	  
code=useds=class="dref">usede;">++mta/opt  
  
1430/8143e;">                } else {ta/opt  
  
1440/8144e;">                        if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=releasee class="dref">releasee;">)ta/opt  
  
1450/8145e;">                               ><
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=releasee class="dref">releasee;">(r
	  
code=32e class="dref">32e;">, <
	  
code=entse class="dref">entse;">)mta/opt  
  
1460/8146e;">                }ta/opt  
  
1470/8147e;">        }ta/opt  
  
1480/8148e;">        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	  
code=32e class="dref">32e;">-subm<
	  
code=open_m/hexe class="dref">open_m/hexe;">)mta/opt  
  
1490/8149e;">        if (r
	  
code=erre class="dref">erre;"> slbm 0)ta/opt  
  
1500/8150e;">                <
	  
code=module_pute class="dref">module_putor">(r
	  
code=32e class="dref">32e;">-subm<
	  
code=cards=class="dref">carde;">-subm<
	  
code=modulee class="dref">modulee;">)mta/opt  
  
15 0/8151e;">        r
	  
code=erre class="dref">erre;">mta/opt  
  
1520/8152e;">}ta/opt  
  
1530/8153e;">ta/opt  
  
1540/8154e;">tion=" iot r
	  
code=snd_32.B	_releasee class="dref">snd_32.B	_releaseor">(struct r
	  
code=inodettclass="dref">inodee;"> *<
	  
code=inodettclass="dref">inodee;">, struct r
	  
code=entse class="dref">entse;"> * r
	  
code=entse class="dref">entse;">)ta/opt  
  
1550/8155e;">{ta/opt  
  
1560/8156e;">        iot r
	  
code=erre class="dref">erre;"> = 0mta/opt  
  
1570/8157e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;"> = r
	  
code=entse class="dref">entse;">-subm<
	  
code=private_datae class="dref">private_datae;">mta/opt  
  
1580/8158e;">        struct r
	  
code=modulee class="dref">modulee;"> *<
	  
code=mode class="dref">mode;"> = r
	  
code=32e class="dref">32e;">-subm<
	  
code=cards=class="dref">carde;">-subm<
	  
code=modulee class="dref">modulee;">mta/opt  
  
1590/8159e;">ta/opt  
  
1600/8160e;">        <
	  
code=m/hex_  cke class="dref">m/hex_  ckor">(&r
	  
code=32e class="dref">32e;">-subm<
	  
code=open_m/hexe class="dref">open_m/hexe;">)mta/opt  
  
16 0/8161e;">        if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=releasee class="dref">releasee;">)ta/opt  
  
1620/8162e;">                <
	  
code=erre class="dref">erre;"> = r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=releasee class="dref">releasee;">(r
	  
code=32e class="dref">32e;">, <
	  
code=entse class="dref">entse;">)mta/opt  
  
1630/8163e;">        if (<
	  
code=32e class="dref">32e;">-subm<
	  
code=useds=class="dref">usede;"> &ubm 0)ta/opt  
  
1640/8164e;">                <
	  
code=32e class="dref">32e;">-subm<
	  
code=useds=class="dref">usede;">--mta/opt  
  
1650/8165e;">        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	  
code=32e class="dref">32e;">-subm<
	  
code=open_m/hexe class="dref">open_m/hexe;">)mta/opt  
  
1660/8166e;">        r
	  
code=wake_u	e class="dref">wake_u	or">(&r
	  
code=32e class="dref">32e;">-subm<
	  
code=open_waite class="dref">open_waite;">)mta/opt  
  
1670/8167e;">ta/opt  
  
1680/8168e;">        <
	  
code=snd_card_ents"removes=class="dref">snd_card_ents"removeor">(r
	  
code=32e class="dref">32e;">-subm<
	  
code=cards=class="dref">carde;">, <
	  
code=entse class="dref">entse;">)mta/opt  
  
1690/8169e;">        <
	  
code=module_pute class="dref">module_putor">(r
	  
code=mode class="dref">mode;">)mta/opt  
  
1700/8170e;">        r
	  
code=erre class="dref">erre;">mta/opt  
  
17 0/8171e;">}ta/opt  
  
1720/8172e;">ta/opt  
  
1730/8173e;">tion=" unsigned int r
	  
code=snd_32.B	_polle class="dref">snd_32.B	_pollor">(struct r
	  
code=entse class="dref">entse;"> * r
	  
code=entse class="dref">entse;">, <
	  
code=poll_tabtse class="dref">poll_tabtse;"> * r
	  
code=waite class="dref">waite;">)ta/opt  
  
1740/8174e;">{ta/opt  
  
1750/8175e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;"> = r
	  
code=entse class="dref">entse;">-subm<
	  
code=private_datae class="dref">private_datae;">mta/opt  
  
1760/8176e;">        if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=polle class="dref">pollor">)ta/opt  
  
1770/8177e;">                <
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=polle class="dref">pollor">(r
	  
code=32e class="dref">32e;">, <
	  
code=entse class="dref">entse;">, <
	  
code=waite class="dref">waite;">)mta/opt  
  
1780/8178e;">        0mta/opt  
  
1790/8179e;">}ta/opt  
  
1800/8180e;">ta/opt  
  
18 0/8181e;">tion=" iot r
	  
code=snd_32.B	_infoe class="dref">snd_32.B	_infoor">(struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;">,ta/opt  
  
1820/8182e;">                          struct r
	  
code=snd_32.B	_infoe class="dref">snd_32.B	_infoor"> r
	  
code=__usere class="dref">__usere;"> *<
	  
code=_infoe class="dref">_infoor">)ta/opt  
  
1830/8183e;">{ta/opt  
  
1840/8184e;">        struct r
	  
code=snd_32.B	_infoe class="dref">snd_32.B	_infoor"> r
	  
code=infoe class="dref">infoor">mta/opt  
  
1850/8185e;">        ta/opt  
  
1860/8186e;">        r
	  
code=memsete class="dref">memsetor">(&r
	  
code=infoe class="dref">infoor">, 0, sizeof(r
	  
code=infoe class="dref">infoor">))mta/opt  
  
1870/8187e;">        r
	  
code=infoe class="dref">infoor">.<
	  
code=cards=class="dref">carde;"> = r
	  
code=32e class="dref">32e;">-subm<
	  
code=cards=class="dref">carde;">-subm<
	  
code=numbere class="dref">numberor">mta/opt  
  
1880/8188e;">        <
	  
code=strlcpye class="dref">strlcpyor">(r
	  
code=infoe class="dref">infoor">.<
	  
code=ids=class="dref">ide;">, <
	  
code=32e class="dref">32e;">-subm<
	  
code=ids=class="dref">ide;">, sizeof(r
	  
code=infoe class="dref">infoor">.<
	  
code=ids=class="dref">ide;">))m      ta/opt  
  
1890/8189e;">        <
	  
code=strlcpye class="dref">strlcpyor">(r
	  
code=infoe class="dref">infoor">.<
	  
code="
	 e class="dref">n
	 e;">, <
	  
code=32e class="dref">32e;">-subm<
	  
code="
	 e class="dref">n
	 e;">, sizeof(r
	  
code=infoe class="dref">infoor">.<
	  
code="
	 e class="dref">n
	 e;">))mta/opt  
  
1900/8190e;">        <
	  
code=infoe class="dref">infoor">.<
	  
code=ifacee class="dref">ifacee;"> = r
	  
code=32e class="dref">32e;">-subm<
	  
code=ifacee class="dref">ifacee;">mta/opt  
  
19 0/8191e;">        if (r
	  
code=copy_to_usere class="dref">copy_to_useror">(r
	  
code=_infoe class="dref">_infoor">, &r
	  
code=infoe class="dref">infoor">, sizeof(r
	  
code=infoe class="dref">infoor">)))ta/opt  
  
1920/8192e;">                -r
	  
code=EFAULTe class="dref">EFAULTe;">mta/opt  
  
1930/8193e;">        0mta/opt  
  
1940/8194e;">}ta/opt  
  
1950/8195e;">ta/opt  
  
1960/8196e;">tion=" iot r
	  
code=snd_32.B	_dsp_tionuse class="dref">snd_32.B	_dsp_tionusor">(struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;">,ta/opt  
  
1970/8197e;">                                struct r
	  
code=snd_32.B	_dsp_tionuse class="dref">snd_32.B	_dsp_tionusor"> r
	  
code=__usere class="dref">__usere;"> *<
	  
code=_infoe class="dref">_infoor">)ta/opt  
  
1980/8198e;">{ta/opt  
  
1990/8199e;">        struct r
	  
code=snd_32.B	_dsp_tionuse class="dref">snd_32.B	_dsp_tionusor"> r
	  
code=infoe class="dref">infoor">mta/opt  
  
2000/8200e;">        iot r
	  
code=erre class="dref">erre;">mta/opt  
  
2010/8201e;">        ta/opt  
  
2020/8202e;">        if (!><
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=dsp_tionuse class="dref">dsp_tionusor">)ta/opt  
  
2030/8203e;">                -r
	  
code=ENXIOe class="dref">ENXIOe;">mta/opt  
  
2040/8204e;">        r
	  
code=memsete class="dref">memsetor">(&r
	  
code=infoe class="dref">infoor">, 0, sizeof(r
	  
code=infoe class="dref">infoor">))mta/opt  
  
205l/8205e;">        <
	  
code=infoe class="dref">infoor">.<
	  
code=dsp_loadeds=class="dref">dsp_loadede;"> = r
	  
code=32e class="dref">32e;">-subm<
	  
code=dsp_loadeds=class="dref">dsp_loadede;">mta/opt  
  
206l/8206e;">        if ((r
	  
code=erre class="dref">erre;"> =><
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=dsp_tionuse class="dref">dsp_tionusor">(r
	  
code=32e class="dref">32e;">, &r
	  
code=infoe class="dref">infoor">)) slbm 0)ta/opt  
  
207l/8207e;">                <
	  
code=erre class="dref">erre;">mta/opt  
  
208l/8208e;">        if (r
	  
code=copy_to_usere class="dref">copy_to_useror">(r
	  
code=_infoe class="dref">_infoor">, &r
	  
code=infoe class="dref">infoor">, sizeof(r
	  
code=infoe class="dref">infoor">)))ta/opt  
  
209l/8209e;">                -r
	  
code=EFAULTe class="dref">EFAULTe;">mta/opt  
  
2 00/8210e;">        0mta/opt  
  
2 10/8211e;">}ta/opt  
  
2120/8212e;">ta/opt  
  
2130/8213e;">tion=" iot r
	  
code=snd_32.B	_dsp_loade class="dref">snd_32.B	_dsp_loador">(struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;">,ta/opt  
  
2140/8214e;">                              struct r
	  
code=snd_32.B	_dsp_imagee class="dref">snd_32.B	_dsp_imageor"> r
	  
code=__usere class="dref">__usere;"> *<
	  
code=_infoe class="dref">_infoor">)ta/opt  
  
2150/8215e;">{ta/opt  
  
2160/8216e;">        struct r
	  
code=snd_32.B	_dsp_imagee class="dref">snd_32.B	_dsp_imageor"> r
	  
code=infoe class="dref">infoor">mta/opt  
  
2170/8217e;">        iot r
	  
code=erre class="dref">erre;">mta/opt  
  
2180/8218e;">        ta/opt  
  
2190/8219e;">        if (!><
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=dsp_loade class="dref">dsp_loador">)ta/opt  
  
2200/820e;">                 /8202e;">        if (!><
	  
code=32e class="dref">32e;">-subm<
	  
code=ops
code22alue="v2.6.27.10"
	  >
22 0/8221e;">        r
	  
code=memsete class="dref">memsetor">(&r
	  
code=infoe class="dref">infoor">, 0, sizeof(r
	  
code=infoe class="dref">infoor">))mta/opt  
  
2220/8222e;">        if (r
	  
code=copy_from_usere class="dref">copy_from_useror">(&r
	  
code=infoe class="dref">infoor">, r
	  
code=_infoe class="dref">_infoor">, sizeof(r
	  
code=infoe class="dref">infoor">)))ta/opt  
  
2230/8223e;">                -r
	  
code=EFAULTe class="dref">EFAULTe;">mta/opt  
  
2240/8224e;">        /* check whether the dsp was already loaded */ta/opt  
  
2250/8225e;">        if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=dsp_loadeds=class="dref">dsp_loadede;"> & (1 slbmslbm <
	  
code=infoe class="dref">infoor">.<
	  
code=indexe class="dref">indexor">))ta/opt  
  
2260/8226e;">                -r
	  
code=EBUSYe class="dref">EBUSYe;">mta/opt  
  
2270/8227e;">        if (!r
	  
code=access_oke class="dref">access_okor">(r
	  
code=VERIFY_READe class="dref">VERIFY_READor">, r
	  
code=infoe class="dref">infoor">.<
	  
code=imagee class="dref">imageor">, r
	  
code=infoe class="dref">infoor">.<
	  
code=lengthe class="dref">lengthor">))ta/opt  
  
2280/8228e;">                -r
	  
code=EFAULTe class="dref">EFAULTe;">mta/opt  
  
2290/8229e;">        <
	  
code=erre class="dref">erre;"> =><
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=dsp_loade class="dref">dsp_loador">(r
	  
code=32e class="dref">32e;">, &r
	  
code=infoe class="dref">infoor">)mta/opt  
  
2300/8230e;">        if (r
	  
code=erre class="dref">erre;"> slbm 0)ta/opt  
  
23 0/8231e;">                <
	  
code=erre class="dref">erre;">mta/opt  
  
2320/8232e;">        r
	  
code=32e class="dref">32e;">-subm<
	  
code=dsp_loadeds=class="dref">dsp_loadede;"> |= (1 slbmslbm <
	  
code=infoe class="dref">infoor">.<
	  
code=indexe class="dref">indexor">)mta/opt  
  
2330/8233e;">        0mta/opt  
  
2340/8234e;">}ta/opt  
  
2350/8235e;">ta/opt  
  
2360/8236e;">tion=" long r
	  
code=snd_32.B	_ioctle class="dref">snd_32.B	_ioctlor">(struct r
	  
code=entse class="dref">entse;"> * r
	  
code=entse class="dref">entse;">, unsigned int r
	  
code=cmds=class="dref">cmde;">,ta/opt  
  
2370/8237e;">                            unsigned long r
	  
code=arg" class="dref">argor">)ta/opt  
  
2380/8238e;">{ta/opt  
  
2390/8239e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;"> = r
	  
code=entse class="dref">entse;">-subm<
	  
code=private_datae class="dref">private_datae;">mta/opt  
  
2400/8240e;">        void r
	  
code=__usere class="dref">__usere;"> *<
	  
code=arg	e class="dref">arg	e;"> = (void r
	  
code=__usere class="dref">__usere;"> *)r
	  
code=arg" class="dref">argor">mta/opt  
  
24 0/8241e;">        switch (r
	  
code=cmds=class="dref">cmde;">) {ta/opt  
  
2420/8242e;">        case <
	  
code=SNDRV_HWDEP_IOCTL_PVERSIONe class="dref">SNDRV_HWDEP_IOCTL_PVERSIONe;">:ta/opt  
  
2430/8243e;">                <
	  
code=put_usere class="dref">put_useror">(r
	  
code=SNDRV_HWDEP_VERSIONe class="dref">SNDRV_HWDEP_VERSIONe;">, (int r
	  
code=__usere class="dref">__usere;"> *)r
	  
code=arg	e class="dref">arg	e;">)mta/opt  
  
2440/8244e;">        case <
	  
code=SNDRV_HWDEP_IOCTL_INF 
code=32e cSNDRV_HWDEP_IOCTL_INF e;">:ta/opt  
  
2450/8245e;">                <
	  
code=snd_32.B	_infoe class="dref">snd_32.B	_infoor">(r
	  
code=32e class="dref">32e;">, r
	  
code=arg	e class="dref">arg	e;">)mta/opt  
  
2460/8246e;">        case <
	  
code=SNDRV_HWDEP_IOCTL_DSP_STATUSe class="dref">SNDRV_HWDEP_IOCTL_DSP_STATUSe;">:ta/opt  
  
2470/8247e;">                <
	  
code=snd_32.B	_dsp_tionuse class="dref">snd_32.B	_dsp_tionusor">(r
	  
code=32e class="dref">32e;">, r
	  
code=arg	e class="dref">arg	e;">)mta/opt  
  
2480/8248e;">        case <
	  
code=SNDRV_HWDEP_IOCTL_DSP_LOADe class="dref">SNDRV_HWDEP_IOCTL_DSP_LOADe;">:ta/opt  
  
2490/8249e;">                <
	  
code=snd_32.B	_dsp_loade class="dref">snd_32.B	_dsp_loador">(r
	  
code=32e class="dref">32e;">, r
	  
code=arg	e class="dref">arg	e;">)mta/opt  
  
2500/8250e;">        }ta/opt  
  
25 0/8251e;">        if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=ioctle class="dref">ioctlor">)ta/opt  
  
2520/8252e;">                r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=ioctle class="dref">ioctlor">(r
	  
code=32e class="dref">32e;">, <
	  
code=entse class="dref">entse;">, <
	  
code=cmds=class="dref">cmde;">, r
	  
code=arg" class="dref">argor">)mta/opt  
  
2530/8253e;">        -r
	  
code=ENOTTYe class="dref">ENOTTYor">mta/opt  
  
2540/8254e;">}ta/opt  
  
2550/8255e;">ta/opt  
  
2560/8256e;">tion=" iot r
	  
code=snd_32.B	_mma	e class="dref">snd_32.B	_mma	or">(struct r
	  
code=entse class="dref">entse;"> * r
	  
code=entse class="dref">entse;">, struct r
	  
code=vm_area_structe class="dref">vm_area_structe;"> * r
	  
code=vmae class="dref">vmaor">)ta/opt  
  
2570/8257e;">{ta/opt  
  
2580/8258e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32e class="dref">32e;"> = r
	  
code=entse class="dref">entse;">-subm<
	  
code=private_datae class="dref">private_datae;">mta/opt  
  
2590/8259e;">        if (r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=mma	e class="dref">mma	or">)ta/opt  
  
2600/826e;">                 /8202e;r
	  
code=32e class="dref">32e;">-subm<
	  
code=opse class="dref">opse;">.<
	  
code=mma	e class="dref">mma	or">(r
	  
code=32e class="dref">32e;">, <
	  
code=entse class="dref">entse;">, <
	  
code=vmae class="dref">vmaor">)mta/opt  
  
26 0/8261e;">        ">        if (!><
	  
code=32e class="dref">32e;">-subm<
	  
code=ops62ption v262lue="v2.6.27.10"
	  >
2620/8262e;">}ta/opt  
  
2630/8263e;">ta/opt  
  
2640/8264e;">tion=" iot r
	  
code=snd_32.B	_control_ioctle class="dref">snd_32.B	_control_ioctlor">(struct r
	  
code=snd_carde class="dref">snd_carde;"> *<
	  
code=cards=class="dref">carde;">,ta/opt  
  
2650/8265e;">                                   struct r
	  
code=snd_ctl_entse class="dref">snd_ctl_entse;"> * r
	  
code=controls=class="dref">controle;">,ta/opt  
  
2660/8266e;">                                   unsigned int r
	  
code=cmds=class="dref">cmde;">, unsigned long r
	  
code=arg" class="dref">argor">)ta/opt  
  
2670/8267e;">{ta/opt  
  
2680/8268e;">        switch (r
	  
code=cmds=class="dref">cmde;">) {ta/opt  
  
2690/8269e;">        case <
	  
code=SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICEe class="dref">SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICEe;">:ta/opt  
  
2700/827e;">                 {ta/opt  
  
27 0/8271e;">                        int r
	  
code=devicee class="dref">device"dref">32e;">-subm<
	  
code=ops72ption v272lue="v2.6.27.10"
	  >
2720/8272e;">ta/opt  
  
2730/8273e;">                        if (r
	  
code=get_usere class="dref">get_useror">(r
	  
code=devicee class="dref">device"dre, (int r
	  
code=__usere class="dref">__usere;"> *)r
	  
code=arg" class="dref">argor">))ta/opt  
  
2740/8274e;">                                -r
	  
code=EFAULTe class="dref">EFAULTe;">mta/opt  
  
2750/8275e;">                        <
	  
code=m/hex_  cke class="dref">m/hex_  ckor">(&r
	  
code=register_m/hexe class="dref">register_m/hexor">)mta/opt  
  
2760/8276e;">ta/opt  
  
2770/8277e;">                        if (r
	  
code=devicee class="dref">device"dre slbm 0)ta/opt  
  
2780/8278e;">                                <
	  
code=devicee class="dref">device"dre = 0mta/opt  
  
2790/8279e;">                        else if (r
	  
code=devicee class="dref">device"dre slbm <
	  
code=SNDRV_MINOR_HWDEPSe class="dref">SNDRV_MINOR_HWDEPSor">)ta/opt  
  
2800/8280e;">                                <
	  
code=devicee class="dref">device"dre++mta/opt  
  
28 0/8281e;">                        elseta/opt  
  
2820/8282e;">                                <
	  
code=devicee class="dref">device"dre = <
	  
code=SNDRV_MINOR_HWDEPSe class="dref">SNDRV_MINOR_HWDEPSor">mta/opt  
  
2830/8283e;">ta/opt  
  
2840/8284e;">                        whnts (r
	  
code=devicee class="dref">device"dre slbm <
	  
code=SNDRV_MINOR_HWDEPSe class="dref">SNDRV_MINOR_HWDEPSor">) {ta/opt  
  
2850/8285e;">                                if (r
	  
code=snd_32.B	_searche class="dref">snd_32.B	_searchor">(r
	  
code=cards=class="dref">carde;">, <
	  
code=devicee class="dref">device"dre))ta/opt  
  
2860/8286e;">                                        breakmta/opt  
  
2870/8287e;">                                <
	  
code=devicee class="dref">device"dre++mta/opt  
  
2880/8288e;">                        }ta/opt  
  
2890/8289e;">                        if (r
	  
code=devicee class="dref">device"dre subm= <
	  
code=SNDRV_MINOR_HWDEPSe class="dref">SNDRV_MINOR_HWDEPSor">)ta/opt  
  
2900/8290e;">                                <
	  
code=devicee class="dref">device"dre = -1mta/opt  
  
29 0/8291e;">                        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	  
code=register_m/hexe class="dref">register_m/hexor">)mta/opt  
  
2920/8292e;">                        if (r
	  
code=put_usere class="dref">put_useror">(r
	  
code=devicee class="dref">device"dre, (int r
	  
code=__usere class="dref">__usere;"> *)r
	  
code=arg" class="dref">argor">))ta/opt  
  
2930/8293e;">                                -r
	  
code=EFAULTe class="dref">EFAULTe;">mta/opt  
  
2940/8294e;">                        0mta/opt  
  
2950/8295e;">                }ta/opt  
  
2960/8296e;">        case <
	  
code=SNDRV_CTL_IOCTL_HWDEP_INF 
code=32e cSNDRV_CTL_IOCTL_HWDEP_INF e;">:ta/opt  
  
2970/8297e;">                {ta/opt  
  
2980/8298e;">                        struct r
	  
code=snd_32.B	_infoe class="dref">snd_32.B	_infoor"> r
	  
code=__usere class="dref">__usere;"> *<
	  
code=infoe class="dref">infoor"> = (struct r
	  
code=snd_32.B	_infoe class="dref">snd_32.B	_infoor"> r
	  
code=__usere class="dref">__usere;"> *)r
	  
code=arg" class="dref">argor">mta/opt  
  
2990/8299e;">                        int r
	  
code=devicee class="dref">device"dre, <
	  
code=erre class="dref">erre;">mta/opt  
  
3000/8300e;">                        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32.B	e class="dref">32.B	e;">mta/opt  
  
3010/8301e;">ta/opt  
  
3020/8302e;">                        if (r
	  
code=get_usere class="dref">get_useror">(r
	  
code=devicee class="dref">device"dre, &r
	  
code=infoe class="dref">infoor">-subm<
	  
code=devicee class="dref">device"dre))ta/opt  
  
3030/8303e;">                                -r
	  
code=EFAULTe class="dref">EFAULTe;">mta/opt  
  
3040/8304e;">                        <
	  
code=m/hex_  cke class="dref">m/hex_  ckor">(&r
	  
code=register_m/hexe class="dref">register_m/hexor">)mta/opt  
  
305l/8305e;">                        <
	  
code=32.B	e class="dref">32.B	e;"> = r
	  
code=snd_32.B	_searche class="dref">snd_32.B	_searchor">(r
	  
code=cards=class="dref">carde;">, <
	  
code=devicee class="dref">device"dre)mta/opt  
  
306l/8306e;">                        if (r
	  
code=32.B	e class="dref">32.B	e;">)ta/opt  
  
307l/8307e;">                                <
	  
code=erre class="dref">erre;"> = r
	  
code=snd_32.B	_infoe class="dref">snd_32.B	_infoor">(r
	  
code=32.B	e class="dref">32.B	e;">, r
	  
code=infoe class="dref">infoor">)mta/opt  
  
308l/8308e;">                        elseta/opt  
  
309l/8309e;">                                <
	  
code=erre class="dref">erre;"> = ">        if (!><
	  
code=32e class="dref">32e;">-subm<
	  
code=op310ption v3a0lue="v2.6.27.10"
	  >
3 00/8310e;">                        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	  
code=register_m/hexe class="dref">register_m/hexor">)mta/opt  
  
3 10/8311e;">                        <
	  
code=erre class="dref">erre;">mta/opt  
  
3120/8312e;">                }ta/opt  
  
3130/8313e;">        }ta/opt  
  
3140/8314e;">        -r
	  
code=ENOIOCTLCMDe class="dref">ENOIOCTLCMDe;">mta/opt  
  
3150/8315e;">}ta/opt  
  
3160/8316e;">ta/opt  
  
3170/8317e;">#ifdef><
	  
code=CONFIG_COMPATe class="dref">CONFIG_COMPATe;">ta/opt  
  
3180/8318e;">#include &quobm<
	   32.B	_compat.ce;">&quobmta/opt  
  
3190/8319e;">#elseta/opt  
  
3200/830e;"> #def27. r
	  
code=snd_32.B	_ioctl_compate class="dref">snd_32.B	_ioctl_compate;">  r
	  
code=NULLe class="dref">NULLe;">ta/opt  
  
code32alue="v2.6.27.10"
	  >
32 0/8321e;">#endifta/opt  
  
3220/8322e;">ta/opt  
  
3230/8323e;">/*ta/opt  
  
3240/8324e;">ta/opt  
  
3250/8325e;"> */ta/opt  
  
3260/8326e;">ta/opt  
  
3270/8327e;">tion=" const struct r
	  
code=ents_operon=onse class="dref">ents_operon=onsor"> r
	  
code=snd_32.B	_f_opse class="dref">snd_32.B	_f_opse;"> =ta/opt  
  
3280/8328e;">{ta/opt  
  
3290/8329e;">        .<
	  
code=ownere class="dref">ownere;"> =        <
	  
code=THIS_MODULEe class="dref">THIS_MODULEe;">,ta/opt  
  
3300/8330e;">        .<
	  
code=llseeke class="dref">llseeke;"> =       r
	  
code=snd_32.B	_llseeke class="dref">snd_32.B	_llseeke;">,ta/opt  
  
code33alue="v2.6.27.10"
	  >
33 0/8331e;">        .<
	  
code=reade class="dref">reade;"> =         r
	  
code=snd_32.B	_reade class="dref">snd_32.B	_reade;">,ta/opt  
  
3320/8332e;">        .<
	  
code=writee class="dref">writee;"> =        <
	  
code=snd_32.B	_writee class="dref">snd_32.B	_writee;">,ta/opt  
  
3330/8333e;">        .<
	  
code=opene class="dref">opene;"> =         r
	  
code=snd_32.B	_opene class="dref">snd_32.B	_opene;">,ta/opt  
  
3340/8334e;">        .<
	  
code=releasee class="dref">releasee;"> =      r
	  
code=snd_32.B	_releasee class="dref">snd_32.B	_releasee;">,ta/opt  
  
3350/8335e;">        .<
	  
code=polle class="dref">pollor"> =         r
	  
code=snd_32.B	_polle class="dref">snd_32.B	_pollor">,ta/opt  
  
3360/8336e;">        .<
	  
code=un  cked_ioctle class="dref">un  cked_ioctle;"> =       r
	  
code=snd_32.B	_ioctle class="dref">snd_32.B	_ioctlor">,ta/opt  
  
3370/8337e;">        .<
	  
code=compat_ioctle class="dref">compat_ioctle;"> = r
	  
code=snd_32.B	_ioctl_compate class="dref">snd_32.B	_ioctl_compate;">,ta/opt  
  
3380/8338e;">        .<
	  
code=mma	e class="dref">mma	or"> =         r
	  
code=snd_32.B	_mma	e class="dref">snd_32.B	_mma	or">,ta/opt  
  
3390/8339e;">}mta/opt  
  
3400/8340e;">ta/opt  
  
34 0/8341e;">/**ta/opt  
  
3420/8342e;"> * snd_32.B	_new - create a new 32.B	 instance"dspan>ta/opt  
  
3430/8343e;"> * @card: the card instance"dspan>ta/opt  
  
3440/8344e;"> * @id: the id string"dspan>ta/opt  
  
3450/8345e;"> * @device: the device index (zero-based)"dspan>ta/opt  
  
3460/8346e;"> * @r32.B	: the pointer to st2.6 the new 32.B	 instance"dspan>ta/opt  
  
3470/8347e;"> *"dspan>ta/opt  
  
3480/8348e;"> * Creates a new 32.B	 instance with the given index on the card."dspan>ta/opt  
  
3490/8349e;"> * The callbacks (32.B	-submops) must be set on the ta/opt  
  
3500/8350e;"> * after this call manually by the caller."dspan>ta/opt  
  
35 0/8351e;"> *"dspan>ta/opt  
  
3520/8352e;"> * R/forms zero if successful, or a negon=ve error code on failure."dspan>ta/opt  
  
3530/8353e;"> */ta/opt  
  
3540/8354e;">iot r
	  
code=snd_32.B	_newe class="dref">snd_32.B	_newor">(struct r
	  
code=snd_carde class="dref">snd_carde;"> *<
	  
code=cards=class="dref">carde;">, char *<
	  
code=ids=class="dref">ide;">, int r
	  
code=devicee class="dref">device"dre,ta/opt  
  
3550/8355e;">                  struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> **<
	  
code=r32.B	e class="dref">r32.B	e;">)ta/opt  
  
3560/8356e;">{ta/opt  
  
3570/8357e;">        struct r
	  
code=snd_32.B	e class="dref">snd_32.B	e;"> *<
	  
code=32.B	e class="dref">32.B	e;">mta/opt  
  
3580/8358e;">        iot r
	  
code=erre class="dref">erre;">mta/opt  
  
3590/8359e;">        ston=" struct r
	  
code=snd_device_opse class="dref">snd_device_opsor"> r
	  
code=opse class="dref">opse;"> = {ta/opt  
  
3600/836e;">                 .<
	  
code=dev_freee class="dref">dev_freee;"> = r
	  
code=snd_32.B	_dev_freee class="dref">snd_32.B	_dev_free"dre,ta/opt  
  
36 0/8361e;">                .<
	  
code=dev_registere class="dref">dev_registere;"> = r
	  
code=snd_32.B	_dev_registere class="dref">snd_32.B	_dev_register"dre,ta/opt  
  
3620/8362e;">                .<
	  
code=dev_disconnecte class="dref">dev_disconnecte;"> = r
	  
code=snd_32.B	_dev_disconnecte class="dref">snd_32.B	_dev_disconnect"dre,ta/opt  
  
3630/8363e;">        }mta/opt  
  
3640/8364e;">ta/opt  
  
3650/8365e;">        if (r
	  
code=snd_BUG_ONe class="dref">snd_BUG_ONor">(!r
	  
code=cards=class="dref">carde;">))ta/opt  
  
3660/8366e;">                ">        if (!><
	  
code=32e class="dref">32e;">-subm<
	  
code=op367ption v367lue="v2.6.27.10"
	  >
3670/8367e;">        if (<
	  
code=r32.B	e class="dref">r32.B	e;">)ta/opt  
  
3680/8368e;">                *<
	  
code=r32.B	e class="dref">r32.B	e;"> = r
	  
code=NULLe class="dref">NULLe;">f">32e;">-subm<
	  
code=op369ption v369lue="v2.6.27.10"
	  >
3690/8369e;">        <
	  
code=32.B	e class="dref">32.B	e;"> = r
	  
code=kzalloce class="dref">kzallocor">(sizeof(*<
	  
code=32.B	e class="dref">32.B	e;">), r
	  
code=GFP_KERNELe class="dref">GFP_KERNELor">)mta/opt  
  
3700/837e;">         if (r
	  
code=32.B	e class="dref">32.B	e;"> == r
	  
code=NULLe class="dref">NULLe;">) {ta/opt  
  
37 0/8371e;">                r
	  
code=snd_priotke class="dref">snd_priotkor">(r
	  
code=KERN_ERRe class="dref">KERN_ERRor"> rspanue="v2.6string">&quobm32.B	: cannot allocate\n&quobm)mta/opt  
  
3720/8372e;">                -r
	  
code=ENOMEMe class="dref">ENOMEMe;">f">32e;">-subm<
	  
code=op373ption v373lue="v2.6.27.10"
	  >
3730/8373e;">        }ta/opt  
  
3740/8374e;">        r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	  
code=cards=class="dref">carde;"> = r
	  
code=cards=class="dref">carde;">f">32e;">-subm<
	  
code=op375ption v375lue="v2.6.27.10"
	  >
3750/8375e;">        r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	  
code=devicee class="dref">device"dre = <
	  
code=devicee class="dref">device"dref">32e;">-subm<
	  
code=op376ption v376lue="v2.6.27.10"
	  >
3760/8376e;">        if (<
	  
code=ids=class="dref">ide;">)ta/opt  
  
3770/8377e;">                r
	  
code=strlcpye class="dref">strlcpyor">(r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	  
code=ids=class="dref">ide;">, <
	  
code=ids=class="dref">ide;">, sizeof(r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	  
code=ids=class="dref">ide;">))mta/opt  
  
3780/8378e;">#ifdef><
	  
code=CONFIG_SND_OSSEMULe class="dref">CONFIG_SND_OSSEMULe;">ta/opt  
  
3790/8379e;">        <
	  
code=32.B	e class="dref">32.B	e;">-subm<
	  
code=oss_typee class="dref">oss_type"dre = -1mta/opt  
  
3800/8380e;">#endifta/opt  
  
38 0/8381e;">        if ((r
	  
code=erre class="dref">erre;"> =><
	  
code=snd_device_newe class="dref">snd_device_newor">(r
	  
code=cards=class="dref">carde;">, <
	  
code=SNDRV_DEV_HWDEPs=class="dref">SNDRV_DEV_HWDEPe;">, <
	  
code=32.B	e class="dref">32.B	e;">, &r
	  
code=opse class="dref">opse;">)) slbm 0) {ta/opt  
  
3820/8382e;">                r
	  
code=snd_32.B	_freee class="dref">snd_32.B	_free"dre(r
	  
code=32.B	e class="dref">32.B	e;">)mta/opt  
  
3830/8383e;">                <
	  
code=erre class="dref">erre;">mta/opt  
  
3840/8384e;">        }ta/opt  
  
3850/8385e;">        r
	  
code=init_waitqueue_heade class="dref">init_waitqueue_head"dre(&r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	  
code=open_waite class="dref">open_waite;">)mta/opt  
  
3860/8386e;">        <
	  
code=m/hex_inite class="dref">m/hex_init"dre(&r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	  
code=open_m/hexe class="dref">open_m/hexe;">)mta/opt  
  
3870/8387e;">        if (<
	  
code=r32.B	e class="dref">r32.B	e;">)ta/opt  
  
3t"v2.388e;">                *<
	  
code=r32.B	e class="dref">r32.B	e;"> = r
	  
codds="dreg39 iot94a39e=32_ SND3V_MINOe;">mta/opt  
  
code=devicee cla3s="dr39="dref">32.B	e;">mta/opt  
  
cod3=register_m/hexe class="3ref">3egiste2630/8263e;">ta/opt  
  
3e;">{ta/opt  
  
3570/8357e;">        struct r
	  
3870/8387e;"ref">__us3re;"> *)r
	  
code=a3g" cl3ss="drode=32.B	e class="dref">32.B	e;"     -r
	  
code=EFAULT3 clas3="dref">EFAULTe;">mta/opt  
          struct r
	  
3870/8387e;"r2<384ptio  >
2940/8294e;">       3     3          0mta/pt"v2.6.32.B	  2<357ption v357lue="v2.63o-subm<
	 e="v2.6.27.10"
	  >
295038295e39"dref">device"dref">32e;">-subm<8386e;">        <
	  
code=m/hex_inite class== r
	  <2<382ption v382lue== r
	  <2<38  
3870/8387e;"rubm<
	  
code=32e cSNDRV3CTL_I3CTL_HWDEP_INF e;">:ta/f">32e;">-subm<8386e;">        <
	  
code=m/hex_inite class== r
	  <2<382ption v382lue== r
	  <2<38                  r
	  
code=snd_32.B	_freee class="dref">snd_3ion v297l3e="v2.6.27.10"
	  >
297038297e3">            9lue="v2.6.27.102<382ption v382lue=k2<38                  r
	  
code=snd_32.B	_freee class="dref">snd_3i>r32.B	e;ere;"> *)r
	  
code=3rg" c3994a39e=32_ de4ice"dre, <
	  
code=4rre c40_MINOe;">mta/opt  
   *<
	  
code=32.B4e cla4s="dref">32.B	e;">mta/opt  
  ta/opt  
  
code=dev_freee class="3e;">{ta/opt  
  32.B	e;"2.6.class=.6.27.10"
	  >
3570/8ass="dref">snd_32.B	_searchor">(f">32.B	e;">mta/opt  
   *)r
	  
code=a4class40s="drode=32.B	e class="dref">32.B	e;4     -r
	  
code=EFAULT4 clas4="dref">EFAULTe;">{ta/opt  
  
3570/8357e;">        struct r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	 v375lue="v2.6.27.10"
	  >
class="dref">32e;"> 
	  >
class *<
	  
code=r32.B	e class="dre4 
cod4=register_m/hexe class="4ref">4egister_m/hexoopt  
  
3820/8382e;">                r
	  
code=snd_32.B	_freee class="dref">snd_4">carde;"4, <
	  
code=devicee4class4"dref"e;">mta/opt  
  
code=32e cSNDRV4e cla4s="dre;">mta/opt  
  
29704e cla4s="dre2630/8263e;">ta/opt  
  
code=dev_registere class="dref">dev_re3e;">{ta/opt  
  32.B	e;"2.6.class=.6.27.10"
	  >
3570/8ass="dref">snd_32.B	_searchor">(f">32.B	e;">mta/opt  
   *)r
	  
code=4     4      ode=32.B	e class="dref">32.B	e;4ef">erre;4> = ">        if (!><
	 4
4ode=32e class=e;">{ta/opt  
  
3570/8357e;">        struct r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	 v375lue="v2.6.27.10"
	  >
class="dref">32e;"> 
	  >
class *<
	  
code=r32.B	e class="dre4 
cod4=register_m/hexe class="4ref">4egister_m/hexoe;">mta/opt  
  
3580/4         4  <
	  
code=4rre c4ass="dref">err
mta/opt  
  
co2.6.32.B	  2<35>
cos="d[32]v358lue="v2.6.27.10"
	  >
3580/4 3.32.B	 4e="v2.6.27.10"
	  >
312048312e41_MINOR_HWDEPSor">mta/opt  
  
3141/8373e;">        }ta/opt  
   2<304ption v304lue="v2.6.27.10"
	  >
3040/8304e;">                        <
	  
code=m/hex_  cke class="dref">m/hex_  ckor">(&r
	4m>-r
	  <4a>
code=ENOIOCTLCMDe cla4s="dr41	  >
3640/8364e;">ta/opt  
  
code=32.B	e class="dref">32. 
3740/8374e;">        rds=class="dref">carde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
	 code=32.B	e class="dref">32.B	e;46.32.B	  4<315ption v315lue="v2.6.47.10"41="dref">carde;">))ta/    }ta/opt  
   2<300ption v3a0lue="v2.6.27.10"
	  >
3 00/8310e;">                        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	4.6.32.B	 42<316ption v316lue="v2.6427.1041TL_DSP_STATUSe;">:ta/opt  
  
3580/4 8carde;"4code=CONFIG_COMPATe clas4="dre41>            e;">mta/opt  
  ta/opt  
 l_un_add_tai2.B	  2<337ptionl_un_add_tai2e="v2.6.27.10"
	  >
3860/8386e;">        <
	  
code=m/hex_inite class=l_un.B	  2<337ptionl_unSNDRV_DEV_HWDEPs=class="dristere class=&amue="v2.6.27.10"
	  >
2470/8s=&amuass="dref">m/hex_un  ckor">(&r
	4.B	  2<314ption v319lue="v2.6.27.14"
	  420G_SND_OSSEMULe;">ta/opt  
 s"v2.6fe="v2.6.27.10"
	"v2.6fB	e class="dref">32.>
co2.6.32.B	  2<35>
cos="d,=snd_priotke class="dref">snd_C%iD%iode=KERN_ERRerds=class="dref">carde;">, <
	  
code=SNDR 
code=devicee c
	  >
3740/8374e;">         
code=devicee cnumb
code=dev_regnumbcarde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
	dref">m/hex_un  ckor">(&r
	4.
cod4ate;">  r
	  
code=N4LLe c42800/8380e;">#endifta/opt  
  32.B	e;"2.6.hex_un  cclass=B	e class="dref">32.>(r
	  snd_device_newor">(r
	  sn    rref">m/hex_un  ckor">(&r
	4.        4>
code32alue="v2.6.27.104
	  >42              elseta/opt  
  ta/opt  
  
3740/8374e;">        rds=class="dref">carde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
rref">m/hex_un  ckor">(&r
	4.3.32.B	 42<3<2ption v322lue="v2.6427.1042dref">device"dre))ta/opt  
  
code=ents_operon=onse class=rds=class="dref">carde;">, <
	  
code=SNDRV_lass="dref">32.>
co2.6.32.B	  2<35>
cos="d<
	  
code=32.B	e class="dref">32.B	e;42.6.27.104
	  >
3230/8323e;">EFAULTe;">mta/WDEPs=class="driste2.B	  2<37option v37alue="v2.6.27.10"
	  >
37 0/8371e;">                r
	  
code=snd_priotke class="dref">snunable6ptihex_un   /a>dwar.B	 pende;">	  2<34%i:%i
code=KERN_ERRerref">m/hex_un  ckor">(&r
	4.>-r
	  <42<324ption v324lue="v2.6427.1042INOR_HWDEPSor">) {ta/opt  
  carde;">, <
	  
code=SNDR 
code=devicee c
	  >
3740/8374e;">         
code=devicee cnumb
code=dev_regnumbcarde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
	dref">m/hex_un  ckor">(&r
	4..32.B	  4	  >
3250/8325e;">carde;">))ta/    }ta/opt  
 l_un_de2.B	  2<337ptionl_un_de2e="v2.6.27.10"
	  >
3860/8386e;">        <
	  
code=m/hex_inite class=l_un.B	  2<337ptionl_unSNDR	dref">m/hex_un  ckor">(&r
	4.6.32.B	 42<326ption v326lue="v2.6427.1042TL_HWDEP_INF e;">:ta/f">32e;">-subm<  2<300ption v3a0lue="v2.6.27.10"
	  >
3 00/8310e;">                        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	4/a>
code=4nd_32.B	_f_opse class="d4ef">s42"dref">r32.B	e;">)ta/opt  
  
3830/8383e;">   46.32.B	  4<328ption v328lue="v2.6.47.10"4	  >
3280/8328e;">mta/opt  
  
code=THIS_MODULEe cla4s="dr4f">THIef">ide;">))mta/opt  
  
3780/8378e;">#ifdef><
	  4a>
code=s4d_32.B	_llseeke class="d4ef">s4d_32.B	_llseek.10"
	  >
3860/8386e;">        <
	  
code=m/hex_inite class="s  snd_32.B	_"s  32e;">-subm<8386e;">        <
	  
code=m/hex_inite class=
	  >
3790/8379e;">        <
	   >
289>
code=32.B	e class="dref">32.B	e;4
code4snd_32.B	_writee class="4ref">43dref">device"dre))ta/endifta/opt  
          <
	  
code=m/hex_inite class=
	  >
3790/8379e;">        <
	  ue="v2.6.27.10"
	 >(r
	 27.  (r
	 27.  32e;">-subm<8386e;">        <
	  
code=m/hex_inite class=
	  >
3750/8375e;">        r
	  !89>

code=32.B	e class="dref">32.B	e;4<.6.27.104e=snd_32.B	_opene class=4dref"43"dref">EFAULTe;">mta/e;">mta/WDEPs=class="driste2.B	  2<37option v37alue="v2.6.27.1ref">32e;">-subm<	  snonly	  2<34	  2<340tkor="v2hex_un  ed as 27. direct FM4	  2<3!
code=KERN_ERRe class="dref">KERN_ERRor"> rspan4
code=snd432.B	_releasee class="dr4f">sn43INOR_HWDEPSor">) {ta/} 32.B	e;4<.32.B	  4e=snd_32.B	_polle class=4dref"43dref">device"dre)mta/opt  
  32.B	e;"2.6.hex_un  c    class=B	e class="dref">32. 
3790/8379e;">        <
	  m/hex_un  ckor">(&r
	4
code4snd_32.B	_ioctle class="4ref">43="dref">32.B	e;">)ta/opt  
  mta/e;">mta/WDEPs=class="dr 
3740/8374e;">        rds=class="dref">carde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
rref">m/hex_un  ckor">(&r
	432.B	_ioc4l_compate class="dref">s4d_32.43device"dre slbm 0)ta/opt  
  
code=ents_operon=onse class=rds=class="dref">carde;">, <
	  
code=SNDRVref">m/hex_un  ckor">(&r
	43.32.B	  4e=snd_32.B	_mma	e class=4dref"43              elseta/opt  
  mta/e;">mta/WDEPs=class="dr         claass=".D 
code=32.B	e class="dref">32.B	e;4.32.B	  24339ption v339lue="v2.6.24.10"
44_MINOR_HWDEPSor">)ta/opt  
  
37 0/8371e;">                r
	  
code=snd_priotke class="dref">snunable6ptihex_un   27. ef">coibility>	  2<34%i:%i
code=KERN_ERRerref">m/hex_un  ckor">(&r
	4.6.32.B	 42<340ption v340lue="v2.6427.1044gister_m/hexor">)mta/opt  
  ULTe;">mta/e;">mta/WDEPs=class="dr 
3740/8374e;">         
code=devicee cnumb
code=dev_regnumbcarde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
	dref">m/hex_un  ckor">(&r
	4.6.27.10"4	  >
34 0/8341e;"> *4snd_32.B	_new - create a4new 344dref">device"dre))ta/opt  
  
3860/8386e;">        <
	  
code=m/hex_inite class="s  snd_32.B	_"s  32.B	e;">4e;"> * @card4 the 44"dref">EFAULTe;">mta/e;">mta/opt  
  mta/opt  
   * @device: the device4index4(zero-ype"dre = -1mta/opt  
  32.B	f">32e;">-subm<  2<300ption v3a0lue="v2.6.27.10"
	  >
3 00/8310e;">                        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	42.6.27.104
	  >
3470/8347e;">mta/opt  
  
3390/8339e;">}mta/opt  
   * after this call manu4lly b4 the c2630/8263e;">ta/opt  
  
code=dev_disconnecte class="dref">dev_disconne3e;">{ta/opt  
  32.B	e;"2.6.class=.6.27.10"
	  >
3570/8ass="dref">snd_32.B	_searchor">(f">32.B	e;">mta/opt  
  
35 0/8351e;">32.B	e;4o if succ4ssful, or a negon=ve err4r cod45dref">device"e;">{ta/opt  
  
3570/8357e;">        struct r
	  
code=32.B	e class="dref">32.B	e;">-subm<
	 v375lue="v2.6.27.10"
	  >
class="dref">32e;"> 
	  >
class *<
	  
code=r32.B	e class="dre4.6.27.10"4	  >
3530/8353e;">        }mta/opt  
  ide;">, 4nt r
	  
code=device4 clas45	  >
3640/8364e;">ta/opt  
  
3650/             r
	  
code=sn(f">32.B	e;">mta/opt  
  
code=r32.B	4 clas45="dref">carde;">))ta/opt  
  
3660/8366e;">        46.32.B	  4<356ption v356lue="v2.6.47.10"45="dref">32.B	f">32e;">-subm<  2<304ption v304lue="v2.6.27.10"
	  >
3040/8304e;">                        <
	  
code=m/hex_  cke class="dref">m/hex_  ckor">(&r
	4snd_32.B	4;"> *<
	  
code=32.B4e cla4s="dref">32.B	ee;">ta/opt  
  
code=32.B	e class="dref">32. 
3740/8374e;">        rds=class="dref">carde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
) !89.10"
	  >
3650/             r
	  
code=sncode=32.B	e class="dref">32.B	e;4358e;">  4     iot r
	  
code=4rre c45              elseta/f">32e;">-subm<  2<300ption v3a0lue="v2.6.27.10"
	  >
3 00/8310e;">                        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	4_device_o4sor"> r
	  
code=ops4 clas4="dref">opse;"> = {ta/opt  
  
3660/8366e;">        4ode=snd_34.B	_dev_freee class="dre4">snd432.B	_dev_freee;">mta/opt  
  s4d_32.4	_dev_ef">ide;">))mta/opt  
  
3780/8378e;">#ifdef><
	  4	_dev_dis4onnecte class="dref">snd432.B	4dev_disconnect"dref">32e;">-subm<8386e;">        <
	  
code=m/hex_inite class=
	  snd_32.B	_"s  32.B	e;">mta/opt  
  
36346"dref">EFAULTe;">mta/WDEPs=class="dristeunhex_un  c    class="dref">32.B	e;"2.6.unhex_un  c    class=B	e class="dref">32. 
3790/8379e;">        <
	  
3740/8374e;">        rds=class="dref">carde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
"dref">m/hex_un  ckor">(&r
	4_ide;">, 42<364ption v364lue="v2.6427.104
	  >
ype"dre = -1mta/opt  
  (!r
	  
code=car4s=cla46f">open_waite;">)mta/opt  
 2.6.unhex_un  cclass="dref">32.B	e;"2.6.unhex_un  cclass=B	e class="dref">32.>(r
	  snd_device_newor">(r
	  sn    r/WDEPs=class="dr 
3740/8374e;">        rds=class="dref">carde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
"dref">m/hex_un  ckor">(&r
	4_.32.B	  4orm>">        if (!><
	 4
46="dref">32.B	f">32e;">-subm
3860/8386e;">        <
	  
code=m/hex_inite class=l_un.B	  2<337ptionl_unSNDR	dref">m/hex_un  ckor">(&r
	4>        4f (<
	  
code=r32.B	4 clas46>            9lue="v2.6.27.1  2<300ption v3a0lue="v2.6.27.10"
	  >
3 00/8310e;">                        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	4_58e;">  4e;"> = r
	  
code=NU4Le cl4694a39e=32_ mta/opt  
  32.B	e;4> == r
	  
code=NULL4 clas47="dref">32.B	e;">mta/opt  
  &quobm32.B	: cannot4alloc47_dev_ef">ide;">))mta/opt  
  32.B	e;">mta/opt  
  -r
	  
code=ENOMEM4 clas47	  >
3220/8322e;">ta/opt  
  
3747rd instance"dspan>ta/opt  
  < Info  2<34fa"> * The callback4dref">car4e;"> = r
	  
code=ca4ds=cl47	  >
3240/8324e;">ta/opt  
  
code=device4 clas47ommepte> */ta/opt  
  4       if (<
	  
cod4=ids=47	  >
3260/83voidv2.6.27.10"
	  >
3350/8335eroc_e;">        .<
	  
code=reroc_e;">onne3e;">{ta/opt  
  
3570/8pt rB	  2<377ption vpt rB.6.2rref">m/hex_un  ckor">(&r
	4ref">32.B4e;">-subm<
	  
code=4ds=cl47device"dre slbm 0)ta/opt  
  {ta/opt  
  
code=dev_registe	_in_buff
3570/8buff
code=dev_regbuff32.B	e;">mta/opt  
  CO47     ode=32.B	e class="dref">32.B	e;4subm<
	  4/a>
code=oss_typee class4"dref48de=32e class=e;">{ta/opt  
  
3570/8357e;">        struct r
	  48="dref">32.B	e;">mta/opt  
  , &r4	  
code=opse class=4dref"4opse;">)) slbmf">32e;">-subm<  2<304ption v304lue="v2.6.27.10"
	  >
3040/8304e;">                        <
	  
code=m/hex_  cke class="dref">m/hex_  ckor">(&r
	42.B	_free4dre(r
	  
code=32.B	4 clas4="dref">32.B	ef">32e;">-subm32. 
2470/8s=&amuass=rds=class="dref">l_un.B	  2<337ptionl_unSNDR	"dref">m/hex_  ckor">(&r
	42op373pti4  <
	  
code=4rre c48"dref">EFAULTe;">mta/WDEPs=class="dristei"v2.6fe="v2.6.27.10"
	stei"v2.6fB	e class="dref">32.buff
code=dev_regbuffsn%02i-%02i:4%s
code=KERN_ERRerref">m/hex_un  ckor">(&r
	4 2<384pti4n v384lue="v2.6.27.10"
	4 >
3848INOR_HWDEPSor">) {ta/opt  
  
3740/8374e;">         
code=devicee cnumb
code=dev_regnumbcarde;">, <
	  
code=SNDR 
code=devicee class="dref">device"dre, &r
rds=class="dref">carde;">, <
	  
code=SNDR 
code=devicee c>
co2.6.32.B	  2<35>
cos="d<="dref">m/hex_  ckor">(&r
	42evice"dr4 
code=open_waite cl4ss="d4ef">open_waite;">)mta/opt  
  
3 00/8310e;">                        <
	  
code=m/hex_un  cke class="dref">m/hex_un  ckor">(&r
	4subm<
	  4/a>
code=open_m/hexe cla4s="dr4f">opee;">mta/opt  
          4f (<
	  
code=r32.B	4 clas4="dref;">mta/opt  
  ode=CONF4"> = r
	  
codds="dr4g39 i4t94a39e;">mta/opt  
  
3570/8/a>
code=reroc_pt rB	  2<377ption v3.6.code=reroc_pt rB  SND49 >
3390/8339e;">}mta/opt  
  
code=devicee cla4s="dr49the c2630/82voidv2.6.27.10"
	  >_"v2.6.32.B	  2<386pt_"v2.6e="vv2.6.27.10"
	  >
3350/8335eroc_v2.6.32.B	  2<386pt
3350/8335eroc_v2.63 00/void	"dref">m/hex_  ckor">(&r
	4 
cod4=register_m/hexe class="4ref">49commeode=32.B	e class="dref">32.B	e;4ref">__us4re;"> *)r
	  
code=a4g" cl49dref">device"e;">{ta/opt  
  
3570/8pt rB	  2<377ption vpt rB.6.232.B	  2<357ption v357lue="v2.64oop373pti4m>-r
	  
code=EFAULT4 clas498363e;">        }mta/opt  
  
2940/8294e;">       4     49	  >
3640/8364e;"fta/opt  
  32.3290/8329e;">        .<
	  
code=owner=snd_priotke class="dref">snd_priode=KERN_ERRerds=class="dref"> >
3700/837e;">         if () !89.10"
	  >
3650/ >
3700/837e;">         if (r
	  
code=32.B	e class="dre4o-subm<
	4e="v2.6.27.10"
	  >
295048295e49="dref">carde;">))ta/    }ta/opt  
 "t rB	  2<377ption vpt rB.6.2v374lue="v2.6.27.10"
>
3740/8374e;"> .6.2opt  
  
code32.6.27.10"
	  >
3350/8335eroc_e;">        .<
	  
code=reroc_e;">onne32.B	  2<357ption v357lue="v2.64oubm<
	  4INF 
code=32e cSNDRV4CTL_I4CTL_HWDEP_INF e;">:ta/ee;">ta/opt  
  
code=dev_registe	_in_.<
	  32."t rB	  2<377ption vpt rB.6.2".D 
code=32.B	e class="dref">32.B	e;4ion v297l4e="v2.6.27.10"
	  >
297048297e49device"dre slbm 0)ta/opt  
  >ta/opt  
  32."t rB	  2<377ption vpt rB.6.2"32.B	  2<357ption v357lue="v2.64oode=CONF4ere;"> *)r
	  
code=4rg" c49              elseta/opt  
  ta/opt  
                  *<
	  
code=r32.B	e class="d5"dref">de5ice"dre, <
	  
code=5rre c50"dref">opse;"> = {ta/e;">mta/opt  
   *<
	  
code=32.B5e cla502.B	_dev_freee;">mta/opt  
  )) slbmf">32e;">-subm
code=reroc_pt rB	  2<377ption v3.6.code=reroc_pt rB   *)r
	  
code=a5class50s="dre;">mta/opt  
  -r
	  
code=EFAULT5 clas508363e;">        }mta/opt  
  
cod5=register_m/hexe class="5ref">5egiste2630/82voidv2.6.27.10"
	  >_"ex.6.32.B	  2<386pt_"ex.6e="vv2.6.27.10"
	  >
3350/8335eroc_don="dref">32.B	e;"2.6.0/8335eroc_don=3 00/void	"dref">m/hex_  ckor">(&r
	5">carde;"5, <
	  
code=devicee5class50"dref">r32.B	e;">)ta/opt  
  
code=32e cSNDRV5e cla50="dref">32.B	f">32e;">-subm32./a>
code=reroc_pt rB	  2<377ption v3.6.code=reroc_pt rB  
29705e cla5s="dree;">mta/opt  
   *)r
	  
code=5     5      #ta/opt  
   !8lue="vPROC_FS  erre;5> = ">        if (!><
	 5
5ode=32#def  iv2.6.27.10"
	  >
3350/8335eroc_v2.6.32.B	  2<386pt
3350/8335eroc_v2.63 00/	"dref">m/hex_  ckor">(&r
	5 
cod5=register_m/hexe class="5ref">5egiste#def  iv2.6.27.10"
	  >
3350/8335eroc_don="dref">32.B	e;"2.6.0/8335eroc_don=3 00/	"dref">m/hex_  ckor">(&r
	5 6.32.B	 5  <
	  
code=5rre c5ass="dype"dr"3220/8322e;">ta/opt  
   8lue="vPROC_FS  
312058312e51_MINOR_HWDEPSor">mta/opt  
  
31518363e;">        }mta/opt  
  -r
	  <5a>
code=ENOIOCTLCMDe cla5s="dr51	  >
3240/8324e;">ta/opt  
  ta/opt  
  < ENTRY functionsta/opt  
  mta/opt  
  mta63e;">ta/opt  
  alsa.0/8335v2.6.32.B	  2<386ptalsa.0/8335v2.63 00/void	"dref">m/hex_  ckor">(&r
	5.B	  2<315ption v319lue="v2.6.27.15"
	  520G_SN">r32.B	e;">)ta/opt  
  
cod5ate;">  r
	  
code=N5LLe c52_32.B	_llseek.10"
	  >
3860/
3350/8335eroc_v2.6.32.B	  2<386pt
3350/8335eroc_v2.63 00/	32.B	  2<357ption v357lue="v2.65.        5>
code32alue="v2.6.27.105
	  >52pse;">)) slbmf">32e;">-subm
ctl.hex_un  cioctl.32.B	  2<386pt
335ctl.hex_un  cioctlB	e class="dref">32./a>
code=rcot rolcioctl.32.B	  2<386pt
335code=rcot rolcioctl  32.B	ef">32e;">-subm<
335ctl.hex_un  cioctl_ef">co.32.B	  2<386pt
335ctl.hex_un  cioctl_ef">coB	e class="dref">32./a>
code=rcot rolcioctl.32.B	  2<386pt
335code=rcot rolcioctl  
3230/8323e;">EFAULTpt"v2.6.32.B	  2<357ption v357lue="v2.65.>-r
	  <52<324ption v324lue="v2.6527.1052INOR_e;">mta/opt  
  
3250/8325e;"> */ta/opt  
  _"ex.6.32.B	  2<386pt_"ex.6e="vv2.6.27.10"
	  >alsa.0/8335ex.6.32.B	  2<386ptalsa.0/8335ex.63 00/void	"dref">m/hex_  ckor">(&r
	5.8carde;"5nd_32.B	_f_opse class="d5ef">s52"dref">r32.B	e;">)ta/opt  
  ta/opt  
 
335ctl.unhex_un  cioctl.32.B	  2<386pt
335ctl.unhex_un  cioctlB	e class="dref">32./a>
code=rcot rolcioctl.32.B	  2<386pt
335code=rcot rolcioctl  
code=THIS_MODULEe cla5s="dr530G_SND_OSSEMULe;">ta/opt  
 s335ctl.unhex_un  cioctl_ef">co.32.B	  2<386pt
335ctl.unhex_un  cioctl_ef">coB	e class="dref">32./a>
code=rcot rolcioctl.32.B	  2<386pt
335code=rcot rolcioctl  
cod5d_32.B	_llseeke class="d5ef">s5d_32.B	_llseek.10"
	  >
3860/
3350/8335eroc_don="dref">32.B	e;"2.6.0/8335eroc_don=3 00/	32.B	  2<357ption v357lue="v2.65         5e=snd_32.B	_reade class=5dref"5snd_32e;">mta/opt  
  
code5snd_32.B	_writee class="5ref">53_MINOR_HWDEPSor">mta/opt  
  )mta/opt  
  odule_v2.6.32.B	  2<386ptiodule_v2.6B	e class="dref">32.alsa.0/8335v2.6.32.B	  2<386ptalsa.0/8335v2.63 00	"dref">m/hex_  ckor">(&r
	5
code=snd532.B	_releasee class="dr5f">sn53INOR_;">)mta/opt  
  odule_ex.6.32.B	  2<386pt odule_ex.6B	e class="dref">32.alsa.0/8335ex.6.32.B	  2<386ptalsa.0/8335ex.63 00	"dref">m/hex_  ckor">(&r
	5
.32.B	  5e=snd_32.B	_polle class=5dref"53ommepte> */ta/opt  
  
code5snd_32.B	_ioctle class="5ref">53="drelass="dref">32.EXPORT_SYMBO  2<378ption v37 XPORT_SYMBO B	e class="dref">32./a>
code=r/8381e;">        if ((code=r/83  s5d_32.53devic


The original LXR softwar.Bby thiv2.6.27.10http://7ptrceforge.net/projects/lx/a>LXR ta/ou2.6B.6.2r this experiopt al versionBby 2.6.27.10mailto:lx/@lasux.no">lx/@lasux.no.6.2o
lx/.lasux.no kindly oun dBby 2.6.27.10http://www.redpill-laspro.no">Redpill Laspro AS.6.2r provider of Lasux tansulting and operations ser=&amu since 1995.