Pete Zaitcev wrote:
>
> > > What hurts us the most is
> > > that PCI bus scan does not work.
> >
> > What do you mean ? I remember, I was able to do lspci on my JE1.
>
> int pcibios_read_config_dword (unsigned char bus, unsigned char device_fn,
> unsigned char where, unsigned int *value)
> {
> unsigned long flags;
> if (where&3) return PCIBIOS_BAD_REGISTER_NUMBER;
> if (bus != 0 ||
> (device_fn != 0 && device_fn != 1 && device_fn != 0x80)) {
> *value = 0xffffffff;
> return PCIBIOS_SUCCESSFUL;
> }
> ................
>
> I have no idea how a why lspci works for you. In the code above you
> fool pci_scan_bus when it looks for devices. Of course the kernel
> crashes on anything that was no device function 0x80.
Have you tried to remove this ? As I can remember, access to config
spaces of non-existent devices just hangs JE1.
And I can't understand why the kernel crashes. pci_scan_bus hanles the
case when both PCIBIOS_SUCCESSFUL and 0xffffffff are returned from this
function.
> The logics of looking for "assigned-addresses: in pcic_map_pci_device()
> is broken as well. Just consider what happens when I plug 3C905 into
> JavaStation-E. The system ends with panic("PCIC: unable to locate prom
> node for pci device such and such\n").
As it supposed to work :-) But it should be extented to allow cards w/o
prom support, of course.
Regards,
Gleb.
-
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of the message to [EMAIL PROTECTED]