summaryrefslogtreecommitdiff
path: root/drivers/sysinfo/sysinfo-uclass.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/sysinfo/sysinfo-uclass.c')
-rw-r--r--drivers/sysinfo/sysinfo-uclass.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/sysinfo/sysinfo-uclass.c b/drivers/sysinfo/sysinfo-uclass.c
index f04998ef8bb..d18a168614e 100644
--- a/drivers/sysinfo/sysinfo-uclass.c
+++ b/drivers/sysinfo/sysinfo-uclass.c
@@ -42,6 +42,16 @@ int sysinfo_detect(struct udevice *dev)
return ret;
}
+int sysinfo_get_and_detect(struct udevice **devp)
+{
+ int ret = sysinfo_get(devp);
+
+ if (!ret)
+ ret = sysinfo_detect(*devp);
+
+ return ret;
+}
+
int sysinfo_get_fit_loadable(struct udevice *dev, int index, const char *type,
const char **strp)
{
@@ -152,5 +162,5 @@ UCLASS_DRIVER(sysinfo) = {
.id = UCLASS_SYSINFO,
.name = "sysinfo",
.post_bind = dm_scan_fdt_dev,
- .per_device_auto = sizeof(bool),
+ .per_device_auto = sizeof(struct sysinfo_priv),
};