diff options
author | Daniel Lezcano <daniel.lezcano@linaro.org> | 2011-08-25 15:46:13 +0200 |
---|---|---|
committer | Daniel Lezcano <daniel.lezcano@linaro.org> | 2011-08-25 15:46:13 +0200 |
commit | 03fc66bc96ad1664465568f7d99fad17f1e68794 (patch) | |
tree | bb98d2050af45db39e47e1b4516b3154885d3fc8 | |
parent | 269de4f0bbe07a6607eac062129fc0fd68c5a32e (diff) | |
download | powerdebugV2-03fc66bc96ad1664465568f7d99fad17f1e68794.tar.gz |
read the gpio directory structure
Read the gpio directory structure where we will read the different
data we are interested in.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | gpio.c | 103 | ||||
-rw-r--r-- | gpio.h | 17 |
3 files changed, 121 insertions, 1 deletions
@@ -4,7 +4,7 @@ MANDIR=/usr/share/man/man8 CFLAGS?=-O1 -g -Wall -Wshadow CC?=gcc -OBJS = powerdebug.o sensor.o clocks.o regulator.o \ +OBJS = powerdebug.o sensor.o clocks.o regulator.o gpio.o \ display.o tree.o utils.o mainloop.o default: powerdebug @@ -0,0 +1,103 @@ +/******************************************************************************* + * Copyright (C) 2010, Linaro Limited. + * + * This file is part of PowerDebug. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Daniel Lezcano <daniel.lezcano@linaro.org> (IBM Corporation) + * - initial API and implementation + *******************************************************************************/ + +#ifndef _GNU_SOURCE +#define _GNU_SOURCE +#include <stdio.h> +#undef _GNU_SOURCE +#endif +#include <mntent.h> +#include <string.h> +#include <stdbool.h> +#include <stdlib.h> +#include <unistd.h> +#include <sys/param.h> +#include <sys/stat.h> + +#include "powerdebug.h" +#include "display.h" +#include "tree.h" +#include "utils.h" + +#define SYSFS_GPIO "/sys/class/gpio" + +static struct tree *gpio_tree = NULL; + +static int gpio_display(bool refresh) +{ + return 0; +} + +static int gpio_select(void) +{ + return 0; +} + +static int gpio_find(const char *name) +{ + return 0; +} + +static int gpio_selectf(void) +{ + return 0; +} + +static struct display_ops gpio_ops = { + .display = gpio_display, + .select = gpio_select, + .find = gpio_find, + .selectf = gpio_selectf, +}; + +static inline int read_gpio_cb(struct tree *t, void *data) +{ + return 0; +} + +static int read_gpio_info(struct tree *tree) +{ + return 0; +} + +static int fill_gpio_cb(struct tree *t, void *data) +{ + return 0; +} + +static int fill_gpio_tree(void) +{ + return 0; +} + +int gpio_dump(void) +{ + return 0; +} + +/* + * Initialize the gpio framework + */ +int gpio_init(void) +{ + gpio_tree = tree_load(SYSFS_GPIO, NULL, false); + if (!gpio_tree) + return -1; + + if (fill_gpio_tree()) + return -1; + + return display_register(GPIO, &gpio_ops); +} @@ -0,0 +1,17 @@ +/******************************************************************************* + * Copyright (C) 2010, Linaro Limited. + * + * This file is part of PowerDebug. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Daniel Lezcano <daniel.lezcano@linaro.org> (IBM Corporation) + * - initial API and implementation + *******************************************************************************/ + +extern int gpio_init(void); +extern int gpio_dump(void); |