Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Dec 2001 14:51:00 -0500
From:      "Joe & Fhe Barbish" <barbish@a1poweruser.com>
To:        "FBSD Questions" <questions@FreeBSD.ORG>
Cc:        <peter@netplex.com.au>
Subject:   RE: Modem device not configured
Message-ID:  <LPBBIGIAAKKEOEJOLEGOCEHDCKAA.barbish@a1poweruser.com>
In-Reply-To: <005a01c18e30$30a245c0$6600000a@ach.domain>

next in thread | previous in thread | raw e-mail | index | archive | help
Having a lot of problems getting FBSD 4.4 to use internial modems.
And before you go there, yes it is not a winmodem.
I found the following way back in the archives 3/6/2000.

"(Take a look at your /usr/src/sys/isa/sio.c file.

You should see a section beginning with:
static struct isa_pnp_id sio_ids[]

which lists a bunch of modems and their pnp ids.

You need to add your pnp id for your modem (you can type pnpinfo to get this
info) into this file and then recompile your kernel.

unknown0: <Pace 56 Voice Internal Plug & Play Modem> at port 0x3e8-0x3ef irq
5 on isa0


The line I've added to sio.c is:
  {0x3024a341, NULL},	/* PMC2430 - Pace 56 Voice Internal Modem */


Why did it work before under 3.x, without this line in sio.c?

The PNP bios preconfigured it and left it laying around in port space,
so the old-style isa probes "found" it there.

Under 4.0, the isa code is much more pnp centric.  It was possible for an
isa probe to find a "stray" device and then for the PNP device id to match
and then fail due to resource conflicts.  So, it disables the programmable
cards first so this double probing cannot happen.  It also means that it
needs to know the PNP id's for supported pnp hardware.  Making this more
user tweakable is on the TODO list.}"


Ok here we are at 4.4 and there still is no documentation on the tables
in sio.c and how this affects internal PNP pci modems in FBSD.

The pnpinfo command finds nothing. Looks like it is looking in the wrong
place,
The 3.x location and not the 4.x location.

Looking at sio.c and doing a find for 'static struc' I find two different
tables.

Snip

