Amit Arora | 39f2954 | 2010-09-14 12:03:22 +0530 | [diff] [blame] | 1 | /******************************************************************************* |
Amit Kucheria | c0e17fc | 2011-01-17 09:35:52 +0200 | [diff] [blame] | 2 | * Copyright (C) 2010, Linaro Limited. |
Amit Arora | 39f2954 | 2010-09-14 12:03:22 +0530 | [diff] [blame] | 3 | * |
| 4 | * This file is part of PowerDebug. |
| 5 | * |
| 6 | * All rights reserved. This program and the accompanying materials |
| 7 | * are made available under the terms of the Eclipse Public License v1.0 |
| 8 | * which accompanies this distribution, and is available at |
| 9 | * http://www.eclipse.org/legal/epl-v10.html |
| 10 | * |
| 11 | * Contributors: |
| 12 | * Amit Arora <amit.arora@linaro.org> (IBM Corporation) |
| 13 | * - initial API and implementation |
| 14 | *******************************************************************************/ |
| 15 | |
Amit Arora | e9e16b0 | 2010-08-03 10:15:20 +0530 | [diff] [blame] | 16 | #include <stdio.h> |
| 17 | #include <stdlib.h> |
| 18 | #include <unistd.h> |
| 19 | #include <string.h> |
| 20 | #include <dirent.h> |
| 21 | #include <getopt.h> |
| 22 | #include <errno.h> |
Amit Arora | 47fd918 | 2010-08-24 13:26:06 +0530 | [diff] [blame] | 23 | #include <ncurses.h> |
Amit Arora | e9e16b0 | 2010-08-03 10:15:20 +0530 | [diff] [blame] | 24 | |
Amit Kucheria | 5bd36f8 | 2011-01-24 13:15:27 +0200 | [diff] [blame] | 25 | #define VERSION "0.4.1" |
Amit Arora | fefe8bf | 2010-08-05 13:31:20 +0530 | [diff] [blame] | 26 | |
Amit Arora | c93e071 | 2010-10-07 13:51:53 +0530 | [diff] [blame] | 27 | #define TOTAL_FEATURE_WINS 3 /* Regulator, Clock and Sensor (for now) */ |
Amit Kucheria | ee851a1 | 2011-01-12 04:57:48 +0530 | [diff] [blame] | 28 | enum {CLOCK, REGULATOR, SENSOR}; |
Amit Arora | a06a730 | 2010-12-02 15:59:37 +0530 | [diff] [blame] | 29 | enum {CLOCK_SELECTED = 1, REFRESH_WINDOW}; |
Amit Arora | e9e16b0 | 2010-08-03 10:15:20 +0530 | [diff] [blame] | 30 | |
Daniel Lezcano | 2adc48d | 2011-06-08 23:30:01 +0200 | [diff] [blame] | 31 | extern int read_and_dump_clock_info(char *clk); |
Daniel Lezcano | 897f733 | 2011-03-26 22:06:06 +0100 | [diff] [blame] | 32 | extern void find_parents_for_clock(char *clkname, int complete); |
Daniel Lezcano | 05916f8 | 2011-06-08 23:30:01 +0200 | [diff] [blame] | 33 | extern int read_and_print_clock_info(void); |
Daniel Lezcano | 2adc48d | 2011-06-08 23:30:01 +0200 | [diff] [blame] | 34 | extern int print_clock_info(int hrow, int selected); |
Amit Arora | dca56d0 | 2010-08-05 14:57:22 +0530 | [diff] [blame] | 35 | extern void print_string_val(char *name, char *val); |
Amit Arora | ac4e865 | 2010-11-09 11:16:53 +0530 | [diff] [blame] | 36 | extern void print_clock_header(void); |
Daniel Lezcano | 2adc48d | 2011-06-08 23:30:01 +0200 | [diff] [blame] | 37 | |
Daniel Lezcano | b3e6e81 | 2011-06-15 15:45:12 +0200 | [diff] [blame^] | 38 | extern int display_print_line(int window, int line, char *str, |
| 39 | int bold, void *data); |
Daniel Lezcano | 2adc48d | 2011-06-08 23:30:01 +0200 | [diff] [blame] | 40 | |
Daniel Lezcano | b3e6e81 | 2011-06-15 15:45:12 +0200 | [diff] [blame^] | 41 | extern int display_refresh_pad(int window); |
| 42 | extern int display_reset_cursor(int window); |
| 43 | extern int display_next_line(int window); |
| 44 | extern int display_prev_line(int window); |
| 45 | extern void *display_get_row_data(int window); |
Daniel Lezcano | 2adc48d | 2011-06-08 23:30:01 +0200 | [diff] [blame] | 46 | |
| 47 | extern int clock_toggle_expanded(void); |
Daniel Lezcano | b3e6e81 | 2011-06-15 15:45:12 +0200 | [diff] [blame^] | 48 | extern int display_clock_select(int window, int line); |
| 49 | extern int display_clock_unselect(int window, int line, bool bold); |
Amit Arora | 47fd918 | 2010-08-24 13:26:06 +0530 | [diff] [blame] | 50 | |
Amit Arora | 1755278 | 2010-12-02 12:23:14 +0530 | [diff] [blame] | 51 | extern void get_sensor_info(char *path, char *name, char *sensor, int verbose); |
| 52 | extern int read_and_print_sensor_info(int verbose); |
| 53 | extern void print_sensor_header(void); |
| 54 | |
Amit Arora | c93e071 | 2010-10-07 13:51:53 +0530 | [diff] [blame] | 55 | extern void killall_windows(int all); |
Daniel Lezcano | 558a6d5 | 2011-03-23 14:37:41 +0100 | [diff] [blame] | 56 | extern void show_header(int selectedwindow); |
| 57 | extern void create_windows(int selectedwindow); |
| 58 | extern void create_selectedwindow(int selectedwindow); |
Daniel Lezcano | 691d556 | 2011-03-26 22:05:57 +0100 | [diff] [blame] | 59 | |
| 60 | struct regulator_info; |
Daniel Lezcano | 833b63a | 2011-03-26 22:06:00 +0100 | [diff] [blame] | 61 | extern void show_regulator_info(struct regulator_info *reg_info, |
| 62 | int nr_reg, int verbose); |