summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-07-26fpga: add fpga_compatible2flagOleksandr Suvorov
Add a "compatible" string to binary flag converter, which uses a callback str2flag() of given FPGA driver if available. Signed-off-by: Oleksandr Suvorov <[email protected]> Tested-by: Ricardo Salveti <[email protected]> Tested-by: Adrian Fiergolski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26fpga: pass compatible flags to fpga_load()Oleksandr Suvorov
These flags may be used to check whether an FPGA driver is able to load a particular FPGA bitstream image. Signed-off-by: Oleksandr Suvorov <[email protected]> Tested-by: Ricardo Salveti <[email protected]> Tested-by: Adrian Fiergolski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26fpga: xilinx: pass compatible flags to xilinx_load()Oleksandr Suvorov
This flag is used to check whether a Xilinx FPGA driver is able to load a particular FPGA bitstream image. Signed-off-by: Oleksandr Suvorov <[email protected]> Tested-by: Ricardo Salveti <[email protected]> Tested-by: Adrian Fiergolski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26fpga: zynqmp: add str2flags callOleksandr Suvorov
Add a call to convert FPGA "compatible" string to a binary flag. Signed-off-by: Oleksandr Suvorov <[email protected]> Tested-by: Ricardo Salveti <[email protected]> Tested-by: Adrian Fiergolski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26fpga: xilinx: add bitstream flags to driver descOleksandr Suvorov
Store a set of supported bitstream types in xilinx_desc structure. It will be used to determine whether an FPGA image is able to be loaded with a given driver. Signed-off-by: Oleksandr Suvorov <[email protected]> Tested-by: Ricardo Salveti <[email protected]> Tested-by: Adrian Fiergolski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26fpga: xilinx: add missed identifier namesOleksandr Suvorov
Function definition arguments should also have identifier names. Add missed ones to struct xilinx_fpga_op callbacks, unifying code. Signed-off-by: Oleksandr Suvorov <[email protected]> Tested-by: Ricardo Salveti <[email protected]> Tested-by: Adrian Fiergolski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26configs: imx8mm-cl-iot-gate: enable extension commandYing-Chun Liu (PaulLiu)
For imx8mm-cl-iot-gate we can use extension command to scan extension boards attached on the mainboard. We enable the extension command by default for users to detect the extension boards. Signed-off-by: Ying-Chun Liu (PaulLiu) <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: NXP i.MX U-Boot Team <[email protected]>
2022-07-26configs: imx8mp_venice: remove unnecessary FEC_QUIRK_ENET_MACTim Harvey
FEC_QUIRK_ENET_MAC is defined in the imx-regs.h include file and thus does not need to be defined in the various board config includes. Signed-off-by: Tim Harvey <[email protected]>
2022-07-26fpga: add option for loading FPGA secure bitstreamsOleksandr Suvorov
It allows using this feature without enabling the "fpga loads" command. Signed-off-by: Oleksandr Suvorov <[email protected]> Co-developed-by: Adrian Fiergolski <[email protected]> Signed-off-by: Adrian Fiergolski <[email protected]> Tested-by: Ricardo Salveti <[email protected]> Tested-by: Adrian Fiergolski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26fpga: Convert SYS_FPGA_PROG_FEEDBACK to KconfigAlexander Dahl
This converts the following to Kconfig: SYS_FPGA_PROG_FEEDBACK Signed-off-by: Alexander Dahl <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26fpga: Convert SYS_FPGA_CHECK_CTRLC to KconfigAlexander Dahl
After commit 8cca60a2cbf2 ("Kconfig: Remove some symbols from the whitelist") downstream builds failed for boards setting this in include/configs/… Signed-off-by: Alexander Dahl <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26arm64: versal: Enable power domain driver and its dependenciesAshok Reddy Soma
Enable power domain driver to configure pmufw config object and request node for all the IP's that are enabled in DT. This driver depends on mailbox and IPI driver, hence enable them as well. Add ARCH_VERSAL in the depends on of mailbox Kconfig to compile for Versal platforms. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2022-07-26mailbox: zynqmp: Move struct zynqmp_ipi_msg from sys_proto.hAshok Reddy Soma
Mailbox driver might be need for Versal and other future platforms. To remove the dependency, move struct zynqmp_ipi_msg to zynqmp_firmware.h so that mailbox driver compiles for other platforms easily. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2022-07-26arm64: zynqmp: Enable power domain driverAshok Reddy Soma
Enable power domain driver to configure pmufw config object and request node for all the IP's that are enabled in DT. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2022-07-26firmware: zynqmp: Load config overlay for core0 to pmufwAshok Reddy Soma
Try loading pmufw config overlay for core0, if it doesn't return any error it means pmufw is accepting nodes for other IP's. Otherwise dont try to load config object for any other IP, just return from zynqmp_pmufw_node function. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2022-07-26firmware: zynqmp: Change prototype of zynqmp_pmufw_load_config_object()Ashok Reddy Soma
zynqmp_pmufw_load_config_object() has some error cases and it is better to return those errors. Change prototype of this function to return errors. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2022-07-26arm64: zynqmp: Enable reset driverAshok Reddy Soma
Enable reset driver for ZynqMP platforms. This will enable us to reset the IP's using generic reset_assert and reset_deassert calls. Signed-off-by: T Karthik Reddy <[email protected]> Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26arm64: versal: Enable reset driver for versalMichal Simek
Add CONFIG_DM_RESET and CONFIG_RESET_ZYNQMP configs in versal default configuration to enable support for reset driver for versal platform. Signed-off-by: Michal Simek <[email protected]> Signed-off-by: T Karthik Reddy <[email protected]> Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2022-07-26reset: zynqmp: Add reset driver support for versalT Karthik Reddy
Add support for versal platform by adding "xlnx,versal-reset" compatible string in zynqmp-reset driver. Reset numbering schema for versal is not same as zynqmp, so nr_reset and reset_id are set to zero. In case of assert/dessert, required device reset id is sent from respective driver through struct reset_ctl. Signed-off-by: T Karthik Reddy <[email protected]> Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26xilinx: common: Use strlcpy instead of strncpyMichal Simek
It is recommendation done by checkpatch to all the time have \0 terminated strings. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/c7bfab50c40f6213f1b347b5e4674e382e83cb94.1658413156.git.michal.simek@amd.com
2022-07-26xilinx: Wire uuid reading from FRUMichal Simek
UUID is already recorded when FRU is parsed but it is not copied to local structures and exported to variable that's why simply add it. Data is saved in binary format but there must be conversion to string for exporting it to variable and string should be in uuid format too. One way how to use it directly is to setup pxeuuid based on it. For example via preboot with "setenv pxeuuid ${board_uuid}" Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/1dfa4b4220a508abc05351da2119880811b77612.1658413156.git.michal.simek@amd.com
2022-07-26serial: zynq: Use DIV_ROUND_CLOSEST() to calcurate divider valueKunihiko Hayashi
Since the calulation of "bgen" is rounded down, using a higher baudrate will result in a larger difference from the actual baudrate. Should use DIV_ROUND_CLOSEST() like the Linux driver. Signed-off-by: Kunihiko Hayashi <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26tools: relocate-rela: Define all macros for e_machine and reloc typesMichal Simek
With some old toolchain not all values should be available that's why better to define all of them to avoid compilation issues. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/e2a66854c5506100eb82b5b33cec7f0b5fca1008.1657260903.git.michal.simek@amd.com
2022-07-26tools: relocate-rela: Remove guard around R_AARCH64_RELATIVEMichal Simek
In code you can find out this fragment: 19 #ifndef R_AARCH64_RELATIVE 20 #define R_AARCH64_RELATIVE 1027 21 #endif which means that R_AARCH64_RELATIVE is defined all the time that's why ifdef is not needed. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/0d40a09ab6edcd88ba3059f7a0b63a819b71256a.1657260903.git.michal.simek@amd.com
2022-07-26dt-bindings: versal: Add versal reset IDsMichal Simek
The same file is already the part of Linux kernel that's why add it also to u-boot to be able to use it in source code and DT files. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/1c3bc464536a9bf64a2e8bfe18a938c9cb490620.1657192249.git.michal.simek@amd.com
2022-07-26xilinx: Remove duplicate PMIO_NODE_ID_BASE macroMichal Simek
PMIO_NODE_ID_BASE is defined twice that's why remove one instance. Fixes: 248fe9f302df ("spi: cadence_qspi: Enable apb linear mode for apb read & write operations") Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/ce9a601bb99418aa20272d046c74678829d942cc.1657191974.git.michal.simek@amd.com
2022-07-26test/py: Run simple dm commands without checkingMichal Simek
Just to make sure that dm commands can operate. This was the problem on Microblaze in past without fixing manual relocation. Signed-off-by: Michal Simek <[email protected]> Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Simon Glass <[email protected]> Link: https://lore.kernel.org/r/e6c4b8b44445c16cee84436627642ccc9886f507.1657191580.git.michal.simek@amd.com
2022-07-26py: tests: Bind should run only on sandboxMichal Simek
Disable test to run on any other platform than sandbox. Signed-off-by: Michal Simek <[email protected]> Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Simon Glass <[email protected]> Link: https://lore.kernel.org/r/786bfdfda7dee4494e39c3fff699970ecd623116.1657191142.git.michal.simek@amd.com
2022-07-26arm64: zynqmp: Disable LMB for mini configurationsMichal Simek
There is no need to have LMB enabled that's why save some space by disabling it. aarch64: (for 8/8 boards) all -1168.5 rodata -105.5 text -1063.0 xilinx_zynqmp_mini: all -2013 rodata -185 text -1828 xilinx_zynqmp_mini_qspi: all -2013 rodata -185 text -1828 xilinx_zynqmp_mini_emmc0: all -2661 rodata -237 text -2424 xilinx_zynqmp_mini_emmc1: all -2661 rodata -237 text -2424 Signed-off-by: Michal Simek <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/f735d7691f4e7a7958d985b22c40aeb26e37a404.1657183534.git.michal.simek@amd.com
2022-07-26zynqmp: Run board_get_usable_ram_top() only on main U-BootAshok Reddy Soma
With commit ce39ee28ec31 ("zynqmp: Do not place u-boot to reserved memory location"), the function board_get_usable_ram_top() is allocating MMU_SECTION_SIZE of about 2MB using lmb_alloc(). But we dont have this much memory in case of mini U-Boot. Keep these functions which use lmb under CONFIG_LMB so that they are compiled and used only when LMB is enabled. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Michal Simek <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/75e52def75f573e554a6b177a78504c128cb0c4a.1657183534.git.michal.simek@amd.com
2022-07-26lmb: Fix lmb property's defination under struct lmbAshok Reddy Soma
Under struct lmb {} the lmb property's should be defined only if CONFIG_LMB_MEMORY_REGIONS is defined. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Michal Simek <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/c24a2b1d6f5db4eb65393f6a77fae129b30b6233.1657183534.git.michal.simek@amd.com
2022-07-26arm: riscv: Remove additional ifdef from code guarded by CONFIG_IS_ENABLEDMichal Simek
CONFIG_OF_LIBFDT is used twice for guarding the same code. It is enough to do it once that's why remove additional ifdefs from arm and risc-v code. Fixes: 0c303f9a6628 ("image: Drop IMAGE_ENABLE_OF_LIBFDT") Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Tom Rini <[email protected]> Link: https://lore.kernel.org/r/f8e3ff9124195cbd957874de9a65ef79760ef5e7.1657183634.git.michal.simek@amd.com
2022-07-26arm64: zynqmp: Enable SLG gpo driver by defaultMichal Simek
This device is used on SOM CCs that's why enable it by default. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/ebbfc0c883ca7d4f70c75d8d3655aaa6a81d77be.1656943737.git.michal.simek@amd.com
2022-07-26xilinx: zynqmp: Do not use 0 as spl bss start addressStefan Herbrechtsmeier
Do not use 0 as address for memory because of the special meaning for pointers (null pointer). Change the spl bss start address to the second page. Signed-off-by: Stefan Herbrechtsmeier <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26tools: relocate-rela: Fix ELF decoding on big-endian hostsSamuel Holland
The new ELF decoding logic assumed that the target binary has the same endianness as the host, which broke building ARM64 firmware binaries on big-endian machines. This commit fixes the ELF64 decoding to be host-endianness-neutral, and applies the same changes to the ELF32 decoding. It does not fix the microblaze-specific dynamic symbol decoding. It also corrects the functions used for byte swapping in rela_elf64() and rela_elf32(). The result is the same, but semantically the code is converting bytes read from a foreign-endianness file to host byte order. Fixes: 4c9e2d643460 ("tools: relocate-rela: Read rela start/end directly from ELF") Fixes: a1405d9cfedb ("tools: relocate-rela: Check that relocation works only for EM_AARCH64") Signed-off-by: Samuel Holland <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26mmc: zynq_sdhci: Fix timing macros for MMC High speedAshok Reddy Soma
Timing macro's are wrong for MMC_HS_52 and MMC_DDR_52. Fix it with correct values of MMC_TIMING_MMC_HS and MMC_TIMING_MMC_DDR52 respectively. Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-07-26arm64: zynqmp: Used fixed-partitions for QSPI in k26Michal Simek
Using fixed partitions is recommended way how to describe QSPI. Also add label for qspi flash memory to be able to reference it in future. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/a84f7ce8d6472fce66539ba29d31fbaae511d94b.1655732762.git.michal.simek@amd.com
2022-07-26xilinx: Remove the legacy property "#stream-id-cells"Ayan Kumar Halder
"#stream-id-cells" was being used with "mmu-masters" for Xen specific device trees. With Xen commit 2278d2cbb0b7c1b48b298c6c4c6a7de2271ac928 (Link below) Xen is able to support smmu bindings in both formats ie : 1. Using iommus (linux format) 2. Using mmu-masters (legacy format). Thus, "#stream-id-cells" which was used for the legacy format, can be removed as Xen can use smmu bindings in linux format. Link: https://www.mail-archive.com/[email protected]/msg101649.html Signed-off-by: Ayan Kumar Halder <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/1e062acb233dee47cd7dd2429cb482132617cbc8.1655886415.git.michal.simek@amd.com
2022-07-25Prepare v2022.10-rc1v2022.10-rc1Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2022-07-25configs: Resync with savedefconfigTom Rini
Resync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
2022-07-25Merge branch '2022-07-25-assorted-platform-updates'Tom Rini
- Assorted TI, Apple, Snapdragon and Xen updates.
2022-07-25drivers: xen: unmap Enlighten page before jumping to LinuxDmytro Firsov
This commit fixes issue with usage of Xen hypervisor shared info page. Previously U-boot did not unmap it at the end of OS boot process. Xen did not prevent guest from this. So, it worked, but caused wierd issues - one memory page, that was returned by memalign in U-boot for Enlighten mapping was not unmaped by Xen (shared_info values was not removed from there) and returned to allocator. During the Linux boot, it uses shared_info page as regular RAM page, which leads to hypervisor shared info corruption. So, to fix this issue, as discussed on the xen-devel mailing list, the code should: 1) Unmap the page 2) Populate the area with memory using XENMEM_populate_physmap This patch adds page unmapping via XENMEM_remove_from_physmap, fills hole in address space where page was mapped via XENMEM_populate_physmap and return this address to memory allocator for freeing. Signed-off-by: Dmytro Firsov <[email protected]> Reviewed-by: Anastasiia Lukianenko <[email protected]>
2022-07-25arm: Remove unused references to CONFIG_SOC_DM*Tom Rini
There are no references to CONFIG_SOC_DM355 / CONFIG_SOC_DM365 / CONFIG_SOC_DM644X / CONFIG_SOC_DM646X and the files these Makefile lines reference have already been dropped. Signed-off-by: Tom Rini <[email protected]>
2022-07-25spl: Use SPL_TEXT_BASE instead of ISW_ENTRY_ADDRAndrew Davis
The ISW_ENTRY_ADDR symbol was used for OMAP devices in place of SPL_TEXT_BASE. Keystone2 HS devices were not using it right either. Remove ISW_ENTRY_ADDR and use SPL_TEXT_BASE directly. Signed-off-by: Andrew Davis <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2022-07-25arm: k3: config.mk: Read software revision information from file on HSAndrew Davis
Read the swrv.txt file from the TI Security Development Tools when TI_SECURE_DEVICE is enabled. This allows us to set our software revision in one place and have it used by all the tools that create TI x509 boot certificates. Signed-off-by: Andrew Davis <[email protected]>
2022-07-25k3_gen_x509_cert: Make SWRV configurable for anti-rollback protectionYogesh Siraswar
The x509 certificate SWRV is currently hard-coded to 0. This need to be updated to 1 for j721e 1.1, j7200 and am64x. It is don't care for other k3 devices. Added new config K3_X509_SWRV to k3. Default is set to 1. Signed-off-by: Yogesh Siraswar <[email protected]> Reviewed-by: Dave Gerlach <[email protected]>
2022-07-25arm: mach-k3: Remove ROM firewalls on GP devicesAndrew Davis
This isn't strictly needed as these firewalls should all be disabled on GP, but it also doesn't hurt, so do this unconditionally to remove this use of CONFIG_TI_SECURE_DEVICE. Signed-off-by: Andrew Davis <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2022-07-25defconfigs: j721e_hs_evm: Sync HS and non-HS defconfigsAndrew Davis
Additions have been made to the non-HS defconfig without the same being made to the HS defconfig, sync them. Signed-off-by: Andrew Davis <[email protected]>
2022-07-25defconfigs: am57xx_hs_evm: Sync HS and non-HS defconfigsAndrew Davis
Sync new additions to non-HS defconfig with HS defconfig. Signed-off-by: Andrew Davis <[email protected]>
2022-07-25defconfigs: Add a config for AM43xx HS EVM with QSPI Boot supportAndrew Davis
On AM43xx HS devices, QSPI boot is XIP and we use a single stage bootloader. Add a defconfig for this. Signed-off-by: Andrew Davis <[email protected]>