Subject: RE: detecting internal modem + Booting from DOS
To: Gregg C Levine <hansolofalcon@worldnet.att.net>
From: Laine Stump <lainestump@rcn.com>
List: netbsd-help
Date: 07/03/2000 11:29:14
(I've redirected this discussion to netbsd-help)

At 10:35 AM 7/3/00 -0400, Gregg C Levine wrote:
>That modem is made by Boca Research. Its a Boca 14.4V.32BIS M144IW. And no
>it isn't getting a port assigned to it, at least I think not, it doesn't
>show up on the booting legend. What exactly are dmesg lines? Are they the
>sameones that the kernel prints out during a boot cycle? 

You can see what serial ports / modems the system detected at boot with
this line:

	dmesg | grep '^com'

Mine (on a machine with two onboard serial ports and no modems) shows this:

  com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
  com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo

If you know the IO address and irq setting of your modem, look for it in
these lines. Note that the IO addresses and irq's of ISA serial ports are
fixed in the kernel config to:

   com0    at isa? port 0x3f8 irq 4        # Standard PC serial ports
   com1    at isa? port 0x2f8 irq 3
   com2    at isa? port 0x3e8 irq 5

There are no other *isa* com ports configured in the GENERIC kernel, so
you'll either need to make sure your modem is set to one of these, or build
a new kernel. For example, to make a kernel that supports a "com3"
(equivalent to DOS COM4) at address 0x2e8, irq 9, you would do the
following (after getting and untarring the syssrc.tar.gz corresponding to
your OS version):

   1) edit /usr/src/sys/arch/i386/conf/GENERIC and add the line:

	   com3    at isa? port 0x2e8 irq 9	

   2) from that same directory, run "config GENERIC"

   3) cd ../compile/GENERIC

   4) make depend && make

   5) (if the make is successful)
      mv /netbsd /netbsd.old
      cp netbsd /

   6) reboot

Once you've done this, and the modem shows up in dmesg (yes, that is the
same thing as the stuff that spews out as you're booting), you'll need to
make sure there is a /dev/tty? corresponding, in this case /dev/tty03. Look
for it with ls, and if it isn't found, cd to /dev and run:

	./MAKEDEV tty3

(yes, I *did* mean to leave out the "0"; don't ask me why, that's just what
works...)

Once this is done, you should be able to configure pppd using the
documentation from the website as a guide.