aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/i3c
diff options
context:
space:
mode:
authorBilly Tsai <billy_tsai@aspeedtech.com>2022-09-26 18:51:45 +0800
committerAlexandre Belloni <alexandre.belloni@bootlin.com>2022-10-12 23:45:29 +0200
commit90f4a09a15239f4a819b2e90a7a0b92a75060655 (patch)
treea51838b21c786c9bd6646b6c3e3a0c966ee297bc /drivers/i3c
parenti3c: master: Free the old_dyn_addr when reattach. (diff)
downloadlinux-dev-90f4a09a15239f4a819b2e90a7a0b92a75060655.tar.xz
linux-dev-90f4a09a15239f4a819b2e90a7a0b92a75060655.zip
i3c: master: Remove the wrong place of reattach.
The reattach should be used when an I3C device has its address changed. But the modified place in this patch doesn't have the address changed of the newdev. This wrong reattach will reserve the same address slot twice and return unexpected -EBUSY when the bus find the duplicate device with diffent dynamic address. Signed-off-by: Billy Tsai <billy_tsai@aspeedtech.com> Link: https://lore.kernel.org/r/20220926105145.8145-2-billy_tsai@aspeedtech.com Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Diffstat (limited to 'drivers/i3c')
-rw-r--r--drivers/i3c/master.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/i3c/master.c b/drivers/i3c/master.c
index 6349ce0ce835..351c81a929a6 100644
--- a/drivers/i3c/master.c
+++ b/drivers/i3c/master.c
@@ -1911,10 +1911,6 @@ int i3c_master_add_i3c_dev_locked(struct i3c_master_controller *master,
i3c_master_free_i3c_dev(olddev);
}
- ret = i3c_master_reattach_i3c_dev(newdev, old_dyn_addr);
- if (ret)
- goto err_detach_dev;
-
/*
* Depending on our previous state, the expected dynamic address might
* differ: