fsl_fdt_fixup_usb_erratum uses strcmp to detect an error but then returns 'err' without it being set to an error. Calling code may not detect that an error occurred leading to a silent failure. Instead just return -EINVAL.
This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]> --- drivers/usb/common/fsl-dt-fixup.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/common/fsl-dt-fixup.c b/drivers/usb/common/fsl-dt-fixup.c index 6a68bd76c27..55176f7a871 100644 --- a/drivers/usb/common/fsl-dt-fixup.c +++ b/drivers/usb/common/fsl-dt-fixup.c @@ -99,7 +99,7 @@ static int fsl_fdt_fixup_usb_erratum(void *blob, const char *prop_erratum, else node_name = node_type; if (strcmp(node_name, controller_type)) - return err; + return -EINVAL; err = fdt_setprop(blob, node_offset, prop_erratum, NULL, 0); if (err < 0) { --- base-commit: 44c4919e9dd6c162b237633ba689441eca9a149c change-id: 20250925-fsl_dt_fixup-b1795847fe7e Best regards, -- Andrew Goodbody <[email protected]>

