Viorel Suman [Mon, 6 Nov 2017 13:35:54 +0000 (15:35 +0200)]
MLK-16742-1: dts: arm64: imx8qxp: Set proper compatible string
Set proper compatible string in order to trigger
proper handling of constrain_period_size.
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Zhou Peng-B04994 [Fri, 3 Nov 2017 06:03:00 +0000 (14:03 +0800)]
MLK-16671-6 - [i.MX8QXP/Malone]: Add vpu malone decoder
enable vpu module in dts
Signed-off-by: Zhou Peng-B04994 <eagle.zhou@nxp.com>
Xianzhong [Fri, 3 Nov 2017 06:12:38 +0000 (14:12 +0800)]
MGS-3214-2: gpu-viv: integrate 6.2.4 formal driver
Support GEM DRM feature for Android DRM and X11 DRI3,
Fixed GC7000XSVX OpenVX 1.1 CTS failures for i.MX8QM,
Add more performance optimization for GPU benchmarks.
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
Anson Huang [Fri, 3 Nov 2017 10:31:55 +0000 (18:31 +0800)]
MLK-16760 soc: imx: support i.MX8MQ new revision SoC
On i.MX8MQ, the new revision SoC does NOT update the
revision info in ANATOP_DIGPROG register, to support
dynamic SOC id/revision detection, only reading info
from ANATOP_DIGPROG is not working now, change to read
SOC id/revision from ATF which is in secure world.
The ATF will read the ANATOP_DIGPROG as well as ROM
version to decide the SOC revision.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Richard Zhu [Thu, 2 Nov 2017 05:46:20 +0000 (13:46 +0800)]
MLK-16754 ARM64: dts: imx8qm: enable the smmu on sata
enable the smmu on sata
BuildInfo:
- SCFW
9559d5ec, IMX-MKIMAGE
06bc2767, ATF
- U-Boot 2017.03-imx_v2017.03_4.9.51_imx8_beta1+g6dc7b0f
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Li Jun [Thu, 26 Oct 2017 18:28:15 +0000 (02:28 +0800)]
MLK-16697 staging: typec: tcpci: add notfication for device attach
Some usb device driver can't know the connect and disconnect to host
if the vbus is always on, if use typec we can rely on cc line status
to know that, so add a notification to let controller driver know
device attach and detach from host.
Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Richard Zhu [Mon, 30 Oct 2017 07:25:11 +0000 (15:25 +0800)]
MLK-16686-2 ARM64: dts: imx8mq: enable rpmsg on imx8mq
Enable rpmsg support on imx8mq platforms.
- To avoid the potenial confliction, reduce the allocation
scope of CMA.
- Reserved the 0xb800_0000 1Mbyte for RPMSG
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Fri, 20 Oct 2017 06:01:55 +0000 (14:01 +0800)]
MLK-16686-1 clk: imx8mq: add the mu clk
add the mu clock
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Peng Fan [Thu, 2 Nov 2017 02:45:33 +0000 (10:45 +0800)]
MLK-16746 imx8mq: support m4
Support M4/A53 work together
1. add imx_src_is_m4_enabled
2. introduce a new dts dedicated for m4
3. add more pwm nodes
4. Since clk initialization is at very early stage, add m4 enabled check
in the beginning of clk code.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
Fancy Fang [Wed, 25 Oct 2017 03:53:46 +0000 (11:53 +0800)]
MLK-16706-4 video: fbdev: mipi_dsi_northwest: improve phy pll config
The MXL PLL uses the following function to generate
the output clock 'CLKOUT' based on the input 'CLKREF'
(which is the reference clock):
"
CLKOUT = CLKREF * CM / (CN * CO);
CM range is in [16, 255];
CN range is in [1, 16];
CO range is in {1, 2, 4, 8};
"
So the DSI driver needs to derive proper 'CM', 'CN'
and 'CO' to get the required 'CLKOUT' based on the
'CLKREF'. This commit provides a general method to
derive the best 'CM', 'CN' and 'CO' values for any
required 'CLKOUT' and input 'CLKREF' combinations.
'best' means the actual generated output clock freq
is closest to the required 'CLKOUT' by using the
derived 'CM', 'CN' and 'CO'.
Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Fancy Fang [Fri, 20 Oct 2017 15:08:08 +0000 (23:08 +0800)]
MLK-16706-3 video: fbdev: mipi_dsi_northwest: add map tables for 'CM', 'CN' and 'CO'
The 'CM', 'CN' and 'CO' possible values have no apparent
relationships with their registers config values. So add
three tables to describe mappings for them.
Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Fancy Fang [Fri, 20 Oct 2017 11:01:58 +0000 (19:01 +0800)]
MLK-16706-2 video: fbdev: mipi_dsi_northwest: add 'phy_ref_clkfreq' field
Add 'phy_ref_clkfreq' field to 'struct mipi_dsi_info'
to save the reference clock frequency configed in dtb
file for mipi phy pll.
Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Fancy Fang [Fri, 20 Oct 2017 10:44:23 +0000 (18:44 +0800)]
MLK-16706-1 video: fbdev: mipi_dsi_northwest: replace 'PICOS2KHZ' by 'PICOS2KHZ2'
The 'PICOS2KHZ' macro is used to get pixel clock frequency
from 'pixclock' value to derive the required mipi phy bit
clock frequency. But the result precision get from this
macro is not good enough in some cases. The patch defines
an new improved macro 'PICOS2KHZ2' to replace 'PICOS2KHZ'.
Signed-off-by: Fancy Fang <chen.fang@nxp.com>
Cosmin-Gabriel Samoila [Thu, 26 Oct 2017 11:31:54 +0000 (14:31 +0300)]
MLK-16592: arm64: dts: fsl-imx8qm-mek: Enable cs42888 codec
cs42888 can be found on i.mx8 QM MEK CPU board. It uses esai0 as a
digital audio interface.
Signed-off-by: Cosmin-Gabriel Samoila <cosmin.samoila@nxp.com>
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Nitin Garg [Wed, 1 Nov 2017 02:30:48 +0000 (21:30 -0500)]
MLK-16743-1: Add iMX8QM dual LVDS device tree
Add iMX8QM dual it6263 lvds to hdmi device tree file
Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
Han Xu [Tue, 31 Oct 2017 20:45:20 +0000 (15:45 -0500)]
MLK-16745-2: arm64: dts: dedicate dtb file for QM lpspi
add dedicate dtb file for lpspi nor chip on base board for i.MX8QM,
remove the CS1 pin which is not used.
BuildInfo:
- SCFW
9e9f6ec6, IMX-MKIMAGE
49a2866a, ATF 0
- U-Boot 2017.03-imx_v2017.03_4.9.11_imx8_alpha+g258936c
Signed-off-by: Han Xu <han.xu@nxp.com>
Han Xu [Tue, 31 Oct 2017 20:37:47 +0000 (15:37 -0500)]
MLK-16745-1: arm64: dts: dedicate dtb file for QXP lpspi
add a dedicate dtb file for the lpspi nor chip on base board, also
remove the unnecessary CS1 pin setting for the nor chip.
BuildInfo:
- SCFW
9e9f6ec6, IMX-MKIMAGE
49a2866a, ATF 0
- U-Boot 2017.03-imx_v2017.03_4.9.11_imx8_alpha+g258936c
Signed-off-by: Han Xu <han.xu@nxp.com>
Nitin Garg [Tue, 31 Oct 2017 17:38:30 +0000 (12:38 -0500)]
MLK-16743: Enable LVDS0 in iMX8QM arm2 and mek base device tree
Enable it6263 lvds0 in base device tree for 8QM MEK and ARM2
Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
Bai Ping [Mon, 30 Oct 2017 08:27:02 +0000 (16:27 +0800)]
MLK-16689-03 driver: soc: Add busfreq driver for imx8mq
Add busfreq driver support on i.MX8MQ. The busfreq driver is
mainly used for dynamic DDR frequency change for power saving
feature. When there is no peripheral or DMA device has direct
access to DDR memory, we can lower the DDR frequency to save
power. Currently, we support frequency setpoint for LPDDR4:
(1): 3200mts, the DDRC core clock is sourced from 800MHz
dram_pll, the DDRC apb clock is 200MHz.
(2): 400mts, the DDRC core clock is source from sys1_pll_400m,
the DDRC apb clock is is sourced from sys1_pll_40m.
(3): 100mts, the DDRC core clock is sourced from sys1_pll_100m,
the DDRC apb clock is sourced from sys1_pll_40m.
In our busfreq driver, we have three mode supported:
* high bus mode <-----> 3200mts;
* audio bus mode <-----> 400mts;
* low bus mode <-----> 100mts;
The actual DDR frequency is done in ARM trusted firmware by calling
the SMCC SiP service call.
BuildInfo:
- IMX-MKIMAGE:
05d3d4a7d7, ATF:
724cc2b890
- SPL/Uboot:
f72c10d2db;
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Bai Ping [Mon, 30 Oct 2017 08:23:48 +0000 (16:23 +0800)]
MLK-16689-02 ARM64: dts: add busfreq node on imx8mq
Add the busfreq node used for DDR DVFS on imx8mq.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Bai Ping [Mon, 30 Oct 2017 07:33:47 +0000 (15:33 +0800)]
MLK-16689-01 driver: clk: add dram_core clock on imx8mq
On i.MX8MQ, the dram core clock can be sourced from dram_pll or
the dram_alt clock, when sourced from the dram_alt, it has a fix
divider(1/4). When the DDRC core clock is lower than 800MHz, we
can swith the core clock to dram_alt source.
The dram apb clock's mux option 2 should be sys1_pll_40m, so fixed it.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Roger Quadros [Fri, 21 Apr 2017 12:58:08 +0000 (15:58 +0300)]
usb: dwc3: gadget: Fix ISO transfer performance
Commit
08a36b543803 ("usb: dwc3: gadget: simplify __dwc3_gadget_ep_queue()")
caused a small change in the way ISO transfer is handled in the case
when XferInProgress event happens on Isoc EP with an active transfer.
This caused a performance degradation of 50%. e.g. using g_webcam on DUT
and luvcview on host the video frame rate dropped from 16fps to 8fps
@high-speed.
Make the ISO transfer handling equivalent to that prior to that commit
to get back the original ISO performance numbers.
Fixes:
08a36b543803 ("usb: dwc3: gadget: simplify __dwc3_gadget_ep_queue()")
Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
(cherry picked from commit
f1d6826cae30e97e37a1f2481d7e1dc4faa09ce1)
Felipe Balbi [Fri, 21 Oct 2016 10:07:09 +0000 (13:07 +0300)]
usb: dwc3: gadget: cope with XferNotReady before usb_ep_queue()
If XferNotReady comes before usb_ep_queue() we will
set our PENDING request flag and wait for a
request. However, originally, we were assuming
usb_ep_queue() would always happen before our first
XferNotReady and that causes a corner case where we
could try to issue ENDTRANSFER command before
STARTTRANSFER.
Let's fix that by tracking endpoints which have been
started.
Reported-by: Janusz Dziedzic <januszx.dziedzic@intel.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
(cherry picked from commit
6cb2e4e3de10893f38dbf3923a9cc50c76548a89)
Felipe Balbi [Thu, 22 Sep 2016 09:25:28 +0000 (12:25 +0300)]
usb: dwc3: gadget: properly check ep cmd
The cmd argument we pass to
dwc3_send_gadget_ep_cmd() could contain extra
arguments embedded. When checking for StartTransfer
command, we need to make sure to match only lower 4
bits which contain the actual command and ignore the
rest.
Reported-by: Janusz Dziedzic <januszx.dziedzic@intel.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
(cherry picked from commit
5999914f227b20addf01297b3df24be6b4161f69)
Viorel Suman [Thu, 26 Oct 2017 11:54:54 +0000 (14:54 +0300)]
MLK-16700: ARM64: dts: imx8qm-mek: enable audio mixer
Enable audio mixer.
BuildInfo:
- SCFW
f5910b7d, IMX-MKIMAGE
2522fd70, ATF
a438801
- U-Boot
2017.03-00047-g8fe8d6d
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Peng Fan [Fri, 27 Oct 2017 10:02:45 +0000 (18:02 +0800)]
MLK-16716 nvmem: imx-scu-ocotp do not read invalid address
Fix: hexdump: /sys/bus/nvmem/devices/imx-ocotp0/nvmem: Input/output error
Address space [272,543] is invalid address space on 8QXP, reading from SCU
will get SC_ERR_PARAM. So ignore these words when reading fuse.
BuildInfo:
- SCFW
8dcff26, IMX-MKIMAGE
ea027c4b, ATF
- U-Boot 2017.03-imx_v2017.03_4.9.51_imx8_beta1+g6dc7b0f
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Fugang Duan [Mon, 30 Oct 2017 03:13:32 +0000 (11:13 +0800)]
MLK-16726 ARM64: dts: fsl-imx8qm-lpddr4-arm2: remove lpuart0 cts/rts pin
Since lpuart0 configure as console port only, cts/rts pins are not necessary.
And lpuart2 is moved into M4 partition that will use these two pins.
So remove the two pins from dts file.
BuildInfo:
- SCFW
88456c73, IMX-MKIMAGE
06bc2767, ATF
a438801
- U-Boot 2017.03-imx_v2017.03_4.9.51_imx8_beta1+g7953d47
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Reviewed-by: Ye Li <ye.li@nxp.com>
Fugang Duan [Fri, 27 Oct 2017 01:45:25 +0000 (09:45 +0800)]
MLK-16712 tty: serial: lpuart: keep per clock disabled during suspend
Keep per clock disabled during system suspend.
BuildInfo:
- SCFW
88456c73, IMX-MKIMAGE
06bc2767, ATF
a438801
- U-Boot 2017.03-imx_v2017.03_4.9.51_imx8_beta1+g7953d47
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Robin Gong [Fri, 27 Oct 2017 02:04:23 +0000 (10:04 +0800)]
MLK-16704-3: ARM64: configs: defconfig: add imx8_wdt
Enable imx8_wdt driver by default.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Robin Gong [Fri, 27 Oct 2017 02:02:44 +0000 (10:02 +0800)]
MLK-16704-2: ARM64: dts: freescale: imx8qm/qxp: add watchdog
add watchdog in dts.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Robin Gong [Fri, 27 Oct 2017 01:40:30 +0000 (09:40 +0800)]
MLK-16704-1: watchdog: imx8_wdt: add watchdog driver for i.mx8QM/QXP
This watchdog driver is a virtual driver in Linux and call ATF interface
where call SCFW eventually. In SCFW, it's done by SCU timer tick instead
of hardware watchdog.This is why we have to call ATF because such system
resource owned by secure patition.Currently, booard reset happen if not
ping this software watchdog in time in linux side, may change to partition
reboot once SCFW support this feature in the future.
BuildInfo:
- SCFW
93c142a9, IMX-MKIMAGE
2522fd70, ATF
f2547fb
- U-Boot
2017.03-00097-gd7599cf
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Frank Li [Thu, 26 Oct 2017 15:58:53 +0000 (10:58 -0500)]
MLK-16701 JPEG: add rum time pm support
Support run time pm
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Acked-by: Sandor Yu <sandor.yu@nxp.com>
Anson Huang [Fri, 27 Oct 2017 15:40:15 +0000 (23:40 +0800)]
MLK-16710 cpufreq: imx8mq: avoid duplicated OPP table initialization
On i.MX8MQ, since the OPP table is initialized in cpu-freq platform
device register according to chip type, so no need to redo the OPP
table initialization in cpu-freq driver, this patch adds check for
OPP table initialization to avoid below warning during boot up:
[ 1.468378] cpu cpu0: _opp_add: duplicate OPPs detected. Existing: freq: 1501
[ 1.468388] cpu cpu0: _opp_add: duplicate OPPs detected. Existing: freq: 1301
[ 1.468417] cpu cpu0: _of_add_opp_table_v1: Failed to add OPP
1300000000
[ 1.468425] cpu cpu0: _opp_add: duplicate OPPs detected. Existing: freq: 1001
[ 1.468434] cpu cpu0: _opp_add: duplicate OPPs detected. Existing: freq: 8001
[ 1.468443] cpu cpu0: _of_add_opp_table_v1: Failed to add OPP
800000000
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Anson Huang [Fri, 27 Oct 2017 10:34:16 +0000 (18:34 +0800)]
MLK-16705-3 ARM64: dts: freescale: imx8qxp: add resource wakeup support
Add wakeup unit to support resource wakeup management on i.MX8QXP,
also enable wakeup function for LPUARTx and FLEXCANx.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Anson Huang [Fri, 27 Oct 2017 10:31:59 +0000 (18:31 +0800)]
MLK-16705-2 ARM64: dts: freescale: imx8qm: add resource wakeup support
Add wakeup unit to support resource wakeup management on i.MX8QM,
also enable wakeup function for LPUARTx and FLEXCANx.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Anson Huang [Fri, 27 Oct 2017 10:24:12 +0000 (18:24 +0800)]
MLK-16705-1 soc: imx: pm-domains: add wakeup unit irqchip to manage wakeup source
For a resource enabled as wakeup source, its power needs to
be kept on during suspend, this is required by SCFW to support
wakeup ability for a resource.
This patch adds a virtual wakeup unit to support this function,
wakeup unit is registered as a irqchip being a child of GIC,
if a resource can be enabled as a wakeup source, needs to pass
its irq number in device tree power domain node using
"wakeup-irq = <x>" format, as power domain driver needs to map
the irq number to resource ID, also needs to assign its interrupt
parent to wakeup unit instead of GIC. During suspend, when power
domain driver intends to power off a resource, it will skip power
off operation if the resource is enabled as wakeup source.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Bai Ping [Fri, 27 Oct 2017 06:47:26 +0000 (14:47 +0800)]
MLK-16708 clk: imx: change the nand_usdhc_bus clock's source
Change NAND_USDHC_BUS clock's source to SYS PLL1 266M.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Ye Li [Fri, 27 Oct 2017 06:57:44 +0000 (01:57 -0500)]
MLK-16709 dts: imx8qm: Disable the UART2 on MEK base board
CM4_1 core will use the UART2 on QM MEK base board as its console. Since this port currently
is a backup debug port on A core side, not really used. We disable it in dts to yield the port
for CM4_1.
Signed-off-by: Ye Li <ye.li@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
Oliver Brown [Thu, 26 Oct 2017 00:15:01 +0000 (19:15 -0500)]
MLK-16702 soc:imx8qm/qxp Adding additional frequencies
Adding defines for 864 MHz and 432 MHz from the following commits:
"
commit
655ed33f3b2e158ea92ab96c3999a5bd73791d76
Author: Oliver Brown <oliver.brown@nxp.com>
Date: Thu Oct 26 11:49:49 2017 -0500
MIPI DSI V2: Adding define for 432 MHz.
"
"
commit
88456c73b3c1ffde496622f2e66614a46a073410
Author: Oliver Brown <oliver.brown@nxp.com>
Date: Tue Oct 17 10:53:58 2017 -0500
MIPI DSI: change the fixed clocks to allow for a 27MHz PHY reference clock.
"
Signed-off-by: Oliver Brown <oliver.brown@nxp.com>
Shengjiu Wang [Mon, 23 Oct 2017 03:12:33 +0000 (11:12 +0800)]
MLK-16694-2: ARM64: dts: fix assigned-clocks for audio device node
Even the clock is not used by current device, but it is used by
other devices, it also need to be included in the assigned-clocks
list. For in kernel side, clock rate is stored, but in scfw
the clock rate is cleared when power off, this mismatch cause
the parent rate is not set in next device, then children clock rate
is wrong.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Viorel Suman <viorel.suman@nxp.com>
Shengjiu Wang [Mon, 23 Oct 2017 03:06:12 +0000 (11:06 +0800)]
MLK-16694-1: ASoC: wm8960: add pm runtime for wm8960
As in imx8 mek board, the codec's mclk is from the audio subsystem,
the subsystem's power domain should be disabled when subsystem is idle.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Viorel Suman <viorel.suman@nxp.com>
Peter Chen [Mon, 16 Oct 2017 01:17:11 +0000 (09:17 +0800)]
MLK-16590 ARM64: dts: fsl-imx8qxp-mek: enable USB3 and PTN5110
All imx8qxp mek board will replace NTB0104 with NTS0104, so it is ok
to enable PTN5110 and USB3 by default, see below commit for detail:
commit
5989fe321b3026 ("MLK-16522-4 ARM64: dts: fsl-imx8qxp-mek:
add USB3 support")
BuildInfo:
- SCFW
1f59442e, IMX-MKIMAGE
fb52c576, ATF
- U-Boot 2017.03-imx_v2017.03+g34be5a2
Acked-by: Li Jun <jun.li@nxp.com>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
Weiguang Kong [Mon, 23 Oct 2017 01:42:08 +0000 (09:42 +0800)]
MLK-16678-2: ASoC: fsl_hifi4: move hifi4 firmware to SDRAM
move hifi4 dsp firmware's code and data section to SDRAM space
move hifi4 dsp codec lib's code section to SDRAM space
Signed-off-by: Weiguang Kong <weiguang.kong@nxp.com>
Weiguang Kong [Mon, 23 Oct 2017 01:36:04 +0000 (09:36 +0800)]
MLK-16678-1: arm64: dts: distribute reserved memory for hifi4 dsp in SDRAM
Because the OCRAM memory size for hifi4 dsp is too small to keep its
code and data section, so distribute one reserved memory for hifi4 dsp
to save its code and data section in SDRAM, the address space that hifi4
can access in SDRAM is 0x81000000 - 0x9FFFFFFF, so the reserved memory
is as following:
hifi4_reserved: hifi4@0x8e000000 {
no-map;
reg = <0 0x8e000000 0 0x1ffffff>;
};
Signed-off-by: Weiguang Kong <weiguang.kong@nxp.com>
Weiguang Kong [Wed, 25 Oct 2017 10:16:21 +0000 (18:16 +0800)]
MLK-16691: ASoC: fsl_hifi4: unlock mutex before return error
When error occurs in fsl_hifi4_open() function, before this
function exists, "hifi4_priv->hifi4_mutex" should be unlocked.
If not, when the device is opened next time, the kernel will
be hanged.
Signed-off-by: Weiguang Kong <weiguang.kong@nxp.com>
Jason Liu [Tue, 24 Oct 2017 22:29:19 +0000 (06:29 +0800)]
MLK-16688 driver: media: mxc_jpeg: Remove the unused function to kill the build warnnings
The patch fixes the following build warnnings by removing unused function:
drivers/media/platform/imx8/mxc-jpeg.c:228:13: warning: ‘print_output’ defined
but not used [-Wunused-function]
static void print_output(void *addr)
^~~~~~~~~~~~
This patch also does the minor clean up by removing some commented-out code
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
Acked-by: Fugang Duan <fugang.duan@nxp.com>
Richard Zhu [Wed, 25 Oct 2017 02:48:48 +0000 (10:48 +0800)]
MLK-16684-3 ata: imx: enable imx8qm sata
enable sata on imx8qm.
sata function is relied on the usage of pcie ports.
BuildInfo:
- SCFW
9559d5ec, IMX-MKIMAGE
06bc2767, ATF
- U-Boot 2017.03-imx_v2017.03_4.9.51_imx8_beta1+g6dc7b0f
Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Wed, 25 Oct 2017 02:47:40 +0000 (10:47 +0800)]
MLK-16684-2 clk: imx: correct the pd of the sata phy pclk
Correct the pd of the sata phy pclk.
BuildInfo:
- SCFW
9559d5ec, IMX-MKIMAGE
06bc2767, ATF
- U-Boot 2017.03-imx_v2017.03_4.9.51_imx8_beta1+g6dc7b0f
Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Richard Zhu [Mon, 19 Jun 2017 03:14:10 +0000 (11:14 +0800)]
MLK-16684-1 ARM: dts: enable imx8qm sata
- enable imx8qm sata.
- correct sata power supply.
- sata clks:
satahost_clk hsio_lpcg_sata
phyx1_pclk phyx1_lpcg
phyx1_epcs_tx_clk phyx1_lpcg
hyx1_epcs_rx_clk phyx1_lpcg
phyx2_pclk0 phyx2_lpcg
phyx2_pclk1 phyx2_lpcg
BuildInfo:
- SCFW
9559d5ec, IMX-MKIMAGE
06bc2767, ATF
- U-Boot 2017.03-imx_v2017.03_4.9.51_imx8_beta1+g6dc7b0f
Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Frank Li [Fri, 20 Oct 2017 21:47:30 +0000 (16:47 -0500)]
MLK-16645-4 JPEG: Encode: fix wrong use dma descriptor address
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Acked-by: Sandor Yu <sandor.yu@nxp.com>
Frank Li [Fri, 20 Oct 2017 21:34:37 +0000 (16:34 -0500)]
MLK-16645-3 JPEG: fixed crash caused by call dma_free_coherence in irq
move dma_free_coherence function to buf_cleanup
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Acked-by: Sandor Yu <sandor.yu@nxp.com>
Frank Li [Fri, 20 Oct 2017 17:56:06 +0000 (12:56 -0500)]
MLK-16645-2: dts: qxp: Enable JPEG encode/decode IP
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Acked-by: Sandor Yu <sandor.yu@nxp.com>
Frank Li [Fri, 20 Oct 2017 17:55:07 +0000 (12:55 -0500)]
MLK-16645-1: clk: mx8qxp: correct JPEG clock source
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Acked-by: Sandor Yu <sandor.yu@nxp.com>
Viorel Suman [Tue, 24 Oct 2017 10:09:27 +0000 (13:09 +0300)]
MLK-13946-8: ASoC: fsl_sai: use min(channels,slots) for xMR setting
xMR setting must be set as min(channels,slots) since
both "channels < slots" and "channels > slots" scenarios
are possible.
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Anson Huang [Wed, 25 Oct 2017 14:55:26 +0000 (22:55 +0800)]
MLK-16690 ARM64: dts: freescale: imx8qm: update A53 cpu-freq table
SCFW removes A53 1.26GHz cpu-freq set-point, update it
for linux kernel cpu-freq driver accordingly.
SCFW patch: (
674c078 Fix CPU frequency related issues)
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Zhou Peng-B04994 [Wed, 25 Oct 2017 01:13:15 +0000 (09:13 +0800)]
MLK-16671-5 - [i.MX8QXP/Malone]: Add vpu malone decoder driver
Change statement from LGPL to GPL for malone header files
Signed-off-by: Zhou Peng-B04994 <eagle.zhou@nxp.com>
Zhou Peng-B04994 [Tue, 24 Oct 2017 08:41:59 +0000 (16:41 +0800)]
MLK-16671-4 - [i.MX8QXP/Malone]: Add vpu malone decoder driver
Only build malone for ARCH_MXC_ARM64
Signed-off-by: Zhou Peng-B04994 <eagle.zhou@nxp.com>
Zhou Peng-B04994 [Tue, 24 Oct 2017 07:47:19 +0000 (15:47 +0800)]
MLK-16671-3 - [i.MX8QXP/Malone]: Add vpu malone decoder driver
Refine makefile to fix yocto build issue:
Remove redundant space after -D and -I
Signed-off-by: Zhou Peng-B04994 <eagle.zhou@nxp.com>
Anson Huang [Mon, 23 Oct 2017 12:46:04 +0000 (20:46 +0800)]
MLK-16681-2 ARM64: dts: freescale: imx8mq: update cpu-freq set-points
Update cpu-freq set-points according to datasheet Rev-E:
Normal Over-Drive
Consumer 1GHz@0.9V 1.5GHz@1V
Industrial 800MHz@0.9V 1.3GHz@1V
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Anson Huang [Mon, 23 Oct 2017 12:36:10 +0000 (20:36 +0800)]
MLK-16681-1 soc: imx: add speed grading check for i.MX8MQ different parts
i.MX8MQ has different parts like consumer, industrial and auto etc.,
different parts have different cpu-freq set-points, this patch adds
fuse check to select correct cpu-freq set-points for each part. The
default dtb has all set-points available, then kernel will check fuse
to disable those unused set-points, definition as below:
OCOTP offset 0x440, bit [7:6]
'00' - Consumer 0C to 95C
'01' - Ext. Consumer -20C to 105C
'10' - Industrial -40C to 105C
'11' - Automotive -40C to 125C
cpu-freq set-points definition as below (datasheet Rev-E):
Normal Over-Drive
Consumer 1GHz@0.9V 1.5GHz@1V
Industrial 800MHz@0.9V 1.3GHz@1V
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Bai Ping <ping.bai@nxp.com>
Zhou Peng-B04994 [Mon, 23 Oct 2017 02:58:55 +0000 (10:58 +0800)]
MLK-16671-2 - [i.MX8QXP/Malone]: Add vpu malone decoder driver
Add vpu module in device tree and makefile
Signed-off-by: Zhou Peng-B04994 <eagle.zhou@nxp.com>
Anson Huang [Fri, 20 Oct 2017 15:57:21 +0000 (23:57 +0800)]
MLK-16676-5 ARM64: dts: freescale: imx8qxp: add debug_console property
Pass debug_console port info for power domain awareness.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Fri, 20 Oct 2017 15:55:34 +0000 (23:55 +0800)]
MLK-16676-4 ARM64: dts: freescale: imx8qm: add debug_console property
Pass debug_console port info for power domain driver awareness.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Fri, 20 Oct 2017 15:52:41 +0000 (23:52 +0800)]
MLK-16676-3 soc: imx: pm-domains: add debug console power management
On i.MX8QM/i.MX8QXP, when "no_console_suspend" is added,
need to keep debug uart power on for debug message output,
support this case by reading debug uart resource from
dtb and checking console suspend settings.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Fri, 20 Oct 2017 15:49:42 +0000 (23:49 +0800)]
MLK-16676-2 ARM64: dts: freescale: imx8qm: add early_power_on for intmux
On i.MX8QM, intmux is registered as irq chip driver,
it resumes earlier then generic power domain, so need
to add early_power_on property.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Anson Huang [Fri, 20 Oct 2017 15:42:24 +0000 (23:42 +0800)]
MLK-16676-1 soc: imx: pm-domains: support multiple early_power_on resource
On i.MX8QM/i.MX8QXP, there could be multiple resources
need to be powered on earlier after resume, current variable
of index could be reset for different power domain nodes and
cause resource id overwrite issue, fix the array index type
to support multiple early power on case.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Viorel Suman [Thu, 19 Oct 2017 14:07:38 +0000 (17:07 +0300)]
MLK-16481: ASoC: fsl: amix: remove automatic OUTSRC selection
Refactor AMIX driver by removing automatic OUTSRC selection
and enforcing OUTSRC transition constraints as specified in
AMIX documentation, "Mixer output processing" chapter.
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
Daniel Baluta [Wed, 18 Oct 2017 11:15:37 +0000 (14:15 +0300)]
MLK-16607: arm64: fsl-imx8qm-mek: Add headphone detect property
With this patch 'Playback Volume' control is now usable and
we can notice that the sound volume changes.
BuildInfo:
- SCFW
f5910b7d, IMX-MKIMAGE
fb52c576, ATF
a438801
- U-Boot
2017.03-00047-g8fe8d6d
Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Shengjiu Wang [Thu, 19 Oct 2017 07:06:37 +0000 (15:06 +0800)]
MLK-16674: ASoC: fsl_hifi4: enable pm runtime for hifi4
Enable pm runtime for hifi4, so the firmware may load many times,
The shdr->sh_addr can't be refined in hifi4_load_firmware, otherwise
it should impact the load operation in next time.
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Zhou Peng-B04994 [Fri, 20 Oct 2017 05:06:34 +0000 (13:06 +0800)]
MLK-16671-1 - [i.MX8QXP/Malone]: Add vpu malone decoder driver
Integrate amphion release kernel functions
Signed-off-by: Zhou Peng-B04994 <eagle.zhou@nxp.com>
Sandor Yu [Wed, 18 Oct 2017 09:29:20 +0000 (17:29 +0800)]
MLK-16603: dtb: Disable imx8qm native hdmi/dp driver in it6263 dtb
Only 25% iMX8QM SOC chip can support DP/HDMI function now.
We may not find enough hdmi/dp work SOC chip for everyone.
So lvds-hdmi display is the prime display for iMX8QM ARM2 board.
Disable imx8qm native hdmi/dp driver in it6263 dtb
make sure lvds-hdmi display is working with
hdmi/dp function failed chip.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
(cherry picked from commit
d4235299d583126edb5996e008be5366590252ee)
Sandor Yu [Thu, 19 Oct 2017 07:08:26 +0000 (15:08 +0800)]
MLK-16614: dtb: Add mipi csi support in imx8qxp mek board
Enable mipi csi driver imx8qxp mek board.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Sandor Yu [Thu, 19 Oct 2017 07:02:13 +0000 (15:02 +0800)]
MLK-16613: dtb: Add mipi csi support in imx8qm mek board
Enable mipi csi driver in imx8qm mek board.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Han Xu [Thu, 19 Oct 2017 21:07:45 +0000 (16:07 -0500)]
MLK-16669: arm64: dts: access nor chip via lpspi on i.MX8QXP ARM2 base board
To access the nor chip on i.MX8QXP ARM2 base board, enable the lpspi in
device tree, the gpio_cs is also needed.
BuildInfo:
- SCFW
9e9f6ec6, IMX-MKIMAGE
e1b3bc76, ATF 0
- U-Boot
2017.03-00072-gfdcf70a
Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Han Xu <han.xu@nxp.com>
Zhou Peng-B04994 [Thu, 21 Sep 2017 03:52:38 +0000 (11:52 +0800)]
MLK-16502 - [i.MX8MQ/Hantro]: Implement dynamic clock adjustement in high temperature
Register thermal notifier and implment dynamic clock
- One module parameter is added to enable or disable dynamic clock: 'hantro_dynamic_clock'
Default, dynamic clock is disabled
- One module parameter is added to adjust ratio: 'hantro_clock_ratio'
Default, decrease to 1/2 clock when receiving hot event
Signed-off-by: Zhou Peng-B04994 <eagle.zhou@nxp.com>
guoyin.chen [Thu, 19 Oct 2017 11:00:02 +0000 (19:00 +0800)]
MA-10480 Make CONFIG_I2C_IMX to depend on CONFIG_ARCH_MXC_ARM64
imx8mscale evk uses the i2c imx driver to control the pfuze driver
otherwise pfuze driver wont be probed with I2C_IMX
Change-Id: Iaeacde58a4cbe34a3d18cb16814d2334c74c2b79
(cherry-picked from commit
ad7200824fa740a1fe9d418d3f949ff97b083bdf)
Signed-off-by: guoyin.chen <guoyin.chen@nxp.com>
Li Jun [Mon, 16 Oct 2017 15:13:19 +0000 (23:13 +0800)]
MLK-16576 usb: phy: mxs: set hold_ring_off for USB2 PLL power up
USB2 PLL use ring VCO, when the PLL power up, the ring VCO’s supply also
ramp up. There is a possibility that the ring VCO start oscillation at
multi nodes in this phase, especially for VCO which has many stages, then
the multiwave will kept until PLL power down. Hold_ring_off(bit11) can
force the VCO in one determined state when VCO supply start ramp up, to
avoid this multiwave issue. Per IC design's suggestion it's better this
bit can be off from 25us after pll power up to 25us before USB TX/RX.
Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
(cherry picked from commit
a094377f04c9ed2c8e702ee7bfab843caa03eb96)
Dong Aisheng [Wed, 18 Oct 2017 12:54:16 +0000 (20:54 +0800)]
MLK-16606-4 arm64: dts: imx8qm-mek: add flexcan support
CAN0 and CAN1 share the same transceiver STBY and EN signals while
CAN2 uses a separated one.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Wed, 18 Oct 2017 12:44:30 +0000 (20:44 +0800)]
MLK-16606-3 arm64: dts: imx8qm-mek: add pca6416 IO expander support
NXP pca6416 is compatible with TI tca6416 and it's on M41 I2C bus.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Wed, 18 Oct 2017 10:54:43 +0000 (18:54 +0800)]
MLK-16606-2 arm64: dts: imx8qm: add M40 and M41 I2C devices
add M40 and M41 I2C devices
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Dong Aisheng [Thu, 12 Oct 2017 11:43:39 +0000 (19:43 +0800)]
MLK-16606-1 clk: imx8qm: add M4 I2C clocks
There're two M4 I2C instances in MX8QM.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Richard Zhu [Tue, 17 Oct 2017 06:23:40 +0000 (14:23 +0800)]
MLK-16595 rpmsg: imx: enable multi-core string demo
Because that there are two M4 cores on iMX8QM.
Enable the multi-core string echo support.
BuildInfo:
- SCFW
a6fd9a48, IMX-MKIMAGE 0, ATF 0
- U-Boot 2017.03-imx_v2017.03_4.9.11_imx8_alpha+g258936c
Reviewed-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Han Xu [Wed, 18 Oct 2017 20:52:37 +0000 (15:52 -0500)]
MLK-16609: arm64: dts: support flexspi on i.MX8QM MEK
add device tree node to support flexspi on i.MX8QM MEK board.
BuildInfo:
- SCFW
9e9f6ec6, IMX-MKIMAGE
e1b3bc76, ATF 0
- U-Boot
2017.03-00072-gfdcf70a
Signed-off-by: Han Xu <han.xu@nxp.com>
Shengjiu Wang [Mon, 16 Oct 2017 08:12:39 +0000 (16:12 +0800)]
MLK-16601: ARM64: dts: imx8mq: support spdif on mscale evk
Enable the spdif1 on mscale evk, the tx is tested with fly wire to
MX51EXP (sch-26109) board, rx is not tested(waiting the audio board).
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
Sandor Yu [Tue, 17 Oct 2017 11:13:23 +0000 (19:13 +0800)]
MLK-16597: hdmi: Fix kernel dump issue
Kernel will dump when CONFIG_CC_STACKPROTECTOR_STRONG is enable.
[ 2.675537] CDN_API_HDMITX_Set_Mode_blocking ret = 0
[ 2.675550] Kernel panic - not syncing: stack-protector: Kernel stack
is corrupted in:
ffff000008ad5a50
[ 2.675550]
[ 2.675557] CPU: 2 PID: 1553 Comm: kworker/2:2 Not tainted
4.9.56-641868-gead64f8 #12
[ 2.675559] Hardware name: Freescale i.MX8MQ EVK (DT)
[ 2.675576] Workqueue: events deferred_probe_work_func
[ 2.675578] Call trace:
[ 2.675587] [<
ffff00000808974c>] dump_backtrace+0x0/0x1d0
[ 2.675594] [<
ffff000008089930>] show_stack+0x14/0x1c
[ 2.675602] [<
ffff000008401650>] dump_stack+0x8c/0xac
[ 2.675609] [<
ffff0000081b0b24>] panic+0x13c/0x2a8
[ 2.675617] [<
ffff0000080c5ec4>] print_tainted+0x0/0xa4
[ 2.675624] [<
ffff000008ad5a50>] Afe_write+0x0/0x50
[ 2.675632] [<
ffff00000849aff0>] hdmi_init.constprop.3+0x188/0x1d0
[ 2.675638] [<
ffff00000849b264>] imx_hdmi_probe+0x22c/0x2ac
[ 2.675645] [<
ffff0000086d543c>] platform_drv_probe+0x50/0xc8
[ 2.675650] [<
ffff0000086d3530>] driver_probe_device+0x218/0x2b8
[ 2.675655] [<
ffff0000086d3710>] __device_attach_driver+0x98/0xe8
[ 2.675660] [<
ffff0000086d126c>] bus_for_each_drv+0x60/0xb0
[ 2.675665] [<
ffff0000086d31bc>] __device_attach+0xd4/0x128
[ 2.675669] [<
ffff0000086d38f8>] device_initial_probe+0x10/0x18
[ 2.675674] [<
ffff0000086d275c>] bus_probe_device+0x90/0x98
[ 2.675679] [<
ffff0000086d2bf0>] deferred_probe_work_func+0x7c/0xb0
[ 2.675685] [<
ffff0000080e1580>] process_one_work+0x144/0x434
[ 2.675690] [<
ffff0000080e1ec4>] worker_thread+0x200/0x4a4
[ 2.675696] [<
ffff0000080e81f0>] kthread+0xf0/0x104
[ 2.675701] [<
ffff000008082e80>] ret_from_fork+0x10/0x50
It is cause by array variable access exceed.
Fixed it with correct array size.
Signed-off-by: Sandor Yu <Sandor.yu@nxp.com>
Liu Ying [Wed, 18 Oct 2017 02:43:20 +0000 (10:43 +0800)]
MLK-16600 gpu: imx: dpu: common: Initialize pixel link in resume() only if necessary
We should initialize pixel link in resume() for DPUv2 which
has pixel link quirks, but not for DPUv1 which hasn't the quirks.
Fixes:
0d7fa2aa1a9f ("MLK-16581-6 gpu: imx: dpu: Add system power management support")
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Richard Zhu [Mon, 16 Oct 2017 02:18:07 +0000 (10:18 +0800)]
MLK-16586-3 rpmsg: imx: enable multi-core rpmsg
- Init multi-core mu power and clk.
- enable the multi-core rpmsg support
BuildInfo:
- SCFW
a6fd9a48, IMX-MKIMAGE 0, ATF 0
- U-Boot 2017.03-imx_v2017.03_4.9.11_imx8_alpha+g258936c
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Tested-by: Andy Duan <fugang.duan@nxp.com>
Richard Zhu [Mon, 9 Oct 2017 08:23:50 +0000 (16:23 +0800)]
MLK-16586-2 ARM64: dts: imx: enable multi-core rpmsg support
Because there are two m4 cores on imx8qm,
enable imx8qm multi-core rpmsg support
BuildInfo:
- SCFW
a6fd9a48, IMX-MKIMAGE 0, ATF 0
- U-Boot 2017.03-imx_v2017.03_4.9.11_imx8_alpha+g258936c
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Reviewed-by: Andy Duan <fugang.duan@nxp.com>
Tested-by: Andy Duan <fugang.duan@nxp.com>
Richard Zhu [Mon, 9 Oct 2017 08:25:33 +0000 (16:25 +0800)]
MLK-16586-1 clk: imx8qm: add the cm41 ipg clk
Add the cm41 ipg clk
BuildInfo:
- SCFW
a6fd9a48, IMX-MKIMAGE 0, ATF 0
- U-Boot 2017.03-imx_v2017.03_4.9.11_imx8_alpha+g258936c
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
Reviewed-by: Robin Gong <yibin.gong@nxp.com>
Reviewed-by: Dong Aisheng <aisheng.dong@nxp.com>
Tested-by: Andy Duan <fugang.duan@nxp.com>
Ranjani Vaidyanathan [Thu, 28 Sep 2017 18:48:23 +0000 (13:48 -0500)]
MLK16557 soc:imx8qm/imx8qx - Resources can request low power idle mode only when runtime-pm is enabled.
Some drivers use runtime PM callbacks during suspend/resume also and this
in turn results in SCFW calls requesting the resource to enter
low power idle instead OFF state.
This patch fixes this issue by ensuring that low power IDLE request is only
valid when runtime PM is enabled. Runtime PM is disabled when the system is
entering suspend state.
BuildInfo: SCFW
7a725203, IMX-MKIMAGE
ee6adff0, ATF 0
Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
Yuchou Gan [Mon, 16 Oct 2017 17:29:36 +0000 (01:29 +0800)]
MGS-2717-2 [#ccc] Error message printed on board that didn't support gpu govern when rmmod galcore
When rmmod galcore.ko on boards that didn't support gpu govern,
some error message will be printed on console, do something to prevent this.
Date: Oct 16, 2017
Signed-off-by: Yuchou Ganyuchou.gan@nxp.com
Reviewed-by: Xianzhong xianzhong.li@nxp.com
Reviewed-by: Prabhu Sundararaj prabhu.sundararaj@nxp.com
Liu Ying [Fri, 13 Oct 2017 05:22:16 +0000 (13:22 +0800)]
MLK-16581-7 drm/imx: ldb: Add system power management support
This patch adds system power management support for imx-ldb drm driver
by proper PHY power/exit/init handling where necessary and pixel link
re-initialization in the resume operation. The driver depends on the
imx-drm core driver to handle ldb bridge power management operations.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Liu Ying [Fri, 13 Oct 2017 05:08:41 +0000 (13:08 +0800)]
MLK-16581-6 gpu: imx: dpu: Add system power management support
The dpu core driver currently depends on the client drivers
to do suspend operations to leave dpu a cleaned up state
machine status before the system enters sleep mode. When the
system resumes, the dpu core driver resume operation will
re-initialize the machine state by enabling intsteer lines,
re-initializing pixel links and re-initializing dpu sub-units.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Liu Ying [Fri, 13 Oct 2017 05:05:47 +0000 (13:05 +0800)]
MLK-16581-5 gpu: imx: dpu: common: Add helper dpu_intsteer_enable_lines() support
This patch adds helper dpu_intsteer_enable_lines() support so that
users may enable intsteer lines with one function call.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Liu Ying [Fri, 13 Oct 2017 04:33:39 +0000 (12:33 +0800)]
MLK-16581-4 gpu: imx: framegen: Get pll & pixel clock rates before setting their rates
Due to i.MX8 clock issue, we need to get pll and pixel clock rates
before setting their rates when system resumes back from PM sleep mode,
otherwise, we'll fail to set the clock rates. So, this is a workaround
and it can be removed when the clock issue is properly fixed.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Liu Ying [Fri, 13 Oct 2017 04:30:46 +0000 (12:30 +0800)]
MLK-16581-3 drm/imx: ldb: Get bypass & pixel clock rates before setting their rates
Due to i.MX8 clock issue, we need to get bypass and pixel clock rates
before setting their rates when system resumes back from PM sleep mode,
otherwise, we'll fail to set the clock rates. So, this is a workaround
and it can be removed when the clock issue is properly fixed.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Liu Ying [Fri, 13 Oct 2017 03:47:51 +0000 (11:47 +0800)]
MLK-16581-2 phy: mixel-lvds-combo: Get PHY clock rate before setting it's rate
Due to i.MX8 clock issue, we need to get PHY clock rate
before setting it's rate when system resumes back from
PM sleep mode, otherwise, we'll fail to set the clock rate.
So, this is a workaround and it can be removed when
the clock issue is properly fixed.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Liu Ying [Fri, 13 Oct 2017 03:37:18 +0000 (11:37 +0800)]
MLK-16581-1 phy: mixel-lvds: Get PHY clock rate before setting it's rate
Due to i.MX8 clock issue, we need to get PHY clock rate
before setting it's rate when system resumes back from
PM sleep mode, otherwise, we'll fail to set the clock rate.
So, this is a workaround and it can be removed when
the clock issue is properly fixed.
Signed-off-by: Liu Ying <victor.liu@nxp.com>
Chris Wilson [Wed, 7 Dec 2016 21:45:27 +0000 (21:45 +0000)]
drm: Take ownership of the dmabuf->obj when exporting
Currently the reference for the dmabuf->obj is incremented for the
dmabuf in drm_gem_prime_handle_to_fd() (at the high level userspace
interface), but is released in drm_gem_dmabuf_release() (the lowlevel
handler). Improve the symmetry of the dmabuf->obj ownership by acquiring
the reference in drm_gem_dmabuf_export(). This makes it easier to use
the prime functions directly.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
[danvet: Update kerneldoc.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20161207214527.22533-1-chris@chris-wilson.co.uk
Cherry-picked
72a93e8dd52c9feea42f1258d555e6070680a347 from
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/
This is required by VSI to implement DRM support.
Signed-off-by: Marius Vlad <marius-cristian.vlad@nxp.com>
Acked-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
Han Xu [Thu, 12 Oct 2017 22:15:26 +0000 (17:15 -0500)]
MLK-16571-5: arm: dts: i.MX7ULP LPSPI IPG clock change
i.MX7ULP LPSPI also use both ipg/per clock for the module, which ipg
clock was not exposed. Add one dummy clock as ipg clock to make the
lpspi code neat and clear.
Reviewed-by: Pan Gao <pandy.gao@nxp.com>
Signed-off-by: Han Xu <han.xu@nxp.com>