Age | Commit message (Collapse) | Author |
|
Allow running CI pipeline for imx8x. This version of CI script
contains just 2 steps: building of 64 bit targets and cppcheck.
The following 64bit Toradex targets are supported for this branch.
- apalis-imx8
- apalis-imx8x
- colibri-imx8qxp
- verdin-imx8mm
Signed-off-by: Denys Drozdov <denys.drozdov@toradex.com>
|
|
U-boot might display wrong module revision information
for modules with an assembly version 'K'. "cfgblock create"
does not takes into account all revision digits from PID8.
This fix takes into account 6th,7th digits of PID8
to store module revision.
Related-to: ELB-3893
Signed-off-by: Denys Drozdov <denys.drozdov@toradex.com>
(cherry picked from commit 76fd4496a40b9dd7271ceb9ff330982c954fe8e9)
|
|
Automatically detect Verdin iMX8M Mini DualLite 1GB vs. Verdin iMX8M
Mini Quad 2GB.
Note: This only works if we keep using similar RAM chips!
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
This will to automate programming ECC fuses using only "-y" for a full
confirmation when invoking "fuse prog" command.
Relates-to: ELB-2764
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
Add proper calculation of offset for data structures, which size is not
multiple of 4 bytes.
Testing:
Verdin iMX8MM # cfgblock create 0038100206603368
A valid Toradex config block is present, still recreate? [y/N] y
Toradex config block successfully written
Verdin iMX8MM # reset
resetting ...
U-Boot 2018.03-00013-g98fb859-dirty (Jun 17 2020 - 00:58:58 +0300)
...
Model: ..., Serial#06603368
Relates-to: ELB-2772
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
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>
|
|
Same as the upstream fix for building dtc with gcc 10.
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
(cherry picked from commit 018921ee79d3f30893614b3b2b63b588d8544f73)
|
|
This introduces automatic boot counter that increases after every reset.
After a power-on reset, it will be initialized with 1, and each
reboot will increment the value by 1. By default it's disabled
if bootlimit isn't set.
To enable this feature you have set bootcount limit ("bootlimit"),
alternate boot action ("altbootcmd") that will be performed if
the new value of bootcount exceeds the value of bootlimit, and
"upgrade_available" to let U-Boot automatically increase and save
the counter value after every reset:
> setenv bootlimit 5
> setenv upgrade_available 1
> setenv altbootcmd "bootm ..."
In case the bootlimit exceeds, the message will be shown and albootcmd
executed:
Warning: Bootlimit (5) exceeded. Using altbootcmd.
To reset bootcount run:
> bootcount reset
Print current value:
> bootcount print
Relates-to: ELB-2703
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
Related-to: ELB-2702
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Fix 'TDX_CFG_BLOCK_EXTRA_MAX_SIZE' undeclared errors.
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
As default value for CONFIG_BOOTCOMMAND is already provided in
common/Kconfig, manually redefining without a check in verdin-imx8mm.h
leads to these warnings:
include/configs/verdin-imx8mm.h:111: warning: "CONFIG_BOOTCOMMAND" redefined
#define CONFIG_BOOTCOMMAND "setenv fdtfile " FDT_FILE " && run distro_bootcmd;"
In file included from ././include/linux/kconfig.h:4,
from <command-line>:
include/generated/autoconf.h:203: note: this is the location of the previous definition
#define CONFIG_BOOTCOMMAND "run distro_bootcmd"
Fix that by undefining the previous value.
Fixes: 099bc1b8ef("verdin-imx8mm: choose correct devicetree with configblock")
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
1. Add migration routine from PID8 (including sane value checks)
2. s/extra/carrier/g if functionality is used only for carrier board
tdx config block.
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
Enable these Kconfig symbols:
TDX_CFG_BLOCK_EXTRA=y
TDX_HAVE_EEPROM_EXTRA=y
Relates-to: ELB-1402
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
1. Rename EEPROM nodes.
2. Create aliases for EEPROM to unify their order:
eeprom0 - on-module EEPROM
eeprom1 - carrier-board EEPROM
eeprom2 - MIPI-DSI to HDMI adapter EEPROM
Relates-to: ELB-1402
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
This introduces support for EEPROM as a storage for the main Toradex
config block and additional config blocks on extra EEPROM chips (on
carrier board or video adapters).
To enable EEPROM as a storage for the main config block:
TDX_HAVE_EEPROM=y.
For additional EEPROMs please enable this Kconfig symbol:
TDX_CFG_BLOCK_EXTRA=y.
Information about existing EEPROM chips is provide via Device Tree using
aliases.
You can also write configuration for the carrier board using create_carrier
subcommand for cfgblock. Example:
Verdin iMX8MM # cfgblock create_carrier
Supported carrier boards:
UNKNOWN CARRIER = [0]
Verdin Carrier Board = [1]
Choose your carrier board (provide ID): 1
Enter carrier board version (e.g. V1.1B): V1.0A
Enter carrier board serial number: 10622780
Also with barcode:
cVerdin iMX8MM # cfgblock create carrier -y 0156100010622780
Relates-to: ELB-1402
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
Add writing to I2CR EEPROM using repeated addressing and performing
length separate write transactions of one byte each.
Relates-to: ELB-1402
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
This commit makes u-boot choose the right variant wifi or nonwifi
of the devicetree with the information stored in toradex configblock.
Related-to: ELB-2642
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
This changes the define from VERDIN_IMX8MNSL to VERDIN_IMX8MNQ_WIFI_BT
in order to have a related naming to VERDIN_IMX8MMQ_WIFI_BT_IT and also
have the information in for wifi bluetooth.
This as well changes to the final decided naming.
Related-to: ELB-2642
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
All Toradex modules have OF_LIBFDT_OVERLAY enabled but not Verdin iMX8MM so
far. This commit enables devicetree overlay capabilities on U-Boot for Verdin
iMX8MM.
Tested with ATF rel_imx_4.14.98_2.3.1_patch, firmware-imx-8.1.1 and imx-mkimage
imx_4.14.98_2.3.0.
Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
|
|
Related-to: ELB-2322
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
1. Add support for these two modules:
Verdin iMX8M Nano SoloLite 1GB
Verdin iMX8M Mini DualLite 1GB
2. Rename VERDIN_IMX8MM define to VERDIN_IMX8MMQ_WIFI_BT_IT
Relates-to: ELB-2602
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
1. Enable CONFIG_SNVS_SEC_SC_AUTO by default
2. Move BOOTAUX_* defines to defconfig
Related-to: ELB-2605
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
1. MMC_UHS/HS_ enable in defconfig by default
2. VDD_DRAM/VDD_SOC changes in SPL
3. FEC anatop clock fixes
Related-to: ELB-2605
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
1. Adding power-up of base board via SCFW
2. Moved BOOTAUX defines to defconfig
Related-to: ELB-2605
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
1. Enable CONFIG_SNVS_SEC_SC_AUTO by default
2. Move BOOTAUX_* defines to defconfig
Related-to: ELB-2605
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
|
|
Related-to: ELB-2316
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Make sure recent version detection implementation is also used during
recovery mode.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
This variable is deprecated, therefore remove it.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
And select the correct devicetree to load.
Related-to: ELB-1254
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
NXP common code now calls a board function mmc_map_to_kernel_blk().
Provide a weak function in common code for boards not requiring
special handling.
Taken from boards/freescale/common/mmc.c
Related-to: ELB-2351
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Related-to: ELB-1299
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit bad96834e65ae6364d8a9a8b3ba7756c61d6145c)
|
|
Related-to: ELB-1299
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit 3173b9aa17bc4c2580076376942a9ee1b6b8f636)
|
|
Related-to: ELB-1299
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit f53846c29f76ccee0141f6902703bb6855b14b6a)
|
|
Not needed as it is provided by the PHY.
Related-to: ELB-1299
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit a0ac1f6ca5d5eaf7b7b9833f5438c78ee11d9474)
|
|
This patch basically just enables both RXC and TXC delay lines in the
PHY. This will compensate the missing delay from the MAC. Other skew
settings are not needed as the traces on board are routed exactly the
same length
Related-to: ELB-1299
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit 50e975e6ce4e4e88f8c5c943ef2ddc38b0a31997)
|
|
This adds basic support for the new Micrel KSZ9131 phy.
Related-to: ELB-1299
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit cc96ed419f7585db15855dd53046562aadece3fb)
(cherry picked from commit 150e6b7f6c9c8342997245be50f3bc58df78aaf3)
|
|
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
(cherry picked from commit 28491c802d36accbb4d8562114ce8085ca53e1b0)
(cherry picked from commit 9ee5759d22acc3406bca3b76cb24ed558b64d0df)
|
|
Set the Ethernet PHY's RGMII skew registers according to the needed
skew.
Related-to: ELB-1970
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
The PHY reset circuitry may keep the PHY in reset for up to 200ms after
powerup. Use the regulator startup-delay-us property to wait that time
before talking to the PHY.
While at it unify that regulator with the Linux dts file.
Related-to: ELB-1970
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
The FEC in the i.MX8MM doesn't have this feature. So don't pretend one
can use it.
Additionally in the 2018.03 downstream U-Boot the property is not
evaluated, not even for the i.MX8 and i.MX8X based machines.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Do not undef CMD config defines which are set by Kconfig. This
allows to enable those commands using Kconfig.
(Taken from commit 26f0fb6c61e94f8ba52bcc0b4946d378e682ccff
'apalis-imx8: do not undef configs configured using Kconfig')
Related-to: TOR-498
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
It turned out that on the new Apalis iMX8 QuadPlus V1.1A the
ethernet is no longer working. I suspect this due to missing
muxing for 1.8V/3.3V.
Due to that I copy the whole ethernet pinmux and node over from
the Linux side.
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
|
|
Sometimes an ethernet PHY interface can’t complete
auto-negotiation and returns “timeout” error.
Overriding default timeout value fixes this issue.
Related-to: #58999
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
|
|
With this e.g. fastboot or UMS work.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
DDR calibration created with mscale_ddr_tool_v210_setup.exe using
MX8M_Mini_LPDDR4_RPA_v14 Verdin iMX8MM V1.0.xlsx as of 1. Nov. 2019.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
This commit adds initial support for the Toradex Verdin iMX8MM 2GB WB IT
V1.0A module. They are now strapped to boot from eFuses which are
factory fused to properly boot from their on-module eMMC. U-Boot
supports either booting from the on-module eMMC or may be used for
recovery purpose using the universal update utility (uuu) aka mfgtools
3.0.
Functionality wise the following is known to be working:
- eMMC, 8-bit and 4-bit MMC/SD card slots
- Gigabit Ethernet
- GPIOs
- I2C
- USB_1 peripheral: fastboot or ums
- USB_2 host: USB mass storage
To prepare the program image for eMMC fastboot using imx-mkimage and
subsequently flash it using U-Boot proceed as follows:
cd imx-mkimage/
make SOC=iMX8MM flash_evk_emmc_fastboot
load mmc 1:1 $loadaddr flash.bin
setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200
mmc dev 0 1
mmc write ${loadaddr} 0x2 ${blkcnt}
To prepare the program image for use with USB recovery aka serial
downloader using imx-mkimage and subsequently download using uuu
with an uuu.auto script proceed as follows:
cd imx-mkimage/
make SOC=iMX8MM flash_evk
uuu_version 1.3.34
SDP: boot -f flash.bin
CFG: SDPU: -vid 0x0525 -pid 0xb4a4
SDPU: delay 1000
SDPU: write -f flash.bin -offset 0x57c00
SDPU: jump
Fusing i.MX 8MM SoC and configuring eMMC for fastboot (already done
during manufacturing):
fuse prog 1 3 0x100020d6 (BT_FUSE_SEL, eMMC boot, SD1, fast boot, 4-bit DDR, high speed, 1.8V)
fuse prog 2 2 0x00000001 (enable boot ack)
mmc bootbus 0 1 0 2 (4-bit, reset bus width, DDR)
mmc partconf 0 1 1 0 (booting from boot area partition 1, send acknowledge)
SD manufaccture boot:
SD manufacture boot only works as long as the module is un-fused and
SD_1_PWR_EN is bypassed on the carrier board.
cd imx-mkimage/
make SOC=iMX8MM flash_evk
sudo dd if=iMX8M/flash.bin of=/dev/mmcblk0 bs=1024 seek=33
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Copied from linux, branch nxp/imx_4.14.98_2.2.0 @ e6c2f6322962.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|