Commit graph

75 commits

Author SHA1 Message Date
Anson Huang ba0f456052 ARM: dts: imx6sx: correct backward compatible of gpt
i.MX6SX has same GPT type as i.MX6DL, in GPT driver, it uses
below TIMER_OF_DECLARE, so the backward compatible should be
"fsl,imx6dl-gpt", correct it.

TIMER_OF_DECLARE(imx6sx_timer, "fsl,imx6sx-gpt", imx6dl_timer_init_dt);

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2019-01-13 10:40:22 +08:00
Aisheng Dong 807d043c12 ARM: dts: imx6sx: Add flexcan stop mode wakeup support
Add stop-mode property which is required by stop mode wakeup
feature.

Signed-off-by: Aisheng Dong <aisheng.dong@nxp.com>
Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-12-10 10:03:06 +08:00
Fabio Estevam 216f35fedd ARM: dts: imx6sx: Fix memory node duplication
Boards based on imx6sx have duplicate memory nodes:

- One coming from the board dts file: memory@

- One coming from the imx6sx.dtsi file.

Fix the duplication by removing the memory node from the dtsi file
and by adding 'device_type = "memory";' in the board dts.

Reported-by: Rob Herring <robh@kernel.org>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-12-10 10:02:29 +08:00
Frieder Schrempf 4ca7dbdb06 ARM: dts: imx: Add dummy PHYs for HSIC-only USB controllers
Some SOCs in the i.MX6 family have a USB host controller that is
only capable of the HSIC interface and has no on-board PHY.

To be able to use these controllers, we need to add "usb-nop-xceiv"
dummy PHYs.

Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-12-10 10:02:24 +08:00
Anson Huang 7cd1abb3ae ARM: dts: imx6sx: specify proper clock for nodes with dummy clock
From i.MX6SX reference manual CCM chapter, KPP and
WDOGn use IPG clock as their clock, specify IPG
clock for KPP and WDOGn instead of DUMMY clock.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-12-10 10:02:24 +08:00
Fabio Estevam d2cf9fd301 ARM: dts: imx6sx: Complete the PXP support
According to Documentation/devicetree/bindings/media/fsl-pxp.txt,
only one PXP clock needs to be described and it should be named
"axi".

Also pass the compatible string as suggested in the bindings doc.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-12-10 10:02:10 +08:00
Anson Huang 39db0e136b ARM: dts: imx6: add mmdc ipg clock
i.MX6 SoCs has MMDC clock gates in CCM CCGR, add
clock property for MMDC driver's clock operation.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-11-05 10:19:09 +08:00
Rob Herring 5a2ecf0de0 ARM: dts: imx: Fix SPI bus warnings
dtc has new checks for SPI buses. Fix the warnings in node names and
unit-addresses.

There's over 100 warnings for FSL boards, a few examples:

