[Intel-gfx] [RFC PATCH v2 0/8] Add support for Legacy Hdmi audio
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Thu Nov 10 16:35:09 UTC 2016
On 11/9/16 7:19 AM, Mark Brown wrote:
> On Sun, Nov 06, 2016 at 11:42:31PM -0700, Pierre-Louis Bossart wrote:
>
>> I am all for convergence when it makes sense but I don't see how
>> hdmi-codec.h provides equivalent functionality for BYT/CHT with what was
>> suggested in this patchset -derived from VED patches- and discussed earlier
>> with intel-gfx folks, specifically how LPE pipe interrupts are
>> masked/unmasked and passed to the audio driver? The BYT/CHT HDMI
>
> Without knowing what these things are it's hard to comment but it does
> seem that if Intel has a reasonable use case for them then so too will
> other vendors at some point.
>
>> functionality is also not modeled as an ASoC codec - which seems a
>> dependency from the comments in hdmi-codec.h - since it's really part of the
>> i915 hardware and exposed only as a set of registers+DMA, without any serial
>> link interface typically needed for an external device or the internal
>> HDAudio-display link.
>
> None of which is at all unusal. The Intel hardware really doesn't seem
> like the sort of special snowflake that people appear to believe it to
> be.
I am not sure if this reply was British humor, sarcasm or a proposal?
Again the hardware for Baytrail and Cherrytrail is very simple, the
display subsystem exposes a DMA interface with a 4 descriptors pointing
to buffers in system memory and a window of registers to enable DMA
transfers and signal interrupts for DMA events. Rather than adding ALSA
related code in the i915 driver, the proposal is to create a subdevice
that is given access to the relevant register window and a matching
driver in sound/x86 that would take care of creating a card and
implementing ALSA-related initializations and buffer/periods management.
The interaction between the two gfx and audio parts is based on a very
limited set of pdata variables and callbacks. From the gfx perspective
this minimizes the code changes and dependencies on ALSA.
The hdmi-codec interface seems to assume an ASoC implementation which
seems over-engineered in this case. There is no specific power
management issues, no real need for cpu- or codec-dai and not physical
link such as I2S/SPDIF. The only thing that seems directly useful if the
pdata part which I already had. If I missed anything I am all ears.
Note that I am not trying to solve HDAudio-gfx interaction, just to get
audio support for baytrail and cherrytrail compute sticks in the
mainline. I've been porting patches to help users since 4.4, starting
from the work Canonical did and internal patches, and it gets tiring. At
this point I am looking for either agreement to proceed with the
solution suggested in these patches which works fine with minimal
impacts to either the drm or alsa domains, or an actual useful/pragmatic
counter-proposal. If there is a grand plan of transition to a unified
TBD interface for all HDMI cases then I would ask that this is done in a
second step after the audio functionality is added.
More information about the Intel-gfx
mailing list