• Mark Brown's avatar
    ASoC: Hold runtime PM references to components of active DAIs · d6652ef8
    Mark Brown authored
    Every device that implements runtime power management for DAIs is doing
    it in pretty much the same way: in the startup callback they take a
    runtime PM reference and then in the shutdown callback they release that
    reference, keeping the device active while the DAI is active. Given the
    frequency with which this is done and the obviousness of the need to keep
    the device active in this period factor the code out into the core, taking
    references on the device for each CPU DAI, CODEC DAI and DMA device in the
    core.
    
    As runtime PM is reference counted this shouldn't interfere with any
    other reference holding by the drivers, and since (in common with the
    existing implementations) we don't check for errors on enabling it
    shouldn't matter if the device actually has runtime PM enabled or not.
    Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
    Tested-by: default avatarPeter Ujfalusi <peter.ujfalusi@ti.com>
    d6652ef8
soc-pcm.c 19.4 KB