linux/drivers/pci/htirq.c
<<
tion v/spa v/form va tion href="../linux+v3="v10/drivers/pci/htirq.c">tion vimg src="../.static/gfx/right.png" alt=">>">tiv/spa tivspa class="lxr_search">tiontion vinput typionhidden" namionnavtarget" /option">tion vinput typiontext" namionsearch" idonsearch">tion vbutt12Searchtion Prefs v/a>tiv/spa on v/div on vform ac12" ="ajax+*" method="post" onsubmit="return false;">tivinput typionhidden" namionajax_lookup" idonajax_lookup" /option">ton v/form ton vdiv class="headingbott1m">
vdiv idonfile_contents"
   1v/a>vspa
 class="comment">/*v/spa
	    2v/a>vspa
 class="comment"> * File:        htirq.cv/spa
	    3v/a>vspa
 class="comment"> * Purpose:     Hypirtransport Interrupt Capabilityv/spa
	    4v/a>vspa
 class="comment"> *v/spa
	    5v/a>vspa
 class="comment"> * Copyright (C) 2006 Linux Networxv/spa
	    6v/a>vspa
 class="comment"> * Copyright (C) Eric Biederma
 <ebiederma
@lnxi.com>v/spa
	    7v/a>vspa
 class="comment"> */v/spa
	    8v/a>t   9v/a>#include <linux/irq.hv/a>>t  "v3.a>#include <linux/pci.hv/a>>t  113.a>#include <linux/spinlock.hv/a>>t  123.a>#include <linux/export.hv/a>>t  133.a>#include <linux/slab.hv/a>>t  143.a>#include <linux/htirq.hv/a>>t  15v/a>t  16v/a>vspa
 class="comment">/* Global ht irq lock.v/spa
	   17v/a>vspa
 class="comment"> *v/spa
	   18v/a>vspa
 class="comment"> * This is needed to serialize access to the data port in hypirtransportv/spa
	   19v/a>vspa
 class="comment"> * irq capability.v/spa
	   20v/a>vspa
 class="comment"> *v/spa
	   21v/a>vspa
 class="comment"> * With multiple simultaneous hypirtransport irq devices it might payv/spa
	   22v/a>vspa
 class="comment"> * to make this more fine grained.  But start with simple, stupid, and correct.v/spa
	   23v/a>vspa
 class="comment"> */v/spa
	   243.a>static va href="+code=DEFINE_SPINLOCK" class="sref">DEFINE_SPINLOCK3.a>(va href="+code=ht_irq_lock" class="sref">ht_irq_lock3.a>);t  25v/a>t  263.a>struct va href="+code=ht_irq_cfg" class="sref">ht_irq_cfg3.a> {t  27v/a>        struct va href="+code=pci_dev" class="sref">pci_devv/a> *va href="+code=dev" class="sref">devv/a>;t  28v/a>         vspa
 class="comment">/* Update callback used to cope with buggy hardware */v/spa
	   29v/a>        va href="+code=ht_irq_update_t" class="sref">ht_irq_update_tv/a> *va href="+code=update" class="sref">updatev/a>;t  30v/a>        unsigned va href="+code=pos" class="sref">posv/a>;t  31v/a>        unsigned va href="+code=idx" class="sref">idxv/a>;t  32v/a>        struct va href="+code=ht_irq_msg" class="sref">ht_irq_msgv/a> va href="+code=msg" class="sref">msgv/a>;t  33v/a>};t  34v/a>t  35v/a>t  363.a>vy4 class="line" namionLef="drivers/pci/htirq_msg" class="sy
	  >
  v3.0.18href="+cohref="+coincode=ht_irq_msg" .18f">idxv/a>;tht_irq_msgv/a> va href="+coode=update" classref">msgv/a>;t  27v/a>3     3 strurivers/pci/htirq.c#L27" idonL27"3class="l3ne" namionL28">  28v/a>3     38struct va href="+code=ht_irq_msg" class="sref">ht_irq_cfg3.a> {tht_irq_cfg3. href="d=ode=ht_irq_msg" .18_get_hv/sler_ hypf">idxv/a>;tidxv/a>;t  29v/a>3     39unsigned va href="+colongode=ht_irq_msg" flagef">posv/a>;t  30v/a>4     40va href="+code=ht_irq_updata>&gupdatev/a>;ta>&ght_irq_lock3.a>);tposv/a>;t  31v/a>4     4 unsigned va if ode=ht_irq_lock"sref">ht_irq_cfg3. href="-msgv/a>;tmsgv/a>;tmsgv/a>;tmsgv/a>;t  32v/a>4     4 struct va hrref="+code=ht_irq_updat*va  >
  vconfig_byref">updatev/a>;t*va  >
  vconfig_byre="+code=ht_irq_lock"sref">ht_irq_cfg3. href="-devv/a>;tht_irq_cfg3. href="-posv/a>;tht_irq_cfg3. href="-idxv/a>;t  33v/a>4;tupdatev/a>;t*va  >
  vconfig_dword="+code=ht_irq_lock"sref">ht_irq_cfg3. href="-devv/a>;tht_irq_cfg3. href="-posv/a>;tmsgv/a>;tmsgv/a>;t   4v/a>vs  35v/a>4ht_irq_cfg3. href="-msgv/a>;tmsgv/a>;tmsgv/a>;tmsgv/a>;t  363.a>4y4 cl46struct va hrref="+code=ht_irq_updat*va  >
  vconfig_byref">updatev/a>;t*va  >
  vconfig_byre="+code=ht_irq_lock"sref">ht_irq_cfg3. href="-devv/a>;tht_irq_cfg3. href="-posv/a>;tht_irq_cfg3. href="-idxv/a>;t  27v/a>4     47struct va hrref="+code=ht_irq_updat*va  >
  vconfig_dwordf">updatev/a>;t*va  >
  vconfig_dword="+code=ht_irq_lock"sref">ht_irq_cfg3. href="-devv/a>;tht_irq_cfg3. href="-posv/a>;tmsgv/a>;tmsgv/a>;t  28v/a>4     48struct va hr}ivers/pci/htirq.c#L25" idonL25"4class="l4ne" namionL29">  29v/a>4     49unsigned va if ode=ht_irq_lock"sref">ht_irq_cfg3. href="-updatev/a>;t  30v/a>5     50struct va hrref="+code=ht_irq_updatsref">ht_irq_cfg3. href="-updatev/a>;tht_irq_cfg3. href="-devv/a>;tidxv/a>;tmsgv/a>;t  31v/a>5     5 unsigned va de=ht_irq_updata>&gupdatev/a>;ta>&ght_irq_lock3.a>);tposv/a>;t  32v/a>5     52unsigned va de=ht_irq_updatsref">ht_irq_cfg3. href="-msgv/a>;tmsgv/a>;t  33v/a>5;t   4v/a>v5   5v/a>vsidxv/a>;tht_irq_msgv/a> va href="+coode=update" classref">msgv/a>;t  363.a>5y4 cl56strurivers/pci/htirq.c#L27" idonL27"5class="l5ne" namionL27">  27v/a>5     5 struct va href="+code=pci_dev" claclass="sref">ht_irq_cfg3.a> {tht_irq_cfg3. href="d=ode=ht_irq_msg" .18_get_hv/sler_ hypf">idxv/a>;tidxv/a>;t  28v/a>5     58struct va hrode=update" classref">msgv/a>;tht_irq_cfg3. href="-msgv/a>;t  29v/a>5     59ef="divers/pci/htirq.c#L25" idonL25"6class="l6ne" namionL30">  30v/a>6     60="drivers/pci/htirq.c#L35" idonL35"6class="l6ne" namionL31">  31v/a>6     61s="line" namionLef="drivmaskci/htirf">msgv/a>;tidxv/a>;tidxv/a>;t  32v/a>6     62strurivers/pci/htirq.c#L27" idonL27"6class="l6ne" namionL33">  33v/a>6;tht_irq_cfg3.a> {tht_irq_cfg3. href="d=ode=ht_irq_msg" .18_ hyp_get_.18_hv/sler_ hypf">idxv/a>;tidxv/a>;t   4v/a>v6  33v/a>6;tht_irq_msgv/a> va href="+code=msg" class="sref">msgv/a>;t6vers/pci/htirq.c#L25" i6onL256 class="line" namionL34">  34v/a>t   5v/a>>vspa
 class="comment"> href=6lasaddrata  31v/a>4     4 unsigned va if ode=ht_irq_lock"sref">ht_i|= 1s="sref">msgv/a>;tht_irq_cfg3. href="-ht_irq_cfg3. href="d=ode=ht_irq_msg" .18_ef="d?a> 528"
	  >6vet  31v/a>5   3de=ht_irq_msg" .18skci/htirf"_4"d?a> 528"
	  >6vet
 a> 528ht_iig3.a> {_4"d?a> 528"
	  7
"0ption vypf">idx2="option value="v"ode=ht_irq_lock"sref">ht_i|= 1s="sref"  7
"8"
	  7
"0ption vypf">idx2="option valE0#L25"70idonL25"6class="l6ne" naunmionL30">  30v/a>6     60=unmionL30">  i/htirq.c#L35" idonL35"6class="l6ne" namionL31">  31v/a>6     61s="line" namionLef="drivmaskci/htirf">msgv/a>;t5   7 59ef="divers/pci/htirq7c#L2571 hyp="+ccode=dev" class="shypf">idxv7=pci_dev7 clahrq_ hypf">idxv/a>;7idxv/a>;     62strurivers/pci/htirq.c#L27" idonL27"6class="l6ne" namionL33">  33v/a>6;tht_irq_cfg3.a> {tht_irq_cfg3. href="d=ode=ht_irq_msg" .18_ hyp_get_.18_hv/sler_ hy7a>;t  32v/a>6a  hyp="+c)rivers/pci/htirq.c#L25" idonL25"6lass="li6ne" namionL4">   4v/a>v6  33v/a>6;tht_irq_msgv/a> va href="+code=msg" class="sref">msgv/a>;tidxv/7q_ hypf">s0">  20v/a>vspa
 class="comment"> *v/spa7onL35"6class="l6ne" namionL31">  31v.7.5"
	 ss="sref">ht_irq_cfg3.a> {t="comment">/* Update callback used to co75  4 unsigned va if ode=ht_irq_lock"sref">ht_i|= 1s="sref">msgv/a>;t 52= ~ id6nL36"67asaddrata  317/a>4 7   4 unsigned va if ode=ht_i3. href="d=ode=ht_irq_msg" .18_ef="d?a> 528"
	  >6vet  31v/a>5   3de=ht_irq_msg" .18skci/htirf"_4"d?a> 528"
	  >6vet
 a> 528ht_iig3.a> {_4"d?a> 528"
	  7
"0pt7gt;v/spa

	 ht_i|= 1s="sref"  7
"8"7on vypf"7idx2="option value="v"o7e=ht_7.c#L8" idonL8" class="line" namionL87	  7
"0p7ion vypf">idx2="option 7alE0#7L19" idonL19" class="line" /*amionL20">  20v/a>vspa
 class="comment"80">  30v8a>6     60=unmionL30"> 8i/hti8L20" idonL20" class="line" na _?a> cre=ht_omm - cre=ht nL2omm graiattache sito a multiput start with simple, stupid, and corre8idxv7=pc8_dev7 clahrq_ hypf">idx8/a>;78L21" idonL21" class="line" nam@mul: Thes="comment"> * Wmultipito firai * TionL19">  19v/ onut start with simple, stupid, and corre8>idxv/a>8     62strurivers/pci/h8irq.c8L22" idonL22" class="line" nam@idx: Whicheofi * Tpossibl Tionent">attachetout start with simple, stupid, and corre8  32v/a>8a  hyp="+c)rivers/pci/h8irq.c8.c#L3" idonL3" class="line" na@cfg3. : Fun v/a>nt">ba>    ed wheonL_gegingi * Tand c mi/haget start with simple, stupid, and corre8="l6ne" 8amionL31">  31v.7.5"
	 8s="sr8.c#L4" idonL4" class="line" namionL4">   4v/a>vspa
 class="comment"8comment"8/* Update callback used8to co8.c#L5" idonL5" class="line" naT* TionLnumbereofi * TnewTionLor a negatpa
 error den" 18"> ac12"edut start with simple, stupid, and corre825"4clas8="l4ne" namionL31">  318/a>4 8.c#L6" idonL6" class="line" namionL7">   7v/a>vspa
 class="comment"> gt;v/spa8
	 
 _?a> cre=ht_omm namionLef="drivmaskci/htir7">  27v/a>        struct va href="+code=pci_dev" class="sref">pci_devv/a> ,/htirq_msg" class="syq_msg" sref">ht_irq_cfg3ht_irq_msg" classamionL29">  29v/a>        va href="+code=ht_irq_update_t" class="sref">ht_irq_update_tv/a> *va hr1 hyp="+ccode=dev" class="shypf"8 */v/spa

	 idx2="option 8alE0#8925" idonL25"6lass="li6ne" namionL4">   4vv/a>6;tht_irq_cfg3.a> _iig3.a> {_4"d?a> 528"
	  7
"0pt90">  30v9a>6     60=unmionL30"> 9i/hti9L30" idonL30" class="l3ne" namionL29">  29v/a>3     39unsigned va href="+colongode=ht_irq_msg" flagef">9idxv7=pc9_dev7 clahrq_ hypf">idx9/a>;79L25" idonL25"5class="l5ne" nu;t"+colongode=ht_irq_msg" flagef">9>idxv/a>9     62strurivers/pci/h9irq.c9L27" idonL27"htirq_msg" class="smaxnL31">  31v/a>6     6x_omm nam"+colongode=ht_irq_msg" flagef">9  32v/a>9a  hyp="+c)rivers/pci/h9irq.c9327" idonL27"htirq_msg" class="s>  30v/a>        unsigned va href="+code=pos" class="sref9="l6ne" 9amionL31">  31v.7.5"
	 9s="sr9427" idonL27"htirq_msg" class="srq_msg" .18skci/htirf"_4" va href="+code=pos" class="sref9comment"9/* Update callback used9to co9527" idonL27"htirq_msg" class="sns="msg" .18skci/htns=""_4" va href="+code=pos" class="sref925"4clas9="l4ne" namionL31">  319/a>4 96c#L8" idonL8" class="line" namionL89gt;v/spa9
	 ht_irq_cfgrq_msg" sref">ht_irq_cfg3.va href="+code=msuct fira?a> c9">  19v/v/a>        struct fira?a> c9">  19v/ >6vetht_irq_cfg3. href="-ht_iHT_CAPTYPE_IRQ528ht_iig3.a> {_4"d?a> 528"
	  7
"0pt9 */v/spa9
	 ht_irq_cfgrq_msg" sref">ht_irq_cfg31 hyp="+ccode=dev" class="shypf"9">   8v/aa>tht_irq_cfgEINVALmsg" sref">ht_iEINVAL"_4" va href="+code=pos" class="sref10hv/a>>tt>0t Verifyi * Tidx I wansito us 18">in entg callback used to cope with buggy hardware10hv/a>>0t  30v/a>4     40va href="+code=ht_irq_updata>&gupdatev/a>;ta>&ght_irq_lock3.a>);tp10hv/a>>0tht_irq_cfgr>  363.a>4y4 cl46struct va hrref="+code=ht_irq_updat*va  >
  vconfig_byref">sq_lock"sref">ht_irq_cfg3. href="-ht_irq_cfg3. hrefref="-idx10hv/a>>0tht_irq_cfgr>  re=d>4     47struct va hrref="+code=re=d>4     47stru >
  vconfig_byref">sq_lock"sref">ht_irq_cfg3. href="-ht_irq_cfg3. h4d?a> 528"
	  >6vet>0t  31v/a>5     5 unsigned va de=ht_irq_updata>&gupdatev/a>;ta>&ght_irq_lock3.a>);tp10>  15v/a>0tht_irq_cfgmaxnL31">  31v/a>6     6x_omm nam.vaet vimg src 16)?a> 52 0xffhref=",ode=ht_irq_msg" flagef">p10 *v/spa
	0 ht_irq_cfg3 vimg-ht_irq_cfgmaxnL31">  31v/a>6     6x_omm nam1 hyp="+ccode=dev" class="shypf"10rtv/spa
	0 ht_irq_cfgEINVALmsg" sref">ht_iEINVAL"_4" va href="+code=pos" class="sref1.hv/a>>;t>ttht_irq_cfg3.a> {tht_irq_ckmal&am namioizeof(=pci_dev" claclass="sref">ht_irq_cfg3.a> )ht_irq_msg" classGFP_KERNELmsg" sref">ht_iGFP_KERNEL;tp1.hv/a>>;tht_irq_cfgss="sref">ht_irq_cfg3.a> )ref=",ode=ht_irq_msg" flagef">p1.hv/a>>;tht_irq_cfgENOMEMmsg" sref">ht_iENOMEM"_4" va href="+code=pos" class="sref1.hv/a>>;tht_irq_cfg3.a> {t=1.hv/a>>;tupdatev/a>;tht_irq_cfg3{tpci_devv/a> *va href="+code=dev" class="sref1">  15v/a>>t  30v/a>5     50struct va hrref="+code=ht_irq_updatsref">ht_irq_cfg3. href{tht_irq_update_tv/a> *va href="+code=update" class="sref">u1ck.v/spa
		 ht_irq_cfgpdate" classref">devv/a>;tht_irq_cfg3.va href="+code=msu  30v/a>        unsigned va href="+code=pos" class="sref1> *v/spa
		 ht_irq_cfgpdate" classref">devv/a>;tht_irq_cfg3 = 0x10. ht_hv/sler_ hypf">q_msg" sref">ht_irq_cfg3 * 2 href=",ode=ht_irq_msg" flagef">p1.rtv/spa
		  Init class=msgito a den" 1thato mll neirq matchethvsparsto ht_i.callback used to cope with buggy hardware1ty.v/spa
