i3c: master: Free the old_dyn_addr when reattach.
authorBilly Tsai <billy_tsai@aspeedtech.com>
Mon, 26 Sep 2022 10:51:44 +0000 (18:51 +0800)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Wed, 12 Oct 2022 21:45:29 +0000 (23:45 +0200)
commitd4fa7d772adc02451076b3ad1f990d8b822909fc
treef7f3d96f6272dcc09afbf816cf6ce1cb709fce9d
parent568035b01cfb107af8d2e4bd2fb9aea22cf5b868
i3c: master: Free the old_dyn_addr when reattach.

This patch is used to free the old_dyn_addr when the caller want to
reattach the device to the different dynamic address. If the
old_dyn_addr is 0 the function will treat it as no old_dyn_addr is
reserved on the bus. Without the patch, when the driver reattach the i3c
device after setnewda the old_dyn_addr will be permanently occupied.

Signed-off-by: Billy Tsai <billy_tsai@aspeedtech.com>
Link: https://lore.kernel.org/r/20220926105145.8145-1-billy_tsai@aspeedtech.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/i3c/master.c