Commit Graph

61 Commits

Author SHA1 Message Date
Ranjani Vaidyanathan 9245f46d6e MLK-23258-4 dts: SATA requires PCIE_A power domain to be ON
SATA driver write to regisers in the PCIE_A power domain and
hence PCIE_A needs to be powered on even when ONLY SATA is enabled.

Signed-off-by: Ranjani Vaidyanathan <ranjani.vaidyanathan@nxp.com>
2020-01-28 15:33:15 -06:00
Ranjani Vaidyanathan c73e8ea3d8 MLK-23258-3 dts: Fix PCIE suspend/resume issue
Fix the parent-child power domain dependency to handle different
PCIE usecases.

Signed-off-by: Ranjani Vaidyanathan <ranjani.vaidyanathan@nxp.com>
2020-01-23 10:03:52 -06:00
Stephane Dion 10ef605cdb SHE-17 arm64: dts: imx8qm: enable first SECO MU
Enabling use of the first SECO MU on i.MX8QM

Signed-off-by: Stephane Dion <stephane.dion_1@nxp.com>
(cherry picked from commit 2b65b323254965b1d563e0aee80e18678d631b9d)
(cherry picked from commit 5ff969719af8a80a8146fcbd856f5d28562c1081)
2019-12-05 16:26:34 +01:00
Robin Gong b76f339fdf MLK-22284-3 ARM64: dts: freescale: imx8dx/qm: split dma channel power domain
Split dma channel power domain from sub-domain of dma customer driver
such as Audio, LPSPI, LPUART.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: S.j. Wang <shengjiu.wang@nxp.com>
2019-07-22 19:15:57 +08:00
Anson Huang 2f14ce7ea6 MLK-21078-2 arm64: dts: imx8qm/imx8qxp: remove early_power_on property
Since RPMSG switches to use LSIO's MU instead of M4's MU,
the LSIO MU's irq is inside GIC IRQ domain, NOT in intmux
irq domain, so no need to power on intmux early during system
resume.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2019-03-14 10:56:15 +08:00
Franck LENORMAND d4303aae81 SSI-35: crypto: caam - Do not rely on common index of jr
With current code, the index are stored in an array at their common index,
ie jr0 store at index 0, jr1 at 1, ...

It force to use buggy mechanic to compute it and is not scalable.

This patch removes the mechanic of computation of hardware register
addresses and the notion of first_jr_index.

Instead the first JR available is set to index 0 of the table and so on.

Legacy code was retrieving the index of the first jr to access registers.
With this new way, we simply always access the first jr.

This is working because after the configuration of the JR in ctl
(enable_jobrings), the driver checks that there is at least 1 JR.
Without this, we could create segfaults.

Fixes: e9688f0f05 ("MLK-15473-1: crypto: caam: Add CAAM driver support for iMX8 soc family")

Signed-off-by: Franck LENORMAND <franck.lenormand@nxp.com>
Reviewed-by: Horia Geantă <horia.geanta@nxp.com>
2019-03-12 17:25:26 +01:00
Leonard Crestez f573dbd5ce MLK-20958-2 imx8: Replace SC_R_LAST with SC_R_NONE in DTB
We are currently using SC_R_LAST as a marker for imx8 power domain tree
nodes without a resource attached. This value is compiled into dtb as
part of the linux build and used by uboot.

The SC_R_LAST constant changes frequently as SCFW resources are added
(by design) and every time we need to update linux and uboot headers
together or boot can fail.

Fix this by replacing SC_R_LAST usage with a new constant SC_R_NONE
defined to be 0xFFF0.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2019-03-11 13:33:20 +02:00
Oliver Brown c3ff087dde MLK-21046-1 arm64: dts: imx8qm: Change the HDMI TX clocks.
Need to change the default HDMI TX clocks to 800 MHz for DPLL and 100 MHz
for bus.

