Commit Graph

721602 Commits

Author SHA1 Message Date
fd855d4e52 MLK-18535-13 dt-bindings: display: bridge: add sec-dsim bindings
Add the device-tree bindings for the display bridge
Samsung MIPI DSIM on i.MX platforms.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:06 +08:00
b5bbc0b7aa MLK-18535-12 dt-bindings: display: imx: add eLCDIF device node
Add the device-tree bindings for the display node eLCDIF
on i.MX platforms.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:06 +08:00
22d779fed8 MLK-18535-11 ARM64: dts: imx8mm-evk: enable 'lcdif', 'mipi_dsi' and 'adv7535'
Enable the whole display pipeline 'LCDIF --> MIPI DSI --> ADV7535'
on IMX8MM EVK board.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:06 +08:00
0ad9839e59 MLK-18535-10 drm/imx: lcdif: limit the maximum resolution to '1920x1080'
For now, the higher resolution than '1920x1080' is not supported
yet. So limit the 'max_width' and 'max_height' of mode_config
to be 1920 and 1080.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:06 +08:00
3a1bb280c4 MLK-18535-9 ARM64: defconfig: enable 'IMX_SEC_DSIM' config
Enable the 'IMX_SEC_DSIM' config by default in ARM64
defconfig.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:06 +08:00
941ef8c5fc MLK-18535-8 drm/imx: sec_mipi_dsim-imx: add DSIM host driver
The Samsung DSIM host driver mainly focuses on the config
related with soc platforms. And the controller itself config
has been moved to the sec-dsim bridge driver.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:06 +08:00
beb9d163c7 MLK-18535-7 drm/bridge: sec-dsim: add bridge driver support
This is the abstracted bridge driver for Samsung MIPI DSIM
controller. This driver only foucses on the DSIM controller
itself configurations and never care about any config about
the platforms. So it can be shared by different platforms
without any modifications.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:06 +08:00
dae914b351 MLK-18535-6 drm/imx: core: add LCDIF support
Allows the LCDIF to be one of the supported client
components. And set the 'legacyfb_depth' of LCDIF
to be 32.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:06 +08:00
a104e928da MLK-18535-5 drm/imx: add LCDIF DRM/KMS driver
This is a new DRM/KMS driver for LCDIF which conforms
to the IMX DRM Core framework. It provides support for
CRTCs, Planes and mode config of KMS.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:05 +08:00
09f1d56396 MLK-18535-4 ARM64: defconfig: enable 'IMX_LCDIF_CORE' config
Enable the 'IMX_LCDIF_CORE' config by default in ARM64
defconfig.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:05 +08:00
ca168846dc MLK-18535-3 gpu: imx: add LCDIF core driver
The LCDIF core driver is responsible to provide controller
registers configuration and create the platform devices for
the child port nodes. And the platform devices later will
attach to the corresponding DRM/KMS drivers via name match.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:05 +08:00
4635ce0a82 MLK-18535-2 clk: imx8mm: set video_pll1 rate to 594MHz
The 'video_pll1' PLL will be used as LCDIF pixel clock
source, and also used as MIPI DSI PHY reference clock
source. And 594MHz clock rate is better to derive the
27MHz PHY reference clock and the LCDIF pixel clocks
requied for most popular display modes.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:05 +08:00
538a1400e1 MLK-18535-1 ARM64: dts: imx8mm: re-organize display nodes for DRM/KMS
The display pipeline provided by IMX8MM soc is: LCDIF --> MIPI DSI.
This patch re-organize the LCDIF and MIPI DSI device nodes to be
suitable for DRM/KMS drivers. Besides, a new device node 'dispmix_gpr'
which is required by LCDIF and MIPI DSI is added.

Signed-off-by: Fancy Fang <chen.fang@nxp.com>
2019-02-12 10:32:05 +08:00
b9876e09ab MLK-18545: [Linux_8QXP_MEK]Video:Video disappeared after long time loop
play the test clip, 100%

fix it by comment out resolution change event in vpu decoder driver

