<DIV>Hi Asterisks developers,</DIV>
<DIV>&nbsp;</DIV>
<DIV>I am new to this group. I am looking at the WCFXS code and mapping the code to the actual hardware (Proslic, Tiger320) to understand the driver better:</DIV>
<DIV>&nbsp;</DIV>
<DIV>There are 2 questions:</DIV>
<DIV>&nbsp;</DIV>
<DIV>1. The Proslic chip's reset is active low. However, when I check the wcfxs.c code, it is writing a '1' to the Tiger320 chip's CTRL register (offset 0x00):</DIV>
<DIV>&nbsp;</DIV>
<DIV>(in wcfxs_hardware_init function of wcfxs.c)</DIV>
<DIV>&nbsp;/* Signal Reset */<BR>&nbsp;outb(0x01, wc-&gt;ioaddr + WC_CNTL);</DIV>
<DIV>&nbsp;</DIV>
<DIV>I read the Tiger320 datasheet and it says (pg 21):</DIV>
<DIV>EXTRST# pin state<BR>0 = External reset pin on PIB low<BR>1 = External reset pin on PIB high</DIV>
<DIV>&nbsp;</DIV>
<DIV>So it seems that wcfxs.c is causing a high (vcc) on the EXTRST# pin which connects to the Proslic chip. But since the Proslic expects active low reset, that will not reset the chip at all. Could someone help to explain this?</DIV>
<DIV>&nbsp;</DIV>
<DIV>2. External interrupts:</DIV>
<DIV>&nbsp;</DIV>
<DIV>wcfxs.c masks off all external interrupts, e.g:</DIV>(in wcfxs_enable_interrupts function of wcfxs.c)<BR>&nbsp;/* No external interrupts */<BR>&nbsp;outb(0x00, wc-&gt;ioaddr + WC_MASK1);
<DIV>&nbsp;</DIV>
<DIV>Does this mean Asterisks work without the need of external interrupts from the Proslic chip? What happens when there is an external event (e.g. ring, off/on hook)? Does Asterisks work using the polling&nbsp;instead of interrupt? Or maybe Asterisks is polling for those external events during each DMA interrupt?</DIV>
<DIV>&nbsp;</DIV>
<DIV>Thank you! Do let me know if I am asking the questions in the correct forum. </DIV>
<DIV>&nbsp;</DIV>
<DIV>Regards,</DIV>
<DIV>Chek</DIV>
<DIV>&nbsp;</DIV><p>
                <hr size=1>Yahoo! Mail Mobile<br> 
<a href="http://us.rd.yahoo.com/mail_us/taglines/mobile/*http://mobile.yahoo.com/learn/mail">Take Yahoo! Mail with you!</a> Check email on your mobile phone.