Signed-off-by: Oliver Brown <oliver.brown@nxp.com>
2019-03-05 07:13:35 -06:00
Robert Chiras e3f863c3b9 MLK-20718-4: arm64: dts: imx8qm: Use DSI PHY_REF clk
Until now, the DSI PHY_REF clock was by default ON in SCFW, which made
this clock unusable in kernel, therefore, this clock was set as
CLK_DUMMY in DSI device nodes.
Sinnce this clock was set to OFF in SCFW, now it can be used from
kernel, so add it to device nodes so that the driver can use it
properly.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
2019-03-05 10:27:06 +02:00
Clark Wang 7eaab00f53 MLK-20940-5 ARM64: dts: Add virtual i2c driver support for 8QXP/QM
Add new dts and dtsi file for virtual i2c driver on i.MX8QXP and i.MX8QM
board.

Merge fsl-imx8qm/8qxp-mek-m4.dts to fsl-imx8qm/8qxp-mek-rpmsg.dtsi. So
delete these two files.

Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
2019-02-21 18:38:13 +08:00
Robert Chiras dc35475ddf MLK-17537-13: arch: arm64: fsl-imx8qm: Add phy_ref clock for DSI
Currently, the phy_ref clock is also used by dsi_bridge nodes (nwl-dsi
driver) in order to set the phy_ref rate needed by a specific mode.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
2019-02-12 10:36:05 +08:00
Clark Wang a1204e3b0e MLK-20060-5 dts: lpspi: add dma mode support
Add dma configurations in dts files, for imx7ulp and imx8qm.

There is no "edma0" node in fsl-imx8qm-mek(or lpddr4-arm2)-domu.dts.
lpspi0 node has been deleted in these dts files, so delete lpspi3 node.

Add edma0a and edma0d for lpspi0 and lpspi3, and enable lpspi0/3 for xen.

Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
Acked-by: Fugang Duan <Fugang.duan@nxp.com>
2019-02-12 10:35:58 +08:00
Robin Gong ac10d4fb89 MLK-20691-2: ARM64: dts: freescale: fsl-imx8qm/qxp: add mub-partition
Add mub-partition property for partition reset notification.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Acked-by: Richard Zhu <hongxing.zhu@nxp.com>
2019-02-12 10:35:52 +08:00
Richard Zhu 503fe07760 MLK-20637-1 arm64: dts: reserve per dev dma pool for imx rpmsg
- reserve per dev dma pool for imx rpmsg
- move imx8 rpmsg dts node to the -m4 dts files.
- re-allocate the vpu rpc reserved memory on qm mek domu dts.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:35:51 +08:00
Xianzhong 26022d9bcf MGS-4438 dts: update imx8 gpu depth compression
disable gpu depth compression for 8qm by default,
remove gpu depth compression for 8qxp and m850d.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
2019-02-12 10:35:47 +08:00
Daniel Baluta 1e63c7b093 MLK-20095-3: ASoC: fsl: Differentiate between QXP and QM
On QM the DSP is inside the VPU subsystem while in QXP
it is inside the Audio DMA subsystem. For this reason
there are "subtle" differences.

Introduce new compatible string for QM to help us correctly
configure the DSP depending on the board they run.

dsp_mem_msg structure is shared with the DSP, so by introducing
new member dsp_board_type we can let DSP know on which target it runs.

Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-02-12 10:35:44 +08:00
Daniel Baluta 3ea798c3f0 MLK-20095-2: arm64: dts: Enable IRQ steer domain
When DSP power domain is powered up we also need to power up IRQ steer
domain in order to receive interrupts from Audio peripherals.

Now the PD hierarchy looks like this:
	* pd_dsp_irqsteer
	  * pd_dsp_mu_A
            * pd_dsp_mu_B
              * pd_dsp_ram
                * pd_dsp

Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-02-12 10:35:44 +08:00
Clark Wang 64113623bf MLK-20441-2 dts: lpspi: Add lpspi3 and its slave dts files for imx8qm
For lpspi test, add these two features, use lpspi3 without cs-gpio.
Still support spi-nor using lpspi0 with cs-gpio mode.

