SMBus Request Parser
This library encapsulates the state machine for handling smbus requests on the module ("slave") side. The only requirements on the hardware driver/implementation is that they generate these events:
- Address match with direction
- Byte received
- Byte requested
- Stop Event
Whether these events are generated by polling, interrupts, or dma does not matter. The state machine is agnostic to clock stretching and timing details.