1
0
Fork 0
Commit Graph

142688 Commits (d71dca8f5dff2e0c657137fb4dee0a4accd78a98)

Author SHA1 Message Date
Viorel Suman 83410d0cc3 MLK-18682-5: arm64: dts: imx8mm-evk: define SAI1/5 pll8k and pll11k clks
Specify SAI1/5 pll8k and pll11k clks in order to enable dynamic
reparenting of SAI master clock to the appropriate pll as function of
audio stream rate.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2018-10-29 11:10:38 +08:00
Viorel Suman 46be316ab7 MLK-18682-4: arm64: dts: imx8mq-evk: define SAI1/5 pll8k and pll11k clks
Specify SAI1/5 pll8k and pll11k clks in order to enable dynamic
reparenting of SAI master clock to the appropriate pll as function of
audio stream rate.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2018-10-29 11:10:38 +08:00
Nitin Garg 3437c6afdf MLK-18090: 8QM: Revert: Fix the rpmsg addresses
This reverts commit e42b28ed21b
The address change isn't needed for iMX8QM arm2
boards anymore.
2018-10-29 11:10:38 +08:00
Han Xu 4041ef942c MLK-18669-1: arm64: dts: change the dummy cycle number
change the dummy cycle number for quad ddr read

Signed-off-by: Han Xu <han.xu@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 308a9a2c6c MLK-18683-3 ARM: dts: imx6: Add chosen/stdout-path
This makes it possible to enable earlycon for debugging by just passing
an empty "earlycon" argument on the kernel command-line.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Acked-by: Ye Li <ye.li@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 0357bbd977 MLK-18683-2 arm64: dts: imx8mm-ddr4-val: Fix misspelling stdout-path
The property is called "stdout-path" not "stdout-patch"

Fixes: 3af3a86574d1 ("MLK-18645 arm64: dts: imx8mm: Add DTS for iMX8MM DDR4 validation board")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 94bd986daa MLK-18683-1 arm64: dts: imx8mm-evk: Fix misspelling stdout-path
The property is called "stdout-path" not "stdout-patch"

Fixes: c5454672bc06 ("MLK-18205-3 ARM64: dts: freescale: add i.MX8MM dtb")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang cce29924d1 MLK-18687-1 ARM64: dts: freescale: imx8dx: use new method to disable DRC thermal sensor
The imx_sc_thermal driver has strict thermal zone and sensor
id relationship with device tree settings, simple removing
DRC thermal zone node will introduce incorrect sensor id
settings for other thermal zones, so adding status for driver
to ignore those thermal zones with status equal "disabled".

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu a0ad08d54d 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>
2018-10-29 11:10:38 +08:00
Anson Huang a6ccf5d3d3 MLK-18684 ARM64: dts: freescale: imx8qxp: correct thermal zone number
Commit (dfe39e3 MLK-18673 ARM64: dts: freescale:
imx8dx: disable DRC thermal zone) removes DRC thermal
zone but did NOT fix the thermal zone number and
index, it causes thermal driver probe fail, this
patch corrects them.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Chenyan Feng 921aafde16 MGS-4073 [#ccc] Set GPU AHB CLK to 400M
Set GPU AHB CLK to 400M to meet design requirement.

Date: 11th Jul, 2018
Signed-off-by: Ella Feng <ella.feng@nxp.com>
2018-10-29 11:10:38 +08:00
Peng Fan db725c8743 MLK-18792-4 ARM64: defconfig: enable UIO
Enable UIO for jailhouse ivshmem.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit 2628c334868258c7b27256dacc0a295ee74d9c48)
2018-10-29 11:10:38 +08:00
Peng Fan 3cf2137d08 MLK-18792-3 ARM64: dts: add jailhouse root and inmate dts
Add root and inmate dts. The core [0-1] for root, core[2-3] for inmate.
Disabled gpc busfreq. Not support low power features for dual Linux case.

The 2nd Linux use SDHC1 and UART2, let 1st Linux configure pin and clock
for the two devices. The memory used by 2nd Linux are reserved in
the 1st Linux dts.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit fd8736bdb1df332e98547a9f5b99126fcdd15e31)
2018-10-29 11:10:38 +08:00
Peng Fan 3526dc8e37 MLK-18792-2 ARM64: dts: imx8mq: remove unneccessary interrupt-parent property
There is a interrupt-parent property in root node, no need
to set it again in subnode.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
(cherry picked from commit 899f4e6b4c0f2e372079db979a0a802cd6167bcd)
2018-10-29 11:10:38 +08:00
Laurentiu Palcu 2147d09089 MLK-18680-3: drm: imx: dcss: activate DTRC interrupts for debugging
DTRC interrupts will not be used for switching the banks, as the CTXLD
will be used for that, however these are useful for tracing and
debugging green screen issues when DTRC is used.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
2018-10-29 11:10:38 +08:00
Adrian Alonso ebefd8f107 MLK-18775: ARM64: dts: freescale: imx8mm: fix ecspi regs
Fix incorrect reg address for ESCPI2/ECSPI3

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
(cherry picked from commit cf15610449eb581adb8c2f7f1bb420191b4ee617)
2018-10-29 11:10:38 +08:00
Adrian Alonso b678ee0c59 MLK-18704-3: ARM64: dts: freescale: imx8mm evk: enable pwm4 led
Enable pwm4 control on status led on imx8mm evk base board
use hartbeat trigger to blink led

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
(cherry picked from commit 65b2de72509084a577e37b2758061612a3c7d639)
2018-10-29 11:10:38 +08:00
Adrian Alonso 7b6a872c11 MLK-18704-2: ARM64: dts: freescale: imx8mm evk enable led status
Enable gpio led status on imx8mm evk cpu board
set ON as default state

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
(cherry picked from commit e63553bbab70c06454272e37867c15a807759702)
2018-10-29 11:10:38 +08:00
Adrian Alonso 6d2cc0f8df MLK-18704-1: ARM64: dts: freescale: imx8mm add pwm device nodes
Add device nodes for pwm support on imx8mm SoC

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
(cherry picked from commit 25b240c986083e83d827795255f554f3f896f9c2)
2018-10-29 11:10:38 +08:00
Andy Duan 3898a21d25 MLK-18695 ARM: dts: imx7d-sdb: fix module loadable issue
Add property "cap-power-off-card" to fix the module loadable issue.

Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 8503d35ffb MLK-18694 ARM: dts: imx6x: add wifi bcm4339 support with fmac driver
Add Cypress wifi bcm4339 support with fmac driver for below platforms:
- imx6q/dl/qp-sabresd
- imx6sl/sll-evk
- imx6sx-sdb

Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Han Xu 910150bcfd MLK-18396-1: arm64: dts: Add FSPI in i.MX8MM EVK DT
Add FlexSPI in i.MX8MM EVK device tree

Signed-off-by: Han Xu <han.xu@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 0d07f80f2a MLK-18673 ARM64: dts: freescale: imx8dx: disable DRC thermal zone
Enabling DRC thermal zone could impact DDR PLL clock quality
under certain conditions, disable it for now.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Huang Chaofan 13ff5d9041 MLK-18659 VPU: Reserve 24M memory for vpu decoder stream buffers in dts
and modify interlaced

-	Reserve 24M memory for vpu decoder stream buffers in dts, and 8M
for each instance
-	Modify interlaced by using ctx->pSeqinfo->uProgressive to judge
interlaced or progressive

Signed-off-by: Huang Chaofan <chaofan.huang@nxp.com>
2018-10-29 11:10:38 +08:00
Robin Gong 3250db5936 MLK-18653-2: ARM64:dts: freescale: fsl-imx8mm-evk: remove unused LDO5/7
Unused for LDO5/7, just remove in dts.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2018-10-29 11:10:38 +08:00
Ye Li d799369fcf MLK-18645 arm64: dts: imx8mm: Add DTS for iMX8MM DDR4 validation board
Add the DTS file for iMX8MM DDR4 validation board to support basic
modules like: I2C, UART, ENET, SD/eMMC, Flexspi and USB

