2008-05-26 20:52:27 +04:00
|
|
|
/*
|
|
|
|
* Copyright 2004-2008, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
|
|
|
|
* Distributed under the terms of the MIT License.
|
|
|
|
*/
|
|
|
|
#ifndef _SYSTEM_DEVICE_MANAGER_DEFS_H
|
|
|
|
#define _SYSTEM_DEVICE_MANAGER_DEFS_H
|
|
|
|
|
|
|
|
|
|
|
|
#include <device_manager.h>
|
|
|
|
|
|
|
|
|
|
|
|
// temporary/optional device manager syscall API
|
|
|
|
#define DEVICE_MANAGER_SYSCALLS "device_manager"
|
|
|
|
|
|
|
|
#define DM_GET_ROOT 1
|
|
|
|
#define DM_GET_CHILD 2
|
|
|
|
#define DM_GET_NEXT_CHILD 3
|
|
|
|
#define DM_GET_NEXT_ATTRIBUTE 4
|
|
|
|
|
2008-06-07 02:23:25 +04:00
|
|
|
typedef addr_t device_node_cookie;
|
|
|
|
|
2008-05-26 20:52:27 +04:00
|
|
|
struct device_attr_info {
|
2008-06-07 02:23:25 +04:00
|
|
|
device_node_cookie node_cookie;
|
|
|
|
device_node_cookie cookie;
|
2008-05-26 20:52:27 +04:00
|
|
|
char name[255];
|
|
|
|
type_code type;
|
|
|
|
union {
|
|
|
|
uint8 ui8;
|
|
|
|
uint16 ui16;
|
|
|
|
uint32 ui32;
|
|
|
|
uint64 ui64;
|
|
|
|
char string[255];
|
|
|
|
struct {
|
|
|
|
void *data;
|
|
|
|
size_t length;
|
|
|
|
} raw;
|
|
|
|
} value;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif /* _SYSTEM_DEVICE_MANAGER_DEFS_H */
|