• Pierre-Louis Bossart's avatar
    ASoC: SOF: Intel: hda-dai: remove use of cpu_dai->component drvdata · de8e2d5d
    Pierre-Louis Bossart authored
    The existing code relies on conversions from cpu_dai to the sdev
    structure pointer based on the cpu_dai component. This works fine for
    HDaudio but will not work for SoundWire DAIs which are registered by a
    different component. That's a problem preventing reuse of the HDaudio
    DMA stream allocation for SoundWire DAIs starting with the LunarLake
    platform.
    
    This patch introduces a set of helpers to perform the conversion, and
    an indirect way of retrieving the sdev pointer based on the
    swidget->comp intermediate pointer.
    
    Suggested-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com
    Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com
    Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com
    Reviewed-by: Rander Wang <rander.wang@intel.com
    Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com
    Link: https://lore.kernel.org/r/20230512181702.117483-3-pierre-louis.bossart@linux.intel.com
    Signed-off-by: Mark Brown <broonie@kernel.org
    de8e2d5d
hda-dai.c 14.2 KB