summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-03-19ARM: dts: apalis/colibri-imx6: standby pmic on powerofftoradex_4.14-2.3.x-imxOleksandr Suvorov
There is a new property to work around the bug of PMIC PF0100. This property turns the pmic into the standby mode on power down the system, that leads to turn off all power rails. In this mode the power consumption is around 2 mA. Related-to: ELB-3580 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> (cherry-picked from commit 36c91bbb3ff44beccc48a6e833d2b61e89affeb5)
2021-03-19ARM: imx6: fix setting up pm_power_off callbackOleksandr Suvorov
It is not necessarily that the system with set up the POWER_RESET_GPIO config option has the enabled device "gpio-poweroff". Without this device the "pm_power_off" callback remains uninitialized and the syscall "reboot" converts the signal LINUX_REBOOT_CMD_POWER_OFF into LINUX_REBOOT_CMD_HALT. This leads to skip calling the callback "pm_power_off_prepare" that should do an important work for iMX6+PF0100 systems: it should turns down all power rails of PMIC PF0100 to emulate a "power off" state as a workaround for a PMIC PF0100 with PMIC_ON_REQ and VCC_BATT is supplied from a battery, leading to unable to restart the module either by RESET or power cycle. Note, that gpio-poweroff device still can grab the pm_power_off callback using the property "force-mode" introduced in the commit: 964f69e00a4d ("power: reset: gpio-poweroff: add force-mode") Enable setting pm_power_off callback on the system with POWER_RESET_GPIO config option. Related-to: ELB-3580 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> (cherry-picked from aebbdbb42fbec323d242a6c0fb5fe6c97636ee3e)
2021-03-19regulator: pfuze100-regulator: provide pm_power_off_prepare handlerOleksij Rempel
On some boards the SoC can use one pin "PMIC_STBY_REQ" to notify th PMIC about state changes. In this case internal state of PMIC must be preconfigured for upcomming state change. It works fine with the current regulator framework, except with the power-off case. This patch is providing an optional pm_power_off_prepare handler which will configure standby state of the PMIC to disable all power lines. In my power consumption test on RIoTBoard, I got the following results: power off without this patch: 320 mA power off with this patch: 2 mA suspend to ram: 40 mA Related-to: ELB-3580 Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Signed-off-by: Mark Brown <broonie@kernel.org> (cherry-picked from commit c29daffa322ad36978cbce487f8ebcd9c3c3f7c0) (tuned for 4.14 kernel) Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2021-03-19regulator: pfuze100: fix system hang on suspendOleksandr Suvorov
The shutdown() callback of i2c client device calls for both scenarios, power off and reboot the system. In case of rebooting, the PMIC is configured to power off the power rails when receiveing the PMIC_STBY_REQ request. It leads to powering the module down and system hanging while suspending the system after soft reboot. Remove the shutdown() callback. Related-to: ELB-3580 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> (cherry-picked from commit 22072a0ae32d68771e254aeb45c0edf87c61f7d5) (tuned for kernel 4.14)
2021-02-24apalis-imx8: fix usb hsic supportMarcel Ziswiler
Looks like from the very beginning we were missing a proper pinmuxing for the active state of the HSIC data pin! Settings taken from discussion on NXP's public community forum: https://community.nxp.com/t5/i-MX-Processors/i-MX-8QuadMax-USB-HSIC-Functionality/m-p/1228662/highlight/true#M169217 Fixes: 321682bbb785 ("apalis-imx8qm: add USB HSIC support") Related-to: ELB-3228 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> (cherry picked from commit a43e07cd3980304b3665fff7b816dee6dad2bf5e) Put settings into different file, as the filename changed in 5.4. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-10-20arm64: dts: fsl: imx8qm: fix sai2 and sai3Tomislav Lugarić
Sai2 and Sai3 definitions for DMA were missing in the device tree of kernel 4.14. Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
2020-09-21arm64: dts: apalis-imx8 ixora v1.1: fix led gpio-line-namesMarcel Ziswiler
Our GPIO list starts with gpio5-01 while it really should start with gpio5-00. So the whole list is shifted by one. Related-to: ELB-3032 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> (cherry picked from commit a4fae6e282a3b68f6d6c7dd5b7deca3b33099abb)
2020-09-18arm64: dts: freescale: fsl-imx8mm-verdin: correct ldo1/ldo2 voltageMarcel Ziswiler
Correct ldo1/ldo2 voltage as below: ldo1 --NVCC_SNVS_1V8 ldo2 --VDD_SNVS_0V8 Analogous to commit 96c179b63e7b ("MLK-23275-1: ARM64: dts: freescale: fsl-imx8mm-evk: correct ldo1/ldo2 voltage") from NXP's downstream BSP. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-09-18Merge remote-tracking branch 'remotes/codeaurora/imx_4.14.98_2.3.0' into ↵Marcel Ziswiler
toradex_4.14-2.3.x-imx
2020-09-16ARM64: dts: apalis-imx8qm: default to a 3.3v rail for the ext rgmii signalsMax Krummenacher
The pins which can be used for an external ethernet PHY are powered by a sepearte LDO. Currently in the device tree this rail is set to 1.8V, the default apalis functionality of these pins requires 3.3V so change to that. If used with an external PHY in addition to add the PHY to the device also the rail's voltage needs to be adapted. Related-to: ELB-2899 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-08-20ARM64: dts: verdin-imx8mm: add m4/rpmsg nodesGustavo Leal
This commit adds the Cortex-M4- and RPMsg-related nodes to the base Verdin iMX8M Mini device tree.
2020-08-04gitlab-ci: pin gcc version to the one that was latest until nowPhilippe Schenker
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-07-22mmc: sdhci-esdhc-imx: Remove CQHCI flag from imx8 socsPhilippe Schenker
We saw earlier with a lot of docker compose up and down work that this was failing. Disabling this feature solves this issue: [ 5169.152016] mmc0: cqhci: timeout for tag 20 [ 5169.156209] mmc0: cqhci: ============ CQHCI REGISTER DUMP =========== [ 5169.162650] mmc0: cqhci: Caps: 0x0000310a | Version: 0x00000510 [ 5169.169089] mmc0: cqhci: Config: 0x00001001 | Control: 0x00000000 [ 5169.175529] mmc0: cqhci: Int stat: 0x00000000 | Int enab: 0x00000006 [ 5169.181969] mmc0: cqhci: Int sig: 0x00000006 | Int Coal: 0x00000000 [ 5169.188408] mmc0: cqhci: TDL base: 0x7807a000 | TDL up32: 0x00000000 [ 5169.194848] mmc0: cqhci: Doorbell: 0xb3700003 | TCN: 0x00000000 [ 5169.201287] mmc0: cqhci: Dev queue: 0x00000000 | Dev Pend: 0x00000002 [ 5169.207727] mmc0: cqhci: Task clr: 0x00000000 | SSC1: 0x00011000 [ 5169.214166] mmc0: cqhci: SSC2: 0x00000001 | DCMD rsp: 0x00000800 [ 5169.220605] mmc0: cqhci: RED mask: 0xfdf9a080 | TERRI: 0x00000000 [ 5169.227044] mmc0: cqhci: Resp idx: 0x0000000d | Resp arg: 0x00000000 [ 5169.233484] mmc0: sdhci: ============ SDHCI REGISTER DUMP =========== [ 5169.239925] mmc0: sdhci: Sys addr: 0xbd2d4000 | Version: 0x00000002 [ 5169.246367] mmc0: sdhci: Blk size: 0x00000200 | Blk cnt: 0x000000d8 [ 5169.252806] mmc0: sdhci: Argument: 0x00018000 | Trn mode: 0x00000023 [ 5169.259246] mmc0: sdhci: Present: 0x01f88008 | Host ctl: 0x00000030 [ 5169.265686] mmc0: sdhci: Power: 0x00000002 | Blk gap: 0x00000080 [ 5169.272125] mmc0: sdhci: Wake-up: 0x00000008 | Clock: 0x0000000f [ 5169.278564] mmc0: sdhci: Timeout: 0x0000008f | Int stat: 0x00000000 [ 5169.285004] mmc0: sdhci: Int enab: 0x107f4000 | Sig enab: 0x107f4000 [ 5169.291443] mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000502 [ 5169.297883] mmc0: sdhci: Caps: 0x07eb0000 | Caps_1: 0x8000b407 [ 5169.304323] mmc0: sdhci: Cmd: 0x00000d1a | Max curr: 0x00ffffff [ 5169.310762] mmc0: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0xffc003ff [ 5169.317203] mmc0: sdhci: Resp[2]: 0x328f5903 | Resp[3]: 0x00d07f01 [ 5169.323643] mmc0: sdhci: Host ctl2: 0x00000088 [ 5169.328086] mmc0: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x7809dcd8 [ 5169.334525] mmc0: sdhci: ============================================ which lead to hang the module. Related-to: ELB-2612 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-07-20MLK-21756 brcmfmac: bcmsdh: attach device only func1 compatible string matchFugang Duan
brcmfamc driver attach mmc func devices only when func1 device's node exist, and whose compatible string match "brcm,bcm4329-fmac". Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com> Signed-off-by: Fugang Duan <fugang.duan@nxp.com> (cherry picked from commit: b9945d63c2b8a6c1c9b018869eb2479781501608)
2020-07-14ARM: defconfig: apalis/colibri-imx*: enable GPIO/serial sources for PPSOleksandr Suvorov
Enable GPIO and serial-port (CD-signal) sources for the PPS (pulse-per-second) module. Related-to: ELB-2837 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-07-14arm64: defconfig: enable GPIO/serial sources for PPSOleksandr Suvorov
Enable GPIO and serial-port (CD-signal) sources for the PPS (pulse-per-second) module. Related-to: ELB-2837 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-07-14ARM64: dts: apalis-imx8x: remove no-1-8-v from sd-card nodePhilippe Schenker
Related-to: ELB-2606, ELB-2730 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-07-14ARM64: dts: colibri-imx8x: remove no-1-8-v from sd-card nodePhilippe Schenker
Related-to: ELB-2606, ELB-2730 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-07-14ARM64: dts: apalis-imx8x: disable write-protection on apalis-sdPhilippe Schenker
Apalis carrier boards do not have the Write-Protect signal connected Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-07-12MLK-24390 ARM: dts: Add the missing wifi dts file for imx6ulz lite evkJacky Bai
The dts file for WIFI support on i.MX6ULZ Lite is missed, so add it. Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2020-07-10imx8: isi: ar0521: disable debug messagesMarcel Ziswiler
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-07-10MLK-24388: ARM: dts: Add more dts for imx6ulz liteJacky Bai
Add btwifi dts support for i.MX6ULZ Lite. Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2020-07-10MLK-24369 ARM: imx: Add dummy soc id for imx6ulz liteJacky Bai
for i.MX6ULZ Lite, there is no dedicated SOC id for it, so add a dummy ID and identify it by checking the MARK bit in fuse. Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2020-07-09arm64: dts: apalis-imx8qm: add ar0521 device treesMarcel Ziswiler
Temporarily add device trees for the e-con Systems e-CAM50_CUIMX8. Once we have working device tree overlays for this we may drop those again. These are the albeit heavily modified device tree parts from the following patch we got from Yogaesh <yogaesh@e-consystems.com> on May 8, 2020: Related-to: ELB-2793 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-07-09arm64: defconfig: enable ar0521 driverMarcel Ziswiler
Enable driver for the e-con Systems e-CAM50_CUIMX8. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-07-09imx8: isi: ar0521: add initial driverMarcel Ziswiler
Add initial driver for the e-con Systems e-CAM50_CUIMX8. This is the driver part from the following patch we got from Yogaesh <yogaesh@e-consystems.com> on May 8, 2020: apalis_imx8qm_embedded_linux_eCAM50_support.patch Related-to: ELB-2793 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-07-09arm64: dts: apalis-imx8qxp: cleanup pinctrl gpio messMarcel Ziswiler
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-07-09arm64: dts: apalis-imx8qm: cleanup pinctrl gpio messMarcel Ziswiler
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-07-08arm64: dts: apalis-imx8qm: improve v1.1 related stuffMarcel Ziswiler
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-07-08clk: imx8mm: Change the 'nand_usdhc_bus' clock to non-critical oneJacky Bai
The 'nand_usdhc_bus' clock is only need to be enabled when usdhc or nand module is active, so change it to non-critical clock type. Signed-off-by: Jacky Bai <ping.bai@nxp.com> (cherry picked from commit 32caf053fc38697bd418ef95bb3ff9962f6b7019)
2020-07-07ARM64: dts: apalis-imx8: use proper rgmii-rxidPhilippe Schenker
This is needed for the new KSZ9131 phy Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-07-06ARM64: dts: apalis-imx8qm: sync pcie clocks with NXP branch imx_4.14.98_2.3.0Oleksandr Suvorov
NXP fixes a lot of issues in PCIe subsystem, in particular, add new clocks. Synchronize the set of clocks for Apalis-iMX8QM SoM. Related-to: ELB-1306 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-07-06Merge branch 'imx_4.14.98_2.3.0' into toradex_4.14-2.3.x-imxOleksandr Suvorov
Fix conflicts after merging changes from the latest NXP branch. Conflicts: arch/arm64/boot/dts/freescale/fsl-imx8qm-device.dtsi drivers/pci/dwc/pci-imx6.c Related-to: ELB-1306 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-07-02ARM64: dts: fsl-imx8qm-apalis-v1.1-eval: change model stringSergio Prado
Change model string of iMX8QM/QP V1.1 to differentiate from the model string used in the device tree for the earlier iMX8QM/QP module (this has been causing problems with the dtconf tool). Related-to: ELB-2829 Signed-off-by: Sergio Prado <sergio.prado@toradex.com>
2020-07-01MLK-24359 ARM: dts: Add the i.MX6ULZ Lite EVK board supportJacky Bai
The i.MX6ULZ Lite is full compatible with i.MX6ULL/ULZ, and only support 9x9 package. Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
2020-06-24ARM64: dts: apalis-imx8qm-v1.1: spi: use gpio csMax Krummenacher
It’s a limitation that one cannot use native SPI CS & DMA and have a continuous CS for the whole transfer. The CS is deasserted after each word sent. One can either use DMA and GPIO CS or one can use PIO mode. With this commit we change from using PIO mode to DMA mode and change the CS used from the IP provided one to GPIO CS on the same pin. This sync's the SPI configuration with the i.MX 8X based modules which already uses DMA with GPIO CS. Related-to: ELB-1278 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-06-18ARM: dts: imx8qxp-apalis: add gpio-line-namesMax Krummenacher
Add GPIO line names on module level. Those are all GPIOs which a user might use on his custom carrier board. If more meaningful names are available on the carrier board, the user can overwrite the line names in the carrier board level device tree. Related-to: ELB-2528 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-06-18ARM: dts: imx8qm-apalis: add gpio-line-namesMax Krummenacher
Add GPIO line names on module level. Those are all GPIOs which a user might use on his custom carrier board. If more meaningful names are available on the carrier board, the user can overwrite the line names in the carrier board level device tree. Related-to: ELB-2527 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-06-18ARM: dts: imx8qxp-colibri: add gpio-line-namesMax Krummenacher
Add GPIO line names on module level. Those are all GPIOs which a user might use on his custom carrier board. If more meaningful names are available on the carrier board, the user can overwrite the line names in the carrier board level device tree. Related-to: ELB-2526 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-06-18ARM: dts: imx6ull-colibri: add gpio-line-namesMax Krummenacher
Add GPIO line names on module level. Those are all GPIOs which a user might use on his custom carrier board. If more meaningful names are available on the carrier board, the user can overwrite the line names in the carrier board level device tree. Related-to: ELB-2794 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-06-18arm64: defconfig: add bluetooth drivers for Gumstix AutoBSPStefan Agner
Add bluetooth drivers useful for the Gumstix AutoBSP as kernel modules. Related-to: TOR-1068 Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-06-18arm64: defconfig: add sensor drivers for Gumstix AutoBSPStefan Agner
Add iio/hwmon sensor drivers useful for the Gumstix AutoBSP as kernel modules. Related-to: TOR-1068 Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-06-18arm64: defconfig: add sound drivers for Gumstix AutoBSPStefan Agner
Add sound drivers useful for the Gumstix AutoBSP as kernel modules. Related-to: TOR-1068 Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-06-18ASoC: Add prompt for ICS43432 codecPhil Elwell
Without a prompt string, a config setting can't be included in a defconfig. Give CONFIG_SND_SOC_ICS43432 a prompt so that Pi soundcards can use the driver. Signed-off-by: Phil Elwell <phil@raspberrypi.org> Related-to: TOR-1068 Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-06-15ARM64: dts: verdin-imx8mm: sort alphabeticallyMarcel Ziswiler
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-06-11MGS-5768 [#imx-2132] fix android cts memory leak with ↵Xianzhong
CL_MEM_USE_HOST_PHYSICAL_ADDR_VIV CL_MEM_USE_HOST_PHYSICAL_ADDR_VIV will use host physical memory directly, logical address is zero. gckOS_UnlockPages will check Logical address and return invalid parameter, that causes memory leak in OpenCL user library, need remove this check. Signed-off-by: Xianzhong <xianzhong.li@nxp.com> (cherry picked from commit 85a7c0f80d4f44d990f9ba85ecf2b6baea06053c) (cherry picked from commit d3f9bbb64cc198f06a92676eb536a7b4c0f08eeb)
2020-06-05ARM64: dts: apalis-imx8x: integrate reset_moci#_drv handlingPhilippe Schenker
Integrate RESET_MOCI#_DRV handling with work-around for PCIe switch as found on the Apalis Evaluation Board similar to what we upstreamed. Related-to: ELB-1929 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-06-05ARM64: dts: apalis-imx8x: pull reset_moci low into reset-activePhilippe Schenker
This pulls the reset_moci signal by default low and insures reset is applied when pin is being muxed. It needs then actively set high for getting out of reset. Related-to: ELB-1929 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-06-05scripts/dtc: Remove duplicate definitions of yyllocPhilippe Schenker
With GCC 10 there is an error during compiling of our downstream branch. Removing multiple yylloc definitions help. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-06-05scripts/dtc: Remove redundant YYLOC global declarationDirk Mueller
commit e33a814e772cdc36436c8c188d8c42d019fda639 upstream. gcc 10 will default to -fno-common, which causes this error at link time: (.text+0x0): multiple definition of `yylloc'; dtc-lexer.lex.o (symbol from plugin):(.text+0x0): first defined here This is because both dtc-lexer as well as dtc-parser define the same global symbol yyloc. Before with -fcommon those were merged into one defintion. The proper solution would be to to mark this as "extern", however that leads to: dtc-lexer.l:26:16: error: redundant redeclaration of 'yylloc' [-Werror=redundant-decls] 26 | extern YYLTYPE yylloc; | ^~~~~~ In file included from dtc-lexer.l:24: dtc-parser.tab.h:127:16: note: previous declaration of 'yylloc' was here 127 | extern YYLTYPE yylloc; | ^~~~~~ cc1: all warnings being treated as errors which means the declaration is completely redundant and can just be dropped. Signed-off-by: Dirk Mueller <dmueller@suse.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au> [robh: cherry-pick from upstream] Cc: stable@vger.kernel.org Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 35b34d264cb347909ec89d9fa895900035d5438c)