2021-10-11 18:37:13 -03:00

38 lines
1.2 KiB
C

/* @(#)devr.h 1.1 94/10/31 SMI */
/*
* Copyright 1988, Sun Microsystems, Inc.
*/
#ifndef _sun4c_devr_h
#define _sun4c_devr_h
/*
* This structure defines the PROM-kernel interface for autoconfiguration
* stuff. The PROM passes a pointer to this struct to UNIX via the romvec.
* The routines are used as follows:
*
* devr_next(int nodeid) - if 'nodeid' = 0, returns ID of top level node.
* Otherwise returns ID of next sibling of 'nodeid'; 0 if none exists.
*
* devr_child(int parentid) - returns ID of first child of 'nodeid'; 0 if
* none exists.
*
* devr_getproplen(int nodeid, char *name) - returns the size in bytes of
* the value of 'name' in the property list for 'nodeid'; 0 if 'name'
* is not found.
*
* devr_getprop(int nodeid, char *name, addr_t buf) - copies the value of
* 'name' in the property list for 'nodeid' into 'buf'. Returns the
* size in bytes of the value, or 0 if 'name' is not found. This call
* assumes sufficient space has been allocated in 'buf' for the value.
*/
struct dev_romops {
int (*devr_next)(); /* get next sibling */
int (*devr_child)(); /* get first child */
int (*devr_getproplen)(); /* get value length */
int (*devr_getprop)(); /* get value */
};
#endif /* !_sun4c_devr_h */