All of lore.kernel.org
 help / color / mirror / Atom feed
From: poma <pomidorabelisima@gmail.com>
To: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Cc: Intel Graphics Development <intel-gfx@lists.freedesktop.org>
Subject: Re: Intel Atom SoC Bay/Cherry Trail - HDMI Audio
Date: Sat, 19 Mar 2016 11:05:30 +0100	[thread overview]
Message-ID: <56ED246A.3040507@gmail.com> (raw)
In-Reply-To: <56EC57BF.2050701@gmail.com>


... meanwhile ...

$ modinfo hdmi_audio
filename:       /lib/modules/4.5.0-301.fc22.x86_64/kernel/sound/hdmi_audio/hdmi_audio.ko.xz
version:        0.01.003
license:        GPL v2
description:    Intel HDMI Audio driver
author:         Vaibhav Agarwal <vaibhav.agarwal@intel.com>
author:         Ramesh Babu K V <ramesh.babu@intel.com>
author:         Sailaja Bandarupalli <sailaja.bandarupalli@intel.com>
srcversion:     3AA3766F4433DC0AC4234C3
alias:          acpi*:HAD022A8:*
alias:          acpi*:HAD0F28:*
depends:        snd-pcm,i915,snd
intree:         Y
vermagic:       4.5.0-301.fc22.x86_64 SMP mod_unload 
parm:           hdmi_card_index:Index value for INTEL Intel HDMI Audio controller. (int)
parm:           hdmi_card_id:ID string for INTEL Intel HDMI Audio controller. (charp)

$ dmesg ...
had: ******** HAD DRIVER loading.. Ver: 0.01.003


HDMI Audio support on Atom w/o HDAUdio
w/ kernel-modules-4.5.0-301.fc22.x86_64
https://patchwork.freedesktop.org/series/4142/
https://kojipkgs.fedoraproject.org/packages/kernel/4.5.0/300.fc24/src/
---
 ...15-changes-for-non-HDAudio-HDMI-interface.patch | 27 +++++++++++-----------
 ...elated-changes-non-HDAudio-HDMI-interface.patch |  8 +++----
 ...-Atom-add-Atom-non-HDAudio-HDMI-interface.patch | 15 ++++++------
 RFC-10-15-add-dependency-on-PM_RUNTIME.patch       | 12 +++++-----
 config-generic                                     |  1 +
 5 files changed, 32 insertions(+), 31 deletions(-)

diff --git a/RFC-05-15-drm-i915-changes-for-non-HDAudio-HDMI-interface.patch b/RFC-05-15-drm-i915-changes-for-non-HDAudio-HDMI-interface.patch
index fca2f41..2446dc2 100644
--- a/RFC-05-15-drm-i915-changes-for-non-HDAudio-HDMI-interface.patch
+++ b/RFC-05-15-drm-i915-changes-for-non-HDAudio-HDMI-interface.patch
@@ -3,7 +3,7 @@ diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
 index d1a46ef..556fa80 100644
 --- a/drivers/gpu/drm/i915/i915_irq.c
 +++ b/drivers/gpu/drm/i915/i915_irq.c
-@@ -603,6 +603,31 @@ i915_disable_pipestat(struct drm_i915_private *dev_priv, enum pipe pipe,
+@@ -603,6 +603,31 @@
  	__i915_disable_pipestat(dev_priv, pipe, enable_mask, status_mask);
  }
  
