openwrt/target/linux/layerscape/patches-5.4/801-audio-0011-Revert-ASoC-fsl_sai-add-of_match-data.patch
John Audia b4c02c9998 kernel: bump 5.4 to 5.4.73
Removed upstreamed patches:
 generic/pending-5.4
   445-mtd-spinand-gigadevice-Only-one-dummy-byte-in-QUA.patch
   446-mtd-spinand-gigadevice-Add-QE-Bit.patch
 pistachio/patches-5.4
   150-pwm-img-Fix-null-pointer-access-in-probe.patch

Manually rebased:
 layerscape/patches-5.4
   801-audio-0011-Revert-ASoC-fsl_sai-add-of_match-data.patch
   801-audio-0039-MLK-16224-6-ASoC-fsl_sai-fix-DSD-suspend-resume.patch
   801-audio-0073-MLK-21957-3-ASoC-fsl_sai-add-bitcount-and-timestamp-.patch
   820-usb-0009-usb-dwc3-Add-workaround-for-host-mode-VBUS-glitch-wh.patch

All modifications made by update_kernel.sh

Build system: x86_64
Build-tested: ipq806x/R7800, ath79/generic, bcm27xx/bcm2711,
              mvebu (mamba, rango), x86_64, ramips/mt7621
Run-tested: ipq806x/R7800, mvebu (mamba, rango), x86_64, ramips (RT-AC57U)

No dmesg regressions, everything functional

Signed-off-by: John Audia <graysky@archlinux.us>
[alter 820-usb-0009-usb-dwc3-Add-workaround-for-host-mode-VBUS-glitch-wh]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-11-01 14:44:06 +01:00

97 lines
2.7 KiB
Diff

From 6e0abca40338d5078be0e5947c7f9723b40bc7e7 Mon Sep 17 00:00:00 2001
From: Dong Aisheng <aisheng.dong@nxp.com>
Date: Mon, 30 Mar 2020 16:17:52 +0800
Subject: [PATCH] Revert "ASoC: fsl_sai: add of_match data"
This reverts commit 89c9679f699d88986ce552738dc7c5c500c8fc67.
[rebase]
Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
---
sound/soc/fsl/fsl_sai.c | 22 ++++++++--------------
sound/soc/fsl/fsl_sai.h | 6 +-----
2 files changed, 9 insertions(+), 19 deletions(-)
--- a/sound/soc/fsl/fsl_sai.c
+++ b/sound/soc/fsl/fsl_sai.c
@@ -9,7 +9,6 @@
#include <linux/dmaengine.h>
#include <linux/module.h>
#include <linux/of_address.h>
-#include <linux/of_device.h>
#include <linux/pm_runtime.h>
#include <linux/regmap.h>
#include <linux/slab.h>
@@ -789,7 +788,10 @@ static int fsl_sai_probe(struct platform
return -ENOMEM;
sai->pdev = pdev;
- sai->soc_data = of_device_get_match_data(&pdev->dev);
+
+ if (of_device_is_compatible(np, "fsl,imx6sx-sai") ||
+ of_device_is_compatible(np, "fsl,imx6ul-sai"))
+ sai->sai_on_imx = true;
sai->is_lsb_first = of_property_read_bool(np, "lsb-first");
@@ -901,7 +903,7 @@ static int fsl_sai_probe(struct platform
if (ret)
goto err_pm_disable;
- if (sai->soc_data->use_imx_pcm) {
+ if (sai->sai_on_imx)
ret = imx_pcm_dma_init(pdev, IMX_SAI_DMABUF_SIZE);
if (ret)
goto err_pm_disable;
@@ -926,18 +928,10 @@ static int fsl_sai_remove(struct platfor
return 0;
}
-static const struct fsl_sai_soc_data fsl_sai_vf610_data = {
- .use_imx_pcm = false,
-};
-
-static const struct fsl_sai_soc_data fsl_sai_imx6sx_data = {
- .use_imx_pcm = true,
-};
-
static const struct of_device_id fsl_sai_ids[] = {
- { .compatible = "fsl,vf610-sai", .data = &fsl_sai_vf610_data },
- { .compatible = "fsl,imx6sx-sai", .data = &fsl_sai_imx6sx_data },
- { .compatible = "fsl,imx6ul-sai", .data = &fsl_sai_imx6sx_data },
+ { .compatible = "fsl,vf610-sai", },
+ { .compatible = "fsl,imx6sx-sai", },
+ { .compatible = "fsl,imx6ul-sai", },
{ /* sentinel */ }
};
MODULE_DEVICE_TABLE(of, fsl_sai_ids);
--- a/sound/soc/fsl/fsl_sai.h
+++ b/sound/soc/fsl/fsl_sai.h
@@ -126,10 +126,6 @@
#define FSL_SAI_MAXBURST_TX 6
#define FSL_SAI_MAXBURST_RX 6
-struct fsl_sai_soc_data {
- bool use_imx_pcm;
-};
-
struct fsl_sai {
struct platform_device *pdev;
struct regmap *regmap;
@@ -139,6 +135,7 @@ struct fsl_sai {
bool is_slave_mode;
bool is_lsb_first;
bool is_dsp_mode;
+ bool sai_on_imx;
bool synchronous[2];
unsigned int mclk_id[2];
@@ -146,7 +143,6 @@ struct fsl_sai {
unsigned int slots;
unsigned int slot_width;
- const struct fsl_sai_soc_data *soc_data;
struct snd_soc_dai_driver cpu_dai_drv;
struct snd_dmaengine_dai_dma_data dma_params_rx;
struct snd_dmaengine_dai_dma_data dma_params_tx;