summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorCezary Rojewski <cezary.rojewski@intel.com>2023-10-06 12:28:56 +0200
committerTakashi Iwai <tiwai@suse.de>2023-10-06 14:30:19 +0200
commit956b610c4974c99a55c95542c4fca6025dee579f (patch)
tree216e1ab22ab9cb34e65905dadeabfe6472fd051b /sound
parentf93dc90c2e8ed664985e366aa6459ac83cdab236 (diff)
downloadlinux-stable-956b610c4974c99a55c95542c4fca6025dee579f.tar.gz
linux-stable-956b610c4974c99a55c95542c4fca6025dee579f.tar.bz2
linux-stable-956b610c4974c99a55c95542c4fca6025dee579f.zip
ALSA: hda: Fix stream fifo_size initialization
SDxFIFOS register indicates the fifo size directly. There is no need to modify the value after reading the register. Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com> Link: https://lore.kernel.org/r/20231006102857.749143-3-cezary.rojewski@intel.com Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r--sound/hda/hdac_stream.c2
-rw-r--r--sound/pci/hda/hda_intel.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/sound/hda/hdac_stream.c b/sound/hda/hdac_stream.c
index a132108fba40..a784fd77cd4b 100644
--- a/sound/hda/hdac_stream.c
+++ b/sound/hda/hdac_stream.c
@@ -308,7 +308,7 @@ int snd_hdac_stream_setup(struct hdac_stream *azx_dev)
if (ret)
dev_dbg(bus->dev, "polling SD_FIFOSIZE 0x%04x failed: %d\n",
AZX_REG_SD_FIFOSIZE, ret);
- azx_dev->fifo_size = snd_hdac_stream_readw(azx_dev, SD_FIFOSIZE) + 1;
+ azx_dev->fifo_size = snd_hdac_stream_readw(azx_dev, SD_FIFOSIZE);
/* when LPIB delay correction gives a small negative value,
* we ignore it; currently set the threshold statically to
diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
index ca765ac4765f..e19274fd990d 100644
--- a/sound/pci/hda/hda_intel.c
+++ b/sound/pci/hda/hda_intel.c
@@ -806,7 +806,7 @@ static unsigned int azx_via_get_position(struct azx *chip,
mod_dma_pos = le32_to_cpu(*azx_dev->core.posbuf);
mod_dma_pos %= azx_dev->core.period_bytes;
- fifo_size = azx_stream(azx_dev)->fifo_size - 1;
+ fifo_size = azx_stream(azx_dev)->fifo_size;
if (azx_dev->insufficient) {
/* Link position never gather than FIFO size */