Merge branch 'cherry-8b81010a2fe' into 'master'

[pickman] Merge tag 'xilinx-for-v2025.01-rc5' of https://source.denx.de/u-boot/custodians/u-boot-microblaze

See merge request u-boot/u-boot!248
This commit is contained in:
Simon Glass
2025-12-17 23:33:54 +00:00
5 changed files with 21 additions and 16 deletions

View File

@@ -79,7 +79,7 @@ static void boot_fdt_reserve_region(u64 addr, u64 size, enum lmb_flags flags)
debug(" reserving fdt memory region: addr=%llx size=%llx flags=%x\n",
(unsigned long long)addr,
(unsigned long long)size, flags);
} else {
} else if (ret != -EEXIST) {
puts("ERROR: reserving fdt memory region failed ");
printf("(addr=%llx size=%llx flags=%x)\n",
(unsigned long long)addr,

View File

@@ -16,7 +16,6 @@ CONFIG_USB=y
CONFIG_DM_USB_GADGET=y
CONFIG_SPL_DM_USB_GADGET=y
CONFIG_USB_XHCI_HCD=y
CONFIG_USB_XHCI_DWC3=y
CONFIG_USB_DWC3=y
CONFIG_USB_DWC3_GENERIC=y
CONFIG_SPL_USB_DWC3_GENERIC=y

View File

@@ -11,6 +11,7 @@
#include <dm.h>
#include <errno.h>
#include <generic-phy.h>
#include <reset.h>
#include <stdlib.h>
#include <video.h>
#include <wait_bit.h>
@@ -2093,10 +2094,15 @@ static int zynqmp_dpsub_probe(struct udevice *dev)
{
struct video_priv *uc_priv = dev_get_uclass_priv(dev);
struct zynqmp_dpsub_priv *priv = dev_get_priv(dev);
struct reset_ctl_bulk resets;
struct clk clk;
int ret;
int mode = RGBA8888;
ret = reset_get_bulk(dev, &resets);
if (!ret)
reset_deassert_bulk(&resets);
ret = clk_get_by_name(dev, "dp_apb_clk", &clk);
if (ret < 0) {
dev_err(dev, "failed to get clock\n");

View File

@@ -182,8 +182,10 @@ static long lmb_resize_regions(struct alist *lmb_rgn_lst,
* the function might resize an already existing region or coalesce two
* adjacent regions.
*
*
* Returns: 0 if the region addition successful, -1 on failure
* Return:
* * %0 - Added successfully, or it's already added (only if LMB_NONE)
* * %-EEXIST - The region is already added, and flags != LMB_NONE
* * %-1 - Failure
*/
static long lmb_add_region_flags(struct alist *lmb_rgn_lst, phys_addr_t base,
phys_size_t size, enum lmb_flags flags)
@@ -216,17 +218,15 @@ static long lmb_add_region_flags(struct alist *lmb_rgn_lst, phys_addr_t base,
coalesced++;
break;
} else if (lmb_addrs_overlap(base, size, rgnbase, rgnsize)) {
if (flags == LMB_NONE) {
ret = lmb_resize_regions(lmb_rgn_lst, i, base,
size);
if (ret < 0)
return -1;
if (flags != LMB_NONE)
return -EEXIST;
coalesced++;
break;
} else {
ret = lmb_resize_regions(lmb_rgn_lst, i, base, size);
if (ret < 0)
return -1;
}
coalesced++;
break;
}
}
@@ -664,7 +664,7 @@ long lmb_add(phys_addr_t base, phys_size_t size)
*
* Free up a region of memory.
*
* Return: 0 if successful, -1 on failure
* Return: 0 if successful, negative error code on failure
*/
long lmb_free_flags(phys_addr_t base, phys_size_t size,
uint flags)
@@ -815,7 +815,7 @@ static phys_addr_t _lmb_alloc_addr(phys_addr_t base, phys_size_t size,
lmb_memory[rgn].size,
base + size - 1, 1)) {
/* ok, reserve the memory */
if (lmb_reserve_flags(base, size, flags) >= 0)
if (!lmb_reserve_flags(base, size, flags))
return base;
}
}

View File

@@ -754,7 +754,7 @@ static int lib_test_lmb_flags(struct unit_test_state *uts)
/* reserve again, same flag */
ret = lmb_reserve_flags(0x40010000, 0x10000, LMB_NOMAP);
ut_asserteq(ret, -1L);
ut_asserteq(ret, -EEXIST);
ASSERT_LMB(mem_lst, used_lst, ram, ram_size, 1, 0x40010000, 0x10000,
0, 0, 0, 0);