Age | Commit message (Collapse) | Author |
|
Several modules have issues with HS400 at 100MHz at room temperature
but they seem to work fine at HS400 at 200MHz. Do not restrict
frequency for now.
This reverts commit 166fb4842e780f63c31622af706335e7dcd48c24.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
During temperature testing modules print the following error every
now and then:
[ 12.231006] mmc0: Timeout waiting for hardware interrupt. retries left=0 opcode=12
Often the SDHC controller/driver does not recover from the issue
which leads to a Kernel panic (e.g. during boot the kernel can not
mount the root fs).
Lowering the frequency to 100MHz proves to be stable and affects
effective bandwith by less than 5%.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Add new gpio hog group for atmel mxt ts GPIOs.
Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com>
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Add support for the latest addition to the Colibri iMX7 familiy,
Colibri iMX7 Dual 1GB with eMMC storage.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This is only an issue for later Colibri iMX7S 256MB V1.1C and Colibri
iMX7D 512MB V1.1D modules which are currently still in Toradex internal
validation & verification.
Currently without an SD card inserted the regulator framework actually
powers the LDO2 off however e.g. the BL_ON pin is also on that same
rail!
Fix this by specifying LDO2 to be always on and use the regular 3.3V
supply from the carrier board as the vmmc-supply.
Specify that carrier board 3.3V supply to be always on as well to avoid
the following misleading message during boot:
[ 2.299654] 3.3V: disabling
One remaining issue is that now in suspend LDO2 is still powered and
even adding the following did not help:
regulator-state-mem {
regulator-off-in-suspend;
};
Further investigation pending.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This reverts commit 82f0f4f012a646a735d6b44de77b7c9d0712c714.
This is only an issue for later Colibri iMX7S 256MB V1.1C and Colibri
iMX7D 512MB V1.1D modules which are currently still in Toradex internal
validation & verification.
As it turns out not using LDO2 anywhere at all in the regular case is a
bad idea leading to the following:
[ 2.317688] LDO2: disabling
Of course display and SD card still worked on the EvalBoard due to back
feeding through some pull-ups however on Viola with just one pull-up
it failed once both display and SD card were active...
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Dominik Sliwa <dominik.sliwa@toradex.com>
|
|
The USDHC instance 1 is powered with a separate rail. This
allows to switch voltage of the SD card signals for higher
speed modes such as UHS-I. The reset state of that rail is
enabled and 3.3V.
Revision before Colibri iMX7S V1.1C and iMX7D V1.1D had
that rail connected to +3.3V rail switchable with a PMIC
GPIO which turned out to be not controllable in regular
run mode and to LDO2.
Colibri iMX7S V1.1C and iMX7D V1.1D and later connect it
to the PMIC LDO2 only, which allows to control the voltage
directly.
This change explicitly assigning the PMIC regulator which
allows the SDHC driver code to control the SD card voltage
and hence negotiate higher speeds for SD cards capable of
UHS-I or later. Note that the carrier board device tree
needs to be adjusted too (see comments at the usdhc1 node)
and the carrier board should have no pull-ups populated.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Add a new hoggrp just for GPIO4_IO23 pin at the module level.
Add this new group to pinctrl-0 in iomuxc by default at module
level and overwrite it at Aster carrier board level without the
new hoggrp-6. This is required so this pin is muxed as GPIO at
module level but can be used by SPI driver as chip select for
Aster carrier board on RPi header X20.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
The Standard Colibri pin for Client/Host detection USBC_DET
(SODIMM pin 137) is multiplexed on the module with USB_OTG1_VBUS.
The USB_OTG1_VBUS pad seems to be pulled low by default and not
controllable through pinctrl. When the pin is unconnected on the
Carrier board, the pin is at a intermediate voltage level which is
not ideal. Pull-down the pin to make sure that the pin is at a
defined state by default (low, USB host).
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Use round voltages as it is common in other device trees. Also
fix wrong voltage of PWR_EN_+V3.3 rail. The error had no noticeable
effect since no customer explicitly requested a specific voltage.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
The regulator-always-on property on the Ethernet rail prevents Linux
from disabling the rail when Ethernet is shut down (suspend or simply
link down). With this change the regulator framework will disable the
rail when the Ethernet PHY is not used, saving power especially on
carrier board not using Ethernet.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Add sleep state for ENET pins to avoid pull-ups back-feeding the
Ethernet rail through the PHY.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
The logic to enable USB power is part of the carrier board and
might differ depending on the carrier board design. Introduce basic
fixed regulators for power input and move the USB power enable
regulator to the carrier board device tree.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Introduce module level input regulators to better reflect the
real world power design. Also use correct rails for ADC/SGTL5000.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Commit 5fd79049c122bd0f7bd906f676d3b8d65765a280 added _LPSR to all iomux
pin names which are controlled by the lpsr iomux.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
The iMX7 wakeup pin currently has a 47k pullup configured. Thus
one has to pull the pin to 0V to generate the wakeup event. All
other Colibri modules use pull downs and require 3.3V to generate
an event. Also on the Colibri Evaluation Board an external 100kOhm
pulldown is connected, thus the pin is neither at 0V nor 3.3V but
at 2.2V potentially increasing power consumption.
Change logic to use pulldown and require 3.3V to generate wakeup
event.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
The pad SAI1_RX_DATA can be used as second chip select for dual-die
NAND. However, with an assembly option the pad is available as GPIO
on SODIMM 169. All current version of Colibri iMX7 modules have the
pad available as GPIO hence mux it as GPIO by default.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit 06f06382f10b425f6dfdee43b8dfc7f77f75a22b)
|
|
The SPI CAN controller MCP2515 uses a dedicated interrupt line.
Assign the interrupt line to the CAN controller node explicitly.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit 8a91ecf06aa0155b36641630ee1ee932c3855fe2)
|
|
Revisit default pinmux configuration, use pull-ups instead of
pull-downs where there is already an external pull-up by default.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit 315740d8fe6a0517219c0b479bad4a7db3e7ac30)
|
|
We traditionally have all standard pinctrl in the module level
device tree. Move pinctrl accordingly.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit a75a5bc0bc91f29ad4df48684589d35454a5ccad)
|
|
The PWM<A> and PWM<D> have multiplexed pins which by default have a
pull-up enabled. Take them into the same pinmux group as the PWM
pin and disable pull-ups.
This also makes sure that there is no conflicting usage of the same
pin...
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit b4413e4426977aa88e2a712cb549104e792859d8)
|
|
Use USBC_DET feature of standard Colibri SODIMM pin 137 for USB
device/host switching using the generic extcon USB gpio implementation.
Signed-off-by: Sanchayan Maity <sanchayan.maity@toradex.com>
[remove pin from FEC and fixed pinmux assignment]
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
(cherry picked from commit cf86d072a45f1490d447aebe8677a740164ac5fb)
|
|
Update #pwm-cells to 3 in order to support PWM signal polarity
control.
Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
(cherry picked from commit a97e7559fb82ddf9be12c5d31adbd35937f24ce7)
|
|
Use pwm-backlight driver 'enable-gpios' property for backlight
on/off control.
Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@toradex.com>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
(cherry picked from commit 63a06d9a8463e7d2b14ee83d3eb186ee55b05976)
|
|
Add sleep state for FEC pins to avoid pull-ups feeding the Ethernet
PMIC while the Ethernet rail is turned off.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit 2df2f8f7f48f0aac2e8720b0bf8f0a902d04a41a)
|
|
Add wakeup GPIO key which is able to wake the system from sleep
modes (e.g. Suspend-to-Memory). Also rename the intermediate node
to imx7d-colibri.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit b5d2713d64c1c69f5dfe14a273e593acac089287)
|
|
The SGTL5000 requires a MCLK frequency in the range of 8 to 27MHz to
work properly. Make sure the clocking requirements are met by setting
the clock within the codecs node.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit 716b9cbb91450161b36a4fe686c75449a1d355ad)
|
|
The SAI1 MCLK pad is connected to the Codecs MCLK and essential for
the codec to function. This allows to probe the Codec before the DAI
which happens to happen by default.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit 2e8a79f06ece9f9e699684c5667dbc23569ef26f)
|
|
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit 9b84cddeb66f333789e6642992c5793c1f67ea79)
|
|
Split up the colibri device tree into two device tree files for
COM and Carrier Board. Use the usual SoC/COM/Board tripplet and
follow including scheme used for Vybrid.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit ac23876a1c36a702019c44f299195afa7b875393)
|
|
Now that we have a base device tree per SoC we can make use of them
by including only imx7s.dtsi for the Colibri iMX7S modules.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
(cherry picked from commit 83dc347c2b1b08c6efdf3718d5fa6a1023c2d15b)
|