Signed-off-by: Ye Li <ye.li@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang fffd973ea6 MLK-18652 ARM: dts: imx6: update ARM sw2iso timing setting
The sw2iso count should cover ARM LDO ramp-up time,
the MAX ARM LDO ramp-up time may be up to more than
100us, this patch sets sw2iso to 0xf (~384us) which
is the default value.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 5353734c04 MLK-18675-23 ARM: dts: imx7d-sdb: add wifi bcm4339 support with fmac driver
Add wifi bcm4339 support with fmac driver.

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 1cd4e1449a MLK-18675-22 arm: dts: imx6ul/ull: add WIFI bcm4339 support with fmac driver
Add WIFI bcm4339 support with fmac driver.

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 2749f05a4f MLK-18632-1 ARM64: dts: freescale: imx8dx: move mu interrupt controller to gic
To support lowest power mode for suspend, if no wakeup source
from non-secure partition is enabled, IRQSTEER can be powered
off when suspend, so non-secure linux OS needs to pass WU
irqchip wakeup source info to ATF, as MU is always enabled
as wakeup source, and it is a system level resource, so no
need to have it in WU domain.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu ed143b50ad MLK-18603 ARM64: dts: imx8mm: reboot fail when boot up with -m4 dtb
The wdog is mandatory required by the reboot.
Don't disable it in -m4 dts.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Peng Fan 69360f3ab5 MLK-18592-2 ARM64: dts: imx8qm: update dom node
Update dom node with name and reg, the two property
will be parsed by xen to create the mapping between
domain name and partition id.

With the mapping, xen could power off the resources
owned by the partition when destroy/reboot/shutdown
the domain.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Peng Fan d9d90c70a5 MLK-18561-2 ARM64: dts: imx8qm: Add nodes to booting Android VM using U-Boot
Without using xen tools to create nodes, we need write the nodes in
dts to let kernel boots up correctly.

Even no using bootloader to boot VM, the nodes added will not
be passthrough to VM, and xen tool will create them automatically.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Peng Fan cb467caf77 MLK-18561-1 ARM64: dts: imx8qm: Add firmware node for domu dts
Add firmware node for domu dts to make android VM boots up.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Nitin Garg 915e53b34a MLK-18090: 8QM: Fix the rpmsg addresses
The RPMSG addresses were incorrect, align those
to MEK dtb

Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
2018-10-29 11:10:38 +08:00
Haibo Chen 7f085c96c0 MLK-18612-2 ARM64: dts: fsl-imx8x-arm2: add ADC support
Add ADC support for imx8qxp b0 validation board, just enable ADC_IN0
and ADC_IN1, to support these two adc external analog input, need do
the following hardware rework: change register R335 and R338 from A
side to B side.

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
2018-10-29 11:10:38 +08:00
Adrian Alonso 7f310c8778 MLK-18670: dts: arm64: add ecspi nodes for imx8mm
Add ECSPI devices nodes for imx8mm SoC

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 7f75f88b3b MLK-17362-02 arm: dts: imx7ulp-evk: add qualcomm Qca9377-3 bt wifi support
Add qualcomm Qca9377-3 bt wifi support for i.MX7ULP B0 chip
EVK RevA3 board.

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
(cherry picked and merged from commit: f85c441d095602edcd39d79db8509618a2f2f515)
2018-10-29 11:10:38 +08:00
Liu Ying ca5d2f29dc MLK-18649-3 arm64: dts: fsl-imx8qxp-mek: Supply aux PD for LVDS dual chan mode
When ldb works in dual LVDS channel mode, it consumes two MIPI/LVDS combo
subsystems, one primary and the other auxiliary.  Each subsystem is powered
by it's own power domain.  So, the dual channel mode needs two power domains.
The pd_mipi_dsi_0/1_dual_lvds power domains may supply two power domains to
the ldb1/2 nodes respectively.  Thus, let's hook them to the ldb1/2 nodes
when ldb1/2 works in dual channel mode.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit 12dd916ad6bd4f10bf41e27e4392787b4a3af0e5)
2018-10-29 11:10:38 +08:00
Liu Ying 89283eb55a MLK-18649-2 arm64: fsl-imx8dx.dtsi: Add pd_mipi_dsi_0/1_dual_lvds power domains
When ldb works in dual LVDS channel mode, it consumes two MIPI/LVDS combo
subsystems, one primary and the other auxiliary.  Each subsystem is powered
by it's own power domain.  So, the dual channel mode needs two power domains.
This patch adds pd_mipi_dsi_0/1_dual_lvds power domains support so that
the ldb1/2 nodes may use them to support dual channel mode.  Note that
the pd_mipi_dsi_0/1_aux_lvds are the parent power domains of the
pd_mipi_dsi_0/1_dual_lvds power domains respectively.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit 86c85ca8cf5b81d4e97e54955ea46e50fdb76b9f)
2018-10-29 11:10:38 +08:00
Liu Ying 010cf4e808 MLK-18649-1 arm64: fsl-imx8dx.dtsi: Correct power-domains for ldb nodes
The power domain devicetree binding documentation tells us that only
one phandle should be supplied to the power-domains property and if
multiple power domains are needed, then the power domains should be
chained as one parent power domain and multiple subsidiary power domains.
Thus, let's remove the unused power domain from the ldb nodes which
are originally expected to powerup the auxiliary MIPI/LVDS combo
subsystems.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit ebbd5aef7005c3128de215715448ac883ebc22e1)
2018-10-29 11:10:38 +08:00
Liu Ying 9f6fa7416c MLK-18617-6 arm64: dts: fsl-imx8qxp-mek: Add JDI WUXGA LVDS panel support
The JDI TX26D202VM0BWA WUXGA LVDS panel works in LVDS
dual channel mode.  It can connect with the i.MX8qxp
MEK board via J1(for LVDS0) and J3(for LVDS1) jacks.
Either LVDS0 or LVDS1 can be the primary channel.
The panel uses PWM signal supplied by i.MX8qxp to
control the backlight.  This patch adds the panel
support on the i.MX8qxp MEK platform.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit b0b8542cdde19586c0311907a388d22fed4688b4)
2018-10-29 11:10:38 +08:00
Liu Ying 294fc1d0b8 MLK-18617-5 arm64: dts: fsl-imx8qxp-mek: Add LVDS0/1 PWM backlight support
This patch adds LVDS0/1 PWM backlight support on the i.MX8qxp MEK platform.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit 48ebf3f5154862cfd21026a7830f08106791905a)
2018-10-29 11:10:38 +08:00
Liu Ying 24b9215db7 MLK-18617-4 arm64: fsl-imx8dx.dtsi: Add pwm_mipi_lvds0/1 nodes
This patch adds pwm_mipi_lvds0/1 nodes support for i.MX8dx/dxp/qxp.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
(cherry picked from commit 9e326d6997fb5fb7144775a14ec707e91d2cb6b3)
2018-10-29 11:10:38 +08:00
Laurentiu Palcu b5a495ce2c MLK-17925: drm: imx: dcss: fix tearing
The video tearing appeared only when the application used 2 buffers.
That's because, sometimes, the context loader could be armed after the
DB event came in the frame trace. That made a buffer submitted in frame
N end up on screen in frame N+2 because the context loader waits for the
next DB event. Since vblank events are sent at the end of the frame, by
the time the buffer lands on screen, the application will reuse it while
it's being displayed, hence the tearing effect.

This patch moves the CTXLD trigger moment all the way to the end of the
frame trace, just before DB event arrives. This will leave the
application plenty of time to submit new buffers.

In the event that the trigger moment is missed (application submits a
buffer right at the end of a frame trace), then we're not signalling the
next VBLANK event to application. This way, application will know that
the buffer is still needed and will not submit a new one.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 97ef560492 MLK-18628-2 ARM: dts: imx7d-sdb: Restore &pwm1 node
This was removed by upstream commit 5eaeaccdae
("ARM: dts: imx7d-sdb: Pass 'enable-gpios' and 'power-supply' properties")

That commit claims that GPIO1_IO01 is not a PWM because it's connected
to a pin labelled "PWREN" of J14 connector. However that pin does behave
as a pwm despite the name.

The exact same pattern happens with imx6ul-evk which has an LCD8000-43T
display on J901.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 7b67689ede MLK-18628-1 ARM: dts: imx7d: Add pwm polarity specifier for backlight
Upstream modified imx7s.dtsi pwm to have #pwm-cells = <3> so now our
out-of-tree boards need to be modified to use 3 cells.