arch/arm/boot/dts/imx28-duckbill-2-spi.dtb: Warning (spi_bus_bridge): /apb@80000000/apbh@80000000/ssp@80014000: node name for SPI buses should be 'spi'
arch/arm/boot/dts/imx53-ppd.dtb: Warning (spi_bus_bridge): /soc/aips@50000000/spba@50000000/ecspi@50010000: node name for SPI buses should be 'spi'
arch/arm/boot/dts/imx6dl-colibri-eval-v3.dtb: Warning (spi_bus_reg): /soc/aips-bus@2000000/spba-bus@2000000/spi@2014000/mcp251x@1: SPI bus unit address format error, expected "0"

Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: Li Yang <leoyang.li@nxp.com>
Cc: Stefan Agner <stefan@agner.ch>
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-09-26 17:00:07 +08:00
Olof Johansson 278b1c8e08 i.MX device tree update for 4.19:
- Add device tree support for i.MX6SLL SoC.
  - New board support: ConnectCore 6UL System-On-Module and SBC Express;
    ZII SCU2 Mezz, SCU3 ESB, SSMB SPU3 and CFU1 board; i.MX6SLL EVK
    board; Engicam i.CoreM6 1.5 Quad/Dual MIPI; LogicPD MX31Lite board;
    i.MX53 HSC/DDC boards from K+P.
  - Remove fake regulator bus container node and enable USB OTG support
    for i.MX6 wandboard and riotboard.
  - Populate RAVE SP EEPROM, backlight, power button and watchdog devices
    for ZII boards.
  - Add cooling-cells for cpufreq cooling device, and add OPP properties
    for all CPUs.
  - A series from Anson Huang to enable LCD panel and backlight support
    for imx6sll-evk board.
  - Make pfuze100 sw4 regulator always-on for for a few Freescale/NXP
    development boards, because the regulator is critical there and
    cannot be turned off.
  - Add more device support for i.MX5: AIPSTZ, SAHARA Crypto, M4IF,
    Tigerp, PMU, CodaHx4 VPU.
  - Enable PMU secure-reg-access for imx51-babbage, imx51-zii-rdu1 and
    imx53-ppd board.
  - Switch more device tree license to use SPDX identifier.
  - Switch to use OF graph to describe the display for imx7d-nitrogen7.
  - Add chosen/stdout-path for more boards, so that earlycon can be
    enabled more easily on kernel cmdline.
  - Convert GPC to new device tree bindings and add Vivante gpu nodes
    for i.MX6SL SoC.
  - Add more device support for imx6dl-mamoj board: parallel display,
    WiFi and USB.
  - A series from Stefan Agner to update i.MX6 apalis/colibri boards on
    various aspects: SD/MMC card detection, regulators, etc.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJbUo3SAAoJEFBXWFqHsHzOtMAH/3UgJzGvYHIiOVVTAvwz3V5y
 vZibWFOmzQDUcn3nrP54wGaMHT0abQ81AwrHKr0Bj1ujeJTCglRT8N5I/Dph6emU
 aDSBIlv8y1fqF/96LhDk3bqGwg/pdF29dWBsaV45Va/ZZGErEzSTNlxV/n+nHkVy
 S6rjGRkqk9abGmpDdJg2gYDYisDr9dl8iAEEBzBmOWLusEL2nvrqaMEmqBtVDFYd
 fwLa+4HYZF3DaIfEjYy1INHeoCyBEAk8BS9u7b1jWTxONLNXh5GA6qFhiJgtZYrk
 9+/mQ6D44fWkpJjWCOP4I12iRa5fr1UyVTslq4D6BmVK44Mhym/kyi9wXkv4fmc=
 =j9qu
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt

i.MX device tree update for 4.19:
 - Add device tree support for i.MX6SLL SoC.
 - New board support: ConnectCore 6UL System-On-Module and SBC Express;
   ZII SCU2 Mezz, SCU3 ESB, SSMB SPU3 and CFU1 board; i.MX6SLL EVK
   board; Engicam i.CoreM6 1.5 Quad/Dual MIPI; LogicPD MX31Lite board;
   i.MX53 HSC/DDC boards from K+P.
 - Remove fake regulator bus container node and enable USB OTG support
   for i.MX6 wandboard and riotboard.
 - Populate RAVE SP EEPROM, backlight, power button and watchdog devices
   for ZII boards.
 - Add cooling-cells for cpufreq cooling device, and add OPP properties
   for all CPUs.
 - A series from Anson Huang to enable LCD panel and backlight support
   for imx6sll-evk board.
 - Make pfuze100 sw4 regulator always-on for for a few Freescale/NXP
   development boards, because the regulator is critical there and
   cannot be turned off.
 - Add more device support for i.MX5: AIPSTZ, SAHARA Crypto, M4IF,
   Tigerp, PMU, CodaHx4 VPU.
 - Enable PMU secure-reg-access for imx51-babbage, imx51-zii-rdu1 and
   imx53-ppd board.
 - Switch more device tree license to use SPDX identifier.
 - Switch to use OF graph to describe the display for imx7d-nitrogen7.
 - Add chosen/stdout-path for more boards, so that earlycon can be
   enabled more easily on kernel cmdline.
 - Convert GPC to new device tree bindings and add Vivante gpu nodes
   for i.MX6SL SoC.
 - Add more device support for imx6dl-mamoj board: parallel display,
   WiFi and USB.
 - A series from Stefan Agner to update i.MX6 apalis/colibri boards on
   various aspects: SD/MMC card detection, regulators, etc.

