• Welcome to OS2World OLD-STATIC-BACKUP Forum.
 

News:

This is an old OS2World backup forum for reference only. IT IS READ ONLY!!!

If you need help with OS/2 - eComStation visit http://www.os2world.com/forum

Main Menu

Networking configuration issue - boot does not complete

Started by Peter400, 2010.07.29, 02:32:59

Previous topic - Next topic

Peter400

Hi,

I installed Warp4 with all the free fixpacks for MPTN and TCP/IP. Then I tried to add and configure a networking card (PCMCIA Xircom CE3 10/100).  I added "IBM 802.3" and "TCP/IP" protocols. I configured TCP/IP to use DHCP, but somehow I do not think it matters.
With the Xircom card in place, the system no longer boots. The driver recognizes the card, but later the boot process hangs indefinitely.

The LANTRAN.LOG contains the following:

IBM OS/2 LANMSGDD [04/18/00] 5.05 is loaded and operational.
IBM OS/2 LANDD [04/18/00] 5.00.02
IBM OS/2 LANDLLDD 2.01 
IBM OS/2 LANDLLDD is loaded and operational.
IBM OS/2 LAN Netbind
IBM LANDD is accessing IBM 802.3 LAN Interface.
LT00055: An unexpected error was returned when the program tried to transmit the duplicate node address test. The CE3OS2_nif MAC return code is 11.
Adapter 1 is using node address 0080C70D1C2A.  The Token-Ring format is 0001E3B03854.
IBM LANDD was successfully bound to MAC: CE3OS2_nif->VECTOR.

I suspect that the LT00055 error above is responsible for this behavior, but then again, LANDD says that it was successfully bound to MAC, so I'm not sure.

With the networking cable plugged out, the behavior is identical, so it looks like it is purely an internal system problem. I also tried to boot the system after using Alt+F4 to perform a step-by-step boot. This did not help, and the boot process stopped at the network startup (MPTSTART.CMD) step.

Does anyone have an idea how to further debug and fix this issue?

Peter


warpcafe

Hi Peter,

although this might perhaps not help - PCMCIA and OS/2 is a pain in the arse.  >:(

I've been running Xircom cards for quite some time (but years ago) - and all I can tell is that I was only able to get this to funtion correctly with the "point enabler" stuff... but don't ask me questions, it's too long ago. There is a plug-and-play package for pcmcia (dunno what that was called again) which I never was able to get it to run. So: Point enabler is the keyword to go for.
I am sure others here will have better solutions.

The only thing that makes me really puzzle is that line stating "Token Ring" something in your lantran.log.
Isn't that Xircom card an ETHERNET type? ("CE3 10/100" sound rather like Ethernet, not Token Ring)

Perhaps there is some misconfiguration with your protocols or drivers here.
I am sure it won't hurt to share your protocol.ini (and other tcpip or mpts setup files) with us... the guys here will surely ask for that in order to better understand what's up at your end. :)

A good read about PCMCIA (or PCCard) topics is at
http://homepage.mac.com/ruske/ruske/pcmcia.htm
...which I can recommend to anyone interested. However, it does perhaps not help at all as well...

Hope this helps (somehow),
Thomas
"It is not worth an intelligent man's time to be in the majority.
By definition, there are already enough people to do that"
- G.H. Hardy

RobertM

Remove 802.3 support. I have found that enabling it (I believe it is standard thick coax Token Ring Support) is a very good way of ensuring that standard networking support does not work. So, hopefully, that too is your problem.

The confusing thing (not so confusing when one considers IBM is pretty anal about what is on the dialogs) is that 10BaseT and so on are updates to the 802.3 spec (such as 802.3i) - but that is not what the dialog says - it says 802.3 which is probably (knowing IBM) exactly what they meant, and is designed to implement/enable solely that support, and solely for legacy systems that use a Token Ring or "thick coax" setup. 802.3 is not 10BaseT, using different packet sizes and more. One cannot have standard MTUs of 1544 (used by 802.3i and others) and expect it to run on 802.3 (which uses an MTU of 1518).

