linux.git
6 years agoMLK-21054-6 arm64: defconfig: Enable imx8mq
Leonard Crestez [Mon, 4 Mar 2019 21:26:35 +0000 (23:26 +0200)]
MLK-21054-6 arm64: defconfig: Enable imx8mq

Also disable fbdev dcss (does not build and is not needed) and enable
SERIAL_IMX_CONSOLE for debugging on 8m.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21054-5 arm64: Kconfig: Add imx8mq support
Leonard Crestez [Mon, 4 Mar 2019 21:41:47 +0000 (23:41 +0200)]
MLK-21054-5 arm64: Kconfig: Add imx8mq support

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21054-4 arm64: dts: Add imx8mq support
Leonard Crestez [Mon, 4 Mar 2019 21:54:59 +0000 (23:54 +0200)]
MLK-21054-4 arm64: dts: Add imx8mq support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21054-3 pinctrl: Enable imx8mq support
Leonard Crestez [Mon, 4 Mar 2019 22:00:36 +0000 (00:00 +0200)]
MLK-21054-3 pinctrl: Enable imx8mq support

Copy pin header from rel_imx_4.14.98_2.0.0_ga_rc1 and enable
compilation. The C code of the driver was already accepted in v4.19 in
an acceptable form so we use that.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21054-2 clk: Add imx8mq support
Leonard Crestez [Mon, 4 Mar 2019 21:45:47 +0000 (23:45 +0200)]
MLK-21054-2 clk: Add imx8mq support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21054-1 soc: imx: Add gpc-psci
Leonard Crestez [Tue, 5 Mar 2019 13:10:20 +0000 (15:10 +0200)]
MLK-21054-1 soc: imx: Add gpc-psci

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21057 serial: imx: Restore proper init of shadow registers
Leonard Crestez [Tue, 5 Mar 2019 17:24:11 +0000 (19:24 +0200)]
MLK-21057 serial: imx: Restore proper init of shadow registers