* tag 'imx-dt-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (96 commits)
  ARM: dts: imx7d: remove "operating-points" property for cpu1
  ARM: dts: vf610-zii-ssmb-spu3: Fix W=1 level warnings
  ARM: dts: vf610: Add ZII CFU1 board
  ARM: dts: imx6dl-mamoj: Add usb host and device support
  ARM: dts: imx6dl-mamoj: Add Wifi support
  ARM: dts: imx6dl-mamoj: Add parallel display support
  ARM: dts: vf610: Add ZII SSMB SPU3 board
  ARM: dts: imx6ul-pico-hobbit: Do not hardcode the memory size
  ARM: dts: imx6sl-evk: make pfuze100 sw4 always on
  ARM: dts: imx6sll-evk: make pfuze100 sw4 always on
  ARM: dts: imx6sx-sdb-reva: make pfuze100 sw4 always on
  ARM: dts: imx6qdl-sabresd: make pfuze100 sw4 always on
  ARM: dts: imx6sl-evk: add missing GPIO iomux setting
  ARM: dts: imx51-zii-scu3-esb: Fix RAVE SP watchdog compatible string
  ARM: dts: imx51-zii-scu3-esb: Add switch IRQ line pinumx config
  ARM: dts: imx6sx-nitrogen6sx: remove obsolete display configuration
  ARM: dts: imx7d-nitrogen7: use OF graph to describe the display
  ARM: dts: imx: Switch Boundary Devices boards to SPDX identifier
  ARM: dts: imx6sl: Add vivante gpu nodes
  ARM: dts: imx6sll-evk: enable SEIKO 43WVF1G lcdif panel
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-07-21 14:55:45 -07:00
Anson Huang ba4446d4fa ARM: dts: imx6sx: add ocram_s support
i.MX6SX has a 16KB always-on ocram bank called
ocram_s, enable it as another mmio sram.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-07-11 21:12:12 +08:00
Fabio Estevam 2db286d736 ARM: dts: imx: Remove optional 'fsl,sec-era' property
Since commit 654f2b937b ("crypto: caam - allow retrieving 'era' from
register") the CAAM driver is capable of obtaining the era version by
reading the appropriate CAAM registers, so let the CAAM driver discover
the era version in run-time instead of hardcoding such information in the
device tree.

According to Documentation/devicetree/bindings/crypto/fsl-sec4.txt the
'fsl,sec-era' is an optional property and this can be safely removed
now.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-07-11 20:32:15 +08:00
Anson Huang 77cf8a009d ARM: dts: imx6: correct anatop regulators range
According to i.MX6 datasheet, the LDO_1P1's typical
programming operating range is 1.0V to 1.2V, and
the LDO_2P5's typical programming operating range
is 2.25V to 2.75V, correct LDO_1P1 and LDO_2P5's
regulator range settings for i.MX6 SoCs.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-07-03 14:39:25 +08:00
Anson Huang f3d80deb08 ARM: dts: imx: add cooling-cells for cpufreq cooling device
Add #cooling-cells for i.MX6/7 SoCs for cpufreq cooling device usage.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Bastian Stender <bst@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-06-28 08:59:09 +08:00
Oleksij Rempel 1bcfe05640 ARM: dts: imx6sx: fix irq for pcie bridge
Use the correct IRQ line for the MSI controller in the PCIe host
controller. Apparently a different IRQ line is used compared to other
i.MX6 variants. Without this change MSI IRQs aren't properly propagated
to the upstream interrupt controller.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Fixes: b1d17f68e5 ("ARM: dts: imx: add initial imx6sx device tree source")
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-06-19 14:39:36 +08:00
Fabio Estevam 71db394874 ARM: dts: imx6/7: Remove unit-address from anatop regulators
Remove unit-address and reg property from anatop regulators to fix
the following DTC warnings with W=1:

arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (unique_unit_address): /soc/aips-bus@2000000/anatop@20c8000/regulator-vddcore@20c8140: duplicate unit-address (also used in node /soc/aips-bus@2000000/anatop@20c8000/regulator-vddpu@20c8140)
arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (unique_unit_address): /soc/aips-bus@2000000/anatop@20c8000/regulator-vddcore@20c8140: duplicate unit-address (also used in node /soc/aips-bus@2000000/anatop@20c8000/regulator-vddsoc@20c8140)
arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (unique_unit_address): /soc/aips-bus@2000000/anatop@20c8000/regulator-vddpu@20c8140: duplicate unit-address (also used in node /soc/aips-bus@2000000/anatop@20c8000/regulator-vddsoc@20c8140)

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-05-20 20:22:08 +08:00
Fabio Estevam 241f76b24b ARM: dts: imx: Switch to SPDX identifier
Adopt the SPDX license identifier headers to ease license compliance
management.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-05-14 22:08:05 +08:00
Anson Huang 1bf52b98ae ARM: dts: imx6sx-sabreauto: add external 24MHz clock source
On i.MX6SX SabreAuto board, there is external 24MHz clock
source for analog clock2, add this clock source to clock tree
and remove "clocks" container for all input clocks.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-05-02 21:19:17 +08:00
Lucas Stach 6578ced6e0 ARM: dts: imx6: remove GPU subsystem nodes
They aren't needed by the etnaviv driver anymore and have been removed
from the binding.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-02-24 16:15:59 +08:00
Marco Franchi 7f08e6aabd ARM: dts: imx: Remove empty memory size nodes
Remove the empty reg property from the SoC dtsi files in order to avoid
duplicate memory nodes when the correct size is passed in board dts files.

Signed-off-by: Marco Franchi <marco.franchi@nxp.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-02-12 21:13:14 +08:00
Anson Huang bf4556703b ARM: dts: imx6sx: add ARM power domain support
Add ARM power domain in PGC.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Acked-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-02-12 21:13:12 +08:00
Anson Huang 7a48559096 ARM: dts: imx6sx: add pu power domain support
Add PU power domain support, GPU is the only
module inside PU power domain, and PU power
is supplied by LDO_SOC.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Acked-by: Dong Aisheng <aisheng.dong@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2018-02-12 21:13:12 +08:00
Fabio Estevam 1f1b7ec671 ARM: dts: imx6sx: Add support for PCI power domain
Previously PCI support was working because the bootloader has previously
powered up the PCI power domain.

Represent the PCI power domain, so that PCI is functional without
relying on the PCI support from the bootloader.

Tested on a imx6sx-sdb board with no PCI support in the bootloader.

Reported-by: Abel Vesa <abel.vesa@nxp.com>
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-12-26 16:15:44 +08:00
Fabio Estevam 38f17f9bbb ARM: dts: imx6sx: Fix PCI non-prefetchable memory range
The third cell of the PCI non-prefetchable memory range should be
0x08000000, so change it accordingly.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-12-26 16:15:44 +08:00
Fabio Estevam bc2c39b562 ARM: dts: imx6sx: Fix spba-bus unit address
The correct unit address for spba-bus is 0x2240000, so change it
accordingly in order to fix the following build warning with W=1:

arch/arm/boot/dts/imx6sx-sabreauto.dtb: Warning (simple_bus_reg): Node /soc/aips-bus@2200000/spba-bus@2200000 simple-bus unit address format error, expected "2240000"

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-12-26 16:15:44 +08:00
Fabio Estevam 685e1321ba ARM: dts: imx6: Add unit address and reg for the anatop nodes
Add unit address and reg for the anatop nodes in order to fix the
following build warnings with W=1:

arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (simple_bus_reg): Node /soc/aips-bus@2000000/anatop@20c8000/regulator-1p1 missing or empty reg/ranges property
arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (simple_bus_reg): Node /soc/aips-bus@2000000/anatop@20c8000/regulator-3p0 missing or empty reg/ranges property
arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (simple_bus_reg): Node /soc/aips-bus@2000000/anatop@20c8000/regulator-2p5 missing or empty reg/ranges property
arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (simple_bus_reg): Node /soc/aips-bus@2000000/anatop@20c8000/regulator-vddcore missing or empty reg/ranges property
arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (simple_bus_reg): Node /soc/aips-bus@2000000/anatop@20c8000/regulator-vddpu missing or empty reg/ranges property
arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (simple_bus_reg): Node /soc/aips-bus@2000000/anatop@20c8000/regulator-vddsoc missing or empty reg/ranges property

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-12-26 16:15:44 +08:00
Fabio Estevam 1e98960372 ARM: dts: imx6: Move nodes which have no reg property out of bus
Move tempmon, ldb and pmu nodes from soc node to root node.

The nodes that have been moved do not have any register properties and thus
shouldn't be placed on the bus.

This fixes the following build warnings with W=1:

arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (simple_bus_reg): Node /soc/aips-bus@2000000/tempmon missing or empty reg/ranges property
arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (simple_bus_reg): Node /soc/aips-bus@2000000/ldb missing or empty reg/ranges property
arch/arm/boot/dts/imx6dl-apf6dev.dtb: Warning (simple_bus_reg): Node /soc/pmu missing or empty reg/ranges property

Based on a patch from Simon Horman for r8a7795.dtsi.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-12-26 16:15:44 +08:00
Fabio Estevam e68ce7c493 ARM: dts: imx6sx: Fix the PCI representation
Currently the imx pci driver fails to probe on i.MX6SX.

Fix the PCI representation so that the driver can be probed and
PCI devices can be detected.

Tested on a im6sx-sdb board:

00:00.0 Class 0604: 16c3:abcd
01:00.0 Class 0280: 8086:08b1

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-12-26 16:15:44 +08:00
Troy Kisky e94a2309b0 ARM: dts: imx: name the interrupts for the fec ethernet driver
imx7s/imx7d has the ptp interrupt newly added as well.

For imx7, "int0" is the interrupt for queue 0 and ENET_MII
"int1" is for queue 1
"int2" is for queue 2

For imx6sx, "int0" handles all 3 queues and ENET_MII

And of course, the "pps" interrupt is for the PTP_CLOCK_PPS interrupts
This will help document what each interrupt does.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-12-26 16:15:44 +08:00
Arnd Bergmann da7920e31d i.MX device tree updates for 4.15:
- New board support: i.MX51 ZII RDU1, i.MX53 GE Healthcare PPD, i.MX6
    TX modules for MB7 from  Ka-Ro Electronics, i.MX6 Wandboard revd1
    variants, i.MX6 LWN DISPLAY5 board, Pistachio i.MX6Q board, i.MX6SX
    Vining-2000 board.
  - Use the 'vpcie-supply' property for PCIe device for boards
    imx6qdl-sabresd, imx6q-novena and imx6q-cm-fx6.
  - A series from Jagan Teki to update imx6qdl-icore board with audio,
    touch and CAN support.
  - Switch to nvmem for accessing OCOTP from tempmon for i.MX6SX and add
    tempmon support for i.MX6UL.
  - A bunch of patches from Lothar Waßmann updating Ka-Ro i.MX28, i.MX53
    and i.MX6 TX modules.
  - Fix DTC warnings in i.MX device trees, dropping leading zeros from
    unit address, correcting display nodes notation and display port
    names, fixing nodes with unit name and no reg property.
  - Other random device updates for various board support.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJZ7ypUAAoJEFBXWFqHsHzOpVkH/RsZ3IMg8O5tMO6uz1CNmutR
 3EAXfBeQTnQZe2A/3XkDRpJWGiIniRSVAf6rYipmeyV9jV2Ff4vfiv5gnhg1ev+B
 eV35W3gb3EclHKrHgHVMkfzWfNp63L1etdVFrY0QuMc0wQbch0TwO3TTPHpk0+AS
 eauLOMY1qzRVnayzZ8IeTn++igsoj4KT1NmIprNKe66eDAOfWxO0IB26r0svKrhg
 mIlqTUG1p6I/H8h6hQZuRJaLM9no3dHDcm7Scbf1y8Mvf5mPVTTHKXGLLyEVT/UB
 SEWydfAt0VEAEA+Uk6pFJsrG1KRx0hwF46DHk2BXj7A1wxBsUIPnMSoMRWgGrZE=
 =grKK
 -----END PGP SIGNATURE-----

Merge tag 'imx-dt-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt

Pull "i.MX device tree updates for 4.15" from Shawn Guo:

 - New board support: i.MX51 ZII RDU1, i.MX53 GE Healthcare PPD, i.MX6
   TX modules for MB7 from  Ka-Ro Electronics, i.MX6 Wandboard revd1
   variants, i.MX6 LWN DISPLAY5 board, Pistachio i.MX6Q board, i.MX6SX
   Vining-2000 board.
 - Use the 'vpcie-supply' property for PCIe device for boards
   imx6qdl-sabresd, imx6q-novena and imx6q-cm-fx6.
 - A series from Jagan Teki to update imx6qdl-icore board with audio,
   touch and CAN support.
 - Switch to nvmem for accessing OCOTP from tempmon for i.MX6SX and add
   tempmon support for i.MX6UL.
 - A bunch of patches from Lothar Waßmann updating Ka-Ro i.MX28, i.MX53
   and i.MX6 TX modules.
 - Fix DTC warnings in i.MX device trees, dropping leading zeros from
   unit address, correcting display nodes notation and display port
   names, fixing nodes with unit name and no reg property.
 - Other random device updates for various board support.

* tag 'imx-dt-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (63 commits)
  ARM: dts: imx53-tx53: fix interrupt flags
  ARM: dts: imx28-tx28: fix interrupt flags
  ARM: dts: display5: Device tree description of LWN's DISPLAY5 board
  ARM: dts: imx53-qsb-common: Fix 'led_gpio7_7@0' node with unit name and no reg property
  ARM: dts: imx53-m53evk: Fix 'led_gpio@0' node with unit name and no reg property
  ARM: dts: imx53: Fix 'usbphy@x' node with unit name and no reg property
  ARM: dts: imx51-ts4800: Fix 'port@0' node with unit name and no reg property
  ARM: dts: imx51-apf51dev: Fix 'backlight@bl1' node with unit name and no reg property
  ARM: dts: imx: add ZII RDU1 board
  ARM: dts: imx: add support for TX6 modules on MB7 baseboard
  ARM: dts: imx: add support for TX6QP
  ARM: dts: imx6-tx6: add a .dtsi file for the MB7 baseboard
  ARM: dts: imx6-tx6: move display configuration to .dtsi file
  ARM: dts: imx6-tx6: add support for I2C bus recovery
  ARM: dts: imx6-tx6: convert to using simple-audio-card
  ARM: dts: imx6-tx6: specify ethernet phy reset post-delay
  ARM: dts: imx6-tx6: improve ethernet related pinctrl setup
  ARM: dts: imx6-tx6: add trickle-charge config for DS1339
  ARM: dts: imx6-tx6: remove obsolete ipu1 alias
  ARM: dts: imx6-tx6: remove obsolete eeti,egalax_ts
  ...

[arnd: made sure we have no new leading zeroes in unit address during merge]
2017-10-30 14:06:39 +01:00
Leonard Crestez a6c856e9a8 ARM: dts: imx6sx: Use nvmem-cells for tempmon
On imx6sx accessing OCOTP directly is wrong because the ocotp clock
needs to be enabled first. Use the nvmem-cells binding instead.

This requirement does not apply to older imx6qdl chips because there the
ocotp access clock (clk_ipg_s) is always enabled.

This is visible by comparing the "System Clocks, Gating, and Override"
tables (OCOTP rows) in the 6DQ and 6SX manuals:
http://www.nxp.com/assets/documents/data/en/reference-manuals/IMX6SXRM.pdf
http://www.nxp.com/assets/documents/data/en/reference-manuals/IMX6DQRM.pdf

This happens to work right now because the ocotp clock might be enabled
for some other reason. In particular the it might be enabled from the
bootloader and it only gets disabled late during boot in
clk_disable_unused, after imx-thermal has completed probing.

If imx-thermal is compiled as a module then the system can hang on
probe.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-10-23 08:19:37 +08:00
Rob Herring 8dccafaa28 arm: dts: fix unit-address leading 0s
Fix dtc warnings for 'simple_bus_reg' due to leading 0s. Converted using
the following command:

perl -p -i -e 's/\@0+([0-9a-f])/\@$1/g' `find arch/arm/boot/dts -type -f -name '*.dts*'

Dropped changes to ARM, Ltd. boards LED nodes and manually fixed up some
occurrences of uppercase hex.

Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-10-20 00:37:54 +02:00
Guy Shapiro 87a84c6200 ARM: dts: imx: update snvs-poweroff mask
Make the syscon-poweroff driver change only the shutdown bits on the
SNVS_LP control register.

This change fixes an issue with the RTC wakeup alarm, that was
previously disabled during power off.

Signed-off-by: Guy Shapiro <guy.shapiro@mobi-wize.com>
Reviewed-by: Marcin Niestroj <m.niestroj@grinn-global.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-07-16 09:42:15 +08:00
Andrey Smirnov 38281a4754 ARM: dts: imx: Reintroduce 'anatop-enable-bit' where appropriate
Now that support for 'anatop-enable-bit' has been added to ANADIG
driver, reintroduce 'anatop-enable-bit' for all applicable LDOs.

Cc: yurovsky@gmail.com
Cc: Dong Aisheng <aisheng.dong@nxp.com>
Cc: Sascha Hauer <kernel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-05-21 09:52:58 +08:00
Rob Herring 3e1b857786 ARM: dts: imx: fix PCI bus dtc warnings
dtc recently added PCI bus checks. Fix these warnings.

Signed-off-by: Rob Herring <robh@kernel.org>
Cc: Sascha Hauer <kernel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-04-10 16:16:12 +08:00
Fabio Estevam e3abb14e81 ARM: dts: imx6sx: Make UART compatible to 'imx6q-uart'
UART on i.MX6SX (like all other i.MX6 SoC variants) has the same
programming model as the 'imx6q-uart' type, so add it to the compatible
UART string.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-04-10 16:16:04 +08:00
Fabio Estevam a971c5545c ARM: dts: imx: Pass 'chosen' and 'memory' nodes
Commit 7f107887d1 ("ARM: dts: imx: Remove skeleton.dtsi") causes boot
issues when the bootloader does not create a 'chosen' node if such node
is not present in the dtb.

The reason for the boot failure is well explained by Javier Martinez
Canillas: "the decompressor relies on a pre-existing chosen node to be
available to insert the command line and merge other ATAGS info."

, so pass an empty 'chosen' node to fix the boot problem.

This issue has been seen in the kernelci reports with Barebox as
bootloader.

Also pass the 'memory' node in order to fix boot issues on the SolidRun
iMX6 platforms.

Fixes: 7f107887d1 ("ARM: dts: imx: Remove skeleton.dtsi")
Reported-by: kernelci.org bot <bot@kernelci.org>
Reported-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-01-24 21:24:28 +08:00
Fabio Estevam 116dad7d43 ARM: dts: imx6: Disable "weim" node in the dtsi files
Commit 1be81ea586 ("ARM: dts: imx6: Add imx-weim parameters to
dtsi's") causes the following probe error when the weim node is not
present on the board dts (such as imx6q-sabresd):

imx-weim 21b8000.weim: Invalid 'ranges' configuration
imx-weim: probe of 21b8000.weim failed with error -22

There is no need to always enable the "weim" node on mx6. Do the same
as in the other i.MX dtsi files where "weim" is disabled and only gets
enabled on a per dts basis.

All the imx6 weim dts users explicitily provide 'status = "okay"', so
this change has no impact on current imx6 weim users.

If a board does not use the weim driver it will not describe its 'ranges'
property, so simply disable the 'weim' node in the imx6 dtsi files to
avoid such probe error message.

Fixes: 1be81ea586 ("ARM: dts: imx6: Add imx-weim parameters to dtsi's")
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-01-03 10:59:07 +08:00
Fabio Estevam 7f107887d1 ARM: dts: imx: Remove skeleton.dtsi
As explained by commit 9c0da3cc61 ("ARM: dts: explicitly mark
skeleton.dtsi as deprecated"), including skeleton.dtsi is deprecated.

This fixes the following warning with W=1:

Warning (unit_address_vs_reg): Node /memory has a reg or ranges property, but no unit name

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-11-14 15:36:04 +08:00
Joshua Clayton 1be81ea586 ARM: dts: imx6: Add imx-weim parameters to dtsi's
imx-weim should always set address-cells to 2,
and size_cells to 1.
On imx6, fsl,weim-cs-gpr will always be &gpr

Set these common parameters in the dtsi file,
rather than in a downstream dts.

Signed-off-by: Joshua Clayton <stillcompiling@gmail.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-11-05 19:45:45 +08:00
Jagan Teki 4631170793 ARM: dts: imx: Fix "ERROR: code indent should use tabs where possible"
Fixed code indent tabs in respetcive imx23, imx51, imx53, imx6dl, imx6q
and imx6sx dtsi and dts files.

Signed-off-by: Jagan Teki <jagan@openedev.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-11-02 22:43:56 +08:00
Marek Vasut f7f3b484d5 ARM: dts: imx6sx: Fix LCDIF interrupt type
The LCDIF interrupt should be triggered by the rising edge of the
IRQ line because we only want the interrupt to trigger once per each
frame. It seems the LCDIF IRQ line cannot be explicitly de-asserted
by software, so the previous behavior before this patch, where the
interrupt was triggered by level-high status of the IRQ line, caused
the interrupt to fire again immediatelly after it was handled, which
caused the system to lock up due to the high rate of interrupts.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Lucas Stach <l.stach@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-10-24 16:47:50 +08:00
Vladimir Zapolskiy bb728d662b ARM: dts: add gpio-ranges property to iMX GPIO controllers
To establish a connection between GPIO controllers and pin multiplexor
controller add gpio-ranges properties to all GPIO controllers found
on iMX50, iMX6Q/D, iMX6DL/S, iMX6SL, iMX6SX, iMX6UL and iMX7D/S
SoCs. The change was done after human parsing of output from

% gawk -n '{ sub(/.*__/, ""); if ($1 ~ "^GPIO") print $1, $2/4}' imxXX-pinfunc.h | sort -n

Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-09-09 14:21:55 +08:00
Marek Vasut 51c578efc3 ARM: dts: imx6sx: Add GPU bindings
Add bindings for the Vivante GC400T GPU found in the i.MX6SX.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-08-29 21:38:47 +08:00
Fabio Estevam 298701ec04 ARM: dts: imx: Remove unneeded unit-addresses
Building with W=1 option leads to several warnings like:

Warning (unit_address_vs_reg): Node /soc/aips-bus@02000000/anatop@020c8000/regulator-1p1@110 has a unit name, but no reg property

Fix them by removing the unneeded unit-addresses.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-06-06 16:17:16 +08:00
Fabio Estevam fe4266baba ARM: dts: imx6sx: Add 198MHz operating point
198MHz is a valid operating point for mx6sx.

Add entries for VDD_ARM_CAP and VDD_SOC_CAP voltages for 198MHz according
to the imx6sx datahseet:
http://cache.nxp.com/files/32bit/doc/data_sheet/IMX6SXIEC.pdf

(a 25mV offset is added to the minimum allowed values for safety).

These values also match the ones from the NXP kernel.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-04-26 19:52:17 +08:00
Fabio Estevam 88b53b9c1f ARM: dts: imx6sx: Remove unused property
Property 'dma-source' is not used anywhere, nor it is documented, so
let's just get rid of it.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-04-13 17:47:57 +08:00
Fabio Estevam 78f31b0b01 ARM: dts: imx6sx: Fix SAI DMA index
According to sdma_peripheral_type in include/linux/platform_data/dma-imx.h
IMX_DMATYPE_SAI corresponds to index 24, so fix it accordingly.

Suggested-by: Zidan Wang <zidan.wang@nxp.com>
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-04-13 17:47:57 +08:00
Shengjiu Wang 09d3059adc ARM: dts: imx6: Change the clock name for spba clock
Audio IP need the spba clock, but original clock name "dma" is not
accurate, so change it to name "spba". The audio driver has been
using the new name "spba", the binding document has been updated.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-12-22 20:43:36 +08:00
Fabio Estevam eb45ff7469 ARM: dts: imx6sx: Pass the 'adck-max-frequency' property
Specify the 'adck-max-frequency' property in the adc nodes.

According to Documentation/devicetree/bindings/iio/adc/vf610-adc.txt
this is a recommended property.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Acked-by: Fugang Duan <B38611@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-12-22 20:42:22 +08:00
Peter Chen 2b1a40e8d1 ARM: dts: imx6: change default burst size for USB
It can improve the USB performance when choosing larger
burst size at some systems (bus size is larger), there is
no side effect if this burst size is larger than bus size.

Signed-off-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2015-12-22 20:41:51 +08:00