Commit b13efb53 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

Merge tag 'asoc-fix-v6.19-merge-window' of...

Merge tag 'asoc-fix-v6.19-merge-window' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Fixes for v6.19

A small pile of fixes that came in during the merge window, it's all
fairly standard device specific stuff.
parents 161a0c61 f34836a8
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -9,6 +9,9 @@ title: Cirrus Logic CS42448/CS42888 audio CODEC
maintainers:
  - patches@opensource.cirrus.com

allOf:
  - $ref: dai-common.yaml#

properties:
  compatible:
    enum:
@@ -63,7 +66,7 @@ then:
    - VLC-supply
    - VLS-supply

additionalProperties: false
unevaluatedProperties: false

examples:
  - |
+2 −0
Original line number Diff line number Diff line
@@ -157,6 +157,8 @@ static int acp_i2s_set_tdm_slot(struct snd_soc_dai *dai, u32 tx_mask, u32 rx_mas

	spin_lock_irq(&chip->acp_lock);
	list_for_each_entry(stream, &chip->stream_list, list) {
		if (dai->id != stream->dai_id)
			continue;
		switch (chip->acp_rev) {
		case ACP_RN_PCI_ID:
		case ACP_RMB_PCI_ID:
+24 −6
Original line number Diff line number Diff line
@@ -219,6 +219,9 @@ static int set_acp_i2s_dma_fifo(struct snd_pcm_substream *substream,
					SP_PB_FIFO_ADDR_OFFSET;
			reg_fifo_addr = ACP_I2S_TX_FIFOADDR(chip);
			reg_fifo_size = ACP_I2S_TX_FIFOSIZE(chip);
			if (chip->acp_rev >= ACP70_PCI_ID)
				phy_addr = ACP7x_I2S_SP_TX_MEM_WINDOW_START;
			else
				phy_addr = I2S_SP_TX_MEM_WINDOW_START + stream->reg_offset;
			writel(phy_addr, chip->base + ACP_I2S_TX_RINGBUFADDR(chip));
		} else {
@@ -227,6 +230,9 @@ static int set_acp_i2s_dma_fifo(struct snd_pcm_substream *substream,
					SP_CAPT_FIFO_ADDR_OFFSET;
			reg_fifo_addr = ACP_I2S_RX_FIFOADDR(chip);
			reg_fifo_size = ACP_I2S_RX_FIFOSIZE(chip);
			if (chip->acp_rev >= ACP70_PCI_ID)
				phy_addr = ACP7x_I2S_SP_RX_MEM_WINDOW_START;
			else
				phy_addr = I2S_SP_RX_MEM_WINDOW_START + stream->reg_offset;
			writel(phy_addr, chip->base + ACP_I2S_RX_RINGBUFADDR(chip));
		}
@@ -238,6 +244,9 @@ static int set_acp_i2s_dma_fifo(struct snd_pcm_substream *substream,
					BT_PB_FIFO_ADDR_OFFSET;
			reg_fifo_addr = ACP_BT_TX_FIFOADDR(chip);
			reg_fifo_size = ACP_BT_TX_FIFOSIZE(chip);
			if (chip->acp_rev >= ACP70_PCI_ID)
				phy_addr = ACP7x_I2S_BT_TX_MEM_WINDOW_START;
			else
				phy_addr = I2S_BT_TX_MEM_WINDOW_START + stream->reg_offset;
			writel(phy_addr, chip->base + ACP_BT_TX_RINGBUFADDR(chip));
		} else {
@@ -246,7 +255,10 @@ static int set_acp_i2s_dma_fifo(struct snd_pcm_substream *substream,
					BT_CAPT_FIFO_ADDR_OFFSET;
			reg_fifo_addr = ACP_BT_RX_FIFOADDR(chip);
			reg_fifo_size = ACP_BT_RX_FIFOSIZE(chip);
			phy_addr = I2S_BT_TX_MEM_WINDOW_START + stream->reg_offset;
			if (chip->acp_rev >= ACP70_PCI_ID)
				phy_addr = ACP7x_I2S_BT_RX_MEM_WINDOW_START;
			else
				phy_addr = I2S_BT_RX_MEM_WINDOW_START + stream->reg_offset;
			writel(phy_addr, chip->base + ACP_BT_RX_RINGBUFADDR(chip));
		}
		break;
@@ -257,6 +269,9 @@ static int set_acp_i2s_dma_fifo(struct snd_pcm_substream *substream,
					HS_PB_FIFO_ADDR_OFFSET;
			reg_fifo_addr = ACP_HS_TX_FIFOADDR;
			reg_fifo_size = ACP_HS_TX_FIFOSIZE;
			if (chip->acp_rev >= ACP70_PCI_ID)
				phy_addr = ACP7x_I2S_HS_TX_MEM_WINDOW_START;
			else
				phy_addr = I2S_HS_TX_MEM_WINDOW_START + stream->reg_offset;
			writel(phy_addr, chip->base + ACP_HS_TX_RINGBUFADDR);
		} else {
@@ -265,6 +280,9 @@ static int set_acp_i2s_dma_fifo(struct snd_pcm_substream *substream,
					HS_CAPT_FIFO_ADDR_OFFSET;
			reg_fifo_addr = ACP_HS_RX_FIFOADDR;
			reg_fifo_size = ACP_HS_RX_FIFOSIZE;
			if (chip->acp_rev >= ACP70_PCI_ID)
				phy_addr = ACP7x_I2S_HS_RX_MEM_WINDOW_START;
			else
				phy_addr = I2S_HS_RX_MEM_WINDOW_START + stream->reg_offset;
			writel(phy_addr, chip->base + ACP_HS_RX_RINGBUFADDR);
		}
+3 −1
Original line number Diff line number Diff line
@@ -358,7 +358,9 @@ static int bcm63xx_soc_pcm_new(struct snd_soc_component *component,

	i2s_priv = dev_get_drvdata(snd_soc_rtd_to_cpu(rtd, 0)->dev);

	of_dma_configure(pcm->card->dev, pcm->card->dev->of_node, 1);
	ret = of_dma_configure(pcm->card->dev, pcm->card->dev->of_node, 1);
	if (ret)
		return ret;

	ret = dma_coerce_mask_and_coherent(pcm->card->dev, DMA_BIT_MASK(32));
	if (ret)
+1 −2
Original line number Diff line number Diff line
@@ -777,7 +777,6 @@ config SND_SOC_CQ0093VC
config SND_SOC_CROS_EC_CODEC
	tristate "codec driver for ChromeOS EC"
	depends on CROS_EC
	select CRYPTO
	select CRYPTO_LIB_SHA256
	help
	  If you say yes here you will get support for the
@@ -918,7 +917,7 @@ config SND_SOC_CS35L56_CAL_DEBUGFS
config SND_SOC_CS35L56_CAL_SET_CTRL
	bool "CS35L56 ALSA control to restore factory calibration"
	default N
	select SND_SOC_CS35L56_CAL_SYSFS_COMMON
	select SND_SOC_CS35L56_CAL_DEBUGFS_COMMON
	help
	  Allow restoring factory calibration data through an ALSA
	  control. This is only needed on platforms without UEFI or
Loading