Prepare v2024.10-rc4

-----BEGIN PGP SIGNATURE-----
 
 iQGzBAABCgAdFiEEGjx/cOCPqxcHgJu/FHw5/5Y0tywFAmbWGy8ACgkQFHw5/5Y0
 tyx6QAv8D6kTkqE9ZeuFqEQC7dmUi+uH2cM1EhMr+0RmM9pELI6D+Wul2YOFx+7y
 wCQOCPvvZrfO6DVyeXpLp6wB5lY3lfmYUXb1pKsx7KKNzK0Pk7IUzA4wis5eVe83
 MR5+jG/M39y962jzQ6WcMi6Y41jwP3XNjOXfwNdrm2c6FMDnleW5pMToAvUxHxzo
 RHADeQRCmAKwdzhHoQBOHkneY4V042rJVyTRLN1kcWn4BHpxV3YnlqsTLhANOFHB
 mkXsq7FL+fRgoWZF4tyaR6Gt7PA03P1Q861so7eUl4n5cXZw43ir30pJEph0Bi5w
 ZP784dpx+ErlrquHk7YJNTjmsValkjk7qscsZEXG4r6H38lRck7+VdRgVX+0SFRV
 5tL8NSSv2fo/mcr1okapOzTB+sHeuIcfWLIuONgTOv9BEArsFFE/CPRRgWLbF7W8
 EdNrUqarqWDQmBeSpEN3kBUylWPL6Q3KWHO9lMBfbtLxeGo//Lq76eYzSp9Bn/h/
 fyLV+yy7
 =TzuJ
 -----END PGP SIGNATURE-----

Merge tag 'v2024.10-rc4' into next

Prepare v2024.10-rc4
This commit is contained in:
Tom Rini 2024-09-02 14:13:57 -06:00
commit 8c069df8dd
20 changed files with 127 additions and 37 deletions

View file

@ -2,7 +2,7 @@ variables:
windows_vm: windows-2019 windows_vm: windows-2019
ubuntu_vm: ubuntu-22.04 ubuntu_vm: ubuntu-22.04
macos_vm: macOS-12 macos_vm: macOS-12
ci_runner_image: trini/u-boot-gitlab-ci-runner:jammy-20240227-14Mar2024 ci_runner_image: trini/u-boot-gitlab-ci-runner:jammy-20240808-21Aug2024
# Add '-u 0' options for Azure pipelines, otherwise we get "permission # Add '-u 0' options for Azure pipelines, otherwise we get "permission
# denied" error when it tries to "useradd -m -u 1001 vsts_azpcontainer", # denied" error when it tries to "useradd -m -u 1001 vsts_azpcontainer",
# since our $(ci_runner_image) user is not root. # since our $(ci_runner_image) user is not root.

View file

@ -10,7 +10,7 @@ default:
# Grab our configured image. The source for this is found # Grab our configured image. The source for this is found
# in the u-boot tree at tools/docker/Dockerfile # in the u-boot tree at tools/docker/Dockerfile
image: ${MIRROR_DOCKER}/trini/u-boot-gitlab-ci-runner:jammy-20240227-14Mar2024 image: ${MIRROR_DOCKER}/trini/u-boot-gitlab-ci-runner:jammy-20240808-21Aug2024
# We run some tests in different order, to catch some failures quicker. # We run some tests in different order, to catch some failures quicker.
stages: stages:

View file

@ -3,7 +3,7 @@
VERSION = 2024 VERSION = 2024
PATCHLEVEL = 10 PATCHLEVEL = 10
SUBLEVEL = SUBLEVEL =
EXTRAVERSION = -rc3 EXTRAVERSION = -rc4
NAME = NAME =
# *DOCUMENTATION* # *DOCUMENTATION*

View file