See commit 9be48d2d98 ("ARM: dts: imx7: use 3 PWM cells")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Review-by: Liu Ying <victor.liu@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 039dcc4c40 MLK-18626-2 ARM: dts: imx7d-sdb: Remove duplicate regulator-can2-3v3
Two different regulators are defined with the same name and label but
distinct properties.

The first definition was added with the first board dts and the second
was added when upstream added flexcan support.

Looking at schematics it is indeed gpio2 14 connected to the STB pin of
the CAN transceiver so remove the first definition. This also makes it
consisent with imx_4.9.y.

The second definition entirely overrides the first so this already
worked and this patch results in no DTB change, just a cleanup.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 341773bd9f MLK-18626-1 ARM: dts: imx7d-sdb-epdc: Fix pin conflict with can2
In upstream the flexcan2 regulator was added with its own pinctrl group
and the EPDC_DATA14 pin is claimed even if the can controller is marked
as disabled.

Mark the regulator itself with status = "disabled" so it won't claim the
pin.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Robert Chiras <robert.chiras@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 15273598ac MLK-18622: Revert "ARM: dts: imx6ul-evk: Add DRM panel support"
This reverts commit e10bb39556.

The mxsfb driver uses old bindings so we need to provide those

Acked-by: Robert Chiras <robert.chiras@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 318e04958f MLK-18583: Revert "ARM: dts: imx7d-sdb: Add DRM panel support"
This reverts commit d8236af530.

The mxsfb driver uses old bindings so we need to provide those.

The LCD timings were already upstreamed but then an upstream commit
removed them in favor of adding a DRM path. Making mxsfb work requires
reverting this upstream commit

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Robert Chiras <robert.chiras@nxp.com>
2018-10-29 11:10:38 +08:00
Marius Vlad 9480a0bcba dts: i.MX8QM/QXP Bring back operating-points for GPU freq scaling.
Somehow missed when rebaseing to 4.14

Signed-off-by: Marius Vlad <marius-cristian.vlad@nxp.com>
Acked-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
2018-10-29 11:10:38 +08:00
Robert Chiras 67e526fe26 MLK-18543-3: arm64: dts: imx8qxp: Remove dsi&ldb phy power domains
The MIPI-DSI and LVDS PHY power domains are managed by their bridge
drivers, there is no need to have power domains for the phys also.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2018-10-29 11:10:38 +08:00
Chenyan Feng 2695b10813 MGS-3024 dts: update i.MX8MQ device config to enable GPU
enable gpu device in imx8mq-evk board,
increase GPU memory size from 32M to 128M,
enable GPU flat mappping for full DDR range.

add IMX8MQ_CLK_GPU_AHB_DIV into gpu clock list.

Signed-of-by: Chenyan Feng <ella.feng@nxp.com>

This was skipped during the rebase but now that GPU is enabled we can
also enable it on 8mq.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00
Mirela Rabulea 8b45d639bc MLK-18607: arm64: dts: Add dual camera support for imx8mq-evk rev B4
Update ov5640 camera nodes in fsl-imx8mq-evk.dts
to match for B4 revision, the two cameras are on separate i2c buses.

Create fsl-imx8mq-evk-b3.dts to be used with old B3 revision,
here include the B4 dtb, but override the ov5640 camera nodes,
to use different i2c addresses on the same i2c bus.

Rev B4 tested with HDMI 1920x1080 and fsl-imx8mq-evk.dtb.
Rev B3 tested with HDMI 1920x1080 and fsl-imx8mq-evk-b3.dtb.

Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Reviewed-by: Robert Chiras <robert.chiras@nxp.com>, Robby Cai <robby.cai@nxp.com>
2018-10-29 11:10:38 +08:00
Adrian Alonso 854c9d74a0 MLK-18625-3: dts: arm64: imx8mq dcss update ext phy clk src
Update dcss reference for external 27m differential
clock source

Signed-off-by: Adrian Alonso <adrian.alonso@nxp.com>
Reviewed-by: Laurentiu Palcu <laurentiu.palcu@nxp.com>
(cherry picked from commit 63f49f8d694fe578f1a7e6dfc157e6af5cfc7ff5)
2018-10-29 11:10:38 +08:00
Leonard Crestez 4c0ebc0484 MLK-18373 imx8qm: A72 1300mhz is actually 1296mhz
Setting a72 clock to 1300mhz and reading back the value from clk reveals
the rate is actually 1296mhz:

root@imx8mmevk:~# cpufreq-set -c 4 -f 1300000
root@imx8mmevk:~# cat /sys/kernel/debug/clk/clk_summary |grep a72
 a72_div                                  0            0  1296000000          0 0

This causes some cpufreq tests to fail. Fix by setting OPP to 1296000.

Fixes: 2b6d66acdd71 ("MLK-18331 ARM64: dts: freescale: imx8qm: update cpufreq set points")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Anson Huang <anson.huang@nxp.com>
2018-10-29 11:10:38 +08:00
Liu Ying 33b894996b MLK-18576-4 arm64: dts: fsl-imx8qxp-mek: Add IT6263 dual channel mode support
This patch introduces two DT source files to add IT6263 dual
channel mode support.  Either LVDS0 acts as the primary channel
or LVDS1 does.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
2018-10-29 11:10:38 +08:00
Liu Ying 00c2cc199b MLK-18576-2 arm64: fsl-imx8dx.dtsi: Add aux props for LDB nodes
i.MX8dx/dxp/qxp use two LDBs(one primary, one auxiliary) to support
dual channel mode.  This patch adds DT properties in the LDB nodes
so that HWs needed by dual channel mode can be supplied.

Signed-off-by: Liu Ying <victor.liu@nxp.com>
2018-10-29 11:10:38 +08:00
Shengjiu Wang 398cfd772a MLK-18574: ARM64: dts: remove inapplicable compatible string
remove inapplicable compatible string for spdif

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Viorel Suman <viorel.suman@nxp.com>
2018-10-29 11:10:38 +08:00
Robby Cai ff04375ae8 MLK-18541 media: mipi_csi: fix capture failure for 2592x1944 at 15fps
There's probability there's no interrupt from CSI for the resolution
of 2592x1944 at 15 fps due to timing problem.
Need refine hs_settle value to fix this.

Signed-off-by: Robby Cai <robby.cai@nxp.com>
Reviewed-by: Guoniu.Zhou <guoniu.zhou@nxp.com>
2018-10-29 11:10:38 +08:00
Robby Cai eb171b021d MLK-18552-1 ARM64: dts: add clock disp_axi and disp_apb for CSI and MIPI CSI
Add nodes for clock disp_axi and disp_apb for access to avoid hang issue.
On i.MX8MM, use the register in CSI to do MIPI PHY reset, so add these
clocks for MIPI CSI driver as well.

Signed-off-by: Robby Cai <robby.cai@nxp.com>
Reviewed-by: Guoniu.Zhou <guoniu.zhou@nxp.com>
2018-10-29 11:10:38 +08:00
Cosmin-Gabriel Samoila ed975dba08 MLK-16784 arm64:dts: change micfil default clock rate
Change the micfil clock rate to 196MHz. With lower
clock rate, performance is poor when recording more
than two channels.