Signed-off-by: Huang Chaofan <chaofan.huang@nxp.com>
2019-02-12 10:32:05 +08:00
cd5ba6cd88 MLK-18559 PCI: imx: fix crash when request reserved region
Fix the crash when pcie request the reserved memory region
after the -EPROBE_DEFER in the probe.
The pointer of the resource parameter would be invalided
in the second probe. Use one structure varible to replace
it.
Put node after done with it, after call of_parse_phandle.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2019-02-12 10:32:05 +08:00
8ccea6f686 MLK-18515-2 PCI: imx: get reserved region for ep rc ddr test region
PCIe ep rc validation is one remote processors communications.
Remove the hard-coded ep rc ddr test region on imx8 platforms.
Get the reserved region for ep rc ddr test region.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2019-02-12 10:32:05 +08:00
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
023b6deb97 MLK-17880 PCI: imx: fix the imx6q pcie resume hang
The perst signal shouldn't be asserted during imx6q/dl
pcie suspend.
Otherwise, the link would be down during resume,
and system would be hang.
Fix it by one return in imx6q switch case.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2019-02-12 10:32:04 +08:00
087f213439 MLK-18089: Add support for DXP/DX
Add dtsi and board configurations for DXP/DX 8QXP derivatives.
Separate out the arm2 board individual details for transparency
of board and device specifics.

Signed-off-by: Teo Hall <teo.hall@nxp.com>
2019-02-12 10:32:04 +08:00
e3d4e9b706 MLK-18090: Add support for DM/QP
Add dtsi and ARM2 board configurations for QP/DM 8QM derivatives.
Separate out ARM2 specific details from device details.

Signed-off-by: Teo Hall <teo.hall@nxp.com>
2019-02-12 10:32:04 +08:00
3f5c474563 MLK-18516: ARM64: dts: imx8mm: add audio tdm dts
Add a distinct DTS in order to showcase AK4458/AK5558 TDM mode.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:32:04 +08:00
a774eb41dd MLK-18534-2: ARM64: dts: mx8mm-evk: ak4497: use 1:1 bclk:mclk ratio for DSD512
Since IP version 3.01 (845s) SAI has support for 1:1 bclk:mclk ratio.
Given this the specific DSD512 pinctrl option can be removed and SAI mclk
frequency decreased.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:32:04 +08:00
9ac1f13585 MLK-18534-1: ASoC: fsl: sai: introduce 1:1 bclk:mclk ratio support
Since IP version 3.01 (845s) SAI has support for 1:1
bclk:mclk ratio.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:32:04 +08:00
19c3cd19b3 MLK-18530: ASoC: wm8524: support S32_LE
support S32_LE

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
2019-02-12 10:32:03 +08:00
ca98e77d34 MLK-18533: clk: imx8mm: reparent audio_ahb_src clk
Reparent audio_ahb_src clock as it is on imx8mq.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:32:03 +08:00
a6b0d37061 MLK-18532: [i.MX8MM/Hantro]: h1 encoder doesn't work when running with decoder simultaneously
Remove legacy function 'hantrodec_choose_core()'

Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
2019-02-12 10:32:03 +08:00
7a9ffad308 MLK-17305 [MX8QXP-MEK] VPU: "couldn't set vpu_dec_clk clk rate to
600000000 (-22)" and "clk: couldn't set vpu_enc_clk clk rate to
600000000 (-22), current rate: 0" when boot up. 100%

vpu clock is not settable, remove the assigned-clock-rates from the dts

