1
0
Fork 0
Commit Graph

874486 Commits (a9278aadeb4c8edb3d982e8003f537bc73531729)

Author SHA1 Message Date
Guoniu.zhou 40682f78ec media: staging: imx: add media device driver support for IMX8
Add media device drivers support. Media device is a virtual platform
device which used to manage all modules in IMX8 image subsystem and
as the parent device for all modules devices.

Signed-off-by: Guoniu.zhou <guoniu.zhou@nxp.com>
[ Aisheng: Kconfig & Makefile update for a clean base ]
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
2019-12-02 09:58:14 +08:00
Chircu-Mare Bogdan-Petru c22be94605 can: flexcan: Add S32V234 support to FlexCAN driver
The FlexCAN driver is compatible with the modules on S32V234 chips.

Signed-off-by: Chircu-Mare Bogdan-Petru <Bogdan.Chircu@freescale.com>
Signed-off-by: Dan Nica <dan.nica@nxp.com>
Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
Reviewed-by: Li Yang <leoyang.li@nxp.com>
Reviewed-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
2019-11-29 11:44:52 +02:00
Chircu-Mare Bogdan-Petru 9ce8988c80 clk: s32v234: Enable FlexCAN clock
Enable the clocks needed for FlexCAN support on Treerunner.

Signed-off-by: Chircu-Mare Bogdan-Petru <Bogdan.Chircu@freescale.com>
Signed-off-by: Stoica Cosmin-Stefan <cosmin.stoica@nxp.com>
Signed-off-by: Larisa Grigore <Larisa.Grigore@nxp.com>
Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
Reviewed-by: Li Yang <leoyang.li@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
2019-11-29 11:44:11 +02:00
Stoica Cosmin-Stefan 086bbd068f clk: s32v234: Add definitions for CAN clocks
Define macros which will indicate the clock signals obtained after
auxiliary clock 6 source selection and division (CAN_CLK) respectively.

Signed-off-by: Stoica Cosmin-Stefan <cosmin.stoica@nxp.com>
Signed-off-by: Stefan-Gabriel Mirea <stefan-gabriel.mirea@nxp.com>
2019-11-29 11:44:06 +02:00
Shengjiu Wang dfb874e95e LF-215: ASoC: fsl_rpmsg_i2s: Enable WQ_FREEZABLE for workqueue
In the end of playback, when the suspend happen, there will be error
in m4 side.

RTM_SaiSdmaAdapter_SetParam: Tx in wrong state 2!
SRTM_SaiSdmaAdapter_SetBuf: Tx in wrong state 2!
SRTM_SaiSdmaAdapter_Start: Tx in wrong state 2!

The reason is that the I2S_TX_TERMINATE happen in the middle of
I2S_TX_SUSPEND and I2S_TX_RESUME, this sequence is not allowed.

So we make the rpmsg message workqueue enter freeze in suspend
to avoid such issue. that the command sequence will be
I2S_TX_SUSPEND->I2S_TX_RESUME->I2S_TX_TERMINATE

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
2019-11-29 16:15:08 +08:00
Dong Aisheng c52d9b893d MLK-21599-2 arm64: defconfig: FORCE_MAX_ZONEORDER default 14 for imx
This patch change MAX_ZONEORDER default to 14 on i.MX8 platforms
due to GPU/DISPLAY large continuous physical memory requires it

This also aligned with previous imx releases on imx6/7/8

Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
2019-11-29 15:05:56 +08:00
Dong Aisheng 407df7f611 LF-210 arm64: defconfig: add imx fragment config
In imx fragment config file, it will disable all other ARCH
except Layerscape and S32 which can save the image size and
compiling time a lot.

Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
2019-11-29 15:05:18 +08:00
Peter Chen 03b112e3a4
LF-238 ARM64: defconfig: enable USB ACM
It is used for CDC ACM function.

Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
2019-11-29 15:10:14 +08:00
Leonard Crestez 70d28fd884 MLK-21599-1 arm64: Kconfig: Make FORCE_MAX_ZONEORDER configurable
Older imx releases increased this based on SOC_IMX8 but that symbol is
gone and the expectation is that SOC-selection symbols like "ARCH_MXC"
will almost always be defined and shouldn't be used to make incompatible
config decisions.