1	   31v/a>4     4 unsigned va if ode=ht_irq_lock"sref">ht_irq_cfg3. href="-msgv/a>;tlinux/spinlock.hhv/a>>	 ht_irq_cfg3.a> igned va if ode=ht_irq_lock"sref">ht_irq_cfg3. href="-msgv/a>;tlinux/spinlock.hhv/a>>ttlinux/spinlock.hhv/a>>	 ht_irq_cfgns="msg" .18skci/htns=""_4"{tupdateclass="sref">pci_devv/a> ;tht_irq_cfg3 href=",ode=ht_irq_msg" flagef">p1 */v/spa
1	 ht_irq_cfgrq_msg" .18skci/htirf"_4" va href="+code=msgre=ht_omm_nr"sref">ht_irq_cfre=ht_omm_nrna hr0ht_irq_msg" classns="msg" .18skci/htns=""_4" href=",ode=ht_irq_msg" flagef">p1 hv/a>>;t  25v/a1>tmsgv/a>1_cfg3.a> 1{t
  vconfig_byref">ss="sref">ht_irq_cfg3.a> )href=",ode=ht_irq_msg" flagef">p1  *v/spa
	;tht_irq_cfgEBUSYmsg" sref">ht_iEBUSYgned va href="+code=pos" class="sref1 */v/spa
