xref: /rk3399_rockchip-uboot/board/ti/sdp4430/cmd_bat.c (revision 3e664f6d50ea7f5d6ea96a028fc8f099236e99be)
1*3e664f6dSBalaji T K /*
2*3e664f6dSBalaji T K  * Copyright (C) 2010 Texas Instruments
3*3e664f6dSBalaji T K  *
4*3e664f6dSBalaji T K  * See file CREDITS for list of people who contributed to this
5*3e664f6dSBalaji T K  * project.
6*3e664f6dSBalaji T K  *
7*3e664f6dSBalaji T K  * This program is free software; you can redistribute it and/or
8*3e664f6dSBalaji T K  * modify it under the terms of the GNU General Public License as
9*3e664f6dSBalaji T K  * published by the Free Software Foundation; either version 2 of
10*3e664f6dSBalaji T K  * the License, or (at your option) any later version.
11*3e664f6dSBalaji T K  *
12*3e664f6dSBalaji T K  * This program is distributed in the hope that it will be useful,
13*3e664f6dSBalaji T K  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14*3e664f6dSBalaji T K  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15*3e664f6dSBalaji T K  * GNU General Public License for more details.
16*3e664f6dSBalaji T K  *
17*3e664f6dSBalaji T K  * You should have received a copy of the GNU General Public License
18*3e664f6dSBalaji T K  * along with this program; if not, write to the Free Software
19*3e664f6dSBalaji T K  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
20*3e664f6dSBalaji T K  * MA 02111-1307 USA
21*3e664f6dSBalaji T K  */
22*3e664f6dSBalaji T K 
23*3e664f6dSBalaji T K #include <common.h>
24*3e664f6dSBalaji T K #include <command.h>
25*3e664f6dSBalaji T K 
26*3e664f6dSBalaji T K #ifdef CONFIG_CMD_BAT
27*3e664f6dSBalaji T K #include <twl6030.h>
28*3e664f6dSBalaji T K 
29*3e664f6dSBalaji T K int do_vbat(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
30*3e664f6dSBalaji T K {
31*3e664f6dSBalaji T K 	if (argc == 2) {
32*3e664f6dSBalaji T K 		if (strncmp(argv[1], "startcharge", 12) == 0)
33*3e664f6dSBalaji T K 			twl6030_start_usb_charging();
34*3e664f6dSBalaji T K 		else if (strncmp(argv[1], "stopcharge", 11) == 0)
35*3e664f6dSBalaji T K 			twl6030_stop_usb_charging();
36*3e664f6dSBalaji T K 		else if (strncmp(argv[1], "status", 7) == 0) {
37*3e664f6dSBalaji T K 			twl6030_get_battery_voltage();
38*3e664f6dSBalaji T K 			twl6030_get_battery_current();
39*3e664f6dSBalaji T K 		} else {
40*3e664f6dSBalaji T K 			goto bat_cmd_usage;
41*3e664f6dSBalaji T K 		}
42*3e664f6dSBalaji T K 	} else {
43*3e664f6dSBalaji T K 		goto bat_cmd_usage;
44*3e664f6dSBalaji T K 	}
45*3e664f6dSBalaji T K 	return 0;
46*3e664f6dSBalaji T K 
47*3e664f6dSBalaji T K bat_cmd_usage:
48*3e664f6dSBalaji T K 	return cmd_usage(cmdtp);
49*3e664f6dSBalaji T K }
50*3e664f6dSBalaji T K 
51*3e664f6dSBalaji T K U_BOOT_CMD(
52*3e664f6dSBalaji T K 	bat, 2, 1, do_vbat,
53*3e664f6dSBalaji T K 	"battery charging, voltage/current measurements",
54*3e664f6dSBalaji T K 	"status - display battery voltage and current\n"
55*3e664f6dSBalaji T K 	"bat startcharge - start charging via USB\n"
56*3e664f6dSBalaji T K 	"bat stopcharge - stop charging\n"
57*3e664f6dSBalaji T K );
58*3e664f6dSBalaji T K #endif /* CONFIG_BAT_CMD */
59