Make the value of FORCE_MAX_ZONEORDER configurable so this can be
adjusted in a .config file.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Li Yang <Leoyang.li@nxp.com>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
2019-11-29 15:03:58 +08:00
Haibo Chen e9e988a573 LF-45 ARM64: defconfig: build as module for synaptics dsx touch
Change the SYNAPTICS_DSX_I2C touch driver build as module.

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
2019-11-29 14:54:00 +08:00
Anson Huang 0ef487ebee LF-209-2 arm64: defconfig: Select CONFIG_PM_TEST_SUSPEND by default
Select CONFIG_PM_TEST_SUSPEND by default to support PM test.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
2019-11-29 09:34:18 +08:00
Anson Huang 82c82c313e LF-209-1 arm64: defconfig: Deselect CONFIG_HIBERNATION by default
Deselect CONFIG_HIBERNATION as it is NOT supported on i.MX SoCs.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Jacky Bai <ping.bai@nxp.com>
2019-11-29 09:34:17 +08:00
Daniel Baluta 9c3a087b1d ASoC: SOF: Read tplg filename from board descriptor
We use the nocodec tplg_filename for now. Proper name
should be read from device tree file.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-29 00:51:41 +02:00
Daniel Baluta 9ce84c863a ASoC: SOF: Update fw_filename from board description
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-29 00:32:36 +02:00
Daniel Baluta 95ab2f59ea ASoC: SOF: Allow probe to continue when we have an actual codec
For now the machine driver taking care of the codec is hard-coded.
In the future we will need to read the name from DT.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-28 23:24:35 +02:00
Daniel Baluta 1b9618b96c ASoC: SOF: Hardcode ignore_machine
We need to find a way to pass the machine driver name to SOF core. So
far just hard code it.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-28 23:21:46 +02:00
Daniel Baluta 925ad97abd ASoC: fsl: Add generic DAI driver
On i.MX8 platforms that have a DSP the DAI handling is taken care
of by two entities:
	* Application Processor (AP), which runs Linux
	* DSP, which runs a firmware (typically Sound Open Firmware)

The DSP has access to DAI IP registers, but it cannot easily handle
resources like:
	* clock
	* power domain management
	* pinctrl.

For this reason we introduce a generic FSL DAI driver which will take
care of the resources above.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-28 23:16:40 +02:00
Daniel Baluta 78570725ce Revert "ASoC: fsl: Add generic DAI driver"
This reverts commit 9aca4d89de.
Reverting this because the patch suffered a lot of changes and
I don't want to do a first push. This should be squasehd
with 9aca4d89de.
2019-11-28 23:15:41 +02:00
Robin Gong fc3129c10b MLK-22824-4: ARM64: configs: defconfig: enable pca9450 by default
Add pca9450 support into defconfig.

Signed-off-by: John Lee <john.lee@nxp.com>
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
(cherry picked from commit 96a47b529939ef7993d5fc34feff45fe70fb51a7)
2019-11-29 04:25:30 +08:00
Robert Chiras 9dd66e5707 clk: imx: Add missing mipi1_dsi_phy_clk
Add missing definition for mipi1_dsi_phy_clk, needed for MIPI_1

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2019-11-28 18:01:48 +02:00
Peng Fan 192cbc5d86 LF-202-3 clk: imx: scu: ignore clks not owned
Not register clks that not owned to current partition.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
2019-11-28 16:24:17 +08:00
Jacky Bai 090b431c46 LF-171 ARM: imx: Add cpu type check for imx6ulz in msl code
Add cpu type check for i.MX6ULZ in MSL code to support low
power feature.

Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2019-11-28 15:13:42 +08:00
Joakim Zhang 37231434b2 perf/imx_ddr: Dump AXI ID filter info to userspace
caps/filter indicates whether HW supports AXI ID filter or not.
caps/enhanced_filter indicates whether HW supports enhanced AXI ID filter
or not.

Users can check filter features from userspace with these attributions.

Suggested-by: Will Deacon <will@kernel.org>
Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
[will: reworked cap switch to be less error-prone]
Signed-off-by: Will Deacon <will@kernel.org>
2019-11-28 12:08:35 +08:00
Joakim Zhang b1a16a5b38 perf/imx_ddr: Add driver for DDR PMU in i.MX8MPlus
Add driver for DDR PMU in i.MX8MPlus.

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Will Deacon <will@kernel.org>
2019-11-28 12:08:35 +08:00
Joakim Zhang c1e0ea519f perf/imx_ddr: Add enhanced AXI ID filter support
With DDR_CAP_AXI_ID_FILTER quirk, indicating HW supports AXI ID filter
which only can get bursts from DDR transaction, i.e. DDR read/write
requests.

