summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-12-24sound: soc: fsl-spdif: Fix runtime PM imbalance on errorOleksandr Suvorov
In case of any error occurs after enabling the PM runtime framework for the fsl-spdif-dai device, the next probing generates the warning: "fsl-spdif-dai 2004000.spdif: Unbalanced pm_runtime_enable!" Add the error handling path to keep the PM runtime usage counter balanced. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-12-23media: imx8: ar0521 and ar1335 supportMarcel Ziswiler
Add drivers for e-con Systems AR0521 and AR1335 camera modules. Related to: PMS-387 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-12-22ARM64: dts: apalis-imx8x: adjust SGTL5000 to 5.4 kernelPhilippe Schenker
Mainly clocks need adjustment. Copy Paste from apalis-imx8 module Related-to: ELB-3423 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-12-22ARM64: dts: apalis-imx8x: bringup PCIe on new kernelPhilippe Schenker
Related-to: ELB-3428, ELB-2790 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-12-22ARM64: dts: apalis-imx8x: Disable hsio refclk used only on MEKPhilippe Schenker
They are used on MEK only and are blocking out GPIOs so disable them Related-to: ELB-3428, ELB-2790 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-12-21arm64: dts: apalis-imx8x: mux pinctrl_usbh_oc_n pinOleksandr Suvorov
Reduce the length of pinmux name and mux the pin by default. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-12-21arm64: dts: apalis-imx8x: fix set up USBO1 OC pinOleksandr Suvorov
The USB_SS3_TC2 pin can be directly used as a USBO1_OC pin to control over-current events. Use this mode. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-12-21arm64: dts: apalis-imx8x: remove useless propertyOleksandr Suvorov
The property "reset-on-resume" is useless without setting "reset-gpio". It used as a workaround for earlier revisions of Apalis iMX8QXP to fix Wi-Fi chip issue on resume. Remove obsolete property. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-12-21arm64: dts: apalis-imx8x: fix regulator for on-board USB hubOleksandr Suvorov
The cadence usb3 driver tries to turn down this regulator each time it goes to idle. This signal enables on-board USB Hub and should be always on. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-12-20Revert "arm64: dts: apalis-imx8x: enable USBH1"Oleksandr Suvorov
This reverts commit ce1e685adbd15203ca84c0be62cf752304e39df3. That commit seems for Apalis iMX8QM and should have not been applied for Apalis iMX8QXP. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-12-17arm64: dts: imx8mm-verdin: move backlight pwm to regular device treeMax Krummenacher
This keeps the numbering of the /sys/class/pwmchipX independent of which overlays are loaded and allows the use of Verdin PWM_3_DSI from user space if it is not used as a backlight PWM. Related-to: ELB-3411 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-12-15ARM64: dts: apalis-imx8: disable dma for lpuart 2 againPhilippe Schenker
lpuart2 is the only UART where DMA request works and linux tries to use a DMA. However this DMA does not work and output hangs, disbling the DMA works for now. This change was originally introduced in commit 1a8badaa585de ARM64: dts: apalis-imx8: disable dma for lpuart2 but lost when doing the devicetree-split. Fixes: 2715972aadc8f arm64: dts: apalis-imx8: separate common module pa Related-to: ELB-3178 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-12-14arm64: dts: imx8mp-verdin: ethernet workaroundMarcel Ziswiler
Work around potential probe deferral, order and race condition issues. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-12-14arm64: dts: imx8mp-verdin: change on-carrier phy addressMarcel Ziswiler
Both Verdin Developer Board V1.0A and V1.1A have their PHYs at address 7. Only V1.0B had it at the address 3! Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-12-14arm64: dts: imx8mp-verdin: add sodimm annotation to fec pinsMarcel Ziswiler
Add SODIMM annotation to FEC pins. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-12-14net: stmmac: dwmac-imx: fix phy-supply null pointer issueMarcel Ziswiler
The following happens e.g. on the i.MX 8M Plus EVK which does not specify any phy-supply: [ 1.077851] imx-dwmac 30bf0000.ethernet: no regulator found [ 1.083445] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000078 [ 1.092234] Mem abort info: [ 1.095033] ESR = 0x96000004 [ 1.098087] EC = 0x25: DABT (current EL), IL = 32 bits [ 1.103402] SET = 0, FnV = 0 [ 1.106456] EA = 0, S1PTW = 0 [ 1.109603] Data abort info: [ 1.112489] ISV = 0, ISS = 0x00000004 [ 1.116329] CM = 0, WnR = 0 [ 1.119301] [0000000000000078] user address but active_mm is swapper [ 1.125660] Internal error: Oops: 96000004 [#1] PREEMPT SMP [ 1.131232] Modules linked in: [ 1.134291] CPU: 2 PID: 1 Comm: swapper/0 Not tainted 5.4.77-05639-g581745444980 #10 [ 1.142032] Hardware name: NXP i.MX8MPlus EVK board (DT) [ 1.147344] pstate: 60000005 (nZCv daif -PAN -UAO) [ 1.152141] pc : regulator_enable+0x1c/0x78 [ 1.156326] lr : imx_dwmac_init+0x134/0x1a8 [ 1.160508] sp : ffff80001003bad0 Fixes: ca8811172bdc ("net: stmmac: dwmac-imx: add phy-supply") Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-12-08i2c: imx: implement master_xfer_atomic callbackStefan Lengfeld
Rework the read and write code paths in the driver to support operation in atomic contexts. To achieve this, the driver must not rely on IRQs and not call schedule(), e.g. via a sleep routine, in these cases. With this patch the driver supports normal operation, DMA transfers and now the polling mode or also called sleep-free or IRQ-less operation. It makes the code not simpler or easier to read, but atomic I2C transfers are needed on some hardware configurations, e.g. to trigger reboots on an external PMIC chip. Related-to: ELB-3308 Related-to: ELB-1403 Signed-off-by: Stefan Lengfeld <contact@stefanchrist.eu> [m.felsch@pengutronix.de: integrate https://patchwork.ozlabs.org/patch/1085943/ review feedback] [m.felsch@pengutronix.de: adapt commit message] Signed-off-by: Marco Felsch <m.felsch@pengutronix.de> Acked-by: Oleksij Rempel <o.rempel@pengutronix.de> Reviewed-by: Stefan Agner <stefan@agner.ch> Tested-by: Stefan Lengfeld <contact@stefanchrist.eu> Signed-off-by: Wolfram Sang <wsa@the-dreams.de> (cherry picked from commit 3a5ee18d2a32bda6b9a1260136f6805848e3839d)
2020-12-04ARM: defconfig: fix working tempmonOleksandr Suvorov
tempmon driver requires the platform driver imx-cpufreq-dt that is enabled for imx7 with the option ARM_IMX_CPUFREQ_DT. Adding this option fixes tempmon driver working. Related-to: ELB-3339 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-30arm64: dts: imx8mp-verdin: prepare for dsi to lvds adapterMax Krummenacher
Prepare the nodes for the Verdin DSI to LVDS Adapter overlay. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-30arm64: dts: imx8mp-verdin: prepare for dsi to hdmi adapterMax Krummenacher
Prepare the nodes for the DSI to HDMI Adapter overlay. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-29arm64: defconfig: fix ov5640 crash on i.mx 8m plusMarcel Ziswiler
The OV5640 driver crashes on NXP's i.MX 8M Plus if loaded as a module. Related to: ELB-3209 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-11-29ARM: dts: colibri-imx6ull: do not pull-up sd-clk but sd-cmd signalPhilippe Schenker
From the SD-Card specification: > The host shall supply power to the card so that the voltage is > reached to V DD _min within 250ms and start to supply at least > 74 SD clocks to the SD card with keeping CMD line to high. In case of > SPI mode, CS shall be held to high during 74 clock cycles. According to this information I think we should pull the CMD data line like on other boards to 3.3V. Also on other boards we do have the CLK signal pulled. This looks like this got mixed that up. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-11-26arm64: dts: imx8mp-verdin: add ext_osc to pcie_phy and prevent warningMax Krummenacher
The pcie_phy uses ext_osc info in addition to the pcie node. While at it add the bus-range property to prevent: No bus range found for /pcie@33800000, using [bus 00-ff] Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-26MLK-24410 phy: pcie: imx8mp: correct the clock mode of the pcie phyRichard Zhu
Correct the clock mode of PCIe PHY. Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com> Reviewed-by: Fugang Duan <fugang.duan@nxp.com> (cherry picked from commit 2c23d9de9fc41d5436a7d3f8510fc95f3bf1c56b)
2020-11-26MLK-24171-5 PCI: imx8mp: verify the pcie internal pll reference clockRichard Zhu
- Verify the both internal PLL_SYS and external OSC reference clock modes on iMX8MP EVK board, and pass the PCIe compliance tests. - Remove the no-needed bypass setting. - PHY configration should be completed before CMN_RSTN is set to 1b1 - To manually initiate the speed change to make sure GEN2 is linked up: - Write to LINK_CONTROL2_LINK_STATUS2_REG.PCIE_CAP_TARGET_LINK_SPEED in the local device - De-assert GEN2_CTRL_OFF.DIRECT_SPEED_CHANGE in the local device - Assert GEN2_CTRL_OFF.DIRECT_SPEED_CHANGE in the local device Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com> Reviewed-by: Fugang Duan <fugang.duan@nxp.com> (cherry picked from commit 12589ba98b1145e2d2a9f439b20064197aea8ca9)
2020-11-26MLK-24171-4 reset: imx7: add perst for imx8mp pcieRichard Zhu
Add the PERST for iMX8MP PCIe. Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com> Reviewed-by: Fugang Duan <fugang.duan@nxp.com> (cherry picked from commit 0a91df355e20aa53a4bcaa9d352952e5fa9e4ef6)
2020-11-26MLK-24171-3 phy: pcie: imx8mp: verify the pll sys ref clock sourceRichard Zhu
Verify the PCIe PLL_SYS reference clock source on EVK board. The external OSC clock is used as PCIe REF clock source in default. - sequence should be the following one. phy configuration--> CMN_RSTN--> wait for pll lock - add the calibrate callback to fit the correct init sequence of phy Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com> Reviewed-by: Fugang Duan <fugang.duan@nxp.com> (cherry picked from commit 9afaf7a465858970aee8858fb52067f2ef152c7f)
2020-11-26MLK-24171-2 dt-binding: phy: update the clock modes of pcie phyRichard Zhu
Update the clock modes of iMX8MP PCIe PHY in binding DOC. Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com> Reviewed-by: Fugang Duan <fugang.duan@nxp.com> (cherry picked from commit eade3750bf840948b29db26f0beabf10dea5f981)
2020-11-26MLK-24171-1 arm64: dts: imx8mp: verify the pcie pll sys ref clockRichard Zhu
Verify the PCIe PLL_SYS reference clock source on EVK board. The external OSC clock is used as PCIe REF clock source in default. NOTE: Change the ext_osc of pcie/pcie_phy to '0' when enable SYS_PLL clock mode. Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com> Reviewed-by: Fugang Duan <fugang.duan@nxp.com> (cherry picked from commit 1bda33273eccae3c0d878d34660eca9da1765db0)
2020-11-26MLK-24170 PCI: imx: configure the l1 latency for imx8m pcie rcRichard Zhu
Configure the L1 latency of iMX8M's RC to less than 64us, otherwise, the L1/L1SS wouldn't be enabled by ASPM. Signed-off-by: Richard Zhu <hongxing.zhu@nxp.com> Reviewed-by: Fugang Duan <fugang.duan@nxp.com> (cherry picked from commit eb9fdb1d10c10dc4d4bbe9bc6fc060afe1485989)
2020-11-26arm: dts: imx7d: add missing weim nodeJaskaranjeet Singh
Signed-off-by: Jaskaranjeet Singh <jaskaranjeet.singh@toradex.com>
2020-11-25mfd: stmpe: support disabling sub-functionsOleksandr Suvorov
Add support of sub-functions disabling. It allows one to define and turn on sub-function devices in different devicetree files. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-25ARM: dts: apalis-imx6: remove unused nodesOleksandr Suvorov
Toradex BSP 5.x uses the video/fbdev stack of display drivers. Remove unused nodes for gpu/drm/imx stack of drivers. Related-to: ELB-3240 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-25arm64: dts: imx8mp-verdin: fix eqos macMax Krummenacher
With the driver now supporting the phy-supply property, remove the regulator-boot-on property. The driver does not support the 'sleep' state pinctrl. Remove it. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-25arm64: dts: imx8mp-verdin: remove phy-supply from fecMax Krummenacher
The PHY connected to the FEC doesn't have a seperate switchable rail. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-25net: stmmac: dwmac-imx: add phy-supplyMax Krummenacher
Add an support for an optional regulator which powers an attached phy. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-25arm64: defconfig: synchronize with savedefconfigMax Krummenacher
CONFIG_CRYPTO_XTS is selcted (as 'y') by CRYPTO_DEV_FSL_CAAM_CRYPTO_API_QI. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-25arm64: defconfig: reenable drivers previously enabledMax Krummenacher
This adds back drivers enabled in the following 3 commits commit e7704de31f0b ("arm64: defconfig: add zram support") commit 08d125a06697 ("arm64: defconfig: add sound drivers for Gumstix AutoBSP") commit f2bf706a88d6 ("arm64: defconfig: add bluetooth drivers for Gumstix AutoBSP") Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-25arm64: dts: imx8mp-verdin: add device tree for dahliaMax Krummenacher
Only the Development Board gives access to the native hdmi signals. Move the nodes into imx8mp-verdin-dev.dtsi. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-25arm64: dts: imx8mp-verdin: change wi-fi-i2s muxing to gpioMax Krummenacher
RX and TX seem to be swapped and the function is currently not implemented. Mux the pins as GPIOs to ensure to not have two connected outputs. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-25arm64: dts: imx8mp-verdin: correct audio codec mclk clkMax Krummenacher
Use the correct clk as the mclk. Additionally set the mux pad values to a more sensible value, i.e. for inputs enable the pullup. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-25ARM: dts: colibri-imx7: remove atmel mxt tsOleksandr Suvorov
This device is described in an overlay. Removing this node here fixes the kernel stuck if the colibri-imx7-aster_atmel-mxt_overlay is applied. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-24ARM: dts: apalis-imx6: add atmel mxt tsOleksandr Suvorov
According to the decision to use overlays just for enabling subsystems, add back the definition of Atmel MXT touchscreen device. Related-to: ELB-3240 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-24ARM: dts: apalis-imx6: disable vga interfaceOleksandr Suvorov
The VGA interface and all related stuff enable in an overlay. Remains them disabled in the main devicetree. Realetd-to: ELB-3240 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-24ARM: dts: apalis-imx6: rework and disable hdmi_tx_ddcOleksandr Suvorov
Now HDMI interface is driven with an overlay, so that it is not needed to configure hdmi_ddc on a board level. Move all i2cddc/hdmi_ddc stuff to the module level and disable it by default. Related-to: ELB-3240 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-24ARM: dts: apalis-imx6: disable hdmi interfaceOleksandr Suvorov
The HDMI interface and all related stuff enable in an overlay. Remains them disabled in the main devicetree. Realetd-to: ELB-3240 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-24ARM: dts: apalis-imx6: disable stmpe touchscreenOleksandr Suvorov
This device enables in an overlay. Remains it disabled here. Realetd-to: ELB-3240 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-24ARM: dts: apalis-imx6: move backlight to module levelOleksandr Suvorov
PWM-part of the backlight device is the same for all Toradex boards. Move all backlight properties to the module-level devicetree. Remain the device disabled - it should be enabled in corresponding overlays. Related-to: ELB-3240 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-24ARM: dts: apalis-imx6: ixora: disable lcd/lvds interfacesOleksandr Suvorov
The LCD (parallel RGB) and LVDS interfaces and all related stuff are driven with overlays. This stuff is already disabled for Evaluation board. Disable it for all versions of Ixora board as well. Realetd-to: ELB-3240 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-11-21arm64: dts: imx8mp-verdin: enable native hdmi functionalityMarcel Ziswiler
On the i.MX 8M Plus the 3rd LCDIF drives an on-SoC Samsung HDMI PHY giving us native HDMI functionality. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>