static struct pci_ids pci_ids[] = {
	{ 0x100812b9, "3COM PCI FaxModem", 0x10 },
	{ 0x048011c1, "ActionTec 56k FAX PCI Modem", 0x14 },
	{ 0x0000151f, "SmartLink 5634PCV SurfRider", 0x10 },
	{ 0x01101407, "Koutech IOFLEX-2S PCI Dual Port Serial", 0x10 },
	{ 0x01111407, "Koutech IOFLEX-2S PCI Dual Port Serial", 0x10 },
	{ 0x00000000, NULL, 0 }

Snip

static struct isa_pnp_id sio_ids[] = {
	{0x0005d041, "Standard PC COM port"},	/* PNP0500 */
	{0x0105d041, "16550A-compatible COM port"},	/* PNP0501 */
	{0x0205d041, "Multiport serial device (non-intelligent 16550)"}, /* PNP0502
*/
	{0x1005d041, "Generic IRDA-compatible device"},	/* PNP0510 */
	{0x1105d041, "Generic IRDA-compatible device"},	/* PNP0511 */
	/* Devices that do not have a compatid */
	{0x12206804, NULL},     /* ACH2012 - 5634BTS 56K Video Ready Modem */
	{0x7602a904, NULL},	/* AEI0276 - 56K v.90 Fax Modem (LKT) */
	{0x00007905, NULL},	/* AKY0000 - 56K Plug&Play Modem */
	{0x01405407, NULL},	/* AZT4001 - AZT3000 PnP SOUND DEVICE, MODEM */
	{0x56039008, NULL},	/* BDP0356 - Best Data 56x2 */
	{0x56159008, NULL},	/* BDP1556 - B.D. Smart One 56SPS,Voice Modem*/
	{0x36339008, NULL},	/* BDP3336 - Best Data Prods. 336F */
	{0x0014490a, NULL},	/* BRI1400 - Boca 33.6 PnP */
	{0x0015490a, NULL},	/* BRI1500 - Internal Fax Data */
	{0x0034490a, NULL},	/* BRI3400 - Internal ACF Modem */
	{0x0094490a, NULL},	/* BRI9400 - Boca K56Flex PnP */
	{0x00b4490a, NULL},	/* BRIB400 - Boca 56k PnP */
	{0x0030320d, NULL},	/* CIR3000 - Cirrus Logic V43 */
	{0x0100440e, NULL},	/* CRD0001 - Cardinal MVP288IV ? */
	{0x36033610, NULL},     /* DAV0336 - DAVICOM 336PNP MODEM */
	{0x0000aa1a, NULL},	/* FUJ0000 - FUJITSU Modem 33600 PNP/I2 */
	{0x1200c31e, NULL},	/* GVC0012 - VF1128HV-R9 (win modem?) */
	{0x0303c31e, NULL},	/* GVC0303 - MaxTech 33.6 PnP D/F/V */
	{0x0505c31e, NULL},	/* GVC0505 - GVC 56k Faxmodem */
	{0x0116c31e, NULL},	/* GVC1601 - Rockwell V.34 Plug & Play Modem */
	{0x0050c31e, NULL},	/* GVC5000 - some GVC modem */
	{0x3800f91e, NULL},	/* GWY0038 - Telepath with v.90 */
	{0x9062f91e, NULL},	/* GWY6290 - Telepath with x2 Technology */
	{0x8100e425, NULL},	/* IOD0081 - I-O DATA DEVICE,INC. IFML-560 */
	{0x21002534, NULL},	/* MAE0021 - Jetstream Int V.90 56k Voice Series 2*/
	{0x0000f435, NULL},	/* MOT0000 - Motorola ModemSURFR 33.6 Intern */
	{0x5015f435, NULL},	/* MOT1550 - Motorola ModemSURFR 56K Modem */
	{0xf015f435, NULL},	/* MOT15F0 - Motorola VoiceSURFR 56K Modem */
	{0x6045f435, NULL},	/* MOT4560 - Motorola ? */
	{0x61e7a338, NULL},	/* NECE761 - 33.6Modem */
 	{0x08804f3f, NULL},	/* OZO8008 - Zoom  (33.6k Modem) */
	{0x0f804f3f, NULL},	/* OZO800f - Zoom 2812 (56k Modem) */
	{0x39804f3f, NULL},	/* OZO8039 - Zoom 56k flex */
	{0x00914f3f, NULL},	/* OZO9100 - Zoom 2919 (K56 Faxmodem) */
	{0x3024a341, NULL},	/* PMC2430 - Pace 56 Voice Internal Modem */
	{0x1000eb49, NULL},	/* ROK0010 - Rockwell ? */
	{0x1200b23d, NULL},     /* RSS0012 - OMRON ME5614ISA */
	{0x5002734a, NULL},	/* RSS0250 - 5614Jx3(G) Internal Modem */
	{0x6202734a, NULL},	/* RSS0262 - 5614Jx3[G] V90+K56Flex Modem */
	{0xc100ad4d, NULL},	/* SMM00C1 - Leopard 56k PnP */
	{0x9012b04e, NULL},	/* SUP1290 - Supra ? */
	{0x1013b04e, NULL},	/* SUP1310 - SupraExpress 336i PnP */
	{0x8013b04e, NULL},	/* SUP1380 - SupraExpress 288i PnP Voice */
	{0x8113b04e, NULL},	/* SUP1381 - SupraExpress 336i PnP Voice */
	{0x5016b04e, NULL},	/* SUP1650 - Supra 336i Sp Intl */
	{0x7016b04e, NULL},	/* SUP1670 - Supra 336i V+ Intl */
	{0x7420b04e, NULL},	/* SUP2070 - Supra ? */
	{0x8020b04e, NULL},	/* SUP2080 - Supra ? */
	{0x8420b04e, NULL},	/* SUP2084 - SupraExpress 56i PnP */
	{0x7121b04e, NULL},	/* SUP2171 - SupraExpress 56i Sp? */
	{0x8024b04e, NULL},	/* SUP2480 - Supra ? */
	{0x01007256, NULL},	/* USR0001 - U.S. Robotics Inc., Sportster W */
	{0x02007256, NULL},	/* USR0002 - U.S. Robotics Inc. Sportster 33. */
	{0x04007256, NULL},	/* USR0004 - USR Sportster 14.4k */
	{0x06007256, NULL},	/* USR0006 - USR Sportster 33.6k */
	{0x11007256, NULL},	/* USR0011 - USR ? */
	{0x01017256, NULL},	/* USR0101 - USR ? */
	{0x30207256, NULL},	/* USR2030 - U.S.Robotics Inc. Sportster 560 */
	{0x50207256, NULL},	/* USR2050 - U.S.Robotics Inc. Sportster 33. */
	{0x70207256, NULL},	/* USR2070 - U.S.Robotics Inc. Sportster 560 */
	{0x30307256, NULL},	/* USR3030 - U.S. Robotics 56K FAX INT */
	{0x31307256, NULL},	/* USR3031 - U.S. Robotics 56K FAX INT */
	{0x50307256, NULL},	/* USR3050 - U.S. Robotics 56K FAX INT */
	{0x70307256, NULL},	/* USR3070 - U.S. Robotics 56K Voice INT */
	{0x90307256, NULL},	/* USR3090 - USR ? */
	{0x70917256, NULL},	/* USR9170 - U.S. Robotics 56K FAX INT */
	{0x90917256, NULL},	/* USR9190 - USR 56k Voice INT */
	{0x0300695c, NULL},	/* WCI0003 - Fax/Voice/Modem/Speakphone/Asvd */
	{0x01a0896a, NULL},	/* ZTIA001 - Zoom Internal V90 Faxmodem */
	{0x61f7896a, NULL},	/* ZTIF761 - Zoom ComStar 33.6 */
	{0}
};

Snip

I added sio2 and 3 with out disable to kernel conf and compiled kernel
this is what I found in my boot log with boot -v for verbose boot messages

found->	vendor=0x11c1, dev=0x0480, revid=0x00
	class=07-03-03, hdrtype=0x00, mfdev=0
	subordinatebus=0 	secondarybus=0
	intpin=a, irq=9
	map[10]: type 1, range 32, base e3001000, size  8
	map[14]: type 1, range 32, base 0000dc00, size  8
	map[18]: type 1, range 32, base 0000e000, size  8
	map[1c]: type 1, range 32, base 0000e400, size  3

pci0: <unknown card> (vendor=0x11c1, dev=0x0480) at 18.0 irq 9
This is my zoom 56K pci plus modem that has onboard controller and dsp

sio0: irq maps: 0x41 0x51 0x41 0x41
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1: irq maps: 0x41 0x49 0x41 0x41
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
sio2: configured irq 5 not in bitmap of probed irqs 0
sio2: irq maps: 0x41 0x41 0x41 0x41
sio2: probe failed test(s): 0 1 2 4 6 7 9
sio2 failed to probe at port 0x3e8-0x3ef irq 5 on isa0
sio3: configured irq 9 not in bitmap of probed irqs 0
sio3: irq maps: 0x41 0x41 0x41 0x41
sio3: probe failed test(s): 0 1 2 4 6 7 9
sio3 failed to probe at port 0x2e8-0x2ef irq 9 on isa0

You can see that my modem vendor/dev codes match the actiontec modem all
ready defined.

pci0: <unknown card> (vendor=0x11c1, dev=0x0480) at 18.0 irq 9
This is my zoom 56K pci plus modem that has onboard controller and dsp

static struct pci_ids pci_ids[] = {
		{ 0x048011c1, "ActionTec 56k FAX PCI Modem", 0x14 },

I am at a loss of what to do next.

For sure need info on what the function is of these two tables in sio.c
along with
The meaning of the fields in the tables and where or how to get that info so
I can
Edit the table entry for my modem.











To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?LPBBIGIAAKKEOEJOLEGOCEHDCKAA.barbish>