From d01ab2e026ae2b9dae9cb4b69f7e6b6528c41828 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Sat, 10 Jun 2000 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 2000-06-10 --- pc/sd53c8xx.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/pc/sd53c8xx.c b/pc/sd53c8xx.c index 06b5fdbed30d67f3b188449e52f9939c373a9395..740abd5838e0f5b981c587e52acf199364db3d48 100644 --- a/pc/sd53c8xx.c +++ b/pc/sd53c8xx.c @@ -1907,17 +1907,23 @@ na_fixup(Controller *c, ulong pa_reg, static SDev* sympnp(void) { - int ba; + char *cp; Pcidev *p; Variant *v; + int ba, nctlr; void *scriptma; Controller *ctlr; SDev *sdev, *head, *tail; ulong regpa, *script, scriptpa; + if(cp = getconf("*maxsd53c8xx")) + nctlr = strtoul(cp, 0, 0); + else + nctlr = 32; + p = nil; head = tail = nil; - while(p = pcimatch(p, NCR_VID, 0)){ + while((p = pcimatch(p, NCR_VID, 0)) != nil && nctlr > 0){ for(v = variant; v < &variant[nelem(variant)]; v++){ if(p->did == v->did && p->rid <= v->maxrid) break; @@ -2011,6 +2017,8 @@ buggery: else head = sdev; tail = sdev; + + nctlr--; } return head;