Add a helper to check if the firmware cache is already setup for a device. This will be used later. Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxxxx> --- drivers/base/firmware_loader.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/drivers/base/firmware_loader.c b/drivers/base/firmware_loader.c index a385622bf3e1..5f3d44d0bfe0 100644 --- a/drivers/base/firmware_loader.c +++ b/drivers/base/firmware_loader.c @@ -396,13 +396,23 @@ static struct fw_name_devm *fw_find_devm_name(struct device *dev, return fwn; } -/* add firmware name into devres list */ -static int fw_add_devm_name(struct device *dev, const char *name) +static bool fw_cache_is_setup(struct device *dev, const char *name) { struct fw_name_devm *fwn; fwn = fw_find_devm_name(dev, name); if (fwn) + return true; + + return false; +} + +/* add firmware name into devres list */ +static int fw_add_devm_name(struct device *dev, const char *name) +{ + struct fw_name_devm *fwn; + + if (fw_cache_is_setup(dev, name)) return 0; fwn = devres_alloc(fw_name_devm_release, sizeof(struct fw_name_devm), -- 2.16.2