treewide: Move stdlib.h to commonlib
This patch moves commonlib/stdlib.h -> commonlib/bsd/stdlib.h, since all code is BSD licensed anyway. It also moves some code from libpayloads stdlib.h to commonlib/bsd/stdlib.h so that it can be shared with coreboot. This is useful for a subsequent commit that adds devicetree.c into commonlib. Also we don't support DMA on arm platforms in coreboot (only libpayload) therefore `dma_malloc()` has been removed and `dma_coherent()` has been moved to architecture specific functions. Any architecture that tries to use `dma_coherent()` now will get a compile time error. In order to not break current platforms like mb/google/herobrine which make use of the commonlib/storage/sdhci.c controller which in turn uses `dma_coherent` a stub has been added to arch/arm64/dma.c. Signed-off-by: Maximilian Brune <maximilian.brune@9elements.com> Change-Id: I3a7ab0d1ddcc7ce9af121a61b4d4eafc9e563a8a Reviewed-on: https://review.coreboot.org/c/coreboot/+/77969 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Julius Werner <jwerner@chromium.org>
This commit is contained in:
		
				
					committed by
					
						 Lean Sheng Tan
						Lean Sheng Tan
					
				
			
			
				
	
			
			
			
						parent
						
							8627112424
						
					
				
				
					commit
					b3e336c51d
				
			| @@ -481,6 +481,7 @@ CPPFLAGS_common += -include $(src)/include/rules.h | ||||
| CPPFLAGS_common += -include $(src)/commonlib/bsd/include/commonlib/bsd/compiler.h | ||||
| CPPFLAGS_common += -I3rdparty | ||||
| CPPFLAGS_common += -D__BUILD_DIR__=\"$(obj)\" | ||||
| CPPFLAGS_common += -D__COREBOOT__ | ||||
|  | ||||
| ifeq ($(BUILD_TIMELESS),1) | ||||
| CPPFLAGS_common += -D__TIMELESS__ | ||||
|   | ||||
							
								
								
									
										3
									
								
								payloads/external/BOOTBOOT/Makefile
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								payloads/external/BOOTBOOT/Makefile
									
									
									
									
										vendored
									
									
								
							| @@ -1,8 +1,5 @@ | ||||
