Commit Graph

719319 Commits

Author SHA1 Message Date
dfaea2677e MLK-14973 arm64: dts: imx8qm: add DMA subsystem UART ports and DMA chans
Add DMA subsystem UART ports and related DMA channels for i.MX8QM
lpddr4 arm2 board.

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:26:36 +08:00
1b7823d7f7 MLK-14947-6 arm64: defconfig: enable chipidea controller driver and mxs phy driver
Enable chipidea usb controller driver and mxs usb phy driver for imx8.

Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
2019-02-12 10:26:36 +08:00
b16c91e58e MLK-14947-5 chipidea: imx: add usb vbus power polarity setting
If the vbus is controlled by ehci port power bit, we need set power
polarity of vbus enable signal according to the vbus power supply
chip on board.

Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
2019-02-12 10:26:36 +08:00
c13b7a006b MLK-14947-4 ARM: dts: set usb1 vbus power polarity for imx8qm arm2
Set the OTG1 vbus power polarity to be active high on
fsl-imx8qm-lpddr4-arm2.dts.

Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
2019-02-12 10:26:36 +08:00
58a0c2b041 MLK-14947-3 usb: doc: chipidea: imx: add power-polarity-active-high property
USB host vbus control can be via port power(PP) bit of ehci, there
is a polarity setting in controller register for this signal, if
power supply chip use active high, add this property.

Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
2019-02-12 10:26:35 +08:00
236120ec56 MLK-14947-2 usb: phy: add mxs phy driver dependency for ARM64
Add mxs phy driver dependency on ARCH_MXC_ARM64.

Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
2019-02-12 10:26:35 +08:00
966125d2ba MLK-14935: ASoC: fsl_sai: Fix mixing initialization data with actual audio samples
When starting a playback the initialization data used to reduce underruns
was send to the transmit data register after the DMA requests were enabled.
This patch moves the initialization phase before enabling the DMA so the
data is transmitted in correct order.

Signed-off-by: Mihai Serban <mihai.serban@nxp.com>
2019-02-12 10:26:35 +08:00
df91a0465d MLK-14955-2 arm64: defconfig: remove COMPILE_TEST
Auto Enable LOCALVERSION_AUTO
so show git commit hash value in boot log

Linux version 4.9.11-02242-gf4b0aff-dirty

Signed-off-by: Frank Li <Frank.Li@nxp.com>
2019-02-12 10:26:35 +08:00
495c96ee4c MLK-14955-1 imx8: Added MXC_ARM64 into dependent
Otherwise there are warning when remove COMPILE_TEST

Signed-off-by: Frank Li <Frank.Li@nxp.com>
2019-02-12 10:26:35 +08:00
d2d1eeef8b MLK-14778: ASoC: fsl: imx-cs42888: Improve support for odd number of channels
For samples with more than 2 and odd number of channels the I2S mode
does not work correctly. In I2S mode we are required to activate an even
number of channels (possibly on multiple datalines) and thus configure
the BCLK for even channels. In this case samples with odd (smaller) number
of channels are played faster and the sound is distorted.

To fix this behavior we can enable TDM mode for the special cases of
samples with 3, 5 or 7 channels. But even TDM has some restrictions that
prevent us from having full support for the special cases:
1. TDM is not supported by codec in master mode so 3, 5 and 7 channels
usage is denied.
2. In codec slave mode TDM works only with 8 slots and slot width of 32
bits. For an often used MCLK frequency of 24MHz and the above restrictions
the maximum sample rate is limited to 48KHz = 24576000/(2*8*32).
The 2 denominator is required by ESAI BCLK divisors.

Signed-off-by: Mihai Serban <mihai.serban@nxp.com>
2019-02-12 10:26:35 +08:00
b41f2ee61e MLK-14967-2 ARM64: dts: freescale: imx8qxp: reserve DDR for M4
Reserve first 4M memory for below usage:

0x80000000 - 0x800fffff: ARM Trusted Firmware;
0x80100000 - 0x803fffff: M4/RPMSG;

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2019-02-12 10:26:35 +08:00
53172cb072 MLK-14967-1 ARM64: dts: freescale: imx8qm: reserve DDR space for M4
Reserve first 4M memory for below usage:

