Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 08 Jul 2007 20:40:11 +0800
From:      Zhang Weiwu <zhangweiwu@realss.com>
To:        freebsd-mobile@freebsd.org
Subject:   Re: unable to map IRQ for my pccard
Message-ID:  <1183898411.6275.11.camel@joe.realss.com>
In-Reply-To: <1183813178.7741.36.camel@joe.realss.com>
References:  <1183812387.7741.32.camel@joe.realss.com> <1183813178.7741.36.camel@joe.realss.com>

next in thread | previous in thread | raw e-mail | index | archive | help
After googling around and reading a lot of mailing list messages I have
find the clue (but cannot solve the problem).

The thinkpad BIOS have reserved several IRQs for use with PCI device, in
my case only IRQ 11 has been reserved for PCI device, I can tell this by
run DOS (with Windows 98 rescue boot disk), then run the PS2.EXE utility
provided on http://www-307.ibm.com/pc/support/site.wss/MIGR-4ZGPZ7.html
by IBM). However I got a second problem.

I wish to make some setting in BIOS to reserve more IRQs for PCI
devices, however the FOSS tool for this purpose "tpctl" is only
available for Linux and NetBSD (/usr/sbin/tpctl in NetBSD), the
non-FOSS tool for this purpose "ps2.exe" is only available for DOS,
Windows 9x, Windows NT, Win2k, OS/2. Seems FreeBSD is one of the few
operating systems left without such a tool, not even in ports. So I
decide to run a DOS Live CD (i.e. Windows 98 Installation CD1) and run
ps2.exe DOS version. Then I got another problem:

On IBM I can only find download for PS2.EXE v 2.44, in this version
there is no way to specify more than one IRQ to be reserved for PCI
devices.

The correct behavior of version 2.22 is:

C:\>ps2 ? pciirq
Command Syntax : PS2   PCIIRQ  Disable
                               First IRQ (Second IRQ) (Third IRQ) (Fourth IRQ)

                       Valid IRQs  :  3|4|5|7|9|10|11|15

Assigned IRQ(s) :  11
Description    : This command is to reserve the IRQ(s) for PCI devices.
                 When ‘Disable’ is specified, PCI device may not work
                 properly. To see the current system IRQ assignment,
                 type “PS2 ? IRQ”.

In my case it is:

C:\>ps2 ? pciirq
Command Syntax : PS2   PCIIRQ  Disable
                               First IRQ

                       Valid IRQs  :  3|4|5|7|9|10|11|15

Assigned IRQ(s) :  11
Description    : This command is to reserve the IRQ(s) for PCI devices.
                 When ‘Disable’ is specified, PCI device may not work
                 properly. To see the current system IRQ assignment,
                 type “PS2 ? IRQ”.


The difference is on the second line of output: my version of PS2.EXE do
not have parameter for (Second IRQ) and so forth.

I tried to run "PS2 PCIIRQ 10 11" -> only 10 is assigned to PCIIRQ
I tried to run "PS2 PCIIRQ 11 10" -> only 11 is assigned to PCIIRQ
-> conclusion: in my PS2.EXE the second parameter is ignored.

Strictly saying to this far it's no longer a FreeBSD problem (this I am
being OT) but I write anyway in case some other people may find this
information useful.

On Sat, 2007-07-07 at 20:59 +0800, Zhang Weiwu wrote:
> I have found people reporting very similar problem on this list some two
> years ago.
> 
> http://lists.freebsd.org/pipermail/freebsd-questions/2005-December/107439.html
> 
> Quote here since it isn't long, no one has yet replied this message
> written by Andrew Walker on Tue Dec 13 12:40:01 PST 2005:
> > I have installed FreeBSD 6.0 on my Thinkpad 380XD, but I cannot get
> > networking to work, and I believe it is because there is a conflict
> > with my cardbus initializing.
> > 
> > The card is a Xircom RBEM58G-100, and is listed as supported under the
> > dc driver. Here are the relavent messages from /var/log/messages:
> > 
> > ----
> > 
> > cbb0: <TI1250 PCI-CardBus Bridge> mem 0x20822000-0x20822fff at device
> > 2.0 on pci0
> > cardbus0: <CardBus bus> on cbb0
> > cbb0: <TI1250 PCI-CardBus Bridge> mem 0x20821000-0x20821fff at device
> > 2.1 on pci0
> > cardbus0: <CardBus bus> on cbb1
> > $PIR: ROUTE_INTERRUPT failed.
> > cbb: Unable to map IRQ...
> > device_attach: cbb1 attach returned 12
> > 
> > ----AND LATER (may not be relavent, but...)----
> > 
> > unknown: <PNP0303> can't assign resource (port)
> > unknown: <PNP0f13> can't assign resource (irq)
> > unknown: <PNP0700> can't assign resource (port)
> > unknown: <PNP0c02> can't assign resource (memory)
> > unknown: <PNP0400> can't assign resource (port)
> > unknown: <PNP0071> can't assign resource (port)
> > unknown: <PNP0e03> can't assign resource (port)
> > 
> > --------
> 
> _______________________________________________
> freebsd-mobile@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-mobile
> To unsubscribe, send any mail to "freebsd-mobile-unsubscribe@freebsd.org"
-- 
Zhang Weiwu
Real Softservice
http://www.realss.com
+86 592 2091112




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