- fsl-imx8qm-device.dtsi:
	Add node to support lpspi3.
- fsl-imx8qm-lpddr4-arm2-lpspi.dts:
	Add lpspi3 support for imx8qm-lpddr4-arm2 board.
- fsl-imx8qm-lpddr4-arm2-lpspi-slave.dts:
	Enable spi slave mode for lpspi3.

Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
2019-02-12 10:35:33 +08:00
Viorel Suman 512f8987c9 MLK-20328-9: ARM64: dtsi: imx8qm-device: adjust the expected format
Default value must be prefixed by "0".

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:35:25 +08:00
Xianzhong 8bd46e4c63 MGS-4376: gpu: dts: increase reserved size to 256M for imx8
alloc_contig_range easily return -EBUSY when try to isolate pages,
there are lots of messages with PFNs busy when run GPU tests.
[  622.370671] alloc_contig_range: [4ea70, 4ea7c) PFNs busy
[  626.518072] alloc_contig_range: [4ea90, 4ea9c) PFNs busy

these problems are related wht CMA migration for fragments,
need enlarge GPU reserved size to reduce CMA fragments.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
2019-02-12 10:35:11 +08:00
Sandor Yu bcf32f0c2e MLK-20124-2: arch: arm64: imx8qm: Move irqsteer_hdmi to hdmi dts
Move irqsteer_hdmi to hdmi specific dts.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
2019-02-12 10:34:51 +08:00
Han Xu c4aa12fd73 MLK-19955: arm64: dts: fix the qm flexspi clock name and power domain
Correct the clock name and power domain for i.MX8QM Flexspi.

Signed-off-by: Han Xu <han.xu@nxp.com>
2019-02-12 10:34:40 +08:00
Peter Chen e972fbef86 MLK-19850-3 ARM64: dts: fsl-imx8qm-device: enlarge USB PHY register region
There is a DCD module at USBPHY, the offset is from 0x800.

Reviewed-by: Jun Li <jun.li@nxp.com>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
2019-02-12 10:34:38 +08:00
ming_qian 4c52e217c4 MLK-19621: Remove power settings from the encoder driver for mx8qm
1.remove vpu_set_power
2.split vpu_probe into several functions

Signed-off-by: ming_qian <ming.qian@nxp.com>
2019-02-12 10:34:09 +08:00
Sandor Yu 359b621212 MLK-19583-2: arm64: dts: Add interrupter for imx hdmi rx
Add cable plugin and plugout interrupter for imx hdmi rx

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
2019-02-12 10:34:04 +08:00
Joakim Zhang 6de16a7ac0 MLK-19557-1 can: flexcan: fix CAN can't suspend on MX8QM
The transceiver of FLEXCAN is regulated by i2c I/O Expander which
interrupt-parent is intmux, so we must set i2c I/O Expander power domain
as the sub power domain of the intmux.

In principle, the device tree describes the hardware, so the device tree
topology should follow the hardware structure. Here move the definition of
FLEXCAN to more suitable location.

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
2019-02-12 10:34:02 +08:00
Anson Huang 0c7ac2010d MLK-19511-2 ARM64: dts: freescale: imx8qm: move cm4_intmux early_power_on to board dtb
When early_power_on is present in power domain dtb node, it
will be powered on during resume regardless of whether the
related module is enabled or NOT, this will cause cm4_intmux
always power ON after first time resume when cm4_intmux is
NOT enabled.

So move this early_power_on property to board level dtb, ONLY
when cm4_intmux is enabled, then this property is added.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2019-02-12 10:33:48 +08:00
Anson Huang f7cb0aa216 MLK-19080 ARM64: dts: freescale: imx8x: adjust passive trip point setting
Adjust passive trip point temperature to be 20 degree C
below than the critical trip point temperature on i.MX8X
platforms.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
(cherry picked from commit cefa63c1b9)
2019-02-12 10:33:47 +08:00
Liu Ying 199c54f8f5 MLK-19413-2 arm64: fsl-imx8qm.dtsi: Add pixel combiner support
This patch adds pixel combiner nodes support for i.MX8qm DT
file and hooks the pixel combiner nodes to the DPU nodes.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
2019-02-12 10:33:40 +08:00
Peter Chen c301badb90 MLK-19258-2 ARM64: dts: fsl-imx8qm-device.dtsi: change name of device mode
To satisfy grep "usb" for some scripts in all i.mx platforms.

