{"id":2228748,"url":"http://patchwork.ozlabs.org/api/covers/2228748/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/cover/20260427100832.581887-1-ilias.apalodimas@linaro.org/","project":{"id":18,"url":"http://patchwork.ozlabs.org/api/projects/18/?format=json","name":"U-Boot","link_name":"uboot","list_id":"u-boot.lists.denx.de","list_email":"u-boot@lists.denx.de","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260427100832.581887-1-ilias.apalodimas@linaro.org>","list_archive_url":null,"date":"2026-04-27T10:08:21","name":"[v3,0/6] Relocate U-Boot in the last bank","submitter":{"id":74147,"url":"http://patchwork.ozlabs.org/api/people/74147/?format=json","name":"Ilias Apalodimas","email":"ilias.apalodimas@linaro.org"},"mbox":"http://patchwork.ozlabs.org/project/uboot/cover/20260427100832.581887-1-ilias.apalodimas@linaro.org/mbox/","series":[{"id":501617,"url":"http://patchwork.ozlabs.org/api/series/501617/?format=json","web_url":"http://patchwork.ozlabs.org/project/uboot/list/?series=501617","date":"2026-04-27T10:08:21","name":"Relocate U-Boot in the last bank","version":3,"mbox":"http://patchwork.ozlabs.org/series/501617/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/covers/2228748/comments/","headers":{"Return-Path":"<u-boot-bounces@lists.denx.de>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=bY/KItBk;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de\n (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de;\n envelope-from=u-boot-bounces@lists.denx.de; receiver=patchwork.ozlabs.org)","phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=linaro.org","phobos.denx.de;\n spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de","phobos.denx.de;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.b=\"bY/KItBk\";\n\tdkim-atps=neutral","phobos.denx.de;\n dmarc=pass (p=none dis=none) header.from=linaro.org","phobos.denx.de;\n spf=pass smtp.mailfrom=ilias.apalodimas@linaro.org"],"Received":["from phobos.denx.de (phobos.denx.de\n [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g3zmq4HBGz1xvV\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 27 Apr 2026 20:08:59 +1000 (AEST)","from h2850616.stratoserver.net (localhost [IPv6:::1])\n\tby phobos.denx.de (Postfix) with ESMTP id AB5AA83AA9;\n\tMon, 27 Apr 2026 12:08:51 +0200 (CEST)","by phobos.denx.de (Postfix, from userid 109)\n id 1210D83C14; Mon, 27 Apr 2026 12:08:50 +0200 (CEST)","from mail-lf1-x131.google.com (mail-lf1-x131.google.com\n [IPv6:2a00:1450:4864:20::131])\n (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits))\n (No client certificate requested)\n by phobos.denx.de (Postfix) with ESMTPS id 852D380433\n for <u-boot@lists.denx.de>; Mon, 27 Apr 2026 12:08:46 +0200 (CEST)","by mail-lf1-x131.google.com with SMTP id\n 2adb3069b0e04-5a2c500750dso11106593e87.1\n for <u-boot@lists.denx.de>; Mon, 27 Apr 2026 03:08:45 -0700 (PDT)","from hera ([94.131.143.12]) by smtp.gmail.com with ESMTPSA id\n 38308e7fff4ca-38ecb6f0b88sm68554791fa.27.2026.04.27.03.08.42\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Mon, 27 Apr 2026 03:08:44 -0700 (PDT)"],"X-Spam-Checker-Version":"SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de","X-Spam-Level":"","X-Spam-Status":"No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_BLOCKED,\n SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1777284525; x=1777889325; darn=lists.denx.de;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:from:to:cc:subject:date:message-id:reply-to;\n bh=eNwUZuUcYNDQ+Hh2uq7Fkj4yiP5impddhm8kXjJLGzc=;\n b=bY/KItBk/4oPYAgv6uG7qDl/UWt0GR4y3hgGMbVVqCVDvoxo081Zi8BKe1K95GOGEC\n ZLFu9YHhimN4mDLk//V5JP4Y+MgQy28PiWZLGAzCjdKp44Kd+BQA+30yHttHH6n8UluG\n T7ud+3x6qmQK1JvdALt7isgfYoIQwLVBlFxS+1CCMB8Rdir7VKdpaPJ7fHTORblAC56k\n uzEGau1zTzypsbXy2+3rP00k1E7AWPSq3yfwY6rBwOfTKdOaBqzT4MAL3DeJoMF1v9A5\n 59BqjKnwIAuWw443BWhzwjDYdKtprGDjDzAkDjznLzz7PRNu7G4ihhe3EZM7bsQLqrmJ\n XroA==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777284525; x=1777889325;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=eNwUZuUcYNDQ+Hh2uq7Fkj4yiP5impddhm8kXjJLGzc=;\n b=RbCP9DNUJYCmXDTgEYi6hrzBgyAZcWIqVLUz33a0GTRvYFxaFY5PBf5nWBOm1z0EVk\n 1Rm1qAHsYQsafqaOi582R6f+o/WR+JjT1T8eGpMLsndCznboHTK7/cFwIiOuJda9kOi7\n XLvrrbn/bMWyq1lsaVB3Xq6K3KxMO3rgIbQrNy4OSV6aevLyu2KKFgYhr6yA3kMRFAm4\n ZtId3CPfn0PwB31lS40o1SXbig81cZLHLmhG0z7kQPFLDPOgU9QzKjBWzVVL4+1TtKR1\n GbwsHFai4kVp5/1YO4ZzcO/ViFrhlX7OoLaRU7ftod/V+1KGA2ivBmyArqBVd9+dDjv7\n k6xQ==","X-Forwarded-Encrypted":"i=1;\n AFNElJ8VI7HqzjqVXxPPnE1dk++zPScKeF+ctMm1KG7RVi8SQN20+XA012mC6JG/lp8xFHteJZ7l8CE=@lists.denx.de","X-Gm-Message-State":"AOJu0Yxlidqvz+a5GwkUbMEqCcs34Np7lGmM76MQT8BddRhL0Wn769ri\n RCOCsoggW+kiAy1NARRL56YoowgeSFrmQQohuqBfMC5VHmUG0CJfPYWyKTZpfvkuqAc=","X-Gm-Gg":"AeBDiesEQdoLZvCAiqmUEalz1+x+mQSFj1hQVqazy/mAzXXVsZJr04+UwXrqi/nvAZC\n UMaM07NtXlfwAG2vL+X/3cagevgB5olBLS7XaH3WbTGlL7ChV7QBaIt66gPAJibYXolOYXpXrsn\n G9B+XOTLEieIZtG4lyFnUt4s5Tz6XT6wcfhQPbD3H/dMqQQTtSKu5xI9taQZ8ZYW8kC7y3xO2jX\n NQJw1TpAhRx+1w7osM6x7hAJzTe+UKEsNg2Cf/EUfEJrwDbonthUumfPpRUHxuM3e7iPIsoXvDu\n q747VaP8TLfQwPzDeSrtQUfulmWtwM5KFm4hrcfiwK7qtoW76EctOe+Ofa4v15adf/D6Wf11Nu9\n kX7JMHkh80qSefCQC+sh9pa5FFsdGub/H9LhKWtEUxE8b1xRT+XvNbna7snfFUfYRIeJfA7UtHI\n hM/WkY/BYxoZBSBBmiNubl+W8iNSBd94KpiU1c17ycnLHrgMNOAuPqDop88HwSERY9hyS6qi928\n fC32jnBxxXVkJYZjU2dYOAYERQaKWVA5FlSKdYUZNWjfdzCnOdlbZmt5SW9XMA0rI94p/qLVU5D\n xQs60dKyMoXQQ9Mt5RrZjNS1aJOOOKojqynRi96ou7KBda5oXGFGPlhU6PZwWm9TsbbxADFdKCo\n +LVMczeDGBQW4R6rt2ci4vPp7VNMAbfyqyslVdJtyrWl5dq6ch9MGDdJ7Ia2VR2bM+YjyMdzdaC\n Ginvo3UXe7XtJjXC8SWv50qyUvMnptuif75cOarFNQo7sjbwcFGevuQwKH4sVepjvr3K362XtnN\n DICQ25VdUUnQQxAG+zqaO5A8RvFhmSmf9ZN","X-Received":"by 2002:a05:6512:124f:b0:5a4:79e:9669 with SMTP id\n 2adb3069b0e04-5a4172da134mr12258687e87.21.1777284524990;\n Mon, 27 Apr 2026 03:08:44 -0700 (PDT)","From":"Ilias Apalodimas <ilias.apalodimas@linaro.org>","To":"trini@konsulko.com","Cc":"marek.vasut+renesas@mailbox.org, jonas@kwiboo.se, anshuld@ti.com,\n sjg@chromium.org, Ilias Apalodimas <ilias.apalodimas@linaro.org>,\n u-boot@lists.denx.de","Subject":"[PATCH v3 0/6] Relocate U-Boot in the last bank","Date":"Mon, 27 Apr 2026 13:08:21 +0300","Message-ID":"<20260427100832.581887-1-ilias.apalodimas@linaro.org>","X-Mailer":"git-send-email 2.53.0","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-BeenThere":"u-boot@lists.denx.de","X-Mailman-Version":"2.1.39","Precedence":"list","List-Id":"U-Boot discussion <u-boot.lists.denx.de>","List-Unsubscribe":"<https://lists.denx.de/options/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>","List-Archive":"<https://lists.denx.de/pipermail/u-boot/>","List-Post":"<mailto:u-boot@lists.denx.de>","List-Help":"<mailto:u-boot-request@lists.denx.de?subject=help>","List-Subscribe":"<https://lists.denx.de/listinfo/u-boot>,\n <mailto:u-boot-request@lists.denx.de?subject=subscribe>","Errors-To":"u-boot-bounces@lists.denx.de","Sender":"\"U-Boot\" <u-boot-bounces@lists.denx.de>","X-Virus-Scanned":"clamav-milter 0.103.8 at phobos.denx.de","X-Virus-Status":"Clean"},"content":"Hi This is v3 of [1][2]!\n\nThere was a discussion recently on the mailing lists regarding our\nmanagement of memory above ram_top [0]. The tl;dr is that we have two problems.\n\nThe first one is that U-Boot always relocates to the top of the first available\nbank unless there's special board code to sidestep that. The second is we don't\nsuccessfully deal with devices that can only do 32-bit DMA.\n\nThis patch series deals with the first problem by adding a Kconfig option\nallowing platforms to relocate to the top of the last discovered bank.\n\nIt's worth noting that this is easily testable with QEMU\n\nqemu-system-aarch64 -m 8192 -smp 2 -nographic -cpu cortex-a57 \\\n    -machine virt,secure=off \\\n    -bios u-boot.bin \\\n    -device virtio-rng-pci \\\n    -drive id=os,if=none,file=\"$image\" \\\n    -device virtio-blk-device,drive=os \\\n    -object memory-backend-ram,id=ram0,size=4G \\\n    -object memory-backend-ram,id=ram1,size=4G \\\n    -numa node,memdev=ram0 \\\n    -numa node,memdev=ram1\n\n# RELOCATE_LAST_BANK not set\nHit any key to stop autoboot: 0\n=> bdinfo\n[...]\nrelocaddr   = 0x000000013f66c000\nreloc off   = 0x000000013f66c000\n[...]\nlmb_dump_all:\n memory.count = 0x1\n memory[0]\t[0x40000000-0x23fffffff], 0x200000000 bytes, flags: none\n reserved.count = 0x2\n reserved[0]\t[0x13d507000-0x13d509fff], 0x3000 bytes, flags: no-notify, no-overwrite\n reserved[1]\t[0x13d50aff0-0x23fffffff], 0x102af5010 bytes, flags: no-overwrite\ndevicetree  = board\n[...]\nTLB addr    = 0x000000013ffe0000\nirq_sp      = 0x000000013e50aff0\nsp start    = 0x000000013e50aff0\nEarly malloc usage: e88 / 2000\n=>\n\n# RELOCATE_LAST_BANK enabled\n\n=> bdinfo\n[...]\nrelocaddr   = 0x000000023f66c000\nreloc off   = 0x000000023f66c000\n[...]\nlmb_dump_all:\n memory.count = 0x1\n memory[0]\t[0x40000000-0x23fffffff], 0x200000000 bytes, flags: none\n reserved.count = 0x2\n reserved[0]\t[0x23d507000-0x23d509fff], 0x3000 bytes, flags: no-notify, no-overwrite\n reserved[1]\t[0x23d50aff0-0x23fffffff], 0x2af5010 bytes, flags: no-overwrite\ndevicetree  = board\n[...]\nTLB addr    = 0x000000023ffe0000\nirq_sp      = 0x000000023e50aff0\nsp start    = 0x000000023e50aff0\nEarly malloc usage: e88 / 2000\n=>\n\nPatch #1 - Clean up from Marek\nPatch #2 - Introduce fdtdec_setup_mem_ram_top() from Marek\nPatch #3 - The boilerplate code that moves bi_dram from bd to gd\nPatch #4 - Moves the ram_base calculation in its own initcall\nPatch #5 - Cleans up and prepares setup_dest_addr()\nPatch #6 - Adds the Kconfig option and code to allow us to relocate in top\n           memory banks\n\n[1] https://lore.kernel.org/u-boot/20260403090109.3564638-1-ilias.apalodimas@linaro.org/\n[2] https://lore.kernel.org/u-boot/CAC_iWj+JmwW6gDmUf76OX0WiW+RQy-DA2STs+ROHH-i0AbGJ2A@mail.gmail.com/T/#t\n\nChanges since v2:\n- Rename bi_dram to dram apart from moving it to gd\n- Adjusted a Kconfig description and a commit message on patch #6\n- Use get_mem_top() instead of calculating the top address adding the\n  dram bank info. That function will account for the reserved memory regions\n  and exclude them\n- Collected Tested/Reviewed-by tags\n- Removed Anshul's r-b from patch #6 since it changed a bit\n\nChanges since v1:\n- Rebased and added Marek's cleanup patches\n- Remove the ifdefery on patch #6 in favor of 'if (CONFIG_IS_ENABLED)'\n- Added a warning on the Kconfig message about breaking devices that\n  can't DMA to high memory\n- Added depends on EXPERT for relocatiing to the last bank\n- Using %llx instead of %llX on debug prints\n- Removed 2 remaining comments of bd->bi_dram[]\n- Collected Tested/Reviewed-by tags\n\nIlias Apalodimas (4):\n  treewide: move bi_dram[] from bd to gd\n  common: move ram_base calculation to independent INITCALL()\n  common: Clean up setup_dest_addr()\n  common: Add an option to relocate on ram top\n\nMarek Vasut (2):\n  fdtdec: Deduplicate iterator function\n  fdtdec: Introduce fdtdec_setup_mem_ram_top() to determine end of\n    topmost DRAM bank\n\n Kconfig                                       |  12 ++\n api/api_platform.c                            |   4 +-\n arch/arm/cpu/armv8/cache_v8.c                 |   6 +-\n arch/arm/cpu/armv8/fsl-layerscape/cpu.c       | 118 +++++++++---------\n arch/arm/lib/bootm-fdt.c                      |   5 +-\n arch/arm/lib/bootm.c                          |   4 +-\n arch/arm/lib/cache-cp15.c                     |   9 +-\n arch/arm/lib/image.c                          |   2 +-\n arch/arm/mach-airoha/an7581/init.c            |   8 +-\n arch/arm/mach-apple/board.c                   |   4 +-\n arch/arm/mach-davinci/misc.c                  |   4 +-\n arch/arm/mach-imx/ele_ahab.c                  |   7 +-\n arch/arm/mach-imx/imx8/ahab.c                 |   7 +-\n arch/arm/mach-imx/imx8/cpu.c                  |  44 +++----\n arch/arm/mach-imx/imx8m/soc.c                 |  24 ++--\n arch/arm/mach-imx/imx8ulp/soc.c               |  20 +--\n arch/arm/mach-imx/imx9/scmi/soc.c             |  24 ++--\n arch/arm/mach-imx/imx9/soc.c                  |  24 ++--\n arch/arm/mach-imx/mx5/mx53_dram.c             |   8 +-\n arch/arm/mach-imx/spl.c                       |   4 +-\n arch/arm/mach-k3/k3-ddr.c                     |   4 +-\n arch/arm/mach-mvebu/alleycat5/cpu.c           |   4 +-\n arch/arm/mach-mvebu/armada3700/cpu.c          |  10 +-\n arch/arm/mach-mvebu/armada8k/dram.c           |  10 +-\n arch/arm/mach-mvebu/dram.c                    |   6 +-\n arch/arm/mach-omap2/am33xx/board.c            |   4 +-\n arch/arm/mach-omap2/omap-cache.c              |   5 +-\n arch/arm/mach-omap2/omap3/emif4.c             |   8 +-\n arch/arm/mach-omap2/omap3/sdrc.c              |   8 +-\n arch/arm/mach-owl/soc.c                       |   4 +-\n arch/arm/mach-renesas/memmap-gen3.c           |   8 +-\n arch/arm/mach-renesas/memmap-rzg2l.c          |   4 +-\n arch/arm/mach-rockchip/rk3588/rk3588.c        |   8 +-\n arch/arm/mach-rockchip/sdram.c                |  42 +++----\n arch/arm/mach-snapdragon/board.c              |  16 +--\n arch/arm/mach-socfpga/board.c                 |   5 +-\n arch/arm/mach-socfpga/misc_arria10.c          |   7 +-\n .../mach-stm32mp/cmd_stm32prog/stm32prog.c    |   4 +-\n arch/arm/mach-stm32mp/stm32mp1/cpu.c          |   7 +-\n arch/arm/mach-tegra/board2.c                  |  14 +--\n arch/arm/mach-tegra/cboot.c                   |   4 +-\n arch/arm/mach-uniphier/dram_init.c            |   6 +-\n arch/arm/mach-uniphier/fdt-fixup.c            |   8 +-\n arch/arm/mach-versal-net/cpu.c                |   8 +-\n arch/arm/mach-versal/cpu.c                    |  16 +--\n arch/arm/mach-versal2/cpu.c                   |   7 +-\n arch/arm/mach-zynqmp/cpu.c                    |   8 +-\n arch/mips/mach-octeon/dram.c                  |   4 +-\n arch/riscv/cpu/k1/dram.c                      |  12 +-\n arch/sandbox/cpu/spl.c                        |   4 +-\n arch/x86/cpu/coreboot/sdram.c                 |   4 +-\n arch/x86/cpu/efi/payload.c                    |   4 +-\n arch/x86/cpu/efi/sdram.c                      |   4 +-\n arch/x86/cpu/intel_common/mrc.c               |   4 +-\n arch/x86/cpu/ivybridge/sdram_nop.c            |   4 +-\n arch/x86/cpu/qemu/dram.c                      |   8 +-\n arch/x86/cpu/quark/dram.c                     |   4 +-\n arch/x86/cpu/slimbootloader/sdram.c           |   4 +-\n arch/x86/cpu/tangier/sdram.c                  |   4 +-\n arch/x86/lib/bootm.c                          |   5 +-\n arch/x86/lib/fsp/fsp_dram.c                   |  18 +--\n board/CZ.NIC/turris_1x/turris_1x.c            |  42 +++----\n board/armltd/corstone1000/corstone1000.c      |   4 +-\n board/armltd/integrator/integrator.c          |   4 +-\n board/armltd/total_compute/total_compute.c    |   6 +-\n board/armltd/vexpress/vexpress_common.c       |   8 +-\n board/atmel/common/video_display.c            |   2 +-\n .../sam9x60_curiosity/sam9x60_curiosity.c     |   2 +-\n .../sam9x75_curiosity/sam9x75_curiosity.c     |   2 +-\n .../atmel/sama5d27_som1_ek/sama5d27_som1_ek.c |   2 +-\n .../sama5d27_wlsom1_ek/sama5d27_wlsom1_ek.c   |   2 +-\n .../sama5d29_curiosity/sama5d29_curiosity.c   |   2 +-\n .../atmel/sama5d2_xplained/sama5d2_xplained.c |   2 +-\n .../sama7d65_curiosity/sama7d65_curiosity.c   |   2 +-\n .../sama7g54_curiosity/sama7g54_curiosity.c   |   2 +-\n board/broadcom/bcmns3/ns3.c                   |   4 +-\n board/compulab/cm_fx6/cm_fx6.c                |  28 ++---\n board/elgin/elgin_rv1108/elgin_rv1108.c       |   4 +-\n board/esd/meesc/meesc.c                       |   4 +-\n board/friendlyarm/nanopi2/board.c             |  10 +-\n board/ge/mx53ppd/mx53ppd.c                    |   8 +-\n board/hisilicon/hikey/hikey.c                 |  24 ++--\n board/hisilicon/hikey960/hikey960.c           |   4 +-\n board/hisilicon/poplar/poplar.c               |   4 +-\n board/k+p/kp_imx53/kp_imx53.c                 |   4 +-\n board/keymile/pg-wcom-ls102xa/ddr.c           |   4 +-\n board/kontron/sl28/sl28.c                     |   4 +-\n board/kontron/sl28/spl_atf.c                  |   6 +-\n board/liebherr/btt/btt.c                      |   2 +-\n board/menlo/m53menlo/m53menlo.c               |   8 +-\n board/nuvoton/arbel_evb/arbel_evb.c           |  26 ++--\n board/nxp/imxrt1020-evk/imxrt1020-evk.c       |   2 +-\n board/nxp/imxrt1050-evk/imxrt1050-evk.c       |   2 +-\n board/nxp/imxrt1170-evk/imxrt1170-evk.c       |   2 +-\n board/nxp/ls1021aqds/ddr.c                    |   4 +-\n board/nxp/ls1028a/ls1028a.c                   |  10 +-\n board/nxp/ls1043aqds/ls1043aqds.c             |   8 +-\n board/nxp/ls1043ardb/ls1043ardb.c             |   8 +-\n board/nxp/ls1046afrwy/ls1046afrwy.c           |   8 +-\n board/nxp/ls1046aqds/ls1046aqds.c             |   8 +-\n board/nxp/ls1046ardb/ls1046ardb.c             |   8 +-\n board/nxp/ls1088a/ls1088a.c                   |   6 +-\n board/nxp/ls2080aqds/ls2080aqds.c             |  14 +--\n board/nxp/ls2080ardb/ls2080ardb.c             |  14 +--\n board/nxp/lx2160a/lx2160a.c                   |   6 +-\n board/phytec/phycore_am62x/phycore-am62x.c    |  26 ++--\n board/phytec/phycore_am64x/phycore-am64x.c    |  18 +--\n board/phytium/durian/durian.c                 |   4 +-\n board/phytium/pe2201/pe2201.c                 |   4 +-\n board/raspberrypi/rpi/rpi.c                   |   4 +-\n board/renesas/common/rcar64-common.c          |   6 +-\n board/renesas/genmai/genmai.c                 |   4 +-\n board/renesas/sparrowhawk/sparrowhawk.c       |   8 +-\n board/ronetix/pm9261/pm9261.c                 |   4 +-\n board/ronetix/pm9263/pm9263.c                 |   4 +-\n board/ronetix/pm9g45/pm9g45.c                 |   4 +-\n board/samsung/arndale/arndale.c               |   4 +-\n board/samsung/common/board.c                  |   6 +-\n board/samsung/exynos-mobile/exynos-mobile.c   |   4 +-\n board/samsung/goni/goni.c                     |  12 +-\n board/samsung/smdkc100/smdkc100.c             |   4 +-\n board/samsung/smdkv310/smdkv310.c             |  16 +--\n board/siemens/iot2050/board.c                 |  16 +--\n board/socionext/developerbox/developerbox.c   |   6 +-\n board/st/stih410-b2260/board.c                |   4 +-\n board/ste/stemmy/stemmy.c                     |   4 +-\n board/ti/dra7xx/evm.c                         |   8 +-\n board/ti/ks2_evm/board.c                      |   4 +-\n board/toradex/colibri_imx7/colibri_imx7.c     |   8 +-\n board/toradex/verdin-am62/verdin-am62.c       |   2 +-\n board/toradex/verdin-am62p/verdin-am62p.c     |   2 +-\n board/traverse/ten64/ten64.c                  |   6 +-\n board/xilinx/zynq/cmds.c                      |   6 +-\n board/xilinx/zynqmp/zynqmp.c                  |   6 +-\n boot/image-board.c                            |   2 +-\n boot/image-fdt.c                              |   4 +-\n cmd/bdinfo.c                                  |  12 +-\n cmd/ti/ddr4.c                                 |   8 +-\n cmd/ufetch.c                                  |   4 +-\n common/board_f.c                              |  72 ++++++++---\n common/init/handoff.c                         |  10 +-\n drivers/bootcount/bootcount_ram.c             |   4 +-\n drivers/ddr/altera/sdram_agilex.c             |   4 +-\n drivers/ddr/altera/sdram_agilex5.c            |  18 +--\n drivers/ddr/altera/sdram_agilex7m.c           |   4 +-\n drivers/ddr/altera/sdram_arria10.c            |  12 +-\n drivers/ddr/altera/sdram_n5x.c                |   4 +-\n drivers/ddr/altera/sdram_s10.c                |   4 +-\n drivers/ddr/altera/sdram_soc64.c              |  28 ++---\n drivers/mmc/mvebu_mmc.c                       |   4 +-\n drivers/net/mvgbe.c                           |   4 +-\n drivers/pci/pci-uclass.c                      |   8 +-\n drivers/usb/host/ehci-marvell.c               |   4 +-\n drivers/video/meson/meson_vpu.c               |   8 +-\n drivers/video/sunxi/sunxi_de2.c               |   2 +-\n drivers/video/sunxi/sunxi_display.c           |   2 +-\n include/asm-generic/global_data.h             |   7 ++\n include/asm-generic/u-boot.h                  |   4 -\n include/configs/m53menlo.h                    |   4 +-\n include/configs/mx53cx9020.h                  |   4 +-\n include/configs/mx53loco.h                    |   4 +-\n include/configs/mx53ppd.h                     |   4 +-\n include/fdtdec.h                              |  23 +++-\n include/init.h                                |   2 +-\n lib/fdtdec.c                                  | 102 +++++++--------\n lib/lmb.c                                     |  13 +-\n test/cmd/bdinfo.c                             |   7 +-\n 167 files changed, 818 insertions(+), 764 deletions(-)\n\n--\n2.53.0"}