0x80000000 - 0x800fffff: ARM Trusted Firmware;
0x80100000 - 0x803fffff: M4/RPMSG;

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2019-02-12 10:26:35 +08:00
9eda05fae0 MLK-14966-5 mmc: imx: add ARCH_MXC_ARM64 into build dependency
Add ARCH_MXC_ARM64 for i.MX mmc driver to support
ARM64 platforms.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2019-02-12 10:26:34 +08:00
ac57e1a9db MLK-14966-4 gpio: imx: add build dependency
Add build dependency for i.MX gpio driver.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2019-02-12 10:26:34 +08:00
090b6a008e MLK-14966-3 clk: makefile: use ARCH_MXC_ARM64 for imx dependency
Use ARCH_MXC_ARM64 instead of ARCH_FSL_IMX8QM for i.MX
ARM64 platforms build dependency.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2019-02-12 10:26:34 +08:00
ff137e1505 MLK-14952 arm64: dts: imx8qxp: add enet support
Add enet support for i.MX8QXP lpddr4 arm2 board.

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
2019-02-12 10:26:34 +08:00
1a82415430 MLK-14946-2: pinctrl: imx8qm/qxp: switch to use new format
switch to use new format. Split mux out from pad config.
Change the high two bits in pad config to 0, because driver
will automatically set that two bits to 1.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-02-12 10:26:34 +08:00
ac0b24e24b MLK-14949 arm64: dts: imx8qm/qxp add usdhc alias node
Add usdhc alias node. To i.MX8QXP ARM2 board,
kernel will panic if no alias node provided.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-02-12 10:26:34 +08:00
bf39021afa MLK-14948 arm64: dts: imx8qxp: fix usdhc power domain name
Fix usdhc power domain name.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-02-12 10:26:34 +08:00
94e82fb81d MLK-14706 clk: imx7d: remove duplicate empty line
Signed-off-by: Irina Tirdea <irina.tirdea@nxp.com>
2019-02-12 10:26:33 +08:00
2de60161d0 MLK-14706 clk: imx7d: align with upstream: update arm a7 root clock init
In upstream, IMX7D_ARM_A7_ROOT_SRC uses imx_clk_mux2 for initialization,
while our code uses imx_clk_mux_flags_bus with additional flags
CLK_SET_RATE_NO_REPARENT | CLK_OPS_PARENT_ENABLE. In the end, both calls
set the flags of IMX7D_ARM_A7_ROOT_SRC clock to
CLK_SET_RATE_NO_REPARENT | CLK_OPS_PARENT_ENABLE.

To align our code to upstream, we can safely use imx_clk_mux2.