Anyway, without a lot of work (and possibly not even then), I have found that enabling 802.3 support will prevent networking from functioning. I always make sure I have not enabled it, or go into MPTS (or TCPCFG/TCPCFG2 depending on OS/2 version) and uncheck it.

There are a few other settings in there that are ambiguous - but that one I believe to be the key one affecting your scenario.

Also, go into mptn\etc and look for setup.cmd

Search that for your dhcpstrt command and add a -d 0 to that line (or change the number to a zero, if that line already exists) and see what happens on boot.


Best,
Robert


|
|
Kirk's 5 Year Mission Continues at:
Star Trek New Voyages
|
|


Peter400

Thanks guys for your suggestions.
I removed "IBM 802.3" protocol from the configuration, and added "-d 0" to DHCPSTRT.CMD
The system still does not boot and hangs at the same place, i.e. when MPTSTART.CMD is invoked.

The contents of MPTSTART.CMD:
@ECHO OFF
IF NOT EXIST E:\MPTN\BIN\SETUP.CMD GOTO NBSETUP
INETWAIT 1>NUL
IF ERRORLEVEL 1 GOTO END
CALL E:\MPTN\BIN\SETUP.CMD
:NBSETUP
IF NOT EXIST E:\MPTN\BIN\NBSETUP.CMD GOTO END
CALL E:\MPTN\BIN\NBSETUP.CMD
:END

The contents of SETUP.CMD:
route -fh
REM ifconfig lan0
ifconfig lan1
REM ifconfig lan2
REM ifconfig lan3
REM ifconfig lan4
REM ifconfig lan5
REM ifconfig lan6
REM ifconfig lan7
dhcpstrt -i lan1 -d 0
REM ifconfig sl0
ipgate off

There's no NBSETUP.CMD

And here's the contents of PROTOCOL.INI:
[PROT_MAN]

   DRIVERNAME = PROTMAN$

[IBMLXCFG]

   tcpip_nif = tcpip.nif
   NONETADP_nif = NONETADP.NIF
   CE3OS2_nif = CE3OS2.nif

[tcpip_nif]

   DriverName = TCPIP$
   Bindings = NONETADP_nif,CE3OS2_nif

[NONETADP_nif]

   DriverName = NULLNDS$

[CE3OS2_nif]

   DriverName = XIRCOM$
   SOCKET = 1

And now my LANTRAN.LOG contains just two lines:
IBM OS/2 LANMSGDD [04/18/00] 5.05 is loaded and operational.
IBM OS/2 LAN Netbind

I'll now try to search for "point enabler" and see whether it'll help.

Peter

Peter400

OK, I educated myself a bit on the subject now ...

It looks like all Xircom drivers include buil-in point enablers. Xircom documentation does not use the term "point enabler", but it says to "disable Socket and Card Services according to the IBM instructions".
The only IBM instructions I was able to find are enclosed with PC Card Director, where one can open one or more PCMCIA sockets for a card that is not capable of using or not requiring the socket services. Coincidently, IBM instructions list Xircom cards as an example of such cards.

My original attempts to configure the Xircom card were not using the PC Card Director or any PCMCIA drivers at all.

I installed PC Card Director 5, "disabled" one socket (the one with the Xircom card inserted), but there's no change in behavior, except that my LANTRAN.LOG file is now empty. It looks like this is not the right way to go.

One more detail: regardless of whether PC card director is installed or not, the Xircom driver is not capable of finding any available IRQs, and always starts in "polling mode". But I know for sure that there are unused IRQs.

When I configure the driver (in MPTS configuration dialog) to use a specific IRQ (and I tried a few of them), the driver says "the specified IRQ failed resource checking" and reports starting in polling mode again. I also tried to use RESERVE.SYS driver to "reserve" the specified IRQ, but it made no difference.

So I'm running out of ideas - I do not know what else to try.

Any suggestions are welcome!

Peter

warpcafe

Hi Peter,

I am not perfectly sure about this, but I got the feeling that there is one driver missing - the point enabler.
Usually, the point enabler should be rather static and stupid - it locks itself onto the resources specified.
Frowm your description it seems that this is not the case.

