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.