@@ -35,15 +35,15 @@ index d1a46ef..556fa80 100644
  /**
   * i915_enable_asle_pipestat - enable ASLE pipestat for OpRegion
   * @dev: drm device
-@@ -1649,6 +1674,7 @@ static void valleyview_pipestat_irq_handler(struct drm_device *dev, u32 iir)
+@@ -1649,6 +1674,7 @@
  	struct drm_i915_private *dev_priv = dev->dev_private;
  	u32 pipe_stats[I915_MAX_PIPES] = { };
  	int pipe;
 +	int lpe_stream;
  
  	spin_lock(&dev_priv->irq_lock);
- 
-@@ -1719,6 +1745,24 @@ static void valleyview_pipestat_irq_handler(struct drm_device *dev, u32 iir)
+ 	for_each_pipe(dev_priv, pipe) {
+@@ -1713,6 +1739,24 @@
  			intel_cpu_fifo_underrun_irq_handler(dev_priv, pipe);
  	}
  
@@ -68,7 +68,7 @@ index d1a46ef..556fa80 100644
  	if (pipe_stats[0] & PIPE_GMBUS_INTERRUPT_STATUS)
  		gmbus_irq_handler(dev);
  }
-@@ -2804,6 +2848,43 @@ static void gen8_disable_vblank(struct drm_device *dev, unsigned int pipe)
+@@ -2790,6 +2834,43 @@
  	spin_unlock_irqrestore(&dev_priv->irq_lock, irqflags);
  }
  
@@ -135,7 +135,7 @@ diff --git a/drivers/gpu/drm/i915/intel_hdmi.c b/drivers/gpu/drm/i915/intel_hdmi
 index 1beb155..8b6c31a 100644
 --- a/drivers/gpu/drm/i915/intel_hdmi.c
 +++ b/drivers/gpu/drm/i915/intel_hdmi.c
-@@ -1391,6 +1391,124 @@ intel_hdmi_set_edid(struct drm_connector *connector, bool force)
+@@ -1386,6 +1386,124 @@
  	return connected;
  }
  
@@ -260,7 +260,7 @@ index 1beb155..8b6c31a 100644
  static enum drm_connector_status
  intel_hdmi_detect(struct drm_connector *connector, bool force)
  {
-@@ -1399,6 +1517,8 @@ intel_hdmi_detect(struct drm_connector *connector, bool force)
+@@ -1394,6 +1512,8 @@
  	struct drm_i915_private *dev_priv = to_i915(connector->dev);
  	bool live_status = false;
  	unsigned int try;
@@ -269,7 +269,7 @@ index 1beb155..8b6c31a 100644
  
  	DRM_DEBUG_KMS("[CONNECTOR:%d:%s]\n",
  		      connector->base.id, connector->name);
-@@ -1427,6 +1547,26 @@ intel_hdmi_detect(struct drm_connector *connector, bool force)
+@@ -1422,6 +1542,26 @@
  
  	intel_display_power_put(dev_priv, POWER_DOMAIN_GMBUS);
  
@@ -296,7 +296,7 @@ index 1beb155..8b6c31a 100644
  	return status;
  }
  
-@@ -1450,12 +1590,22 @@ intel_hdmi_force(struct drm_connector *connector)
+@@ -1445,12 +1585,22 @@
  static int intel_hdmi_get_modes(struct drm_connector *connector)
  {
  	struct edid *edid;
@@ -320,7 +320,7 @@ index 1beb155..8b6c31a 100644
  }
  
  static bool
-@@ -2159,6 +2309,20 @@ void intel_hdmi_init_connector(struct intel_digital_port *intel_dig_port,
+@@ -2149,6 +2299,20 @@
  		u32 temp = I915_READ(PEG_BAND_GAP_DATA);
  		I915_WRITE(PEG_BAND_GAP_DATA, (temp & ~0xf) | 0xd);
  	}
@@ -341,17 +341,18 @@ index 1beb155..8b6c31a 100644
  }
  
  void intel_hdmi_init(struct drm_device *dev,
-@@ -2168,6 +2332,8 @@ void intel_hdmi_init(struct drm_device *dev,
+@@ -2157,6 +2321,9 @@
  	struct intel_digital_port *intel_dig_port;
  	struct intel_encoder *intel_encoder;
  	struct intel_connector *intel_connector;
++	struct drm_i915_private *dev_priv = dev->dev_private;
 +	/* Added for HDMI Audio */
 +	struct hdmi_audio_priv *hdmi_priv;
  
  	intel_dig_port = kzalloc(sizeof(*intel_dig_port), GFP_KERNEL);
  	if (!intel_dig_port)