I could now suggest you to REM out everything related to pcmcia and go step by step... but since I don't know by heart which drivers that would mean, I don't get you started for safety reasons. I had a perfectly working setup some years ago which ran on a total of 3 laptops over time... and I think I have saved the stuff somewhere (because I knew it was "precious", given the pcmcia mess...) but I am afraid it is on some floppy disk. And I don't know where the floppy exactly is and if it is intact... and if I can assemble a system with a floppy in order to try it.
I need time. Sorry... but I promise to check it.

I still find it strange that there is no "CE3_NDIS" (or something with "NDIS" in its name) showing up in your config files. AFAIK, the "NDIS" driver was what the Xircom card was using... well, anyway, too much guesswork here. I'll check it.

Regards,
Thomas
"It is not worth an intelligent man's time to be in the majority.
By definition, there are already enough people to do that"
- G.H. Hardy

Andi

I have written about how I got my Xircom running in a Thinkpad here at os2world some time ago. But can not find it yet. Maybe in the old forum?

Maybe this may help -
http://www.os2world.com/cgi-bin/ultraboard/UltraBoard.cgi?action=Read&BID=62&TID=1518&SID=

I think I had some device=reserve.sys ... in front of my config.sys. I think this Thinkpad with the Xircom should even work today. Have to boot and check the actual config.sys if it helps.

One more note - are you sure the driver tries to find the IRQ automatically? AFAIR I always had to set the IRQ with some DOS tool and then tell the driver the correct IRQ and maybe base address. As it was usual with these ISA stuff...

Another note - I vaguely remember I had to start with 'full hardware detection' to get things running.

RobertM



|
|
Kirk's 5 Year Mission Continues at:
Star Trek New Voyages
|
|


Andi

Sure I have. But have to search where it is....

Unfortunately I run into my ISPs quota limit 2 days ago and so deleted old stuff from there.

Edit: Should be back there now.

I think the key to get it working was -
BASEDEV=IBM2SS01.SYS /s0=2 /IG0=2

But I had another driver for my Xircom -
BASEDEV=PCMCIA.SYS
DEVICE=E:\OS2\MDOS\VPCMCIA.SYS
...
DEVICE=E:\OS2\BOOT\AUTODRV2.SYS E:\OS2\AUTODRV2.INI
BASEDEV=IBM2SS01.SYS /s0=2 /IG0=2
..
BASEDEV=AODBSMD.SYS
DEVICE=e:\IBMCOM\MACS\XPSNDIS.OS2

RobertM

Quote from: Andi on 2010.08.05, 20:44:23
Sure I have. But have to search where it is....

Unfortunately I run into my ISPs quota limit 2 days ago and so deleted old stuff from there.


Well, to make things a little easier for you (and hopefully help you not reach your quota), I have begun hosting the file. It is located at:
- http://www.aibpc.com/Warp/Drivers/Thinkpad/ThinkpadConfig.zip

Best,
Rob


|
|
Kirk's 5 Year Mission Continues at:
Star Trek New Voyages
|
|


Peter400

Hi guys,

Thanks for all responses.

I found the following parametre for the driver:

[NOCHECK]
Display   = "Disable resource checking?"
Type      = None
Set       = "Yes", "No"
Optional  = Yes
help = "This parameter disables verification of adapter resources.
If the driver resource detection and verification code is causing
problems when the driver loads, this keyword can be used to turn
the feature off."

When I set this parameter to "Yes", and specify IRQ manually, OS/2 boot completes! This is a step in the right direction, I hope, as Xircom apparently knew a thing or two about issues with their driver on boot.

To be more precise: it looks like the boot hangs if and only if the network adapter driver says it is started in "polled mode". It starts in polled mode if I do not specify an IRQ, or if it goes back to polled mode on its own after claiming that the specified IRQ failed resource checking ...

However, the network still does not work. I tried using DHCP or a static IP address, it makes no difference and it looks like no packets are sent out or nothing is received.

I looked carefully at the config.sys file from ThinkpadConfig.zip.
There's one line there, which looks like a point enabler:
   DEVICE=E:\OS2\BOOT\AUTODRV2.SYS E:\OS2\AUTODRV2.INI

Andi, do you still have the contents of your AUTODRV2.INI anywhere?

