diff options
| author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-03-14 13:13:25 +0000 |
|---|---|---|
| committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-03-14 13:13:25 +0000 |
| commit | 7d9aca39dcacd2b3f42e2e287162329f410f93e1 (patch) | |
| tree | 2907b680b2b7625226f46d23d74ccc9c58ad0362 /drivers/bcma/scan.c | |
| parent | e1c1c69c8fc7656c33460c8e085ac0d0be22ac3b (diff) | |
| parent | a0cc0209abb9fe2b9ab71aa41be70eddd0cbdd61 (diff) | |
| download | linux-next-7d9aca39dcacd2b3f42e2e287162329f410f93e1.tar.gz linux-next-7d9aca39dcacd2b3f42e2e287162329f410f93e1.zip | |
Merge remote-tracking branch 'regmap/topic/drivers' into regmap-next
Resolved simple add/add conflicts:
drivers/base/regmap/internal.h
drivers/base/regmap/regmap.c
Diffstat (limited to 'drivers/bcma/scan.c')
| -rw-r--r-- | drivers/bcma/scan.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/drivers/bcma/scan.c b/drivers/bcma/scan.c index cad994857683..3a2f672db9ad 100644 --- a/drivers/bcma/scan.c +++ b/drivers/bcma/scan.c @@ -399,15 +399,18 @@ int bcma_bus_scan(struct bcma_bus *bus) core->bus = bus; err = bcma_get_next_core(bus, &eromptr, NULL, core_num, core); - if (err == -ENODEV) { - core_num++; - continue; - } else if (err == -ENXIO) - continue; - else if (err == -ESPIPE) - break; - else if (err < 0) + if (err < 0) { + kfree(core); + if (err == -ENODEV) { + core_num++; + continue; + } else if (err == -ENXIO) { + continue; + } else if (err == -ESPIPE) { + break; + } return err; + } core->core_index = core_num++; bus->nr_cores++; |
