Marek Vasut [Sun, 27 Nov 2022 14:31:56 +0000 (15:31 +0100)]
usb: dwc3: Drop support for "snps, ref-clock-period-ns" DT property
Drop support for quickly deprecated DT property "snps,ref-clock-period-ns"
to prevent its proliferation.
Reviewed-by: Sean Anderson <seanga2@gmail.com>
Signed-off-by: Marek Vasut <marex@denx.de>
Sean Anderson [Sun, 27 Nov 2022 14:31:55 +0000 (15:31 +0100)]
usb: dwc3: Program GFLADJ
GUCTL.REFCLKPER can only account for clock frequencies with integer
periods. To address this, program REFCLK_FLADJ with the relative error
caused by period truncation. The formula given in the register reference
has been rearranged to allow calculation based on rate (instead of
period), and to allow for fixed-point arithmetic.
Additionally, calculate a value for 240MHZDECR. This configures a
simulated 240Mhz clock using a counter with one fractional bit (PLS1).
This register is programmed only for versions >= 2.50a, since this is
the check also used by commit
db2be4e9e30c ("usb: dwc3: Add frame length
adjustment quirk").
[ marek: Ported from Linux kernel commit
596c87856e08d ("usb: dwc3: Program GFLADJ") ]
Reviewed-by: Sean Anderson <seanga2@gmail.com>
Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Marek Vasut <marex@denx.de> # Port from Linux
Sean Anderson [Sun, 27 Nov 2022 14:31:54 +0000 (15:31 +0100)]
usb: dwc3: Calculate REFCLKPER based on reference clock
Instead of using a special property to determine the reference clock
period, use the rate of the reference clock. When we have a legacy
snps,ref-clock-period-ns property and no reference clock, use it
instead. Fractional clocks are not currently supported, and will be
dealt with in the next commit.
[ marek: Ported from Linux kernel commit
5114c3ee24875 ("usb: dwc3: Calculate REFCLKPER based on reference clock") ]
Reviewed-by: Sean Anderson <seanga2@gmail.com>
Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: Marek Vasut <marex@denx.de> # Port from Linux
Balaji Prakash J [Sun, 27 Nov 2022 14:31:53 +0000 (15:31 +0100)]
usb: dwc3: reference clock period configuration
Set reference clock period when it differs from dwc3 default hardware
set.
We could calculate clock period based on reference clock frequency. But
this information is not always available. This is the case of PCI bus
attached USB host. For that reason we use a custom property.
Tested (USB2 only) on IPQ6010 SoC based board with 24 MHz reference
clock while hardware default is 19.2 MHz.
[ baruch: rewrite commit message; drop GFLADJ code; remove 'quirk-' from
property name; mention tested hardware ]
[ marek: Ported from Linux kernel commit
7bee318838890 ("usb: dwc3: reference clock period configuration") ]
Reviewed-by: Sean Anderson <seanga2@gmail.com>
Signed-off-by: Balaji Prakash J <bjagadee@codeaurora.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Marek Vasut <marex@denx.de> # Port from Linux
Marek Vasut [Sun, 27 Nov 2022 14:31:52 +0000 (15:31 +0100)]
usb: dwc3: Cache ref_clk pointer in struct dwc3
Cache ref_clk clock pointer in struct dwc3 . This is a preparatory
patch for subsequent backports from Linux kernel which configure
GFLADJ register content based on the ref_clk rate and therefore need
access to the ref_clk pointer.
It is possible to extract the clock pointer from existing clk_bulk
list of already claimed clock, no need to call clk_get*() again.
Reviewed-by: Sean Anderson <seanga2@gmail.com>
Signed-off-by: Marek Vasut <marex@denx.de>
Marek Vasut [Sat, 26 Nov 2022 12:57:53 +0000 (13:57 +0100)]
usb: Expand buffer size in usb_find_and_bind_driver()
The "generic_bus_%x_dev_%x" string which is printed into this buffer
can be up to 34 characters long ("generic_bus_12345678_dev_12345678").
The buffer would be clipped by snprintf() if both %x were at maximum
range. Make sure the buffer is long enough to cover such possibility.
Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tom Rini [Thu, 24 Nov 2022 21:31:02 +0000 (16:31 -0500)]
Merge branch '2022-11-23-assorted-fixes'
- Small ubifs updates, mkenvimage fix, ast2600 ram updates, update CI to
make git happier, spelling fix in K3 code and fix dependencies in
CMD_CLS
John Keeping [Wed, 23 Nov 2022 17:16:14 +0000 (17:16 +0000)]
cmd: fix dependency for CMD_CLS
It seems this symbol was missed when renaming DM_VIDEO -> VIDEO. Update
it.
Fixes:
b86986c7b3 ("video: Rename CONFIG_DM_VIDEO to CONFIG_VIDEO")
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: John Keeping <john@metanate.com>
Bryan Brattlof [Tue, 22 Nov 2022 19:28:11 +0000 (13:28 -0600)]
arm: mach-k3: fix spelling mistake "entended" -> "extended"
the macro for the boot data location from rom is misspelled. fix it
Signed-off-by: Bryan Brattlof <bb@ti.com>
Tom Rini [Mon, 21 Nov 2022 17:52:40 +0000 (12:52 -0500)]
CI: Make more use of git safe.directory
We have a number of jobs that will have git complain about needing to
set safe.directory and this being untrue as a fatal error, but then
complete. Set this flag correctly now as it should be used, and may
prevent a future failure.
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Dylan Hung [Fri, 11 Nov 2022 07:30:08 +0000 (15:30 +0800)]
ram: ast2600: Align the RL and WL setting
Use macro to represent the RL and WL setting to ensure the PHY and
controller setting are aligned.
Review-by: Ryan Chen <ryan_chen@aspeedtech.com>
Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
Dylan Hung [Fri, 11 Nov 2022 07:30:07 +0000 (15:30 +0800)]
ram: ast2600: Improve ddr4 timing and signal quality
Adjust the following settings to get better timing and signal quality.
1. write DQS/DQ delay
-
1e6e2304[0]
-
1e6e2304[15:8]
2. read DQS/DQ delay
- 0x1e6e0298[0]
- 0x1e6e0298[15:8]
3. CLK/CA timing
- 0x1e6e01a8[31]
4. Read and write termination
- change RTT_ROM from 40 ohm to 48 ohm (MR1[10:8])
- change RTT_PARK from disable to 48 ohm (MR5[8:6])
- change RTT_WR from 120 ohm to disable (MR2[11:9])
- change PHY ODT from 40 ohm to 80 ohm (0x1e6e0130[10:8])
Note1: Both DDR-PHY and DDR controller have their own registers for DDR4
Mode Registers (MR0~MR6). This patch introduces macros to synchronize
the MR value on both sides.
Note2: the waveform meansurement can be found in item #21 of Aspeed
AST26x0 Application note (AP note).
Review-by: Ryan Chen <ryan_chen@aspeedtech.com>
Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
Dylan Hung [Fri, 11 Nov 2022 07:30:06 +0000 (15:30 +0800)]
ram: ast2600: Fix incorrect statement of the register polling
The condition "~data" in the if-statement is a typo. The original
intention is to poll if SDRAM_PHYCTRL0_INIT bit equals to 0. So use
"data == 0" for instead.
Besides, the bit[1] of "phy_status" register is hardwired to
SDRAM_PHYCTRL0_INIT (with inverse logic). Since SDRAM_PHYCTRL0_INIT has
already done, remove the unnecessary checking of phy_status[1].
Fixes:
fde93143469f ("ram: aspeed: Add AST2600 DRAM control support")
Review-by: Ryan Chen <ryan_chen@aspeedtech.com>
Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
Marek Vasut [Mon, 7 Nov 2022 00:56:04 +0000 (01:56 +0100)]
tools: mkenvimage: Drop duplicate crc header include
This header was already included just above version.h,
do not include it twice.
Fixes:
3db71108575 ("crc32: Use the crc.h header for crc functions")
Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Pali Rohár [Sun, 7 Aug 2022 19:58:56 +0000 (21:58 +0200)]
cmd: ubifs: Do not show usage when command fails
Return value -1 cause U-Boot to print usage message. Return value
1 (CMD_RET_FAILURE) indicates failure. So fix return value when ubifs
command starts it execution and fails.
Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Pali Rohár [Sun, 7 Aug 2022 19:27:09 +0000 (21:27 +0200)]
ubifs: Allow to silence debug dumps
Debug dump logs are not always required. Add a new config option
UBIFS_SILENCE_DEBUG_DUMP to silence all debug dumps. On powerpc/mpc85xx
when enabled this will decrease size of U-Boot binary by 11 kB.
Signed-off-by: Pali Rohár <pali@kernel.org>
Tested-by: Tony Dinh <mibodhi@gmail.com>
Tom Rini [Wed, 23 Nov 2022 15:05:26 +0000 (10:05 -0500)]
Merge tag 'u-boot-amlogic-
20221122' of https://source.denx.de/u-boot/custodians/u-boot-amlogic
- Implement setbrg op to meson serial device
- Re-add the old PHY reset binding for nanopi-k2
Tom Rini [Wed, 23 Nov 2022 03:14:06 +0000 (22:14 -0500)]
Merge tag 'dm-pull-22nov22' of https://source.denx.de/u-boot/custodians/u-boot-dm
buildman /binman improvements for handling missing blobs
fix for long-standing image.h warning
minor fixes
Simon Glass [Tue, 22 Nov 2022 22:12:10 +0000 (15:12 -0700)]
test: Disable part of the setexpr test for now
This fails in CI for unknown reasons. Disable the last assert for now.
Signed-off-by: Simon Glass <sjg@chromium.org>
Marek Vasut [Mon, 14 Nov 2022 21:50:00 +0000 (22:50 +0100)]
test: cmd: fdt: Add fdt get value test case
Add test case for 'fdt get value' sub command.
The test case can be triggered using:
"
./u-boot -d u-boot.dtb -c 'ut fdt'
"
Acked-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Signed-off-by: Marek Vasut <marex@denx.de>
Marek Vasut [Mon, 14 Nov 2022 21:49:59 +0000 (22:49 +0100)]
cmd: fdt: Fix iteration over elements above index 1 in fdt get
Always increment both the iterator and pointer into the string
property value by length of the current element + 1 (to cater
for the string delimiter), otherwise the element extracted from
the string property value would be extracted from an offset that
is multiple of the length of the first element, instead of sum
of element lengths until select index.
This fixes 'fdt get value' operation for index above 1 (counting
from index 0).
Acked-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Fixes:
13982ced2cc ("cmd: fdt: Add support for reading stringlist property values")
Signed-off-by: Marek Vasut <marex@denx.de>
Sughosh Ganu [Thu, 10 Nov 2022 17:04:30 +0000 (22:34 +0530)]
sandbox: Move the capsule GUID declarations to board file
The sandbox config file is to be removed. Move the GUID declarations
needed for capsule update functionality to the board file where they
are used.
Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Heinrich Schuchardt [Thu, 10 Nov 2022 07:40:30 +0000 (08:40 +0100)]
sandbox: check lseek return value in handle_ufi_command
Invoking lseek() may result in an error. Handle it.
Addresses-Coverity-ID: 376212 ("Error handling issues (CHECKED_RETURN)")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Simon Glass [Thu, 10 Nov 2022 02:14:54 +0000 (19:14 -0700)]
binman: Add documentation for the command line args
Add command-line documentation for binman.
Signed-off-by: Simon Glass <sjg@chromium.org>
Tom Rini [Thu, 10 Nov 2022 02:14:53 +0000 (19:14 -0700)]
buildman: Add --allow-missing flag to allow missing blobs
Add a new flag to buildman so that we will in turn pass
BINMAN_ALLOW_MISSING=1 to 'make'. Make use of this flag in CI.
Allow the settings file to control this.
Cc: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Cc: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:52 +0000 (19:14 -0700)]
buildman: Reinstate removal of temp output dir in tests
This was dropped my mistake. Reinstate it.
Signed-off-by: Simon Glass <sjg@chromium.org>
Fixes:
d829f1217c6 ("bulidman: Add support for a simple build")
Simon Glass [Thu, 10 Nov 2022 02:14:51 +0000 (19:14 -0700)]
buildman: Ensure config_fname is inited
Init this variable at the top level since it is a global.
Signed-off-by: Simon Glass <sjg@chromium.org>
Tom Rini [Thu, 10 Nov 2022 02:14:50 +0000 (19:14 -0700)]
global: Do not default to faking missing binaries for buildman
While it is possible and documented on how to re-run buildman to replace
faked required binary files after the fact, this behavior ends up being
more confusing than helpful in practice. Switch to requiring
BINMAN_ALLOW_MISSING=1 to be passed on the 'make' line to enable this
behavior.
Cc: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Cc: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:49 +0000 (19:14 -0700)]
binman: Add a separate section about environment variables
These are documented in various several sections. Add a new section that
mentions them all in one place so it is easier to see what environment
variables can be used to control U-Boot's use of binman.
Signed-off-by: Simon Glass <sjg@chromium.org>
Suggested-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Simon Glass [Thu, 10 Nov 2022 02:14:48 +0000 (19:14 -0700)]
buildman: Detect binman reporting missing blobs
Buildman should consider a build as a success (with warnings) if missing
blobs have been dealt with by binman, even though buildman itself returns
and error code overall. This is how other warnings are dealt with.
We cannot easily access the 103 exit code, so detect the problem in the
output.
With this change, missing blobs result in an exit code of 101, although
they still indicate failure.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:47 +0000 (19:14 -0700)]
buildman: Drop mention of old architectures
Support for some architectures has been removed since buildman was first
written. Also all toolchains are now available at kernel.org so we don't
need the links, except for arc where the kernel.org toolchain fails to
build all boards.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:46 +0000 (19:14 -0700)]
buildman: Update the default settings file
The settings file omits a few lines which are useful for getting every
board building. Add these and update the documentation tool.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:45 +0000 (19:14 -0700)]
buildman: Update the arc toolchain
There is one on kernel.org but it does not build the hsdk_4xd board. Add
a link to one which does.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:44 +0000 (19:14 -0700)]
buildman: Drop mention of MAKEALL
This script was removed about 6 years ago so most people should be aware
that it is not needed anymore. Drop mention of it.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:43 +0000 (19:14 -0700)]
buildman: Convert documentation to rST
Convert the buildman documentation to rST format and include it in the
'build' section.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Quentin Schulz <foss+uboot@0leil.net>
Simon Glass [Thu, 10 Nov 2022 02:14:42 +0000 (19:14 -0700)]
binman: Use an exit code when blobs are missing
At present binman returns success when told to handle missing/faked blobs
or missing bintools. This is confusing since in fact the resulting image
cannot work.
Use exit code 103 to signal this problem, with a -W option to convert
it to a warning.
Rename the flag to --ignore-missing since it controls bintools also.
Add documentation about exit codes while we are here.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:41 +0000 (19:14 -0700)]
doc: Correct the path to the Makefile documentation
This is out-of-date now. Fix it.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:40 +0000 (19:14 -0700)]
Makefile: Correct the binman rule
This currently uses if_changed on a phony target. Use a real file as the
target and add FORCE at the end, as required. Drop the 'inputs' phony
since it is not needed.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Thu, 10 Nov 2022 02:14:39 +0000 (19:14 -0700)]
image: Correct strncpy() warning with image_set_name()
gcc 12 seems to warn on strncpy() as a matter of course. Rewrite the code
a different way to do the same thing, to avoid the warning.
Signed-off-by: Simon Glass <sjg@chromium.org>
Quentin Schulz [Mon, 7 Nov 2022 12:54:56 +0000 (13:54 +0100)]
Revert "binman: btool: gzip: fix packer name so that binary can be found"
This reverts commit
daa2da754afe1bac777f6cb0f05233e0de7b325d.
This commit is not needed anymore since the btool_ prefix is
automatically stripped by bintool.
Cc: Quentin Schulz <foss+uboot@0leil.net>
Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Quentin Schulz [Mon, 7 Nov 2022 12:54:54 +0000 (13:54 +0100)]
binman: bintool: remove btool_ prefix from btool names
The binary is looked on the system by the suffix of the packer class.
This means binman was looking for btool_gzip on the system and not gzip.
Since a btool can have its btool_ prefix missing but its module and
binary presence on the system appropriately found, there's no need to
actually keep this prefix after listing all possible btools, so let's
remove it.
This fixes gzip btool by letting Bintool.find_bintool_class handle the
missing prefix and still return the correct class which is then init
with gzip name instead of btool_gzip.
Additionally, there was an issue with the cached module global variable.
The variable only stores the module and not the associated class name
when calling find_bintool_class.
This means that when caching the module on the first call to
find_bintool_class, class_name would be set to Bintoolbtool_gzip but the
module_name gzip only, adding the module in the gzip key in the module
dictionary. When hitting the cache on next calls, the gzip key would be
found, so its value (the module) is used. However the default class_name
(Bintoolgzip) is used, failing the getattr call.
Instead, let's enforce the same class name: Bintool<packer>, whatever
the filename it is contained in.
Cc: Quentin Schulz <foss+uboot@0leil.net>
Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Christian Hewitt [Tue, 25 Oct 2022 14:32:05 +0000 (14:32 +0000)]
arm64: dts: meson: nanopi-k2: readd PHY reset properties
The sync of device-tree/bindings in
11a48a5a18c6 ("Linux 5.6-rc2") causes
Ethernet to break on some GXBB boards; the PHY seems to need proper reset
timing to function in u-boot and Linux. Re-add the old PHY reset binding
for dwmac until we support new bindings in the PHY node. This borrows the
same fix applied to the Odroid C2 board [0].
[0] https://lists.denx.de/pipermail/u-boot/2021-April/446658.html
Fixes:
dd5f2351e99a ("arm64: dts: meson: sync dt and bindings from v5.6-rc2")
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20221025143205.14470-1-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Edoardo Tomelleri [Sun, 18 Sep 2022 16:17:01 +0000 (18:17 +0200)]
arm: amlogic: add setbrg op to serial device
Implement setbrg in amlogic/meson serial device with driver model
similar to how the meson_uart.c driver does it in Linux. Also
configure (probe) the serial device with the new reg5 register.
Signed-off-by: Edoardo Tomelleri <e.tomell@gmail.com>
Link: https://lore.kernel.org/r/20220918161701.572814-1-e.tomell@gmail.com
Acked-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Tom Rini [Tue, 22 Nov 2022 17:33:48 +0000 (12:33 -0500)]
Merge tag 'xilinx-for-v2023.01-rc3' of https://source.denx.de/u-boot/custodians/u-boot-microblaze
Xilinx changes for v2023.01-rc3
microblaze:
- Enable 32 bit addressing mode for SPIs
zynq:
- Minor DT fixes (PL clock enabling)
zynqmp:
- Disable watchdog by default
- Remove unused xlnx,eeprom chosen support
- Add missing symlink for vck190 SC revB
- Use mdio bus with ethernet-phy-id description
versal:
- Add mini qspi/ospi configuration
versal-net:
- Add soc driver
- Fix Kconfig entry for SOC
- Fix loading address location for MINI configuration
- Disable LMB for mini configuration
net:
- Fix ethernet-phy-id usage in the code
pinctrl:
- Revert high impedance/output enable support
timer:
- Fix timer relocation for Microblaze
- Fix timer wrap in 32bit Xilinx timer driver
Ashok Reddy Soma [Wed, 16 Nov 2022 14:11:55 +0000 (07:11 -0700)]
arm64: versal: Add octal spi flash mini u-boot configuration
Add configuration file for mini u-boot configuration which runs on a
smaller footprint from on chip memory(OCM). This configuration has
required CONFIG's enabled to support octal spi flash and uses DCC terminal
for console output. Add required dts for octal spi flash mini u-boot
configuration.
Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Link: https://lore.kernel.org/r/20221116141155.14788-4-ashok.reddy.soma@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
Ashok Reddy Soma [Wed, 16 Nov 2022 14:11:54 +0000 (07:11 -0700)]
spi: cadence-qspi: Fix compilation error in mini u-boot flash reset
When cadence_qspi_versal_flash_reset() function is called in mini
u-boot where there is no firmware support, it is missing defines for
macro's BOOT_MODE_POR_0 & BOOT_MODE_POR_1. Remove them and replace with
already define macro's which have same values as these.
Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Link: https://lore.kernel.org/r/20221116141155.14788-3-ashok.reddy.soma@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
Ashok Reddy Soma [Wed, 16 Nov 2022 14:11:53 +0000 (07:11 -0700)]
arm64: versal: Add qspi flash mini u-boot configuration
Add configuration file for mini u-boot configuration which runs on a
smaller footprint from on chip memory(OCM). This configuration has
required CONFIG's enabled to support qspi flash and uses DCC terminal
for console output. Add required dts files for qspi mini configuration.
Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Link: https://lore.kernel.org/r/20221116141155.14788-2-ashok.reddy.soma@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
Ashok Reddy Soma [Wed, 16 Nov 2022 15:40:30 +0000 (16:40 +0100)]
qspi: versal-net: Add condition for tapdelay register
Add CONFIG_ARCH_VERSAL_NET to select tapdelay register for versal-net.
Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/2500dd688214e2ec2d54ed3fabbfee0b1ca861a6.1668613229.git.michal.simek@amd.com
Michal Simek [Wed, 16 Nov 2022 15:36:35 +0000 (16:36 +0100)]
soc: xilinx: versal-net: Add soc_xilinx_versal_net driver
Add soc_xilinx_versal_net driver to identify the family & revision of
versal-net SoC. Add Kconfig option CONFIG_SOC_XILINX_VERSAL_NET to
enable/disable this driver. To enable this driver by default, add this
config to xilinx_versal_net_virt_defconfig file. This driver will be
probed using platdata U_BOOT_DEVICE structure which is specified in
mach-versal-net/cpu.c.
Signed-off-by: Michal Simek <michal.simek@amd.com>
Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@amd.com>
Link: https://lore.kernel.org/r/613d6bcffd9070f62cf348079ed16c120f8fc56f.1668612993.git.michal.simek@amd.com
Michal Simek [Wed, 16 Nov 2022 15:33:17 +0000 (16:33 +0100)]
xilinx: versal-net: Disable LMB for mini configuration
There is no reason to have LMB enabled on mini configuration because it is
only consuming space that's why disable it.
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/47067c87b6b2e7600d3c2808e7d0aa6fe82aa1fe.1668612795.git.michal.simek@amd.com
Michal Simek [Wed, 16 Nov 2022 10:59:19 +0000 (11:59 +0100)]
arm64: zynqmp: Describe TI phy as ethernet-phy-id with reset on zcu106
zcu106 also connects ethernet phy reset via tca6416 chip as is done on
other evaluation boards. That's why describe this connection to make sure
that ethernet phy is reset before it's use.
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/21ccd672b799b5858021f6059098a1247c311fae.1668596358.git.michal.simek@amd.com
Michal Simek [Sun, 6 Nov 2022 19:48:06 +0000 (11:48 -0800)]
xilinx: versal-net: Fix SYS_LOAD_ADDR to point to OCM
Versal NET mini U-Boot configuration is used for memory testing that's why
load address can't be really placed in memory which doesn't need to work
that's why move it to start of OCM which is the same memory which U-Boot is
running from.
Signed-off-by: Michal Simek <michal.simek@amd.com>
Michal Simek [Sun, 6 Nov 2022 01:21:27 +0000 (18:21 -0700)]
xilinx: versal-net: Fix incorrect platform name in Kconfig
Fix incorrect name used in entry description.
Signed-off-by: Michal Simek <michal.simek@amd.com>
Michal Simek [Wed, 26 Oct 2022 07:38:00 +0000 (09:38 +0200)]
arm64: zynqmp: Create vck190 spl link for revB
vck190 system controller low level setup is the same for revB that's why
also create symlink to revA.
Signed-off-by: Michal Simek <michal.simek@amd.com>
Michal Simek [Tue, 1 Nov 2022 00:08:44 +0000 (17:08 -0700)]
net: phy: Fix ethernet-phy-id <dot> in the code
Use dot instead of comma. The fix doesn't affect anything but it is good to
be aligned with used pattern. The first is used only for string size
calculation and the second change is in the comment.
Fixes:
db681d4929ca ("net: phy: Add new read ethernet phy id function")
Signed-off-by: Michal Simek <michal.simek@amd.com>
Christian Kohn [Wed, 12 Oct 2022 09:30:33 +0000 (11:30 +0200)]
ARM: zynq: DT: Enable all FCLKs by default
The fclk-enable property is set to 0 which disables all FCLKs.
Enable all FCLKs so they can be used as clock sources in the
programmable logic.
Signed-off-by: Christian Kohn <christian.kohn@xilinx.com>
Acked-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/b1308dc1f14f8eb24662019f7376c959e5e763b8.1665567031.git.michal.simek@amd.com
Ovidiu Panait [Wed, 12 Oct 2022 05:36:56 +0000 (08:36 +0300)]
timer: xilinx-timer: use timer_conv_64() to fix timer wrap around
Current xilinx_timer_get_count() implementation does not take into account
the periodic 32-bit wrap arounds, as it directly returns the 32-bit counter
register value. The roll-overs cause problems in the upper timer layers, as
generic timer code expects an incrementing 64-bit value from get_count() to
work correctly.
Add the missing 64-bit up-conversion to fix random hangs/delays in
__udelay().
Fixes:
a36d86720f ("microblaze: Convert axi timer to DM driver")
Signed-off-by: Ovidiu Panait <ovpanait@gmail.com>
Reviewed-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/20221012053656.1492457-3-ovpanait@gmail.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
Ovidiu Panait [Wed, 12 Oct 2022 05:36:55 +0000 (08:36 +0300)]
timer-uclass: relocate ops pointers for CONFIG_NEEDS_MANUAL_RELOC
Relocate timer_ops pointers when CONFIG_NEEDS_MANUAL_RELOC is enabled.
The (gd->flags & GD_FLG_RELOC) check was added to make sure the reloc_done
logic works for drivers that use DM_FLAG_PRE_RELOC.
Signed-off-by: Ovidiu Panait <ovpanait@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Link: https://lore.kernel.org/r/20221012053656.1492457-2-ovpanait@gmail.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
Ovidiu Panait [Wed, 12 Oct 2022 05:36:54 +0000 (08:36 +0300)]
timer-uclass: add timer_get_ops() macro
Align timer uclass with the other subsystems and provide a timer_get_ops()
convenience macro.
Using this instead of the generic device_get_ops() also prevents
-Wdiscarded-qualifiers warnings when used with non-const variables.
Signed-off-by: Ovidiu Panait <ovpanait@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Link: https://lore.kernel.org/r/20221012053656.1492457-1-ovpanait@gmail.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
Venkatesh Yadav Abbarapu [Mon, 17 Oct 2022 09:48:18 +0000 (15:18 +0530)]
xilinx: common: Remove zynq_board_read_rom_ethaddr()
Removing the zynq_board_read_rom_ethaddr() function as
xlnx,eeprom is not used anymore. As all board dts to use
nvmem alias instead of xlnx,eeprom.
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20221017094818.17996-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
Michal Simek [Thu, 13 Oct 2022 11:05:39 +0000 (13:05 +0200)]
Revert "pinctrl: zynqmp: Add support for output-enable and bias-high-impedance"
This reverts commit
123462e5e534d6e17b1b7d2006734bbe54b03e0a.
On systems with older PMUFW using these pinctrl properties can cause system
hang because there is missing feature autodetection.
When it is implemented support for these two properties should go back.
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/c2900319ea80484f21692997f296269aee701c1f.1665659138.git.michal.simek@amd.com
Michal Simek [Wed, 12 Oct 2022 09:35:30 +0000 (11:35 +0200)]
arm64: zynqmp: Disable watchdog by default for virt platform
Disable watchdog based on request in past that not all Linux rootfs have
proper utilities ready to service it. Enable it if your rootfs have proper
watchdog handling.
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/62dfc08f32635abee42feab26aaa9efed52134c0.1665567328.git.michal.simek@amd.com
T Karthik Reddy [Wed, 12 Oct 2022 09:03:45 +0000 (11:03 +0200)]
microblaze: Make extended addressing support default
Axi qspi controller supports 32-bit & 24-bit addressing modes
for micron, macronix & spansion flash parts. But for winbond
flashes it only supports 24-bit addressing mode.
Enable CONFIG_SPI_FLASH_BAR to use extended addressing mode
to make 32-bit addressing mode work on all flashes.
Signed-off-by: T Karthik Reddy <t.karthik.reddy@xilinx.com>
Acked-by: Ashok Reddy Soma <ashok.reddy.soma@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/f3864966c8ddd766a1702ad61b0e008a1f57462f.1665565423.git.michal.simek@amd.com
Tom Rini [Tue, 22 Nov 2022 13:30:53 +0000 (08:30 -0500)]
Merge tag 'efi-2023-01-rc2-2' of https://source.denx.de/u-boot/custodians/u-boot-efi
Pull request for efi-2023-01-rc2-2
UEFI:
* add UEFI Secure Boot Key enrollment interface to eficonfig command
* fix buffer underflow in FatToStr() implementation
Tom Rini [Tue, 22 Nov 2022 13:07:03 +0000 (08:07 -0500)]
Merge https://source.denx.de/u-boot/custodians/u-boot-watchdog
- watchdog: designware: make reset really optional (Quentin)
- watchdog: Drop GD_FLG_WDT_READY (Stefan)
Masahisa Kojima [Sun, 20 Nov 2022 00:21:19 +0000 (09:21 +0900)]
eficonfig: add "Show Signature Database" menu entry
This commit adds the menu-driven interface to show the
signature list content.
Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Masahisa Kojima [Sun, 20 Nov 2022 00:21:18 +0000 (09:21 +0900)]
eficonfig: add UEFI Secure Boot Key enrollment interface
This commit adds the menu-driven UEFI Secure Boot Key
enrollment interface. User can enroll PK, KEK, db
and dbx by selecting file.
Only the signed EFI Signature List(s) with an authenticated
header, typically '.auth' file, is accepted.
To clear the PK, KEK, db and dbx, user needs to enroll the null key
signed by PK or KEK.
Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Masahisa Kojima [Sun, 20 Nov 2022 00:21:17 +0000 (09:21 +0900)]
eficonfig: use protocol interface for file selection
EFI_SIMPLE_FILE_SYSTEM_PROTOCOL is not always provided
by U-Boot. Use protocol interface functions instead of
U-Boot internal functions.
Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Masahisa Kojima [Sun, 20 Nov 2022 00:21:16 +0000 (09:21 +0900)]
eficonfig: expose eficonfig_create_device_path()
Following commits are adding support for UEFI variable management
via the eficonfig menu. Those functions needs to use
eficonfig_create_device_path() to construct the full device path
from device path of the volume and file path, so move it
out of their static declarations.
Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Masahisa Kojima [Sun, 20 Nov 2022 00:21:15 +0000 (09:21 +0900)]
eficonfig: refactor change boot order implementation
All the eficonfig menus other than "Change Boot Order"
use 'eficonfig_entry' structure for each menu entry.
This commit refactors change boot order implementation
to use 'eficonfig_entry' structure same as other menus
to have consistent menu handling.
This commit also simplifies the data->active handling when
KEY_SPACE is pressed, and sizeof() parameter.
Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Masahisa Kojima [Sun, 20 Nov 2022 00:21:14 +0000 (09:21 +0900)]
eficonfig: expose append entry function
Following commits are adding support for UEFI variable management
via the eficonfig menu. Those functions needs to use
append_entry() and append_quit_entry() to construct the
menu, so move them out of their static declarations.
Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Masahisa Kojima [Sun, 20 Nov 2022 00:21:13 +0000 (09:21 +0900)]
eficonfig: refactor file selection handling
eficonfig_select_file_handler() is commonly used to select the
file. eficonfig_display_select_file_option() adds an additional
menu to clear the selected file.
eficonfig_display_select_file_option() is not always necessary
for the file selection process, so it must be outside of
eficonfig_select_file_handler().
This commit also renames the following functions to avoid confusion.
eficonfig_select_file_handler() -> eficonfig_process_select_file()
eficonfig_select_file() -> eficonfig_show_file_selection()
eficonfig_display_select_file_option() -> eficonfig_process_show_file_option()
Finally, test_eficonfig.py need to be updated to get aligned with
the above modification.
Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Heinrich Schuchardt [Thu, 17 Nov 2022 12:42:04 +0000 (13:42 +0100)]
doc: in cmp man-page replace 'tuples' by 'values'
The word tuples might be misleading.
Suggested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Heinrich Schuchardt [Tue, 22 Nov 2022 10:34:25 +0000 (11:34 +0100)]
efi_selftest: Improve the FatToStr() unit test
Add a test with a character >= 0x80.
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Heinrich Schuchardt [Tue, 22 Nov 2022 10:32:36 +0000 (11:32 +0100)]
efi_selftest: unsigned char parameter for efi_st_strcmp_16_8()
Use unsigned char for the parameter of efi_st_strcmp_16_8. This allows
comparing characters 0x80 - 0xff.
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Mikhail Ilin [Tue, 22 Nov 2022 07:33:24 +0000 (10:33 +0300)]
efi_loader: Fix buffer underflow
If the array index 'i' < 128, the 'codepage' array is accessed using
[-128...-1] in efi_unicode_collation.c:262. This can lead to a buffer
overflow.
Negative index in efi_unicode_collation.c:262.
The index of the 'codepage' array should be c - 0x80 instead of i - 0x80.
Fixes:
0bc4b0da7b59 ("efi_loader: EFI_UNICODE_COLLATION_PROTOCOL")
Signed-off-by: Mikhail Ilin <ilin.mikhail.ol@gmail.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Stefan Roese [Thu, 17 Nov 2022 08:20:34 +0000 (09:20 +0100)]
watchdog: Drop GD_FLG_WDT_READY as it's not used any more
Since commit
c2fd0ca1a822
("watchdog: Integrate watchdog triggering into the cyclic framework")
GD_FLG_WDT_READY has become write-only. This patch now removes this
flag completely.
The vacant spot in gd_flags is filled with the newly introduced
GD_FLG_CYCLIC_RUNNING flag.
Suggested-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Stefan Roese <sr@denx.de>
Quentin Schulz [Tue, 15 Nov 2022 10:20:14 +0000 (11:20 +0100)]
watchdog: designware: make reset really optional
Checking for DM_RESET is not enough since not all watchdog
implementations use a reset lane. Such is the case for Rockchip
implementation for example. Since reset_assert_bulk will only succeed if
the resets property exists in the watchdog DT node, it needs to be
called only if a reset property is present.
This adds a condition on the resets property presence in the watchdog DT
node before assuming a reset lane needs to be fetched with
reset_assert_bulk, by calling ofnode_read_prop.
Cc: Quentin Schulz <foss+uboot@0leil.net>
Reviewed-by: Stefan Roese <sr@denx.de>
Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Tom Rini [Mon, 21 Nov 2022 17:33:14 +0000 (12:33 -0500)]
Prepare v2023.01-rc2
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Mon, 21 Nov 2022 16:58:53 +0000 (11:58 -0500)]
configs: Resync with savedefconfig
Rsync all defconfig files using moveconfig.py
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini [Mon, 21 Nov 2022 16:54:58 +0000 (11:54 -0500)]
Merge branch '2022-11-21-important-fixes'
- Several important fixes for the Nokia RX51 platform, and a few other
fixes while we're at it.
Samuel Holland [Mon, 31 Oct 2022 04:26:19 +0000 (23:26 -0500)]
spl: Fix SPL_ATF and SPL_OPENSBI dependencies
The code for these two options depends on having the FIT loadables
recorded in the FDT. Thus, these options require the full version of
the SPL_LOAD_FIT code.
Signed-off-by: Samuel Holland <samuel@sholland.org>
Alexandre Mergnat [Fri, 28 Oct 2022 08:28:27 +0000 (10:28 +0200)]
configs: mediatek: enable boot via extlinux
Enable FAT and SYSBOOT to use extlinux boot script
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
Signed-off-by: Julien STEPHAN <jstephan@baylibre.com>
Venkatesh Yadav Abbarapu [Thu, 3 Nov 2022 04:07:48 +0000 (09:37 +0530)]
usb: gadget: dfu: Fix the unchecked length field
DFU implementation does not bound the length field in USB
DFU download setup packets, and it does not verify that
the transfer direction. Fixing the length and transfer
direction.
CVE-2022-2347
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Stefano Babic [Tue, 15 Nov 2022 10:49:40 +0000 (11:49 +0100)]
Revert "imx: imx8: apalis: switch to binman"
This reverts commit
b8072ae848b73e89a73ba5b535324e4dc2793f37.
Signed-off-by: Stefano Babic <sbabic@denx.de>
Reported-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Pali Rohár [Tue, 1 Nov 2022 23:40:46 +0000 (00:40 +0100)]
Revert "cli_readline: Only insert printable chars"
This reverts commit
d2e64d29c44dee6d455f7705dd1cf1af8674ad9a.
This commit broke support for pound sign (£) and euro sign (€) keys on
Nokia N900 keypad.
Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Pali Rohár [Sun, 20 Nov 2022 16:56:28 +0000 (17:56 +0100)]
Nokia RX-51: Do not overwrite standard $loadaddr variable
Instead of overwriting $loadaddr variable, use custom temporary
$fileloadaddr variable. So scripts can access default/original address
stored in $loadaddr at build time.
Signed-off-by: Pali Rohár <pali@kernel.org>
Pali Rohár [Sun, 20 Nov 2022 16:56:27 +0000 (17:56 +0100)]
Nokia RX-51: Document debugging options and compile command
Add example command how to compile U-Boot and add new documentation section
describing how to enable early debug UART and verbose log output for N900.
Signed-off-by: Pali Rohár <pali@kernel.org>
Pali Rohár [Sun, 20 Nov 2022 16:56:26 +0000 (17:56 +0100)]
arm32: Fix relocation of env_addr if POSITION_INDEPENDENT=y
Apply commit
534f0fbd6520 ("arm64: Fix relocation of env_addr if
POSITION_INDEPENDENT=y") also for 32-bit ARM.
This change fixes crashing of U-Boot on ARMv7 (Omap3 / Cortex-A8) Nokia N900
phone (real HW). Note that qemu emulator of this board with same u-boot.bin
binary has not triggered this crash.
Crash happened after U-Boot printed following debug lines to serial console:
initcall:
0001ea8c (relocated to
8fe0aa8c)
Loading Environment from <NULL>... Using default environment
Destroy Hash Table:
8fe25a98 table =
00000000
Create Hash Table: N=387
Signed-off-by: Pali Rohár <pali@kernel.org>
Pali Rohár [Sun, 10 Jul 2022 11:42:55 +0000 (13:42 +0200)]
Fix usage of CONFIG_PREBOOT
Due to usage of PREBOOT in Kconfig, macro CONFIG_PREBOOT is always defined
when CONFIG_USE_PREBOOT is enabled. In case CONFIG_PREBOOT is not
explicitly enabled it is set to empty C string and therefore
'#ifdef CONFIG_PREBOOT' guard does not work. Fix this issue by introducing
a new Kconfig symbol PREBOOT_DEFINED which cause to define new C macro
CONFIG_PREBOOT_DEFINED only when CONFIG_PREBOOT is really defined.
Change usage of '#ifdef CONFIG_PREBOOT' by '#ifdef CONFIG_USE_PREBOOT' for
code which checks if preboot code would be called and by
'#ifdef CONFIG_PREBOOT_DEFINED' for defining preboot code.
Signed-off-by: Pali Rohár <pali@kernel.org>
Tom Rini [Wed, 16 Nov 2022 16:08:51 +0000 (11:08 -0500)]
Merge tag 'efi-2023-01-rc2' of https://source.denx.de/u-boot/custodians/u-boot-efi
Pull request for efi-2023-01-rc2
Documentation:
* fix building with Sphinx 5.0+
* man-pages for cmp and bootd commands
UEFI:
* Avoid unaligned access in efi_file_from_path()
* More bug fixes
Tom Rini [Wed, 16 Nov 2022 16:08:28 +0000 (11:08 -0500)]
Merge https://source.denx.de/u-boot/custodians/u-boot-riscv
- Fix and improve microchip's clock driver to allow sync'ing DTS with linux
- Improve the help message in "SBI_V02" Kconfig
- Improve DTS property "isa-string" parsing rule
Ilias Apalodimas [Fri, 11 Nov 2022 18:04:31 +0000 (20:04 +0200)]
efi_loader: replace a u16_strdup with alloc + memcpy
Heinrich reports that on RISC-V unaligned access is emulated by OpenSBI
which is very slow. Performance wise it's better if we skip the calls
to u16_strdup() -- which in turn calls u16_strsize() and just allocate/copy the
memory directly. The access to dp.length may still be unaligned, but that's
way less than what u16_strsize() would do
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Use malloc() instead of calloc().
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Ilias Apalodimas [Fri, 11 Nov 2022 16:20:37 +0000 (18:20 +0200)]
efi_loader: add missing EFI_CALL when closing a file
Closing the files uses the EFI protocol and specifically it's .close
callback. This needs to be wrapped on an EFI_CALL()
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Ilias Apalodimas [Thu, 10 Nov 2022 13:31:30 +0000 (15:31 +0200)]
efi_loader: add comments on efi_file_from_path() regarding alignment
UEFI specification requires pointers that are passed to protocol member
functions to be aligned. There's a u16_strdup in that function which
doesn't make sense otherwise Add a comment so no one removes it
accidentally
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Masahisa Kojima [Mon, 14 Nov 2022 10:00:47 +0000 (19:00 +0900)]
eficonfig: fix missing variable initialization
The 'ret' variable must be initialized before use
in eficonfig_delete_invalid_boot_option().
Fixes:
c416f1c0bc ("bootmenu: add removable media entries")
Addresses-Coverity: 376207 ("Uninitialized variables")
Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Heinrich Schuchardt [Thu, 10 Nov 2022 13:14:06 +0000 (14:14 +0100)]
efi_loader: improve description of efi_file_from_path()
Provide a description of the function's logic.
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Heinrich Schuchardt [Thu, 10 Nov 2022 11:19:30 +0000 (12:19 +0100)]
cmd: remove superfluous if in eficonfig_edit_boot_option
Goto for an immediately succeeding label is superfluous.
Fixes:
87d791423ac6 ("eficonfig: menu-driven addition of UEFI boot option")
Addresses-Coverity: 376202 ("Identical code for different branches")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Heinrich Schuchardt [Thu, 10 Nov 2022 11:23:35 +0000 (12:23 +0100)]
MAINTAINERS: add UEFI commands to EFI PAYLOAD
Add the following files to EFI PAYLOAD:
- cmd/bootefi.c
- cmd/efidebug.c
- cmd/eficonfig.c
- cmd/nvedit_efi.c
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Ilias Apalodimas [Thu, 10 Nov 2022 08:21:24 +0000 (10:21 +0200)]
efi_loader: initialize return values in efi_uninstall_multiple_protocol_interfaces_int()
If the va_list we got handed over contains no protocols we must return
EFI_SUCCESS. However in that case the current code just returns
an unintialized value.
Fix that by setting the return value in the variable definition
Addresses-Coverity: CID 376195: ("Uninitialized variables (UNINIT)")
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>