Upstream commit 3a0ab62f43de ("serial: imx: implement shadow registers
for UCRx and UFCR") made the imx_uart_readl/writel functions use a
"cache" to avoid reads/writers to hardware for some registers.

Those values need to be initialized once at probe time using real reads
from hardware; using imx_uart_readl for this is obviously non-functional

Fixes: 372312842fe7 ("tty: serial: imx: use imx_uart_writel() and imx_uart_readl()")

This is required for imx8mq to boot and likely fixes other things.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Andy Duan <fugang.duan@nxp.com>
6 years agoMLK-17597-1: i.MX8MQ workaround affecting other SoCs
Nitin Garg [Thu, 15 Feb 2018 21:30:51 +0000 (15:30 -0600)]
MLK-17597-1: i.MX8MQ workaround affecting other SoCs

Fix iMX8MQ workaround to be specific to that
machine.

Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
(cherry picked from commit 5fc3246190546c455f47fa3094ee717bd84a167c)

6 years agoMLK-16804-04 driver: irqchip: Add IPI SW workaround for imx8mq
Bai Ping [Wed, 8 Nov 2017 09:48:47 +0000 (17:48 +0800)]
MLK-16804-04 driver: irqchip: Add IPI SW workaround for imx8mq

On i.MX8MQ, when the CPU core is in power down state,
the IPI can NOT wakeup the core anymore(ERR011171), so using the
external IRQ32 to wakeup the core in power down idle
state successfully.

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
(cherry picked from commit d3244056f749c0ce590a671e215eb39fff336fc2)

6 years agoMLK-16804-02 arm64: configs: enable the system counter timer for nxp imx8
Bai Ping [Mon, 13 Nov 2017 03:23:24 +0000 (11:23 +0800)]
MLK-16804-02 arm64: configs: enable the system counter timer for nxp imx8

Enable the system counter timer by default.

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
(cherry picked from commit 0bd34ee2e4dd4e728d688b6bee1ef2e6e3498b41)

6 years agoMLK-16804-01 driver: clocksource: Add nxp system counter broadcast timer
Bai Ping [Sun, 5 Nov 2017 07:31:09 +0000 (15:31 +0800)]
MLK-16804-01 driver: clocksource: Add nxp system counter broadcast timer

On NXP i.MX8MQ SOC, it has system counter module for ARM
generic timer implementation. In this system counter module
it also has compare frame module to provide timer support.
So we can use it as an alternative clockevent device for
broadcast timer purpose when CPU core enter power down state
with local timer stopped.

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
(cherry picked from commit f69eab1d013361bc7e520541a361752dfc644670)

6 years agoMLK-21052-28 arm64: defconfig: Enable imx8qm support
Leonard Crestez [Mon, 4 Mar 2019 18:25:52 +0000 (20:25 +0200)]
MLK-21052-28 arm64: defconfig: Enable imx8qm support

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-16005-2 arm64: tlb: add the SW workaround for i.MX8QM TKT340553
Jason Liu [Thu, 15 Jun 2017 22:55:33 +0000 (06:55 +0800)]
MLK-16005-2 arm64: tlb: add the SW workaround for i.MX8QM TKT340553

on i.MX8QM TO1.0, there is an issue: the bus width between A53-CCI-A72
is limited to 36bits.TLB maintenance through DVM messages over AR channel,
some bits will be forced(truncated) to zero as the followings:

ASID[15:12] is forced to 0
VA[48:45] is forced to 0
VA[44:41] is forced to 0
VA[39:36] is forced to 0

This issue will result in the TLB aintenance across the clusters not working
as expected due to some VA and ASID bits get truncated and forced to be zero.

The SW workaround is: use the vmalle1is if VA larger than 36bits or
ASID[15:12] is not zero, otherwise, we use original TLB maintenance path.

Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
Reviewed-by: Anson Huang <anson.huang@nxp.com>
(cherry picked from commit c9eb1788558f07dfda0c15b684f79aedb4bfa623)
This is still required for current imx8qm B0 chips.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-27 soc: imx: Add imx8 soc driver
Leonard Crestez [Mon, 4 Mar 2019 18:52:11 +0000 (20:52 +0200)]
MLK-21052-27 soc: imx: Add imx8 soc driver

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-26 arm64: Kconfig: Add ARCH_FSL_IMX8QM
Leonard Crestez [Mon, 4 Mar 2019 18:22:32 +0000 (20:22 +0200)]
MLK-21052-26 arm64: Kconfig: Add ARCH_FSL_IMX8QM

Kconfig snippets based on rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-25 arm64: dts: Add imx8qm support
Leonard Crestez [Mon, 4 Mar 2019 18:11:10 +0000 (20:11 +0200)]
MLK-21052-25 arm64: dts: Add imx8qm support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-24 pinctrl: Add imx8qm support
Leonard Crestez [Mon, 4 Mar 2019 18:21:33 +0000 (20:21 +0200)]
MLK-21052-24 pinctrl: Add imx8qm support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-23 dt-bindings: pads-imx8qm: Add pads missing from SCFW API
Leonard Crestez [Mon, 4 Mar 2019 18:09:29 +0000 (20:09 +0200)]
MLK-21052-23 dt-bindings: pads-imx8qm: Add pads missing from SCFW API

These are used in dts but missing in SCFW headers so copy definitions
from imx_4.14.y

See MLK-21051

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-22 clk: Add imx8qm support
Leonard Crestez [Mon, 4 Mar 2019 18:12:25 +0000 (20:12 +0200)]
MLK-21052-22 clk: Add imx8qm support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-21 arm64: defconfig: Enable ARCH_FSL_IMX8QXP
Leonard Crestez [Mon, 4 Mar 2019 21:06:08 +0000 (23:06 +0200)]
MLK-21052-21 arm64: defconfig: Enable ARCH_FSL_IMX8QXP

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-20 arm64: Kconfig: Add imx8qxp support
Leonard Crestez [Fri, 1 Mar 2019 16:48:47 +0000 (18:48 +0200)]
MLK-21052-20 arm64: Kconfig: Add imx8qxp support

Kconfig snippets based on rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-19 arm64: dts: Add imx8x support
Leonard Crestez [Fri, 1 Mar 2019 14:35:01 +0000 (16:35 +0200)]
MLK-21052-19 arm64: dts: Add imx8x support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-18 pinctrl: Add imx8qxp support
Leonard Crestez [Mon, 4 Mar 2019 08:50:24 +0000 (10:50 +0200)]
MLK-21052-18 pinctrl: Add imx8qxp support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1 and add minor build fix in
pinctrl-scu.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-17 clk: imx8qxp: Add imx8qxp support
Leonard Crestez [Fri, 1 Mar 2019 17:31:31 +0000 (19:31 +0200)]
MLK-21052-17 clk: imx8qxp: Add imx8qxp support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-16 soc: imx8: Add SC-based pm domain support
Leonard Crestez [Fri, 1 Mar 2019 20:20:52 +0000 (22:20 +0200)]
MLK-21052-16 soc: imx8: Add SC-based pm domain support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-15 dt-bindings: soc: Add imx8 PD support
Leonard Crestez [Fri, 1 Mar 2019 17:47:26 +0000 (19:47 +0200)]
MLK-21052-15 dt-bindings: soc: Add imx8 PD support

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-14 dt-bindings: pads-imx8qxp: Add pads missing from SCFW API
Leonard Crestez [Fri, 1 Mar 2019 17:45:00 +0000 (19:45 +0200)]
MLK-21052-14 dt-bindings: pads-imx8qxp: Add pads missing from SCFW API

These are used in dts but missing in SCFW headers so copy definitions
from imx_4.14.y

See MLK-21051

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-13 soc: imx: Add SCFW support
Leonard Crestez [Fri, 1 Mar 2019 19:05:22 +0000 (21:05 +0200)]
MLK-21052-13 soc: imx: Add SCFW support

This is enabled via CONFIG_HAVE_IMX_SC

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-12 soc: imx: Redefine sc_rsrc_t to uint32_t from uint16_t
Leonard Crestez [Tue, 5 Mar 2019 08:06:57 +0000 (10:06 +0200)]
MLK-21052-12 soc: imx: Redefine sc_rsrc_t to uint32_t from uint16_t

This was changed at some point by SC firmware but imx linux releases
didn't pick up the change and some drivers don't even compile with a
16-bit sc_rsrc_t.

Fix by overwriting SC API with imx_4.14 definition.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-11 soc: imx: Add SCFW 1.4 export package
Leonard Crestez [Fri, 1 Mar 2019 15:22:49 +0000 (17:22 +0200)]
MLK-21052-11 soc: imx: Add SCFW 1.4 export package

Uses same layout as imx_4.14.y

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-10 soc: imx: Add fsl_sip headers
Leonard Crestez [Fri, 1 Mar 2019 20:46:49 +0000 (22:46 +0200)]
MLK-21052-10 soc: imx: Add fsl_sip headers

This file contains many defines for SIP calls to imx ATF.

Copy from rel_imx_4.14.98_2.0.0_ga_rc1

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-09 soc: imx: Fix building without HAVE_IMX_SRC
Leonard Crestez [Fri, 1 Mar 2019 19:00:06 +0000 (21:00 +0200)]
MLK-21052-09 soc: imx: Fix building without HAVE_IMX_SRC

If support for imx_src_is_m4_enabled is not compiled then just return
the default value "false".

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-08 clk: imx: Add CLK_SET_PARENT_NOCACHE
Ranjani Vaidyanathan [Wed, 10 Jan 2018 17:51:26 +0000 (11:51 -0600)]
MLK-21052-08 clk: imx: Add CLK_SET_PARENT_NOCACHE

Implement a CLK_SET_PARENT_NOCACHE flag in clk core for imx8 clk
implementation where the parent needs to be restore after PM domain is
up.

Reviewed-by: Anson Huang <anson.huang@nxp.com>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
(cherry picked from commit 87e997822c050fc7dc027a863c92f1f0b4816515)
[Leonard: split clk core part]
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-07 net: fec: Fix fec_devtype[IMX8QM] being imx6ul-fec
Leonard Crestez [Mon, 4 Mar 2019 13:03:43 +0000 (15:03 +0200)]
MLK-21052-07 net: fec: Fix fec_devtype[IMX8QM] being imx6ul-fec

This was incorrectly added to the fec_devtype array only by commit
088c766a5c04 ("MLK-10724-6 net: fec: add i.mx6ul enet support")

The rest of 8qm support was later added by commit d1a46676c8b8
("MLK-16781 net: fec: add eee mode tx lpi support")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-06 usb: dwc3: Fix build failure by restoring err0 label in dwc3_probe
Leonard Crestez [Wed, 27 Feb 2019 20:13:05 +0000 (22:13 +0200)]
MLK-21052-06 usb: dwc3: Fix build failure by restoring err0 label in dwc3_probe

This label was removed by upstream commit 44feb8e6ea2d ("usb: dwc3: use
local copy of resource to fix-up register offset") but we added a new
probe state which needs this error handling label again.

Fixes: fc0d4039c7bf ("MLK-18922-2 usb: dwc3: add OTG capabilities handling")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-05 ath10k: Fix build failure by adding debug_mask arg to ath10k_dbg
Leonard Crestez [Wed, 27 Feb 2019 20:03:03 +0000 (22:03 +0200)]
MLK-21052-05 ath10k: Fix build failure by adding debug_mask arg to ath10k_dbg

Changing ath10k_err to ath10k_dbg requires an additional debug_mask
argument.

Fixes: d239e779c497 ("MLK-17039 qca6174: clear error message during wifi bootup")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-04 net: phy: at803x: Fix build failure by removing gpiod_reset again
Leonard Crestez [Wed, 27 Feb 2019 19:35:38 +0000 (21:35 +0200)]
MLK-21052-04 net: phy: at803x: Fix build failure by removing gpiod_reset again

Upstream removed this in commit bafbdd527d56 ("phylib: Add device reset
GPIO support") but it was added by mistake while backporting in a way
that breaks arm64 build.

Fixes: 0c27b23fd1b1 ("MLK-15309-01 net: phy: at803x: add EEE mode, 1.8V IO, led_act blinding workaround support")

This phy driver is used on imx8 mek boards.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-02 arm64: defconfig: Import imx_4.14.y defconfig
Leonard Crestez [Mon, 4 Mar 2019 20:35:17 +0000 (22:35 +0200)]
MLK-21052-02 arm64: defconfig: Import imx_4.14.y defconfig

Copy from rel_imx_4.14.98_2.0.0_ga_rc1
Cycle through savedefconfig
Disable various drivers which don't compile
Enable ARCH_MXC and FEC

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoMLK-21052-01 arm64: add basic Kconfig symbols for i.MX8
Lucas Stach [Sun, 9 Dec 2018 14:26:06 +0000 (14:26 +0000)]
MLK-21052-01 arm64: add basic Kconfig symbols for i.MX8

Add basic Kconfig symbols to make the MXC architecture available
in the ARM64 world.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit 930507c1830498e00ede089890f188de4a108cc7)
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
6 years agoclk-imx6sl.c: remove duplicate definition of CCDR
Srikanth Krishnakar [Sun, 3 Mar 2019 11:39:46 +0000 (17:09 +0530)]
clk-imx6sl.c: remove duplicate definition of CCDR

This was introduced in upstream stable v4.19.21:
CommitID: ea225de3bd6656a34f76723eb61b32cff6d54021

drivers/clk/imx/clk-imx6sl.c:23:0: warning: "CCDR" redefined
 #define CCDR   0x04

drivers/clk/imx/clk-imx6sl.c:20:0: note: this is the location of the previous definition
 #define CCDR    0x4

Signed-off-by: Srikanth Krishnakar <Srikanth_Krishnakar@mentor.com>
6 years agoARM: dts: imx6sll: add gpio clocks
Anson Huang [Fri, 22 Jun 2018 06:32:34 +0000 (14:32 +0800)]
ARM: dts: imx6sll: add gpio clocks

i.MX6SLL has GPIO clock gates in CCM CCGR, add
clock property for GPIO driver to make sure all
GPIO banks work as expected.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com>
6 years agoARM: dts: imx6sll: add gpio-ranges property
Anson Huang [Fri, 20 Jul 2018 10:06:57 +0000 (18:06 +0800)]
ARM: dts: imx6sll: add gpio-ranges property

Add "gpio-ranges" property to establish connections between GPIOs
and PINs on i.MX6SLL pinctrl driver, for details, please refer to
Documentation/devicetree/bindings/gpio/gpio.txt of "gpio-ranges"
property.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com>
6 years agoRevert "MLK-11495-03 ARM: imx: fix the ARM/IPG ratio when busfreq enabled"
Arulpandiyan Vadivel [Tue, 12 Feb 2019 05:16:01 +0000 (10:46 +0530)]
Revert "MLK-11495-03 ARM: imx: fix the ARM/IPG ratio when busfreq enabled"

This reverts commit 0919938115381fe9a19500af76da640fc18d5851.
Bus frequency fixes workaround changes are already in upstream.

Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoARM: dts: imx7d-sdb: Add missing lcdif display property
Vipul Kumar [Fri, 8 Feb 2019 06:03:17 +0000 (11:33 +0530)]
ARM: dts: imx7d-sdb: Add missing lcdif display property

As per 'commit 318e04958ffb ("MLK-18583: "Revert ARM: dts: imx7d-sdb: Add
DRM panel support"")', added missing lcdif display property.

Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com>
6 years agoMLK-14283: mxsfb: fix clock definitions for lcdif
Robert Chiras [Mon, 27 Feb 2017 13:19:50 +0000 (15:19 +0200)]
MLK-14283: mxsfb: fix clock definitions for lcdif

The mxsfb framebuffer driver uses three clock definitions, but only two
are defined in DTS for imx7s (also used by imx7d); because of this,
driver fails in probe. Since iMX7D uses only one clock, add the third clock
and make two of them dummy.
Also, add additional error messages for better identification of a
failing probe.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com>
6 years agoARM: imx7s: Add CAAM page 0 definition in device tree
Vipul Kumar [Thu, 7 Feb 2019 12:03:29 +0000 (17:33 +0530)]
ARM: imx7s: Add CAAM page 0 definition in device tree

As per 'commit 543560697919 ("MLK-16959: crypto: caam Add CAAM
page 0 definition in device tree")', adding CAAM page 0
definition in imx7s.dtsi

Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com>
6 years agoARM: dts: imx7d: remove the duplicate entry of crypto
Vipul Kumar [Thu, 7 Feb 2019 11:59:21 +0000 (17:29 +0530)]
ARM: dts: imx7d: remove the duplicate entry of crypto

imx7s.dtsi already having crypto entry so removing duplicate
entry of crypto from imx7d.dtsi

Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com>
6 years agoARM: dts: imx7d-sdb: fix endpont node name for mipi_sensor
Vipul Kumar [Thu, 7 Feb 2019 11:54:48 +0000 (17:24 +0530)]
ARM: dts: imx7d-sdb: fix endpont node name for mipi_sensor

This fixes the below compilation warnings:

arch/arm/boot/dts/imx7d-sdb.dtb: Warning (graph_endpoint): /soc/aips-bus@30400000/mipi-csi@30750000/port/endpoint1: graph endpont node name should be 'endpoint'
arch/arm/boot/dts/imx7d-sdb.dtb: Warning (graph_endpoint): /soc/aips-bus@30400000/mipi-csi@30750000/port/endpoint2: graph endpont node name should be 'endpoint'

Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com>
6 years agoARM: dts: imx6dl: fix gpu node address
Vipul Kumar [Thu, 31 Jan 2019 11:49:17 +0000 (17:19 +0530)]
ARM: dts: imx6dl: fix gpu node address

This fixes the below mentioned boot time backtraces:

CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.19.17-gf5efd42140de-dirty #1
Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
[<8010fc44>] (unwind_backtrace) from [<8010bc80>] (show_stack+0x10/0x14)
[<8010bc80>] (show_stack) from [<80a371fc>] (dump_stack+0x78/0x8c)
[<80a371fc>] (dump_stack) from [<8028b3fc>] (sysfs_warn_dup+0x58/0x64)
[<8028b3fc>] (sysfs_warn_dup) from [<8028b500>] (sysfs_create_dir_ns+0xb4/0xc8)
[<8028b500>] (sysfs_create_dir_ns) from [<80a3bfa0>] (kobject_add_internal+0x9c/0x2bc)
[<80a3bfa0>] (kobject_add_internal) from [<80a3c3b4>] (kobject_add+0x58/0xbc)
[<80a3c3b4>] (kobject_add) from [<80525244>] (device_add+0x100/0x604)
[<80525244>] (device_add) from [<807c98ac>] (of_platform_device_create_pdata+0x90/0xb8)
[<807c98ac>] (of_platform_device_create_pdata) from [<807c9ab4>] (of_platform_bus_create+0x198/0x22c)
[<807c9ab4>] (of_platform_bus_create) from [<807c9b00>] (of_platform_bus_create+0x1e4/0x22c)
[<807c9b00>] (of_platform_bus_create) from [<807c9c78>] (of_platform_populate+0x5c/0xac)
[<807c9c78>] (of_platform_populate) from [<80f0bde0>] (imx6q_init_machine+0x94/0x3c0)
[<80f0bde0>] (imx6q_init_machine) from [<80f038a8>] (customize_machine+0x20/0x30)
[<80f038a8>] (customize_machine) from [<801026b4>] (do_one_initcall+0x7c/0x1a8)
[<801026b4>] (do_one_initcall) from [<80f00e28>] (kernel_init_freeable+0x140/0x1d4)
[<80f00e28>] (kernel_init_freeable) from [<80a4a724>] (kernel_init+0x8/0x110)
[<80a4a724>] (kernel_init) from [<801010e8>] (ret_from_fork+0x14/0x2c)
Exception stack(0xd8073fb0 to 0xd8073ff8)
3fa0:                                     00000000 00000000 00000000 00000000
3fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
3fe0: 00000000 00000000 00000000 00000000 00000013 00000000

Signed-off-by: Vipul Kumar <vipul_kumar@mentor.com>
6 years agoARM: dts: imx6sl.dtsi: fix gpu backtracing
Arulpandiyan Vadivel [Thu, 31 Jan 2019 12:24:40 +0000 (17:54 +0530)]
ARM: dts: imx6sl.dtsi: fix gpu backtracing

Fix below backtraces by adding unique name for each gpu nodes.

sysfs: cannot create duplicate filename '/bus/platform/devices/2200000.gpu'
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.19.17-03233-g8d8ad8d43f2c-dirty #3
Hardware name: Freescale i.MX6 SoloLite (Device Tree)
[<80112890>] (unwind_backtrace) from [<8010dc64>] (show_stack+0x10/0x14)
[<8010dc64>] (show_stack) from [<80b97fd4>] (dump_stack+0x88/0x9c)
[<80b97fd4>] (dump_stack) from [<802ecad4>] (sysfs_warn_dup+0x5c/0x68)
[<802ecad4>] (sysfs_warn_dup) from [<802ece60>] (sysfs_do_create_link_sd+0xc8/0xcc)
[<802ece60>] (sysfs_do_create_link_sd) from [<805d5db4>] (bus_add_device+0x78/0x130)
[<805d5db4>] (bus_add_device) from [<805d2a18>] (device_add+0x320/0x638)
[<805d2a18>] (device_add) from [<808b249c>] (of_platform_device_create_pdata+0x90/0xb8)
[<808b249c>] (of_platform_device_create_pdata) from [<808b2680>] (of_platform_bus_create+0x1b0/0x348)
[<808b2680>] (of_platform_bus_create) from [<808b26f0>] (of_platform_bus_create+0x220/0x348)
[<808b26f0>] (of_platform_bus_create) from [<808b29c4>] (of_platform_populate+0x80/0x108)
[<808b29c4>] (of_platform_populate) from [<8110c404>] (imx6sl_init_machine+0x30/0xd0)
[<8110c404>] (imx6sl_init_machine) from [<81103de8>] (customize_machine+0x20/0x30)
[<81103de8>] (customize_machine) from [<80102e9c>] (do_one_initcall+0x54/0x314)
[<80102e9c>] (do_one_initcall) from [<811011d8>] (kernel_init_freeable+0x360/0x3f0)
[<811011d8>] (kernel_init_freeable) from [<80bac9d8>] (kernel_init+0x8/0x114)
[<80bac9d8>] (kernel_init) from [<801010e8>] (ret_from_fork+0x14/0x2c)
Exception stack(0xa80b5fb0 to 0xa80b5ff8)

Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoARM: dts: imx6sl: fix device tree structure for regulator nodes
Arulpandiyan Vadivel [Thu, 31 Jan 2019 12:20:12 +0000 (17:50 +0530)]
ARM: dts: imx6sl: fix device tree structure for regulator nodes

Fix regulator tree structure to avoid address-cell and size-cells conflicts.

Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agothermal: remove unused function imx_get_sensor_data
Arulpandiyan Vadivel [Wed, 30 Jan 2019 08:55:19 +0000 (14:25 +0530)]
thermal: remove unused function imx_get_sensor_data

Remove unused function imx_get_sensor_data() to fix compilation warnings.

Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agodrivers: pinctrl: Fix compilation warnings
Arulpandiyan Vadivel [Wed, 30 Jan 2019 05:04:50 +0000 (10:34 +0530)]
drivers: pinctrl: Fix compilation warnings

Fix compilation warnings by removing unused variables and adding missed
qualifiers.

Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoARM: dts: imx6sll: Fix compilation warnings
Arulpandiyan Vadivel [Tue, 29 Jan 2019 14:10:24 +0000 (19:40 +0530)]
ARM: dts: imx6sll: Fix compilation warnings

Fix below compilation warnings by adding address cells and size cells under
clock node.

Warning (reg_format): /clock-osc-24m:reg: property has invalid length (4 bytes) (#address-cells == 1, #size-cells == 1)
Warning (pci_device_bus_num): Failed prerequisite 'reg_format'
Warning (simple_bus_reg): Failed prerequisite 'reg_format'

Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20216-4: video/fbdev/imx_dcss: remove useless function call
Laurentiu Palcu [Wed, 14 Nov 2018 12:55:55 +0000 (14:55 +0200)]
MLK-20216-4: video/fbdev/imx_dcss: remove useless function call

This fixes Coverity issue since the function does nothing. The function
only returns some values which are never used.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
CC: Fancy Fang <chen.fang@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20216-3: video/fbdev/imx_dcss: remove unnecessary BUG_ONs
Laurentiu Palcu [Wed, 14 Nov 2018 12:50:43 +0000 (14:50 +0200)]
MLK-20216-3: video/fbdev/imx_dcss: remove unnecessary BUG_ONs

This fixes Coverity issue since num_pix_x and num_pix_y are unsigned and
the conditions are never true.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
CC: Fancy Fang <chen.fang@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMGS-3083 [#imx-662] fix kernel build error with kasan config
Xianzhong [Thu, 13 Jul 2017 02:28:14 +0000 (10:28 +0800)]
MGS-3083 [#imx-662] fix kernel build error with kasan config

hal/kernel/gc_hal_kernel_command.c: In function gckCOMMAND_Commit:
hal/kernel/gc_hal_kernel_command.c:2718:1:
error: the frame size of 2288 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]

removed _commandBufferObject instrance, use kmalloc to avoid kasan error.

Date: Jul 13, 2017
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
(cherry picked from commit d8d57e43a24bd02b375d7c6bd633ed236db19337)
(cherry picked from commit 484e3073adf47d27581482f268b01fe5fe219d18)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMA-13450-1 [#ccc] Switch layer memory allocation to virtual pool to improve performance.
Ivan.liu [Thu, 15 Nov 2018 05:58:54 +0000 (13:58 +0800)]
MA-13450-1 [#ccc] Switch layer memory allocation to virtual pool to improve performance.

Add DRM_VIV_GEM_VIRTUAL_POOL flags.
Switch to virtual pool when this flag is set.

Change-Id: I6e1e799cd0b4f81ed1ffbfdabe8f105325fa9644
Signed-off-by: Ivan.liu <xiaowen.liu@nxp.com>
(cherry picked from commit c4bd0fc803409c54d06e3554f4857922d6640925)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20450 Fix Linux NO SMP kernel - GPU
Cedric Neveux [Fri, 23 Nov 2018 10:24:08 +0000 (11:24 +0100)]
MLK-20450 Fix Linux NO SMP kernel - GPU

       - Fix GPU-viv drivers to build without SMP

Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com>
(cherry picked from commit 6558c2881b0cd1441708933fa1ac397f54b5aa70)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMA-13467 [#imx-1237] Fix kernel panic when running deqp module.
Ivan.liu [Tue, 20 Nov 2018 05:20:38 +0000 (13:20 +0800)]
MA-13467 [#imx-1237] Fix kernel panic when running deqp module.

Unable to handle kernel paging request at virtual address 1000100
[<ffff000008274ed8>] prefetch_freepointer.isra.37+0x8/0x14
[<ffff0000087bd3b0>] sync_file_create+0x28/0xc0
[<ffff000008b7c7e4>] gckOS_CreateNativeFence+0x74/0x110
[<ffff000008b89a78>] gckKERNEL_Dispatch+0xa54/0x15b0
[<ffff000008b8a8b8>] gckDEVICE_Dispatch+0x2e4/0x2f8
[<ffff000008b81160>] drv_ioctl+0x110/0x21c
[<ffff0000082b4478>] do_vfs_ioctl+0xb8/0x8b0
[<ffff0000082b4cf4>] SyS_ioctl+0x84/0x98

The reference count should be increased in one spin lock cycle.
Move spin lock out of _QueryIntegerId function.
Move signal reference count to gckOS_CreateNativeFence.

Change-Id: I1bf89b4de6055e5d0009baf7287f600696c4a529
Signed-off-by: Ivan.liu <xiaowen.liu@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMGS-4363 [#imx-1246] fix coverity resource leak issue
Xianzhong [Fri, 16 Nov 2018 18:19:02 +0000 (02:19 +0800)]
MGS-4363 [#imx-1246] fix coverity resource leak issue

CID 3925877: Resource leak (RESOURCE_LEAK)
14. leaked_storage: Variable pages going out of scope leaks the storage it points to.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
(cherry picked from commit a38d1b1ff31ce87a231588de1a2e24a787f87143)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMA-12928-2 [#imx-1199] Use gcdANDROID MARCO to control android build
Richard Liu [Wed, 31 Oct 2018 13:39:14 +0000 (21:39 +0800)]
MA-12928-2 [#imx-1199] Use gcdANDROID MARCO to control android build

Should use the correct build MARCO gcdANDROID to control android build.

Change-Id: I56a745b228a24ba502dc9771596aad78c1d8d808
Signed-off-by: Richard Liu <xuegang.liu@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMGS-4376 [#imx-1238] fix low performance with CMA allocator
Xianzhong [Fri, 9 Nov 2018 18:37:56 +0000 (02:37 +0800)]
MGS-4376 [#imx-1238] fix low performance with CMA allocator

there are lots of PFNs busy message when run GPU tests:
 [  622.370671] alloc_contig_range: [4ea70, 4ea7c) PFNs busy
 [  626.518072] alloc_contig_range: [4ea90, 4ea9c) PFNs busy

this problem is related with CMA migration for fragments,

move CMA allocator after GFP to avoid memory migration,
also fix CMA preempt for contiguous memory request.

can improve CTS and gpubench benchmarks on M850D.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMA-13203-2 [#imx-1237] Fix kernel panic when do video plaback with dual display on...
Ivan.liu [Tue, 13 Nov 2018 01:00:17 +0000 (09:00 +0800)]
MA-13203-2 [#imx-1237] Fix kernel panic when do video plaback with dual display on 8mq.

BUG: scheduling while atomic: swapper/0/0/0x00010002
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.14.62 #1
Call trace:
[<ffff00000808b2e0>] dump_backtrace+0x0/0x414
[<ffff00000808b708>] show_stack+0x14/0x1c
[<ffff000008fbd00c>] dump_stack+0x90/0xb0
[<ffff00000810b8fc>] __schedule_bug+0x50/0x6c
[<ffff000008fd3b18>] __schedule+0x720/0x8a8
[<ffff000008fd3cd8>] schedule+0x38/0x9c
[<ffff000008fd40f0>] schedule_preempt_disabled+0x20/0x38
[<ffff000008fd51d8>] __mutex_lock.isra.9+0x4dc/0x4fc
[<ffff000008fd5208>] __mutex_lock_slowpath+0x10/0x18
[<ffff000008fd5240>] mutex_lock+0x30/0x38
[<ffff000008b79960>] gckOS_DestroySignal+0x30/0xcc
[<ffff000008baa3b8>] viv_fence_release+0x24/0x38
[<ffff0000087babcc>] dma_fence_release+0x38/0xf4
[<ffff0000087bb55c>] dma_fence_array_release+0x78/0xac
[<ffff0000087babcc>] dma_fence_release+0x38/0xf4
[<ffff0000087bb748>] irq_dma_fence_array_work+0x40/0x4c
[<ffff0000081d2878>] irq_work_run_list+0x68/0xa8
[<ffff0000081d28dc>] irq_work_run+0x24/0x40
[<ffff000008092440>] handle_IPI+0x300/0x330
[<ffff00000808197c>] gic_handle_irq+0x8c/0x184

Replace signal mutex lock with spin lock to handle signal in irq.

Change-Id: Id18e68f03bcb96c2aaf3ca8a0055fe6a64e8d10a
Signed-off-by: Ivan.liu <xiaowen.liu@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMGS-4010 [#imx-919] Vulkan test met gpu hang on wayland
Ya Zhou [Tue, 23 Oct 2018 18:08:48 +0000 (02:08 +0800)]
MGS-4010 [#imx-919] Vulkan test met gpu hang on wayland

These case will generate a huge command object, which was divided into 33 Command Buffers to commit.
It will introduce a context switch within a command object. So add a mutex to avoid the Context switch.

Date: 23th Otc,2018
Signed-off-by Ya Zhou <ya.zhou@nxp.com>

Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMGS-4338-5 [#imx-1217] remove duplicate query code for debugfs
Xianzhong [Mon, 22 Oct 2018 17:28:57 +0000 (01:28 +0800)]
MGS-4338-5 [#imx-1217] remove duplicate query code for debugfs

remove the duplicate code with gckGALDEVICE_QueryFrequency,
gckHARDWARE_QueryFrequency has correct fix for power management.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMGS-4338-3 [#imx-1217] fix kernel panic in gpu clock query
Xianzhong [Mon, 22 Oct 2018 17:28:11 +0000 (01:28 +0800)]
MGS-4338-3 [#imx-1217] fix kernel panic in gpu clock query

gpu clock and power can be turned off by global power management,
add global power semaphore protection to avoid clock-off in query.

also query GPU idle status to turn-off gpu clock/power properly.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMGS-4338-2 [#imx-1223] GPU memory optimization for page fault
Xianzhong [Mon, 22 Oct 2018 11:13:15 +0000 (19:13 +0800)]
MGS-4338-2 [#imx-1223] GPU memory optimization for page fault

GPU memory initialization will cause large boot time with 40ms.

If GPU memory is allocated from CMA, memset in cma kernel driver,
It is not necessary to add duplicated memset in GPU kernel driver.

Only GFP allocator need trigger a page fault with a simple write.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMGS-4338-1 [#imx-1217] fix GPU probe delay to query frequency
Xianzhong [Mon, 22 Oct 2018 11:56:47 +0000 (19:56 +0800)]
MGS-4338-1 [#imx-1217] fix GPU probe delay to query frequency

it is not necessary to query frequency when hardware initialize,
there are two cases which really need to query frequency,
1. application query (such as openCL initialization) with ioctl,
2. debugfs with "cat /sys/kernel/debug/gc/clk"

removed the query from driver probe, no impact on real cases.

Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMA-13121-2 [#imx-1221] Fix kernel panic after reduce gpu reserved memory size.
Ivan.liu [Mon, 22 Oct 2018 01:19:06 +0000 (09:19 +0800)]
MA-13121-2 [#imx-1221] Fix kernel panic after reduce gpu reserved memory size.

Fix uint64_t to pointer conversion issue on 32bit platform.

Signed-off-by: Ivan.liu <xiaowen.liu@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMA-13121 [#imx-1221] Fix kernel panic after reduce gpu reserved memory size.
Ivan.liu [Thu, 18 Oct 2018 07:48:22 +0000 (15:48 +0800)]
MA-13121 [#imx-1221] Fix kernel panic after reduce gpu reserved memory size.

gckOS_MapPhysical is only used for contiguous memory to do map.
Actually LockVideoMemory already get the virtual address.
Remove gckOS_MapPhysical to support non contiguous memory.

Signed-off-by: Ivan.liu <xiaowen.liu@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMA-12928 [#imx-1199] Fix kernel panic issue caused by invalid ts_dma_buf pointer.
ivan.liu [Thu, 27 Sep 2018 06:28:27 +0000 (14:28 +0800)]
MA-12928 [#imx-1199] Fix kernel panic issue caused by invalid ts_dma_buf pointer.

There is kernel panic stack which caused by ts_dma_buf pointer.

[  136.041194] [<ffff000008722a8c>] drm_gem_object_init+0x94/0x98
[  136.047028] [<ffff000008748294>] __drm_gem_cma_create+0x40/0xb4
[  136.052950] [<ffff000008748808>] drm_gem_cma_prime_import_sg_table+0x48/0xa8
[  136.060000] [<ffff000008732e0c>] drm_gem_prime_import_dev+0x98/0x134
[  136.066352] [<ffff000008732eb8>] drm_gem_prime_import+0x10/0x18
[  136.072276] [<ffff00000876b144>] dcss_plane_atomic_set_base+0x174/0x2e4
[  136.078889] [<ffff00000876b700>] dcss_plane_atomic_update+0x44c/0x578
[  136.085331] [<ffff0000087134b0>] drm_atomic_helper_commit_planes+0xb4/0x1f0
[  136.092293] [<ffff00000876bea8>] dcss_drm_atomic_commit_tail+0xb4/0xe4
[  136.098820] [<ffff000008716ba8>] commit_tail+0x44/0x84
[  136.103958] [<ffff000008716bf8>] commit_work+0x10/0x18
[  136.109100] [<ffff0000080fa1a4>] process_one_work+0x140/0x3fc
[  136.114846] [<ffff0000080fa598>] worker_thread+0x138/0x3e4
[  136.120334] [<ffff000008101a00>] kthread+0x104/0x130
[  136.125300] [<ffff000008085064>] ret_from_fork+0x10/0x18

ts_dma_buf will become an invalid pointer when user process crashes.
And DRM commit will access invalid ts_dma_buf in kernel thread in async.
Change ts_dma_buf to ts_address to avoid invalid pointer issue.

Signed-off-by: ivan.liu <xiaowen.liu@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20207-3 input: synaptics_dsx_i2c: fix coverity resource leak issue.
Haibo Chen [Tue, 20 Nov 2018 06:44:22 +0000 (14:44 +0800)]
MLK-20207-3 input: synaptics_dsx_i2c: fix coverity resource leak issue.

CID 3869707: Resource leak (RESOURCE_LEAK)
13. leaked_storage: Variable fhandler going out of scope leaks
the storage it points to

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
(cherry picked from commit ddf57217892e9fefc4f04a09988f4b0ed3bf0f07)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20207-2: input: synaptics_dsx_i2c: fix coverity Unsigned compared against 0 issue.
Haibo Chen [Mon, 19 Nov 2018 09:34:44 +0000 (17:34 +0800)]
MLK-20207-2: input: synaptics_dsx_i2c: fix coverity Unsigned compared against 0 issue.

CID 3869705: Unsigned compared against 0 (NO_EFFECT)
unsigned_compare: This greater-than-or-equal-to-zero comparison of an
unsigned value is always true. attr_count >= 0.

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
(cherry picked from commit 7380600ba0d0763b6081c07f5ddcb018a54314ca)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20207-1: input: synaptics_dsx_i2c: fix coverity wrong sizeof argument issue
Haibo Chen [Mon, 19 Nov 2018 09:26:03 +0000 (17:26 +0800)]
MLK-20207-1: input: synaptics_dsx_i2c: fix coverity wrong sizeof argument issue

CID 3869704: Wrong sizeof argument (SIZEOF_MISMATCH)
suspicious_sizeof: Passing argument f1a->button_control.txrx_map of
type unsigned char * and argument 8 /* sizeof (f1a->button_control.txrx_map) */
to function synaptics_rmi4_i2c_read is suspicious.

Passing argument should be sizeof(unsigned char) rather than
sizeof(unsigned char *).

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
(cherry picked from commit 4583a0bc1ff6684e1d850eb50308ad8ae2fea627)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20203-2 cpufreq: imx7ulp: fix coverity issue
Anson Huang [Sat, 3 Nov 2018 04:16:08 +0000 (12:16 +0800)]
MLK-20203-2 cpufreq: imx7ulp: fix coverity issue

This patch fixes coverity issue of "divide by 0".

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20203-1 cpufreq: imx6q: fix coverity issue
Anson Huang [Sat, 3 Nov 2018 04:15:12 +0000 (12:15 +0800)]
MLK-20203-1 cpufreq: imx6q: fix coverity issue

This patch fixes coverity issue of "unchecked return value".

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20440 dts: ecspi: Add ecspi and its slave dts files for imx6ul
Clark Wang [Wed, 21 Nov 2018 11:13:47 +0000 (19:13 +0800)]
MLK-20440 dts: ecspi: Add ecspi and its slave dts files for imx6ul

For ECSPI test, add these two dts files.
imx6ul-14x14-evk-ecspi.dts: enable ecspi4 function. Because ethernet2
uses the same pins with ecspi4, so disable fec1/fec2.
imx6ul-14x14-evk-ecspi-slave.dts: Add "spi-slave" attribute to enable
slave mode.

Wire Connection:
J1704:
3 - SCS
4 - MOSI
5 - MISO
6 - SCK
7 - GND

Modify "Makefile" to build these two dts files.

Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20158-2 ARM: dts: imx7ulp-evk: add pinctrl for "sleep" state
Peter Chen [Thu, 1 Nov 2018 07:21:29 +0000 (15:21 +0800)]
MLK-20158-2 ARM: dts: imx7ulp-evk: add pinctrl for "sleep" state

After commit 2911e974c845 ("MLK-19098 ARM: dts: imx7ulp-evk: use OTG
ID function instead of GPIO") , the ID pinctrl is set by chipidea
driver, so we need to restore its setting after system resume
due to pinctrl setting is lost at VLLS state.

Signed-off-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20104 driver: cpufreq: remove unnecessary mutex & rcu lock
Bai Ping [Fri, 26 Oct 2018 09:01:38 +0000 (17:01 +0800)]
MLK-20104 driver: cpufreq: remove unnecessary mutex & rcu lock

Remove the unnecessary mutex and rcu lock from i.MX7ULP
cpufreq driver.

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
[Arul: Removed only imx7 changes]
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20450 Fix Linux NO SMP kernel with OPTEE
Cedric Neveux [Thu, 22 Nov 2018 14:27:09 +0000 (15:27 +0100)]
MLK-20450 Fix Linux NO SMP kernel with OPTEE

   - Fix busfreq optee mode to not install the linux assembly function
   used to synchronize all CPU in case of SMP mode
   - Fix l2cache OPTEE/Linux share mutex operations

Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com>
(cherry picked from commit 68f47bb3328e56c63d647f855fc654f4736658ce)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20328-2: ARM: dts: imx7ulp: adjust the expected format
Viorel Suman [Wed, 21 Nov 2018 14:25:44 +0000 (16:25 +0200)]
MLK-20328-2: ARM: dts: imx7ulp: adjust the expected format

Default value must be prefixed by "0".

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
(cherry picked from commit 4ce702331a6c7b5a84fe4fdc210b62147e04fa84)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20357-2: ARM: dts: add audio routing for wm8960
Shengjiu Wang [Wed, 14 Nov 2018 06:55:37 +0000 (14:55 +0800)]
MLK-20357-2: ARM: dts: add audio routing for wm8960

add audio routing for wm8960 in dts.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20259 ARM: imx: add soc revision check for i.MX7ULP
Anson Huang [Wed, 7 Nov 2018 06:14:11 +0000 (14:14 +0800)]
MLK-20259 ARM: imx: add soc revision check for i.MX7ULP

i.MX7ULP SoC revision is available from B0, the SIM_JTAG_ID
register bit[31:28] indicates SoC revision as below:

4b'0001        B0
4b'0010        B1

This register is NOT available on A0, tested on B1 chip
as below:

root@imx7ulpevk:~# cat /sys/devices/soc0/revision
2.1

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Tested-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20203-3 ARM: imx: fix coverity issue
Anson Huang [Sat, 3 Nov 2018 04:16:51 +0000 (12:16 +0800)]
MLK-20203-3 ARM: imx: fix coverity issue

This patch fixes coverity issue of "divide by 0".

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20023 Move Busfreq support to OPTEE OS
Cedric Neveux [Thu, 18 Oct 2018 11:48:16 +0000 (13:48 +0200)]
MLK-20023 Move Busfreq support to OPTEE OS

  - When OPTEE OS is present and if it support the busfreq
    for the running the i.MX, the busfreq is executed in
    the OPTEE OS by calling a specific SMC function
  - Only a WFE function is copied into the OCRAM to
    synchronize all Cores in multi-core devices
  - OPTEE OS add a DT property 'busfreq=1' in the 'firmware/optee'
    node to indicate the busfreq support

Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-19966 clk: imx: Skip disabling uart clocks if m4 is active
Abel Vesa [Mon, 29 Oct 2018 11:50:18 +0000 (13:50 +0200)]
MLK-19966 clk: imx: Skip disabling uart clocks if m4 is active

No way of knowing when any of the uart clocks is currently
in use by m4 so just skip the gating for all of them.

Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-13869 Revert "ARM: imx: add sleep for pllv3 relock"
Irina Tirdea [Tue, 14 Feb 2017 08:37:56 +0000 (10:37 +0200)]
MLK-13869 Revert "ARM: imx: add sleep for pllv3 relock"

This reverts commit 322503a15740bd9383bb4ed452e5dd5a40598170.
The driver for clk-pllv3 has moved from arch/arm/mach-imx/clk-pllv3.c
to drivers/clk/imx/clk-pllv3.c since the orginal change was made,
so the revert is done to the new file instead.

Signed-off-by: Irina Tirdea <irina.tirdea@nxp.com>
(cherry picked from commit dd50ef8f53be467f59947e4f2b3d03c093ec9783)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoclk: imx: Rename clk-composite clock to clk-composite-7ulp
Abel Vesa [Tue, 2 Oct 2018 13:42:49 +0000 (16:42 +0300)]
clk: imx: Rename clk-composite clock to clk-composite-7ulp

The imx/clk-composite is only used by 7ulp. It makes more sense
to mention that in the name of the file and the register function
since later imx-composite clocks may be added.

Signed-off-by: Abel Vesa <abel.vesa@nxp.com>
Reviewed-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20166 can: flexcan: fix CAN can't wakeup system during suspend
Joakim Zhang [Fri, 9 Nov 2018 04:58:48 +0000 (12:58 +0800)]
MLK-20166 can: flexcan: fix CAN can't wakeup system during suspend

The system can be wakeuped only when system is totally suspend, when the
wakeup event comes during suspend will cause the system hang. For the
reason that CAN will not call flexcan_noirq_resume() callback if the wakeup
event comes before noirq suspend stage.

The way to fix the issue is that assure the system to call
flexcan_noirq_suspend() during suspend and then call
flexcan_noirq_resume() during resume.

Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20351-2 Doc: fsl-imx-cspi: Add a description of dmas cells
Clark Wang [Mon, 19 Nov 2018 02:30:48 +0000 (10:30 +0800)]
MLK-20351-2 Doc: fsl-imx-cspi: Add a description of dmas cells

The description of dmas pointed to the common description of dma,
and the introduction of dmas was unclear. Add a doc link to sdma
introduction.

Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20446 rpmsg: imx: only use the timeout by the first notify
Richard Zhu [Thu, 22 Nov 2018 06:11:05 +0000 (14:11 +0800)]
MLK-20446 rpmsg: imx: only use the timeout by the first notify

To make sure that the message wound't be discarded when
M4 is running normally or in the suspend mode. Only use
the timeout mechanism by the first notify when the vdev
is registered.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
(cherry picked from commit aaf42a6c2c224aa9bd88b13abcf8f848f2eab073)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20306 gpio: mxc: Skip GPIO_IMR restore in noirq resume
Bai Ping [Fri, 9 Nov 2018 09:11:52 +0000 (17:11 +0800)]
MLK-20306 gpio: mxc: Skip GPIO_IMR restore in noirq resume

During the time window of noirq suspend and noirq resume, if a GPIO
pin is enabled as system wakeup source, the corresponding GPIO line's
IRQ will be unmasked, and GPIO bank will NOT lost power, when GPIO irq
arrives, generic irq handler will mask it until GPIO driver is ready
to handle it, but in GPIO noirq resume callback, current
implementation will restore the IMR register using the value saved in
previous noirq suspend callback which is unmasked, so this GPIO line
with IRQ pending will be unmasked again after GPIO IMR regitster is
restored, ARM will be triggered to handle this IRQ again, because of
the change of commit bf22ff45bed6 ("genirq: Avoid unnecessary low
level irq function calls"), the mask_irq function will check the
status of irq_data to decide whether to mask the irq, in this
scenario, since the GPIO IRQ is being masked before GPIO noirq resume,
IRQD_IRQ_MASKED flag is set, so the second time GPIO IRQ triggered by
restoring GPIO IMR register, the irq_mask callback will be skipped and
cause ARM busy handling the GPIO IRQ come all the way and no response to
user anymore.

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
(cherry picked from commit c03d9ec1f861ff7cd04637ef01aa7e14388277b6)
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20216-6: video/fbdev/mxc_dcic: fix return value
Laurentiu Palcu [Wed, 14 Nov 2018 13:06:12 +0000 (15:06 +0200)]
MLK-20216-6: video/fbdev/mxc_dcic: fix return value

This fixes Coverity issue where an unsigned variable is tested for
less-than-zero value.

Make val a signed integer instead.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
CC: Sandor Yu <sandor.yu@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20216-5: video/fbdev/mxc_dcic: remove needless comparison
Laurentiu Palcu [Wed, 14 Nov 2018 13:01:30 +0000 (15:01 +0200)]
MLK-20216-5: video/fbdev/mxc_dcic: remove needless comparison

This fixes less-then-zero comparison Coverity issue. roi_param->roi_n is
unsigned, hence the comparison is not needed.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
CC: Sandor Yu <sandor.yu@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20052 L2 Cache TEE/Linux shared mutex
Cedric Neveux [Tue, 23 Oct 2018 11:52:54 +0000 (13:52 +0200)]
MLK-20052 L2 Cache TEE/Linux shared mutex

   Modification of the L2 Cache operations to use
   a TEE/Linux Shared mutex

Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20205-3: regulator: core: fix modulo by zero
Robin Gong [Wed, 7 Nov 2018 15:58:45 +0000 (23:58 +0800)]
MLK-20205-3: regulator: core: fix modulo by zero

Fix 'Division or modulo by zero' coverity issue(CID-4159438).
In fact, no need to call set_ramp_delay() in case of ramp_disable
is true, hence, ramp_delay never be 0 while set_ramp_delay() called.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20205-1: dmaengine: fsl-edma-v3: fix NULL pointer dereference
Robin Gong [Wed, 7 Nov 2018 14:19:07 +0000 (22:19 +0800)]
MLK-20205-1: dmaengine: fsl-edma-v3: fix NULL pointer dereference

Fix 'null pointer dereferences issue' reported by coverity(CID-1477441).

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20190-03 brcmfmac: check thre return value of .brcmf_fil_iovar_data_get()
Andy Duan [Wed, 7 Nov 2018 07:06:03 +0000 (15:06 +0800)]
MLK-20190-03 brcmfmac: check thre return value of .brcmf_fil_iovar_data_get()

Check the return value of .brcmf_fil_iovar_data_get() to fix
the coverity issue of "error handling issue".

Reviewed-by: Haibo Chen <haibo.chen@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>
6 years agoMLK-20190-02 brcmfmac: init the wlfc_mode variable before it is used
Andy Duan [Wed, 7 Nov 2018 06:51:52 +0000 (14:51 +0800)]
MLK-20190-02 brcmfmac: init the wlfc_mode variable before it is used

Init the wlfc_mode variable before it is used to fix
coverity issue of "Uninitialized variable".

Reviewed-by: Haibo Chen <haibo.chen@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Signed-off-by: Arulpandiyan Vadivel <arulpandiyan_vadivel@mentor.com>