Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 308007
b: refs/heads/master
c: a0534e3
h: refs/heads/master
i:
  308005: deb21c7
  308003: c051942
  307999: 2bb68a6
v: v3
  • Loading branch information
Ricardo Neri authored and Liam Girdwood committed May 22, 2012
1 parent d63d092 commit edc96c8
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 36 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 7e6aa220798efd5cd95737b7493b904dddbf413d
refs/heads/master: a0534e3bb68537b749423efe60db7b38872b00a1
9 changes: 8 additions & 1 deletion trunk/sound/soc/omap/omap-hdmi.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,16 +51,23 @@ struct hdmi_priv {
static int omap_hdmi_dai_startup(struct snd_pcm_substream *substream,
struct snd_soc_dai *dai)
{
struct hdmi_priv *priv = snd_soc_dai_get_drvdata(dai);
int err;
/*
* Make sure that the period bytes are multiple of the DMA packet size.
* Largest packet size we use is 32 32-bit words = 128 bytes
*/
err = snd_pcm_hw_constraint_step(substream->runtime, 0,
SNDRV_PCM_HW_PARAM_PERIOD_BYTES, 128);
if (err < 0)
if (err < 0) {
dev_err(dai->dev, "could not apply constraint\n");
return err;
}

if (!priv->dssdev->driver->audio_supported(priv->dssdev)) {
dev_err(dai->dev, "audio not supported\n");
return -ENODEV;
}
return 0;
}

Expand Down
34 changes: 0 additions & 34 deletions trunk/sound/soc/omap/omap4-hdmi-card.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,47 +29,13 @@

#define DRV_NAME "omap-hdmi-audio"

static int omap4_hdmi_dai_hw_params(struct snd_pcm_substream *substream,
struct snd_pcm_hw_params *params)
{
int i;
struct omap_overlay_manager *mgr = NULL;
struct device *dev = substream->pcm->card->dev;

/* Find DSS HDMI device */
for (i = 0; i < omap_dss_get_num_overlay_managers(); i++) {
mgr = omap_dss_get_overlay_manager(i);
if (mgr && mgr->device
&& mgr->device->type == OMAP_DISPLAY_TYPE_HDMI)
break;
}

if (i == omap_dss_get_num_overlay_managers()) {
dev_err(dev, "HDMI display device not found!\n");
return -ENODEV;
}

/* Make sure HDMI is power-on to avoid L3 interconnect errors */
if (mgr->device->state != OMAP_DSS_DISPLAY_ACTIVE) {
dev_err(dev, "HDMI display is not active!\n");
return -EIO;
}

return 0;
}

static struct snd_soc_ops omap4_hdmi_dai_ops = {
.hw_params = omap4_hdmi_dai_hw_params,
};

static struct snd_soc_dai_link omap4_hdmi_dai = {
.name = "HDMI",
.stream_name = "HDMI",
.cpu_dai_name = "omap-hdmi-audio-dai",
.platform_name = "omap-pcm-audio",
.codec_name = "hdmi-audio-codec",
.codec_dai_name = "omap-hdmi-hifi",
.ops = &omap4_hdmi_dai_ops,
};

static struct snd_soc_card snd_soc_omap4_hdmi = {
Expand Down

0 comments on commit edc96c8

Please sign in to comment.