Age | Commit message (Collapse) | Author |
|
Add Colibri SODIMM numbers as GPIO line names on module level. The GPIO
lines with a name are all available on the SODIMM edge connector of the
Colibri iMX7 module and therefore a customer might use it as a GPIO. The
Toradex Evaluation Board has the SODIMM numbers printed on the silk-
screen. This allows a customer to quickly control a GPIO on a pin-header
by using the name printed next to it.
Putting the GPIO line name on module level makes sure that a customer
gets a reasonable default. If more meaningful names are available on a
custom carrier board, the user can overwrite the line names in a carrier
board level device tree.
The eMMC based modules share all GPIO names except two GPIOs on bank 6
which are not available on the raw NAND devices. Hence overwrite GPIO
line names of bank 6 in the eMMC specific device tree file.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Reviewed-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit 119c98f16e704e4c85522f6e22c9c819c21c4128)
Related-to: ELB-2309
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
eMMC, used in Colibri iMX7D eMMC modules, supports
200Mhz mode with vccq=1.8v.
Remove the max-frequency limit, it increases the performance significantly:
== before fix ====
root@colibri-imx7-emmc:~# hdparm -t /dev/mmcblk1
/dev/mmcblk1:
Timing buffered disk reads: `^H252 MB in 3.02 seconds = 83.54 MB/sec
==================
=== after fix ====
root@colibri-imx7-emmc:~# hdparm -t /dev/mmcblk0
/dev/mmcblk0:
Timing buffered disk reads: 408 MB in 3.00 seconds = 135.94 MB/sec
==================
Related-to: ELB-1442
Fixes: f928a4a377e4 ("ARM: dts: imx7: add Toradex Colibri iMX7D
1GB (eMMC) support")
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
This commit unifys the backlight settings. All displays sold by Toradex
are now supporting 150Hz as a PWM backlight typical frequency.
Use this value for all SoM's and put also some better default values
for different brightness.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
According to manual of I2C bus, both signals sda/scl are "open drain".
Fix flags for all affected Toradex boards.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
scl-gpios should be (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN) since
commit d2d0ad2aec4a ("i2c: imx: use open drain for recovery GPIO")
Fix on-boot warning:
"enforced open drain please flag it properly in DT/ACPI DSDT/board file"
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
In order for the otg ports, that these modules support, it is needed
that dr_mode is on otg. Switch to use that feature.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Avoid the following spew:
[ 2.083946] imx7d-pinctrl 302c0000.iomuxc-lpsr: pin MX7D_PAD_GPIO1_IO01
already requested by 302c0000.iomuxc-lpsr; cannot claim for gpio-keys
[ 2.099682] imx7d-pinctrl 302c0000.iomuxc-lpsr: pin-1 (gpio-keys) status -22
[ 2.108272] imx7d-pinctrl 302c0000.iomuxc-lpsr: could not request pin 1
(MX7D_PAD_GPIO1_IO01) from group gpiokeysgrp on device 302c0000.iomuxc-lpsr
[ 2.124626] gpio-keys gpio-keys: Error applying setting, reverse things back
[ 2.133420] gpio-keys: probe of gpio-keys failed with error -22
While at it also fix some missing new lines.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
This vin-supply statement is not needed as the linked regulator
®_DCDC3 is anyway marked as always-on.
This is needed because NXP's code of GPCV2 can't handle deferred
probing.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
As it is anyway default in downstream.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
In this commit the mdio bus with the respective phy is added, so
one is able to make changes to that easier.
This is as well neede for 4.14
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
This patch adds spigpios group to pinmux. This is needed by Aster
devicetrees that will be added later on.
Signed-off-by: Philippe Schenker <philippe.schenker@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>
(cherry picked from commit e747c0e955869e5cb6d9ea4da9477895901dbc92)
(cherry picked from commit 27e488ab4f471002a4549ea47551d08f62bbb698)
|
|
Merge changes from Toradex Linux 4.9 BSP.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Add pinmuxing and do not specify voltage restrictions in the
module level device tree.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
(cherry picked from commit d4f875d9f8319ae9157702d5232f8b0b91444105)
|
|
- add recovery mode for applicable i2c buses for
Colibri iMX7 module.
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
(cherry picked from commit 01c0bda6912c37456b3df34a7cf30300100ffbad)
Conflicts:
arch/arm/boot/dts/imx7-colibri.dtsi
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Add sleep pinmux to the fec so it can properly sleep.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Prepare FlexCAN use on SODIMM 55/63 178/188. Those SODIMM pins are
compatible for CAN bus use with several modules from the Colibri
family.
Add Better drivestrength and also add flexcan2.
This is a squashed commit from:
(cherry picked from commit 5562bcc82fd50633199a6627c11ec9d41833ed4e
and commit 491a63f465e45eda40336d3e75538668a44e166e)
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Force HS200 by masking bit 63 of the SDHCI capability register.
The i.MX ESDHC driver uses SDHCI_QUIRK2_CAPS_BIT63_FOR_HS400. With
that the stack checks bit 63 to descide whether HS400 is available.
Using sdhci-caps-mask allows to mask bit 63. The stack then selects
HS200 as operating mode.
This prevents rare communication errors with minimal effect on
performance:
sdhci-esdhc-imx 30b60000.usdhc: warning! HS400 strobe DLL status REF not lock!
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
(cherry picked from commit cf7097961efb6c93945b940065375ede1e03b254)
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit c81fc92fa8852d4dcc607b6771463471607d0942)
|
|
Add support for the Computer on Module Colibri iMX7D 1GB along
with the Colibri Evaluation Board device trees. Follow the usual
hierarchic include model, maintaining shared configuration in
imx7-colibri.dtsi and imx7-colibri-eval-v3.dtsi respectively.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit f928a4a377e476525298a552185dfd92d2780319)
|
|
The Colibri Evaluation Carrier Board provides a MCP2515 CAN
controller connected via SPI. Note that the i.MX 7 provides
an internal CAN controller which is much better suited for CAN
operations. Using the MCP2515 with a Colibri iMX7 module is
mainly useful to test the SPI interface.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit 66d59b678a87152f85dd327ba6aa024df2896b37)
|
|
The Colibri standard defines SODIMM 71 as backlight enable
GPIO. Assign the GPIO to the backlight node in the module
level device tree.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit 6deb2260b2138154ab25922ffb0e1a67a9aa3ea4)
|
|
The usdhc1 controller instance is used to provide the default
SD/MMC capabilities of the Colibri standard. The IO pins are
supplied to the SoC on the module whereas the SD-card is powered
by the Carrier Board supply.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit 49e6ce614b456a4456f9ef8770797f9bc885a247)
|
|
Specify CPU supply using the "cpu-supply" property instead of
the invalid "arm-supply" property.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit 5dc2dcf58a87ba74f06a9aba5c7248991aa65ece)
|
|
All Colibri iMX7 SKUs use either single-die NAND or eMMC, hence
NAND_CE1 is not used on the module and can be used as a GPIO by
carrier boards.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit c2e70bbb616d8605b86b3344ccc03d122b5d8494)
|
|
Use pull-ups instead of pull-downs for the pins which are already
pulled-up externally.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit ffb2e259c462b38f4cccf742d6d9856429725ed0)
|
|
The Colibri pins PWM<A> and <D> are multiplexed on the module, make
sure the secondary SoC pin is not active.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit e95723b5ecaa21b30de3c786d3e8a34e15632beb)
|
|
The Colibri default which enables USB Host power is not necessarily
tied to the OTG2 controller, some carrier board use the pin to
control USB power for both controllers. Hence name the pinctrl
group more generic.
Also move the regulator to the generic eval-v3 device tree since
the regulator is always on the carrier board. In the Colibri iMX7S
case the regulator is just not used. This allows to reuse the
regulator in a upcoming SKU Colibri iMX7D 1GB with eMMC.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
(cherry picked from commit 7e81cb3d9cf5a7cc56606a63ca6f100bb3f1f5de)
|
|
The Colibri iMX7 modules come with 512MB on-module SLC NAND flash
populated. Make use of it by enabling the GPMI controller.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Tested-by: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Han Xu <han.xu@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
The PWM driver has now capability to specify the PWM polarity
which is e.g. for backlight control. Allow to make use of PWM
polarity by specifying pwm-cells to be 3 in the base dt.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
The ADC is directly supplied by the PMIC 1.8V rail, remove the
superfluous fixed regulator.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
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.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
Fix wrong voltage of PWR_EN_+V3.3 rail. The error had no noticeable
effect since no consumer explicitly requested a specific voltage.
Also use round voltages as it is common in other device trees.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
The i.MX7 has two iomux controllers. the iomuxc and the iomuxc_lpsr.
In a board dts we have to make sure that both controllers are supplied
with the correct pins. It's way too easy to do this wrong since only
a look into the reference manual can reveal which pins belong to which
controller. To make this clearer add "LPSR" to the pin names which
belong to the LPSR controller.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
Add audio support via on module I2S SGTL5000 codec.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
Colibri modules need to be powered using the power pins 3V3 and
AVDD_AUDIO. Add fixed regulators which represent this power rails.
Potentially, those power rails could be switched on a carrier
board. A carrier board device tree could add a own regulator with
a GPIO, and reference that regulator in a vin-supply property of
those new module level system regulators. This also synchronize
the name of the +3.3V regulator with the one used in the Colibri
VF50/VF61 device tree.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
Move SD-card definition to module level. While at it, also disable
write-protect since the Colibri standard does not define a pin for
SD-Card write-protection.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|
|
Add support for the Computer on Module Colibri iMX7S/iMX7D along
with the development/evaluation carrier board device trees. Follow
the usual hierarchic include model, maintaining shared configuration
in imx7-colibri.dtsi and imx7-colibri-eval-v3.dtsi respectively.
Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
|