1169286 Commits

Author SHA1 Message Date
Marek Vasut
562d222f23 arm64: dts: imx8mp: Add support for Data Modul i.MX8M Plus eDM SBC
Add support for Data Modul i.MX8M Plus eDM SBC board. This is an
evaluation board for various custom display units. Currently
supported are serial console, ethernet, eMMC, SD, SPI NOR,
USB host and USB OTG.

Reviewed-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-08 15:25:57 +08:00
Marek Vasut
eda09fe149 arm64: dts: imx8mp: Add display pipeline components
Add LCDIF scanout engine and DSIM bridge nodes for i.MX8M Plus.
This makes the DSI display pipeline available on this SoC.

Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:52:31 +08:00
Marek Vasut
d825fb6455 arm64: dts: imx8mn: Add display pipeline components
Add LCDIF scanout engine and DSIM bridge nodes for i.MX8M Nano.
This makes the DSI display pipeline available on this SoC.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:52:29 +08:00
Marek Vasut
c8c96afa6e arm64: dts: imx8mm: Add display pipeline components
Add LCDIF scanout engine and DSIM bridge nodes for i.MX8M Mini.
This makes the DSI display pipeline available on this SoC.

Reviewed-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:52:18 +08:00
Frank Li
2faf4ebcee arm64: dts: freescale: imx8qxp-mek: enable cadence usb3
Enable USB3 controller, phy and typec related nodes.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:43:39 +08:00
Frank Li
a8bd7f1551 arm64: dts: imx8qxp: add cadence usb3 support
There are cadence usb3.0 controller in 8qxp and 8qm.
Add usb3 node at common connect subsystem.

Signed-off-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:43:30 +08:00
Peng Fan
2858e62e5d arm64: dts: imx8mq-librem5: add missing #clock-cells
'#clock-cells' is a dependency of 'clock-output-names', following
binding doc, add it.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:42:34 +08:00
Peng Fan
cb562edda0 arm64: dts: imx8mm-prt8mm: update pinctrl to match dtschema
The dtschema requires 'grp' in the end, so update the name

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:42:34 +08:00
Peng Fan
4629e559d9 arm64: dts: imx8mn-bsh-smm: update pinctrl to match dtschema
The dtschema requires 'grp' in the end, so update the name

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:42:33 +08:00
Peng Fan
6de2a9e20f arm64: dts: imx8mm-emcon: update pinctrl to match dtschema
The dtschema requires 'grp' in the end, so update the name

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:42:33 +08:00
Peng Fan
72783d6520 arm64: dts: imx8mq-librem5: update pinctrl to match dtschema
The dtschema requires 'grp' in the end, so update the name.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:42:33 +08:00
Peng Fan
523306b660 arm64: dts: imx8mm-ddr4-evk: update gpmi pinctrl to match dtschema
The dtschema requires 'grp' in the end, so update the name.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:42:33 +08:00
Peng Fan
788fd97b24 arm64: dts: imx8mn-evk: update i2c pinctrl to match dtschema
The dtschema requires 'grp' in the end, so update the name.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:42:33 +08:00
Uwe Kleine-König
7c0277ab8c arm64: dts: imx8mp: Add GPT blocks
The i.MX8MP includes the same GPT blocks as the i.MX6DL. Add all 6
instances.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:42:33 +08:00
Peng Fan
30c6a9a642 arm64: dts: imx8-apalis-v1.1: drop ci-disable-lpm
This is an NXP downstream property. And no binding doc, and no
driver use this property. So drop it

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-04-06 09:42:33 +08:00
Peng Fan
c947af2cb2 arm64: dts: imx8dxl: drop clocks from scu clock controller
The clocks and clock-names are not documented and not used, drop them.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-28 14:37:50 +08:00
Peng Fan
45bd868b5b arm64: dts: imx8mp: verdin-yavia: drop disable-over-current
disable-over-current is for chipidea IP, i.MX8MQ use dwc3, this property
is not valid. Drop it.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-28 14:37:50 +08:00
Peng Fan
6bd577c0a4 arm64: dts: imx8mq: tqma8mq-mba8mx: drop disable-over-current
disable-over-current is for chipidea IP, i.MX8MQ use dwc3, this property
is not valid. Drop it.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-28 14:37:49 +08:00
Marek Vasut
44eeddd6bd arm64: dts: imx8mp: Add support for DH electronics i.MX8M Plus DHCOM and PDK3
Add support for DH electronics i.MX8M Plus DHCOM SoM on PDK3 carrier board.
Currently supported are serial console, EQoS and FEC ethernets, eMMC, SD,
SPI NOR, CAN, M.2 E-Key or M.2 M-Key PCIe, USB .

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:48:22 +08:00
Philippe Schenker
1fe5ea7cc2 arm64: dts: colibri-imx8x: Add iris v2 carrier board
Add the Toradex Iris V2 Carrier Board for Colibri iMX8X, small form-factor
production ready board.