In version 5 of PC Card Director (this is what I got), AUTODRV2.SYS is loaded by BASEDEV, not DEVICE, and the documentation does not mention any parameters that can be specified, so I'm not sure it this is a good route to go, but perhaps it is worth giving it a try.

As for specifying the /s0= parameter for IBM2SS01.SYS, this did not work. First of all, the file I got with PCCard Director is named a bit differently, IBM2SS14.SYS. And it does not accept /s0=, saying "invalid parameter specified" during boot.

So, currently I try to use the driver without any socket and card services, and my config.sys file looks like this:

Rem BASEDEV=PCMCIA.SYS
Rem BASEDEV=IBM2SS14.SYS /S0=1 /IG0=1
Rem BASEDEV=AUTODRV2.SYS
Rem DEVICE=E:\PCMCIA\VPCMCIA.SYS
Rem DEVICE=E:\PCMCIA\PCMSSDIF.SYS
Rem DEVICE=E:\PCMCIA\PCM2SRAM.SYS
Rem DEVICE=E:\PCMCIA\FLSH2MTD.SYS
Rem DEVICE=E:\PCMCIA\PCM2FLSH.SYS

CALL=E:\IBMCOM\PROTOCOL\NETBIND.EXE
RUN=E:\IBMCOM\LANMSGEX.EXE

SET ETC=E:\MPTN\ETC
DEVICE=E:\IBMCOM\MACS\NULLNDIS.OS2

SET TMP=e:\tcpip\tmp
DEVICE=e:\tcpip\bin\vdostcp.sys

BASEDEV=OS2PCARD.DMD
Rem DEVICE=E:\OS2\$ICPMOS2.SYS /G
DEVICE=E:\IBMCOM\MACS\CE3NDIS.OS2                      <---- this is my Xircom card driver
DEVICE=E:\MPTN\PROTOCOL\SOCKETS.SYS
DEVICE=E:\MPTN\PROTOCOL\AFOS2.SYS
DEVICE=E:\MPTN\PROTOCOL\AFINET.SYS
DEVICE=E:\MPTN\BIN\VDOSTCP.VDD
RUN=E:\MPTN\BIN\CNTRL.EXE
CALL=E:\OS2\CMD.EXE /Q /C E:\MPTN\BIN\MPTSTART.CMD >NUL
RUN=E:\MPTN\BIN\VDOSCTL.EXE

The next thing I'm going to do is to use AUTODRV2.SYS (point enabler) which came with PCCardDirector 5. The documentation says that custom scripts can be prepared, so I'm going to give it try. This might not be easy though, as I'm not sure I know what I'll be doing ...

As usual, any suggestions will be appreciated

Peter

Peter400

Oh, and I thought it might be useful to say that the laptop is an old HP OmniBook 900 (circa 1998), and the PCMCIA chipset seems to be TI-1225.  (which was also used on some Thinkpads).

Peter

melf

Don't know if this is any help for you, but here is a quotation from Apsofts uder guide for their socket service sspcic.sys .

"Most Xircom Network Card drivers are not designed to act as Card Services clients. They
are shipped with a "point enabler" that tries to manage the PC Card as a private resource.
As the Xircom driver does not register the card with the IBM Card Services driver, Card
Services assumes that the card was not configured and turns off the power to the card - the
card in no longer operational.
These Xircom Card NDIS drivers are not compliant with the PC Card standard and cannot
co-exist with the IBM Card Services (PCMCIA) driver. Therefore, you cannot configure
Warp to use Xircom network cards at the same time as compliant PC Cards under
SSPCIC.SYS. You must maintain two separate configurations and reboot the system in one
or the other mode. As an alternative you can reserve the socket with the highest number for
the Xircom card using the /MS switch. E.g., if your adapter has two sockets (0 and 1) you
can add a /MS:0,1 switch to the SSPCIC.SYS command line. Card Services will only handle
one socket (socket 0). It will allow you to use the Xircom card in socket 1 with the Xircom
enabler. The same technique can be used for any other similar card."

/Mikael

Andi

