* [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio
@ 2017-03-31 8:49 Takashi Iwai
2017-03-31 8:49 ` [PATCH 1/3] ALSA: hda - Avoid tricky macros Takashi Iwai
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Takashi Iwai @ 2017-03-31 8:49 UTC (permalink / raw)
To: alsa-devel; +Cc: Vinod Koul, Rakesh A Ughreja
Hi,
this is a port of SKL-specific hacks to the legacy HD-audio driver for
improving the PCM position reporting that has been applied to ASoC
driver so far.
Takashi
===
Takashi Iwai (3):
ALSA: hda - Avoid tricky macros
ALSA: hda - Move SKL+ vendor specific register definitions to
hda_register.h
ALSA: hda - Improved position reporting on SKL+
include/sound/hda_register.h | 22 ++++++++++++++++++++--
include/sound/hdaudio.h | 28 ++++++++++++++++++----------
sound/hda/hdac_controller.c | 2 +-
sound/hda/hdac_stream.c | 4 ++--
sound/pci/hda/hda_intel.c | 40 ++++++++++++++++++++++++++++++++++++----
sound/soc/intel/skylake/skl.h | 21 ---------------------
6 files changed, 77 insertions(+), 40 deletions(-)
--
2.11.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/3] ALSA: hda - Avoid tricky macros
2017-03-31 8:49 [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio Takashi Iwai
@ 2017-03-31 8:49 ` Takashi Iwai
2017-03-31 8:49 ` [PATCH 2/3] ALSA: hda - Move SKL+ vendor specific register definitions to hda_register.h Takashi Iwai
` (2 subsequent siblings)
3 siblings, 0 replies; 8+ messages in thread
From: Takashi Iwai @ 2017-03-31 8:49 UTC (permalink / raw)
To: alsa-devel; +Cc: Vinod Koul, Rakesh A Ughreja
The macros _snd_hdac_chip_read() and *_write() expand to different
types (b,w,l) per their argument. They were thought to be used only
internally for other snd_hdac_chip_*() macros, but in some situations
we need to call these directly, and they are way too ugly.
Instead of saving a few lines, we just write these macros explicitly
with the types, so that they can be used in a saner way.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
include/sound/hdaudio.h | 28 ++++++++++++++++++----------
sound/hda/hdac_controller.c | 2 +-
sound/hda/hdac_stream.c | 4 ++--
3 files changed, 21 insertions(+), 13 deletions(-)
diff --git a/include/sound/hdaudio.h b/include/sound/hdaudio.h
index 56004ec8d441..96546b30e900 100644
--- a/include/sound/hdaudio.h
+++ b/include/sound/hdaudio.h
@@ -368,24 +368,32 @@ void snd_hdac_bus_free_stream_pages(struct hdac_bus *bus);
/*
* macros for easy use
*/
-#define _snd_hdac_chip_write(type, chip, reg, value) \
- ((chip)->io_ops->reg_write ## type(value, (chip)->remap_addr + (reg)))
-#define _snd_hdac_chip_read(type, chip, reg) \
- ((chip)->io_ops->reg_read ## type((chip)->remap_addr + (reg)))
+#define _snd_hdac_chip_writeb(chip, reg, value) \
+ ((chip)->io_ops->reg_writeb(value, (chip)->remap_addr + (reg)))
+#define _snd_hdac_chip_readb(chip, reg) \
+ ((chip)->io_ops->reg_readb((chip)->remap_addr + (reg)))
+#define _snd_hdac_chip_writew(chip, reg, value) \
+ ((chip)->io_ops->reg_writew(value, (chip)->remap_addr + (reg)))
+#define _snd_hdac_chip_readw(chip, reg) \
+ ((chip)->io_ops->reg_readw((chip)->remap_addr + (reg)))
+#define _snd_hdac_chip_writel(chip, reg, value) \
+ ((chip)->io_ops->reg_writel(value, (chip)->remap_addr + (reg)))
+#define _snd_hdac_chip_readl(chip, reg) \
+ ((chip)->io_ops->reg_readl((chip)->remap_addr + (reg)))
/* read/write a register, pass without AZX_REG_ prefix */
#define snd_hdac_chip_writel(chip, reg, value) \
- _snd_hdac_chip_write(l, chip, AZX_REG_ ## reg, value)
+ _snd_hdac_chip_writel(chip, AZX_REG_ ## reg, value)
#define snd_hdac_chip_writew(chip, reg, value) \
- _snd_hdac_chip_write(w, chip, AZX_REG_ ## reg, value)
+ _snd_hdac_chip_writew(chip, AZX_REG_ ## reg, value)
#define snd_hdac_chip_writeb(chip, reg, value) \
- _snd_hdac_chip_write(b, chip, AZX_REG_ ## reg, value)
+ _snd_hdac_chip_writeb(chip, AZX_REG_ ## reg, value)
#define snd_hdac_chip_readl(chip, reg) \
- _snd_hdac_chip_read(l, chip, AZX_REG_ ## reg)
+ _snd_hdac_chip_readl(chip, AZX_REG_ ## reg)
#define snd_hdac_chip_readw(chip, reg) \
- _snd_hdac_chip_read(w, chip, AZX_REG_ ## reg)
+ _snd_hdac_chip_readw(chip, AZX_REG_ ## reg)
#define snd_hdac_chip_readb(chip, reg) \
- _snd_hdac_chip_read(b, chip, AZX_REG_ ## reg)
+ _snd_hdac_chip_readb(chip, AZX_REG_ ## reg)
/* update a register, pass without AZX_REG_ prefix */
#define snd_hdac_chip_updatel(chip, reg, mask, val) \
diff --git a/sound/hda/hdac_controller.c b/sound/hda/hdac_controller.c
index 043065867656..d15b653de0bf 100644
--- a/sound/hda/hdac_controller.c
+++ b/sound/hda/hdac_controller.c
@@ -272,7 +272,7 @@ int snd_hdac_bus_parse_capabilities(struct hdac_bus *bus)
/* Lets walk the linked capabilities list */
do {
- cur_cap = _snd_hdac_chip_read(l, bus, offset);
+ cur_cap = _snd_hdac_chip_readl(bus, offset);
dev_dbg(bus->dev, "Capability version: 0x%x\n",
(cur_cap & AZX_CAP_HDR_VER_MASK) >> AZX_CAP_HDR_VER_OFF);
diff --git a/sound/hda/hdac_stream.c b/sound/hda/hdac_stream.c
index c6994ebb4567..e1472c7ab6c1 100644
--- a/sound/hda/hdac_stream.c
+++ b/sound/hda/hdac_stream.c
@@ -555,12 +555,12 @@ void snd_hdac_stream_sync_trigger(struct hdac_stream *azx_dev, bool set,
if (!reg)
reg = AZX_REG_SSYNC;
- val = _snd_hdac_chip_read(l, bus, reg);
+ val = _snd_hdac_chip_readl(bus, reg);
if (set)
val |= streams;
else
val &= ~streams;
- _snd_hdac_chip_write(l, bus, reg, val);
+ _snd_hdac_chip_writel(bus, reg, val);
}
EXPORT_SYMBOL_GPL(snd_hdac_stream_sync_trigger);
--
2.11.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/3] ALSA: hda - Move SKL+ vendor specific register definitions to hda_register.h
2017-03-31 8:49 [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio Takashi Iwai
2017-03-31 8:49 ` [PATCH 1/3] ALSA: hda - Avoid tricky macros Takashi Iwai
@ 2017-03-31 8:49 ` Takashi Iwai
2017-03-31 8:49 ` [PATCH 3/3] ALSA: hda - Improved position reporting on SKL+ Takashi Iwai
2017-04-03 2:59 ` [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio Vinod Koul
3 siblings, 0 replies; 8+ messages in thread
From: Takashi Iwai @ 2017-03-31 8:49 UTC (permalink / raw)
To: alsa-devel; +Cc: Vinod Koul, Rakesh A Ughreja
They may be used by both legacy and ASoC drivers.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
include/sound/hda_register.h | 22 ++++++++++++++++++++--
sound/pci/hda/hda_intel.c | 4 ++--
sound/soc/intel/skylake/skl.h | 21 ---------------------
3 files changed, 22 insertions(+), 25 deletions(-)
diff --git a/include/sound/hda_register.h b/include/sound/hda_register.h
index 0013063db7f2..1251ff41c9d3 100644
--- a/include/sound/hda_register.h
+++ b/include/sound/hda_register.h
@@ -106,8 +106,26 @@ enum { SDI0, SDI1, SDI2, SDI3, SDO0, SDO1, SDO2, SDO3 };
#define AZX_REG_HSW_EM4 0x100c
#define AZX_REG_HSW_EM5 0x1010
-/* Skylake/Broxton display HD-A controller Extended Mode registers */
-#define AZX_REG_SKL_EM4L 0x1040
+/* Skylake/Broxton vendor-specific registers */
+#define AZX_REG_VS_EM1 0x1000
+#define AZX_REG_VS_INRC 0x1004
+#define AZX_REG_VS_OUTRC 0x1008
+#define AZX_REG_VS_FIFOTRK 0x100C
+#define AZX_REG_VS_FIFOTRK2 0x1010
+#define AZX_REG_VS_EM2 0x1030
+#define AZX_REG_VS_EM3L 0x1038
+#define AZX_REG_VS_EM3U 0x103C
+#define AZX_REG_VS_EM4L 0x1040
+#define AZX_REG_VS_EM4U 0x1044
+#define AZX_REG_VS_LTRC 0x1048
+#define AZX_REG_VS_D0I3C 0x104A
+#define AZX_REG_VS_PCE 0x104B
+#define AZX_REG_VS_L2MAGC 0x1050
+#define AZX_REG_VS_L2LAHPT 0x1054
+#define AZX_REG_VS_SDXDPIB_XBASE 0x1084
+#define AZX_REG_VS_SDXDPIB_XINTERVAL 0x20
+#define AZX_REG_VS_SDXEFIFOS_XBASE 0x1094
+#define AZX_REG_VS_SDXEFIFOS_XINTERVAL 0x20
/* PCI space */
#define AZX_PCIREG_TCSEL 0x44
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index c8256a89375a..a48330f4a1a9 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -534,9 +534,9 @@ static void bxt_reduce_dma_latency(struct azx *chip)
{
u32 val;
- val = azx_readl(chip, SKL_EM4L);
+ val = azx_readl(chip, VS_EM4L);
val &= (0x3 << 20);
- azx_writel(chip, SKL_EM4L, val);
+ azx_writel(chip, VS_EM4L, val);
}
static void hda_intel_init_chip(struct azx *chip, bool full_reset)
diff --git a/sound/soc/intel/skylake/skl.h b/sound/soc/intel/skylake/skl.h
index bbef77d2b917..8e2878012d53 100644
--- a/sound/soc/intel/skylake/skl.h
+++ b/sound/soc/intel/skylake/skl.h
@@ -27,27 +27,6 @@
#define SKL_SUSPEND_DELAY 2000
-/* Vendor Specific Registers */
-#define AZX_REG_VS_EM1 0x1000
-#define AZX_REG_VS_INRC 0x1004
-#define AZX_REG_VS_OUTRC 0x1008
-#define AZX_REG_VS_FIFOTRK 0x100C
-#define AZX_REG_VS_FIFOTRK2 0x1010
-#define AZX_REG_VS_EM2 0x1030
-#define AZX_REG_VS_EM3L 0x1038
-#define AZX_REG_VS_EM3U 0x103C
-#define AZX_REG_VS_EM4L 0x1040
-#define AZX_REG_VS_EM4U 0x1044
-#define AZX_REG_VS_LTRC 0x1048
-#define AZX_REG_VS_D0I3C 0x104A
-#define AZX_REG_VS_PCE 0x104B
-#define AZX_REG_VS_L2MAGC 0x1050
-#define AZX_REG_VS_L2LAHPT 0x1054
-#define AZX_REG_VS_SDXDPIB_XBASE 0x1084
-#define AZX_REG_VS_SDXDPIB_XINTERVAL 0x20
-#define AZX_REG_VS_SDXEFIFOS_XBASE 0x1094
-#define AZX_REG_VS_SDXEFIFOS_XINTERVAL 0x20
-
#define AZX_PCIREG_PGCTL 0x44
#define AZX_PGCTL_LSRMD_MASK (1 << 4)
#define AZX_PCIREG_CGCTL 0x48
--
2.11.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 3/3] ALSA: hda - Improved position reporting on SKL+
2017-03-31 8:49 [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio Takashi Iwai
2017-03-31 8:49 ` [PATCH 1/3] ALSA: hda - Avoid tricky macros Takashi Iwai
2017-03-31 8:49 ` [PATCH 2/3] ALSA: hda - Move SKL+ vendor specific register definitions to hda_register.h Takashi Iwai
@ 2017-03-31 8:49 ` Takashi Iwai
2017-04-03 2:58 ` Vinod Koul
2017-04-03 2:59 ` [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio Vinod Koul
3 siblings, 1 reply; 8+ messages in thread
From: Takashi Iwai @ 2017-03-31 8:49 UTC (permalink / raw)
To: alsa-devel; +Cc: Vinod Koul, Rakesh A Ughreja
Apply the same methods to obtain the current stream position as ASoC
Intel SKL driver uses. It reads the position from DPIB for a playback
stream while it still reads from the position buffer for a capture
stream. For a capture stream, some ugly workaround is needed to
settle down the inconsistent position.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
sound/pci/hda/hda_intel.c | 36 ++++++++++++++++++++++++++++++++++--
1 file changed, 34 insertions(+), 2 deletions(-)
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index a48330f4a1a9..64db6698214c 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -77,6 +77,7 @@ enum {
POS_FIX_POSBUF,
POS_FIX_VIACOMBO,
POS_FIX_COMBO,
+ POS_FIX_SKL,
};
/* Defines for ATI HD Audio support in SB450 south bridge */
@@ -148,7 +149,7 @@ module_param_array(model, charp, NULL, 0444);
MODULE_PARM_DESC(model, "Use the given board model.");
module_param_array(position_fix, int, NULL, 0444);
MODULE_PARM_DESC(position_fix, "DMA pointer read method."
- "(-1 = system default, 0 = auto, 1 = LPIB, 2 = POSBUF, 3 = VIACOMBO, 4 = COMBO).");
+ "(-1 = system default, 0 = auto, 1 = LPIB, 2 = POSBUF, 3 = VIACOMBO, 4 = COMBO, 5 = SKL+).");
module_param_array(bdl_pos_adj, int, NULL, 0644);
MODULE_PARM_DESC(bdl_pos_adj, "BDL position adjustment offset.");
module_param_array(probe_mask, int, NULL, 0444);
@@ -815,6 +816,31 @@ static unsigned int azx_via_get_position(struct azx *chip,
return bound_pos + mod_dma_pos;
}
+static unsigned int azx_skl_get_dpib_pos(struct azx *chip,
+ struct azx_dev *azx_dev)
+{
+ return _snd_hdac_chip_readl(azx_bus(chip),
+ AZX_REG_VS_SDXDPIB_XBASE +
+ (AZX_REG_VS_SDXDPIB_XINTERVAL *
+ azx_dev->core.index));
+}
+
+/* get the current DMA position with correction on SKL+ chips */
+static unsigned int azx_get_pos_skl(struct azx *chip, struct azx_dev *azx_dev)
+{
+ /* DPIB register gives a more accurate position for playback */
+ if (azx_dev->core.substream->stream == SNDRV_PCM_STREAM_PLAYBACK)
+ return azx_skl_get_dpib_pos(chip, azx_dev);
+
+ /* For capture, we need to read posbuf, but it requires a delay
+ * for the possible boundary overlap; the read of DPIB fetches the
+ * actual posbuf
+ */
+ udelay(20);
+ azx_skl_get_dpib_pos(chip, azx_dev);
+ return azx_get_pos_posbuf(chip, azx_dev);
+}
+
#ifdef CONFIG_PM
static DEFINE_MUTEX(card_list_lock);
static LIST_HEAD(card_list);
@@ -1351,6 +1377,7 @@ static int check_position_fix(struct azx *chip, int fix)
case POS_FIX_POSBUF:
case POS_FIX_VIACOMBO:
case POS_FIX_COMBO:
+ case POS_FIX_SKL:
return fix;
}
@@ -1371,6 +1398,10 @@ static int check_position_fix(struct azx *chip, int fix)
dev_dbg(chip->card->dev, "Using LPIB position fix\n");
return POS_FIX_LPIB;
}
+ if (IS_SKL_PLUS(chip->pci)) {
+ dev_dbg(chip->card->dev, "Using SKL position fix\n");
+ return POS_FIX_SKL;
+ }
return POS_FIX_AUTO;
}
@@ -1382,6 +1413,7 @@ static void assign_position_fix(struct azx *chip, int fix)
[POS_FIX_POSBUF] = azx_get_pos_posbuf,
[POS_FIX_VIACOMBO] = azx_via_get_position,
[POS_FIX_COMBO] = azx_get_pos_lpib,
+ [POS_FIX_SKL] = azx_get_pos_skl,
};
chip->get_position[0] = chip->get_position[1] = callbacks[fix];
@@ -1390,7 +1422,7 @@ static void assign_position_fix(struct azx *chip, int fix)
if (fix == POS_FIX_COMBO)
chip->get_position[1] = NULL;
- if (fix == POS_FIX_POSBUF &&
+ if ((fix == POS_FIX_POSBUF || fix == POS_FIX_SKL) &&
(chip->driver_caps & AZX_DCAPS_COUNT_LPIB_DELAY)) {
chip->get_delay[0] = chip->get_delay[1] =
azx_get_delay_from_lpib;
--
2.11.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 3/3] ALSA: hda - Improved position reporting on SKL+
2017-03-31 8:49 ` [PATCH 3/3] ALSA: hda - Improved position reporting on SKL+ Takashi Iwai
@ 2017-04-03 2:58 ` Vinod Koul
2017-04-03 6:20 ` Takashi Iwai
0 siblings, 1 reply; 8+ messages in thread
From: Vinod Koul @ 2017-04-03 2:58 UTC (permalink / raw)
To: Takashi Iwai; +Cc: alsa-devel, Rakesh A Ughreja
On Fri, Mar 31, 2017 at 10:49:30AM +0200, Takashi Iwai wrote:
> Apply the same methods to obtain the current stream position as ASoC
> Intel SKL driver uses. It reads the position from DPIB for a playback
> stream while it still reads from the position buffer for a capture
> stream. For a capture stream, some ugly workaround is needed to
> settle down the inconsistent position.
>
> Signed-off-by: Takashi Iwai <tiwai@suse.de>
> ---
> sound/pci/hda/hda_intel.c | 36 ++++++++++++++++++++++++++++++++++--
> 1 file changed, 34 insertions(+), 2 deletions(-)
>
> diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> index a48330f4a1a9..64db6698214c 100644
> --- a/sound/pci/hda/hda_intel.c
> +++ b/sound/pci/hda/hda_intel.c
> @@ -77,6 +77,7 @@ enum {
> POS_FIX_POSBUF,
> POS_FIX_VIACOMBO,
> POS_FIX_COMBO,
> + POS_FIX_SKL,
> };
>
> /* Defines for ATI HD Audio support in SB450 south bridge */
> @@ -148,7 +149,7 @@ module_param_array(model, charp, NULL, 0444);
> MODULE_PARM_DESC(model, "Use the given board model.");
> module_param_array(position_fix, int, NULL, 0444);
> MODULE_PARM_DESC(position_fix, "DMA pointer read method."
> - "(-1 = system default, 0 = auto, 1 = LPIB, 2 = POSBUF, 3 = VIACOMBO, 4 = COMBO).");
> + "(-1 = system default, 0 = auto, 1 = LPIB, 2 = POSBUF, 3 = VIACOMBO, 4 = COMBO, 5 = SKL+).");
do we have people use this module param, or is it find what works for
them...
--
~Vinod
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio
2017-03-31 8:49 [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio Takashi Iwai
` (2 preceding siblings ...)
2017-03-31 8:49 ` [PATCH 3/3] ALSA: hda - Improved position reporting on SKL+ Takashi Iwai
@ 2017-04-03 2:59 ` Vinod Koul
2017-04-03 6:45 ` Takashi Iwai
3 siblings, 1 reply; 8+ messages in thread
From: Vinod Koul @ 2017-04-03 2:59 UTC (permalink / raw)
To: Takashi Iwai; +Cc: alsa-devel, Rakesh A Ughreja
On Fri, Mar 31, 2017 at 10:49:27AM +0200, Takashi Iwai wrote:
> Hi,
>
> this is a port of SKL-specific hacks to the legacy HD-audio driver for
> improving the PCM position reporting that has been applied to ASoC
> driver so far.
Yeah the series looks good to me:
Acked-by: Vinod Koul <vinod.koul@intel.com>
Thanks
--
~Vinod
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 3/3] ALSA: hda - Improved position reporting on SKL+
2017-04-03 2:58 ` Vinod Koul
@ 2017-04-03 6:20 ` Takashi Iwai
0 siblings, 0 replies; 8+ messages in thread
From: Takashi Iwai @ 2017-04-03 6:20 UTC (permalink / raw)
To: Vinod Koul; +Cc: alsa-devel, Rakesh A Ughreja
On Mon, 03 Apr 2017 04:58:38 +0200,
Vinod Koul wrote:
>
> On Fri, Mar 31, 2017 at 10:49:30AM +0200, Takashi Iwai wrote:
> > Apply the same methods to obtain the current stream position as ASoC
> > Intel SKL driver uses. It reads the position from DPIB for a playback
> > stream while it still reads from the position buffer for a capture
> > stream. For a capture stream, some ugly workaround is needed to
> > settle down the inconsistent position.
> >
> > Signed-off-by: Takashi Iwai <tiwai@suse.de>
> > ---
> > sound/pci/hda/hda_intel.c | 36 ++++++++++++++++++++++++++++++++++--
> > 1 file changed, 34 insertions(+), 2 deletions(-)
> >
> > diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> > index a48330f4a1a9..64db6698214c 100644
> > --- a/sound/pci/hda/hda_intel.c
> > +++ b/sound/pci/hda/hda_intel.c
> > @@ -77,6 +77,7 @@ enum {
> > POS_FIX_POSBUF,
> > POS_FIX_VIACOMBO,
> > POS_FIX_COMBO,
> > + POS_FIX_SKL,
> > };
> >
> > /* Defines for ATI HD Audio support in SB450 south bridge */
> > @@ -148,7 +149,7 @@ module_param_array(model, charp, NULL, 0444);
> > MODULE_PARM_DESC(model, "Use the given board model.");
> > module_param_array(position_fix, int, NULL, 0444);
> > MODULE_PARM_DESC(position_fix, "DMA pointer read method."
> > - "(-1 = system default, 0 = auto, 1 = LPIB, 2 = POSBUF, 3 = VIACOMBO, 4 = COMBO).");
> > + "(-1 = system default, 0 = auto, 1 = LPIB, 2 = POSBUF, 3 = VIACOMBO, 4 = COMBO, 5 = SKL+).");
>
> do we have people use this module param, or is it find what works for
> them...
It's for debug purpose, and I know people trying this for various
issues.
Takashi
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio
2017-04-03 2:59 ` [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio Vinod Koul
@ 2017-04-03 6:45 ` Takashi Iwai
0 siblings, 0 replies; 8+ messages in thread
From: Takashi Iwai @ 2017-04-03 6:45 UTC (permalink / raw)
To: Vinod Koul; +Cc: alsa-devel, Rakesh A Ughreja
On Mon, 03 Apr 2017 04:59:17 +0200,
Vinod Koul wrote:
>
> On Fri, Mar 31, 2017 at 10:49:27AM +0200, Takashi Iwai wrote:
> > Hi,
> >
> > this is a port of SKL-specific hacks to the legacy HD-audio driver for
> > improving the PCM position reporting that has been applied to ASoC
> > driver so far.
>
> Yeah the series looks good to me:
>
> Acked-by: Vinod Koul <vinod.koul@intel.com>
OK, merged now to for-next branch. Thanks.
Takashi
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2017-04-03 6:45 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-31 8:49 [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio Takashi Iwai
2017-03-31 8:49 ` [PATCH 1/3] ALSA: hda - Avoid tricky macros Takashi Iwai
2017-03-31 8:49 ` [PATCH 2/3] ALSA: hda - Move SKL+ vendor specific register definitions to hda_register.h Takashi Iwai
2017-03-31 8:49 ` [PATCH 3/3] ALSA: hda - Improved position reporting on SKL+ Takashi Iwai
2017-04-03 2:58 ` Vinod Koul
2017-04-03 6:20 ` Takashi Iwai
2017-04-03 2:59 ` [PATCH 0/3] Improve SKL+ position reporting for legacy HD-audio Vinod Koul
2017-04-03 6:45 ` Takashi Iwai
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.