Signed-off-by: Irina Tirdea <irina.tirdea@nxp.com>
2019-02-12 10:26:33 +08:00
07f7d20cb7 MLK-14932-2 arm64: defconfig: set usdhc driver compile into kernel
Default compile the usdhc driver into kernel

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
2019-02-12 10:26:33 +08:00
2f31b07a11 MLK-14932-1 mmc: sdhci-esdhc-imx: add depends on COMPILE_TEST
i.MX8 don't define ARCH_MXC, so add COMPILE_TEST to let usdhc driver
also support for i.MX8.

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
2019-02-12 10:26:33 +08:00
e135c6e438 MLK-14933 gpio: kconfig: remove mxc gpio dependency
Remove dependency of ARCH_MXC to support GPIO driver on
both ARMv7 and ARMv8 i.MX platforms.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-02-12 10:26:33 +08:00
eb946e2f16 MLK-14800: fbdev: Refactor printed information
Debug info should not be printed using pr_info on init. Use pr_debug
instead.
Also, verify the cable state before reading the EDID. There is no point
in trying to read EDID (and print an error message), when there is no
device connected to HDMI connector.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2019-02-12 10:26:33 +08:00
5adeb6417a MLK-14800: fbdev: Refactor printed information
Debug info should not be printed using pr_info on init. Use pr_debug
instead.
Also, use the driver name, since there is more than one MIPI DSI driver.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2019-02-12 10:26:32 +08:00
cc0e895d53 MLK-14800: fbdev: Refactor printed information
Debug info should not be printed using pr_info on init. Use pr_debug
instead.
Also, use the driver name, since there is more than one MIPI DSI driver.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2019-02-12 10:26:32 +08:00
9de721b2eb MLK-14800: fbdev: Refactor printed information
Debug info should not be printed using pr_info on init. Use pr_debug
instead.
Also, use the driver name, since there is more than one MIPI DSI driver.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2019-02-12 10:26:32 +08:00
c569426c6e MLK-14800: fbdev: Refactor printed information
Debug info should not be printed using pr_info on init. Use pr_debug
instead.

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2019-02-12 10:26:32 +08:00
6b70ec6b86 MLK-14925: ARM: dts: imx6qdl-sabresd-hdcp: fix gpu/vpu probe fail on hdcp board
Fix the same issue as commit bf23e0c5ea31 on imx6qp-saresd-hdcp board

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2019-02-12 10:26:32 +08:00
44ae635275 MLK-14857: mxc_hdmi: Set default mode a CEA mode
When using fb_find_mode from fbdev/core with a specified user more,
it will return a screeninfo structure with the pixclock corresponding to
a different refresh rate than the requested one. For example, for
1920x1080@60 it will return pixclock=5780. When we get the videmode for
this screeninfo, it will have a refresh of 59Hz, instead of 60Hz.
If we use this mode as default mode when EDID cannot be read, on a
monitor with fixed refresh rate of 60Hz, it won't work. Therefore, we
should save the default mode, the nearest mode from CEA modes defined by
our own driver (which will have the correct refresh rate and pixclock for
the requested resolution).

Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
2019-02-12 10:26:32 +08:00
25a15b91af MLK-14927 ARM64: dts: freescale: imx8qxp: add lpddr4 arm2 board support
Add dtb to support i.MX8QXP LPDDR4 ARM2 board.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-02-12 10:26:32 +08:00
e6286d1a73 MLK-14917 ARM: dts: imx6ul-14x14-ddr3-arm2: fix pfuze200 probe error
Fix below pfuze probe issue by setting correct range of SW3B:

pfuze100-regulator 0-0008: pfuze200 found.
SW3B: Bringing 3300000uV into 1975000-1975000uV
SW3B: failed to apply 1975000-1975000uV constraint(-22)
pfuze100-regulator 0-0008: register regulatorSW3B failed
pfuze100-regulator: probe of 0-0008 failed with error -22
2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 19, base_baud = 5000000) is a IMX

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2019-02-12 10:26:32 +08:00
9b0e0e9d3d MLK-14861-1 mmc: sdhci: make DDR50 tuning optionally
commit 70f2d20917bc ("MLK-14884 mmc: sdhci: make DDR50 tuning optionally")
want to make DDR50 card tuning optionally, but the code logic is not
right, the tuning of DDR50 card will also be impacted by the flag
'SDHCI_SDR50_NEEDS_TUNING'. e.g. imx6sl/imx6sx/imx6ul/imx7d default set
USE_TUNING_SDR50, which means on these SoC, DDR50 card still do tuning
even haven't the flag 'SDHCI_DDR50_NEEDS_TUNING'.

This patch fix the logic issue, separate DDR50 and SDR50 card.

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
2019-02-12 10:26:31 +08:00
9659f87adb MLK-14895-2 ARM: dts: add usb otg1 ID pinctrl for i.mx6ul evk
Add USB OTG1 port ID pin for imx6ul-14x14-evk.dts

Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
2019-02-12 10:26:31 +08:00
3fd86d961f MLK-14895-1 ARM: dts: add usb otg1 ID pinctrl for i.mx6ull evk
Add USB OTG1 port ID pin for imx6ull-14x14-evk.dts

Acked-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
2019-02-12 10:26:31 +08:00
959bb4539f MLK-11403: I2C: imx: restore pin setting for i2c
restore pin setting for i2c in suspend/resume

Signed-off-by: Gao Pan <gaopan@freescale.com>
(cherry picked from commit 8aed73af218f25e0677b8980b3706246dd68790d)
Signed-off-by: Robin Gong <yibin.gong@nxp.com>

Conflicts:
	drivers/i2c/busses/i2c-imx.c
2019-02-12 10:26:31 +08:00
cefdd6ea8b MLK-14902 ARM64: dts: freescale: imx8qm: make default dtb boot up all cores
Change dtb's core settings as below on i.MX8QM:

boot up 4 CA53 and 2 CA72 (using CA53 specific flash.bin)
	fsl-imx8qm-lpddr4-arm2.dts

