summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2022-11-16doc: fix documentation of enum gd_flagsHeinrich Schuchardt
Correct GD_FLG_CYCLIC_RUNNING documentation to match Sphinx style. Fixes: d7de5ef62935 ("cyclic: use a flag in gd->flags for recursion protection") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-11-15dt-bindings: clk: add missing clk ids for microchip mpfsConor Dooley
When this binding header was initally upstreamed, the PLL clocking the microprocessor subsystem (MSS) and the RTC reference clocks were omitted. Add them now, matching the IDs used in Linux. Signed-off-by: Conor Dooley <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]> Reviewed-by: Padmarao Begari <[email protected]>
2022-11-14Merge tag 'u-boot-imx-20221114' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx For 2022.01 ----------- CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/14083 - Fix UART - moved to binman (MX8 boards) - Toradex: sync DTS with Linux - Gateworks: fixes - New boards : MSC SM2S iMX8MP
2022-11-10Merge branch '2022-11-10-symbol-migrations'Tom Rini
- Migrate a number of CONFIG symbols to Kconfig and start migrating some symbol families from CONFIG to the CFG namespace.
2022-11-10global: Migrate CONFIG_SYS_FSL* symbols to the CFG_SYS namespaceTom Rini
Migrate all of COFIG_SYS_FSL* to the CFG_SYS namespace. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10global: Migrate CONFIG_SYS_MPC8* symbols to the CFG_SYS namespaceTom Rini
Migrate all of COFIG_SYS_MPC* to the CFG_SYS namespace. Signed-off-by: Tom Rini <[email protected]>
2022-11-10Convert CONFIG_SYS_NAND_4BIT_HW_ECC_OOBFIRST to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_NAND_4BIT_HW_ECC_OOBFIRST Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10Convert CONFIG_SYS_NONCACHED_MEMORY to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_NONCACHED_MEMORY To do this we introduce CONFIG_SYS_HAS_NONCACHED_MEMORY as a bool to gate if we are going to have noncached_... functions available and then continue to use CONFIG_SYS_NONCACHED_MEMORY to store the size of said cache. We make this new option depend on both the architectures which implement support and the drivers which make use of it. Cc: Tom Warren <[email protected]> Cc: Mingming lee <[email protected]> Cc: "Ying-Chun Liu (PaulLiu)" <[email protected]> Cc: Alban Bedel <[email protected]> Cc: Stephen Warren <[email protected]> Cc: Marcel Ziswiler <[email protected]> Cc: Allen Martin <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10Convert CONFIG_SYS_MONITOR_LEN to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_MONITOR_LEN To do this, we set a default of 0 for everyone because there are a number of cases where we define CONFIG_SYS_MONITOR_LEN but the only impact is that we set TOTAL_MALLOC_LEN to be CONFIG_SYS_MALLOC_LEN + CONFIG_ENV_SIZE, so we must continue to allow all boards to set this value. Update the SPL code to use 200 KB as the default raw U-Boot size directly, if we don't have a real CONFIG_SYS_MONITOR_LEN value. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10Convert CONFIG_SYS_MMC_MAX_DEVICE to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_MMC_MAX_DEVICE Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2022-11-10Convert CONFIG_SYS_MMC_MAX_BLK_COUNT to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_MMC_MAX_BLK_COUNT Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2022-11-10Convert CONFIG_SYS_MAX_NAND_DEVICE to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_MAX_NAND_DEVICE Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10rtc: Remove unused driversTom Rini
These drivers are not enabled anywhere, remove them. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10Convert CONFIG_SYS_LOADS_BAUD_CHANGE et al to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_LOADS_BAUD_CHANGE CONFIG_LOADS_ECHO As part of this, we move CMD_SAVES to be after CMD_LOADS as they are logically related (load or save an s-record format file) and this makes grouping of CONFIG_SYS_LOADS_BAUD_CHANGE easier. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10powerpc: Migrate SYS_L3_SIZE to KconfigTom Rini
Introduce three options, one for each observed L3 cache size, and have the size select'd as needed. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10powerpc: Migrate SYS_L2_SIZE to KconfigTom Rini
Introduce two options, one for each observed L2 cache size, and have the size select'd as needed. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10Remove unused symbols CONFIG_SYS_JFFS2_FIRST_BANK et alTom Rini
This removes the following symbols: CONFIG_RTC_MCFRRTC CONFIG_SYS_JFFS2_FIRST_BANK CONFIG_SYS_JFFS2_FIRST_SECTOR CONFIG_SYS_JFFS2_NUM_BANKS CONFIG_SYS_LBC_CACHE_BASE CONFIG_SYS_LIME_SIZE CONFIG_SYS_MAMR CONFIG_SYS_MCFRRTC_BASE CONFIG_SYS_MONITOR_SEC Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10Convert CONFIG_SYS_INTERLAKEN et al to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_INTERLAKEN CONFIG_SYS_ISA_IO CONFIG_SYS_ISA_IO_BASE_ADDRESS Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10Remove dead codeTom Rini
This header is unreferenced, remove. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10Convert CONFIG_SYS_INIT_RAM_LOCK to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_INIT_RAM_LOCK Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-10Convert CONFIG_SYS_I2C_INIT_BOARD to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_I2C_INIT_BOARD Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-11-08configs: imx8mn_beacon: Re-align memory to standard imx8mn settingsAdam Ford
The imx8mn_beacon board does not use the same memory map as the reference design from NXP or other imx8mn boards. As such, memory is more limited in SPL. Moving SPL_BSS_START_ADDR and SPL_STACK to default locations increases the amount of available meory for the SPL stack. Doing this allows the board to no longer define CONFIG_MALLOC_F_ADDR. Since SYS_LOAD_ADDR also does not align with other boards, move it too. Signed-off-by: Adam Ford <[email protected]> Reviewed-by: Fabio Estevam <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2022-11-08imx8mm: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v6.1-rc3. Signed-off-by: Marcel Ziswiler <[email protected]> Tested-By: Tim Harvey <[email protected]> #imx8m{m,n,p}-venice-*
2022-11-08imx8mn: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v6.1-rc3. Signed-off-by: Marcel Ziswiler <[email protected]> Tested-By: Tim Harvey <[email protected]> #imx8m{m,n,p}-venice-*
2022-11-08imx8mp: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v6.1-rc3. Signed-off-by: Marcel Ziswiler <[email protected]> Tested-By: Tim Harvey <[email protected]> #imx8m{m,n,p}-venice-*
2022-11-08imx8mq: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v6.1-rc3. Signed-off-by: Marcel Ziswiler <[email protected]>
2022-11-08imx8ulp: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v6.1-rc3. Signed-off-by: Marcel Ziswiler <[email protected]>
2022-11-08imxrt1050: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v6.1-rc3. Note: Nowadays, the intent is for them regular device trees to just be synchronised from them Linux kernel device trees and any and all U-Boot specific changes need to go into the -u-boot.dtsi device tree include files which BTW get included automatically by the U-Boot build system. Signed-off-by: Marcel Ziswiler <[email protected]>
2022-11-08imx: imx8m{m,n,p}_venice: migrate to CONFIG_EXTRA_ENV_TEXTTim Harvey
Move the majority of the environment from the board headers to a separate text file. Signed-off-by: Tim Harvey <[email protected]>
2022-11-08configs: imx8m{m, n}_venice: remove unneeded CONFIG_FEC_MXC_PHYADDRTim Harvey
The IMX8M based Venice boards all have device-tree fec nodes that use proper dt with a phy-handle pointing to a phy with reg assigned to the proper phy address. There is no need to keep using the CONFIG_FEC_MXC_PHYADDR hack when a proper dt is used - remove it. This was previously done in commit 400eebf10d9b ("configs: imx8m{m, n}_venice: remove unneeded CONFIG_FEC_MXC_PHYADDR") but got clobbered by commit 6889412ad5e7 ("Convert CONFIG_SYS_BARGSIZE to Kconfig") Signed-off-by: Tim Harvey <[email protected]>
2022-11-08configs: imx8mn_venice.h: remove unused ifdefTim Harvey
remove unused ifdef left behind after commit ca3369df71d8 ("configs: drop CONFIG_SPL_ABORT_ON_RAW_IMAGE") Signed-off-by: Tim Harvey <[email protected]>
2022-11-08configs: imx8mn_venice: fix include header protectionTim Harvey
Fix typo in the include header protection. Signed-off-by: Tim Harvey <[email protected]>
2022-11-08arm: imx8mp: Initial MSC SM2S iMX8MP supportMartyn Welch
Add support for the MSC SM2S-IMX8PLUS SMARC Module. Tested in conjunction with the MSC SM2-MB-EP1 Mini-ITX Carrier Board. Signed-off-by: Martyn Welch <[email protected]> Signed-off-by: Fabio Estevam <[email protected]>
2022-11-07dm: sandbox: Switch over to using the new host uclassSimon Glass
Update the sandbox implementation to use UCLASS_HOST and adjust all the pieces to continue to work: - Update the 'host' command to use the new API - Replace various uses of UCLASS_ROOT with UCLASS_HOST - Disable test_eficonfig since it doesn't work (this should have a unit test to allow this to be debugged) - Update the blk test to use the new API - Drop the old header file Unfortunately it does not seem to be possible to split this change up further. Signed-off-by: Simon Glass <[email protected]>
2022-11-07dm: sandbox: Create a new HOST uclassSimon Glass
Sandbox supports block devices which can access files on the host machine. At present there is no uclass for this. The devices are attached to the root devic. The block-device type is therefore set to UCLASS_ROOT which is confusing. Block devices should be attached to a 'media' device instead, something which handles access to the actual media and provides the block driver for the block device. Create a new uclass to handle this. It supports two operations, to attach and detach a file on the host machine. For now this is not fully plumbed in. Signed-off-by: Simon Glass <[email protected]>
2022-11-07dm: blk: Tidy up obtaining a block device from its parentSimon Glass
This function now finds its block-device child by looking for a child device of the correct uclass (UCLASS_BLK). It cannot produce a device of any other type, so drop the superfluous check. Provide a version which does not probe the device, since that is often needed when setting up the device's platdata. Also fix up the function's comment. Signed-off-by: Simon Glass <[email protected]>
2022-11-07test: Add a way to detect a test that breaks anotherSimon Glass
When running unit tests, some may have side effects which cause a subsequent test to break. This can sometimes be seen when using 'ut dm' or similar. Add a new argument which allows a particular (failing) test to be run immediately after a certain number of tests have run. This allows the test causing the failure to be determined. Update the documentation also. Signed-off-by: Simon Glass <[email protected]>
2022-11-07dm: test: Clear the block cache after running a testSimon Glass
Some tests access data in block devices and so cause the cache to fill up. This results in memory being allocated. Some tests check the malloc usage at the beginning and then again at the end, to ensure there is no memory leak caused by the test. The block cache makes this difficult, since the any test may cause entries to be allocated or even freed, if the cache becomes full. It is simpler to clear the block cache after each test. This ensures that it will not introduce noise in tests which check malloc usage. Add the logic to clear the cache, using the existing blkcache_invalidate() function. Drop the duplicate code at the same time. Signed-off-by: Simon Glass <[email protected]>
2022-11-07sandbox: Add missing comments for os_alarm()Simon Glass
Add the documentation to avoid a warning with 'make htmldocs'. Fixes: 10107efedd5 ("sandbox: add SIGALRM-based watchdog device") Signed-off-by: Simon Glass <[email protected]>
2022-11-07dm: sandbox: Drop non-BLK code from host implementationSimon Glass
This is not used anymore. Drop it. Signed-off-by: Simon Glass <[email protected]>
2022-11-07arm: mvebu: Add RD-AC5X boardChris Packham
The RD-AC5X-32G16HVG6HLG-A0 development board main components and features include: * Main 12V/54V power supply * 270 Gbps throughput packet processor on the main board * DDR4: * SR1: 2GB DDR4 2400MT/S(1GB x 2 pcs ) with ECC(1GB x 1 pcs) * SR2: 4GB DDR4 2400MT/S(2GB x 2 pcs ) with ECC(2GB x 1 pcs) * PCB co-layout with 4GB device to support 8GB (Dual CS) requirement * 16GB eMMC (Samsung KLMAG1JETD-B041006) * 16MB SPI NOR(GD25Q127C) * 32 x 1000 Base-T interfaces * 16 x 2500 Base-T interfaces * SR1: 88E2540*4 * SR2: 88E2580*1+88E2540*2 * Six (6) x 25G Base-R SFP28 interfaces * One (1) x RJ-45 console connector, interfacing to the on board UART * One (1) x USB Type-A connector, interfacing to the USB 2.0 port (0) * One (1) x USB Type-mini B connector, interfacing to the USB 2.0 port (1) * One (1) x RJ-45 1G Base-T Management port, interfacing to the host port (shared with PCIe) Connected to 88E1512 Gigabit Ethernet Phy * One (1) x Oculink port, interfacing to the PCIe port for external CPU connection * POE 802.3AT support on Port 1 ~ Port 32, 802.3BT support on Port 33 ~ Port 48 (Microsemi PD69208T4, PD69208M or TI TPS2388,TPS23881 solution) * POE total power budget 780W * LED interfaces per network port/POE * LED interfaces (common) showing system status * PTP TC mode Supported (Reserved M.2 connector to support BC mode) Signed-off-by: Chris Packham <[email protected]>
2022-11-07Makefile: Rename u-boot-spl.kwb to u-boot-with-spl.kwbPali Rohár
File name with pattern u-boot-spl* is used on all places except in kwb image for binary with SPL-only code. Combined binary with both SPL and proper U-Boot in other places has file name pattern u-boot-with-spl*. Make it consistent also for kwb image and rename u-boot-spl.kwb to u-boot-with-spl.kwb as this image contains both SPL and proper U-Boot code. Also update documentation about file name changes. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-11-03Merge tag 'mips-pull-2022-11-03' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-mips - MIPS: convert CONFIG_SYS_MIPS_TIMER_FREQ to Kconfig - MIPS: mtmips: fix incorrectly converted default value for CONFIG_SPL_PAD_TO
2022-11-02MIPS: convert CONFIG_SYS_MIPS_TIMER_FREQ to KconfigDaniel Schwierzeck
This converts the following to Kconfig: CONFIG_SYS_MIPS_TIMER_REQ Signed-off-by: Daniel Schwierzeck <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-11-02MIPS: mscc: remove unused CPU_CLOCK_RATEDaniel Schwierzeck
CPU_CLOCK_RATE is just used once for CONFIG_SYS_MIPS_TIMER_FREQ which is migrated to Kconfig in the next patch. Signed-off-by: Daniel Schwierzeck <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-11-02MIPS: remove CONFIG_SYS_MHZDaniel Schwierzeck
Resolve all uses of CONFIG_SYS_MHZ with the currently defined value. Remove code which depends on CONFIG_SYS_MHZ but where no board configs actually use that code. Signed-off-by: Daniel Schwierzeck <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-11-02highbank: switch to use the Arm SP804 DM_TIMER driverAndre Przywara
So far the Calxeda machines were using the CONFIG_SYS_TIMER_* macros to simply hardcode the address of the counter register of the SP804 timer. This method is deprecated and scheduled for removal. Use the newly introduced SP804 DM_TIMER driver to provide timer functionality on Highbank and Midway machines. The base address and base frequency are taken from the devicetree. Signed-off-by: Andre Przywara <[email protected]>
2022-11-02cyclic: get rid of cyclic_init()Rasmus Villemoes
Currently, we must call cyclic_init() at some point before cyclic_register() becomes possible. That turns out to be somewhat awkward, especially with SPL, and has resulted in a watchdog callback not being registered, thus causing the board to prematurely reset. We already rely on gd->cyclic reliably being set to NULL by the asm code that clears all of gd. Now that the cyclic list is a hlist, and thus an empty list is represented by a NULL head pointer, and struct cyclic_drv has no other members, we can just as well drop a level of indirection and put the hlist_head directly in struct global_data. This doesn't increase the size of struct global_data, gets rid of an early malloc(), and generates slightly smaller code. But primarily, this avoids having to call cyclic_init() early; the cyclic infrastructure is simply ready to register callbacks as soon as we enter C code. We can still end up with schedule() being called from asm very early, so we still need to check that gd itself has been properly initialized [*], but once it has, gd->cyclic_list is perfectly fine to access, and will just be an empty list. As for cyclic_uninit(), it was never really the opposite of cyclic_init() since it didn't free the struct cyclic_drv nor set gd->cyclic to NULL. Rename it to cyclic_unregister_all() and use that in test/, and also insert a call at the end of the board_init_f sequence so that gd->cyclic_list is a fresh empty list before we enter board_init_r(). A small piece of ugliness is that I had to add a cast in cyclic_get_list() to silence a "discards 'volatile' qualifier" warning, but that is completely equivalent to the existing handling of the uclass_root_s list_head member. [*] I'm not really sure where we guarantee that the register used for gd contains 0 until it gets explicitly initialized, but that must be the case, otherwise testing gd for being NULL would not make much sense. Signed-off-by: Rasmus Villemoes <[email protected]> Reviewed-by: Stefan Roese <[email protected]> Tested-by: Stefan Roese <[email protected]> Tested-by: Tim Harvey <[email protected]> # imx8mm-venice-*
2022-11-02cyclic: switch to using hlist instead of listRasmus Villemoes
A hlist is headed by just a single pointer, so can only be traversed forwards, and insertions can only happen at the head (or before/after an existing list member). But each list node still consists of two pointers, so arbitrary elements can still be removed in O(1). This is precisely what we need for the cyclic_list - we never need to traverse it backwards, and the order the callbacks appear in the list should really not matter. One advantage, and the main reason for doing this switch, is that an empty list is represented by a NULL head pointer, so unlike a list_head, it does not need separate C code to initialize - a memset(,0,) of the containing structure is sufficient. This is mostly mechanical: - The iterators are updated with an h prefix, and the type of the temporary variable changed to struct hlist_node*. - Adding/removing is now just hlist_add_head (and not tail) and hlist_del(). - struct members and function return values updated. Signed-off-by: Rasmus Villemoes <[email protected]> Reviewed-by: Stefan Roese <[email protected]> Tested-by: Stefan Roese <[email protected]> Tested-by: Tim Harvey <[email protected]> # imx8mm-venice-*
2022-11-02list.h: synchronize hlist_for_each_entry* iterators with linuxRasmus Villemoes
All the way back in 2013, the linux kernel updated the four hlist_for_each_entry* iterators to require one less auxiliary variable: commit b67bfe0d42cac56c512dd5da4b1b347a23f4b70a Author: Sasha Levin <[email protected]> Date: Wed Feb 27 17:06:00 2013 -0800 hlist: drop the node parameter from iterators Currently, there is only one "user" of any of these, namely in fs/ubifs/super.c, but that actually uses the "new-style" form, and is (obviously, or it wouldn't have built) inside #ifndef __UBOOT__. Before adding actual users of these, import the version as of linux v6.1-rc1, including the hlist_entry_safe() helper used by the new versions. Signed-off-by: Rasmus Villemoes <[email protected]> Reviewed-by: Stefan Roese <[email protected]> Tested-by: Stefan Roese <[email protected]> Tested-by: Tim Harvey <[email protected]> # imx8mm-venice-*