summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2021-02-27ARM: imx6: dh-imx6: Drop the SF hunk in configMarek Vasut
There is now CONFIG_SPL_DM_SPI{,_FLASH}, however keeping CONFIG_DM_SPI{,_FLASH} enabled in SPL seems to grow the SPL by a couple of bytes: text data bss dec hex filename - 34069 1568 96 35733 8b95 spl/u-boot-spl + 34075 1568 96 35739 8b9b spl/u-boot-spl In either case, the binary is bootable, so remove the part in board config. Signed-off-by: Marek Vasut <[email protected]> Cc: Andreas Geisreiter <[email protected]> Cc: Jagan Teki <[email protected]> Cc: Ludwig Zenz <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Tom Rini <[email protected]>
2021-02-27ARM: imx: Revert "dh_imx6: Switch to full DM-aware"Marek Vasut
This reverts commit 03a673cf49e ("dh_imx6: Switch to full DM-aware"). According to discussion [1], the patch is known to break the dh_imx6 board, however it made it upstream just before 2021.01-rc4, likely by mistake. Revert this patch to put the board back into working order. Also note that this board has no DM SPL support due to OCRAM size limitations, but that is fine, as SPL DM support is optional. [1] https://lists.denx.de/pipermail/u-boot/2020-June/417986.html Signed-off-by: Marek Vasut <[email protected]> Cc: Andreas Geisreiter <[email protected]> Cc: Jagan Teki <[email protected]> Cc: Ludwig Zenz <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Tom Rini <[email protected]>
2021-02-27Merge tag 'efi-2021-04-rc3-2' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-efi Pull request for efi-2021-04-rc3-2 Bug fixes: * debug build for mkeficapsule * limit output length for VenHw, VenMedia * ACPI tables must be in EfiACPIReclaimMemory
2021-02-26Merge https://gitlab.denx.de/u-boot/custodians/u-boot-usbTom Rini
- fastboot updates / fixes
2021-02-26Merge https://gitlab.denx.de/u-boot/custodians/u-boot-spiTom Rini
- new GigaDevice flash ids - fixes for imx, nxp_spi drivers
2021-02-26efi_loader: fix documentation in efi_loader.hHeinrich Schuchardt
Correct missing descriptions and typos in efi_loader.h. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-02-26ARM: stm32: Add USB host boot supportMarek Vasut
Add support for booting from USB pen drive, since USB host port is available on the STM32MP1. Signed-off-by: Marek Vasut <[email protected]> Cc: Patrice Chotard <[email protected]> Cc: Patrick Delaunay <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2021-02-26fastboot: add UUU command UCmd and ACmd supportHeiko Schocher
add support for the UUU commands ACmd and UCmd. Enable them through the Kconfig option CONFIG_FASTBOOT_UUU_SUPPORT base was commit in NXP kernel 9b149c2a2882: ("MLK-18591-3 android: Add FSL android fastboot support") and ported it to current mainline. Tested this patch on imx6ul based board. Signed-off-by: Heiko Schocher <[email protected]> Acked-by: Patrick Delaunay <[email protected]>
2021-02-26part: Support getting whole disk from part_get_info_by_dev_and_name_or_numSean Anderson
This adds an option to part_get_info_by_dev_and_name_or_num to allow callers to specify whether whole-disk partitions are fine. Signed-off-by: Sean Anderson <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-26mtd: spi-nor-core: Fix typo in documentationSean Anderson
This line should come before the docs for the next function. Fixes: 7aeedac0153 ("mtd: spi: Port SPI NOR framework from Linux") Signed-off-by: Sean Anderson <[email protected]> Reviewed-by: Bin Meng <[email protected]> Reviewed-by: Pratyush Yadav <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2021-02-26mtd: spi-nor.h: Change spaces to tabsBin Meng
U-Boot coding convention prefers tabs over spaces. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2021-02-25ppc: Remove MPC8569MDS boardTom Rini
This board has not been converted to CONFIG_DM_MMC by the deadline. Remove it. As this is the last ARCH_MPC8569 board, remove that support as well. Cc: Priyanka Jain <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Priyanka Jain <[email protected]>
2021-02-25arm: Remove sksimx6 boardTom Rini
This board has not been converted to CONFIG_DM_MMC by the deadline. Remove it. Cc: Stefano Babic <[email protected]> Signed-off-by: Tom Rini <[email protected]> Acked-by: Stefano Babic <[email protected]>
2021-02-25arm: Remove mx53smd boardTom Rini
This board has not been converted to CONFIG_DM_MMC by the deadline. Remove it. Cc: Fabio Estevam <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2021-02-25arm: Remove mx53ard boardTom Rini
This board has not been converted to CONFIG_DM_MMC by the deadline. Remove it. Cc: Fabio Estevam <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2021-02-25arm: Remove mx25pdk boardTom Rini
This board has not been converted to CONFIG_DM_MMC by the deadline. Remove it. Cc: Fabio Estevam <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2021-02-24lib: rsa: struct udevice build warningHeinrich Schuchardt
Avoid build warnings observed with gcc 10.2 In file included from lib/rsa/rsa-keyprop.c:16: include/u-boot/rsa-mod-exp.h:65:24: warning: ‘struct udevice’ declared inside parameter list will not be visible outside of this definition or declaration 65 | int rsa_mod_exp(struct udevice *dev, const uint8_t *sig, | uint32_t sig_len, | ^~~~~~~ include/u-boot/rsa-mod-exp.h:96:24: warning: ‘struct udevice’ declared inside parameter list will not be visible outside of this definition or declaration 96 | int (*mod_exp)(struct udevice *dev, const uint8_t *sig, | by defining struct udevice. Fixes: 401d1c4f5d2d ("common: Drop asm/global_data.h from common header") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-24vexpress64_fvp: Set DRAM to 4G to match with kernel devicetreeDiego Sueiro
Currently, the kernel devicetree is setting the DRAM size to ~4G. Signed-off-by: Diego Sueiro <[email protected]>
2021-02-24malloc: adjust memcpy() and memset() definitions.Heinrich Schuchardt
Compiling the sandbox fails on armv7 due to conflicting definitions of memcpy() and memset() in include/malloc.h and include/linux/string.h. Use linux/string.h here. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-24config: hikey: convert to DM_USB and DM_ETHPeter Robinson
Convert the hikey to use DM_USB and DM_ETH. Conversion based on rpi as it has a similar DWC config. Signed-off-by: Peter Robinson <[email protected]>
2021-02-22video: Drop unprintable characters from video_font_data.hSimon Glass
This file contains characters which are not valid in utf-8. This confuses dtoc which wants to parse it. They don't really serve any purpose anyway, so drop them. To: U-Boot Mailing List <[email protected]> Cc: Tom Rini <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2021-02-22Merge tag 'u-boot-amlogic-20210222' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-amlogic - adds adc-keys button driver - fix meson-saradc driver to get reference voltage - add adc-keys test for sandbox - enable adc-keys for VIM3 & VIM3L boards - fix button.h build
2021-02-22Merge tag 'ti-v2021.04-rc3' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-ti - Fix ethernet on J721e - Sync am335x DT nodes from Linux 5.9-rc7 - Minor Clock fixes
2021-02-22Merge tag 'video-for-v2021.04-rc3' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-video - splash_source warning fix when building with 64-bit toolchains - lq123p1jx31 and nv101wxmn51 compatible in simple panel driver - remove not used mb862xx driver - add Himax HX8238D panel driver - s/video_uc_platdata/video_uc_plat/
2021-02-22button: add udevice forward declarationNeil Armstrong
After 401d1c4f5d2d ("common: Drop asm/global_data.h from common header") build fails with : drivers/button/button-uclass.c:13:5: error: conflicting types for 'button_get_by_label' int button_get_by_label(const char *label, struct udevice **devp) ^~~~~~~~~~~~~~~~~~~ Adding struct udevice forward declaration in button.h solves the build error. Fixes: 401d1c4f5d2d ("common: Drop asm/global_data.h from common header") Suggested-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Neil Armstrong <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-22clk: remove a redundant headerDario Binacchi
The linux/err.h header file was included twice. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-21dm: i2c: use CONFIG_IS_ENABLED macro for DM_I2C/DM_I2C_GPIOIgor Opaniuk
Use CONFIG_IS_ENABLED() macro, which provides more convenient way to check $(SPL)DM_I2C/$(SPL)DM_I2C_GPIO configs for both SPL and U-Boot proper. CONFIG_IS_ENABLED(DM_I2C) expands to: - 1 if CONFIG_SPL_BUILD is undefined and CONFIG_DM_I2C is set to 'y', - 1 if CONFIG_SPL_BUILD is defined and CONFIG_SPL_DM_I2C is set to 'y', - 0 otherwise. All occurences were replaced automatically using these bash cmds: $ find . -type f -exec sed -i 's/ifndef CONFIG_DM_I2C/if !CONFIG_IS_ENABLED(DM_I2C)/g' {} + $ find . -type f -exec sed -i 's/ifdef CONFIG_DM_I2C/if CONFIG_IS_ENABLED(DM_I2C)/g' {} + $ find . -type f -exec sed -i 's/defined(CONFIG_DM_I2C)/CONFIG_IS_ENABLED(DM_I2C)/g' {} + $ find . -type f -exec sed -i 's/ifndef CONFIG_DM_I2C_GPIO/if !CONFIG_IS_ENABLED(DM_I2C_GPIO)/g' {} + $ find . -type f -exec sed -i 's/ifdef CONFIG_DM_I2C_GPIO/if CONFIG_IS_ENABLED(DM_I2C_GPIO)/g' {} + $ find . -type f -exec sed -i 's/defined(CONFIG_DM_I2C_GPIO)/CONFIG_IS_ENABLED(DM_I2C_GPIO)/g' {} + Reviewed-by: Heiko Schocher <[email protected]> Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Igor Opaniuk <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Priyanka Jain <[email protected]>
2021-02-21board: freescale: drop CONFIG_DM_I2C undefsIgor Opaniuk
Drop CONFIG_DM_I2C undefs from board header files, and make them disabled on these boards in defconfigs instead. Disabling on Kconfig symbol was done automatically with this script: cd configs files=(*ls1046a*) files2=(*T104*RDB*) files3=(ls1021atwr_*) files4=("imx8mp_evk_defconfig phycore-imx8mp_defconfig") combine=("${files[@]}" "${files2[@]}" "${files3[@]}" "${files4[@]}") cd .. for item in ${combine[*]} do echo "Adjusting $item" echo "# CONFIG_SPL_DM_I2C is not set" >> configs/$item make $item && make savedefconfig && cp defconfig configs/$item done Signed-off-by: Igor Opaniuk <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2021-02-19fdt/sunxi: Remove OF_STDOUT_PATHAndre Przywara
OF_STDOUT_PATH was meant to hold the devicetree path to the serial console, to be put into the linux,stdout-path property of the chosen node. The only user of that was sunxi, and it was actually wrong for years there: the paths hardcoded in sunxi_common.h were not matching the DTs, evident by the leading 0's in nodenames, which have been removed years ago. On top of that, "linux,stdout-path" is now deprecated for a while (Linux commit 2a9d832cc9aae from November 2014), and also all modern DTs (including those included in U-Boot) carry a "stdout-path" property already. So remove the stanza from sunxi_common.h, and, since this was the last user, also remove the associated bits from the rest of U-Boot. Signed-off-by: Andre Przywara <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-19sunxi: Remove dead ifdefs in sunxi-common.hSamuel Holland
As variables were moved to Kconfig, some of the surrounding ifdefs were left around, even though they were empty. Clean them up. Signed-off-by: Samuel Holland <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2021-02-19video: remove unused include/mb862xx.hHeinrich Schuchardt
CONFIG_VIDEO_MB862xx cannot be selected by any configuration. So we can eliminate include/mb862xx.h. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-19Merge tag 'mmc-2021-2-19' of https://gitlab.denx.de/u-boot/custodians/u-boot-mmcTom Rini
- mmc_spi improvement - added mmc-pwrseq to remove duplicated code - fix response timeout after switch command - sdhci: skip cache invalidation if DMA is not used
2021-02-19mmc: pwrseq: add mmc-pwrseq file to provide a generic interfaceJaehoon Chung
Add mmc-pwrseq file to provide a generic interface. Signed-off-by: Jaehoon Chung <[email protected]>
2021-02-19mmc: fix response timeout after switch commandStefan Bosch
After issuing the switch command: Wait until 'current state' of the card status becomes 'tran'. This prevents from response timeout at the next command because of 'current state' = 'data'. Signed-off-by: Stefan Bosch <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2021-02-18Merge branch '2021-02-18-SPL-FIT-OP-TEE-Linux-improvements'Tom Rini
- Improve interactions between SPL / OP-TEE and Linux in FIT images
2021-02-18mmc: Introduce mmc_phys_to_bus()/mmc_bus_to_phys()Nicolas Saenz Julienne
This will allow us to use DM variants of phys_to_bus()/bus_to_phys() when relevant. Signed-off-by: Nicolas Saenz Julienne <[email protected]> Reviewed-by: Simon Glass <[email protected]> Tested-by: Peter Robinson <[email protected]> Signed-off-by: Matthias Brugger <[email protected]>
2021-02-18xhci: translate virtual addresses into the bus's address spaceNicolas Saenz Julienne
So far we've been content with passing physical addresses when configuring memory addresses into XHCI controllers, but not all platforms have buses with transparent mappings. Specifically the Raspberry Pi 4 might introduce an offset to memory accesses incoming from its PCIe port. Introduce xhci_virt_to_bus() and xhci_bus_to_virt() to cater with these limitations, and make sure we don't break non DM users. Signed-off-by: Nicolas Saenz Julienne <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Stefan Roese <[email protected]> Tested-by: Peter Robinson <[email protected]> [mb: fix compilation for 32 bit] Signed-off-by: Matthias Brugger <[email protected]> fix from nicolas
2021-02-18dm: Introduce dev_phys_to_bus()/dev_bus_to_phys()Nicolas Saenz Julienne
These functions, instead of relying on hard-coded platform-specific address translations, make use of the DMA constraints provided by the DM core. This allows for per-device translations. We can't yet get rid of the legacy phys_to_bus()/bus_to_phys() implementations as some of its users are not integrated into the device model. Signed-off-by: Nicolas Saenz Julienne <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Stefan Roese <[email protected]> Tested-by: Peter Robinson <[email protected]> Signed-off-by: Matthias Brugger <[email protected]>
2021-02-18dm: Introduce DMA constraints into the core device modelNicolas Saenz Julienne
Calculating the DMA offset between a bus address space and CPU's every time we call phys_to_bus() and bus_to_phys() isn't ideal performance wise, as it implies traversing the device tree from the device's node up to the root. Since this information is static and available before the device's initialization, parse it before the probe call an provide the DMA offset in 'struct udevice' for the address translation code to use it. Signed-off-by: Nicolas Saenz Julienne <[email protected]> Reviewed-by: Simon Glass <[email protected]> Tested-by: Peter Robinson <[email protected]> Signed-off-by: Matthias Brugger <[email protected]>
2021-02-18dm: Introduce xxx_get_dma_range()Nicolas Saenz Julienne
Add the following functions to get a specific device's DMA ranges: - dev_get_dma_range() - ofnode_get_dma_range() - of_get_dma_range() - fdt_get_dma_range() They are specially useful in oder to be able validate a physical address space range into a bus's and to convert addresses from and to address spaces. Signed-off-by: Nicolas Saenz Julienne <[email protected]> Reviewed-by: Simon Glass <[email protected]> Tested-by: Peter Robinson <[email protected]> Signed-off-by: Matthias Brugger <[email protected]>
2021-02-17image: Do not #if guard board_fit_image_post_process() prototypeAlexandru Gagniuc
There's no point in guarding function prototypes with #ifdefs. If a function is not defined, the linker will notice. Having the prototype does not affect code size. What the #if guard takes away is the ability to use IS_ENABLED: if (CONFIG_IS ENABLED(FIT_IMAGE_POST_PROCESS)) board_fit_image_post_process(...) When the prototype is guarded, the above form cannot be used. This leads to the proliferation of #ifdefs, and unreadable code. The opportunity cost of the #if guard outweighs any benefits. Remove it. Since the original version of this patch, an empty definition was added by commit f14e6eec6c7f ("image: cleanup pre-processor usage"). The empty definition can cause silent failures, when an implementation of board_fit_image_post_process() is expected because the linker will not catch the missing function. Thus this patch removes this empty inline declaration. Fixes: f14e6eec6c7f ("image: cleanup pre-processor usage") Signed-off-by: Alexandru Gagniuc <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-17spl: fit: Drop 'length' argument to board_spl_fit_post_load()Alexandru Gagniuc
The size is derived from the FIT image itself. Any alignment requirements are machine-specific and known by the board code. Thus the total length can be derived from the FIT image and knowledge of the platform. The 'length' argument is redundant. Remove it. Signed-off-by: Alexandru Gagniuc <[email protected]> Reviewed-by: Peng Fan <[email protected]> Reviewed-by: Simon Glass <[email protected]> CC: Matt Porter <[email protected]>
2021-02-16net: Introduce DSA class for Ethernet switchesClaudiu Manoil
DSA stands for Distributed Switch Architecture and it covers switches that are connected to the CPU through an Ethernet link and generally use frame tags to pass information about the source/destination ports to/from CPU. Front panel ports are presented as regular ethernet devices in U-Boot and they are expected to support the typical networking commands. DSA switches may be cascaded, DSA class code does not currently support this. Signed-off-by: Alex Marginean <[email protected]> Signed-off-by: Claudiu Manoil <[email protected]> Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Vladimir Oltean <[email protected]>
2021-02-16net: phy: introduce fixed_phy_create for DSA CPU portsVladimir Oltean
The DSA (Distributed Switch Architecture) implementation has made a design decision when it got introduced to the Linux kernel in 2008. That was to hide away from the user the CPU-facing Ethernet MAC, since it does not make sense to register it as a struct net_device (UCLASS_ETH udevice for U-Boot), because that would never be beneficial for a user: they would not be able to use it for traffic, since conceptually, a packet delivered to the CPU port should loop back into the system. Nonetheless, DSA has had numerous growing pains due to the lack of a struct net_device for the CPU port, but so far it has overcome them. It is unlikely at this stage of maturity that this aspect of it will change. We would like U-Boot to present the same information as Linux, to be at parity in terms of number of interfaces, so that ethNaddr environment variables could directly be associated between U-Boot and Linux. Therefore, we would implicitly like U-Boot to hide the CPU port from the user as well. But the paradox is that DSA still needs a struct phy_device to inform the driver of the parameters of the link that it should configure the CPU port to. The problem is that the phy_device is typically returned via a call to phy_connect, which needs an udevice to attach the PHY to, and to search its ofnode for the 'fixed-link' property. But we don't have an udevice to present for the CPU port. Since 99% of DSA setups are MAC-to-MAC connections between the switch and the host Ethernet controller, the struct phy_device is going to be a fixed PHY. This simplifies things quite a bit. In U-Boot, a fixed PHY does not need an MDIO bus, and does not need an attached dev either. Basically, the phy_connect call doesn't do any connection, it just creates the fixed PHY. The proposal of this patch is to introduce a new fixed_phy_create function which will take a single argument: the ofnode that holds this: port@4 { reg = <4>; phy-mode = "internal"; fixed-link { speed = <2500>; full-duplex; }; }; and probe a fixed PHY driver using the information from this ofnode. DSA will probably be the only user of this function. Signed-off-by: Vladimir Oltean <[email protected]> Reviewed-by: Claudiu Manoil <[email protected]>
2021-02-16drivers: tee: sandbox: add rpc test ta emulationIgor Opaniuk
This adds support for RPC test trusted application emulation, which permits to test reverse RPC calls to TEE supplicant. Currently it covers requests to the I2C bus from TEE. Signed-off-by: Igor Opaniuk <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jens Wiklander <[email protected]> Acked-by: Etienne Carriere <[email protected]>
2021-02-16IOMUX: Introduce iomux_replace_device()Andy Shevchenko
Some console devices may appear or disappear at run time. In order to support such a hotplug mechanism introduce a new iomux_replace_device() helper to update the list of devices without altering environment. Signed-off-by: Andy Shevchenko <[email protected]>
2021-02-16IOMUX: Split out for_each_console_dev() helper macroAndy Shevchenko
It is not only less lines of code, but also better readability when new macro is being in use. Introduce for_each_console_dev() helper macro and convert current users to it. Signed-off-by: Andy Shevchenko <[email protected]>
2021-02-16IOMUX: Split out iomux_match_device() helperAndy Shevchenko
Deduplicate the code used in a few places by splitting out a common helper. Signed-off-by: Andy Shevchenko <[email protected]>
2021-02-16stdio: Introduce a new helper stdio_file_to_flags()Andy Shevchenko
Let's deduplicate existing copies by splitting off to a new helper. Signed-off-by: Andy Shevchenko <[email protected]>
2021-02-16stdio: Get rid of dead code, i.e. stdio_deregister()Andy Shevchenko
Nobody is using stdio_deregister(), remove for good. Note, even its parameters are not consistent with stdio_register(). So, if anyone want to introduce this again, better with some consistency. Signed-off-by: Andy Shevchenko <[email protected]>