On Wed, Nov 22, 2017 at 05:39:45PM +0530, Sriram Periyasamy wrote: > For certain platforms, clocks (mclk/sclk/fs) are required to be up before > the stream start. Example: some codecs needs the mclk/sclk/fs to be > enabled early for a successful clock synchronization. Some platforms > require clock to be enabled at boot and be always ON. > > By sending set_dma_control IPC (with the i2s blobs queried from NHLT), > these clocks can be enabled early after the firmware is downloaded. > > With this series, a virtual clock driver is created which provides > interface to send the required IPCs from machine driver to enable the > clocks. NHLT is parsed during probe and the clock information is populated. > The pointer to blob is cached and sent along with the set_dma_control IPC > structure during the clk prepare/unprepare callback. Clocks are created for > a ssp if the nhlt table has endpoint configuration for that particular ssp. > Skylake driver creates a platform driver with the clock information and > register the clk ops callback. > > Kabylake machine driver uses the clock interface to enable the clocks early > as it is required by the rt5663 driver for clock synchronization. All: Acked-By: Vinod Koul <vinod.koul@xxxxxxxxx> -- ~Vinod _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel