Re: How do I find whatever combination of things end up defining pcib_get_bus(. . .)?
- In reply to: Yuri : "Re: How do I find whatever combination of things end up defining pcib_get_bus(. . .)?"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 28 Dec 2022 03:40:26 UTC
On Dec 27, 2022, at 17:41, Yuri <yuri@aetern.org> wrote: > Mark Millard wrote: >> # grep -r "\<pcib_get_bus\>" /usr/13S-src/ | more >> /usr/13S-src/sys/mips/nlm/xlp_pci.c: busno = pcib_get_bus(dev); >> /usr/13S-src/sys/powerpc/ofw/ofw_pcibus.c: busno = pcib_get_bus(dev); >> /usr/13S-src/sys/dev/pci/pci.c: busno = pcib_get_bus(dev); >> /usr/13S-src/sys/dev/pci/pci.c: busno = pcib_get_bus(dev); >> /usr/13S-src/sys/dev/pci/pci.c: busno = pcib_get_bus(dev); >> /usr/13S-src/sys/dev/cardbus/cardbus.c: pcib_get_bus(cbdev), pcib_get_bus(cbdev), 1, 0); >> /usr/13S-src/sys/dev/cardbus/cardbus.c: bus = pcib_get_bus(cbdev); >> /usr/13S-src/sys/dev/hyperv/pcib/vmbus_pcib.c: busno = pcib_get_bus(dev); >> /usr/13S-src/sys/dev/pccbb/pccbb.c: b = pcib_get_bus(child); >> /usr/13S-src/sys/dev/pccbb/pccbb_pci.c: sc->pribus = pcib_get_bus(parent); >> /usr/13S-src/sys/x86/pci/qpi.c: *result = pcib_get_bus(dev); >> /usr/13S-src/sys/x86/pci/pci_bus.c: bus = pcib_get_bus(dev); >> /usr/13S-src/sys/x86/iommu/intel_drv.c: *busno = pcib_get_bus(bus); >> >> Everything found is a use, not a definition. (I also tried: >> # grep -r "\<pcib_get_bus\>" /usr/obj/BUILDs/13S-CA72-nodbg-clang/ .) >> >> Historically I've managed to eventually track down definitions >> are are less direct, such as ones that are formed via macros >> that put together names. But, so far, I've not managed to for >> pcib_get_bus . >> >> So, hopefully, someone can point me to what I've missed. > > See __BUS_ACCESSOR() macro in sys/bus.h (I had to have a bit of fun with > `cc -E` to get at it). Thanks. Looks like could have explored with just PCIB_ and found: /usr/13S-src/sys/dev/pci/pcivar.h:#define PCIB_ACCESSOR(var, ivar, type) \ /usr/13S-src/sys/dev/pci/pcivar.h:PCIB_ACCESSOR(domain, DOMAIN, uint32_t) /usr/13S-src/sys/dev/pci/pcivar.h:PCIB_ACCESSOR(bus, BUS, uint32_t) /usr/13S-src/sys/dev/pci/pcivar.h:#undef PCIB_ACCESSOR and the #define line would have shown: #define PCIB_ACCESSOR(var, ivar, type) \ __BUS_ACCESSOR(pcib, var, PCIB, ivar, type) But in everything I did I was explicit about "get" as part of the text I explored with. === Mark Millard marklmi at yahoo.com