DMIC IO Driver
Figure 80 DMIC IO Driver overview
Gateway Initialization
Figure 81 DMIC Input Gateway Initialization
DMIC HW is initialized as follows:
Mute microphones.
Enable clock on microphones (also enable CIC and FIRs).
Wait for clock stabilization (SoC defined delay).
Unmute microphones using a curved ramp until the DC offset is gone and replaced with the live stream.
Configuration BLOB
DMIC IO Driver is prepared for the configuration BLOB to come in context of any instance of the DmicInput at any time. The configuration may be rejected if the current state of PDM controllers and FIFOs is inappropriate. Accepting the configuration does not always mean that it is immediately programmed to the HW. The configuration is global, so when sent by an instance of DmicInput while another instance is already running it is just compared with already programmed data for the sake of consistency.
Gateway Release
Figure 82 DMIC Input Gateway Release
State Transitions
Figure 83 DMIC Input Gateway State Transition