summaryrefslogtreecommitdiff
path: root/board/toradex/common
AgeCommit message (Collapse)Author
2026-01-17toradex: common: handle third MAC address for SMARC i.MX95Max Krummenacher
The toradex_smarc_imx95 board exposes three Ethernet ports. Set the third MAC address equal to the second MAC address. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2026-01-02toradex: tdx-cfg-block: add pid4 support for new modulesEmanuele Ghidoli
Add new PID4 to ConfigBlock handling: - 0217 Lino iMX93 Dual 2GB IT - 0218 Lino iMX91 Solo 2GB IT - 0219 OSM iMX93 Dual 2GB IT - 0220 OSM iMX91 Solo 2GB IT - 0221 Verdin AM62 Dual 1GB ET Lino and OSM are two new SoM families. The Verdin variant differs from the existing 0073 Verdin AM62 Dual 1GB ET by the presence of the GPU (AM625 instead of AM623), the absence of DSI interface (bridge not mounted) and eMMC size increased to 16GB instead of 4GB. Link: https://www.toradex.com/computer-on-modules/lino-arm-family Link: https://www.toradex.com/computer-on-modules/osm-arm-family Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2025-10-30board: toradex: fix aquila imx95 0098 pid4Francesco Dolcini
The memory size of the 0098 SKU is 8 GB instead of 16 GB. Fix PID4 0098 Aquila iMX95 definition. Fixes: 4c9340716522 ("toradex: tdx-cfg-block: add new pid4 support") Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2025-07-24toradex: tdx-cfg-block: add verdin i.mx8m mini 0216 pid4Vitor Soares
Add PID4 0216 Verdin iMX8M Mini Quad 2GB WB IT to config block handling. Signed-off-by: Vitor Soares <vitor.soares@toradex.com> Acked-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2025-07-08kbuild: Bump the build system to 5.1Ilias Apalodimas
Our last sync with the kernel was 5.1. Even that was a partial one as some patches from 4.x kernels were already missing making the transition to a modern kbuild infeasible. We are so out of sync now, that tracking the patches and backporting them one by one makes little sense and it's going to take ages. This is an attempt to sync up Makefile[.lib/.kbuild]. Unfortunately due to sheer amount of patches this is not easy to review, but that's what we decided during a community call. One of the biggest changes is get rid of partial linking entirely and build .a archives isntead of .o. We diaviate from the kernel on that. Instead of calling a custom script to create the archive symbol table, we call ar with rcTP (isntead of rcSTP) since we want a resulting archive that's sauble with the linker. The only affected platforms are PPC ones. Unfortunately I don't have any of them around to test, but the objdump of the resulting files -- arch/powerpc/lib/built-in.[oa] looks identical. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2025-06-03toradex: tdx-cfg-block: add new pid4 supportVitor Soares
Add the new PID4 to the ConfigBlock handling: - 0098 Aquila iMX95 Hexa 16GB WB IT - 0099 Verdin AM62P Quad 2GB WB IT - 0201 SMARC iMX95 Hexa 8GB IT - 0202 SMARC iMX95 Hexa 4GB WB IT - 0203 SMARC iMX95 Hexa 4GB ET - 0204 SMARC iMX95 Hexa 2GB WB IT - 0205 SMARC iMX95 Hexa 2GB ET - 0206 SMARC iMX8M Plus Quad 4GB IT - 0207 SMARC iMX8M Plus Quad 2GB WB IT - 0208 SMARC iMX8M Plus Quad 2GB IT - 0209 SMARC iMX8M Plus Quadlite 1GB WB ET - 0210 SMARC iMX8M Plus Quadlite 1GB ET - 0211 Aquila AM69 Octa 32GB IT - 0212 Aquila AM69 Octa 16GB WB IT - 0213 Aquila AM69 Octa 16GB IT - 0214 Aquila AM69 Octa 8GB WB IT - 0215 Aquila AM69 Octa 8GB IT Signed-off-by: Vitor Soares <vitor.soares@toradex.com>
2025-04-25toradex: tdx-cfg-block: fix verdin imx95 sku 0089 pid4Emanuele Ghidoli
The memory size of the 0089 SKU is 8 GB instead of 16 GB. Fix PID4 0089 Verdin iMX95 definition, in the configuration block. Fixes: ce53f46f33b4 ("toradex: tdx-cfg-block: add verdin imx95 sku 0089 pid4") Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2025-04-11board: toradex: add Toradex SMARC iMX8MPVitor Soares
Add support for the Toradex SMARC iMX8MP. Link: https://www.toradex.com/computer-on-modules/smarc-arm-family/nxp-imx-8m-plus Link: https://www.toradex.com/products/carrier-board/smarc-development-board-kit Signed-off-by: Vitor Soares <vitor.soares@toradex.com>
2025-04-11toradex: tdx-cfg-block: add 0096 Toradex SMARC iMX95Vitor Soares
Add PID4 0096 Toradex SMARC iMX95 Hexa 8GB WB IT to config block handling. Signed-off-by: Vitor Soares <vitor.soares@toradex.com>
2025-01-31toradex: tdx-cfg-block: fix switch to user partitionStefan Eichenberger
The Toradex configuration block is stored in the first boot partition of the eMMC. After reading the configuration block, U-Boot switches back to the user partition. Currently, this operation always targets mmc device 0, even when the configuration block is stored on mmc device 2. This patch addresses the issue by switching the mmc device set in CONFIG_TDX_CFG_BLOCK_DEV to the user partition, rather than using the hardcoded device 0. Fixes: a2777ecb9d11 ("toradex: config block handling") Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2024-12-15toradex: tdx-cfg-block: add new apalis imx8 pidsStefan Eichenberger
Add new PIDs for the Apalis iMX8 modules featuring the industrial variant of the SoC, which supports a maximum CPU frequency of 1300 MHz. Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
2024-12-15toradex: tdx-cfg-block: increase indentation for longer definesStefan Eichenberger
This preparation step ensures that the first column has sufficient space to handle longer defines. This is necessary for the new Apalis iMX8 defines. Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
2024-12-15toradex: tdx-cfg-block: set apalis imx8dxp to always disabledStefan Eichenberger
Apalis iMX8DXP 1GB is currently set to enable when compiling for Apalis iMX8. This is a mistake the Apalis iMX8DXP 1GB was never released and is not compatible to the Apalis iMX8 series. Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
2024-12-13toradex: tdx-cfg-block: rework modules pid4 handlingVitor Soares
The module pid4 currently corresponds to the index of the toradex_module array. If a new pid4 is introduced that does not follow the sequence of the previous entries, it will create a gap in the array. To address this, embed pid4 within the toradex_som structure and implement a function to retrieve the index corresponding to pid4. Signed-off-by: Vitor Soares <vitor.soares@toradex.com> Acked-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2024-11-17dm: sysinfo: Shorten the SYSINFO_ID prefixSimon Glass
We are about to add a large number of new entries. Update the prefix to be a little shorter. For SMBIOS items, use SYSID_SM_ (for System Management) which is enough to distinguish it. For now at least, it seems that most items will be for SMBIOS. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Raymond Mao <raymond.mao@linaro.org>
2024-10-11board: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILDSimon Glass
Use the new symbol to refer to any 'SPL' build, including TPL and VPL Signed-off-by: Simon Glass <sjg@chromium.org>
2024-06-03toradex: tdx-cfg-block: add verdin i.mx8m mini 0090 pid4Emanuele Ghidoli
Add new PID4 0090 Verdin iMX8M Mini Quad 4GB WB ET to support the new hardware variant. Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
2024-06-03toradex: tdx-cfg-block: add verdin imx95 sku 0089 pid4Emanuele Ghidoli
Add new PID4 0089 Verdin iMX95 Hexa 16GB WB IT to config block handling. Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
2024-06-03toradex: tdx-cfg-block: add aquila am69 sku 0088 pid4Emanuele Ghidoli
Add new PID4 0088 Aquila AM69 Octa 32GB WB IT to config block handling. Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
2024-05-20Restore patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet"Tom Rini
As part of bringing the master branch back in to next, we need to allow for all of these changes to exist here. Reported-by: Jonas Karlman <jonas@kwiboo.se> Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-19Revert "Merge patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet""Tom Rini
When bringing in the series 'arm: dts: am62-beagleplay: Fix Beagleplay Ethernet"' I failed to notice that b4 noticed it was based on next and so took that as the base commit and merged that part of next to master. This reverts commit c8ffd1356d42223cbb8c86280a083cc3c93e6426, reversing changes made to 2ee6f3a5f7550de3599faef9704e166e5dcace35. Reported-by: Jonas Karlman <jonas@kwiboo.se> Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-07board: toradex: Remove <common.h> and add needed includesTom Rini
Remove <common.h> from this board vendor directory and when needed add missing include files directly. Signed-off-by: Tom Rini <trini@konsulko.com>
2024-03-11toradex: tdx-cfg-block: add 0087 i.mx8m mini product variantJoao Paulo Goncalves
Add new product id 0087 Verdin iMX8M Mini Quad 2GB IT. Signed-off-by: Joao Paulo Goncalves <joao.goncalves@toradex.com>
2024-03-01toradex: common: Use random mac address if toradex config block is missingEmanuele Ghidoli
Set CONFIG_NET_RANDOM_ETHADDR=y, which sets random eth address in case there is no toradex config block programmed. In case of missing toradex config block the generated mac address was always the same, linked to serial number 0. Use random generated mac address instead. Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-01toradex: common: Add sysinfo driverEmanuele Ghidoli
This commit introduces support for the Toradex sysinfo driver in U-Boot, which uses information from Toradex config block to print correct board model. In case the Toradex config block is not present sysinfo prints the model of the board provided by device tree removing per board specific prints. Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-01toradex: common: Use SETTINGS_R event to read toradex config blockEmanuele Ghidoli
Use SETTINGS_R event to read toradex config block and checkboard() to print board info. Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-01toradex: Remove not necessary model prints from checkboard()Emanuele Ghidoli
Sysinfo prints the model obtained from device tree, checkboard() take info from hardware and tdx_checkboard() use the model retrieved by toradex config block. Remove the print from checkboard() function because the model obtained from toradex config block is the most complete. If toradex config block is missing the model info from device tree is enough. Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-01toradex: Fix recursive call to checkboardEmanuele Ghidoli
Since checkboard() is used instead of show_board_info(), in case toradex config block is missing or malformed, checkboard is recursively called. It prints a long list of "MISSING TORADEX CONFIG BLOCK" till the stack is full. Fixes: edb0ecd18708 ("toradex: Use checkboard() instead of show_board_info()") Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-02-08toradex: tdx-cfg-block: add 0086 i.mx8m mini skuJoao Paulo Goncalves
Add new product id 0086 Verdin iMX8M Mini DualLite 2GB IT. Signed-off-by: Joao Paulo Goncalves <joao.goncalves@toradex.com> Reviewed-by: Igor Opaniuk <igor.opaniuk@foundries.io>
2024-02-08toradex: tdx-cfg-block: Add new apalis and colibri pidJoao Paulo Goncalves
Add new apalis imx6 and colibri imx6/imx7 products IDs. Signed-off-by: Joao Paulo Goncalves <joao.goncalves@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2023-11-28toradex: Use checkboard() instead of show_board_info()Simon Glass
Boards can use a sysinfo driver if a particular model name is needed. Update this board to use checkboard() directly, rather than having a weak function laid on top of a weak function. Make all the checkboard() functions call the new tdx_checkboard() so that the same information is displayed. Signed-off-by: Simon Glass <sjg@chromium.org>
2023-08-04toradex: tdx-cfg-block: add verdin am62 skusMarcel Ziswiler
Add initial Verdin AM62 Quad 1GB WB IT prototype and launch configuration SKUs to ConfigBlock handling. 0069: Verdin AM62 Quad 1GB WB IT 0071: Verdin AM62 Solo 512MB 0072: Verdin AM62 Solo 512MB WB IT 0073: Verdin AM62 Dual 1GB ET 0074: Verdin AM62 Dual 1GB IT 0075: Verdin AM62 Dual 1GB WB IT 0076: Verdin AM62 Quad 2GB WB IT Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
2023-08-04toradex: tdx-cfg-block: rework display adapter name handlingMax Krummenacher
Rework the rather big array of zero length strings with 4 entries of actual display adapter names to a array of structs which ties a pid4 to its correspondent human readable string. Provide an accessor to get the string for a given PID4. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
2023-08-04toradex: tdx-cfg-block: rework carrier board name handlingMax Krummenacher
Rework the rather big array of zero length strings with 4 entries of actual carrier board names to a array of structs which ties a pid4 to its correspondent human readable string. Provide an accessor to get the string for a given PID4. Rework the user of the information to use the accessor. Note that check_pid8_sanity() is used for early samples of Dahlia and the development board. Yavia isn't affected. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
2023-08-04toradex: tdx-cfg-block: add yavia carrier cfg block infoMax Krummenacher
Add the Yavia Carrier board name string to the known carrier board list. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
2023-07-11toradex: tdx-cfg-block: add 0070 verdin i.mx 8m plus quad skuEmanuele Ghidoli
Add new i.MX 8M Plus Quad SKU to ConfigBlock handling. 0070: Verdin iMX8M Plus Quad 8GB WB IT This SKU is identical to 0066 but supporting Industrial Temperature range. Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-10-30video: Rename CONFIG_DM_VIDEO to CONFIG_VIDEOSimon Glass
Now that all the old code is gone, rename this option. Driver model migration is now complete. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-09-16blk: Switch over to using uclass IDsSimon Glass
We currently have an if_type (interface type) and a uclass id. These are closely related and we don't need to have both. Drop the if_type values and use the uclass ones instead. Maintain the existing, subtle, one-way conversion between UCLASS_USB and UCLASS_MASS_STORAGE for now, and add a comment. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-04Audit <flash.h> inclusionTom Rini
A large number of files include <flash.h> as it used to be how various SPI flash related functions were found, or for other reasons entirely. In order to migrate some further CONFIG symbols to Kconfig we need to not include flash.h in cases where we don't have a NOR flash of some sort enabled. Furthermore, in cases where we are in common code and it doesn't make sense to try and further refactor the code itself in to new files we need to guard this inclusion. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-07-25toradex: common: Improve product/serial print during bootFrancesco Dolcini
Add product id print in show_board_info(), with an increasing number of Toradex SKUs available with small differences it makes sense to print it. Move serial number print to a dedicated line, this prevents the previous line with the product name to overflow the 80 columns with any reasonable product name length. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: tdx-cfg-block: Use official SKU namesFrancesco Dolcini
Up to now in the code we named Toradex SKUs in a slightly different way compared to the official product name, start using the official names from now on to avoid misunderstanding. This has also the nice benefit of the string being shorter, allowing to fit nicely in 80 columns even adding the product ID when printing the hardware information. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: common: Remove #ifdef usage for 2nd ethaddrFrancesco Dolcini
Fix checkpatch warn, use `IS_ENABLED(CONFIG_TDX_CFG_BLOCK_2ND_ETHADDR)` instead of `#ifdef CONFIG_TDX_CFG_BLOCK_2ND_ETHADDR`. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: common: Remove stale function declarationFrancesco Dolcini
Remove stale show_boot_logo() declaration, not used anywhere. Fixes: e6fd30dd9eef ("toradex: drop legacy show_boot_logo function and use splashscreen") Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: tdx-cfg-block: Cleanup interactive cfg block creationFrancesco Dolcini
Simplify interactive config block creation code, instead of having a a long list of questions and a complex tree of preprocessor directive to guess the exact SKU, just ask the user to select it from a list. The modules list is filtered out to include only SKUs that are supported by the specific u-boot binary in execution. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: common: Use ARRAY_SIZE macroFrancesco Dolcini
Use generally available ARRAY_SIZE macro, instead of hand-coding it every time is needed. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: common: Remove stale comments about modules availabilityFrancesco Dolcini
Remove comment "not currently on sale" on specific SKUs, this information does not belong to the code and will never be accurate. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: tdx-cfg-block: add 0068 i.mx 8m mini skuPhilippe Schenker
Add new i.MX 8M Mini SKU to ConfigBlock handling. 0068: Verdin iMX8M Mini Quad 2GB WB IT No CAN This SKU is identical to 0055 but without CAN. Mention this in the name so those modules can be distinguished. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-06toradex: tdx-cfg-block: add new toradex oui rangePhilippe Schenker
Add new Toradex MAC OUI (8c:06:cb), to the config block. With this change we extend the possible serial-numbers as follows: For serial-numbers 00000000-16777215 OUI 00:14:2d is taken For serial-numbers 16777216-33554431 OUI 8c:06:cb is taken Lower 24-bit of the serial number are used in the NIC part of the MAC address, the complete serial number can be calculated using the OUI. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-06toradex: tdx-cfg-block: extend assembly versionPhilippe Schenker
There are two decimal digits reserved to encode the module version and revision. This code so far implemented A-Z which used 0-25 of this range. This commit extends the range to make use of all 99 numbers. After capital letters the form with a hashtag and number (e.g. #26) is used. Examples: If the assembly version is between zero and 25 the numbering is as follows, as it also has been before this commit: 0: V0.0A 1: V0.0B ... 25: V0.0Z New numbering of assembly version: If the number is between 26 and 99 the new assembly version name is: 26: V0.0#26 27: V0.0#27 ... 99: V0.0#99 Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-06toradex: tdx-cfg-block: use defines for string lengthPhilippe Schenker
With those defines the length can be reused and is in one place extendable. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>