Eric,

static void ht_collapse_previous_enumeration(unsigned bus)
{       
        device_t dev;
                
        /* Spin through the devices and collapse any previous
         * hypertransport enumeration.
         */
        for(dev = PCI_DEV(bus, 0, 0); dev <= PCI_DEV(bus, 0x1f, 0x7); dev +=
PCI_DEV(0, 1, 0)) {

I think PCI_DEV(bus, 0, 0) should be changed to PCI_DEV(bus, 1, 0)
And before that it should check PCI_DEV(bus,0,0), if the device is there,
collapse should get back right away and don't do any collapse.

In the hypertransport.c collapse don't need to check PCI_DEV(bus, 0, 0),
because it must begin from unitid 1.

YH

-----Original Message-----
From: Stefan Reinauer [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, December 15, 2004 8:36 AM
To: YhLu
Cc: 'Eric W. Biederman'; [EMAIL PROTECTED]
Subject: Re: collapsing devices.

* YhLu <[EMAIL PROTECTED]> [041214 03:14]:
> Stefan,
> 
> I add dump_pci_decvies_on_bus in debug.c
> 
> Please add calling to dump_pci_devices_on_bus(busn) before
> ht_collapse_previous_enumeration(busn). In ht_setup_chains.
> 
> Also in auto.c you need to put inconerent_ht.c after debug.c.

See the other mail I sent you. When just calling a loop for scanning
bus 0-16 before ht_setup_chains, it finds the devices on bus0, none on
1-5 and then hangs while scanning bus5

Stefan
_______________________________________________
Linuxbios mailing list
[EMAIL PROTECTED]
http://www.clustermatic.org/mailman/listinfo/linuxbios

Reply via email to