- Nov 14, 2024
-
-
Commit f9886bc6 ("Added arm64 assembly for examples/api crt0") added a 64-bit target for the examples but did not adjust the demo code to be 64-bit compatible. Change variable size for pointers. Use %p to print pointers. Signed-off-by:
Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
-
Change the load address on arm64 such that it is compatible with the memory available on qemu_arm64_defconfig. Signed-off-by:
Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
-
Commit f9886bc6 ("Added arm64 assembly for examples/api crt0") tried to add arm64 support to the examples but crt0.S does not even build for qemu_arm64_defconfig with CONFIG_API=y, CONFIG_EXAMPLES=y: examples/api/crt0.S: Assembler messages: examples/api/crt0.S:32: Error: expected a register at operand 1 -- `ldr ip,=search_hint' examples/api/crt0.S:33: Error: unexpected register type at operand 1 -- `str sp,[ip]' make[2]: *** [scripts/Makefile.build:292: examples/api/crt0.o] Error 1 Do not define _start twice. Use valid register names. Move syscall_ptr and search_hint to the data section to avoid an invalid relocation. Fixes: f9886bc6 ("Added arm64 assembly for examples/api crt0") Signed-off-by:
Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
-
- Jul 15, 2024
-
-
Drop all duplicate newlines. No functional change. Signed-off-by:
Marek Vasut <marek.vasut+renesas@mailbox.org>
-
- Jun 07, 2024
-
-
I've encountered a problem when compiling the 'examples/api' directory for ARM64 in U-boot. The problem lies in the assembly code in 'examples/api/crt0.S' where the current CONFIG_ARM code is only 32-bit. When targeting ARM64, a 64-bit version is necessary. I have proposed a fix by including a 'CONFIG_ARM64' section in the assembly code as shown below. These changes have been check via https://github.com/u-boot/u-boot/pull/538 . Feedback is welcome. Signed-off-by:
Kalen Brunham <kalen.brunham@intel.com>
-
- May 20, 2024
-
-
Tom Rini authored
As part of bringing the master branch back in to next, we need to allow for all of these changes to exist here. Reported-by:
Jonas Karlman <jonas@kwiboo.se> Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- May 19, 2024
-
-
Tom Rini authored
When bringing in the series 'arm: dts: am62-beagleplay: Fix Beagleplay Ethernet"' I failed to notice that b4 noticed it was based on next and so took that as the base commit and merged that part of next to master. This reverts commit c8ffd135, reversing changes made to 2ee6f3a5. Reported-by:
Jonas Karlman <jonas@kwiboo.se> Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- May 07, 2024
-
-
Tom Rini authored
Remove <common.h> from here and when needed add missing include files directly. Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- Mar 22, 2023
-
-
Tom Rini authored
If we're building U-Boot with LTO, we don't want to use that for examples as it's more work than required. Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
- Oct 26, 2022
-
-
The "common.h" header is not covered by the licensing exception for standalone applications. Let's drop inclusion of this header from the hello_world example to prove that a standalone app can be built without it. Signed-off-by:
Paul Barker <paul.barker@sancloud.com> Reviewed-by:
Tom Rini <trini@konsulko.com>
-
- Oct 10, 2022
-
-
When building the standalone example with llvm, the link step fails: examples/standalone/libstubs.o: In function `dummy': include/_exports.h:10: undefined reference to `jt' include/_exports.h:11: undefined reference to `jt' include/_exports.h:12: undefined reference to `jt' include/_exports.h:13: undefined reference to `jt' include/_exports.h:14: undefined reference to `jt' examples/standalone/libstubs.o:include/_exports.h:15: more undefined references to `jt' follow Indeed, the standalone libstubs.o does use the jt symbol, but it was marked 'static' in stubs.c. It's strange how gcc builds are working. Signed-off-by:
Alistair Delva <adelva@google.com> Cc: Rick Chen <rick@andestech.com> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@konsulko.com> Cc: Nick Desaulniers <ndesaulniers@google.com>
-
- Aug 12, 2022
-
-
Tom Rini authored
This driver has not been converted to DM_ETH. The migration deadline passed 2 years ago. Cc: Linus Walleij <linus.walleij@linaro.org> Cc: David Feng <fenghua@phytium.com.cn> Cc: Liviu Dudau <liviu.dudau@foss.arm.com> Cc: Andre Przywara <andre.przywara@arm.com> Signed-off-by:
Tom Rini <trini@konsulko.com> Acked-by:
Ramon Fried <rfried.dev@gmail.com>
-
- Apr 25, 2022
-
-
Tom Rini authored
As removal of nds32 has been ack'd for the Linux kernel, remove support here as well. Cc: Rick Chen <rick@andestech.com> Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
- Oct 21, 2021
-
-
This comment is not true since commit 6215bd4c ("api: Use hashtable function for API_env_enum"). Signed-off-by:
Marek Behún <marek.behun@nic.cz> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
- Aug 02, 2021
-
-
It is a pain to have to specify the value 10 in each call. Add a new dectoul() function and update the code to use it. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Oct 08, 2020
-
-
Most users don't need the standalone API examples. Distributions like SUSE do not supply libgcc for cross-compiling and we cannot do without on ARMv8 for building examples/. Make examples selectable via symbol CONFIG_EXAMPLES. It defaults to yes on ARCH_QEMU to ensure that we compile the API as part of our continuous integration. Cc: Matthias Brugger <mbrugger@suse.com> Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Matthias Brugger <mbrugger@suse.com>
-
- Jun 12, 2020
-
-
Drop the example, for two reasons. First, it is tapping directly into the IO accessors of the SMC911x, while it should instead go through the net device API. Second, this makes conversion of the SMC911x driver to DM real hard. Signed-off-by:
Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Tom Rini <trini@konsulko.com> Acked-by:
Joe Hershberger <joe.hershberger@ni.com>
-
- May 19, 2020
-
-
Move this uncommon header out of the common header. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Fix up some incorrect code style in calls to functions in the linux/time.h header, mostly udelay(). Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- May 18, 2020
-
-
We should not use typedefs in U-Boot. They cannot be used as forward declarations which means that header files must include the full header to access them. Drop the typedef and rename the struct to remove the _s suffix which is now not useful. This requires quite a few header-file additions. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Move this header out of the common header. Network support is used in quite a few places but it still does not warrant blanket inclusion. Note that this net.h header itself has quite a lot in it. It could be split into the driver-mode support, functions, structures, checksumming, etc. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- May 01, 2020
-
-
Marek Vasut authored
Add support for U-Boot DM and DT probing. Furthermore, build the SMC911x standalone EEPROM example only for the non-DM case, as it is not converted yet. Signed-off-by:
Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
-
Marek Vasut authored
These accessors are not overridden by any board, and even if they were, this is something which should be handled via DM now, so remove the weak alias option. Moreover, drop the inline keyword, as the compiler can decide better. Signed-off-by:
Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
-
Marek Vasut authored
Inline all the functions from the header file, as they are not used outside of the driver or the standalone EEPROM example. Note that this does introduce considerable amount of duplication in the standalone EEPROM example, however that one has to be rewritten anyway, roughly such that the SMC911x driver would expose DM EEPROM interface and the standalone example would use that. Signed-off-by:
Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
-
- Apr 10, 2020
-
-
Tom Rini authored
Align Kconfig and Kbuild logic to Linux 4.19 release with minimal impact on files outside of this scope. Our previous Kconfig sync was done by commit 5972ff07 ("kconfig / kbuild: re-sync with Linux 4.18"). In this particular re-sync in order to keep clang support working a number of related changes needed to be pulled in that had been missed previously. Not all of these changes we easily traceable and so have been omitted from the list below. The imported Linux commits are: [From prior to v4.18] 9f3f1fd29976 kbuild: Add __cc-option macro d7f14c66c273 kbuild: Enable Large File Support for hostprogs 6d79a7b424a5 kbuild: suppress warnings from 'getconf LFS_*' 24403874316a Shared library support 86a9df597cdd kbuild: fix linker feature test macros when cross compiling with Clang 0294e6f4a000 kbuild: simplify ld-option implementation [From v4.18 to v4.19] 96f14fe738b6 kbuild: Rename HOSTCFLAGS to KBUILD_HOSTCFLAGS 10844aebf448 kbuild: Rename HOSTCXXFLAGS to KBUILD_HOSTCXXFLAGS b90a368000ab kbuild: Rename HOSTLDFLAGS to KBUILD_HOSTLDFLAGS 8377bd2b9ee1 kbuild: Rename HOST_LOADLIBES to KBUILD_HOSTLDLIBS f92d19e0ef9b kbuild: Use HOST*FLAGS options from the command line 4ab3b80159d4 kconfig: check for pkg-config on make {menu,n,g,x}config 693359f7ac90 kconfig: rename SYMBOL_AUTO to SYMBOL_NO_WRITE f60b992e30ff kbuild: replace $(LDFLAGS) $(ldflags-y) with $(ld_flags) 2fb9279f2c3e kbuild: change ld_flags to contain LDFLAGS_$(@F) c931d34ea085 arm64: build with baremetal linker target instead of Linux when available 5accd7f3360e kconfig: handle format string before calling conf_message_callback() a2ff4040151a kconfig: rename file_write_dep and move it to confdata.c 0608182ad542 kconfig: split out useful helpers in confdata.c adc18acf42a1 kconfig: remove unneeded directory generation from local*config 79123b1389cc kconfig: create directories needed for syncconfig by itself 16952b77d8b5 kconfig: make syncconfig update .config regardless of sym_change_count d6c6ab93e17f kbuild: remove deprecated host-progs variable 56869d45e364 kconfig: fix the rule of mainmenu_stmt symbol c151272d1687 kconfig: remove unused sym_get_env_prop() function 1880861226c1 kconfig: remove P_ENV property type e3fd9b5384f3 scripts/dtc: consolidate include path options in Makefile 4bf6a9af0e91 kconfig: add build-only configurator targets f1575595d156 kconfig: error out when seeing recursive dependency 5e8c5299d315 kconfig: report recursive dependency involving 'imply' f498926c47aa kconfig: improve the recursive dependency report 98a4afbfafd2 kconfig: fix "Can't open ..." in parallel build 9a9ddcf47831 kconfig: suppress "configuration written to .config" for syncconfig 87a32e624037 kbuild: pass LDFLAGS to recordmcount.pl d503ac531a52 kbuild: rename LDFLAGS to KBUILD_LDFLAGS 217c3e019675 disable stringop truncation warnings for now bc8d2e20a3eb kconfig: remove a spurious self-assignment fd65465b7016 kconfig: do not require pkg-config on make {menu,n}config 5a4630aadb9a ftrace: Build with CPPFLAGS to get -Qunused-arguments Note that this adds new cleanup work to do in that we should adapt the shared library support we have to what is now upstream. Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Masahiro Yamada <masahiroy@kernel.org>
-
- Jan 24, 2020
-
-
At present panic() is in the vsprintf.h header file. That does not seem like an obvious choice for hang(), even though it relates to panic(). So let's put hang() in its own header. Signed-off-by:
Simon Glass <sjg@chromium.org> [trini: Migrate a few more files] Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- Jan 17, 2020
-
-
At present panic() is in the vsprintf.h header file. That does not seem like an obvious choice for hang(), even though it relates to panic(). So let's put hang() in its own header. Signed-off-by:
Simon Glass <sjg@chromium.org> [trini: Migrate a few more files] Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- Dec 02, 2019
-
-
Drop inclusion of crc.h in common.h and use the correct header directly instead. With this we can drop the conflicting definition in fw_env.h and rely on the crc.h header, which is already included. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Tom Rini <trini@konsulko.com>
-
- Aug 11, 2019
-
-
Move env_set() over to the new header file. Acked-by:
Joe Hershberger <joe.hershberger@ni.com> Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Move envmatch() over to the new header file. Also rename it to env_match() to better line up with other functions. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Joe Hershberger <joe.hershberger@ni.com>
-
- Jan 15, 2019
-
-
Based on the following Linux commits: - 54a702f70589 ("kbuild: mark $(targets) as .SECONDARY and remove .PRECIOUS markers") - 8e9b61b293d9 ("kbuild: move .SECONDARY special target to Kbuild.include") GNU Make automatically deletes intermediate files that are updated in a chain of pattern rules. Example 1) %.dtb.o <- %.dtb.S <- %.dtb <- %.dts Example 2) %.o <- %.c <- %.c_shipped A couple of makefiles mark such targets as .PRECIOUS to prevent Make from deleting them, but the correct way is to use .SECONDARY. .SECONDARY Prerequisites of this special target are treated as intermediate files but are never automatically deleted. .PRECIOUS When make is interrupted during execution, it may delete the target file it is updating if the file was modified since make started. If you mark the file as precious, make will never delete the file if interrupted. Both can avoid deletion of intermediate files, but the difference is the behavior when Make is interrupted; .SECONDARY deletes the target, but .PRECIOUS does not. The use of .PRECIOUS is relatively rare since we do not want to keep partially constructed (possibly corrupted) targets. .SECONDARY with no prerequisites causes all targets to be treated as secondary. This agrees the policy of Kbuild. scripts/Kbuild.include seems a suitable place to add it because it is included from almost all sub-makes. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Lukas Auer authored
Add an implementation of EXPORT_FUNC() for RV64I systems to support them in standalone applications. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Tested-by:
Bin Meng <bmeng.cn@gmail.com>
-
Lukas Auer authored
Register x19 (s3) is a callee-saved register. It must not be used to load and jump to exported functions without saving it beforehand. Replace it with t0, a temporary and caller-saved register. Change the code comment to reflect this and fix it to correctly list gp as the register with the pointer to global data. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Tested-by:
Bin Meng <bmeng.cn@gmail.com>
-
Lukas Auer authored
Standalone applications do not require a separate linker script and can use the default linker script of the compiler instead. Remove the RISC-V standalone linker script. Signed-off-by:
Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Tested-by:
Bin Meng <bmeng.cn@gmail.com>
-
- Nov 27, 2018
-
-
Jagan Teki authored
spi_init used in some areas in tree, but the respective drivers will remove in future patches. So remove the same instances. Signed-off-by:
Jagan Teki <jagan@amarulasolutions.com>
-
- Nov 18, 2018
-
-
Daniel Schwierzeck authored
Use the global MIPS specific u-boot.lds for linking standalone programs instead of the outdated ones in examples/standalone/. Also pass --gc-sections in LDFLAGS_STANDALONE to optimize the size of standalone programs. Finally remove the deprecated config.mk files in arch/mips/cpu/mips[32,64]/. Signed-off-by:
Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
-
Daniel Schwierzeck authored
Currently the OBJCOPYFLAGS are cleared when assigning "-O srec" or "-O binary" for standalone programs. All flags set by arch-specific Makefiles are lost. This is bad if an arch demands arch-specific flags for the objcopy step. Signed-off-by:
Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Reviewed-by:
Tom Rini <trini@konsulko.com>
-
Daniel Schwierzeck authored
Introduce a new Makefile variable for passing LDFLAGS to standalone programs. Currently the variable CONFIG_STANDALONE_LOAD_ADDR is misued on some archs to pass a specific linker script. Signed-off-by:
Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Reviewed-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Rick Chen <rick@andestech.com>
-
- Jun 13, 2018
-
-
Often during debugging session it's very interesting to see what data we were dealing with. For example what we write or read to/from memory or peripherals. This change introduces functions that allow to dump binary data with one simple function invocation like: ------------------->8---------------- print_hex_dump_bytes("", DUMP_PREFIX_OFFSET, buf, len); ------------------->8---------------- which gives us the following: ------------------->8---------------- 00000000: f2 b7 c9 88 62 61 75 64 72 61 74 65 3d 31 31 35 ....baudrate=115 00000010: 32 30 30 00 62 6f 6f 74 61 72 67 73 3d 63 6f 6e 200.bootargs=con 00000020: 73 6f 6c 65 3d 74 74 79 53 33 2c 31 31 35 32 30 sole=ttyS3,11520 00000030: 30 6e 38 00 62 6f 6f 74 64 65 6c 61 79 3d 33 00 0n8.bootdelay=3. 00000040: 62 6f 6f 74 66 69 6c 65 3d 75 49 6d 61 67 65 00 bootfile=uImage. 00000050: 66 64 74 63 6f 6e 74 72 6f 6c 61 64 64 72 3d 39 fdtcontroladdr=9 00000060: 66 66 62 31 62 61 30 00 6c 6f 61 64 61 64 64 72 ffb1ba0.loadaddr 00000070: 3d 30 78 38 32 30 30 30 30 30 30 00 73 74 64 65 =0x82000000.stde 00000080: 72 72 3d 73 65 72 69 61 6c 30 40 65 30 30 32 32 rr=serial0@e0022 00000090: 30 30 30 00 73 74 64 69 6e 3d 73 65 72 69 61 6c 000.stdin=serial 000000a0: 30 40 65 30 30 32 32 30 30 30 00 73 74 64 6f 75 0@e0022000.stdou 000000b0: 74 3d 73 65 72 69 61 6c 30 40 65 30 30 32 32 30 t=serial0@e00220 000000c0: 30 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00.............. ... ------------------->8---------------- Source of hexdump.c was copied from Linux kernel v4.7-rc2. Signed-off-by:
Alexey Brodkin <abrodkin@synopsys.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Mario Six <mario.six@gdsys.cc> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@konsulko.com> Cc: Stefan Roese <sr@denx.de>
-
- May 07, 2018
-
-
Tom Rini authored
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us. In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style. This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one. Signed-off-by:
Tom Rini <trini@konsulko.com>
-