[alsa-devel] [PATCH V2 3/7] ALSA: add shell for Intel HDMI LPE audio driver

Anand, Jerome jerome.anand at intel.com
Sat Jan 7 05:56:51 CET 2017



> -----Original Message-----
> From: Pierre-Louis Bossart [mailto:pierre-louis.bossart at linux.intel.com]
> Sent: Saturday, January 7, 2017 2:03 AM
> To: Anand, Jerome <jerome.anand at intel.com>; intel-
> gfx at lists.freedesktop.org; alsa-devel at alsa-project.org
> Cc: tiwai at suse.de; broonie at kernel.org; Ughreja, Rakesh A
> <rakesh.a.ughreja at intel.com>; ville.syrjala at linux.intel.com
> Subject: Re: [alsa-devel] [PATCH V2 3/7] ALSA: add shell for Intel HDMI LPE
> audio driver
> 
> Minor misses here as well.
> 

Ignored it since it was mostly cosmetic.

> On 1/6/17 7:21 PM, Jerome Anand wrote:
> > On Baytrail and Cherrytrail, HDaudio may be fused out or disabled by
> > the BIOS. This driver enables an alternate path to the i915 display
> > registers and DMA.
> >
> > Although there is no hardware path between i915 display and LPE/SST
> > audio clusters, this HDMI capability is referred to in the
> > documentation as "HDMI LPE Audio" so we keep the name for consistency.
> > There is no hardware path or control dependencies with the LPE/SST DSP
> functionality.
> >
> > The hdmi-lpe-audio driver will be probed when the i915 driver creates
> > a child platform device.
> >
> > Since this driver is neither SoC nor PCI, a new x86 folder is added
> >
> > Signed-off-by: Pierre-Louis Bossart
> > <pierre-louis.bossart at linux.intel.com>
> > Signed-off-by: Jerome Anand <jerome.anand at intel.com>
> 
> Change the commit title to remove 'shell', e.g. 'add BYT/CHT-T HDMI LPE
> audio driver' and mention that indirect calls will be removed later (to help
> with DP integration)
> 

OK

> 
> > diff --git a/sound/x86/Kconfig b/sound/x86/Kconfig new file mode
> > 100644 index 0000000..e9297d0
> > --- /dev/null
> > +++ b/sound/x86/Kconfig
> > @@ -0,0 +1,16 @@
> > +menuconfig SND_X86
> > +	tristate "X86 sound devices"
> > +	---help---
> > +
> > +	  X86 sound devices that don't fall under SoC or PCI categories
> > +
> > +if SND_X86
> > +
> > +config HDMI_LPE_AUDIO
> > +	tristate "HDMI audio without HDaudio on Intel Atom platforms"
> > +	depends on DRM_I915
> > +	default n
> > +	help
> > +	 Choose this option to support HDMI LPE Audio mode
> > +
> > +endif	# SND_X86
> > diff --git a/sound/x86/Makefile b/sound/x86/Makefile new file mode
> > 100644 index 0000000..baa6333
> > --- /dev/null
> > +++ b/sound/x86/Makefile
> > @@ -0,0 +1,6 @@
> > +ccflags-y += -Idrivers/gpu/drm/i915
> 
> from Takashi: Is it just for intel_lpe_audio.h?  Then rather put
> intel_lpe_audio.h to include/drm.
> JA: OK
> 
> > +
> > +snd-hdmi-lpe-audio-objs += \
> > +	intel_hdmi_lpe_audio.o
> > +
> > +obj-$(CONFIG_HDMI_LPE_AUDIO) += snd-hdmi-lpe-audio.o
> > diff --git a/sound/x86/intel_hdmi_lpe_audio.c
> > b/sound/x86/intel_hdmi_lpe_audio.c
> > new file mode 100644
> > index 0000000..61347ab
> > --- /dev/null
> > +++ b/sound/x86/intel_hdmi_lpe_audio.c
> > @@ -0,0 +1,623 @@
> > +/*
> > + *  intel_hdmi_lpe_audio.c - Intel HDMI LPE audio driver for Atom
> > +platforms
> > + *
> > + *  Copyright (C) 2016 Intel Corp
> > + *  Authors:
> > + *		Jerome Anand <jerome.anand at intel.com>
> > + *		Aravind Siddappaji <aravindx.siddappaji at intel.com>
> > + *
> >
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ~~~~~~~~~~~~
> > +~~~~~
> > + *
> > + *  This program is free software; you can redistribute it and/or
> > +modify
> > + *  it under the terms of the GNU General Public License as published
> > +by
> > + *  the Free Software Foundation; version 2 of the License.
> > + *
> > + *  This program is distributed in the hope that it will be useful,
> > +but
> > + *  WITHOUT ANY WARRANTY; without even the implied warranty of
> > + *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> GNU
> > + *  General Public License for more details.
> > + *
> > + *
> >
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ~~~~~~~~~~~~
> > +~~~~~
> > + */
> > +
> > +#define pr_fmt(fmt)	"hdmi_lpe_audio: " fmt
> 
>  From Takashi: Better to use dev_*() variant.
> JA: OK
> 
> > +static inline int hdmi_get_eld(void *eld) {
> > +	memcpy(eld, (void *)&hlpe_eld, sizeof(hlpe_eld));
> > +
> > +	{
> > +		int i;
> > +		uint8_t *eld_data = (uint8_t *)&hlpe_eld;
> > +
> > +		pr_debug("hdmi_get_eld:\n{{");
> > +
> > +		for (i = 0; i < sizeof(hlpe_eld); i++)
> > +			pr_debug("0x%x, ", eld_data[i]);
> > +
> > +		pr_debug("}}\n");
> > +	}
> > +	return 0;
> 
>  From Takashi: There is a hexdump debug print helper, too.
> JA: OK
> 



More information about the Alsa-devel mailing list