xref: /rk3399_rockchip-uboot/cmd/charge.c (revision c0b38c6cdf99398b3a7a178a5409c2d45e1b1ea5)
1*c0b38c6cSJoseph Chen /*
2*c0b38c6cSJoseph Chen  * (C) Copyright 2017 Rockchip Electronics Co., Ltd
3*c0b38c6cSJoseph Chen  *
4*c0b38c6cSJoseph Chen  * SPDX-License-Identifier:     GPL-2.0+
5*c0b38c6cSJoseph Chen  */
6*c0b38c6cSJoseph Chen 
7*c0b38c6cSJoseph Chen #include <common.h>
8*c0b38c6cSJoseph Chen #include <command.h>
9*c0b38c6cSJoseph Chen #include <dm.h>
10*c0b38c6cSJoseph Chen #include <power/charge_display.h>
11*c0b38c6cSJoseph Chen 
12*c0b38c6cSJoseph Chen static int charge_display(cmd_tbl_t *cmdtp, int flag, int argc,
13*c0b38c6cSJoseph Chen 			  char *const argv[])
14*c0b38c6cSJoseph Chen {
15*c0b38c6cSJoseph Chen 	int ret;
16*c0b38c6cSJoseph Chen 	struct udevice *dev;
17*c0b38c6cSJoseph Chen 
18*c0b38c6cSJoseph Chen 	if (argc != 1)
19*c0b38c6cSJoseph Chen 		return CMD_RET_USAGE;
20*c0b38c6cSJoseph Chen 
21*c0b38c6cSJoseph Chen 	ret = uclass_get_device(UCLASS_CHARGE_DISPLAY, 0, &dev);
22*c0b38c6cSJoseph Chen 	if (ret) {
23*c0b38c6cSJoseph Chen 		if (ret != -ENODEV) {
24*c0b38c6cSJoseph Chen 			printf("Get UCLASS CHARGE DISPLAY failed: %d\n", ret);
25*c0b38c6cSJoseph Chen 			return ret;
26*c0b38c6cSJoseph Chen 		}
27*c0b38c6cSJoseph Chen 
28*c0b38c6cSJoseph Chen 		return 0;
29*c0b38c6cSJoseph Chen 	}
30*c0b38c6cSJoseph Chen 
31*c0b38c6cSJoseph Chen 	return charge_display_show(dev);
32*c0b38c6cSJoseph Chen }
33*c0b38c6cSJoseph Chen 
34*c0b38c6cSJoseph Chen U_BOOT_CMD(
35*c0b38c6cSJoseph Chen 	charge, 1, 0, charge_display,
36*c0b38c6cSJoseph Chen 	"Charge display",
37*c0b38c6cSJoseph Chen 	""
38*c0b38c6cSJoseph Chen );
39