-@@ -2239,4 +2405,19 @@ void intel_hdmi_init(struct drm_device *dev,
- 	intel_dig_port->max_lanes = 4;
+@@ -2226,4 +2393,19 @@
+ 	intel_dig_port->dp.output_reg = INVALID_MMIO_REG;
  
  	intel_hdmi_init_connector(intel_dig_port, intel_connector);
 +
diff --git a/RFC-06-15-drm-i915-power-related-changes-non-HDAudio-HDMI-interface.patch b/RFC-06-15-drm-i915-power-related-changes-non-HDAudio-HDMI-interface.patch
index 572ffc7..50f52b0 100644
--- a/RFC-06-15-drm-i915-power-related-changes-non-HDAudio-HDMI-interface.patch
+++ b/RFC-06-15-drm-i915-power-related-changes-non-HDAudio-HDMI-interface.patch
@@ -501,9 +501,9 @@ index d33de95..dae77d1 100644
 +#endif
 +
  /**
-  * DOC: RC6
-  *
-@@ -7098,6 +7109,7 @@ void intel_suspend_hw(struct drm_device *dev)
+  * RC6 is a special power stage which allows the GPU to enter an very
+  * low-voltage mode when idle, using down to 0V while at this stage.  This
+@@ -6964,6 +6975,7 @@
  void intel_init_pm(struct drm_device *dev)
  {
  	struct drm_i915_private *dev_priv = dev->dev_private;
@@ -511,7 +511,7 @@ index d33de95..dae77d1 100644
  
  	intel_fbc_init(dev_priv);
  
-@@ -7398,3 +7410,44 @@ void intel_pm_setup(struct drm_device *dev)
+@@ -7257,3 +7269,44 @@
  	atomic_set(&dev_priv->pm.wakeref_count, 0);
  	atomic_set(&dev_priv->pm.atomic_seq, 0);
  }
diff --git a/RFC-09-15-ALSA-Intel-Atom-add-Atom-non-HDAudio-HDMI-interface.patch b/RFC-09-15-ALSA-Intel-Atom-add-Atom-non-HDAudio-HDMI-interface.patch
index 1d22646..c5c95f6 100644
--- a/RFC-09-15-ALSA-Intel-Atom-add-Atom-non-HDAudio-HDMI-interface.patch
+++ b/RFC-09-15-ALSA-Intel-Atom-add-Atom-non-HDAudio-HDMI-interface.patch
@@ -40,23 +40,22 @@ diff --git a/sound/Kconfig b/sound/Kconfig
 index 5a240e0..75c679e 100644
 --- a/sound/Kconfig
 +++ b/sound/Kconfig
-@@ -134,3 +134,11 @@ config AC97_BUS
+@@ -134,3 +134,10 @@
  	  sound subsystem and other function drivers completely unrelated to
  	  sound although they're sharing the AC97 bus. Concerned drivers
  	  should "select" this.
 +
 +config SUPPORT_HDMI
-+        bool "SUPPORT_HDMI"
-+        depends on DRM_I915
-+        default n
-+        help
-+          Choose this option to support HDMI.
-+
++	bool "SUPPORT_HDMI"
++	depends on DRM_I915
++	default n
++	help
++	  Choose this option to support HDMI.
 diff --git a/sound/Makefile b/sound/Makefile
 index 7732070..f2c5e82 100644
 --- a/sound/Makefile
 +++ b/sound/Makefile
-@@ -8,6 +8,7 @@ obj-$(CONFIG_DMASOUND) += oss/
+@@ -8,6 +8,7 @@
  obj-$(CONFIG_SND) += core/ i2c/ drivers/ isa/ pci/ ppc/ arm/ sh/ synth/ usb/ \
  	firewire/ sparc/ spi/ parisc/ pcmcia/ mips/ soc/ atmel/ hda/
  obj-$(CONFIG_SND_AOA) += aoa/
diff --git a/RFC-10-15-add-dependency-on-PM_RUNTIME.patch b/RFC-10-15-add-dependency-on-PM_RUNTIME.patch
index d7e8e50..e0ff9aa 100644
--- a/RFC-10-15-add-dependency-on-PM_RUNTIME.patch
+++ b/RFC-10-15-add-dependency-on-PM_RUNTIME.patch
@@ -21,11 +21,11 @@ diff --git a/sound/Kconfig b/sound/Kconfig
 index 75c679e..b8b4fce 100644
 --- a/sound/Kconfig
 +++ b/sound/Kconfig
-@@ -138,6 +138,7 @@ config AC97_BUS
+@@ -138,6 +138,7 @@
  config SUPPORT_HDMI
-         bool "SUPPORT_HDMI"
-         depends on DRM_I915
+ 	bool "SUPPORT_HDMI"
+ 	depends on DRM_I915
 +	select PM_RUNTIME
-         default n
-         help
-           Choose this option to support HDMI.
+ 	default n
+ 	help
+ 	  Choose this option to support HDMI.
diff --git a/config-generic b/config-generic
index a970c65..eafd59c 100644
--- a/config-generic
+++ b/config-generic
@@ -3895,6 +3895,7 @@ CONFIG_SND_FIREWIRE_TASCAM=m
 # Open Sound System
 #
 # CONFIG_SOUND_PRIME is not set
+CONFIG_SUPPORT_HDMI=y
 
 #
 # USB support
-- 
2.4.3

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

      reply	other threads:[~2016-03-19 10:05 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-18 19:32 Intel Atom SoC Bay/Cherry Trail - HDMI Audio poma
2016-03-19 10:05 ` poma [this message]

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=56ED246A.3040507@gmail.com \
    --to=pomidorabelisima@gmail.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=pierre-louis.bossart@linux.intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.