summaryrefslogtreecommitdiff
path: root/board
AgeCommit message (Collapse)Author
2021-04-13toradex: configblock: fix module revision in config blockDenys Drozdov
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)
2020-10-28verdin-imx8mm: automatic ram size detectionMarcel Ziswiler
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>
2020-06-17tdx-cfg-block: fix serial number creationIgor Opaniuk
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>
2020-05-26apalis-imx8: reset the hsic pins to their reset defaultsMax Krummenacher
Related-to: ELB-2702 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-05-08tdx-cfg-block: fix build errorsIgor Opaniuk
Fix 'TDX_CFG_BLOCK_EXTRA_MAX_SIZE' undeclared errors. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-05-05toradex: tdx-cfg-clock: add migration routine from PID8Igor Opaniuk
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>
2020-05-04verdin-imx8mm: add EEPROM support for carrier boardIgor Opaniuk
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>
2020-05-04toradex: tdx-cfg-block: add support for EEPROMIgor Opaniuk
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>
2020-04-29verdin-imx8mm: choose correct devicetree with configblockPhilippe Schenker
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>
2020-04-17tdx-cfg-block: change verdin imx8m nano namingPhilippe Schenker
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>
2020-04-14apalis-imx8x: usb3 bringupVerdin-iMX8MM_Console-Image_3.0b4.254-20200421Colibri-iMX8X_Console-Image_3.0b4.254-20200421Apalis-iMX8_Console-Image_3.0b4.254-20200421Apalis-iMX8X_Console-Image_3.0b4.254-20200421Philippe Schenker
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-24tdx-cfg-block: add proper defines for other Verdin SKUsIgor Opaniuk
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>
2020-03-24apalis-imx8x: sync with MEK platformIgor Opaniuk
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>
2020-03-24verdin-imx8mm: sync with EVK boardIgor Opaniuk
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>
2020-03-24apalis-imx8: sync with MEK platformIgor Opaniuk
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>
2020-03-23colibri-imx8qxp: sync with MEK platformIgor Opaniuk
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>
2020-03-18tdx-cfg-block: adjust verdin namingPhilippe Schenker
Related-to: ELB-2316 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-16apalis-imx8: Fix hardware version detection in recovery modeMarcel Ziswiler
Make sure recent version detection implementation is also used during recovery mode. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-13apalis-imx8: Implement hardware version detectionPhilippe Schenker
And select the correct devicetree to load. Related-to: ELB-1254 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-10mmc board code: add a weak common implementationMax Krummenacher
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>
2020-03-10board: verdin-imx8mm: Add KSZ9131 phy skew settingsPhilippe Schenker
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)
2020-03-05verdin-imx8mm.c: set eth phy skewMax Krummenacher
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>
2020-03-05verdin-imx8mm: lpddr4_timing.c: intial lpddr4 calibration dataMax Krummenacher
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>
2020-03-05board: toradex: add verdin imx8mm 2gb wb it v1.0a module supportMax Krummenacher
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>
2020-03-05tdx-cfg-block: add verdin imx8mmMarcel Ziswiler
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05imx8mm-evk, imx8mm-val: take changed sd/mmc spl boot order into accountMarcel Ziswiler
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05tdx-cfg-block: fix while checking for uninitialised lenMarcel Ziswiler
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05tdx-cfg-block: fix colibri-imx8x defineMarcel Ziswiler
Fix CONFIG_TARGET_COLIBRI_IMX8QXP vs. CONFIG_TARGET_COLIBRI_IMX8X ifdefs. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05Machine: Apalis-iMX8X: Change name from apalis-imx8qxp to apalis-imx8xPhilippe Schenker
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-05apalis-imx8qxp: initial addPhilippe Schenker
Initial board support for Apalis iMX8QXP using a copy of Colibri iMX8QXP. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-05tdx-cfg-block: add Apalis-iMX8X to get_cfgblock_interactivePhilippe Schenker
Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-05tdx-cfg-block: Add prototype numbering and Apalis iMX8XPhilippe Schenker
Toradex will use product-id 2600 upwards as id's for prototypes. This commit adds this functionality to the config block. The Apalis iMX8X is as well added in the same commit as it is the first prototype and the first prodid in that range. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-03-05colibri-imx8qxp: make sure config block fdt fix-ups are calledMing Liu
Make sure the config block information are passed to the kernel using the device tree properties toradex,product-id, board-rev and serial-number. Signed-off-by: Ming Liu <liu.ming50@gmail.com>
2020-03-05toradex: configblock: re-sync with mainlineMarcel Ziswiler
Re-sync with mainline which fixes missing Apalis iMX8 and Colibri iMX8X SKU and their interactive handling. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05apalis-imx8/colibri-imx8qxp: improve poc sku handlingMarcel Ziswiler
Improve QP vs. QM resp. DX vs. QXP detection based on core disable fuses. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05apalis-imx8/colibri-imx8qxp: implement poc sku handlingMarcel Ziswiler
Implement proof of concept 1 GB resp. 2 GB vs. 2 GB resp. 4 GB DDR SKU handling based on fuses indicating SoC being i.MX 8QP resp. 8DX vs. 8QM resp. 8QXP. This overrides the newly introduced weak board_mem_get_layout() function. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05apalis-imx8: make sure config block fdt fix-ups are calledStefan Agner
Make sure the config block information are passed to the kernel using the device tree properties toradex,product-id, board-rev and serial-number. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-03-05apalis-imx8: remove board code for usdhcMax Krummenacher
These are now configured out of the device tree. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-03-05apalis-imx8: clean-up ethernet functionalityMax Krummenacher
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-03-05apalis-imx8: clean-up board fileMax Krummenacher
Clean-up board file. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-03-05apalis-imx8: adjust copyright/licensing headersMax Krummenacher
Adjust copyright/licensing headers e.g. universally using SPDX license identifier. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-03-05colibri-imx8qxp: adjust copyright/licensing headers some moreMax Krummenacher
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-03-05colibri-imx8qxp: fix ethernet functionalityMarcel Ziswiler
Fix Ethernet functionality. The FEC clock on i.MX 8X really has an additional by 2 divider plus our design requires the ENET0_RCLK50M_OUT on the ENET0_RGMII_TXC pin to be turned on for the Micrel PHY. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05colibri-imx8qxp: fix usb device/host functionalityMarcel Ziswiler
Fix USB device aka UMS as well as USB host functionality. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05colibri-imx8qxp: print pmic information upon bootMarcel Ziswiler
In wake of future PMIC silicon version changes, make sure complete PMIC information is printed upon boot. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05colibri-imx8qxp: clean-up board fileMarcel Ziswiler
Clean-up board file synching with i.MX 8QuadXPlus MEK board one as well. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05colibri-imx8qxp: adjust copyright/licensing headersMarcel Ziswiler
Adjust copyright/licensing headers e.g. universally using SPDX license identifier. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-03-05colibri-imx8qxp: add unused pins as gpioMax Krummenacher
This also enables pullups on the uart forceoff pins. The UART transceivers on an Iris carrier board can be disabled by controlling SODIMM pins 102 and/or 104. Make sure that the pins by default have pullups to have the debug UART working. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-03-05apalis-imx8: forward port to 2018.03Max Krummenacher
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> (cherry picked from commit eb0ed0e4283385700db1e5080d78f9a2684f98a5)
2020-03-05colibri-imx8qxp: forward port to 2018.03Max Krummenacher
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> (cherry picked from commit 3a5cc1cf85b8e22da78d794a2d71c03490f500b6)