This patch add DDR_CAP_AXI_ID_ENHANCED_FILTER quirk, indicating HW
supports AXI ID filter which can get bursts and bytes from DDR
transaction at the same time. We hope PMU always return bytes in the
driver due to it is more meaningful for users.

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Will Deacon <will@kernel.org>
2019-11-28 12:08:35 +08:00
Joakim Zhang b5905c484f bindings: perf: imx-ddr: Add new compatible string
Add new compatible string for i.MX8MPlus DDR PMU core.

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Will Deacon <will@kernel.org>
2019-11-28 12:08:34 +08:00
Adam Zerella 3d2d4538b9 docs: perf: Add imx-ddr to documentation index
Sphinx is currently outputting a warning where
the file 'imx-ddr.rst' is not included in the
documentation index. Additionally, the code
highlighting and doc formatting can be slightly
improved.

Signed-off-by: Adam Zerella <adam.zerella@gmail.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2019-11-28 12:08:34 +08:00
Joakim Zhang 9869cf739e docs/perf: Add AXI ID filter capabilities information
Add capabilities information for AXI ID filter.

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Will Deacon <will@kernel.org>
2019-11-28 12:08:34 +08:00
Joakim Zhang d094d32b0e docs/perf: Add explanation for DDR_CAP_AXI_ID_FILTER_ENHANCED quirk
Add explanation for DDR_CAP_AXI_ID_FILTER_ENHANCED quirk.

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
[will: Simplified wording]
Signed-off-by: Will Deacon <will@kernel.org>
2019-11-28 12:08:34 +08:00
Daniel Baluta ceebeb986a ASoC: soc-core: Set dpcm_playback / dpcm_capture
When converting a normal link to a DPCM link we need
to set dpcm_playback / dpcm_capture otherwise playback/capture
streams will not be created resulting in aplay/arecord not working.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-27 22:01:55 +02:00
Daniel Baluta 9aca4d89de ASoC: fsl: Add generic DAI driver
On i.MX8 platforms that have a DSP the DAI handling is taken care
of by two entities:
	* Application Processor (AP), which runs Linux
	* DSP, which runs a firmware (typically Sound Open Firmware)

The DSP has access to DAI IP registers, but it cannot easily handle
resources like:
	* clock
	* power domain management
	* pinctrl.

For this reason we introduce a generic FSL DAI driver which will take
care of the resources above.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-27 21:56:10 +02:00
Daniel Baluta 37ade25a58 ASoC: SOF: nocodec: Amend arguments for sof_nocodec_setup()
Set the drv_name and tplg_filename for nocodec
machine driver in sof_machine_check().
This means the sof_nocodec_setup() does not
need the mach, plat_data or desc arguments any longer.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-27 21:50:22 +02:00
Daniel Baluta 19fa41a7ab ASoC: Make creation of machine device from SOF core optional
Currently, SOF probes machine drivers by creating a platform device
and passing the machine description as private data.

This is driven by the ACPI restrictions. Ideally, ACPI tables
should contain the description for the machine driver. This is
not possible because ACPI tables are frozen and used on multiple
OS-es (e.g Windows).

In the case, of Device Tree we don't have this restrictions, so we
choose to probe the machine drivers by creating a DT node as is
the standard ALSA way.

This patch makes the probing of machine drivers from SOF core optional
allowing for arm platforms to decouple the SOF core from machine
driver probing.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-27 21:49:11 +02:00
Daniel Baluta 3d9382581a ASoC: SOF: Remove unused drv_name in sof_pdata
This field is only set but never used. Let's remove
it to make code cleaner.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2019-11-27 21:48:18 +02:00
Ranjani Sridharan 0d4340c272 ASoC: SOF: core: move check for runtime callbacks to core
For some platforms, the refcount is explicitly incremented
to prevent it from entering runtime suspend. This
should be be done during probe in the core instead
of being done in the PCM driver.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2019-11-27 21:31:48 +02:00
Horia Geantă 1e3817aa33 LF-63-3 arm64: defconfig: set CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m
This effectively:
-reverts commit 0c857beb7d ("hotfix: arm64: defconfig: disable CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST")
since the SM test issue has been fixed and
-changes SM test Kconfig symbol from y to m
(since SM test driver was changed to build only as a module)

Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
2019-11-27 18:29:13 +02:00
Horia Geantă 12dfefd889 LF-63-2 ARM: imx_v6_v7_defconfig: build SM test as module
SM test driver was changed to build only as a module.
Update defconfig accordingly.