Signed-off-by: Huang Chaofan <chaofan.huang@nxp.com>
2019-02-12 10:32:03 +08:00
a2a5bd7bf2 MLK-18483-04 net: fec: close the mu ipc channel when it is not used
Although sc_ipc_close() do nothing, it is better to close the mu ipc
channel when it is not used.

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:32:03 +08:00
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
379ede4dfd MLK-18483-02 net: fec: add sleep mode support for i.MX8QM/QXP
Add sleep mode support for i.MX8QM/QXP platforms.

Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:32:02 +08:00
89f306aacf MLK-18483-01 soc: imx8: sc: types: add ipg stop misc controls for CONN ENET
- Sync with scu firmware commit 576011819ce3 (SCF-81: Added API to
control MIPI CSI calibration.) and commit 095a0d7dbc0b (SCF-85: Add
direct control of ENET IPG stop control)
- Add ipg stop misc controls for CONN ENET.

Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:32:02 +08:00
315d784188 MLK-18489: arm64: config: Keep defconfig clean
When adding a new config option one should always run:

$ make savedefconfig

Reported-by: Jana Build <jana.build@nxp.com>
Tested-by:  Raluca Oncioiu <raluca.oncioiu@nxp.com>
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2019-02-12 10:32:02 +08:00
a57fb9bf98 MLK-18504: ARM64: dts: Support ASRC P2P with ESAI device
Support ASRC P2P with ESAI to show the multichannel capibility.
And make this setting align with other platform like imx6

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:32:02 +08:00
9a35b086ac MLK-18495 VPU: Add the event VID_API_EVENT_FIRMWARE_XCPT and modify interlaced flag
Add the event VID_API_EVENT_FIRMWARE_XCPT and modify interlaced flag for
vpu decoder

Signed-off-by: Huang Chaofan <chaofan.huang@nxp.com>
2019-02-12 10:32:02 +08:00
fb1320ca1a MLK-18538 ARM: dts: imx6qdl-sabresd: Remove ov5640 added by upstream
In imx6qdl-sabresd.dtsi imx_4.9.y defines ov564x_mipi@3c with
compatible="ovti,ov564x_mipi". Upstream added camera@3c with
compatible="ovti,ov5640" on the same bus and this results in i2c errors
on boot:

i2c i2c-1: Failed to register i2c client ov564x_mipi at 0x3c (-16)
i2c i2c-1: of_i2c: Failure registering /soc/aips-bus@02100000/i2c@021a4000/ov564x_mipi@3c
i2c i2c-1: Failed to create I2C device for /soc/aips-bus@02100000/i2c@021a4000/ov564x_mipi@3c

Fix by removing upstream definition.

The other camera camera added by upstream, &ov5642: camera@3c on &i2c0
was already removed/overwritten with our definition during porting.

Fixes: 2b48156760e5 ("MLK-11508-5: dts: Add imx v4l2 capture driver")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
2019-02-12 10:32:02 +08:00
e3c1142699 MA-11995-2 Enable CMA_HEAP and SYSTEM_HEAP for ION on linux-4.14.
Add CONFIG_ION, CONFIG_ION_CMA_HEAP and CONFIG_ION_SYSTEM_HEAP.

Change-Id: I67825353e44fe33d79dfa4c6f3be5b92aea8f9bc
Signed-off-by: ivan.liu <xiaowen.liu@nxp.com>
2019-02-12 10:32:02 +08:00
429a142098 MA-11994 Add get phys address ioctl to dma-buf.
Add structure dma_buf_phys to store physical address.
Add DMA_BUF_IOCTL_PHYS to export physical address.

Change-Id: Ib2f24b33462d603f2cbeef975689aaf82447d088
Signed-off-by: ivan.liu <xiaowen.liu@nxp.com>
2019-02-12 10:32:02 +08:00
893b09f94b MLK-18537 ARM: dts: imx6qdl-sabreauto: Move sensors under i2c mux
Suspend fails on sabreauto because the i2c mux is set to the default
state before suspending sensors:

dpm_run_callback(): isl29023_suspend+0x0/0x3c returns -11
PM: Device 2-0044 failed to suspend: error -11
PM: Some devices failed to suspend, or early wake event detected