Signed-off-by: Peter Chen <peter.chen@nxp.com>
2019-02-12 10:33:38 +08:00
Sandor Yu e1d66450e3 MLK-19227-1: arm64:dts:imx8qm: Add HDMI/DP HPD interrupter
Add HDMI/DP HPD interrupter.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
(cherry picked from commit 36ae1b30f8a2128128698f6496b28549a90721ee)
2019-02-12 10:33:35 +08:00
Liu Ying 9b02da214c MLK-19114-1 arm64: fsl-imx8qm.dtsi: Add aux prg for dpr1/3_channel2
With the updated i.MX8QM silicon, prg1/10 may be shared bewteen
dpr1/3_channel1 and dpr1/3_channel2 respectively with appropriate
mux configurations in SCU firmware.  If prg1/10 are attached to
dpr1/3_channel2, then they act as the auxiliary prg to process
chroma pixels for SC_R_DC_0/1_BLIT1.  Otherwise, they act as the
primary prg to process RGB pixels for SC_R_DC_0/1_BLIT0.
Let's reflect this update in the device tree file.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit dab218c3c4)
2019-02-12 10:33:34 +08:00
Xiaoning Wang 448c4894f9 MLK-19166-6 arm64: dts: imx8qm: add flexcan support
Add flexcan 1, 2 ,3 support for imx8qm.

Signed-off-by: Xiaoning Wang <xiaoning.wang@nxp.com>
2019-02-12 10:33:33 +08:00
Huang Chaofan 648b068a90 MLK-19226 VPU: Add support for i.MX8QM B0 vpu decoder and encoder
Add support for i.MX8QM B0 vpu decoder and encoder and it is compatiable
with i.MX8QXP B0 VPU.

Signed-off-by: Huang Chaofan <chaofan.huang@nxp.com>
(cherry picked from commit f2d7823da29c55644299eea84a2e866ea188c698)
2019-02-12 10:33:27 +08:00
Daniel Baluta 513befc82c MLK-17481-3: ASoC: fsl: Fix DSP memory mappings
We load DSP firmware from the ARM side at 0x556e8000 but because the
compiler generated memory layout starts at 0x596e8000 we need to do
some fixups.

Thus, each address (in DSP local memory) generated by the compiler
needs to be substracted an offset = 0x596e8000 - 0x556e8000 = 0x4000000.

Because this only happens on QM we will use dts to specify the offset.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 8d4518d2a5d956549e829470af15003d7adff841)
2019-02-12 10:33:17 +08:00
Daniel Baluta 9b5b13686b MLK-17481-2: ARM64: dts: imx8qm: Enable DSP
i.mx8QM B0 comes with a DSP (placed in the VPU unit).

From the ARM core side DSP local memory (Inst/Data) is mapped at
0x55000000-0x55FFFFFF range.

DSP also uses code located in SDRAM mapping starting at 0x92400000.

While at it, move rpmsg_node up in order to have all reserved
areas sorted by address.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
(cherry picked from commit 1eb4b2ee64c6f1fd7a5d6ceb1f019e876dbdfeb9)
2019-02-12 10:33:16 +08:00
Oliver Brown 546972ba88 MLK-19119 arm64: dts: imx8qm: Correct bus clock for HDMI Interrupt Steer
The Local Interrupt Steer Clock Bus Clock (LIS IPG) should be 83.375 MHz.

Signed-off-by: Oliver Brown <oliver.brown@nxp.com>
2019-02-12 10:33:10 +08:00
Franck LENORMAND ccf09512f2 MLK-18082: ARM: dts: imx: Change size of caam-sm to correct size
The resources retrieved by CAAM driver was wrong as the size
was not correct hence future uses might have issues.

