mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-29 09:45:52 +00:00
Prepare v2025.01-rc6
-----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEEGjx/cOCPqxcHgJu/FHw5/5Y0tywFAmdzbjIACgkQFHw5/5Y0 tyxMlQv+J4Lg70J+a+uwMi6pnx1GTfJ/9RGUWmM94HyfN19TTqSR54oGRc5CT12V LlxuWwI7xsIgWnTeSDIcXhAeQ/D7E7X8Hwd0fjE2Vezz/sGlFG2zPl61cbqBlABO +27MBu8Eq+hd9IuC068AO6JICyayOOoyKF71JtLHhFqPX2EDgNTrfatZEM6+tRsr sfnxNZOlPQJjdifEUYajejh+MTLqD5tbnMmlNv/CJMApYzkW5GPnIV9d5Ctndtum vVlRAkxHYLTCu9qyVgU3IaUWP62O2wVwuYINt1XA5pelOCZaa821y6PEPablYMo0 7yNuQyIxqzAU5F1ZFySNSmW6IvSTksgen+0iUDsCR+0YBWI+teii39bDbwnwzlHB s0wgcepy4QItkAHtUQ0L5pCbLzQ0dKWFNW/NkIusfa0AKhN2jzcBgvYzPNomrglN yV+r9pCDUK27C7Bmmjf0Uv7tZrwkjaYnfcpE4gzYPPSEqG1AClTQ+S1WWmzXeWYX MTxT2ScO =j4Pi -----END PGP SIGNATURE----- Merge tag 'v2025.01-rc6' into next Prepare v2025.01-rc6
This commit is contained in:
commit
c6fd2a1c29
10 changed files with 100 additions and 86 deletions
2
Makefile
2
Makefile
|
@ -3,7 +3,7 @@
|
||||||
VERSION = 2025
|
VERSION = 2025
|
||||||
PATCHLEVEL = 01
|
PATCHLEVEL = 01
|
||||||
SUBLEVEL =
|
SUBLEVEL =
|
||||||
EXTRAVERSION = -rc5
|
EXTRAVERSION = -rc6
|
||||||
NAME =
|
NAME =
|
||||||
|
|
||||||
# *DOCUMENTATION*
|
# *DOCUMENTATION*
|
||||||
|
|
|
@ -690,7 +690,7 @@ int get_serdes_volt(void)
|
||||||
dm_i2c_read(dev, PMBUS_CMD_READ_VOUT, (void *)&vcode, 2);
|
dm_i2c_read(dev, PMBUS_CMD_READ_VOUT, (void *)&vcode, 2);
|
||||||
#endif
|
#endif
|
||||||
if (ret) {
|
if (ret) {
|
||||||
printf("VID: failed to read the volatge\n");
|
printf("VID: failed to read the voltage\n");
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -716,11 +716,11 @@ int set_serdes_volt(int svdd)
|
||||||
(void *)&buff, 5);
|
(void *)&buff, 5);
|
||||||
#endif
|
#endif
|
||||||
if (ret) {
|
if (ret) {
|
||||||
printf("VID: I2C failed to write to the volatge regulator\n");
|
printf("VID: I2C failed to write to the voltage regulator\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Wait for the volatge to get to the desired value */
|
/* Wait for the voltage to get to the desired value */
|
||||||
do {
|
do {
|
||||||
vdd_last = get_serdes_volt();
|
vdd_last = get_serdes_volt();
|
||||||
if (vdd_last < 0) {
|
if (vdd_last < 0) {
|
||||||
|
@ -778,7 +778,7 @@ int set_serdes_volt(int svdd)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Wait for the volatge to get to the desired value */
|
/* Wait for the voltage to get to the desired value */
|
||||||
udelay(10000);
|
udelay(10000);
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
|
|
|
@ -239,7 +239,7 @@ static int prepare_bootmenu_entry(struct bootmenu_data *menu,
|
||||||
/**
|
/**
|
||||||
* prepare_uefi_bootorder_entry() - generate the uefi bootmenu entries
|
* prepare_uefi_bootorder_entry() - generate the uefi bootmenu entries
|
||||||
*
|
*
|
||||||
* This function read the "BootOrder" UEFI variable
|
* This function reads the "BootOrder" UEFI variable
|
||||||
* and generate the bootmenu entries in the order of "BootOrder".
|
* and generate the bootmenu entries in the order of "BootOrder".
|
||||||
*
|
*
|
||||||
* @menu: pointer to the bootmenu structure
|
* @menu: pointer to the bootmenu structure
|
||||||
|
|
|
@ -75,6 +75,6 @@ static int do_rng(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
|
||||||
U_BOOT_CMD(
|
U_BOOT_CMD(
|
||||||
rng, 3, 0, do_rng,
|
rng, 3, 0, do_rng,
|
||||||
"print bytes from the hardware random number generator",
|
"print bytes from the hardware random number generator",
|
||||||
"list - list all the probed rng devices\n"
|
"list - list all probed rng devices\n"
|
||||||
"rng [dev] [n] - print n random bytes(max 64) read from dev\n"
|
"rng [dev [n]] - print n random bytes (max 64) read from dev\n"
|
||||||
);
|
);
|
||||||
|
|
|
@ -77,7 +77,7 @@ For the next scheduled release, release candidates were made on::
|
||||||
|
|
||||||
* U-Boot v2025.01-rc5 was released on Mon 23 December 2024.
|
* U-Boot v2025.01-rc5 was released on Mon 23 December 2024.
|
||||||
|
|
||||||
.. * U-Boot v2025.01-rc6 was released on Mon 30 December 2024.
|
* U-Boot v2025.01-rc6 was released on Mon 30 December 2024.
|
||||||
|
|
||||||
Please note that the following dates are planned only and may be deviated from
|
Please note that the following dates are planned only and may be deviated from
|
||||||
as needed.
|
as needed.
|
||||||
|
|
|
@ -12,14 +12,14 @@ Synopsis
|
||||||
::
|
::
|
||||||
|
|
||||||
rng list
|
rng list
|
||||||
rng [dev] [n]
|
rng [dev [n]]
|
||||||
|
|
||||||
rng list
|
rng list
|
||||||
--------
|
--------
|
||||||
|
|
||||||
List all the probed rng devices.
|
List all the probed rng devices.
|
||||||
|
|
||||||
rng [dev] [n]
|
rng [dev [n]]
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
The *rng* command reads the random number generator(RNG) device and
|
The *rng* command reads the random number generator(RNG) device and
|
||||||
|
|
|
@ -5,50 +5,50 @@ Single kernel and FDT blob
|
||||||
|
|
||||||
::
|
::
|
||||||
|
|
||||||
/dts-v1/;
|
/dts-v1/;
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
description = "Simple image with single Linux kernel and FDT blob";
|
description = "Simple image with single Linux kernel and FDT blob";
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
|
|
||||||
images {
|
images {
|
||||||
kernel {
|
kernel {
|
||||||
description = "Vanilla Linux kernel";
|
description = "Vanilla Linux kernel";
|
||||||
data = /incbin/("./vmlinux.bin.gz");
|
data = /incbin/("./vmlinux.bin.gz");
|
||||||
type = "kernel";
|
type = "kernel";
|
||||||
arch = "ppc";
|
arch = "ppc";
|
||||||
os = "linux";
|
os = "linux";
|
||||||
compression = "gzip";
|
compression = "gzip";
|
||||||
load = <00000000>;
|
load = <00000000>;
|
||||||
entry = <00000000>;
|
entry = <00000000>;
|
||||||
hash-1 {
|
hash-1 {
|
||||||
algo = "crc32";
|
algo = "crc32";
|
||||||
};
|
};
|
||||||
hash-2 {
|
hash-2 {
|
||||||
algo = "sha256";
|
algo = "sha256";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
fdt-1 {
|
fdt-1 {
|
||||||
description = "Flattened Device Tree blob";
|
description = "Flattened Device Tree blob";
|
||||||
data = /incbin/("./target.dtb");
|
data = /incbin/("./target.dtb");
|
||||||
type = "flat_dt";
|
type = "flat_dt";
|
||||||
arch = "ppc";
|
arch = "ppc";
|
||||||
compression = "none";
|
compression = "none";
|
||||||
hash-1 {
|
hash-1 {
|
||||||
algo = "crc32";
|
algo = "crc32";
|
||||||
};
|
};
|
||||||
hash-2 {
|
hash-2 {
|
||||||
algo = "sha256";
|
algo = "sha256";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
configurations {
|
configurations {
|
||||||
default = "conf-1";
|
default = "conf-1";
|
||||||
conf-1 {
|
conf-1 {
|
||||||
description = "Boot Linux kernel with FDT blob";
|
description = "Boot Linux kernel with FDT blob";
|
||||||
kernel = "kernel";
|
kernel = "kernel";
|
||||||
fdt = "fdt-1";
|
fdt = "fdt-1";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -654,7 +654,7 @@ static int rng_init(uint8_t sec_idx, ccsr_sec_t *sec)
|
||||||
ret = instantiate_rng(sec_idx, sec, gen_sk);
|
ret = instantiate_rng(sec_idx, sec, gen_sk);
|
||||||
/*
|
/*
|
||||||
* entropy delay is calculated via self-test method.
|
* entropy delay is calculated via self-test method.
|
||||||
* self-test are run across different volatge, temp.
|
* self-test are run across different voltage, temp.
|
||||||
* if worst case value for ent_dly is identified,
|
* if worst case value for ent_dly is identified,
|
||||||
* loop can be skipped for that platform.
|
* loop can be skipped for that platform.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1130,17 +1130,19 @@ static int spi_nor_erase(struct mtd_info *mtd, struct erase_info *instr)
|
||||||
goto erase_err;
|
goto erase_err;
|
||||||
}
|
}
|
||||||
offset = addr;
|
offset = addr;
|
||||||
if (nor->flags & SNOR_F_HAS_PARALLEL)
|
if (CONFIG_IS_ENABLED(SPI_STACKED_PARALLEL)) {
|
||||||
offset /= 2;
|
if (nor->flags & SNOR_F_HAS_PARALLEL)
|
||||||
|
offset /= 2;
|
||||||
|
|
||||||
if (nor->flags & SNOR_F_HAS_STACKED) {
|
if (nor->flags & SNOR_F_HAS_STACKED) {
|
||||||
if (offset >= (mtd->size / 2))
|
if (offset >= (mtd->size / 2))
|
||||||
nor->spi->flags |= SPI_XFER_U_PAGE;
|
nor->spi->flags |= SPI_XFER_U_PAGE;
|
||||||
else
|
else
|
||||||
nor->spi->flags &= ~SPI_XFER_U_PAGE;
|
nor->spi->flags &= ~SPI_XFER_U_PAGE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_SPI_FLASH_BAR
|
#ifdef CONFIG_SPI_FLASH_BAR
|
||||||
ret = write_bar(nor, addr);
|
ret = write_bar(nor, offset);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
goto erase_err;
|
goto erase_err;
|
||||||
#endif
|
#endif
|
||||||
|
@ -1152,7 +1154,7 @@ static int spi_nor_erase(struct mtd_info *mtd, struct erase_info *instr)
|
||||||
!(nor->flags & SNOR_F_NO_OP_CHIP_ERASE)) {
|
!(nor->flags & SNOR_F_NO_OP_CHIP_ERASE)) {
|
||||||
ret = spi_nor_erase_chip(nor);
|
ret = spi_nor_erase_chip(nor);
|
||||||
} else {
|
} else {
|
||||||
ret = spi_nor_erase_sector(nor, addr);
|
ret = spi_nor_erase_sector(nor, offset);
|
||||||
}
|
}
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
goto erase_err;
|
goto erase_err;
|
||||||
|
@ -1576,11 +1578,12 @@ static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len,
|
||||||
size_t *retlen, u_char *buf)
|
size_t *retlen, u_char *buf)
|
||||||
{
|
{
|
||||||
struct spi_nor *nor = mtd_to_spi_nor(mtd);
|
struct spi_nor *nor = mtd_to_spi_nor(mtd);
|
||||||
int ret;
|
|
||||||
loff_t offset = from;
|
loff_t offset = from;
|
||||||
u32 read_len = 0;
|
|
||||||
u32 rem_bank_len = 0;
|
u32 rem_bank_len = 0;
|
||||||
|
u32 stack_shift = 0;
|
||||||
|
size_t read_len;
|
||||||
u8 bank;
|
u8 bank;
|
||||||
|
int ret;
|
||||||
bool is_ofst_odd = false;
|
bool is_ofst_odd = false;
|
||||||
|
|
||||||
dev_dbg(nor->dev, "from 0x%08x, len %zd\n", (u32)from, len);
|
dev_dbg(nor->dev, "from 0x%08x, len %zd\n", (u32)from, len);
|
||||||
|
@ -1593,39 +1596,49 @@ static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len,
|
||||||
}
|
}
|
||||||
|
|
||||||
while (len) {
|
while (len) {
|
||||||
bank = (u32)from / SZ_16M;
|
read_len = len;
|
||||||
if (nor->flags & SNOR_F_HAS_PARALLEL)
|
|
||||||
bank /= 2;
|
|
||||||
|
|
||||||
rem_bank_len = SZ_16M * (bank + 1);
|
|
||||||
if (nor->flags & SNOR_F_HAS_PARALLEL)
|
|
||||||
rem_bank_len *= 2;
|
|
||||||
rem_bank_len -= from;
|
|
||||||
|
|
||||||
offset = from;
|
offset = from;
|
||||||
|
|
||||||
if (nor->flags & SNOR_F_HAS_STACKED) {
|
if (CONFIG_IS_ENABLED(SPI_FLASH_BAR)) {
|
||||||
if (offset >= (mtd->size / 2)) {
|
bank = (u32)from / SZ_16M;
|
||||||
offset = offset - (mtd->size / 2);
|
if (CONFIG_IS_ENABLED(SPI_STACKED_PARALLEL)) {
|
||||||
nor->spi->flags |= SPI_XFER_U_PAGE;
|
if (nor->flags & SNOR_F_HAS_PARALLEL)
|
||||||
} else {
|
bank /= 2;
|
||||||
nor->spi->flags &= ~SPI_XFER_U_PAGE;
|
}
|
||||||
|
rem_bank_len = SZ_16M * (bank + 1);
|
||||||
|
if (CONFIG_IS_ENABLED(SPI_STACKED_PARALLEL)) {
|
||||||
|
if (nor->flags & SNOR_F_HAS_PARALLEL)
|
||||||
|
rem_bank_len *= 2;
|
||||||
|
}
|
||||||
|
rem_bank_len -= from;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (CONFIG_IS_ENABLED(SPI_STACKED_PARALLEL)) {
|
||||||
|
if (nor->flags & SNOR_F_HAS_STACKED) {
|
||||||
|
stack_shift = 1;
|
||||||
|
if (offset >= (mtd->size / 2)) {
|
||||||
|
offset = offset - (mtd->size / 2);
|
||||||
|
nor->spi->flags |= SPI_XFER_U_PAGE;
|
||||||
|
} else {
|
||||||
|
nor->spi->flags &= ~SPI_XFER_U_PAGE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nor->flags & SNOR_F_HAS_PARALLEL)
|
if (CONFIG_IS_ENABLED(SPI_STACKED_PARALLEL)) {
|
||||||
offset /= 2;
|
if (nor->flags & SNOR_F_HAS_PARALLEL)
|
||||||
|
offset /= 2;
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_SPI_FLASH_BAR
|
#ifdef CONFIG_SPI_FLASH_BAR
|
||||||
ret = write_bar(nor, offset);
|
ret = write_bar(nor, offset);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return log_ret(ret);
|
return log_ret(ret);
|
||||||
#endif
|
|
||||||
|
|
||||||
if (len < rem_bank_len)
|
if (len < rem_bank_len)
|
||||||
read_len = len;
|
read_len = len;
|
||||||
else
|
else
|
||||||
read_len = rem_bank_len;
|
read_len = rem_bank_len;
|
||||||
|
#endif
|
||||||
|
|
||||||
if (read_len == 0)
|
if (read_len == 0)
|
||||||
return -EIO;
|
return -EIO;
|
||||||
|
|
|
@ -1584,6 +1584,7 @@ virtaul||virtual
|
||||||
virtiual||virtual
|
virtiual||virtual
|
||||||
visiters||visitors
|
visiters||visitors
|
||||||
vitual||virtual
|
vitual||virtual
|
||||||
|
volatge||voltage
|
||||||
vunerable||vulnerable
|
vunerable||vulnerable
|
||||||
wakeus||wakeups
|
wakeus||wakeups
|
||||||
wathdog||watchdog
|
wathdog||watchdog
|
||||||
|
|
Loading…
Add table
Reference in a new issue