diff options
Diffstat (limited to 'device_engine.h')
-rw-r--r-- | device_engine.h | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/device_engine.h b/device_engine.h new file mode 100644 index 0000000..4bcbd78 --- /dev/null +++ b/device_engine.h @@ -0,0 +1,56 @@ +/* + * devman + * + * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved. + * + * Contact: DongGi Jang <dg0402.jang@samsung.com> + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * +*/ + + + +#ifndef __DEVICE_ENGINE_H__ +#define __DEVICE_ENGINE_H__ + +#ifndef API +#define API __attribute__ ((visibility("default"))) +#endif + +#include <stdio.h> +#include "devman.h" + +struct device { + devtype_t devtype; + char *devname; + int (*set_int) (int property, int val); + int (*get_int) (int property, int *val); + int (*probe) (void); + struct device *next; +}; + +void add_dev(struct device *dev); +struct device *find_device(struct device *root_dev, devtype_t devtype); +int set_devtype(char *devname, devtype_t devtype); +void reset_devtype(); +void print_devices(); + +int find_sysfs_node(char *path, char *node_name); + +int sys_get_int(char *fname, int *val); +int sys_set_int(char *fname, int val); +char *sys_get_str(char *fname); +int sys_set_str(char *fname, char *val); + +#endif /* __DEVICE_ENGINE_H__ */ |