1	 ht_i|= 1s="sref"  7
"8"1pdatev/a>1;tht_irq_cfg3. href="d=ods classref">ht_i >
  vconfig_byref">rq_msg" .18skci/htirf"_4"d?vconfig_byref">ss="sref">ht_irq_cfg3.a> )href=",ode=ht_irq_msg" flagef">p1">posv/a>1;tp1"hv/a>>;t  31v/a>6  u 
  s cupnamionL >
  vconfig_byref">rq_msg" .18skci/htirf"_4"d?vconfig_byref">rq_lock"sref">ht_irq_cfg3  clas 0e=update" clasaddratamsgv/a>1">msgv/a>1;t  31v/a>6  amidestroyionL >
  vconfig_byref">rq_msg" .18skci/htirf"_4")href=",ode=ht_irq_msg" flagef">p1"*/v/spa
1;tht_irq_cfgEBUSYmsg" sref">ht_iEBUSYgned va href="+code=pos" class="sref1">  34v/a1>tht_i|= 1s="sref"  7
"8"1p>  25v/a1>tmsgv/a>1;tht_i|= 1s="sref"  7
"8"1>idxv/a>;1t;t1  20v/a>vspa
 class="comment"1osv/a>;t<1a flagef="ddrivers/pci/h1tirq.14L21" idonL21" class="line" nama> cre=ht_omm - cre=ht nL2omm graiattache sito a multiput start with simple, stupid, and corre1;t * Wmultipito firai * TionL19">  19v/ onut start with simple, stupid, and corre1>idxv/a>;1tattachetout start with simple, stupid, and corre14hv/a>>tt   4v/a>vspa
 class="comment"1vs cre=ht_omm   18snt">ba>    ed for all ="comment"> * WmultipsamionL4">   4v/a>vspa
 class="comment"1v>  25v/a1atamsgv/a>1href="d + 1)rivers/pci/h1tirq.14L17" idonL17" class="line" namionL17">  17v/a>vspa
 class="comment">>;t ac12"edut start with simple, stupid, and corre1>4     481struct va hr}ivers/pci/h1tirq.14L19" idonL19" class="line" nallback used to cope with buggy hardware1pdatev/a>1;t
 a> cre=ht_omm namionLef="drivmaskci/htir7">  27v/a>        struct va href="+code=pci_dev" class="sref">pci_devv/a> ,/htirq_msg" class="syq_msg" sref">ht_irq_cfg3)ref=",ode=ht_irq_msg" flagef">p1>msgv/a>;1t
 _?a> cre=ht_omm namivconfig_byref">sq_lock"sref">ht_irq_cfg3. href="-ht_irq_cfg3ht_irq_msg" classNULLmsg" sref">ht_iNULL"_4")href=",ode=ht_irq_msg" flagef">p1">msgv/a>1;t  33v/a>15;t   4v/a>1v5  20v/a>vspa
 class="comment"1">msgv/a>1;t cre=ht_omm nonL20">  20v/a>vspa
 class="comment"1">msgv/a>15y4 cl56strurivers/pci/h1tirq.15L17" idonL17" class="line" naa@irq:2omm t">ba>destroyed nonL20">  20v/a>vspa
 class="comment"1";t  20v/a>vspa
 class="comment"1"4     481;t cre=ht_omm removingi * Tspecifici/hmm from nonL20">  20v/a>vspa
 class="comment"1>  29v/a>15     59ef="divers/pci/h1tirq.16L20" idonL20" class="line" na existenipu mio TionLshould>ba>fre">bafa>vs  22vhappeneut start with simple, stupid, and corre1">  30v/a1>6     60="drivers/pci/h1tirq.16L21" idonL21" class="line" nallback used to cope with buggy hardware1>idxv/a>;1t  31v/a>6  amidestroyionL >
  vfetchci/htirq_msg" class="sy
	 fetchci/htirq_ms="+co)ref=",ode=ht_irq_msg" flagef">p1>  32v/a>16     62strurivers/pci/h1tirq.1#L27"  va href="+code=idx" class="sref1idxv/a>;t1   4vv/a>6;tht_irq_cfg3.a> _iig3.a> {_4"d?a> 528"
	  7
