Subject: Re: PCI bridge strangeness
To: John Klos <john@sixgirls.org>
From: Bill Studenmund <wrstuden@netbsd.org>
List: port-macppc
Date: 10/14/2002 11:02:24
On Fri, 11 Oct 2002, John Klos wrote:

> Hi,
>
> Just a little discussion before creating a PR: I have a PM 9600 (six PCI),
> and I've noticed that when I boot, I see all of my cards (SCSI and three
> ethernet), but when I don't do a cold boot, I only see one ethernet and
> the SCSI card.
>
> First: if I do a shutdown -r now, it shuts down completely, then hangs. If
> I do a shutdown -h now, I get to the OF prompt and can type reset-all, and
> it reboots and I get two of the four cards.
>
> The two that don't show up are in two of the three leftmost slots (looking
> at the machine from the front); the two that do show up are in the
> rightmost (inside, upper) slots. I can't afford the downtime to test
> moving them, but I'm guessing this has something to do with the PCI
> bridge:
>
> andromeda: {24} diff dmesg.good dmesg.bad
> 39,55d38
> < bandit1 at mainbus0
> < pci1 at bandit1 bus 1
> < pci1: i/o space, memory space enabled
> < pchb1 at pci1 dev 11 function 0
> < pchb1: Apple Computer Bandit Host-PCI Bridge (rev. 0x03)
> < rtk1 at pci1 dev 13 function 0: RealTek 8139 10/100BaseTX
> < rtk1: interrupting at irq 27
> < rtk1: Ethernet address 00:50:fc:5a:40:7d
> < ukphy1 at rtk1 phy 7: Generic IEEE 802.3u media interface
> < ukphy1: OUI 0x000000, model 0x0000, rev. 0
> < ukphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
> < rtk2 at pci1 dev 14 function 0: RealTek 8139 10/100BaseTX
> < rtk2: interrupting at irq 28
> < rtk2: Ethernet address 00:50:fc:4c:39:06
> < ukphy2 at rtk2 phy 7: Generic IEEE 802.3u media interface
> < ukphy2: OUI 0x000000, model 0x0000, rev. 0
> < ukphy2: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
>
> So does anyone want to play with this, or should I open a PR?

Send a PR.

Just to make sure I understand this, bandit1 and pci1 don't show up on a
warm boot?

The bandit code is in sys/arch/macppc/pci/bandit.c, so you might try
putting some printfs in there to see what changes between good & bad
boots.

Take care,

Bill