| project_git_repo=https://gitlab.com/bztsrc/bootboot.git | ||||
| project_dir=bootboot | ||||
| ifeq ($(CONFIG_COREBOOT_BUILD),) | ||||
| include ../../../.config | ||||
| endif | ||||
| ifeq ($(CONFIG_ARCH_ARM64),y) | ||||
| loader_dir=$(project_dir)/aarch64-cb | ||||
| else | ||||
|   | ||||
| @@ -29,13 +29,14 @@ | ||||
| #ifndef __DIE_H__ | ||||
| #define __DIE_H__ | ||||
|  | ||||
| void die_work(const char *file, const char *func, const int line, | ||||
| 	   const char *fmt, ...) | ||||
| 	__attribute__((format (printf, 4, 5))) | ||||
| 	__attribute__((noreturn)); | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
|  | ||||
| #define die(fmt, args...) \ | ||||
| 	do { die_work(__FILE__, __func__, __LINE__, fmt, ##args); } \ | ||||
| 	do {  \ | ||||
| 		printf("%s:%d %s(): " fmt, __FILE__, __LINE__, __func__, ##args); \ | ||||
| 		abort(); \ | ||||
| 	} \ | ||||
| 	while (0) | ||||
|  | ||||
| #define die_if(condition, fmt, args...) \ | ||||
|   | ||||
| @@ -525,4 +525,15 @@ int getline(char *buffer, int len); | ||||
| /* Defined in arch/${ARCH}/selfboot.c */ | ||||
| void selfboot(void *entry); | ||||
|  | ||||
| /* Enter remote GDB mode. Will initialize connection if not already up. */ | ||||
| void gdb_enter(void); | ||||
| /* Disconnect existing GDB connection if one exists. */ | ||||
| void gdb_exit(s8 exit_status); | ||||
|  | ||||
| void __noreturn halt(void); | ||||
| #if CONFIG(LP_REMOTEGDB) | ||||
| /* Override abort()/halt() to trap into GDB if it is enabled. */ | ||||
| #define halt() do { gdb_enter(); halt(); } while (0) | ||||
| #endif | ||||
|  | ||||
| #endif | ||||
|   | ||||
| @@ -30,6 +30,7 @@ | ||||
| #ifndef _STDLIB_H | ||||
| #define _STDLIB_H | ||||
|  | ||||
| #include <commonlib/bsd/stdlib.h> | ||||
| #include <die.h> | ||||
| #include <stddef.h> | ||||
| #include <string.h> | ||||
| @@ -38,11 +39,7 @@ | ||||
|  * @defgroup malloc Memory allocation functions | ||||
|  * @{ | ||||
|  */ | ||||
| void free(void *ptr); | ||||
| void *malloc(size_t size); | ||||
| void *calloc(size_t nmemb, size_t size); | ||||
| void *realloc(void *ptr, size_t size); | ||||
| void *memalign(size_t align, size_t size); | ||||
| void *dma_malloc(size_t size); | ||||
| void *dma_memalign(size_t align, size_t size); | ||||
|  | ||||
| @@ -136,43 +133,8 @@ void print_malloc_map(void); | ||||
|  | ||||
| void init_dma_memory(void *start, u32 size); | ||||
| int dma_initialized(void); | ||||
| int dma_coherent(const void *ptr); | ||||
| void dma_allocator_range(void **start_out, size_t *size_out); | ||||
|  | ||||
| static inline void *xmalloc_work(size_t size, const char *file, | ||||
| 				 const char *func, int line) | ||||
| { | ||||
| 	void *ret = malloc(size); | ||||
| 	if (!ret && size) { | ||||
| 		die_work(file, func, line, "Failed to malloc %zu bytes.\n", | ||||
| 			 size); | ||||
| 	} | ||||
| 	return ret; | ||||
| } | ||||
| #define xmalloc(size) xmalloc_work((size), __FILE__, __func__, __LINE__) | ||||
|  | ||||
| static inline void *xzalloc_work(size_t size, const char *file, | ||||
| 				 const char *func, int line) | ||||
| { | ||||
| 	void *ret = xmalloc_work(size, file, func, line); | ||||
| 	memset(ret, 0, size); | ||||
| 	return ret; | ||||
| } | ||||
| #define xzalloc(size) xzalloc_work((size), __FILE__, __func__, __LINE__) | ||||
|  | ||||
| static inline void *xmemalign_work(size_t align, size_t size, const char *file, | ||||
| 				  const char *func, int line) | ||||
| { | ||||
| 	void *ret = memalign(align, size); | ||||
| 	if (!ret && size) { | ||||
| 		die_work(file, func, line, | ||||
| 			 "Failed to memalign %zu bytes with %zu alignment.\n", | ||||
| 			 size, align); | ||||
| 	} | ||||
| 	return ret; | ||||
| } | ||||
| #define xmemalign(align, size) \ | ||||
| 	xmemalign_work((align), (size), __FILE__, __func__, __LINE__) | ||||
| /** @} */ | ||||
|  | ||||
| /** | ||||
| @@ -205,22 +167,6 @@ long int labs(long int j); | ||||
| long long int llabs(long long int j); | ||||
| /** @} */ | ||||
|  | ||||
| /* Enter remote GDB mode. Will initialize connection if not already up. */ | ||||
| void gdb_enter(void); | ||||
| /* Disconnect existing GDB connection if one exists. */ | ||||
| void gdb_exit(s8 exit_status); | ||||
|  | ||||
| /** | ||||
|  * Stop execution and halt the processor (this function does not return). | ||||
|  */ | ||||
| void halt(void) __attribute__((noreturn)); | ||||
| void exit(int status) __attribute__((noreturn)); | ||||
| #define abort() halt()    /**< Alias for the halt() function */ | ||||
| #if CONFIG(LP_REMOTEGDB) | ||||
| /* Override abort()/halt() to trap into GDB if it is enabled. */ | ||||
| #define halt() do { gdb_enter(); halt(); } while (0) | ||||
| #endif | ||||
|  | ||||
| void qsort(void *aa, size_t n, size_t es, int (*cmp)(const void *, const void *)); | ||||
| char *getenv(const char*); | ||||
| uint64_t __umoddi3(uint64_t num, uint64_t den); | ||||
| @@ -228,4 +174,6 @@ uint64_t  __udivdi3(uint64_t num, uint64_t den); | ||||
| uint64_t __ashldi3(uint64_t num, unsigned shift); | ||||
| uint64_t __lshrdi3(uint64_t num, unsigned shift); | ||||
|  | ||||
| void __noreturn exit(int status); | ||||
|  | ||||
| #endif | ||||
|   | ||||
| @@ -35,7 +35,6 @@ libc-$(CONFIG_LP_LIBC) += args.c | ||||
| libc-$(CONFIG_LP_LIBC) += strlcpy.c | ||||
| libc-$(CONFIG_LP_LIBC) += qsort.c | ||||
| libc-$(CONFIG_LP_LIBC) += hexdump.c | ||||
| libc-$(CONFIG_LP_LIBC) += die.c | ||||
| libc-$(CONFIG_LP_LIBC) += coreboot.c | ||||
| libc-$(CONFIG_LP_LIBC) += fmap.c | ||||
| libc-$(CONFIG_LP_LIBC) += fpmath.c | ||||
|   | ||||
| @@ -1,41 +0,0 @@ | ||||
| /* | ||||
|  * | ||||
|  * Copyright 2013 Google Inc. | ||||
|  * | ||||
|  * Redistribution and use in source and binary forms, with or without | ||||
|  * modification, are permitted provided that the following conditions | ||||
|  * are met: | ||||
|  * 1. Redistributions of source code must retain the above copyright | ||||
|  *    notice, this list of conditions and the following disclaimer. | ||||
|  * 2. Redistributions in binary form must reproduce the above copyright | ||||
|  *    notice, this list of conditions and the following disclaimer in the | ||||
|  *    documentation and/or other materials provided with the distribution. | ||||
|  * 3. The name of the author may not be used to endorse or promote products | ||||
|  *    derived from this software without specific prior written permission. | ||||
|  * | ||||
|  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | ||||
|  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||||
|  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||||
|  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | ||||
|  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||||
|  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||||
|  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||||
|  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||||
|  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||||
|  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||||
|  * SUCH DAMAGE. | ||||
|  */ | ||||
|  | ||||
| #include <libpayload.h> | ||||
|  | ||||
| void die_work(const char *file, const char *func, const int line, | ||||
| 	      const char *fmt, ...) | ||||
| { | ||||
| 	va_list args; | ||||
|  | ||||
| 	printf("%s:%d %s(): ", file, line, func); | ||||
| 	va_start(args, fmt); | ||||
| 	vprintf(fmt, args); | ||||
| 	va_end(args); | ||||
| 	abort(); | ||||
| } | ||||
| @@ -119,6 +119,11 @@ void exit(int status) | ||||
| 	halt(); | ||||
| } | ||||
|  | ||||
| void __noreturn abort(void) | ||||
| { | ||||
| 	halt(); | ||||
| } | ||||
|  | ||||
| int errno; | ||||
|  | ||||
| char *getenv(const char *name) | ||||
|   | ||||
| @@ -1,16 +0,0 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-only */ | ||||
|  | ||||
| #include <tests/test.h> | ||||
| #include <stdbool.h> | ||||
|  | ||||
| void die_work(const char *file, const char *func, int line, const char *fmt, ...) | ||||
| { | ||||
| 	/* Failing asserts are jumping to the user code (test) if expect_assert_failed() was | ||||
| 	   previously called. Otherwise it jumps to the cmocka code and fails the test. */ | ||||
| 	mock_assert(false, "Mock assetion called", file, line); | ||||
|  | ||||
| 	/* Should never be reached */ | ||||
| 	print_error("%s() called...\n", __func__); | ||||
| 	while (1) | ||||
| 		; | ||||
| } | ||||
| @@ -4,10 +4,6 @@ mainmenu "coreboot configuration" | ||||
|  | ||||
| menu "General setup" | ||||
|  | ||||
| config COREBOOT_BUILD | ||||
| 	bool | ||||
| 	default y | ||||
|  | ||||
| config LOCALVERSION | ||||
| 	string "Local version string" | ||||
| 	help | ||||
|   | ||||
| @@ -119,6 +119,7 @@ ramstage-$(CONFIG_ARM64_USE_ARM_TRUSTED_FIRMWARE) += bl31.c | ||||
| ramstage-y += transition.c transition_asm.S | ||||
| ramstage-$(CONFIG_PAYLOAD_FIT_SUPPORT) += fit_payload.c | ||||
| ramstage-$(CONFIG_HAVE_ACPI_TABLES) += acpi.c | ||||
| ramstage-y += dma.c | ||||
|  | ||||
| rmodules_arm64-y += memset.S | ||||
| rmodules_arm64-y += memcpy.S | ||||
|   | ||||
							
								
								
									
										9
									
								
								src/arch/arm64/dma.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								src/arch/arm64/dma.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-only */ | ||||
|  | ||||
| #include <console/console.h> | ||||
| #include <stdlib.h> | ||||
|  | ||||
| int dma_coherent(const void *ptr) | ||||
| { | ||||
| 	return 0; | ||||
| } | ||||
| @@ -1,7 +1,12 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-only */ | ||||
|  | ||||
| #ifndef ARCH_HLT_H | ||||
| #define ARCH_HLT_H | ||||
|  | ||||
| static __always_inline void hlt(void) | ||||
| { | ||||
| 	while (1) | ||||
| 		; | ||||
| } | ||||
|  | ||||
| #endif /* ARCH_HLT_H */ | ||||
|   | ||||
| @@ -1,6 +1,11 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-only */ | ||||
|  | ||||
| #ifndef ARCH_HLT_H | ||||
| #define ARCH_HLT_H | ||||
|  | ||||
| static __always_inline void hlt(void) | ||||
| { | ||||
| 	while (1); | ||||
| } | ||||
|  | ||||
| #endif /* ARCH_HLT_H */ | ||||
|   | ||||
| @@ -261,6 +261,7 @@ ramstage-y += ebda.c | ||||
| ramstage-y += exception.c | ||||
| ramstage-y += idt.S | ||||
| ramstage-$(CONFIG_IOAPIC) += ioapic.c | ||||
| ramstage-y += dma.c | ||||
| ramstage-y += memcpy.c | ||||
| ramstage-$(CONFIG_ARCH_RAMSTAGE_X86_32) += memmove_32.c | ||||
| ramstage-$(CONFIG_ARCH_RAMSTAGE_X86_64) += memmove_64.S | ||||
|   | ||||
							
								
								
									
										8
									
								
								src/arch/x86/dma.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								src/arch/x86/dma.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-only */ | ||||
|  | ||||
| #include <stdlib.h> | ||||
|  | ||||
| int dma_coherent(const void *ptr) | ||||
| { | ||||
| 	return 1; | ||||
| } | ||||
							
								
								
									
										57
									
								
								src/commonlib/bsd/include/commonlib/bsd/stdlib.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								src/commonlib/bsd/include/commonlib/bsd/stdlib.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,57 @@ | ||||
| /* SPDX-License-Identifier: BSD-3-Clause */ | ||||
|  | ||||
| #ifndef __COMMONLIB_STDLIB_H__ | ||||
| #define __COMMONLIB_STDLIB_H__ | ||||
|  | ||||
| #include <stddef.h> | ||||
| #include <string.h> | ||||
|  | ||||
| #ifdef __COREBOOT__ | ||||
| #include <console/console.h> | ||||
| #else | ||||
| #include <stdio.h> | ||||
| #define printk(level, ...) printf(__VA_ARGS__) | ||||
| #endif | ||||
|  | ||||
| void __noreturn abort(void); | ||||
| void free(void *ptr); | ||||
| void *malloc(size_t size); | ||||
| void *calloc(size_t nitems, size_t size); | ||||
| void *memalign(size_t align, size_t size); | ||||
| int dma_coherent(const void *ptr); | ||||
|  | ||||
| static inline void *xmalloc_work(size_t size, const char *file, const char *func, int line) | ||||
| { | ||||
| 	void *ret = malloc(size); | ||||
| 	if (!ret && size) { | ||||
| 		printk(BIOS_ERR, "%s:%d %s(): Failed to malloc %zu bytes\n", | ||||
| 			file, line, func, size); | ||||
| 		abort(); | ||||
| 	} | ||||
| 	return ret; | ||||
| } | ||||
| #define xmalloc(size) xmalloc_work((size), __FILE__, __func__, __LINE__) | ||||
|  | ||||
| static inline void *xzalloc_work(size_t size, const char *file, const char *func, int line) | ||||
| { | ||||
| 	void *ret = xmalloc_work(size, file, func, line); | ||||
| 	memset(ret, 0, size); | ||||
| 	return ret; | ||||
| } | ||||
| #define xzalloc(size) xzalloc_work((size), __FILE__, __func__, __LINE__) | ||||
|  | ||||
| static inline void *xmemalign_work(size_t align, size_t size, const char *file, | ||||
| 				  const char *func, int line) | ||||
| { | ||||
| 	void *ret = memalign(align, size); | ||||
| 	if (!ret && size) { | ||||
| 		printk(BIOS_ERR, "%s:%d %s(): " | ||||
| 				"Failed to memalign %zu bytes with %zu alignment.\n", | ||||
| 			file, line, func, size, align); | ||||
| 		abort(); | ||||
| 	} | ||||
| 	return ret; | ||||
| } | ||||
| #define xmemalign(align, size) xmemalign_work((align), (size), __FILE__, __func__, __LINE__) | ||||
|  | ||||
| #endif /* __COMMONLIB_STDLIB_H__ */ | ||||
| @@ -1,46 +0,0 @@ | ||||
| /* SPDX-License-Identifier: BSD-3-Clause */ | ||||
|  | ||||
| #ifndef __COMMONLIB_STDLIB_H__ | ||||
| #define __COMMONLIB_STDLIB_H__ | ||||
|  | ||||
| #include <stddef.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
|  | ||||
| #if CONFIG(COREBOOT_BUILD) | ||||
| #include <console/console.h> | ||||
| #include <halt.h> | ||||
| #define HALT(x)			halt() | ||||
| #else | ||||
| #include <stdio.h> | ||||
| #define printk(level, ...)	printf(__VA_ARGS__) | ||||
| #define HALT(x)			abort() | ||||
| #endif | ||||
|  | ||||
| static inline void *xmalloc_work(size_t size, const char *file, | ||||
| 				 const char *func, int line) | ||||
| { | ||||
| 	void *ret = malloc(size); | ||||
| 	if (!ret && size) { | ||||
| 		printk(BIOS_ERR, "%s/%s/line %d: Failed to malloc %zu bytes\n", | ||||
| 			file, func, line, size); | ||||
| 		while (1) | ||||
| 			HALT(1); | ||||
| 	} | ||||
| 	return ret; | ||||
| } | ||||
| #define xmalloc(size) xmalloc_work((size), __FILE__, __func__, __LINE__) | ||||
|  | ||||
| static inline void *xzalloc_work(size_t size, const char *file, | ||||
| 				 const char *func, int line) | ||||
| { | ||||
| 	void *ret = xmalloc_work(size, file, func, line); | ||||
| 	memset(ret, 0, size); | ||||
| 	return ret; | ||||
| } | ||||
| #define xzalloc(size) xzalloc_work((size), __FILE__, __func__, __LINE__) | ||||
|  | ||||
| void *dma_malloc(size_t size); | ||||
| int dma_coherent(void *ptr); | ||||
|  | ||||
| #endif /* __COMMONLIB_STDLIB_H__ */ | ||||
| @@ -7,7 +7,7 @@ | ||||
| #include "bouncebuf.h" | ||||
| #include "storage.h" | ||||
| #include <string.h> | ||||
| #include <commonlib/stdlib.h> | ||||
| #include <commonlib/bsd/stdlib.h> | ||||
|  | ||||
| static int addr_aligned(struct bounce_buffer *state) | ||||
| { | ||||
|   | ||||
| @@ -6,7 +6,7 @@ | ||||
| #include "bouncebuf.h" | ||||
| #include <commonlib/sd_mmc_ctrlr.h> | ||||
| #include <commonlib/sdhci.h> | ||||
| #include <commonlib/stdlib.h> | ||||
| #include <commonlib/bsd/stdlib.h> | ||||
| #include <commonlib/storage.h> | ||||
| #include <delay.h> | ||||
| #include <endian.h> | ||||
| @@ -21,11 +21,6 @@ | ||||
| 			|| (CONFIG(SDHCI_ADMA_IN_ROMSTAGE) && ENV_SEPARATE_ROMSTAGE) \ | ||||
| 			|| ENV_POSTCAR || ENV_RAMSTAGE) | ||||
|  | ||||
| __weak void *dma_malloc(size_t length_in_bytes) | ||||
| { | ||||
| 	return malloc(length_in_bytes); | ||||
| } | ||||
|  | ||||
| void sdhci_reset(struct sdhci_ctrlr *sdhci_ctrlr, u8 mask) | ||||
| { | ||||
| 	struct stopwatch sw; | ||||
|   | ||||
| @@ -5,7 +5,7 @@ | ||||
| #include <cbfs.h> | ||||
| #include <cbmem.h> | ||||
| #include <commonlib/fsp.h> | ||||
| #include <commonlib/stdlib.h> | ||||
| #include <stdlib.h> | ||||
| #include <console/console.h> | ||||
| #include <fsp/api.h> | ||||
| #include <fsp/util.h> | ||||
|   | ||||
| @@ -3,10 +3,13 @@ | ||||
| #ifndef __HALT_H__ | ||||
| #define __HALT_H__ | ||||
|  | ||||
| /** | ||||
|  * halt the system reliably | ||||
|  */ | ||||
| void __noreturn halt(void); | ||||
| #include <arch/hlt.h> | ||||
| #include <commonlib/bsd/stdlib.h> | ||||
|  | ||||
| static inline __noreturn void halt(void) | ||||
| { | ||||
| 	abort(); | ||||
| } | ||||
|  | ||||
| /* Power off the system. */ | ||||
| void poweroff(void); | ||||
|   | ||||
| @@ -3,11 +3,7 @@ | ||||
| #ifndef STDLIB_H | ||||
| #define STDLIB_H | ||||
|  | ||||
| #include <commonlib/bsd/stdlib.h> | ||||
| #include <stddef.h> | ||||
|  | ||||
| void *memalign(size_t boundary, size_t size); | ||||
| void *malloc(size_t size); | ||||
| void *calloc(size_t nitems, size_t size); | ||||
| void free(void *ptr); | ||||
|  | ||||
| #endif /* STDLIB_H */ | ||||
|   | ||||
| @@ -2,7 +2,6 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-or-later */ | ||||
|  | ||||
| #include <assert.h> | ||||
| #include <commonlib/stdlib.h> | ||||
| #include <console/console.h> | ||||
| #include <ctype.h> | ||||
| #include <device_tree.h> | ||||
|   | ||||
| @@ -12,7 +12,7 @@ | ||||
| #include <memrange.h> | ||||
| #include <fit.h> | ||||
| #include <boardid.h> | ||||
| #include <commonlib/stdlib.h> | ||||
| #include <stdlib.h> | ||||
| #include <types.h> | ||||
|  | ||||
| static struct list_node image_nodes; | ||||
|   | ||||
| @@ -3,7 +3,7 @@ | ||||
| #include <arch/hlt.h> | ||||
| #include <halt.h> | ||||
|  | ||||
| void halt(void) | ||||
| void __noreturn abort(void) | ||||
| { | ||||
| 	while (1) | ||||
| 		hlt(); | ||||
|   | ||||
| @@ -23,7 +23,6 @@ permissions described in the GCC Runtime Library Exception, version | ||||
| 3.1, as published by the Free Software Foundation. | ||||
| */ | ||||
|  | ||||
| #define __COREBOOT__ | ||||
| #ifdef __COREBOOT__ | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
|   | ||||
| @@ -1,12 +1,12 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-or-later */ | ||||
|  | ||||
| #include <assert.h> | ||||
| #include <commonlib/stdlib.h> | ||||
| #include <intelblocks/acpi.h> | ||||
| #include <soc/chip_common.h> | ||||
| #include <soc/pci_devs.h> | ||||
| #include <soc/util.h> | ||||
| #include <stdint.h> | ||||
| #include <stdlib.h> | ||||
|  | ||||
| #include "chip.h" | ||||
|  | ||||
|   | ||||
| @@ -1,7 +1,6 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-only */ | ||||
|  | ||||
| #include <console/console.h> | ||||
| #include <commonlib/stdlib.h> | ||||
| #include <device/device.h> | ||||
| #include <device/pci_ops.h> | ||||
| #include <device/pci.h> | ||||
|   | ||||
| @@ -1,7 +1,6 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-only */ | ||||
|  | ||||
| #include <boot/coreboot_tables.h> | ||||
| #include <commonlib/stdlib.h> | ||||
| #include <console/console.h> | ||||
| #include <device/device.h> | ||||
| #include <device/mmio.h> | ||||
| @@ -15,7 +14,6 @@ | ||||
| #include <soc/pcie.h> | ||||
| #include <soc/pcie_common.h> | ||||
| #include <soc/soc_chip.h> | ||||
| #include <stdlib.h> | ||||
| #include <types.h> | ||||
|  | ||||
| #define PCIE_SETTING_REG		0x80 | ||||
|   | ||||
| @@ -1,6 +1,5 @@ | ||||
| /* SPDX-License-Identifier: GPL-2.0-only OR MIT */ | ||||
|  | ||||
| #include <commonlib/stdlib.h> | ||||
| #include <console/console.h> | ||||
| #include <device/mmio.h> | ||||
| #include <device/resource.h> | ||||
|   | ||||
| @@ -59,7 +59,7 @@ else | ||||
| TEST_CFLAGS += -Os | ||||
| endif | ||||
|  | ||||
| TEST_CFLAGS += -D__TEST__ | ||||
| TEST_CFLAGS += -D__TEST__ -D__COREBOOT__ | ||||
|  | ||||
| ifneq ($(filter-out 0,$(TEST_PRINT)),) | ||||
| TEST_CFLAGS += -DTEST_PRINT=1 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user