In message: <[EMAIL PROTECTED]>
            kylin <[EMAIL PROTECTED]> writes:
: >I'm developping a tool running in userland (root) (a command line 
: >tools) for enumerating all devices present on the machine :
: 
: >This tool must scan all hardware buses : pci, but usb, firewire, ide, 
: >etc.... and retreive devices states : configure, not configured, handle 
: >by a driver, not handle by a driver, witch modules is the driver.
: >And I want to have all devices present inside a machine.
: 
: 
: >In some recent Kernel, there is a way from userland, to take a handle 
: >from the root hardware tree, enumeratiing first buses, and under buses, 
: >witch device are connect to those buses. This is is what I am looking 
: >for.
: do u just need the read function on the sysctl or do something from
: the deep end into kernel ?
: does http://www.magnicomp.com/cgi-bin/mcdownload.cgi really help?

You can use devinfo to get 99% of the information that you are looking
for.  This is available in 4.x and newer.  In 5.x and newer it also
provides information about each device's location and its bus specific
plug and play data as well.  You can determine which driver is
attached to each child in the device tree, or if no device is
attached.  While you can't directly map the device name to a module
name, you can get close with some simple hueristics.  There are man
pages for the program, and the underlying library.

Warner
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to