summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVitor Soares <vitor.soares@synopsys.com>2019-04-09 18:59:59 +0200
committerBoris Brezillon <boris.brezillon@collabora.com>2019-04-10 12:43:47 +0200
commit9752c37cc89f43675e70cf9acff23519fa84b48c (patch)
tree9948d83f754ad1893afd758341626bf4f19b4de1
parent15ade5d2e7775667cf191cf2f94327a4889f8b9d (diff)
downloadlinux-9752c37cc89f43675e70cf9acff23519fa84b48c.tar.bz2
i3c: Fix the verification of random PID
The validation of random PID should be done by checking the boardinfo->pid instead of info.pid which is empty. Doing the change the info struture declaration is no longer necessary. Cc: Boris Brezillon <bbrezillon@kernel.org> Cc: <stable@vger.kernel.org> Fixes: 3a379bbcea0a ("i3c: Add core I3C infrastructure") Signed-off-by: Vitor Soares <vitor.soares@synopsys.com> Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
-rw-r--r--drivers/i3c/master.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/i3c/master.c b/drivers/i3c/master.c
index 2dc628d4f1ae..1412abcff010 100644
--- a/drivers/i3c/master.c
+++ b/drivers/i3c/master.c
@@ -1980,7 +1980,6 @@ of_i3c_master_add_i3c_boardinfo(struct i3c_master_controller *master,
{
struct i3c_dev_boardinfo *boardinfo;
struct device *dev = &master->dev;
- struct i3c_device_info info = { };
enum i3c_addr_slot_status addrstatus;
u32 init_dyn_addr = 0;
@@ -2012,8 +2011,8 @@ of_i3c_master_add_i3c_boardinfo(struct i3c_master_controller *master,
boardinfo->pid = ((u64)reg[1] << 32) | reg[2];
- if ((info.pid & GENMASK_ULL(63, 48)) ||
- I3C_PID_RND_LOWER_32BITS(info.pid))
+ if ((boardinfo->pid & GENMASK_ULL(63, 48)) ||
+ I3C_PID_RND_LOWER_32BITS(boardinfo->pid))
return -EINVAL;
boardinfo->init_dyn_addr = init_dyn_addr;