@ -217,8 +217,8 @@ endif
ifeq ($(CONFIG_ARCH_IMX9)$(CONFIG_ARCH_IMX8ULP), y) ifeq ($(CONFIG_ARCH_IMX9)$(CONFIG_ARCH_IMX8ULP), y)
quiet_cmd_imx9_check = CHECK $@ quiet_cmd_cpp_cfg_imx9_check = CHECK $@
cmd_imx9_check = $(srctree)/tools/imx9_image.sh $@ cmd_cpp_cfg_imx9_check = $(CPP) $(cpp_flags) -D__ASSEMBLY__ -x c -o $@ $< && $(srctree)/tools/imx9_image.sh $@
SPL: spl/u-boot-spl.bin spl/u-boot-spl.cfgout u-boot-container.cfgout FORCE SPL: spl/u-boot-spl.bin spl/u-boot-spl.cfgout u-boot-container.cfgout FORCE
@ -227,15 +227,13 @@ flash.bin: MKIMAGEOUTPUT = flash.log
spl/u-boot-spl.cfgout: $(IMX_CONFIG) FORCE spl/u-boot-spl.cfgout: $(IMX_CONFIG) FORCE
$(Q)mkdir -p $(dir $@) $(Q)mkdir -p $(dir $@)
$(call if_changed_dep,cpp_cfg) $(call if_changed_dep,cpp_cfg_imx9_check)
$(call if_changed,imx9_check)
spl/u-boot-spl-ddr.bin: spl/u-boot-spl.bin spl/u-boot-spl.cfgout FORCE spl/u-boot-spl-ddr.bin: spl/u-boot-spl.bin spl/u-boot-spl.cfgout FORCE
u-boot-container.cfgout: $(IMX_CONTAINER_CFG) FORCE u-boot-container.cfgout: $(IMX_CONTAINER_CFG) FORCE
$(Q)mkdir -p $(dir $@) $(Q)mkdir -p $(dir $@)
$(call if_changed_dep,cpp_cfg) $(call if_changed_dep,cpp_cfg_imx9_check)
$(call if_changed,imx9_check)
flash.bin: spl/u-boot-spl-ddr.bin container.cfgout FORCE flash.bin: spl/u-boot-spl-ddr.bin container.cfgout FORCE
$(call if_changed,mkimage) $(call if_changed,mkimage)

View file

@ -393,10 +393,9 @@ int android_image_get_ramdisk(const void *hdr, const void *vendor_boot_img,
if (!android_image_get_data(hdr, vendor_boot_img, &img_data)) if (!android_image_get_data(hdr, vendor_boot_img, &img_data))
return -EINVAL; return -EINVAL;
if (!img_data.ramdisk_size) { if (!img_data.ramdisk_size)
*rd_data = *rd_len = 0; return -ENOENT;
return -1;
}
if (img_data.header_version > 2) { if (img_data.header_version > 2) {
ramdisk_ptr = img_data.ramdisk_addr; ramdisk_ptr = img_data.ramdisk_addr;
memcpy((void *)(ramdisk_ptr), (void *)img_data.vendor_ramdisk_ptr, memcpy((void *)(ramdisk_ptr), (void *)img_data.vendor_ramdisk_ptr,

View file

@ -427,7 +427,9 @@ static int select_ramdisk(struct bootm_headers *images, const char *select, u8 a
unmap_sysmem(ptr); unmap_sysmem(ptr);
} }
if (ret) if (ret == -ENOENT)
return -ENOPKG;
else if (ret)
return ret; return ret;
done = true; done = true;
} }

View file

@ -172,8 +172,8 @@ static int __bcb_initialize(const char *iface, int devnum, const char *partp)
return CMD_RET_SUCCESS; return CMD_RET_SUCCESS;
err_read_fail: err_read_fail:
printf("Error: %d %d:%s read failed (%d)\n", block->uclass_id, printf("Error: %s %d:%s read failed (%d)\n", iface, devnum,
block->devnum, partition->name, ret); partition->name, ret);
__bcb_reset(); __bcb_reset();
return CMD_RET_FAILURE; return CMD_RET_FAILURE;
} }

View file

@ -73,7 +73,7 @@ For the next scheduled release, release candidates were made on::
* U-Boot v2024.10-rc3 was released on Mon 19 August 2024. * U-Boot v2024.10-rc3 was released on Mon 19 August 2024.
.. * U-Boot v2024.10-rc4 was released on Mon 02 September 2024. * U-Boot v2024.10-rc4 was released on Mon 02 September 2024.
.. * U-Boot v2024.10-rc5 was released on Mon 16 September 2024. .. * U-Boot v2024.10-rc5 was released on Mon 16 September 2024.

