mirror of
https://github.com/rd-stuffs/msm-4.14.git
synced 2025-02-20 11:45:48 +08:00
ARM: ux500: fix ureachable iounmap()
The code was executing a return with a pointer before reaching iounmap(). Reported-by: David Binderman <dcb314@hotmail.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
parent
6ad7313b53
commit
302cff1a16
@ -76,17 +76,19 @@ static struct arm_pmu_platdata db8500_pmu_platdata = {
|
||||
static const char *db8500_read_soc_id(void)
|
||||
{
|
||||
void __iomem *uid;
|
||||
const char *retstr;
|
||||
|
||||
uid = ioremap(U8500_BB_UID_BASE, 0x20);
|
||||
if (!uid)
|
||||
return NULL;
|
||||
/* Throw these device-specific numbers into the entropy pool */
|
||||
add_device_randomness(uid, 0x14);
|
||||
return kasprintf(GFP_KERNEL, "%08x%08x%08x%08x%08x",
|
||||
retstr = kasprintf(GFP_KERNEL, "%08x%08x%08x%08x%08x",
|
||||
readl((u32 *)uid+0),
|
||||
readl((u32 *)uid+1), readl((u32 *)uid+2),
|
||||
readl((u32 *)uid+3), readl((u32 *)uid+4));
|
||||
iounmap(uid);
|
||||
return retstr;
|
||||
}
|
||||
|
||||
static struct device * __init db8500_soc_device_init(void)
|
||||
|
Loading…
x
Reference in New Issue
Block a user