Thread (14 messages) 14 messages, 4 authors, 2019-09-04

Re: [PATCH v2 1/5] i3c: master: detach and free device if pre_assign_dyn_addr() fails

From: Boris Brezillon <boris.brezillon@collabora.com>
Date: 2019-09-03 10:52:44
Also in: linux-i3c, lkml

On Tue,  3 Sep 2019 12:35:50 +0200
Vitor Soares [off-list ref] wrote:
On pre_assing_dyn_addr() the devices that fail:
  i3c_master_setdasa_locked()
  i3c_master_reattach_i3c_dev()
  i3c_master_retrieve_dev_info()

are kept in memory and master->bus.devs list. This makes the i3c devices
without a dynamic address are sent on DEFSLVS CCC command. Fix this by
detaching and freeing the devices that fail on pre_assign_dyn_addr().

Signed-off-by: Vitor Soares <redacted>
---
Changes in v2:
  - Move out detach/free the i3c_dev_desc from pre_assign_dyn_addr()
So, you decided to ignore my comment about leaving the i3c_dev_desc
allocated and skipping entries that don't have a dynamic address when
forging the DEFSLVS frame instead of doing this
allocate/free/re-allocate dance, and more importantly, you didn't even
bother explaining why.

I'm not willing to accept this patch unless you come up with solid
reasons.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help