Signed-off-by: Cosmin-Gabriel Samoila <cosmin.samoila@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
2018-10-29 11:10:38 +08:00
Fancy Fang 16f288e00f 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>
2018-10-29 11:10:38 +08:00
Fancy Fang d4ab28c802 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>
2018-10-29 11:10:38 +08:00
Fancy Fang defeea5813 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>
2018-10-29 11:10:38 +08:00
Fancy Fang ea3d5b9569 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>
2018-10-29 11:10:38 +08:00
Richard Zhu bb086b24d3 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>
2018-10-29 11:10:38 +08:00
Teo Hall d1dcf971d5 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>
2018-10-29 11:10:38 +08:00
Teo Hall ba8b32c92a 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>
2018-10-29 11:10:38 +08:00
Viorel Suman 652e0477fb 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>
2018-10-29 11:10:38 +08:00
Viorel Suman 7c33fd9b46 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>
2018-10-29 11:10:38 +08:00
Huang Chaofan cfbc7684a1 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>
2018-10-29 11:10:38 +08:00
Andy Duan 056010b5ed 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>
2018-10-29 11:10:38 +08:00
Daniel Baluta 4eca33ff74 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>
2018-10-29 11:10:38 +08:00
Shengjiu Wang be49848de6 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>
2018-10-29 11:10:38 +08:00
Leonard Crestez 0bbc337914 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>
2018-10-29 11:10:38 +08:00
ivan.liu 4471a87fc9 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>
2018-10-29 11:10:38 +08:00
Leonard Crestez b645137625 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>
2018-10-29 11:10:38 +08:00
Leonard Crestez 691275a84f 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>
2018-10-29 11:10:38 +08:00
Leonard Crestez c30edf15f9 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>
2018-10-29 11:10:38 +08:00
Clement Faure 664161d10a 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>
2018-10-29 11:10:38 +08:00
Liu Ying 430598dfb7 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>
2018-10-29 11:10:38 +08:00
Liu Ying e3f09ba8e0 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>
2018-10-29 11:10:38 +08:00
Liu Ying 0beb0c1b1f 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>
2018-10-29 11:10:38 +08:00
Cosmin-Gabriel Samoila d84a3390d0 MLK-16784-6 arm64: config: add micfil in defconfig
Add IMX_MICFIL in arm64 defconfig.

Signed-off-by: Cosmin-Gabriel Samoila <cosmin.samoila@nxp.com>
2018-10-29 11:10:38 +08:00
Peng Fan da683f65b1 MLK-18470 ARM64: dts: imx8mm: add ocotp node
Add ocotp node to make nvmem work.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Bai Ping 19d863b929 MLK-18426 AMR64: dts: imx: Increase the cpuidle latency setting on imx8mm
After the WAIT mode is enabled on imx8mm, the previous latency setting
seems can NOT meet the system the latency requirement. audio playback is
impacted by cpuidle. So increasing the latency setting as large as possible
to eliminate the impact of system performance. The latency value is not very
accurate, need to be updated after we have enough performance test result.

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 03cb1ef1d1 MLK-18423 ARM64: dts: imx8qm-mek: optimize the pciea disable pin setting
Optimize the pciea disable pin to drive NTB0104 device:
(NTB0104 requires at least 2 mA per data sheet)
- push-pull output
- pull disabled
- high drive strength

And the patch also change the lvds gpio to lsio gpio.

Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu 635048f751 MLK-18386 ARM64: dts: imx8mm: fix pcie pll can't be locked in resume
pcie aux clock is mandatory required by pcie power management.
add the aux clock into imx8mm pcie dts node explicitly.
pcie ctrl clock would be turned on, when pcie root clock
is enabled.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Shengjiu Wang 50a8b33702 MLK-18397-2: ARM64: dts: enable spdif1 tx for hdmi rx arc
enable spdif1 tx for hdmi rx arc

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
2018-10-29 11:10:38 +08:00
Robby Cai c273f30b4f MLK-18362-3 arm64: dts: add mipi csi camera support on imx8mm-evk
add node for MIPI CSI, CSI, and camera OV5640

Signed-off-by: Robby Cai <robby.cai@nxp.com>
2018-10-29 11:10:38 +08:00
Shengjiu Wang ce820630b5 MLK-18368-9: ARM64: dts: enable hdmi rx audio
enable hdmi rx audio

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 10ee868310 MLK-18382 ARM64: dts: freescale: imx8mq: add GPT compatible string
i.MX8MQ uses same GPT as i.MX7D, add i.MX7D compatible
string for GPT driver, and disable it by default.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Shenwei Wang 519d40e0ca 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>
2018-10-29 11:10:38 +08:00
Shenwei Wang d2c1a73b44 MLK-18379: arm64: defconfig: select CONFIG_PWM_FSL_FTM
Select the CONFIG_PWM_FSL_FTM option and build the driver
by default.

Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
2018-10-29 11:10:38 +08:00
Sandor Yu cf503f60a7 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>
2018-10-29 11:10:38 +08:00
Sandor Yu e4ea311343 MLK-18355-9: dts: Add hdmi rx cec property
Add hdmi rx cec property to imx8qm HDMI RX driver.

Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu ffd683a792 MLK-18298-2 ARM: dts: imx7d: change the pcie phy in dts
Change the pcie phy region in dts accordingly.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu a83ede34dd MLK-18298-1 ARM64: dts: imx8mm: enable pcie
Add the pcie support for imx8mm and verify
it on imx8mm evk board when internal pll is
used as ref clock.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Frank Li 54616f4830 MLK-18338-1 arm64: iMX8MM: dts: enable ddr monitor
Enable DDR monitor

Signed-off-by: Frank Li <Frank.Li@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 28935906a4 MLK-18181-2 ARM: imx: Move gpcv2 regulator notifiers to drivers/soc
The vendor tree does imx7 PGC management through regulator notifiers
while upstream implemented the same features using power domains. These
two drivers have entirely different interfaces with higher-level IP
blocks.

Resolve this conflict by moving the old code to drivers/soc and
supporting both power-domain and regulator interfaces. This effectively
merges the two drivers and is similar to how imx6sx implements both
power domains and a regulator notifier for pcie specifically.

Supporting both interfaces allows consumes to switch one-by-one, for
example by having PCI work with a power-domains reference while usb hsic
still uses the regulator enable/disable interface.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 80ae2bc5a9 MLK-18181-1 ARM: imx: Clear OF_POPULATED in imx_gpcv2_init
The power domain code shares the same node and will not probe if irqchip
probes first and marks the node with OF_POPULATED.

Clearing the OF_POPULATED flag is also done in imx_gpc_init for imx6 and
imx_gpcv2_irqchip_init implemented by upstream.

In imx_4.9.y this was solved in a different way by adding a second pgc
node, see commit fab513930e78 ("MLK-14280: gpc: gpc driver not probed").
Solving the problem by clearing OF_POPULATED allows using the upstream
PGC driver without hacks.

Having two irqchip implementations with same name seems to work fine
with the mach-imx variant taking precedence.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00
Cosmin-Gabriel Samoila 8fdcb764cb MLK-16784-3: arm64: dts: add pdm nodes in iMX8MM dts
Add micfil DAI node in dtsi and pdm sound card in dts.
We also  moved ak5558 nodes into separate dts since
ak5558 uses sai5 which share some pins with micfil.

Signed-off-by: Cosmin-Gabriel Samoila <cosmin.samoila@nxp.com>
(cherry picked from commit 8451c6886b0175b7e1391293aa9fb461395f8485)
2018-10-29 11:10:38 +08:00
Richard Zhu af573c0826 MLK-18381-1 ARM64: dts: imx8mm: enable rpmsg
enable rpmsg on imx8mm

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Viorel Suman afb54cead3 MLK-17531-4: ARM64: dts: mx8mm-evk: enable AK4497 codec
Enable AK4497 with mode 0. For ak4497 the same SAI interface as
for AK4458 is used, so a separate ak4497 dts is needed.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2018-10-29 11:10:38 +08:00
Robert Chiras 2bb26e01ca MLK-18357-3: arm64: dts: Update 8M, 8QM and 8QXP dts files for dsi suspend/resume
Added no_clk_reset property for 8M dts files, since DSI doesn't need
it's clocks stopped during suspend.
Also, added power on delay for 8QM and 8QXP for a better suspend/resume
stability.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2018-10-29 11:10:38 +08:00
Antoine Bouyer 7bb5d2c90d MMIOT-35-1 arm64: dts: imx8mq drm: create dts for drm purpose
Signed-off-by: Antoine Bouyer <antoine.bouyer@nxp.com>
2018-10-29 11:10:38 +08:00
Antoine Bouyer 136c9bcc21 MMIOT-35-1 arm64: dts: imx8mq: add dts node pointers
These pointers are required for drm dts