Quote from: Peter400 on 2010.08.10, 01:29:35
.....
However, the network still does not work. I tried using DHCP or a static IP address, it makes no difference and it looks like no packets are sent out or nothing is received.
I would test the network with ifconfig lan0 or ifconfig lan1 (depends on how many network cards you've configured).
f.i. issuing from a command line 'ifconfig lan0 192.168.1.1' results in 'sioaffc error' (or similar) or 'interface not available' the driver does not work and no need to play with tcpcfg2 any further. Might save you some time....

Quote
I looked carefully at the config.sys file from ThinkpadConfig.zip.
There's one line there, which looks like a point enabler:
   DEVICE=E:\OS2\BOOT\AUTODRV2.SYS E:\OS2\AUTODRV2.INI

Andi, do you still have the contents of your AUTODRV2.INI anywhere?
I've very little knowledge about this PCMCIA stuff but always thought AUTODRV is necessary for Flash drives or maybe cards which are configured by the card services which is NOT the case with MY Xircom. I'm rather sure this entry does have nothing to do with my Xircom as my Xircom seems to be one of the 'PointEnabler' types. I can post this file when at home but most likely there is nothing in there for the Xircom.

Quote
In version 5 of PC Card Director (this is what I got), AUTODRV2.SYS is loaded by BASEDEV, not DEVICE, and the documentation does not mention any parameters that can be specified, so I'm not sure it this is a good route to go, but perhaps it is worth giving it a try.

As for specifying the /s0= parameter for IBM2SS01.SYS, this did not work. First of all, the file I got with PCCard Director is named a bit differently, IBM2SS14.SYS. And it does not accept /s0=, saying "invalid parameter specified" during boot.

So, currently I try to use the driver without any socket and card services, and my config.sys file looks like this:
Remember my setup is a Warp3 with I think no fixpacks but Lan Server 4.0 components on top. So I don't know which PCCard Director / Ezlite version is installed there. And my Xircom seems to be a different one as yours.

Quote
...
The next thing I'm going to do is to use AUTODRV2.SYS (point enabler) which came with PCCardDirector 5. The documentation says that custom scripts can be prepared, so I'm going to give it try. This might not be easy though, as I'm not sure I know what I'll be doing ...

As usual, any suggestions will be appreciated

Peter

If your card could not be controlled by PCCard Services, which is much likely with Xircoms, then I think the key is to disable the correct slot in card services (/S0=1 /IG0=1 --- not sure anymore what each param does and how it works with v5.0).

One drawback with the Xircom I remember is that power management will not work (no Hibernate). So for the Thinkpad I setup a few weeks ago I used a 3Com card. Even with the 3Com it took me hours (and an old TP380 Thinkpad on which the DOS utility will run cause on the T41 it crashes) to get it to work.

Once I had a Xircom user manual where the steps for setting up with OS/2 are described. But now only found one version without any OS/2 references anymore. To bad it seems I've lost the other one...

Peter400

Quote from: Andi on 2010.08.10, 13:40:33
Quote from: Peter400 on 2010.08.10, 01:29:35
.....
However, the network still does not work. I tried using DHCP or a static IP address, it makes no difference and it looks like no packets are sent out or nothing is received.
I would test the network with ifconfig lan0 or ifconfig lan1 (depends on how many network cards you've configured).
f.i. issuing from a command line 'ifconfig lan0 192.168.1.1' results in 'sioaffc error' (or similar) or 'interface not available' the driver does not work and no need to play with tcpcfg2 any further. Might save you some time....

Yes, the driver is there ... here are the results:

>ifconfig lan1 192.168.4.1                      <= my router IP address
ioctl (SIOCAIFADDR): File exists

>ifconfig lan1 192.168.4.44

>ifconfig lan1
lan1: flags=8843<UP,BROADCAST,RUNNING,MULTICAST,LOOPBRD>
        inet 192.168.4.44  netmask 0xffffff00 broadcast 192.168.4.255

>ifconfig lan2 192.168.4.34                     <= lan2 is not configured
ioctl (SIOCAIFADDR): Invalid argument

When the driver loads, a light on the router comes up, indicating an active link.
But when I try to ping the router:
>ping 192.168.4.1

nothing is sent successfully

Peter