Ugggg. I thought I'd already committed this to -current:

If the intline is 0 or 255, then it needs an interrupt routed.  Some
Sony laptops improperly flag devices that need an interrupt with 0 :-(.
This commit is contained in:
Warner Losh 2001-08-27 20:42:07 +00:00
parent f0ea3513c9
commit 3577f582a0
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=82440

View File

@ -1207,7 +1207,7 @@ pci_alloc_resource(device_t dev, device_t child, int type, int *rid,
* If device doesn't have an interrupt routed, and is deserving of * If device doesn't have an interrupt routed, and is deserving of
* an interrupt, try to assign it one. * an interrupt, try to assign it one.
*/ */
if ((type == SYS_RES_IRQ) && (cfg->intline == 255) && (cfg->intpin != 0)) { if ((type == SYS_RES_IRQ) && (cfg->intline == 255 || cfg->intline == 0) && (cfg->intpin != 0)) {
cfg->intline = PCIB_ROUTE_INTERRUPT(device_get_parent(dev), child, cfg->intline = PCIB_ROUTE_INTERRUPT(device_get_parent(dev), child,
cfg->intpin); cfg->intpin);
if (cfg->intline != 255) { if (cfg->intline != 255) {