From: Andreas Tobler <toa@pop.agri.ch>
To: mlan@cpu.lu
Cc: linuxppc-dev@lists.linuxppc.org
Subject: Re: pci-detection of Cardbus cards.
Date: Mon, 27 Mar 2000 23:09:07 +0200 [thread overview]
Message-ID: <38DFCDF1.9390BB7D@pop.agri.ch> (raw)
In-Reply-To: 200003271944.VAA01622@piglet.grunz.lu
Michel Lanners wrote:
>
> Hey there,
>
> On 27 Mar, this message from Andreas Tobler echoed through cyberspace:
> > I hoped to get some support in detecting the CardBus card I have
> > correctly. I tried it on a 2399p3, the lspci -vv shows the same as below
> > except the function of the card.
>
> Well, card detection obviously works :-)
>
> > What I try to get working is the following:
> >
> > excerpt of lspci -vv from a 2215p14 kernel patched with this patch:
> >
> > http://www.rr.iij4u.or.jp/~roikawa/others.html
> >
> > I don't know if the numbering below is correct: 01:00.0 for the first
> > function of the device.
>
> Sure, why not? Device 0 on bus 1 is fine; as far as PCI is concerned,
> the CardBus bridge is treated like a PCI-to-PCI bridge, and its child
> bus is assigned bus no. 1.
>
> > Also, how would it be best to integrate the detection of such cards? In
> > the patch above the special bridge TI1131 was hardcoded. But as I know,
> > other PB's (Lombard) uses different (TI1211 or so) chips.
> > Is it necessary to code all different chips or is there a generaL approach?
>
> No, search by device class:
> (from include/linux/pci_ids.h)
> #define PCI_CLASS_BRIDGE_CARDBUS 0x0607
>
> .... which is what's being done:
> +#if defined(SCAN_CARDBUS)
> + if ((dev->class >> 8) == PCI_CLASS_BRIDGE_PCI ||
> + (dev->class >> 8) == PCI_CLASS_BRIDGE_CARDBUS) {
> +#else
> if ((dev->class >> 8) == PCI_CLASS_BRIDGE_PCI) {
> +#endif
>
> > ---lspci2215p14---
> > 00:13.0 CardBus bridge: Texas Instruments PCI1131 (rev 01)
> > Subsystem: Unknown device 104c:ac15
> > Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
> > Stepping- SERR- FastB2B-
> > Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
> > <TAbort- <MAbort- >SERR- <PERR-
> > Latency: 32 set, cache line size 08
> > Interrupt: pin A routed to IRQ 22
> > Region 0: Memory at 81803000 (32-bit, non-prefetchable)
> > Bus: primary=00, secondary=01, subordinate=04, sec-latency=64
> > Memory window 0: 90000000-90005000
> > BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset- 16bInt- PostWrite+
> > 16-bit legacy interface ports at 0007
> ^^^^^^^^^^^^^
> Anybody knows what this is supposed to mean?
>
> > 00:13.1 CardBus bridge: Texas Instruments PCI1131 (rev 01)
>
> This is the second half of the CardBus bridge; its config space is a
> mirror of the first function, except those registers that control the
> slots, where func0 controls slot0 and func1 controls slot1.
>
> > 01:00.0 Ethernet controller: Xircom: Unknown device 0003 (rev 03)
> > Subsystem: Unknown device 115d:1181
> > Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr+
> > Stepping- SERR- FastB2B-
> > Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
> > <TAbort- <MAbort- >SERR- <PERR-
> > Latency: 20 min, 40 max, 40 set
> > Interrupt: pin A routed to IRQ 255
> > Region 0: I/O ports at <unassigned>
>
> Hmmm... memory got assigned, but not IO ports? Who's supposed to assign
> those? And IRQ info is wrong... Are you sure the above patch is run
> _before_ the existing fixup function? It doesn't seem to cooperate
> well... See also this in your previous mail:
>
> > Found 00:99 [104c/ac15] 000607 02
> > Fixups for bus 00
> > Scanning CardBus bridge 00:13.0
> > Scanning CardBus bridge 00:13.1
> > Bus scan for 00 returning with max=09
> ^^
> A bit high, the number of PCI buses so far ;-)
>
> Plus, bus 1 (the one with your CardBus devices) never gets scanned, so
> it's probably not in the chain of buses, and doesn't get resources
> assigned.
>
> Anybody else?
All I can add is, the function of the devices work ok (under 2215p14
with R.O. patch but NOT under 2399p3), means Modem(with an additional
patch and the eth1)
I can mail over the ppp1 -> (Xircom modem) and with eth1 in promiscous
mode I can ftp/nfs/telnet etc.
Sorry my lack of....
Andreas
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
next prev parent reply other threads:[~2000-03-27 21:09 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-03-27 17:31 pci-detection of Cardbus cards Andreas Tobler
2000-03-27 19:44 ` Michel Lanners
2000-03-27 21:09 ` Andreas Tobler [this message]
2000-03-28 10:11 ` Andreas Tobler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=38DFCDF1.9390BB7D@pop.agri.ch \
--to=toa@pop.agri.ch \
--cc=linuxppc-dev@lists.linuxppc.org \
--cc=mlan@cpu.lu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).