"0pt1">  34v/a1>t   5v/a>>vspa
 cla1ss="c1mment"> href=6lasaddrata  311v/a>41    4 unsigned va if ode=ht_iss="sref">ht_irq_cfg3.a> {tht_irq_cfg3. href="d=ode=ht_irq_msg" .18_get_hv/sler_ hypf">idxv/a>;t1ht_ir1_cfg3. href="-ht_irq_cfgd=ods clchiprq_cfg3. href="d=ods clchip >
  vconfig_byref">rq_msg" .18skci/htirf"_4"d?vconfig_byref">NULLmsg" sref">ht_iNULL"_4")href=",ode=ht_irq_msg" flagef">p1ion vypf"1>idx2="option value="v"o1de=ht168fg3. href="-ht_irq_cfgomm_s classref">ht_irq_cfg3. href="d=ods classref">ht_i >
  vconfig_byref">rq_msg" .18skci/htirf"_4"d?vconfig_byref">NULLmsg" sref">ht_iNULL"_4")href=",ode=ht_irq_msg" flagef">p1i4     481tion vypf">idx2="option 1valE016L29" idonL29" class="line" ndestroyionL31">  31v/a>6  destroyionL >
  vconfig_byref">rq_msg" .18skci/htirf"_4")href=",ode=ht_irq_msg" flagef">p130">  30v1/a>6     60=unmionL30"> 1 i/ht17ic#L8" idonL8" class="line" namionL81>idxv7=pc1i_dev7 clahrq_ hypf">idx1v/a>;17L25" idonL25"5class="l5ne" nkfre"msg" .18skci/htkfre" >
  vconfig_byref">ss="sref">ht_irq_cfg3.a> )href=",ode=ht_irq_msg" flagef">p1">idxv/a>1;     62strurivers/pci/h1tirq.1#L27" idonL25"5class="l5ne" namionL33"1>  32v/a>16a  hyp="+c)rivers/pci/h1tirq.1#L25" donL25"5class="l5ne" namionL33"1>dxv/a>;t1namionL31">  31v.7.5"
	 1ss="s1ef">htht_irq_cfgEXPORT_SYMBOLmsg" sref">ht_iEXPORT_SYMBOL >
  vconfig_byref">_?a> cre=ht_omm="divers"5  >
 _?a> cre=ht_omm nam)href=",ode=ht_irq_msg" flagef">p1">  34v/a1>/* Update callback used1 to c175  4 ht_irq_cfgEXPORT_SYMBOLmsg" sref">ht_iEXPORT_SYMBOL >
  vconfig_byref">a> cre=ht_omm="divers"5  >
 a> cre=ht_omm nam)href=",ode=ht_irq_msg" flagef">p1"25"4clas17="l4ne" namionL31">  3117/a>417   4 ht_irq_cfgEXPORT_SYMBOLmsg" sref">ht_iEXPORT_SYMBOL >
  vconfig_byref">a> destroyionL31">  31v/a>6  amidestroyionL >
 )href=",ode=ht_irq_msg" flagef">p1"k.v/spa
	  
io Toriginal LXR softate cbyi * Tef=",ode=http://sourcafa>ge.net/projects/lxr">LXR s="lun9v/ >6v,s  22vexperilineal irq_/a>nbyief=",ode=mailto:lxr@lef=".no">lxr@lef=".nocfg3.
esults"class href="subfooter">
lxr.lef=".no kisrey hoshtd"byief=",ode=http://www.redpill-lefpro.no">Redpillpa
 pro AS >6v,sprovidereofiL
 clacn   ltingigraioper=h/a>sspa
ltiplesinip 1995.
esults" c/bodys"c flml