Age | Commit message (Collapse) | Author |
|
when the app is killed, the kernel driver will free database from the gpu0.
if the app is running on gpu1, its database may be freed by gpu0 unexpectely.
need check kernel pointer in record to prevent the incorrect database free.
Date: Oct 17, 2016
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
|
|
apply the gpu hang patch for multiple instances
001-IMX101-15870-04-cl81286-Fixed-ES31-CTS.core.tessellation_shader.tessellation_shader_tc_barriers.barrier_guarded_write_calls-hang.patch
apply the debug patch for gpu module clock
0014-cl83047-added-debug-control-for-new-module-s-clock-gating.patch
Date: Nov 11, 2016
Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
|
|
Limited baseAddress offset only for GPU without MC20 feature.
Date: Oct 14, 2016
Signed-off-by: Yong Gan <yong.gan@nxp.com>
|
|
When usdhc driver remove, also need to release bus frequency.
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
|
|
Add support for the epop i.MX6SX SCM EVB board
The epop variant contains an eMMC(512MB) within the
POP package.
Support the next features for epop 6sxscm EVB:
- Regular epop board
- M4 support
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
|
|
Add the generic dtsi configuration to support EMMC on the
i.MX6SX SCM platforms
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
|
|
Add the generic dtsi configuration support for the i.MX6SX SCM
platforms with 512MB of DDR memory mapping.
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
|
|
Add support for the 1gb i.MX6SX SCM EVB board
Support the next features for 1Gb 6sxscm EVB:
- Regular 1gb board
- M4 support
- MQS
- SAI sound card
- LCD and HDMI with sii902x support
- Bluetooth and Wifi Murata ZP SDIO dongle
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
|
|
Add the generic dts configuration support, including BT and
Wifi for the i.MX6SX SCM Evaluation Board (EVB)
- Generic DTS for 6SXSCM EVB
- Bluetooth and Wifi
- LDO enabled
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
|
|
The initial version is wrong, fix it.
Signed-off-by: Robin Gong <yibin.gong@nxp.com>
|
|
Add Micrel phy initialization for imx6sxscm evb platform
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
|
|
When a device like (USB, CAMM, tty, etc) prevents the megamix
domain to power down during the suspend process (by enabling
a wakeup source) the resume process goes through a path where
the MMDC context should not be restored. However this resume
path does not reset the read fifo MMDCx_MPDGCTRL0[RST_RD_FIFO]
for the platforms with LPDDR2 causing a bad resuming and reset
of the device due to an exception.
This patch adds the reset_read_fifo on the No-restoring-MMDC
path to fix the bad resuming.
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
Signed-off-by: Alejandro Sierra <b18039@freescale.com>
|
|
vring memory address was hardcoded at the top of the 1GB RAM.
For systems with a memory map with less or different than 1GB,
the hardcoded value might be not correct and cause issues.
This patch add the support to pass the vring address from device
tree configuration on the reg platform argument in the following
format:
reg = <vring_address vring_size>
For example, for a 512MB system, with the rpmgs vring placed at
top of the memory the configuration will look like below:
&rpmsg{
reg = <0x9FFF0000 0x8000>;
};
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
|
|
Add Murata Type ZP (BCM4339) module support on i.MX6SLL platforms:
- i.MX6SLL EVK (SD3 slot + BT connector) + Murata adapter V2.0
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
|
|
This reverts commit 3d7dd5ec903bc867c0274ac871b707839712f832.
This commit is wrongly pushed and also it breaks build, revert it.
Signed-off-by: Jason Liu <jason.hui.liu@nxp.com>
|
|
Add support for SCM i.MX6DQ 1Gb Evaluation Board (EVB).
Support the next features for 1Gb EVB boards:
- Support for fix and interleave mode
- For fix mode additional dts are provided for:
- hdcp
- enetirq
- bluetooth and wifi for Murata ZP SDIO dongle
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
|
|
Add support for SCM i.MX6DQ 1Gb Quick Start Board (QWKS).
Support the next features for 1Gb QWKS boards:
- Support for fix and interleave mode
- For fix mode additional dts are provided for
- hdcp
- Wifi with Murata ZP SDIO dongle
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
|
|
Add the generic dtsi configuration support for the SCM i.MX6DQ
QWKS and EVB board with 1GB of DDR memory mapping
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
|
|
Add the generic dtsi configuration support, including
Wifi, for the SCM i.MX6DQ Quick Start Board (QWKS)
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
|
|
Add the support for a CT36X based touchscreens using
the CT36X controller and i2c touchscreen interface.
Signed-off-by: Alejandro Lozano <alejandro.lozano@nxp.com>
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
Signed-off-by: Alejandro Sierra <alejandro.sierra@nxp.com>
|
|
MMDC is a multi-mode DDR controller that supports DDR3/DDR3L x16/x32/x64
and LPDDR2 two channel x16/x32 memory types. MMDC is configurable, high
performance, and optimized. MMDC is present on i.MX6 Quad and i.MX6
QuadPlus devices, but this driver only supports i.MX6 Quad at the moment.
MMDC provides registers for performance counters which read via this
driver to help debug memory throughput and similar issues.
$ perf stat -a -e mmdc/busy-cycles/,mmdc/read-accesses/,mmdc/read-bytes/,mmdc/total-cycles/,mmdc/write-accesses/,mmdc/write-bytes/ dd if=/dev/zero of=/dev/null bs=1M count=5000
Performance counter stats for 'dd if=/dev/zero of=/dev/null bs=1M count=5000':
898021787 mmdc/busy-cycles/
14819600 mmdc/read-accesses/
471.30 MB mmdc/read-bytes/
2815419216 mmdc/total-cycles/
13367354 mmdc/write-accesses/
427.76 MB mmdc/write-bytes/
5.334757334 seconds time elapsed
Signed-off-by: Zhengyu Shen <zhengyu.shen@nxp.com>
Signed-off-by: Frank Li <frank.li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
Add i.MX6SLL support in imx_v7_mfg_defconfig.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
suspend
When suspend usdhc, it will access usdhc register. So usdhc clock
should be enabled, otherwise the access usdhc register will return
error or cause system.
Take this into consideration, if system enable a usdhc and do not
connect any SD/SDIO/MMC card, after system boot up, this usdhc
will do runtime suspend, and close all usdhc clock. At this time,
if suspend the system, due to no card persent, usdhc runtime resume
will not be called. So usdhc clock still closed, then in suspend,
once access usdhc register, system hung or bus error return.
This patch make sure usdhc clock always enabled while doing usdhc
suspend.
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
|
|
1.8v of imx7d pcie phy, should be turned on after
the 1p0d(1.0v) of pcie phy is turned on.
And turned off before the 1p0d(1.0v) of pcie phy
is turned off
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
|
|
Add one new regulator events macro 'REGULATOR_EVENT_AFT_DO_ENABLE'.
1.8v of imx7d pcie phy, should be turned on after
the 1p0d(1.0v) of pcie phy is turned on.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
|
|
Add the AFT_ENABLE event macros, because that
1.8v of imx7d pcie phy, should be turned on after
the 1p0d(1.0v) of pcie phy is turned on.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
|
|
Do not set the override bit of 1p0d regulator.
Because, the 1p0d and the vdd1.8v should be turned on
separately by the requirements of the imx7d pcie phy.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
|
|
The ep rc validation is failed on imx6dl.
Root cause:
The ref clk of imx6dl pcie is 100M(bit20 of PLL_ENET).
But the driver doesn't enable it.
Solution:
enable pci_bus clock in ep rc validation system, since
the parent of the pci_bus is the 100M.
The connection between ep and rc only have the TX/RX
parirs, there is no impaction when enable the pcie_bus
in pcie ep rc validation system.
Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com>
|
|
Add PXP V4L2 output support
Signed-off-by: Robby Cai <robby.cai@nxp.com>
|
|
Enable USBOTG1
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|
As on i.MX6SLL, there is no ARM LDO, the code for ARM LDO
bypass check is unnecessary, remove these piece of code in
i.MX6SLL low power idle.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
This reverts commit 2c01452f4d7c0f65553b365adc27a1b7b6ba8644.
Besides, add other SoC request high bus freq. This is because
only imx6qdl do not implement low bus idle, so imx6qdl can work
well under low power mode without request high bus freq which
also can save power. For other SoC, need to request high bus
freq when usdhc is active.
Also can refer to commit 312979d1fcbd.
|
|
The timing settings for 100MHz are almost the same as the ones for
400MHz except for the MMDCx_MISC[RALAT] parameter which needs to be
set to 2 cycles.
For the 100MHz case the restoration of the mmdc setting should be performed
in 2 steps: restore the mmdc setting and then overwrite the RALAT setting
for 2 cycles.
A decision code within the "mmdc_clk_lower_equal_100MHz" macro is added
to go to the "equal to 100MHz" or to the "lower to 100MHz" case
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
Signed-off-by: Alejandro Lozano <alejandro.lozano@nxp.com>
|
|
Setting the Read Additional Latency (RALAT) to 2 cycles,
MMDCx_MDMISC[RALAT] = 2, is needed for 24MHz operation point.
Currently this is set within the "set_timings_below_100MHz_operation"
macro, which is use for the 24MHz case.
In order to provide a generic way for setting RALAT=2 the code
is wrapped in this new macro: "set_mmdc_misc_ralat_2_cycles", so
other set points (besides the below 100MHz case) can reuse this code.
As an example, for 100Mhz operation the RALAT should be set to 2 cycles,
however, the rest of the MMDCFG parameter are not the same as in the
"below_100MHz" case. So, this macro can be reused for its RALAT part.
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
|
|
Two macros are renamed:
1) set_timings_above_100MHz_operation as restore_mmdc_settings_info
2) mmdc_clk_lower_100MHz as mmdc_clk_lower_equal_100MHz
For (1) the operation is generic to several cases and not just related
(at least on a semantic way) with the operations "above" 100MHz
Renamed as restore_mmdc_settings_info the macro can be reused for the
other cases like equal to 100MHz and possibly other intermediate
operation points.
For (2), the macro is renamed as mmdc_clk_lower_equal_100MHz to reflect
that this macro handles both the "lower than 100 MHz" case and the
"equal to 100MHz" case.
Signed-off-by: Juan Gutierrez <juan.gutierrez@nxp.com>
|
|
system can't detect SD card due to wrong gpio polarity.
Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
|
|
The new parameter description is:
gpr = <gpr-node, register-offset, mask, value>;
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
|
|
There is hard code for gpr address in machine driver, imx-wm8960
and imx-wm8958, when the sai interface changed to sai1 or sai3,
there will be issue, so remove the hard code, use the property
from the device tree.
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
|
|
When MMDC runs at a low frequency, it is not recommended to
perform "force measurement", the MMDC measure unit may return
a wrong measurement value when running below 100MHz.
Additionally, the double MU count operations should be only done
when changing the MMDC frequency from 400MHz to a low
frequency(100MHz or 24MHz). Otherwise, the MU count may overflow
and lead to system hang issue.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
Add low power idle support on i.MX6SLL.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
Add bufreq driver support on i.MX6SLL. For i.MX6SLL,
it only support LPDDR2 and LPDDR3. the DDR clock change
flow is same on these two type of DDR.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
Add busfreq device node for i.MX6SLL.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
According to datasheet Rev.B,06/2016 of i.MX6SLL. It has below
setpoints support:
996MHz 1.2V
792MHz 1.15V
396MHz 1.05V
198MHz 0.95V
We add a 25mV margin to cover the IR drop and board tolerance.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
Increase the AXI and AHB clock rate on i.MX6SLL according to
the RM to improve the system bus performance.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
For mxs PHY, if there is a vbus but the bus is not enumerated,
force the dp/dm as SE0 from the consider side. If not, there
is possible USB wakeup due to unstable dp/dm, since there is
possible no pull on dp/dm, eg, there is a USB charger on the
port. Note, the vbus event is only occurred at device mode,
and sent by udc driver.
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|
Add USB PHY event for below situation:
- vbus connect
- vbus disconnect
- gadget driver is enumerated
USB PHY driver can get the last event after above situation
occurs.
Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
|
Add DCP and RNG node in imx6sll.dtsi to enable them.
Signed-off-by: ye li <ye.li@nxp.com>
|
|
Add i.MX6SLL EVK board dts file.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
For i.MX6SLL LPDDR2 and LPDDR3 ARM2 board, they share the same
board design but using different DDR chip. So we can reuse the
LPDDR3 ARM2 board dts on LPDDR2 ARM2 board.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
Fix coverity CID 17624 uninitialized scalar variable
The 'fb_fmt' variable may be used before uninitialized
So initialize it at the begining.
Signed-off-by: Guoniu.Zhou <guoniu.zhou@nxp.com>
|