mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-02 09:46:37 +03:00
socfpga_dtreg: Ensure reg is initialised before use
In socfpga_dtreg_probe it is possible that if mask is 0 then reg will not be assigned to before first use. Refactor the code slightly to ensure that reg is always assigned to and remove a piece of duplicated code. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
This commit is contained in:
committed by
Tien Fong Chee
parent
344d785aba
commit
6e1cc5d861
@@ -76,16 +76,15 @@ static int socfpga_dtreg_probe(struct udevice *dev)
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
reg = base + offset;
|
||||
|
||||
if (mask != 0) {
|
||||
if (mask == 0xffffffff) {
|
||||
reg = base + offset;
|
||||
writel(val, (uintptr_t)reg);
|
||||
} else {
|
||||
/* Mask the value with the masking bits */
|
||||
set_mask = val & mask;
|
||||
|
||||
reg = base + offset;
|
||||
|
||||
/* Clears and sets specific bits in the register */
|
||||
clrsetbits_le32((uintptr_t)reg, mask, set_mask);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user