Fix this by moving sensons to i2cmux/i2c@1 just like the rest of I2C3
devices. This is a porting issue, in imx_4.9.y there is no dynamic
muxing for i2c3.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:32:02 +08:00
78c167aae3 MLK-18498-2 ARM: dts: imx6qdl-sabreauto: Fix pin hog overlap
Upstream added new separate pinctrl groups:
* pinctrl_i2c3mux for MX6QDL_PAD_EIM_A24__GPIO5_IO04
* pinctrl_max7310 for MX6QDL_PAD_SD2_DAT0__GPIO1_IO15

During imx_4.9.y porting these were both added to pinctrl_hog instead
and this now causes a pin conflict. Drop this part and keep them in
per-device pin groups.

Fixes: 2b48156760e5 ("MLK-11508-5: dts: Add imx v4l2 capture driver")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:32:01 +08:00
5365ff2e02 MLK-18498-1 ARM: imx_v7_defconfig: CONFIG_I2C_MUX_GPIO=y
Upstream added i2c-mux-gpio to imx6qdl-sabreauto and CONFIG_I2C_MUX_GPIO
to imx_v6_v7_defconfig. We need to copy this to imx_v7_defconfig or
several devices won't probe.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:32:01 +08:00
d6807ed26c MLK-18485 emvsim: enable CWT for ATR
Enable CWT for ATR, and switch to RX_DATA_IM to detect receiving data
in fifo.

Signed-off-by: Gao Pan <pandy.gao@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:32:01 +08:00
be07cfbd1c MLK-18440: ISI: fix the first frame black issue
Camera sensor need to be enabled before ISI when
resolution of caputure image is less than 640*480,
but hdmi need to be enabled after ISI, so add this
patch to compatible these two cases

Signed-off-by: Guoniu.Zhou <guoniu.zhou@nxp.com>
(cherry picked from commit c8d17ffcb0)
2019-02-12 10:32:01 +08:00
72a36d6517 MLK-17885-2: camera: add nv12 output format support
Add NV12 output format support. Because nv12 is multi
planes format, so driver need add device for every planes

Reviewed-by: Sandor.yu <sandor.yu@nxp.com>
Signed-off-by: Guoniu.Zhou <guoniu.zhou@nxp.com>
2019-02-12 10:32:01 +08:00
36a74fff94 MLK-18481: encoder multi-instance, wait_timeout, suspend & resume
fix encoder multi-instance bug
modify wait to wait_timeout
complete encoder suspend and resume

Signed-off-by: GuoRui <rui.guo_4@nxp.com>
2019-02-12 10:32:01 +08:00
4be2c7a966 MLK-18025: ARM: imx: Fix suspend initialization for Optee on imx7ulp
Before the kernel starts, optee uses M4 SRAM to allocate its
suspend function. When imx7ulp_pm_map_io() executes, the psci
driver and psci_ops.cpu_suspend are not initialized yet. This
causes the memset to always wipe the optee suspend code in the
M4 SRAM.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
2019-02-12 10:32:00 +08:00
7e37ee6b35 MGS-3947 gpu: imx: dpu-blit: fix wayland vg3d stuck on 8qxp
gpu tiling is not enabled in vg3d, need bypass dprc/prg process,
dprc stuck since no pipeline sync when switch linear to tile.
add force sync for command sequence pipeline when switch to tile,
remove the frequent dprc config for the contigous linear blit.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
2019-02-12 10:32:00 +08:00
77236513d8 MLK-18477-4 arm64: dts: fsl-imx8qm-mek-hdmi: Don't assign dpu disp clk parent
The dpu driver may properly handle display clock parent selection now.
Thus, let's remove the assigned-clock and assigned-clock-parent
device tree properties from the dpu device tree node.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
2019-02-12 10:32:00 +08:00
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
79191710d0 MLK-18477-2 gpu: imx: dpu: framegen: Explicitly use bypass clk for TMDS encoder
The framegen driver should get PLL clock, bypass clock and display
selection/mux clock via device tree if available.  It may use bypass
clock when a TMDS encoder is connected with the framegen, otherwise,
PLL clock is used.  This way, the assigned-clocks and assigned-clock-parents
device tree properties can be removed from the dpu device tree node.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
2019-02-12 10:32:00 +08:00
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