Sorry this is kind of long, but I wanted to get all the info
in....

  System: Asus A7v133 mobo / Athlon 1.2G 
  OS:     dual-boot WinMe / Mandrake 7.2
  Modem:  Multitech MT5634ZPX-PCI

Modem is claimed to NOT be a winmodem, and there are Linux
installation instructions in the user's manual.  Manufacturer
also has RedHat RPMs at his FTP site, but does not refer to
these in the manual.

Modem works fine under Windows.  Device Manager lists it as
being at COM3, IRQ9, I/O as follows:

    A400-A4FF
    A000-A0FF
    9800-9807
    
The modem is in PCI slot 4 (I have 5 PCI and 1 AGP slots).  
    
Per manufacturer's Linux installation instructions, I examined
/proc/pci for modem info.  Parameters are exactly as those
listed by Windows Device Manager (see above), except of course
there is no COM port given.  

I thought about including the /proc/pci file here, but because of
its size I posted it at http://mshaw.topcities.com/proc_pci.txt
instead.  I note that it indicates that IRQ9 is shared by the USB 
controller, and I seem to remember something about Linux not
playing well with USB yet....

So, continuing with manufacturer's instructions, I obviously
want to configure /dev/ttyS2.  First I check it, as root:

  # setserial /dev/ttyS2
  
Output indicates UART unknown / port 0x03e8 / IRQ4.

So now I reconfigure it:

  # setserial /dev/ttyS2 uart 16550A port 0xa400 irq 9
  
Checking again w/ 'setserial /dev/ttyS2' indicates that my settings
have taken hold EXCEPT that it's on IRQ2.

Not knowing what else to do, I proceed anyway.  I want to use
minicom to test the modem, so:

  # ln -s /dev/ttyS2 /dev/modem
  # chmod 666 /dev/ttyS2
  # minicom -s (and save config file)
  
Then, as a normal user:

  % minicom
  % minicom: cannot open /dev/modem; device or resource busy
  
Hrmph.

I get the idea that when the manual told me to set the port to
the "first" I/O address found in /proc/pci, it might've meant
"first in the memory map," not "first listed."  So I re-issue
my setserial command:    

  # setserial /dev/ttyS2 uart 16550A port 0x9800 irq 9
  
and try again.  Same result, only now minicom tells me that there's 
"no such file or directory" as /dev/modem, which I know isn't true 
via 'ls' and 'file'.

Setting things back to their original configuration each time, I
try all of the above with ttySn, for n == [1,3,4,31].  The results
are always the same, and each time the port is stuck on IRQ2.
(But when I set things BACK, e.g. restore /dev/ttyS2 to IRQ4, that
seems to work.)

I remembered that a guy here at work told me that COM1 and COM3 
work best with IRQ4, and COM2 and COM4 work best with IRQ3.  So
I change the BIOS setting for PCI slot 4/5 from autoconfigure to
IRQ4.  Now Windows indicates that everything is as it was before,
except the modem's now on IRQ4.  And the modem works fine.  But 
Linux won't boot -- it freezes on that blue page with all the boot
steps and the penguin in the upper-left-hand corner.  I dimly recall
hearing/reading something about how Mandrake checks h/w configurations 
at install time, but not afterwards, so maybe this is why....

Double hrmph.

So I set things back to the way they were and started working on
this plea for help.  :)

Observations/questions: 

  - The original Windows installation routine put the modem
    on COM5 (I forget which IRQ).  Now that I'm reading the 
    documentation a little closer than I was at the time, I 
    find that this is normal.  I used one of the .exe utilities 
    that came on the installation CD to change it to COM4 
    because the Mandrake modem-installation GUI -- which I'm no 
    longer using, obviously -- only listed COM1 through COM4.  
    (It didn't work there either; that's why I changed it again 
    to COM3 and started taking better notes.)  I wonder what 
    would happen if I just reinstalled the modem to COM5 and went 
    through the above sequence again?
    
  - The /proc/pci gives I/O addresses as (e.g.) 0xa400 [0xa401].
    What is the significance of the [0xa401]?  
    
  - I wonder what would happen if I changed the BIOS again to
    force the modem to be on IRQ4, then reinstalled Linux?
    Obviously I'm going to leave this option till later -- like,
    last -- in the troubleshooting process....
    
  - The main thing that concerns me is the apparent inability of
    setserial to control the IRQ.  No matter what I try to set it
    to, it seems to get set to 2 (assuming I can trust the output),
    unless I set it back to what it was previously.  Am I not using
    the command correctly?
    
Anyway, thanks for reading this far.  Any comments?  Thanks!

-- 
Mark Shaw        


Reply via email to