Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

i3c: mipi-i3c-hci: Add PIO suspend and resume support

Introduce helper functions to suspend and resume PIO operations. These
are required to prepare for upcoming Runtime PM support, ensuring that
PIO state is properly managed during power transitions.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/20260113072702.16268-14-adrian.hunter@intel.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>

authored by

Adrian Hunter and committed by
Alexandre Belloni
8afa0dd8 ca4d4682

+14
+14
drivers/i3c/master/mipi-i3c-hci/pio.c
··· 190 190 pio->enabled_irqs = STAT_ALL_ERRORS; 191 191 } 192 192 193 + static void hci_pio_suspend(struct i3c_hci *hci) 194 + { 195 + pio_reg_write(INTR_SIGNAL_ENABLE, 0); 196 + 197 + i3c_hci_sync_irq_inactive(hci); 198 + } 199 + 200 + static void hci_pio_resume(struct i3c_hci *hci) 201 + { 202 + __hci_pio_init(hci, NULL); 203 + } 204 + 193 205 static int hci_pio_init(struct i3c_hci *hci) 194 206 { 195 207 struct hci_pio_data *pio; ··· 1071 1059 .request_ibi = hci_pio_request_ibi, 1072 1060 .free_ibi = hci_pio_free_ibi, 1073 1061 .recycle_ibi_slot = hci_pio_recycle_ibi_slot, 1062 + .suspend = hci_pio_suspend, 1063 + .resume = hci_pio_resume, 1074 1064 };