Date: Sun, 21 Jan 2001 22:04:58 -0800 From: Mike Smith <msmith@freebsd.org> To: David Syphers <dbsypher@uchicago.edu> Cc: mobile@FreeBSD.ORG Subject: Re: configuring AmbiCom cardbus Message-ID: <200101220605.f0M64xD02083@mass.dis.org> In-Reply-To: Your message of "Sun, 21 Jan 2001 21:12:34 CST." <4.3.2.7.2.20010121210952.00bfb8b0@nsit-popmail.uchicago.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multipart MIME message. --==_Exmh_-1017557920 Content-Type: text/plain; charset=us-ascii > At 07:19 PM 1/21/01 -0700, Warner Losh wrote: > >In message <4.3.2.7.2.20010121190509.00c05f00@nsit-popmail.uchicago.edu> > >David Syphers writes: > >: I'm running a 5-CURRENT snapshot from January 20. I've built a kernel that > >: includes cardbus, pccbb, miibus, and dc (for my AmbiCom 8100 DEC > > > >This sounds like a resource conflict problem. OR a problem with our > >implementation of the TI-1130. > > Okay... let's pretend I don't know anything about setting up ethernet cards > under FreeBSD. Which is actually a reasonable approximation of the > truth. How would I figure out which resources are conflicting and make > them love each other? You can't, really. Try applying this patch and rebuild your kernel. It's ugly, but I (and a number of people, possibly including yourself) will need it until PCI resource management is fixed. --==_Exmh_-1017557920 Content-Type: text/plain ; name="x"; charset=us-ascii Content-Description: x Content-Disposition: attachment; filename="x" --- z/sys/dev/pci/pci.c Fri Dec 8 14:10:52 2000 +++ .#pci.c.1.167 Sat Dec 9 14:09:07 2000 @@ -1174,6 +1174,31 @@ printf(" at %d:%d (no driver attached)\n", pci_get_slot(child), pci_get_function(child)); + + /* + * XXX - don't commit this! Allocate any unclaimed resources, which + * breaks kld's for PCI devices after boot. + */ + { + struct pci_devinfo *dinfo = device_get_ivars(child); + struct resource_list *rl = &dinfo->resources; + struct resource_list_entry *rle; + + SLIST_FOREACH(rle, rl, link) { + if (!rle->res) { + int rid = rle->rid; + if (rle->type != SYS_RES_IRQ) + resource_list_alloc(rl, dev, child, + rle->type, &rid, 0, ~0, 1, 0); + else + resource_list_alloc(rl, dev, child, + rle->type, &rid, 0, ~0, 1, + RF_SHAREABLE); + } + } + } + + return; } --==_Exmh_-1017557920 Content-Type: text/plain; charset=us-ascii ... every activity meets with opposition, everyone who acts has his rivals and unfortunately opponents also. But not because people want to be opponents, rather because the tasks and relationships force people to take different points of view. [Dr. Fritz Todt] V I C T O R Y N O T V E N G E A N C E --==_Exmh_-1017557920-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-mobile" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101220605.f0M64xD02083>