Signed-off-by: Horia Geantă <horia.geanta@nxp.com>
Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
2019-11-27 18:28:47 +02:00
Ranjani Sridharan ed4e044776 ASoC: SOF: core: modify the signature for snd_sof_create_page_table
Modify the signature for snd_sof_create_page_table to
take struct device pointer as an argument instead of
struct snd_sof_dev as this will be used by both the SOF
core device and its clients. Also, move the definition
out of core.c to utils.c.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2019-11-27 17:12:16 +02:00
Ranjani Sridharan 9e39858592 ASoC: SOF: Introduce default_fw_filename member in sof_dev_desc
Currently the FW filename is obtained from the ACPI matching
table when determining which machine driver to use. In
preparation for making the machine driver ACPI match optional
for Device Tree platforms and moving the machine driver selection
out of the SOF core, this patch introduces the default_fw_filename
member in struct sof_dev_desc.

Once the machine driver selection is moved out of SOF core,
the nocodec_fw_filename will become obsolete and will be removed.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-27 17:11:42 +02:00
Liam Girdwood 0e821afb94 ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names.
The manifest information is different between CNL, CML and CFL platforms
hence we need to load different files.

Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
2019-11-27 17:11:24 +02:00
Ranjani Sridharan 67c1304cd5 ASoC: SOF: topology: remove snd_sof_init_topology()
Remove snd_sof_init_topology() as it is never used.

Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
2019-11-27 17:10:06 +02:00
Daniel Baluta 62a6c4c769 ASoC: SOF: topology: Fix unload for SAI/ESAI
Link unload now fails for ESAI/SAI DAIs with:

"error: invalid DAI type 6" because DAI type is not
properly handled.

Fix this by correctly handling cases where type is ESAI or SAI.

Fixes: a4eff5f86c ("ASoC: SOF: imx: Read ESAI parameters and send them to DSP")
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-27 17:09:46 +02:00
Guido Roncarolo 48744b1600 ASoC: SOF: imx: Read SAI parameters and send them to DSP
Signed-off-by: Guido Roncarolo <guido.roncarolo@nxp.com>
2019-11-27 17:08:23 +02:00
Guido Roncarolo 33a9c59680 ASoC: SOF: imx: Describe SAI parameters to be sent to DSP
Introduce sof_ipc_dai_sai_params to keep information that
we get from topology and we send to DSP FW.
For the moment it is identical to ESAI one but it will
evolve shortly independently

Signed-off-by: Guido Roncarolo <guido.roncarolo@nxp.com>
2019-11-27 17:08:23 +02:00
Daniel Baluta 592b8ba3b6 ASoC: SOF: imx: Read ESAI parameters and send them to DSP
ESAI parameters are read for topology file, packed into
sof_ipc_dai_esai_parms struct and then sent to DSP.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-27 17:08:23 +02:00
Daniel Baluta 1314d31f0e ASoC: SOF: imx: Describe ESAI parameters to be sent to DSP
Introduce sof_ipc_dai_esai_params to keep information that
we get from topology and we send to DSP FW.

Also bump the ABI minor to reflect the changes on DSP FW.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-11-27 17:08:23 +02:00
Robin Gong 91cbc7cc11 LF-141: ARM: imx_v6_v7_defconfig: enable CONFIG_PREEMPT
Enable CONFIG_PREEMPT instead of CONFIG_PREEMPT_VOLUNTARY, the former
is much suitable for embed system as i.mx. Besides, that aligns with
internal legacy imx_v7_defconfig.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
2019-11-27 20:00:31 +08:00
Wen He 988d0a7af7 clk: ls1028a: Add clock driver for Display output interface
Add clock driver for QorIQ LS1028A Display output interfaces(LCD, DPHY),
as implemented in TSMC CLN28HPM PLL, this PLL supports the programmable
integer division and range of the display output pixel clock's 27-594MHz.

Signed-off-by: Wen He <wen.he_1@nxp.com>
Signed-off-by: Michael Walle <michael@walle.cc>
2019-11-27 17:53:48 +08:00
Wen He cfa43c88ca dt/bindings: clk: Add YAML schemas for LS1028A Display Clock bindings
LS1028A has a clock domain PXLCLK0 used for provide pixel clocks to Display
output interface. Add a YAML schema for this.

Signed-off-by: Wen He <wen.he_1@nxp.com>
Signed-off-by: Michael Walle <michael@walle.cc>
2019-11-27 17:53:42 +08:00
Fugang Duan 9bfb9485e2 LF-176 ARM: imx: mach-imx6q: Revert "ARM: imx: correct the enet_clk_ref clock string"
enet_clk_ref is the same clock as ptp for i.MX6qdl platform,
but dtsi only define ptp clock that source from soc internal
anatop clock, and imx6q clock driver already register "enet_ref"
clock lookup for the ptp clock, so keep the con_id string as
"enet_ref" for clk_get_sys().

This reverts commit a3990871b9.

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2019-11-27 16:58:32 +08:00