Additional details available at:
https://www.toradex.com/products/carrier-boards/iris-carrier-board

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:51 +08:00
Philippe Schenker
aefb5e2d97 arm64: dts: colibri-imx8x: Add iris carrier board
Add the Toradex Iris Carrier Board for Colibri iMX8X, small form-factor
production ready board.

Additional details available at:
https://www.toradex.com/products/carrier-boards/iris-carrier-board

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:49 +08:00
Philippe Schenker
144f67f68a arm64: dts: colibri-imx8x: Add aster carrier board
Add the Toradex Aster Carrier Board for Colibri iMX8X, small form-factor
with header compatible with Arduino Uno and Raspberry Pi (RPi) maker
boards.

Additional details available at:
https://www.toradex.com/products/carrier-boards/aster-carrier-board

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:46 +08:00
Philippe Schenker
f018dfb311 arm64: dts: colibri-imx8x: Add todo comments
Highlight what is still missing.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:44 +08:00
Philippe Schenker
cc900d0ffc arm64: dts: colibri-imx8x: Move gpio-keys to som level
SODIMM_45 that is connected to "&lsio_gpio3 10" is defined in the
Colibri standard to be a wakeup pin.
Move this to the SoM level device-tree and keep it disabled by default
but do enable it again on the carrier-board.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:41 +08:00
Philippe Schenker
e2c7fa7246 arm64: dts: colibri-imx8x: Set thermal thresholds
Set critical/alert thermal thresholds for all relevant SOC
temperature trips to the IT value (max T_junction 105 degree
Celsius) in accordance with the IT grade of the SOM.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:39 +08:00
Philippe Schenker
09fad38e26 arm64: dts: colibri-imx8x: Add no-1-8-v to sd-card
Many Colibri carrier boards are using 3.3V pull-up resistors on the
SD-Card connector. Letting it switch to 1.8V is an invalid state.

Do prevent this from happening by keeping the signaling voltage at 3.3V.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:37 +08:00
Philippe Schenker
2815061304 arm64: dts: colibri-imx8x: eval: Add spi-to-can
Add mcp2515 spi-to-can to &lpspi2.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:35 +08:00
Philippe Schenker
e74b958c8e arm64: dts: colibri-imx8x: Add colibri pwm b, c, d
Add Colibri PWM_B, PWM_C, PWM_D to the module-level device-tree and set
the status to ok on the eval-board.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:33 +08:00
Philippe Schenker
ee9936d64b arm64: dts: colibri-imx8x: Add jpegenc/dec
jpeg encoder and decoder are available. Do enable them in the module
level device-tree since those are self-contained.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:31 +08:00
Philippe Schenker
851884b264 arm64: dts: colibri-imx8x: Disable touchscreen by default
Do not enable the touchscreen. By default it is not used but should be
kept to enable it from a file that includes imx8x-colibri.dtsi.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:29 +08:00
Philippe Schenker
551648021f arm64: dts: colibri-imx8x: Add gpio-line-names
This commit adds gpio-line-names in line with other SoM from Toradex.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:27 +08:00
Philippe Schenker
a537c9618d arm64: dts: colibri-imx8x: Add SPI
Add Colibri SPI to the board. lpspi2 is being exposed on the SoM edge.
Add settings to the module-level but finally enable it on the eval-board
dtsi.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:25 +08:00
Philippe Schenker
9c279d216f arm64: dts: colibri-imx8x: Add pinctrl group for hdmi hpd
The colibri imx8x contains a dedicated gpio meant for HDMI
hot-plug-detect. Add a pinctrl group to make this usable.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:23 +08:00
Philippe Schenker
7171ec2953 arm64: dts: colibri-imx8x: Add separate pinctrl group for cs2
Add a separate pinctrl group for chip-select 2 for Colibri SPI. That way
one is able to use it separately.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:21 +08:00
Philippe Schenker
bd74f83de7 arm64: dts: colibri-imx8x: Correct pull on lcdif
The pads USDHC1_RESET_B and MCLK_IN1 need a pull-down instead of
pull-disabled. Correct this.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:19 +08:00
Philippe Schenker
4d2adf7381 arm64: dts: colibri-imx8x: Split pinctrl_hog1
Split pinctrl_hog1 into a second group so CSI_MCLK can be muxed to a
gpio on its own.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:17 +08:00
Philippe Schenker
5e634a9092 arm64: dts: colibri-imx8x: Add pinctrl group for csi_mclk
Add missing pinctrl groups that can be used to enable the correct
muxing if csi_mclk is needed on SODIMM 75.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:14 +08:00
Philippe Schenker
7ece3cbc8b arm64: dts: colibri-imx8x: Add atmel pinctrl groups
Add pinctrl groups for enabling atmel touchscreen support.
Remove the pads out of pinctrl_hog0 as they now can be enabled more
specific using pinctrl_atmel_conn label.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:12 +08:00
Philippe Schenker
7efa409ed6 arm64: dts: colibri-imx8x: Use new bracket format
Use the new bracket format as described by Rob since this seems the
format that we're heading in the future.

