xref: /rk3399_rockchip-uboot/board/ti/sdp4430/cmd_bat.c (revision 326ea986ac150acdc7656d57fca647db80b50158)
13e664f6dSBalaji T K /*
23e664f6dSBalaji T K  * Copyright (C) 2010 Texas Instruments
33e664f6dSBalaji T K  *
4*1a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
53e664f6dSBalaji T K  */
63e664f6dSBalaji T K 
73e664f6dSBalaji T K #include <common.h>
83e664f6dSBalaji T K #include <command.h>
93e664f6dSBalaji T K 
103e664f6dSBalaji T K #ifdef CONFIG_CMD_BAT
113e664f6dSBalaji T K #include <twl6030.h>
123e664f6dSBalaji T K 
do_vbat(cmd_tbl_t * cmdtp,int flag,int argc,char * const argv[])133e664f6dSBalaji T K int do_vbat(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
143e664f6dSBalaji T K {
153e664f6dSBalaji T K 	if (argc == 2) {
163e664f6dSBalaji T K 		if (strncmp(argv[1], "startcharge", 12) == 0)
173e664f6dSBalaji T K 			twl6030_start_usb_charging();
183e664f6dSBalaji T K 		else if (strncmp(argv[1], "stopcharge", 11) == 0)
193e664f6dSBalaji T K 			twl6030_stop_usb_charging();
203e664f6dSBalaji T K 		else if (strncmp(argv[1], "status", 7) == 0) {
213e664f6dSBalaji T K 			twl6030_get_battery_voltage();
223e664f6dSBalaji T K 			twl6030_get_battery_current();
233e664f6dSBalaji T K 		} else {
243e664f6dSBalaji T K 			goto bat_cmd_usage;
253e664f6dSBalaji T K 		}
263e664f6dSBalaji T K 	} else {
273e664f6dSBalaji T K 		goto bat_cmd_usage;
283e664f6dSBalaji T K 	}
293e664f6dSBalaji T K 	return 0;
303e664f6dSBalaji T K 
313e664f6dSBalaji T K bat_cmd_usage:
323e664f6dSBalaji T K 	return cmd_usage(cmdtp);
333e664f6dSBalaji T K }
343e664f6dSBalaji T K 
353e664f6dSBalaji T K U_BOOT_CMD(
363e664f6dSBalaji T K 	bat, 2, 1, do_vbat,
373e664f6dSBalaji T K 	"battery charging, voltage/current measurements",
383e664f6dSBalaji T K 	"status - display battery voltage and current\n"
393e664f6dSBalaji T K 	"bat startcharge - start charging via USB\n"
403e664f6dSBalaji T K 	"bat stopcharge - stop charging\n"
413e664f6dSBalaji T K );
423e664f6dSBalaji T K #endif /* CONFIG_BAT_CMD */
43