devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jyri Sarha <jsarha@ti.com>
To: Russell King - ARM Linux <linux@arm.linux.org.uk>
Cc: devicetree@vger.kernel.org, alsa-devel@alsa-project.org,
	peter.ujfalusi@ti.com, moinejf@free.fr, airlied@linux.ie,
	tomi.valkeinen@ti.com, dri-devel@lists.freedesktop.org,
	liam.r.girdwood@linux.intel.com, tony@atomide.com,
	broonie@kernel.org, bcousson@baylibre.com,
	linux-omap@vger.kernel.org
Subject: Re: [PATCH RFC v3 6/7] drm/i2c: tda998x: Register ASoC HDMI codec for audio functionality
Date: Mon, 17 Aug 2015 10:25:23 +0300	[thread overview]
Message-ID: <55D18C63.1010401@ti.com> (raw)
In-Reply-To: <20150814100616.GH7576@n2100.arm.linux.org.uk>

On 08/14/15 13:06, Russell King - ARM Linux wrote:
> On Fri, Aug 14, 2015 at 12:30:44PM +0300, Jyri Sarha wrote:
>> +static int tda998x_write_aif(struct tda998x_priv *priv,
>> +			     struct hdmi_audio_infoframe *cea)
>> +{
>> +	uint8_t buf[HDMI_INFOFRAME_SIZE(AUDIO)];
>> +	int len;
>> +
>> +	len = hdmi_audio_infoframe_pack(cea, buf, sizeof(buf));
>> +	if (len < 0) {
>> +		dev_err(&priv->hdmi->dev,
>> +			"Failed to pack audio infoframe: %d\n", len);
>> +		return len;
>> +	}
>> +
>> +	/* Write the audio information packet */
>> +	tda998x_write_if(priv, DIP_IF_FLAGS_IF4, REG_IF4_HB0, buf, len);
>> +	return 0;
>> +}
>> +
>
> I have such a function already queued up, but I can't push it out at the
> moment because of too many conflicts across all my DRM work.  I'm waiting
> for after 4.3-rc1 before publishing anything from or accepting anything
> else into DRM branches.
>

Ok, is the code available some where? Could take a look so I can align 
my code to that.

>>   static void
>>   tda998x_write_avi(struct tda998x_priv *priv, struct drm_display_mode *mode)
>>   {
>> @@ -670,19 +691,24 @@ static void tda998x_audio_mute(struct tda998x_priv *priv, bool on)
>>   	}
>>   }
>>
>> -static void
>> +static int
>>   tda998x_configure_audio(struct tda998x_priv *priv,
>> -		struct drm_display_mode *mode, struct tda998x_encoder_params *p)
>> +			int mode_clock,
>> +			int ena_ap,
>> +			int dai_format,
>> +			int sample_width,
>> +			int sample_rate,
>> +			const u8 *status)
>
> I don't think this is an improvement.
>

Still it makes the function more generic and enables its usage in 
HDMI-codec API implementation. I'll try to make it look tidier.

>> +static int tda998x_audio_get_eld(struct device *dev, uint8_t *buf, size_t len)
>> +{
>> +	struct tda998x_priv *priv = dev_get_drvdata(dev);
>> +	struct drm_mode_config *config = &priv->encoder->dev->mode_config;
>> +	struct drm_connector *connector;
>> +	int ret = -ENODEV;
>> +
>> +	mutex_lock(&config.mutex);
>> +	list_for_each_entry(connector, &config->connector_list, head) {
>> +		if (priv->encoder == connector->encoder) {
>> +			memcpy(buf, connector->eld,
>> +			       min(sizeof(connector->eld), len));
>> +			ret = 0;
>> +		}
>> +	}
>> +	mutex_unlock(&config.mutex);
>
> Obviously untested.  Should be config->mutex.
>

Sorry. Should never do these last minute changes. I must have been 
compiling and testing different code version. I first had this function 
using config->connection_mutex, but then - after reading the eld related 
code - found that mode_config mutex should be used instead.

> But in any case, when I kill the DRM slave encoder code in here, this
> becomes unnecessary.
>

Ok, The information from ELD needs be passed to audio side constraints 
somehow. I'd love to see the code you have in queue.

Best regards,
Jyri

  reply	other threads:[~2015-08-17  7:25 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-14  9:30 [PATCH RFC v3 0/7] Implement generic ASoC HDMI codec and use it in tda998x Jyri Sarha
2015-08-14  9:30 ` [PATCH RFC v3 1/7] drm/edid: add function to help find SADs, DO NOT MERGE Jyri Sarha
2015-08-14  9:30 ` [PATCH RFC v3 3/7] ASoC: hdmi-codec: Add hdmi-codec for external HDMI-encoders Jyri Sarha
2015-08-14  9:57   ` Russell King - ARM Linux
2015-08-17  6:50     ` Jyri Sarha
     [not found]   ` <ed41a6c0b594866c05e695cc066371d0e3862c7e.1439542916.git.jsarha-l0cyMroinI0@public.gmane.org>
2015-08-14 16:18     ` Mark Brown
2015-08-17  7:07       ` Jyri Sarha
2015-08-17 18:41         ` Mark Brown
2015-08-17 19:22           ` Jyri Sarha
2015-08-17  7:57       ` Jyri Sarha
2015-08-17 12:59         ` Jyri Sarha
2015-08-14  9:30 ` [PATCH RFC v3 5/7] drm/i2c: tda998x: Remove include/sound/tda998x.h and fix graph parsing Jyri Sarha
     [not found] ` <cover.1439542916.git.jsarha-l0cyMroinI0@public.gmane.org>
2015-08-14  9:30   ` [PATCH RFC v3 2/7] ASoC: hdmi: Remove obsolete dummy HDMI codec Jyri Sarha
     [not found]     ` <360a38c83ae2a24620da85b8496b745326d995de.1439542916.git.jsarha-l0cyMroinI0@public.gmane.org>
2015-08-14 16:10       ` Mark Brown
2015-08-17  7:00         ` Jyri Sarha
2015-08-17 18:46           ` Mark Brown
2015-08-14  9:30   ` [PATCH RFC v3 4/7] drm/i2c: tda998x: Add support of a DT graph of ports Jyri Sarha
2015-08-14  9:30   ` [PATCH RFC v3 6/7] drm/i2c: tda998x: Register ASoC HDMI codec for audio functionality Jyri Sarha
     [not found]     ` <1e8e3215caa932dab68de8576aee81f5e1008163.1439542916.git.jsarha-l0cyMroinI0@public.gmane.org>
2015-08-14 10:06       ` Russell King - ARM Linux
2015-08-17  7:25         ` Jyri Sarha [this message]
2015-08-14  9:30   ` [PATCH RFC v3 7/7] ARM: dts: am335x-boneblack: Add HDMI audio support Jyri Sarha

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55D18C63.1010401@ti.com \
    --to=jsarha@ti.com \
    --cc=airlied@linux.ie \
    --cc=alsa-devel@alsa-project.org \
    --cc=bcousson@baylibre.com \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=liam.r.girdwood@linux.intel.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=moinejf@free.fr \
    --cc=peter.ujfalusi@ti.com \
    --cc=tomi.valkeinen@ti.com \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).