91
doc/usage/cmd/pwm.rst Normal file
View file

@ -0,0 +1,91 @@
.. SPDX-License-Identifier: GPL-2.0-or-later
.. index::
single: pwm (command)
pwm command
===========
Synopsis
--------
::
pwm invert <pwm_dev_num> <channel> <polarity>
pwm config <pwm_dev_num> <channel> <period_ns> <duty_ns>
pwm enable <pwm_dev_num> <channel>
pwm disable <pwm_dev_num> <channel>
Description
-----------
The ``pwm`` command is used to access and configure PWM (Pulse Width Modulation)
signals.
pwm invert
----------
* If the value of ``polarity`` is 0, the default polarity is used.
* If the value of ``polarity`` is 1, the polarity is inverted.
pwm config
----------
Configure the period and duty period in nanoseconds.
pwm enable
----------
Enable output on the configured device and channel.
pwm disable
-----------
Disable output on the configured device and channel.
pwm_dev_num
Device number of the pulse width modulation device
channel
Output channel of the PWM device
polarity
* 0 - Use normal polarity
* 1 - Use inverted polarity
duty_ns
Duty period in ns
period_ns
Period time in ns
Examples
--------
Configure device 0, channel 0 to 20 µs period and 14 µs (that is, 70%) duty period::
=> pwm config 0 0 20000 14000
Enable output on the configured device and channel::
=> pwm enable 0 0
Disable output on the configured device and channel::
=> pwm disable 0 0
Invert the signal on the configured device and channel::
=> pwm invert 0 0 1
Configuration
-------------
The ``pwm`` command is only available if CONFIG_CMD_PWM=y.
Return value
------------
If the command succeeds, the return value ``$?`` is set to 0. If an error occurs, the
return value ``$?`` is set to 1.

View file

@ -94,6 +94,7 @@ Shell commands
cmd/pinmux cmd/pinmux
cmd/printenv cmd/printenv
cmd/pstore cmd/pstore
cmd/pwm
cmd/qfw cmd/qfw
cmd/read cmd/read
cmd/reset cmd/reset

View file

@ -169,16 +169,14 @@ U_BOOT_DRIVER(ux500_musb) = {
.name = "ux500-musb", .name = "ux500-musb",
#ifdef CONFIG_USB_MUSB_HOST #ifdef CONFIG_USB_MUSB_HOST
.id = UCLASS_USB, .id = UCLASS_USB,
.ops = &musb_usb_ops,
#else #else
.id = UCLASS_USB_GADGET_GENERIC, .id = UCLASS_USB_GADGET_GENERIC,
.ops = &ux500_gadget_ops,
#endif #endif
.of_match = ux500_musb_ids, .of_match = ux500_musb_ids,
.ops = &ux500_gadget_ops,
.probe = ux500_musb_probe, .probe = ux500_musb_probe,
.remove = ux500_musb_remove, .remove = ux500_musb_remove,
#ifdef CONFIG_USB_MUSB_HOST
.ops = &musb_usb_ops,
#endif
.plat_auto = sizeof(struct usb_plat), .plat_auto = sizeof(struct usb_plat),
.priv_auto = sizeof(struct ux500_glue), .priv_auto = sizeof(struct ux500_glue),
}; };

View file

