Alan Coopersmith wrote: > X.Org is already moving from the current pci scanning to libpciaccess, > for which Edward Shu in Sun's Beijing video driver team contributed the > Solaris port - I don't know if the interfaces it uses solves the SPARC > bus scanning problem or not though.
In the file libpciaccess/solx_devfs.c from the current X.org git tree there is the following curious code: /* * Identify problematic southbridges. These have device id 0x5249 and * vendor id 0x10b9. Check for revision ID 0 and class code 060400 as well. * Values are little endian, so they are reversed for SPARC. * * Check for these southbridges on all architectures, as the issue is a * southbridge issue, independent of processor. * * If one of these is found during probing, skip probing other devs/funcs on * the rest of the bus, since the southbridge and all devs underneath will * otherwise disappear. */ #if (NATIVE_ENDIAN == PCITOOL_ACC_ATTR_ENDN_BIG) #define U45_SB_DEVID_VID 0xb9104952 #define U45_SB_CLASS_RID 0x00000406 #else #define U45_SB_DEVID_VID 0x524910b9 #define U45_SB_CLASS_RID 0x06040000 #endif ... and in probe_dev() /* * Special case for the type of Southbridge found on * Ultra-45 and other sun4u fire workstations. */ if ((config_hdr.dwords[0] == U45_SB_DEVID_VID) && (config_hdr.dwords[2] == U45_SB_CLASS_RID)) { rval = ECANCELED; break; } What is special about the sun4u bridge? Pat ---