Caution: This version of this document is no longer maintained. For the latest documentation, see


Find an item in the hwinfo structure


#include <hw/sysinfo.h>

unsigned hwi_find_item( unsigned start, 
                        ... );


Where to start the search for the given item.

For the initial call, set this argument to HWI_NULL_OFF. If the item found isn't the one that you want, pass the return value from the first call to hwi_find_item() as the start parameter of the next call. This makes the search pick up where it left off. You can repeat this process as many times as required (the return value from the second call going into the start parameter of the third, etc).

char *
A sequence of names for identifying the item being searched.

Terminate the sequence with a NULL pointer. The last string before the NULL is the bottom-level item name that you're looking for, the string in front of that is the name of the item that owns the bottom-level item, etc.



Use the -l c option to qcc to link against this library. This library is usually included automatically.

Note: This function is in libc.a, but not in (in order to save space).


The hwi_find_item() function finds an item in the hwinfo structure of the system page.


The offset of the item requested, or HWI_NULL_OFF if the item wasn't found.


Find the first occurrence of an item called “foobar”:

item_off = hwi_find_item(HWI_NULL_OFF, "foobar", NULL);

Find the first occurrence of an item called “foobar” that's owned by “sam”:

item_off = hwi_find_item(HWI_NULL_OFF, "sam", "foobar", NULL);


QNX Neutrino

Cancellation point No
Interrupt handler Yes
Signal handler Yes
Thread Yes

See also:

hwi_find_tag(), hwi_off2tag(), hwi_tag2off()

Structure of the system page in the Customizing Image Startup Programs chapter of Building Embedded Systems