before:
[    3.010744] caam 30900000.caam:
sm res: [start: 0000000000100000,
	end: 0000000000107ffe,
	name: /caam-sm@00100000,
	flags:0x200 desc:0x0] -> size: 0x7fff

modif to actual size:
[    3.012495] caam 30900000.caam:
sm res: [start: 0000000000100000,
	end: 0000000000107fff,
	name: /caam-sm@00100000,
	flags:0x200 desc:0x0] -> size: 0x8000

Signed-off-by: Franck LENORMAND <franck.lenormand@nxp.com>
2019-02-12 10:32:50 +08:00
Franck LENORMAND 335ae6c845 MLK-18082: crypto: caam: Minimal fix for QX panic
Signed-off-by: Franck LENORMAND <franck.lenormand@nxp.com>
2019-02-12 10:32:49 +08:00
Franck LENORMAND 6c68d27892 MLK-18082: boot: dtsi: Align DTSI
Signed-off-by: Franck LENORMAND <franck.lenormand@nxp.com>
2019-02-12 10:32:49 +08:00
Richard Zhu 77a4e325fd MLK-18660-3 ARM64: dts: imx8: use lsio mu in rpmsg usage
Replace the M4_MU# by the LSIO MU in the RPMSG usage.
Otherwise, M4 can't enter into LPM if the M4_MU# is
used in RPMSG.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2019-02-12 10:32:30 +08:00
Richard Zhu 21049a5bd8 MLK-18515-1 ARM64: dts: imx: add the reserved region in pcie node
PCIe ep rc validation system is one remote processors
communications.
Add the reserved region in pcie node, and use this region as
ddr test region in pcie ep rc validation system.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2019-02-12 10:32:04 +08:00
Andy Duan e44592d267 MLK-18483-03 ARM64: dts: imx8qm/qxp: add enet sleep mode support
Add enet sleep mode support for imx8qm/qxp platforms.

Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:32:03 +08:00
Liu Ying c533b14923 MLK-18477-3 arm64: fsl-imx8qm.dtsi: Remove dpu assigned-clock* properties
The dpu driver may properly handle display clock parent selection now.
Thus, let's remove the assigned-clocks and assigned-clock-parents
device tree properties from the dpu device tree nodes.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
2019-02-12 10:32:00 +08:00
Liu Ying 7f6550487a MLK-18477-1 arm64: fsl-imx8qm.dtsi: Add bypass and disp_sel clks for dpu
This patch adds bypass clocks and disp_sel clocks in the dpu nodes.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
2019-02-12 10:32:00 +08:00
Shengjiu Wang f77e9c0c5f MLK-18368-9: ARM64: dts: enable hdmi rx audio
enable hdmi rx audio

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
2019-02-12 10:31:56 +08:00
Shenwei Wang f189aa5e04 MLK-18379: ARM64: dts: imx8qm: add FTM PWM support
i.MX8QM has two FTMs. Added the FTM PWM device node
in the device dts.

Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
2019-02-12 10:31:55 +08:00
Sandor Yu c2053b1242 MLK-18365: dts: change hdmi dig_pll clock rate to 675MHz
Change the hdmi dig_pll clock rate to 675MHz,
hdmi core clock is source from dig_pll.
And HDMI CEC required core clock should integer MHz(675/5=135MHz).

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
2019-02-12 10:31:54 +08:00
Haibo Chen dced589f12 MLK-18323-2 ARM64: dts: imx8qm: add ADC support
i.MX8QM contains two adc, and for imx8qm-mek board, only reserve one
pin for adc0 (ADC_IN0).

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
2019-02-12 10:31:47 +08:00
Sandor Yu 6d9046067e MLK-18267-5: dts: Add hdmi rx property to imx8qm dts
Add hdmi rx property to imx8qm dts.
Update hdmi rx power domain.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
2019-02-12 10:31:46 +08:00