Signed-off-by: Antoine Bouyer <antoine.bouyer@nxp.com>
2018-10-29 11:10:38 +08:00
Fabio Estevam d822226c30 MLK-18339: arm64: defconfig: Select CONFIG_SPI_IMX by default
Allow the CONFIG_SPI_IMX option to be built by default.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-10-29 11:10:38 +08:00
Fabio Estevam 734113934e MLK-18339: arm64: dts: imx8mq: Add ECSPI support
Add support for the three ECSPI ports present on i.MX8MQ.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-10-29 11:10:38 +08:00
Adriana Reus 366444ea4f MLK-18317: imx8qxp: dts: Add A0 specific dtbs
These are similar to their counterpart non-A0 dtbs, but vpu encoder
and decoder are removed.

Signed-off-by: Adriana Reus <adriana.reus@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu c2c819d44f MLK-18320 ARM64: dts: imx8qm: align the reserved ddr memory
In order to enlarge the CMA easily, change the rpmsg
reserved memory region from 0xb800_0000 to 0x9000_0000.
And refine the layout of the reserved memory.
- RPMSG buffers are allocated from CMA dynamically, and have to
be accessed by M4 side. But M4 can only access the 1.5Gbytes
DDR memory from 0x8000_0000. So, the finial reserved memory
layout is just like the one below.

Thus, the largest size of the DDR memory left for CMA, is about
1212Mbytes in theory, since 32Mbytes alignment is required by
CMA allocation.

reserved-memory layout
0x8800_0000 ~ 0x8FFF_FFFF            M4 + RTOS(128M)
0x9000_0000 ~ 0x903F_FFFF            RPMSG Vring(4M)
0x9440_0000 ~ 0xDFFF_FFFF(MAX)       CMA(1212M)(MAX)

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 0cf37ed960 MLK-18331 ARM64: dts: freescale: imx8qm: update cpufreq set points
Update cpufreq set-points according to SCFW changes:

A53: add 1104MHz setpoint;
A72: add 1300MHz setpoint.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
2018-10-29 11:10:38 +08:00
Haibo Chen 2297616f14 MLK-18323-4: ARM64: defconfig: enable imx8qxp adc
Enable imx8qxp adc in default

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
2018-10-29 11:10:38 +08:00
Haibo Chen 0e00b07f1c MLK-18323-3 ARM64: dts: imx8qxp: add adc node
imx8qxp contain one adc, so add adc0 node for imx8qxp.

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
2018-10-29 11:10:38 +08:00
Haibo Chen 642ba9bc47 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>
2018-10-29 11:10:38 +08:00
Sandor Yu 971ccd302d 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>
2018-10-29 11:10:38 +08:00
Richard Zhu b1d9fc574e MLK-18311 ARM64: dts: imx8qxp: correct the rpmsg address on arm2 board
Regarding to the latest layout of the reserved memory
on imx8qxp, correct the rpmsg address on arm2 board too.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Shengjiu Wang 9291424b93 MLK-17531-2: arm64: dts: imx8mm-evk: enable audio nodes
Enable SAI + WM8524 codec. Enable audio board: SPDIF + 3 AK codecs.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 562d5ada11 MLK-18313 ARM64: dts: imx8mq-evk-pcie1-m2: disable pcie0 port
When wifi driver switch to QCA CLD from ATH10K, there have one known issue:
   - QCA CLD driver only support ONE instance.
So it has to disable pcie0 port.

Reviewed-by: Haibo Chen <haibo.chen@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 8e8564438d MLK-18314 arm64: dts: imx8mm-evk: add cts/rts for uart1 and uart3 ports
Since uart1 and uart3 has cts/rts lines connection, add cts/rts
support for uart1 and uart3

Reviewed-by: Haibo Chen <haibo.chen@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Robin Gong 79646c6030 MLK-18308-2: ARM: imx: imx7ulp: add poweroff feature
On i.mx7ULP, poweroff kernel by sending rpmsg message to M4, and
M4 poweroff CA7. Then M4 can power on CA7 again by type 'V' command
in its console or press POWERON key once M4 support POWERON.
Note: CA7 should enter VLLS mode firstly before poweroff by M4.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2018-10-29 11:10:38 +08:00
Li Jun fd5effff57 MLK-18296 arm64: dts: imx8mm-evk: enable usbotg1
Enable usbotg1 and disable usbotg2, both are USB 2.0 and dual role
capable, but the typec port for usbotg2 is primary for power, and
the dead battery is not ready, so disable the typec2 and usbotg2.

Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
2018-10-29 11:10:38 +08:00
Zhou Peng 7dd27dd857 MLK-18301-3 - [i.MX8MM/Hantro]: Enable hantro vpu on mscale 845S platform
Enable hantro 845 decoder/encoder on device tree

Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez c38c877e10 MLK-18294 arm64: dts: imx8qm-mek-dom0: Grant guest LVDS1_I2C1 pads
This fixes a pinctrl error in the guest, fixing these warnings:

imx8qm-pinctrl passthrough:iomuxc: pin_config_set op failed for pin 60
imx-lpi2c 157247000.i2c: Error applying setting, reverse things back

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang affefe61a6 MLK-18300-1 ARM64: dts: freescale: imx8qm: remove csi gpio clocks
Remove CSI0/1 GPIO related clocks to make sure all GPIOs
clocks are always ON.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Chenyan Feng de7018bfa8 GPU clk for 845S in dts
Date: 14th May, 2018
Signed-off-by: Ella Feng <ella.feng@nxp.com>
2018-10-29 11:10:38 +08:00
Weiguang Kong 63823ab3e6 MLK-18279: ASoC: fsl_dsp: get the information of reserved memory from dts
The reserved memory for dsp is defined in dts file, however, the dsp
driver has also defined the address and size of this reserved memory,
which is repeated and inflexible.

So by cancelling the definition in dsp driver and use system API to
get the information of reserved memory from dts dynamically to fix
this problem.

Signed-off-by: Weiguang Kong <weiguang.kong@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu d69e4f4956 MLK-18239 ARM64: dts: imx8qxp: change the rpmsg reserved memory region
In order to enlarge the CMA easily, change the rpmsg
reserved memory region from 0xb800_0000 to 0x9000_0000.
And refine the layout of the reserved memory.
- RPMSG buffers are allocated from CMA dynamically, and have to
be accessed by M4 side. But M4 can only access the 1.5Gbytes
DDR memory from 0x8000_0000. So, the finial reserved memory
layout is just like the one below.

Thus, the largest size of the DDR memory left for CMA, is about
1212Mbytes in theory, since 32Mbytes alignment is required by
CMA allocation.

reserved-memory layout
0x8000_0000 ~ 0x83FF_FFFF            A core + Linux Kernel(64M)
0x8400_0000 ~ 0x85FF_FFFF            VPU encoder boot(32M)
0x8600_0000 ~ 0x87FF_FFFF            VPU decoder boot(32M)
0x8800_0000 ~ 0x8FFF_FFFF            M4 + RTOS(128M)
0x9000_0000 ~ 0x903F_FFFF            RPMSG Vring(4M)
0x9040_0000 ~ 0x913F_FFFF            VPU decoder rpc(16M)
0x9140_0000 ~ 0x923F_FFFF            VPU encoder rpc(16M)
0x9240_0000 ~ 0x943F_FFFF            DSP(32M)
0x9440_0000 ~ 0xDFFF_FFFF(MAX)       CMA(1212M)(MAX)

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 3e2fe68e74 MLK-18293-03 ARM64: defconfig: enable wireless configs for Qca9377-3 qcacld-2.0
Add some necessary configs for qualcomm wifi QCA6174/QCA9377 qcacld-2.0
CLD driver and remove the ath10k configs.

(Run "make savedefconfig" to change the defconfig)

Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan e8270cfabd MLK-18293-02 arm64: dts: imx8mm-evk: enable usdhc1 for QCA9377-3 wireless support
Enable usdhc1 for QCA9377-3 wireless support.

Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 8a3daa3372 MLK-18293-01 arm64: dts: imx8mm-evk: add all uart ports on evk board
Add all uart ports on evk board, and enable uart1 port for
Murata 1PJ bluetooth support.

Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 9012bba434 MLK-18276-02 ARM64: defconfig: add regulatory rules database config
Enable regulatory rules database config:
    CONFIG_CFG80211_INTERNAL_REGDB