@ -1858,7 +1858,7 @@ int android_image_get_kernel(const void *hdr,
* @vendor_boot_img : Pointer to vendor boot image header * @vendor_boot_img : Pointer to vendor boot image header
* @rd_data: Pointer to a ulong variable, will hold ramdisk address * @rd_data: Pointer to a ulong variable, will hold ramdisk address
* @rd_len: Pointer to a ulong variable, will hold ramdisk length * @rd_len: Pointer to a ulong variable, will hold ramdisk length
* Return: 0 if succeeded, -1 if ramdisk size is 0 * Return: 0 if OK, -ENOPKG if no ramdisk, -EINVAL if invalid image
*/ */
int android_image_get_ramdisk(const void *hdr, const void *vendor_boot_img, int android_image_get_ramdisk(const void *hdr, const void *vendor_boot_img,
ulong *rd_data, ulong *rd_len); ulong *rd_data, ulong *rd_len);

View file

@ -364,7 +364,6 @@ endif
config EFI_LOADER_BOUNCE_BUFFER config EFI_LOADER_BOUNCE_BUFFER
bool "EFI Applications use bounce buffers for DMA operations" bool "EFI Applications use bounce buffers for DMA operations"
depends on ARM64
help help
Some hardware does not support DMA to full 64bit addresses. For this Some hardware does not support DMA to full 64bit addresses. For this
hardware we can create a bounce buffer so that payloads don't have to hardware we can create a bounce buffer so that payloads don't have to

View file

@ -74,6 +74,7 @@ out:
*/ */
struct efi_device_path *efi_get_dp_from_boot(const efi_guid_t *guid) struct efi_device_path *efi_get_dp_from_boot(const efi_guid_t *guid)
{ {
struct efi_device_path *file_path = NULL;
struct efi_load_option lo; struct efi_load_option lo;
void *var_value; void *var_value;
efi_uintn_t size; efi_uintn_t size;
@ -92,11 +93,11 @@ struct efi_device_path *efi_get_dp_from_boot(const efi_guid_t *guid)
if (ret != EFI_SUCCESS) if (ret != EFI_SUCCESS)
goto err; goto err;
return efi_dp_from_lo(&lo, guid); file_path = efi_dp_from_lo(&lo, guid);
err: err:
free(var_value); free(var_value);
return NULL; return file_path;
} }
/** /**

View file

@ -1,14 +1,14 @@
atomicwrites==1.4.1 atomicwrites==1.4.1
attrs==19.3.0 attrs==19.3.0
concurrencytest==0.1.2 concurrencytest==0.1.2
coverage==4.5.4 coverage==6.2
extras==1.0.0 extras==1.0.0
filelock==3.0.12 filelock==3.0.12
fixtures==3.0.0 fixtures==3.0.0
importlib-metadata==0.23 importlib-metadata==0.23
linecache2==1.0.0 linecache2==1.0.0
more-itertools==7.2.0 more-itertools==7.2.0
packaging==23.2 packaging==24.1
pbr==5.4.3 pbr==5.4.3
pluggy==0.13.0 pluggy==0.13.0
py==1.11.0 py==1.11.0
@ -20,7 +20,7 @@ pytest==6.2.5
pytest-xdist==2.5.0 pytest-xdist==2.5.0
python-mimeparse==1.6.0 python-mimeparse==1.6.0
python-subunit==1.3.0 python-subunit==1.3.0
requests==2.32.2 requests==2.32.3
setuptools==70.3.0 setuptools==70.3.0
six==1.16.0 six==1.16.0
testtools==2.3.0 testtools==2.3.0

View file

@ -2,9 +2,9 @@
# This Dockerfile is used to build an image containing basic stuff to be used # This Dockerfile is used to build an image containing basic stuff to be used
# to build U-Boot and run our test suites. # to build U-Boot and run our test suites.
FROM ubuntu:jammy-20240227 FROM ubuntu:jammy-20240808
MAINTAINER Tom Rini <trini@konsulko.com> LABEL org.opencontainers.image.authors="Tom Rini <trini@konsulko.com>"
LABEL Description=" This image is for building U-Boot inside a container" LABEL org.opencontainers.image.description=" This image is for building U-Boot inside a container"
# Make sure apt is happy # Make sure apt is happy
ENV DEBIAN_FRONTEND=noninteractive ENV DEBIAN_FRONTEND=noninteractive

View file

@ -5,6 +5,7 @@
*/ */
#include <getopt.h> #include <getopt.h>
#include <inttypes.h>
#include <pe.h> #include <pe.h>
#include <stdbool.h> #include <stdbool.h>
#include <stdint.h> #include <stdint.h>
@ -691,7 +692,7 @@ static uint32_t dump_fmp_payload_header(
static void dump_capsule_auth_header( static void dump_capsule_auth_header(
struct efi_firmware_image_authentication *capsule_auth_hdr) struct efi_firmware_image_authentication *capsule_auth_hdr)
{ {
printf("EFI_FIRMWARE_IMAGE_AUTH.MONOTONIC_COUNT\t\t: %08lX\n", printf("EFI_FIRMWARE_IMAGE_AUTH.MONOTONIC_COUNT\t\t: %08" PRIX64 "\n",
capsule_auth_hdr->monotonic_count); capsule_auth_hdr->monotonic_count);
printf("EFI_FIRMWARE_IMAGE_AUTH.AUTH_INFO.HDR.dwLENGTH\t: %08X\n", printf("EFI_FIRMWARE_IMAGE_AUTH.AUTH_INFO.HDR.dwLENGTH\t: %08X\n",
capsule_auth_hdr->auth_info.hdr.dwLength); capsule_auth_hdr->auth_info.hdr.dwLength);
@ -724,9 +725,9 @@ static void dump_fmp_capsule_image_header(
image_hdr->update_image_size); image_hdr->update_image_size);
printf("FMP_CAPSULE_IMAGE_HDR.UPDATE_VENDOR_CODE_SIZE\t: %08X\n", printf("FMP_CAPSULE_IMAGE_HDR.UPDATE_VENDOR_CODE_SIZE\t: %08X\n",
image_hdr->update_vendor_code_size); image_hdr->update_vendor_code_size);
printf("FMP_CAPSULE_IMAGE_HDR.UPDATE_HARDWARE_INSTANCE\t: %08lX\n", printf("FMP_CAPSULE_IMAGE_HDR.UPDATE_HARDWARE_INSTANCE\t: %08" PRIX64 "\n",
image_hdr->update_hardware_instance); image_hdr->update_hardware_instance);
printf("FMP_CAPSULE_IMAGE_HDR.IMAGE_CAPSULE_SUPPORT\t: %08lX\n", printf("FMP_CAPSULE_IMAGE_HDR.IMAGE_CAPSULE_SUPPORT\t: %08" PRIX64 "\n",
image_hdr->image_capsule_support); image_hdr->image_capsule_support);
printf("--------\n"); printf("--------\n");

View file

@ -6,7 +6,7 @@ import collections
import re import re
# Separates a tag: at the beginning of the subject from the rest of it # Separates a tag: at the beginning of the subject from the rest of it
re_subject_tag = re.compile('([^:\s]*):\s*(.*)') re_subject_tag = re.compile(r'([^:\s]*):\s*(.*)')
class Commit: class Commit:
"""Holds information about a single commit/patch in the series. """Holds information about a single commit/patch in the series.

View file

@ -48,7 +48,7 @@ RE_TAG = re.compile('^(Tested-by|Acked-by|Reviewed-by|Patch-cc|Fixes): (.*)')
RE_COMMIT = re.compile('^commit ([0-9a-f]*)$') RE_COMMIT = re.compile('^commit ([0-9a-f]*)$')
# We detect these since checkpatch doesn't always do it # We detect these since checkpatch doesn't always do it
RE_SPACE_BEFORE_TAB = re.compile('^[+].* \t') RE_SPACE_BEFORE_TAB = re.compile(r'^[+].* \t')
# Match indented lines for changes # Match indented lines for changes
RE_LEADING_WHITESPACE = re.compile(r'^\s') RE_LEADING_WHITESPACE = re.compile(r'^\s')

View file

@ -1595,7 +1595,7 @@ def imply(args):
if flag == 'help' or bad: if flag == 'help' or bad:
print("Imply flags: (separate with ',')") print("Imply flags: (separate with ',')")
for name, info in IMPLY_FLAGS.items(): for name, info in IMPLY_FLAGS.items():
print(f' {name:-15s}: {info[1]}') print(f' {name.ljust(15)}: {info[1]}')
return 1 return 1
imply_flags |= IMPLY_FLAGS[flag][0] imply_flags |= IMPLY_FLAGS[flag][0]