]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - drivers/core/device.c
dm: avoid dev->req_seq overflow
[karo-tx-uboot.git] / drivers / core / device.c
index ef41a9be3edc3d9cb20247f5026bd720a265d5a7..32e80e82b59c99f9ac5734c8f3dadc7c3b0c5f28 100644 (file)
@@ -109,6 +109,8 @@ int device_bind(struct udevice *parent, struct driver *drv, const char *name,
        dev->seq = -1;
 #ifdef CONFIG_OF_CONTROL
        dev->req_seq = fdtdec_get_int(gd->fdt_blob, of_offset, "reg", -1);
+       if (!IS_ERR_VALUE(dev->req_seq))
+               dev->req_seq &= INT_MAX;
        if (uc->uc_drv->name && of_offset != -1) {
                fdtdec_get_alias_seq(gd->fdt_blob, uc->uc_drv->name, of_offset,
                                     &dev->req_seq);