155b6f88eSJoseph Chen /* 255b6f88eSJoseph Chen * (C) Copyright 2017 Rockchip Electronics Co., Ltd 355b6f88eSJoseph Chen * 455b6f88eSJoseph Chen * SPDX-License-Identifier: GPL-2.0+ 555b6f88eSJoseph Chen */ 655b6f88eSJoseph Chen 755b6f88eSJoseph Chen #include <command.h> 855b6f88eSJoseph Chen #include <common.h> 955b6f88eSJoseph Chen #include <dm.h> 1055b6f88eSJoseph Chen #include <power/charge_display.h> 1155b6f88eSJoseph Chen charge_display_show(struct udevice * dev)12*94cf1096SJoseph Chenint charge_display_show(struct udevice *dev) 1355b6f88eSJoseph Chen { 1455b6f88eSJoseph Chen const struct dm_charge_display_ops *ops = dev_get_driver_ops(dev); 1555b6f88eSJoseph Chen 1655b6f88eSJoseph Chen if (!ops || !ops->show) 1755b6f88eSJoseph Chen return -ENOSYS; 1855b6f88eSJoseph Chen 1955b6f88eSJoseph Chen return ops->show(dev); 2055b6f88eSJoseph Chen } 2155b6f88eSJoseph Chen charge_display(void)22f36a2342SJoseph Chenint charge_display(void) 23f36a2342SJoseph Chen { 24f36a2342SJoseph Chen struct udevice *dev; 25f36a2342SJoseph Chen int ret; 26f36a2342SJoseph Chen 27f36a2342SJoseph Chen ret = uclass_get_device(UCLASS_CHARGE_DISPLAY, 0, &dev); 28f36a2342SJoseph Chen if (ret) { 29f36a2342SJoseph Chen debug("Get charge display failed, ret=%d\n", ret); 30f36a2342SJoseph Chen return ret; 31f36a2342SJoseph Chen } 32f36a2342SJoseph Chen 33f36a2342SJoseph Chen return charge_display_show(dev); 34f36a2342SJoseph Chen } 35f36a2342SJoseph Chen 3655b6f88eSJoseph Chen UCLASS_DRIVER(charge_display) = { 3755b6f88eSJoseph Chen .id = UCLASS_CHARGE_DISPLAY, 3855b6f88eSJoseph Chen .name = "charge_display", 3955b6f88eSJoseph Chen }; 40