[PATCH V3 0/8] i3c: Hot-Join improvements and MIPI HCI Hot-Join support

Adrian Hunter <[email protected]>
Newsgroups org.infradead.lists.linux-i3c,org.kernel.vger.linux-kernel
Organization Intel Finland Oy, Registered Address: c/o Alberga Business Park, 6 krs, Bertel Jungin Aukio 5, 02600 Espoo, Business Identity Code: 0357606 - 4, Domiciled in Helsinki
Message-ID <[email protected]>
Hi

This series tightens the I3C core's handling of Hot-Join across system
suspend, shutdown and unregister, consolidates the per-driver Hot-Join
worker into the core, and finally wires the MIPI I3C HCI driver into the
new Hot-Join framework.


	Note all patches have now been reviewed by Frank.


It applies on top of:

  https://lore.kernel.org/linux-i3c/[email protected]/

which is also fully reviewed by Frank.

Patches 1-2 fix latent races in the existing Hot-Join machinery
(suspend vs. Hot-Join work, and concurrent sysfs writers).

Patches 3-5 consolidate the per-driver Hot-Join worker into the core
and add proper teardown via an i3c_bus_type shutdown callback.

Patch 6 defers driver-model registration of newly discovered devices
out of the DAA caller's context, so resume-time DAA does not push
device probing into the controller's resume sequence.

Patches 7-8 add Hot-Join support to MIPI I3C HCI.


Changes in V3:

    i3c: master: Serialize i3c_set_hotjoin() with the maintenance lock
	Add Frank's Rev'd by

    i3c: master: Defer new-device registration out of DAA caller context
	Add Frank's Rev'd by

Changes in V2:

    i3c: master: Make hot-join workqueue freezable to block hot-join during suspend
	Add Fixes tag
	Add Frank's Rev'd by

    i3c: master: Serialize i3c_set_hotjoin() with the maintenance lock
	Add Fixes tag

    i3c: master: Consolidate Hot-Join DAA work in the core
	Add Frank's Rev'd by

    i3c: master: Ensure Hot-Join operations are stopped on shutdown
	Add dependency note to commit message
	Add Fixes tag
	Add Frank's Rev'd by

    i3c: dw: Drop redundant Hot-Join cancel_work_sync() in shutdown
	Add Frank's Rev'd by

    i3c: master: Defer new-device registration out of DAA caller context
	Add comment about reg_work use
	Add Fixes tag

    i3c: master: Export i3c_master_enec_disec_locked()
	Add Frank's Rev'd by

    i3c: mipi-i3c-hci: Add Hot-Join support
	Add Frank's Rev'd by


Adrian Hunter (8):
      i3c: master: Make hot-join workqueue freezable to block hot-join during suspend
      i3c: master: Serialize i3c_set_hotjoin() with the maintenance lock
      i3c: master: Consolidate Hot-Join DAA work in the core
      i3c: master: Ensure Hot-Join operations are stopped on shutdown
      i3c: dw: Drop redundant Hot-Join cancel_work_sync() in shutdown
      i3c: master: Defer new-device registration out of DAA caller context
      i3c: master: Export i3c_master_enec_disec_locked()
      i3c: mipi-i3c-hci: Add Hot-Join support

 drivers/i3c/master.c                   | 129 ++++++++++++++++++++++++++-------
 drivers/i3c/master/dw-i3c-master.c     |  15 +---
 drivers/i3c/master/dw-i3c-master.h     |   2 -
 drivers/i3c/master/i3c-master-cdns.c   |  14 +---
 drivers/i3c/master/mipi-i3c-hci/core.c |  50 ++++++++++++-
 drivers/i3c/master/mipi-i3c-hci/dma.c  |   5 ++
 drivers/i3c/master/mipi-i3c-hci/hci.h  |   1 +
 drivers/i3c/master/mipi-i3c-hci/pio.c  |   5 ++
 drivers/i3c/master/svc-i3c-master.c    |  14 +---
 include/linux/i3c/master.h             |  16 +++-
 10 files changed, 179 insertions(+), 72 deletions(-)


Regards
Adrian

-- 
linux-i3c mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-i3c
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.