boot up 4 CA53 (using CA53 specific flash.bin)
	fsl-imx8qm-lpddr4-arm2_ca53.dts

boot up 2 CA72 (using CA72 specific flash.bin)
	fsl-imx8qm-lpddr4-arm2_ca72.dts

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2019-02-12 10:26:31 +08:00
e6d5a1f16c MLK-14893 ARM64: dts: freescale: imx8qm: add CA72 only dtb
Add CA72 only dtb to support booting up kernel with
CA72 cluster only, need to use CA72 specific flash.bin
and CA72 specific dtb to boot up kernel.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
2019-02-12 10:26:31 +08:00
e79cd98600 MLK-13967 ARM64: dts: imx8qxp: add SAI0 and ASRC0 nodes
Add audio SAI0 and ASRC0 nodes.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:26:31 +08:00
403950f9fa MLK-14774 mmc: sdhci-esdhc-imx: restore pins state after suspend
After commit 3e3274ab9f ("mmc: sdhci-esdhc-imx: Use common
sdhci_suspend|resume_host()"), we lost the pins state store and save
in common sdhci_pltfm_{suspend|resume} API which results in the
pins state lost in state un-retainable suspend/resume, then
CMD transfer will meet timeout subsequently.

Due to sdhci_pltfm_{suspend|resume} API becomes static after
that commit later, we then do manual pins state save and restore
in our platform suspend/resume API instead.

Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
2019-02-12 10:26:30 +08:00
5c8bae9ea4 MLK-13972-4 ARM64: dts: imx8qxp: add EDMA2 and ACM nodes
Add audio EDMA2 and ACM nodes.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:26:30 +08:00
87ff0f53a9 MLK-13972-3 ARM64: dts: imx8qxp: add audio power domain
Add audio power domain definitions.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:26:30 +08:00
8997da18c4 MLK-13972-2 clk: imx8qxp: add audio clocks
Add audio clocks.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:26:30 +08:00
b26e83bad7 MLK-13972-1 soc: scfw: imx8qxp: fix audio LPCGs
Cleanup audio LPCGs: add missing, fix names, remove unneeded.

Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
2019-02-12 10:26:30 +08:00
21db421b5a MLK-14823 dts: imx6sx-sabreauto: correct cd and wp pin
Correct CD/WP pin in dts. Otherwise the card detection and write
protection function does not work.

Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
2019-02-12 10:26:30 +08:00
9a7901e92c MLK-14884 mmc: sdhci: make DDR50 tuning optionally
DDR50 tuning is optinally defined in sd 3.0 spec. Per IC guys
suggestion, it internally already uses a fixed optimized timing
and normally does not require tuning.

Make it optionally and platform can claim SDHCI_DDR50_NEEDS_TUNING
support if it wants tuning.

Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
2019-02-12 10:26:29 +08:00
008d4f3881 MLK-14866-2: dts: imx7ulp-evk: remove duplicated mux setting in config
According to RM, Bit[11-8] is MUX_MODE which is configured by
the PIN_FUNC_ID automatically, specify it in config part is wrong
and violates the binding doc. So remove them all.

It can also avoid the future confusing when customer wants to
configure a pad by following the exist code.

Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
2019-02-12 10:26:29 +08:00
95e13d0d2e MLK-14807-2: ARM: dts: imx6: correct all ldo-enable dts
'vin-supply' property used in ldo-bypass mode while 'vin-supply' deleted
in ldo-enable mode on v4.9 rather than dirctly switch 'supply' to internal
regulator and external pmic regulator on v4.1. Correct it for all *-ldo.dts,
otherwise, still work in ldo-bypass mode.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2019-02-12 10:26:29 +08:00
61bf14fb2e MLK-14807-1: ARM: dts: imx6qp-sabresd-hdcp: gpu probe failed
I2C2 have to be disabled on hdcp board since those I2C2 bus pins
used for others, that said there is no all pmic regulators. In this
case, ldo-enable mode should be used and reg_arm/reg_soc/reg_pu should
be swithed to internal ldo instead. Otherwise, no reg_pu regulator
probed successfully by gpu driver, and cause gpu probe failed. Also,
cause cpufreq probe failed too.

Signed-off-by: Robin Gong <yibin.gong@nxp.com>
2019-02-12 10:26:29 +08:00