https://lore.kernel.org/all/CAL_JsqKqQdRZC08-BGJqTjzJZ8aWA41LHMbv0QyyVePVm0co7A@mail.gmail.com/

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:09 +08:00
Philippe Schenker
e8f7a38701 arm64: dts: colibri-imx8x: Update spdx license
GPL-2.0+ is deprecated, update it to GPL-2.0-or-later.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:10:07 +08:00
Philippe Schenker
2eba243813 arm64: dts: colibri-imx8x: Prepare for qxp and dx variants
Toradex sells the Colibri iMX8X module in variants with the i.MX 8QXP
and i.MX8DX SoC. Prepare for this by moving majority of stuff from
imx8qxp-colibri.dtsi into imx8x-colibri.dtsi.

Remove DX from the model string.

This commit intends no functional change.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 10:09:55 +08:00
Sebastian Krzyszkowiak
6266932829 arm64: dts: imx8mq-librem5: Add 166MHz to DDRC OPP table
This is the lowest frequency supported by older iMX8MQ SoC
revisions.

Signed-off-by: Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 09:48:09 +08:00
Sebastian Krzyszkowiak
ea06362f80 arm64: dts: imx8mq-librem5: Reduce I2C frequency to 384kHz
According to imx8mq errata (ERR007805):

> To meet the clock low period requirement in fast speed mode,
> SCL must be configured to 384KHz or less.

Note that the imx i2c driver already implements this erratum and works
around it. This is only for the description to reflect reality.

Signed-off-by: Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 09:48:05 +08:00
Sebastian Krzyszkowiak
94b91e3ca6 arm64: dts: imx8mq-librem5: Bump BUCK1 suspend voltage to 0.81V
0.8V is outside of the operating voltage specified for imx8mq, see
chapter 3.1.4 "Operating ranges" of the IMX8MDQLQCEC document.

Signed-off-by: Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 09:48:02 +08:00
Sebastian Krzyszkowiak
cfe9de291b arm64: dts: imx8mq-librem5: Remove dis_u3_susphy_quirk from usb_dwc3_0
This reduces power consumption in system suspend by about 10%.

Signed-off-by: Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 09:48:00 +08:00
Sebastian Krzyszkowiak
e0faf4c53c arm64: dts: imx8mq-librem5: Adjust proximity sensor's near levels
Based on tests with my left ear (which appears to require lower levels
than the right one), one Birch, one Dogwood and three Evergreens.

It seems that the sensor reacts very weakly to hair, so let's make
the thresholds rather generous to compensate.

Signed-off-by: Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 09:47:57 +08:00
Sebastian Krzyszkowiak
536612ec0d arm64: dts: imx8mq-librem5: Bump usdhc2 frequency to 100MHz
RS9116 card already limits itself to 50MHz by being a high-speed card,
while AP6275S can work at 100MHz just fine (technically it should work
at 200MHz as well since it's a SDR104 card, but it doesn't appear to be
the case in practice and further research will be needed to find out why).

Signed-off-by: Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 09:47:55 +08:00
Angus Ainslie
a27f81d3d5 arm64: dts: imx8mq-librem5: add the magnetometer mount matrix
Userland needs the mount matrix to know the correct orientation of
the part.

Signed-off-by: Angus Ainslie <angus@akkea.ca>
Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 09:47:52 +08:00
Sebastian Krzyszkowiak
c24a9b698f arm64: dts: imx8mq-librem5: Set the DVS voltages lower
They're still in the operating range according to i.MX 8M Quad
datasheet. There's some headroom added over minimal values to
account for voltage drop.

Operational ranges (min - typ - max [selected]):
 - VDD_SOC (BUCK1): 0.81 - 0.9 - 0.99 [0.88]
 - VDD_ARM (BUCK2): 0.81 - 0.9 - 1.05 [0.84] (1000MHz)
                    0.90 - 1.0 - 1.05 [0.93] (1500MHz)
 - VDD_GPU (BUCK3): 0.81 - 0.9 - 1.05 [0.85] (800MHz)
                    0.90 - 1.0 - 1.05 [ -- ] (1000MHz)
 - VDD_VPU (BUCK4): 0.81 - 0.9 - 1.05 [ -- ] (550/500/588MHz)
                    0.90 - 1.0 - 1.05 [0.93] (660/600/800MHz)

Idle power consumption doesn't appear to be influenced much,
but a simple load test (`cat /dev/urandom | pigz - > /dev/null`
combined with running Animatch) seems to show about 0.3W of
difference.

Care is advised, as there may be differences between each
units in how low can they be undervolted - in my experience,
reaching that point usually makes the phone fail to boot.
In my case, it appears that my Birch phone can go down the most.

This is a somewhat conservative set of values that I've seen
working well on all my devices; I haven't tried very hard to
optimize it, so more experiments are welcome.

Signed-off-by: Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 09:47:49 +08:00
Sebastian Krzyszkowiak
41d208c4c8 arm64: dts: imx8mq-librem5: Set charger parameters for each batch
Correctly set regulation-voltage, termination-current and charge-current
for the different librem 5 board revisions.

Signed-off-by: Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
Signed-off-by: Martin Kepplinger <martin.kepplinger@puri.sm>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2023-03-27 09:47:47 +08:00