6.2 Software stack and programming model
Table 6-2 Software layer roles
■ Use threads and work queues for work that is too heavy for interrupt context.
■ Keep the ISR short. Acknowledge the event, capture minimal state, and hand off the rest.
■ Assert power, clock, and path dependencies only for the active duration of the transfer or
work item.
■ Prefer native subsystem APIs for UART, I2C, and I3C in the delivered Zephyr environment.
■ Treat QUP as the protocol controller and GPI as the optional data-movement layer beneath it.