(Run "make savedefconfig" to change the defconfig)

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Reviewed-by: Haibo Chen <haibo.chen@nxp.com>
2018-10-29 11:10:38 +08:00
Andy Duan 9ff51dea71 MLK-18276-01 ARM: imx_v7_defconfig: add regulatory rules t database config
Enable regulatory rules database config:
        CONFIG_CFG80211_INTERNAL_REGDB

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Reviewed-by: Haibo Chen <haibo.chen@nxp.com>
2018-10-29 11:10:38 +08:00
Shengjiu Wang 38916cc2cc MLK-18272: ARM64: dts: refine the power domain tree for audio devices
In the latest scfw design, the power domain of device should be explicit
enabled in kernel, otherwise there will be kernel dump.
For example, when using audio device to playback, the DMA channel's power
domain should be eanbled, but to avoid to call scfw API in driver, we need
to refine the tree of power domain, define the DMA channel's power domain
as audio device's parent.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
2018-10-29 11:10:38 +08:00
Shengjiu Wang 223c97baff MLK-18245: ARM64: dts: Fix asrc clock source
Fixes: 7e05dcf668fc ("MLK-16839-2: ARM64: dts: add clock source for asrc")

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Viorel Suman <viorel.suman@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez e2681bf356 MLK-18259 arm64: dts: imx8qm: Fix mu2 interrupt in xen dts
This was always wrong but causes failures recently after dom0 switched
to using mu1 and claiming it's interrupt

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang de77e0fa48 MLK-18265-4 ARM64: dts: freescale: imx8qm: correct jpeg power domain
Correct JPEG power domain tree to make sure kernel can
boot up successfully with XRDC enforcement enabled.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Tested-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang abb42286e6 MLK-18265-3 ARM64: dts: freescale: imx8qm: correct usb power domain
Correct USB power domain tree to make sure kernel can
boot up successfully with XRDC enforcement enabled.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Tested-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang aa2b68e23d MLK-18265-1 ARM64: dts: freescale: imx8qm: remove GPIO clocks
All GPIOs clock will be kept ON in SCFW by default, here
remove all GPIOs management to make sure they are always
ON.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Tested-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Ranjani Vaidyanathan e2565903d4 MLK-18220-5 dts:imx8qxp Remove all clock references from GPIO device entries.
Controlling GPIO clocks in iMX8 is dependent on power domain,
and an unused GPIO's power domain is disabled during startup.
This makes it difficult for the GPIO driver to manage clocks for such
GPIOs. This causes failures during system suspend/resume when
GPIO registers are saved/restored.
These LPCG clocks will be always be in an enabled state, similar
to earlier iMX processors.

Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
2018-10-29 11:10:38 +08:00
Huang Chaofan b960aa0f2f MLK-18250 VPU: Add MU for vpu encoder and decoder power in dts for
scfw xrdc enforcing, and add sync for v4l2 driver and firmware

Add MU for vpu encoder and decoder power in dts for scfw xrdc enforcing,
and add sync for v4l2 driver and firmware

Signed-off-by: Huang Chaofan <chaofan.huang@nxp.com>
2018-10-29 11:10:38 +08:00
Shengjiu Wang a925039f1a MLK-18245-2: ARM64: dts: refine the power domain tree for audio devices
In the latest scfw design, the power domain of device should be explicit
enabled in kernel, otherwise there will be kernel dump.
For example, when using audio device to playback, the DMA channel's power
domain should be eanbled, but to avoid to call scfw API in driver, we need
to refine the tree of power domain, define the DMA channel's power domain
as audio device's parent.

And same requirement for DSP, the MU and DSP_RAM is required by DSP driver.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
2018-10-29 11:10:38 +08:00
Robin Gong 0b15802774 MLK-18241-3: ARM64: dts: freescale: imx8qm: add edma channel power domain for LPUART
Add edma channel power domain for LPUART to make sure the specific
edma channel power up in dma mode.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2018-10-29 11:10:38 +08:00
Robin Gong e7646e6245 MLK-18241-2: ARM64: dts: freescale: imx8qxp: add edma channel power domain for LPUART
Add edma channel power domain for LPUART to make sure the specific
edma channel power up in dma mode.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2018-10-29 11:10:38 +08:00
Robin Gong 544928ede7 MLK-18241-1 ARM64: dts: freescale: imx8qxp: correct edma index
Correct edma index for imx8qxp to mach the right rsrc id of scfw.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2018-10-29 11:10:38 +08:00
Han Xu cf5c13cd51 MLK-18240: arm64: dts: change the i.MX8QXPB0 NAND iomux settings
Set the corrrect NAND IOMXU for i.MX8QXPB0.

