DMIC IO Driver¶
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.