7dea1b2006
arch/arm/boot/compressed/misc.o: In function `valid_user_regs': misc.c:(.text+0x74): undefined reference to `elf_hwcap' This triggers after the various elf_hwcap cleanups in:f884b1cf57
d1cbbd6b41
include/asm-arm/arch-iop13xx/uncompress.h calls cpu_relax while spinning on a register value. cpu_relax requires processor.h->ptrace.h->hwcap.h 'elf_hwcap' is defined as an extern, but since the uncompressor does not link against arch/arm/kernel/setup.c 'elf_hwcap' remains undefined. Fix is to open code the cpu_relax() call as barrier(). Cc: Lennert Buytenhek <kernel@wantstofly.org> Cc: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
23 lines
426 B
C
23 lines
426 B
C
#include <asm/types.h>
|
|
#include <linux/serial_reg.h>
|
|
#include <asm/hardware.h>
|
|
|
|
#define UART_BASE ((volatile u32 *)IOP13XX_UART1_PHYS)
|
|
#define TX_DONE (UART_LSR_TEMT | UART_LSR_THRE)
|
|
|
|
static inline void putc(char c)
|
|
{
|
|
while ((UART_BASE[UART_LSR] & TX_DONE) != TX_DONE)
|
|
barrier();
|
|
UART_BASE[UART_TX] = c;
|
|
}
|
|
|
|
static inline void flush(void)
|
|
{
|
|
}
|
|
|
|
/*
|
|
* nothing to do
|
|
*/
|
|
#define arch_decomp_setup()
|
|
#define arch_decomp_wdog()
|