Signed-off-by: Han Xu <han.xu@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu 7026163ec3 MLK-18238 ARM64: dts: imx8qm: add pd for rpmsg to avoid crash
Add pd for rpmsg to avoid crash, after enable
xrdc blocking.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu 107bd0f462 MLK-18210 ARM64: dts: imx8qm: correct the pds of pcie
HSIO MSIC/GPIO are powered by the pd_hsio_gpio domain.
Use the pd_hsio_gpio as the parent pd of the imx8 hsio to
make sure that the pd_hsio_gpio domain would be tuend on
when enable HSIO module.
BTW, PHY calibration of the PHYX2_1/PHYX1 is relied on the
results of the PHYX2_0.
So, all the HSIO PDs should be turned on when use PCIe
or SATA.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Frank Li cca5f8a446 MLK-18237-3 XRDC: JPEG ENC/DEC fix crash missed power resource
[    5.184399] Unhandled fault: synchronous external abort (0x96000210) at 0xffff00000b000000
[    5.184824] (null): mxc_isi_capture_open, No remote pad found!
[    5.187470] (null): mxc_isi_capture_open, No remote pad found!
[    5.192734] (null): mxc_isi_capture_open, No remote pad found!
[    5.199931] (null): mxc_isi_capture_open, No remote pad found!
[    5.219447] Internal error: : 96000210 [#1] PREEMPT SMP
[    5.224681] Modules linked in:
[    5.227755] CPU: 2 PID: 3028 Comm: v4l_id Not tainted 4.9.88-04903-ga209cd8 #464
[    5.235162] Hardware name: Freescale i.MX8QXP MEK (DT)
[    5.240305] task: ffff80083411cb00 task.stack: ffff80083b7ac000
[    5.246254] PC is at clk_gate2_scu_enable+0x3c/0xa8

Signed-off-by: Frank Li <Frank.Li@nxp.com>
2018-10-29 11:10:38 +08:00
Frank Li 8d45acb783 MLK-18237-2 XRDC: DSP: add mu power resource to avoid crash
[    2.300213] Unhandled fault: synchronous external abort (0x96000210) at 0xffff000014dd0000
[    2.308584] Internal error: : 96000210 [#1] PREEMPT SMP
[    2.313813] Modules linked in:
[    2.316875] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.9.88-04903-ga209cd8 #464
[    2.324271] Hardware name: Freescale i.MX8QXP MEK (DT)
[    2.329407] task: ffff80083a088000 task.stack: ffff80083a034000
[    2.335329] PC is at MU_Init+0x0/0x38
[    2.338994] LR is at dsp_mu_init+0xb8/0x140

Signed-off-by: Frank Li <Frank.Li@nxp.com>
2018-10-29 11:10:38 +08:00
Frank Li 417653db44 MLK-18237 XRDC: rpmsg: add power domain to avoid crash
[    0.737561] Unhandled fault: synchronous external abort (0x96000210) at 0xffff00000c160000
[    0.745503] Internal error: : 96000210 [#1] PREEMPT SMP
[    0.750695] Modules linked in:
[    0.753739] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.9.88-04903-ga209cd8 #464
[    0.761118] Hardware name: Freescale i.MX8QXP MEK (DT)
[    0.766246] task: ffff80083a088000 task.stack: ffff80083a034000
[    0.772160] PC is at MU_Init+0x0/0x38
[    0.775805] LR is at imx_rpmsg_probe+0x22c/0x510

Signed-off-by: Frank Li <Frank.Li@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 9baa2463b8 MLK-18224-2 ARM64: dts: freescale: imx8qxp: update MU IRQ number
MU IRQ number is incorrect, update it.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 9e89c774c3 MLK-18224-1 ARM64: dts: freescale: imx8qm: update MU IRQ number
MU IRQ number is incorrect, update it.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 45d79b497f MLK-18205-16 ARM64: dts: freescale: imx8mm: add cpu-freq support
Add i.MX8MM OPP table to support cpu-freq.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Robin Gong f5372c9073 MLK-18205-13 ARM64: dts: freescale: imx8mm-evk: add ROHM BD71837 PMIC support
Add ROHM BD71837 PMIC support for i.MX8MM EVK board.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 24c89ba879 MLK-18205-12 ARM64: defconfig: enable i.MX8MM by default
Enable i.MX8MM SoC by default.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang db01fcd928 MLK-18205-11 arm64: Kconfig: add i.MX8MM support
Add i.MX8MM SoC support.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Robin Gong a0171f0aa3 MLK-18205-10 ARM64: defconfig: select BD71837 PMIC by default
Enable BD71837 PMIC by default.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Bai Ping 2535028723 MLK-18205-8 ARM64: dts: freescale: imx8mm: add cpu-idle support
Add i.MX8MM cpu-idle support, level #1 is wfi,
level #2 is ARM power gated.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Bai Ping 1745eb3d27 MLK-18205-3 ARM64: dts: freescale: add i.MX8MM dtb
Add i.MX8MM dtsi and evk dtb support.

Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Cosmin-Gabriel Samoila <cosmin.samoila@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
2018-10-29 11:10:38 +08:00
Haibo Chen 253206b9ab MLK-18218 ARM: dts: imx7ulp-evk: delete property to support SD3.0
commit b62dd733a100 ("MLK-18127 ARM: dts: imx7ulp-evk: few correction
for usdhc1") add property "no-1-8-v" for the usdhc1 which limit the
wifi. The sd slot on base board share this usdhc1, so the usdhc1
in imx7ulp-evk-sd1.dts also inherit this property.

delete the "no-1-8-v" property, then the sd slot can support SD3.0

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
2018-10-29 11:10:38 +08:00
Ranjani Vaidyanathan 9ff9793b58 MLK-18220-2 XRDC:Fix power domain and clock entries in DTS
Ensure that every resource is associated with a power domain
and clocks required.

Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
2018-10-29 11:10:38 +08:00
Ranjani Vaidyanathan c1843f2a93 MLK-18220-1 XRDC: Add GPIO clocks to device tree node.
Add clocks required by GPIO to the device tree entries.

Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
2018-10-29 11:10:38 +08:00
Shenwei Wang 3c32045351 MLK-18219: arm: dts: add PMU node for 7ULP boards
Added the PMU node in the imx7ulp.dtsi, and enable
it by default.

Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
Reviewed-by: Frank Li <frank.li@nxp.com>
2018-10-29 11:10:38 +08:00
Richard Zhu e0b9ee0d23 MLK-18180 ARM64: dts: correct the pad configurations of pcie
The correct default should be 0x04000021. In which we have the open
drain input option for field [25:26] with a pull up resistor and low
drive strength. This will allow the end point device to drive low the
wake and clkreq signals when necessary and don't have the PCIe
driving back to the endpoint device.

Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Teo Hall 2a85c58196 MLK-18198: Add pd domain to GPIO device tree nodes
Add power domain information to GPIO nodes for correct power
up sequence.

Signed-off-by: Teo Hall <teo.hall@nxp.com>
2018-10-29 11:10:38 +08:00
Teo Hall bdf2b6adf3 MLK-18197: Use MU1 for SCFW API calls
Use correct MU for SCFW API calls to comply with boot
container intended usage.

Signed-off-by: Teo Hall <teo.hall@nxp.com>
2018-10-29 11:10:38 +08:00
Haibo Chen 8690896ac5 MLK-18069 ARM: dts: imx7ulp-evk: correct the touch setting
The MIPI DSI config the DPI as 480 * 854, so correct the touch
display-coords property, to aligned with MIPI DSI.

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
2018-10-29 11:10:38 +08:00
Guoniu.Zhou c4ff1d4434 MLK-18130: camera: add two ov5640 sensor support for QM
Add two ov5640 sensors support for QM since it has two
MIPI CSI controller.

Signed-off-by: Guoniu.Zhou <guoniu.zhou@nxp.com>
2018-10-29 11:10:38 +08:00
Weiguang Kong a8393121b0 MLK-17747: dsp: use the name of dsp instead of hifi
In order to avoid the name problem going forward with
integration with Qcom, Qcom has their own dsp and hifi
is competitor, so the hifi name should not be used in
our code.

So use the name of dsp instead of hifi to fix this
problem.

Signed-off-by: Weiguang Kong <weiguang.kong@nxp.com>
2018-10-29 11:10:38 +08:00
Peng Fan 3839f65c58 MLK-18096 arm64: dts: imx8qm-mek: drop passthrough property for pd_dc1
pd_dc1 is a power domain node, marking it as xen,passthrough
meaning disabled. Alought when enabing xen passthrough
the second DC to DomU, we no need this power domain,
but Dom0 linux will disable unused clks and trigger
error message, "populate_gate_pd: failed to get pd".

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00
Guoniu.Zhou adf7b3a4b9 MLK-18098: camera: add MIPI and PARALLEL CSI support in one dtb
1. Divide ov5640_v3.c into two parts, one for parallel csi driver
   and the other for mipi csi driver

2. Add parallel and mipi support in one dtb file. User can select
   one of them without changing the dtb file

Reviewed-by: Sandor.yu <sandor.yu@nxp.com>
Signed-off-by: Guoniu.Zhou <guoniu.zhou@nxp.com>
2018-10-29 11:10:38 +08:00
Bai Ping e25c1820c5 MLK-18051 arm: imx: fix the audio bus hang when tee enabled
fix audio bus mode hang issue on imx6sl. The root cause of
this issue is that busfreq mode passed to TEE side is wrong,
it will lead to ccm setting is wrong in TEE.

Signed-off-by: Bai Ping <ping.bai@nxp.com>
Tested-by: Anson huang <anson.huang@nxp.com>
2018-10-29 11:10:38 +08:00
Yuchou Gan 7b3ece274c MLK-18101-2 arm64: dtsi: fsl-imx8qxp: Add prg1 for dpr1_channel2
On QXP B0 board, prg1 can alternative connect to
dpr_channel1 and channel2. And if enable PRG0_SEL:BLIT0,
prg1 will connect to channel2, so it could
support 2-plane format tile to linear convert.

Signed-off-by: yuchou gan <yuchou.gan@nxp.com>
2018-10-29 11:10:38 +08:00
Shenwei Wang 407c6a2775 MLK-18088: arm: dts: enable the 7ulp mmdc profiling feature
7ULP uses the same mmdc profiling block as i.mx6q. Added the
"fsl,imx6q-mmdc" compatible string to enable the mmdc profiling
feature.

Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Shenwei Wang <shenwei.wang@nxp.com>
2018-10-29 11:10:38 +08:00
Peng Fan 97768a9306 MLK-18046 ARM64: dts: pass-through edma0 channel14/15 and lpuart1
Passthrough EDMA0 Channel 14/15 and lpuart1 to DomU.

Delete the original edma0 node and introduce the other 5 nodes
to which contains two channels each node.

Currently the nodes are included in fsl-imx8qm-xen.dtsi.

The modem-reset node to support bluetooth is not introduced in DomU
dts, because gpio support has not been done.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez cbe8752661 MLK-18138-2: soc: imx: gpc: Convert imx6sx to new bindings
This fixes graphics on imx6sx by aligning closer to upstream instead of
adding new features to old bindings.

Upstream adds a 4th power domain for PCI but this is is wrong: the PCI
block is in the DISPMIX domain and only PCIE_PHY is in the PCIE_PHY
power domain.

Manual is not very clear on this but in section 10.4.1.4.1 there is this
statement: "The DISPLAY domain contains GIS, CSI, PXP, LCDIF, PCIe,
DCIC, and LDB.  It is supplied by internal regulator."

Placing pcie in a 4th power domain makes lspci hang when display is
turned off.

In upstream the dispmix domain is not actually touched on 6sx so it's
always on, this is why pci seems to work.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Richard Zhu <hongxing.zhu@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez c972ce1766 MLK-18122: ARM: dts: imx6ull-14x14-evk: Add enet phy properties to fix suspend/resume
Upstream suspend/resume already works on this board because it includes
imx6ul-14x14-evk which has these properties set. In our internal branch
the imx6ul and imx6ull DT files are distinct so this needs to be fixed
separately.

Equivalent to commit e6f4292ae0 ("ARM: dts: imx6ul-14x14-evk: Add
ksz8081 phy properties")

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
2018-10-29 11:10:38 +08:00
Robert Chiras 5848ea824d MLK-18120: arch: arm: imx6qp: Fix ldb clocks
Remove the ldb clocks from the ldb node. Those clocks were added
upstream and they are needed for the DRM imx-ldb driver. Since we are
using the fbdev ldb driver for imx6qp, those clocks are not compatible
with our fbdev driver.

Fixes: 78241a88958a ("ARM: dts: add dts file for imx6qp")

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2018-10-29 11:10:38 +08:00
Robert Chiras cbf1eac95d MLK-18193: arm64: dts: fsl-imx8mq: Fix DCSS clocks for panel use-case
The clocks for DCSS were incorrectly assigned in the rm67191 dts file,
so fix them.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2018-10-29 11:10:38 +08:00
Peng Fan 11bf7f9003 MLK-16750-5: arm: imx7d: support using psci to handle power stuff
Support using PSCI to handle Power stuff on imx7d.
i.MX7 LPSR mode not implemented now.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Clement Faure ad035b4011 MLK-18036-2 Delete *optee.dts files
A specific node for OCRAM mapping in optee as been added in
the device tree. These dedicated optee device trees can be
removed.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Clement Faure cb3433dbab MLK-18036-1 Add "fsl,optee-lpm-sram" node for optee os power management.
This node will be used by the OCRAM driver in optee to:
* Get the OCRAM start address for power management in optee.
* Add an entry that will overwrite ocrams nodes and dynamically reduce
the OCRAM available for mmio-sram in Linux.

That way we do not touch the legacy Linux boot and remove the dedicated
optee device tree.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2018-10-29 11:10:38 +08:00
Cedric Neveux e7ede8cec7 MLK-16912 PL310: unlock ways during initialization
This change affects all i.MX 6 with PL310 L2 Cache controller.
When Linux runs in Non-secure World the PL310 has already
been initialized by the ARM secure World running OP-TEE os.
However, in order to have a proper Linux Initialization all the
L2 cache ways have been locked by the secure world.

This patch unlock all the ways during pl310 initialization.

Signed-off-by: Cedric Neveux <cedric.neveux@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez aff47ee4d4 MLK15034-4: ARM: cpuidle imx7d: Declare longer exit_latency/target_residency
Low power idle exit latency is much longer than declared, in the
milisecond range.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 9e16e95fbe MLK15034-3: ARM: cpuidle imx7d: Use a single counter for lpi flow
The current code for deciding which CPU runs the complete lpi flow is
too complicated. Since all enter/exit code now runs under the same lock
we can just use a single non-atomic counter of cpus inside lpi.

Another variable is used to make num_online_cpus() available to ASM code
but idle code can treat it as a constant.

Unlike on imx_4.9.y num_online_cpus is fetched every time idle is
entered becuase hotplug notifiers are gone.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 2563a079ca MLK15034-2: ARM: cpuidle imx7d: Check IPIs manually before LPI
The GPC will wake us on peripheral interrupts but not IPIs. So check
them manually by reading the GIC's GICD_SPENDSGIR* registers and
aborting idle if something is pending.

We do this only for the last cpu and after taking the required locks.
We know that at this stage the other cpu is in WFI itself or waiting for
the imx_pen_lock and can't trigger any additional IPIs. This means that
the check is not racy.

This fixes occasional lost IPIs causing tasks to get stuck in the
TASK_WAKING 'W' state for long periods. This eventually manifested as
rcu stalls.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez 5e6c2c193b MLK15034-1: ARM: cpuidle imx7d: Extend imx_pen lock to cover entire flow
This makes the code much easier to reason about. In particular it o
makes sure the imx7d cpuidle driver respects the requirements for
cpu_cluster_pm_enter/exit:

* cpu_cluster_pm_enter must be called after cpu_pm_enter has been called
on all cpus in the power domain, and before cpu_pm_exit has been called
on any cpu in the power domain.
* cpu_cluster_pm_exit must be called after cpu_pm_enter has been called
on all cpus in the power domain, and before cpu_pm_exit has been called
on any cpu in the power domain.

This fixes interrupts sometimes getting "stuck" because of improper
save/restore of GIC DIST registers.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Leonard Crestez ce0c59b33d MLK-14874 ARM: imx7d: Ensure ARM clock only disabled if cpus in same state
GPC will stop ARM clock if both CPUs are in idle and CPU_CLK_ON_LPM is
set in GPC_LPCR_A7_BSC. Make sure that doesn't happen when cpu1 enters
state2 and cpu0 enters state0 because the default arm WFI state is not
marked with CPUIDLE_FLAG_TIMER_STOP and it can result in arch_sys_timer
being stopped unexpectedly.

It is possible to reproduce incorrect behavior by explicitly disabling
other idle states for cpu0/cpu1 and timing how much sleep calls take on
cpu0. Ocassionaly something like "sleep 1" will take 3-4 seconds to
complete.

Make sure that both CPUs are in the same idle state before entering
WAIT.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang b50110b2a3 MLK-12349 ARM: imx: skip RBC workaround for standby mode on i.MX7D
For standby mode, RBC workaround is NOT necessary as ARM platform
is NOT powered down;

Correct GIC register offset(0x1000) for disabling distributor.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 3887e0bb16 MLK-12262-6 ARM: imx: enable memory power down for i.MX7D TO1.1
Enable memory power down for i.MX7D TO1.1 to save power, TO1.0
has issue of entering DSM by mistake, so it is disabled as a
solution, now that this issue is fixed on TO1.1, enable it.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang dc092cfa0e MLK-12262-5 ARM: imx: add RBC workaround for i.MX7D DSM
Same as low power idle, during GPC shutting down ARM core,
interrupts must be hold until the process done, apply RBC
workaround and disable GIC during GPC powering down ARM
core.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 5a03f84782 MLK-12262-3 ARM: imx: reduce DDR3 normal frequency to 400MHz for i.MX7D TO1.1
i.MX7D TO1.1 only supports DDR3 running at max frequency of 400MHz,
update busfreq driver accordingly.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 6a2fbff6f8 MLK-12262-1 ARM: imx: enable ddr auto self-refresh for i.MX7D
Enable DDR auto self-refresh for i.MX7D, when doing DDR
frequency scale or suspend/resume, DDR self-refresh will
be disabled, this is incorrect for saving power, enable it
for all these scenarios.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang e0e1cc1033 MLK-12262-4 ARM: imx: fix low power idle issue on i.MX7D TO1.1
For low power idle with ARM power gated, per hardware requirement,
there must be no interrupt coming during the power down
process of ARM core, so RBC counter is enabled to hold interrupts
and GIC must be disabled at the moment;

The hardware design team recommends ~240us is required during ARM
core power down, so we update the RBC counter value to 8(~240us);

Update GPC SCU and CPU power up/down timing according to design
team's recommendation.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang b28b9759c8 MLK-12136-1 ARM: imx: adjust slot control to meet design requirement on i.MX7D
Design team recommend to put SCU/C0/C1 in same power up slot
to avoid reset timing issue of debug mode, adjust the power
up slot and timing per their requirement.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 487ae28051 MLK-12093-2 ARM: imx: correct coding error
Correct coding error and use macro define instead
of register value.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2018-10-29 11:10:38 +08:00
Anson Huang 5e453a241d MLK-12088 ARM: imx: low power idle support for imx7d single core (HAX)
When only single core online for i.MX7D, the secondary core wfi
flag should be set to make sure low power idle can be entered when
last core enters wfi. Otherwise, DDR/CCM/ANATOP will NOT enter
low power mode as the secondary core wfi flag is always clear;

Make sure the last power up slot do the ack for single core case.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>

Since upstream removed cpu hotplug notifiers skip this part.

Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
2018-10-29 11:10:38 +08:00