mirror of
https://github.com/armbian/build.git
synced 2025-08-14 07:06:58 +02:00
* Bump imx6 edge to 5.12.y * Bump odroid xu4 edge to 5.12.y * Bump Jetson nano edge to 5.12.y * WIP: Bump sunxi to 5.12.y - create a copy of patches and make a new link - wireless patches needs adjutement to 5.12 - some patches are still failing * Adjust wireless patches to build on 5.12.y * Remove template wireless patch * Move Espressobin edge to 5.12.y * Bump mvebu to 5.12 - patch 92-mvebu-gpio-remove-hardcoded-timer-assignment.patch was disabled @heisath - adjusted wireless driver for 8723ds * Adjust sunxi / sunxi64 edge to compile * Fix kernel config for Jetson nano edge * bump meson64 to 5.12.y * bump rockchip edge to 5.12.y * Bump rockchip64 to 5.12.y * Bump rk322x edge to 5.12.y @paolosabatino * Cleanup im6, re-add 5.10.y patches since one is missing in 5.12.y * Update odroidxu4 edge links * rk322x: moved rk322x-edge to kernel 5.12, fix overlay compilation, retouched included kernel modules * Cleanup: remove deprecated config Co-authored-by: Paolo Sabatino <paolo.sabatino@gmail.com>
58 lines
1.7 KiB
Diff
58 lines
1.7 KiB
Diff
diff --git a/sound/soc/sunxi/sun4i-spdif.c b/sound/soc/sunxi/sun4i-spdif.c
|
|
index cbe598b0f..08f0ed3e9 100644
|
|
--- a/sound/soc/sunxi/sun4i-spdif.c
|
|
+++ b/sound/soc/sunxi/sun4i-spdif.c
|
|
@@ -175,6 +175,7 @@ struct sun4i_spdif_quirks {
|
|
unsigned int reg_dac_txdata;
|
|
bool has_reset;
|
|
unsigned int val_fctl_ftx;
|
|
+ unsigned int mclk_multiplier;
|
|
};
|
|
|
|
struct sun4i_spdif_dev {
|
|
@@ -311,6 +312,7 @@ static int sun4i_spdif_hw_params(struct snd_pcm_substream *substream,
|
|
default:
|
|
return -EINVAL;
|
|
}
|
|
+ mclk *= host->quirks->mclk_multiplier;
|
|
|
|
ret = clk_set_rate(host->spdif_clk, mclk);
|
|
if (ret < 0) {
|
|
@@ -345,6 +347,7 @@ static int sun4i_spdif_hw_params(struct snd_pcm_substream *substream,
|
|
default:
|
|
return -EINVAL;
|
|
}
|
|
+ mclk_div *= host->quirks->mclk_multiplier;
|
|
|
|
reg_val = 0;
|
|
reg_val |= SUN4I_SPDIF_TXCFG_ASS;
|
|
@@ -427,24 +430,28 @@ static struct snd_soc_dai_driver sun4i_spdif_dai = {
|
|
static const struct sun4i_spdif_quirks sun4i_a10_spdif_quirks = {
|
|
.reg_dac_txdata = SUN4I_SPDIF_TXFIFO,
|
|
.val_fctl_ftx = SUN4I_SPDIF_FCTL_FTX,
|
|
+ .mclk_multiplier = 1,
|
|
};
|
|
|
|
static const struct sun4i_spdif_quirks sun6i_a31_spdif_quirks = {
|
|
.reg_dac_txdata = SUN4I_SPDIF_TXFIFO,
|
|
.val_fctl_ftx = SUN4I_SPDIF_FCTL_FTX,
|
|
.has_reset = true,
|
|
+ .mclk_multiplier = 1,
|
|
};
|
|
|
|
static const struct sun4i_spdif_quirks sun8i_h3_spdif_quirks = {
|
|
.reg_dac_txdata = SUN8I_SPDIF_TXFIFO,
|
|
.val_fctl_ftx = SUN4I_SPDIF_FCTL_FTX,
|
|
.has_reset = true,
|
|
+ .mclk_multiplier = 4,
|
|
};
|
|
|
|
static const struct sun4i_spdif_quirks sun50i_h6_spdif_quirks = {
|
|
.reg_dac_txdata = SUN8I_SPDIF_TXFIFO,
|
|
.val_fctl_ftx = SUN50I_H6_SPDIF_FCTL_FTX,
|
|
.has_reset = true,
|
|
+ .mclk_multiplier = 1,
|
|
};
|
|
|
|
static const struct of_device_id sun4i_spdif_of_match[] = {
|