- 30 Aug, 2021 21 commits
-
-
Tom Rini authored
First, we convert CONFIG_SYS_I2C_LEGACY to Kconfig. Next, as you cannot have SYS_I2C_LEGACY and DM_I2C at the same time, introduce CONFIG_SPL_SYS_I2C_LEGACY so that we can enable the legacy option only in SPL. Finally, for some PowerPC cases we also need CONFIG_TPL_SYS_I2C_LEGACY support. Convert all of the existing users to one or more symbols. Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
Currently the legacy software i2c support is only used for a single bus. Remove all of the extra and unused support. Also update the README to not reference that, and finish removing some already badly auto-edited related text. Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
This converts the following to Kconfig: CONFIG_SYS_I2C_MVTWSI Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
This converts the following to Kconfig: CONFIG_SYS_I2C_SOFT CONFIG_SYS_I2C_SOFT_SPEED CONFIG_SYS_I2C_SOFT_SLAVE Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
- Rename usages of CONFIG_SYS_DEF_EEPROM_ADDR to CONFIG_SYS_I2C_EEPROM_ADDR based on current usage. - Convert CONFIG_SYS_I2C_EEPROM_ADDR, CONFIG_SYS_I2C_EEPROM_ADDR_LEN, CONFIG_SYS_I2C_EEPROM_BUS, CONFIG_CONFIG_SYS_EEPROM_SIZE CONFIG_SYS_EEPROM_PAGE_WRITE_BITS and CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS to Kconfig. We move these symbols around a bit and add appropriate dependencies to them. In some cases, we now add a correct default value as well. Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
At this point in time, there's no systems with "U-Boot environment exists on an EEPROM which is accessed over the I2C bus" that sets this option. Drop it. Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
This platform defines everything needed to be able to use the eeprom command. In addition, board/compulab/common/eeprom.c is required by the platform, and does not use CONFIG_ID_EEPROM to enable/disable builing of it. In order to migrate CONFIG symbols to Kconfig and to not have to add complex logic to handle this case, enable CMD_EEPROM on this board. Cc: Uri Mashiach <uri.mashiach@compulab.co.il> Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
Finish moving this driver to Kconfig. - Update the dependency logic for Exynos5 too - Remove the unused CONFIG_SYS_I2C_S3C24X0_SPEED variable - Drop CONFIG_SYS_I2C_S3C24X0_SLAVE as it's always set to 0. - Move the internal SYS_I2C_S3C24X0_SLAVE define closer to the only user. Cc: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Minkyu Kang <mk7.kang@samsung.com> Reviewed-by:
Jaehoon Chung <jh80.chung@samsung.com>
-
Tom Rini authored
This converts the following to Kconfig: CONFIG_ID_EEPROM Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
The instances of CONFIG_SYS_I2C_EEPROM_ADDR on these platforms doesn't match up with the rest of the EERPOM related defines in U-Boot. Move these out of the CONFIG namespace rather than make complex Kconfig logic. Cc: Samuel Egli <samuel.egli@siemens.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Heiko Schocher <hs@denx.de> Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Heiko Schocher <hs@denx.de> Reviewed-by:
Anatolij Gustschin <agust@denx.de>
-
Tom Rini authored
As the code reads now, making this code path use CONFIG_SYS_IVM_EEPROM_ADR rather than CONFIG_SYS_I2C_EEPROM_ADDR seems to make sense as the rest of the EEPROM infrastructure isn't used on these platforms. Cc: Aleksandar Gerasimovski <aleksandar.gerasimovski@hitachi-powergrids.com> Signed-off-by:
Tom Rini <trini@konsulko.com> Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Aleksandar Gerasimovski <aleksandar.gerasimovski@hitachi-powergrids.com>
-
Tom Rini authored
The shc platforms do not make use of the rest of the EEPROM infrastructure. Rather than make more elaborate Kconfig logic, remove this setting from the CONFIG namespace. Cc: Heiko Schocher <hs@denx.de> Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Heiko Schocher <hs@denx.de>
-
Tom Rini authored
Looking over the current boards, there are no users of CONFIG_MAC_ADDR_IN_EEPROM. Further, omapl138_lcdk uses CONFIG_NET_RANDOM_ETHADDR. Drop various unused code paths. Cc: Adam Ford <aford173@gmail.com> Cc: Lokesh Vutla <lokeshvutla@ti.com> Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
This platform does not use any of the standard EEPROM functionality and instead provides its own. Use a local namespace for the I2C related defines to access the EEPROM. Cc: Lukasz Majewski <lukma@denx.de> Signed-off-by:
Tom Rini <trini@konsulko.com> Acked-by:
Lukasz Majewski <lukma@denx.de>
-
Tom Rini authored
This code is no longer used, remove it. Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
Rework the default environment a bit to not use non-standard CONFIG_ENV_... names and similar one-off CONFIG names. Cc: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Jaehoon Chung <jh80.chung@samsung.com>
-
Tom Rini authored
Rename CONFIG_ENV_KS2_BOARD_SETTINGS to ENV_KS2_BOARD_SETTINGS so that it better fits with the rest of the environment addition macros. Cc: Vitaly Andrianov <vitalya@ti.com> Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
Rename CONFIG_EXTRA_ENV_BOARD_SETTINGS to EXTRA_ENV_BOARD_SETTINGS in order to not further add to the CONFIG namespace. Cc: Heiko Schocher <hs@denx.de> Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Heiko Schocher <hs@denx.de>
-
Tom Rini authored
There are a number of DWC2 configuration options that are set in dwc2.h and referenced in dwc2.c only. Move these out of the CONFIG_DWC2 namespace and in to the DWC2 namespace. Note that hikey was defining an option that was already always enabled, so we can remove that hunk. Cc: Marek Vasut <marex@denx.de> Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Tom Rini authored
Rsync all defconfig files using moveconfig.py Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- 27 Aug, 2021 1 commit
-
-
https://gitlab.denx.de/u-boot/custodians/u-boot-microblazeTom Rini authored
Xilinx changes for v2021.10-rc3 xilinx: - Disable CONFIG_ARCH_FIXUP_FDT_MEMORY - Print information about cpu via soc drivers and enable DISPLAY_CPUINFO - Wire infrastructure for DTB_RESELECT and MULTI_DTB_FIT zynq: - Wire single QSPI - Use power-source instead of io-standard properties - Enable nor on zc770-xm012 zynqmp: - Change handling around multi_boot() - Setup offset for u-boot.itb in spi - Generate run time dfu_alt_info for capsule update - Use explicit values for enums (zynqmp_firmware.h) - Enable RTC/SHA1/BUTTON/BUTTON_GPIO command - Disable WDT driver by default - Bind usb/scsi via preboot because of EFI - DT updates/fixes - Add soc driver - Fix SPL SPI boot mode versal: - Add soc driver sdhci: - Update tap delay programming for zynq_sdhci driver cmd: - Fix RTC uclass handling in date command - Update pwm help message - Update reset help message watchdog: - Fix wwdt compilation rtc: - Deal with seq alias in rtc uclass - Add zynqmp RTC driver fdt: - Add kernel-doc for fdt_fixup_memory_banks()
-
- 26 Aug, 2021 18 commits
-
-
Michal Simek authored
There is no space in OCM for SPL stack because the space in OCM is occupied by TF-A. That's why move relocate stack to DDR to 0x18000000 address and also enable SPL_SIZE_LIMIT not to be more then 0xfffea000 which is default address for TFA. It is good to summarize current DDR usage in SPL flow. 0-0x80000 is used for BSS (CONFIG_SPL_BSS_START_ADDR, CONFIG_SPL_BSS_MAX_SIZE) 0x100000 is used for DTB passing address (CONFIG_XILINX_OF_BOARD_DTB_ADDR) 0x17fffe70 - CONFIG_SPL_STACK_R_ADDR - is used for GD 0x18000000 is used for SPL stack (CONFIG_SPL_STACK_R_ADDR) 0x20000000-0x21000000 is used for SPL malloc area (CONFIG_SYS_SPL_MALLOC_START, CONFIG_SYS_SPL_MALLOC_SIZE) Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
Use TF-A instead of ATF in description. And update generic description with removing ATF because also configurations without it are supported. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
U-Boot support board detection at run time and based on it change DT. This feature is implemented for SOM Kria platforms which contain two eeproms which contain information about SOM module and CC (Carrier card). Full U-Boot starts with minimal DT file defined by CONFIG_DEFAULT_DEVICE_TREE which is available in multi DTB fit image. It is using default setup of board_name variable initializaed to DEVICE_TREE which corresponds to CONFIG_DEFAULT_DEVICE_TREE option. When DTB_RESELECT is enabled board_detection() is called. Keep it your mind that this code is called before relocation. board_detection() is calling xilinx_read_eeprom() which fills board_info (xilinx_board_description) structure which are parsed in board_name_decode(). Based on DT configuration and amount of nvmemX aliases name of the board is composed by concatenating CONFIG_SYS_BOARD "-" <board_name> "-rev" <board_revision> "-" <cc_name> "-rev" <cc_revision>. If CC is not present or more are available it keeps going. When board name is composed and returned from board_name_decode() it is assigned to board_name variable which is used by board_fit_config_name_match() which is called via fdtdec_setup() when it goes over config options in multi dtb FIT image. From practical point of view multi DTB image is key point here which has to contain configs for detected combinations. Unfortunately as of now they have to be full DTBs and DTBOs are not supported. That's why configuration like: config_X { description = "zynqmp-board-cc"; fdt = "board", "cc"; }; needs to be squashed together with: fdtoverlay -o zynqmp-board-cc -i arch/arm/dts/zynqmp-board.dtb \ arch/arm/dts/zynqmp-cc.dtbo and only one dtb is in fit: config_X { description = "zynqmp-board-cc"; fdt = "board-cc"; }; For creating multi DTBs fit image use mkimage -E, e.g.: mkimage -E -f all.its all.dtb When DTB_RESELECT is enabled xilinx_read_eeprom() is called before relocation and it uses calloc for getting a buffer. Because this is dynamic memory it is not relocated that's why xilinx_read_eeprom() is called again as the part of board_init(). This second read with calloc buffer placed in proper position board_late_init_xilinx() can setup u-boot variables as before. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
When MULTI_DTB_FIT is enabled fit-dtb.blob fit image is created which contain all DTBs listed by CONFIG_OF_LIST. And with DTB_RELESELECT there is a need to handle it as one file with DTBs in it not as separate DTBs in u-boot.its/itb. That's why extend mkimage_fit_atf.sh to generate u-boot.itb correctly. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
Start of DTB should be 64bit aligned that's why also make sure that end is also 64bit aligned. It is not required but it is nice thing to do. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
Enabling MULTI_DTB_FIT and DTB_RESELECT can end up with multi DTBs in FIT image placed and aligned only by 32bits (4bytes). Based on device tree specification: "Specifically, the memory reservation block shall be aligned to an 8-byte boundary and the structure block to a 4-byte boundary." is 64bit (8bytes) alignment required. That's why make sure that fit-dtb.blob and u-boot.itb as our primary target images for Xilinx ZynqMP are all 64bit aligned. Signed-off-by:
Michal Simek <michal.simek@xilinx.com> Reviewed-by:
Andre Przywara <andre.przywara@arm.com>
-
Michal Simek authored
DT needs to be 64bit aligned. If it is not fdt64_to_cpu will fail when try to read information about reserved memory. The system ends in exception without any clue what's going it. That's why detect not aligned DT and panic to show where the issue is coming from. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
Add support for changing DT at run time. It is done via board_detection() which returns platform_id and platform_version which can be used via board_name_decode() to compose board_local_name string which corresponds with DT which is should be used. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
There is no need to keep fru_content around. Free this space. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
Origin code was allocating only pointers to struct xilinx_board_description and there was separate allocation for structure self and freeing in case of failure. The code is directly allocating space for all structures by one calloc to simlify logic. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
Use variable which points to DEVICE_TREE by default. The reason for this change is to enable DTB_RESELECT and MULTI_DTB_FIT where board detection can be used for change DTB at run time. That's why there must be reference in board_fit_config_name_match() via variable instead of hardcoding it which is sufficient for that use case. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
FRU spec expected \0 for unused symbols but unfortunately a lot of boards are using spaces instead of \0. That's why after saving it to desc->name name is checked again and all spaces are converted to \0. This will ensure that names can be used for string manipulations like concatenation. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
Enable button uclass and also gpio-key driver by default. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
Enable it for TPM usage. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Ashok Reddy Soma authored
dev_dbg, dev_err and dev_warn seems to be moved to different header file. Include dm/device_compat.h file to compile properly. Signed-off-by:
Ashok Reddy Soma <ashok.reddy.soma@xilinx.com> Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
Add debug messages to see HW boot mode and also alternative boot mode in logs directly. Signed-off-by:
Michal Simek <michal.simek@xilinx.com>
-
Michal Simek authored
The commit 573a3811 ("sysreset: psci: support system reset in a generic way with PSCI") has added support for warm reset via PSCI but this hasn't been reflected in usage message and user has to look at the code how to run it. That's why update usage text to make this clear. Here is full help with updated usage: ZynqMP> help reset reset - Perform RESET of the CPU Usage: reset - cold boot without level specifier reset -w - warm reset if implemented Signed-off-by:
Michal Simek <michal.simek@xilinx.com> Reviewed-by:
Igor Opaniuk <igor.opaniuk@foundries.io>
-
Michal Simek authored
The first name is taken from command name that's why shouldn't be listed in help. And commands shouldn't be listed with <> which means value but value itself is command name. Also add description for commands to make it clear what it does. Before pwm pwm <invert> <pwm_dev_num> <channel> <polarity> pwm <config> <pwm_dev_num> <channel> <period_ns> <duty_ns> ... After: pwm invert <pwm_dev_num> <channel> <polarity> - invert polarity pwm config <pwm_dev_num> <channel> <period_ns> <duty_ns> - config PWM pwm enable <pwm_dev_num> <channel> - enable PWM output pwm disable <pwm_dev_num> <channel> - disable PWM output Signed-off-by:
Michal Simek <michal.simek@xilinx.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-