These are header files used by ARC700 architecture. Also note that "arch-arc700/hardware.h" is only required for compilation of "designware_i2c" driver which refers to "asm/arch/hardware.h". It would be good to fix mentioned driver sometime soon but it will cause changes in ARM board configs that use "designware_i2c". Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Cc: Vineet Gupta <vgupta@synopsys.com> Cc: Francois Bedard <fbedard@synopsys.com> Cc: Wolfgang Denk <wd@denx.de> Cc: Heiko Schocher <hs@denx.de>master
parent
819ca38fa7
commit
288aaacf2d
@ -0,0 +1,10 @@ |
||||
/*
|
||||
* Copyright (C) 2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
/*
|
||||
* This file is only required to allow compilation of "designware_i2c" driver. |
||||
* Which explicitly includes <asm/arch/hardware.h>. |
||||
*/ |
@ -0,0 +1,55 @@ |
||||
/*
|
||||
* Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef _ASM_ARC_ARCREGS_H |
||||
#define _ASM_ARC_ARCREGS_H |
||||
|
||||
/*
|
||||
* ARC architecture has additional address space - auxiliary registers. |
||||
* These registers are mostly used for configuration purposes. |
||||
* These registers are not memory mapped and special commands are used for |
||||
* access: "lr"/"sr". |
||||
*/ |
||||
|
||||
#define ARC_AUX_IDENTITY 0x04 |
||||
#define ARC_AUX_STATUS32 0x0a |
||||
|
||||
/* Instruction cache related auxiliary registers */ |
||||
#define ARC_AUX_IC_IVIC 0x10 |
||||
#define ARC_AUX_IC_CTRL 0x11 |
||||
#define ARC_AUX_IC_IVIL 0x19 |
||||
#if (CONFIG_ARC_MMU_VER > 2) |
||||
#define ARC_AUX_IC_PTAG 0x1E |
||||
#endif |
||||
|
||||
/* Timer related auxiliary registers */ |
||||
#define ARC_AUX_TIMER0_CNT 0x21 /* Timer 0 count */ |
||||
#define ARC_AUX_TIMER0_CTRL 0x22 /* Timer 0 control */ |
||||
#define ARC_AUX_TIMER0_LIMIT 0x23 /* Timer 0 limit */ |
||||
|
||||
#define ARC_AUX_INTR_VEC_BASE 0x25 |
||||
|
||||
/* Data cache related auxiliary registers */ |
||||
#define ARC_AUX_DC_IVDC 0x47 |
||||
#define ARC_AUX_DC_CTRL 0x48 |
||||
|
||||
#define ARC_AUX_DC_IVDL 0x4A |
||||
#define ARC_AUX_DC_FLSH 0x4B |
||||
#define ARC_AUX_DC_FLDL 0x4C |
||||
#if (CONFIG_ARC_MMU_VER > 2) |
||||
#define ARC_AUX_DC_PTAG 0x5C |
||||
#endif |
||||
|
||||
#ifndef __ASSEMBLY__ |
||||
/* Accessors for auxiliary registers */ |
||||
#define read_aux_reg(reg) __builtin_arc_lr(reg) |
||||
|
||||
/* gcc builtin sr needs reg param to be long immediate */ |
||||
#define write_aux_reg(reg_immed, val) \ |
||||
__builtin_arc_sr((unsigned int)val, reg_immed) |
||||
#endif /* __ASSEMBLY__ */ |
||||
|
||||
#endif /* _ASM_ARC_ARCREGS_H */ |
@ -0,0 +1,19 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_BITOPS_H |
||||
#define __ASM_ARC_BITOPS_H |
||||
|
||||
/*
|
||||
* hweightN: returns the hamming weight (i.e. the number |
||||
* of bits set) of a N-bit word |
||||
*/ |
||||
|
||||
#define hweight32(x) generic_hweight32(x) |
||||
#define hweight16(x) generic_hweight16(x) |
||||
#define hweight8(x) generic_hweight8(x) |
||||
|
||||
#endif /* __ASM_ARC_BITOPS_H */ |
@ -0,0 +1,23 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_BYTEORDER_H |
||||
#define __ASM_ARC_BYTEORDER_H |
||||
|
||||
#include <asm/types.h> |
||||
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__) |
||||
#define __BYTEORDER_HAS_U64__ |
||||
#define __SWAB_64_THRU_32__ |
||||
#endif |
||||
|
||||
#ifdef __LITTLE_ENDIAN__ |
||||
#include <linux/byteorder/little_endian.h> |
||||
#else |
||||
#include <linux/byteorder/big_endian.h> |
||||
#endif /* CONFIG_SYS_BIG_ENDIAN */ |
||||
|
||||
#endif /* ASM_ARC_BYTEORDER_H */ |
@ -0,0 +1,23 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_CACHE_H |
||||
#define __ASM_ARC_CACHE_H |
||||
|
||||
#include <config.h> |
||||
|
||||
/*
|
||||
* The current upper bound for ARC L1 data cache line sizes is 128 bytes. |
||||
* We use that value for aligning DMA buffers unless the board config has |
||||
* specified an alternate cache line size. |
||||
*/ |
||||
#ifdef CONFIG_SYS_CACHELINE_SIZE |
||||
#define ARCH_DMA_MINALIGN CONFIG_SYS_CACHELINE_SIZE |
||||
#else |
||||
#define ARCH_DMA_MINALIGN 128 |
||||
#endif |
||||
|
||||
#endif /* __ASM_ARC_CACHE_H */ |
@ -0,0 +1,12 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_CONFIG_H_ |
||||
#define __ASM_ARC_CONFIG_H_ |
||||
|
||||
#define CONFIG_LMB |
||||
|
||||
#endif /*__ASM_ARC_CONFIG_H_ */ |
@ -0,0 +1 @@ |
||||
#include <asm-generic/errno.h> |
@ -0,0 +1,19 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_GLOBAL_DATA_H |
||||
#define __ASM_ARC_GLOBAL_DATA_H |
||||
|
||||
/* Architecture-specific global data */ |
||||
struct arch_global_data { |
||||
int running_on_hw; |
||||
}; |
||||
|
||||
#include <asm-generic/global_data.h> |
||||
|
||||
#define DECLARE_GLOBAL_DATA_PTR register volatile gd_t *gd asm ("r25") |
||||
|
||||
#endif /* __ASM_ARC_GLOBAL_DATA_H */ |
@ -0,0 +1,218 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_IO_H |
||||
#define __ASM_ARC_IO_H |
||||
|
||||
#include <linux/types.h> |
||||
#include <asm/byteorder.h> |
||||
|
||||
static inline void sync(void) |
||||
{ |
||||
/* Not yet implemented */ |
||||
} |
||||
|
||||
static inline u8 __raw_readb(const volatile void __iomem *addr) |
||||
{ |
||||
u8 b; |
||||
|
||||
__asm__ __volatile__("ldb%U1 %0, %1\n" |
||||
: "=r" (b) |
||||
: "m" (*(volatile u8 __force *)addr) |
||||
: "memory"); |
||||
return b; |
||||
} |
||||
|
||||
static inline u16 __raw_readw(const volatile void __iomem *addr) |
||||
{ |
||||
u16 s; |
||||
|
||||
__asm__ __volatile__("ldw%U1 %0, %1\n" |
||||
: "=r" (s) |
||||
: "m" (*(volatile u16 __force *)addr) |
||||
: "memory"); |
||||
return s; |
||||
} |
||||
|
||||
static inline u32 __raw_readl(const volatile void __iomem *addr) |
||||
{ |
||||
u32 w; |
||||
|
||||
__asm__ __volatile__("ld%U1 %0, %1\n" |
||||
: "=r" (w) |
||||
: "m" (*(volatile u32 __force *)addr) |
||||
: "memory"); |
||||
return w; |
||||
} |
||||
|
||||
#define readb __raw_readb |
||||
|
||||
static inline u16 readw(const volatile void __iomem *addr) |
||||
{ |
||||
return __le16_to_cpu(__raw_readw(addr)); |
||||
} |
||||
|
||||
static inline u32 readl(const volatile void __iomem *addr) |
||||
{ |
||||
return __le32_to_cpu(__raw_readl(addr)); |
||||
} |
||||
|
||||
static inline void __raw_writeb(u8 b, volatile void __iomem *addr) |
||||
{ |
||||
__asm__ __volatile__("stb%U1 %0, %1\n" |
||||
: |
||||
: "r" (b), "m" (*(volatile u8 __force *)addr) |
||||
: "memory"); |
||||
} |
||||
|
||||
static inline void __raw_writew(u16 s, volatile void __iomem *addr) |
||||
{ |
||||
__asm__ __volatile__("stw%U1 %0, %1\n" |
||||
: |
||||
: "r" (s), "m" (*(volatile u16 __force *)addr) |
||||
: "memory"); |
||||
} |
||||
|
||||
static inline void __raw_writel(u32 w, volatile void __iomem *addr) |
||||
{ |
||||
__asm__ __volatile__("st%U1 %0, %1\n" |
||||
: |
||||
: "r" (w), "m" (*(volatile u32 __force *)addr) |
||||
: "memory"); |
||||
} |
||||
|
||||
#define writeb __raw_writeb |
||||
#define writew(b, addr) __raw_writew(__cpu_to_le16(b), addr) |
||||
#define writel(b, addr) __raw_writel(__cpu_to_le32(b), addr) |
||||
|
||||
static inline int __raw_readsb(unsigned int addr, void *data, int bytelen) |
||||
{ |
||||
__asm__ __volatile__ ("1:ld.di r8, [r0]\n" |
||||
"sub.f r2, r2, 1\n" |
||||
"bnz.d 1b\n" |
||||
"stb.ab r8, [r1, 1]\n" |
||||
: |
||||
: "r" (addr), "r" (data), "r" (bytelen) |
||||
: "r8"); |
||||
return bytelen; |
||||
} |
||||
|
||||
static inline int __raw_readsw(unsigned int addr, void *data, int wordlen) |
||||
{ |
||||
__asm__ __volatile__ ("1:ld.di r8, [r0]\n" |
||||
"sub.f r2, r2, 1\n" |
||||
"bnz.d 1b\n" |
||||
"stw.ab r8, [r1, 2]\n" |
||||
: |
||||
: "r" (addr), "r" (data), "r" (wordlen) |
||||
: "r8"); |
||||
return wordlen; |
||||
} |
||||
|
||||
static inline int __raw_readsl(unsigned int addr, void *data, int longlen) |
||||
{ |
||||
__asm__ __volatile__ ("1:ld.di r8, [r0]\n" |
||||
"sub.f r2, r2, 1\n" |
||||
"bnz.d 1b\n" |
||||
"st.ab r8, [r1, 4]\n" |
||||
: |
||||
: "r" (addr), "r" (data), "r" (longlen) |
||||
: "r8"); |
||||
return longlen; |
||||
} |
||||
|
||||
static inline int __raw_writesb(unsigned int addr, void *data, int bytelen) |
||||
{ |
||||
__asm__ __volatile__ ("1:ldb.ab r8, [r1, 1]\n" |
||||
"sub.f r2, r2, 1\n" |
||||
"bnz.d 1b\n" |
||||
"st.di r8, [r0, 0]\n" |
||||
: |
||||
: "r" (addr), "r" (data), "r" (bytelen) |
||||
: "r8"); |
||||
return bytelen; |
||||
} |
||||
|
||||
static inline int __raw_writesw(unsigned int addr, void *data, int wordlen) |
||||
{ |
||||
__asm__ __volatile__ ("1:ldw.ab r8, [r1, 2]\n" |
||||
"sub.f r2, r2, 1\n" |
||||
"bnz.d 1b\n" |
||||
"st.ab.di r8, [r0, 0]\n" |
||||
: |
||||
: "r" (addr), "r" (data), "r" (wordlen) |
||||
: "r8"); |
||||
return wordlen; |
||||
} |
||||
|
||||
static inline int __raw_writesl(unsigned int addr, void *data, int longlen) |
||||
{ |
||||
__asm__ __volatile__ ("1:ld.ab r8, [r1, 4]\n" |
||||
"sub.f r2, r2, 1\n" |
||||
"bnz.d 1b\n" |
||||
"st.ab.di r8, [r0, 0]\n" |
||||
: |
||||
: "r" (addr), "r" (data), "r" (longlen) |
||||
: "r8"); |
||||
return longlen; |
||||
} |
||||
|
||||
#define out_arch(type, endian, a, v) __raw_write##type(cpu_to_##endian(v), a) |
||||
#define in_arch(type, endian, a) endian##_to_cpu(__raw_read##type(a)) |
||||
|
||||
#define out_le32(a, v) out_arch(l, le32, a, v) |
||||
#define out_le16(a, v) out_arch(w, le16, a, v) |
||||
|
||||
#define in_le32(a) in_arch(l, le32, a) |
||||
#define in_le16(a) in_arch(w, le16, a) |
||||
|
||||
#define out_be32(a, v) out_arch(l, be32, a, v) |
||||
#define out_be16(a, v) out_arch(w, be16, a, v) |
||||
|
||||
#define in_be32(a) in_arch(l, be32, a) |
||||
#define in_be16(a) in_arch(w, be16, a) |
||||
|
||||
#define out_8(a, v) __raw_writeb(v, a) |
||||
#define in_8(a) __raw_readb(a) |
||||
|
||||
/*
|
||||
* Clear and set bits in one shot. These macros can be used to clear and |
||||
* set multiple bits in a register using a single call. These macros can |
||||
* also be used to set a multiple-bit bit pattern using a mask, by |
||||
* specifying the mask in the 'clear' parameter and the new bit pattern |
||||
* in the 'set' parameter. |
||||
*/ |
||||
|
||||
#define clrbits(type, addr, clear) \ |
||||
out_##type((addr), in_##type(addr) & ~(clear)) |
||||
|
||||
#define setbits(type, addr, set) \ |
||||
out_##type((addr), in_##type(addr) | (set)) |
||||
|
||||
#define clrsetbits(type, addr, clear, set) \ |
||||
out_##type((addr), (in_##type(addr) & ~(clear)) | (set)) |
||||
|
||||
#define clrbits_be32(addr, clear) clrbits(be32, addr, clear) |
||||
#define setbits_be32(addr, set) setbits(be32, addr, set) |
||||
#define clrsetbits_be32(addr, clear, set) clrsetbits(be32, addr, clear, set) |
||||
|
||||
#define clrbits_le32(addr, clear) clrbits(le32, addr, clear) |
||||
#define setbits_le32(addr, set) setbits(le32, addr, set) |
||||
#define clrsetbits_le32(addr, clear, set) clrsetbits(le32, addr, clear, set) |
||||
|
||||
#define clrbits_be16(addr, clear) clrbits(be16, addr, clear) |
||||
#define setbits_be16(addr, set) setbits(be16, addr, set) |
||||
#define clrsetbits_be16(addr, clear, set) clrsetbits(be16, addr, clear, set) |
||||
|
||||
#define clrbits_le16(addr, clear) clrbits(le16, addr, clear) |
||||
#define setbits_le16(addr, set) setbits(le16, addr, set) |
||||
#define clrsetbits_le16(addr, clear, set) clrsetbits(le16, addr, clear, set) |
||||
|
||||
#define clrbits_8(addr, clear) clrbits(8, addr, clear) |
||||
#define setbits_8(addr, set) setbits(8, addr, set) |
||||
#define clrsetbits_8(addr, clear, set) clrsetbits(8, addr, clear, set) |
||||
|
||||
#endif /* __ASM_ARC_IO_H */ |
@ -0,0 +1,39 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_POSIX_TYPES_H |
||||
#define __ASM_ARC_POSIX_TYPES_H |
||||
|
||||
typedef unsigned short __kernel_dev_t; |
||||
typedef unsigned long __kernel_ino_t; |
||||
typedef unsigned short __kernel_mode_t; |
||||
typedef unsigned short __kernel_nlink_t; |
||||
typedef long __kernel_off_t; |
||||
typedef int __kernel_pid_t; |
||||
typedef unsigned short __kernel_ipc_pid_t; |
||||
typedef unsigned short __kernel_uid_t; |
||||
typedef unsigned short __kernel_gid_t; |
||||
typedef unsigned int __kernel_size_t; |
||||
typedef int __kernel_ssize_t; |
||||
typedef int __kernel_ptrdiff_t; |
||||
typedef long __kernel_time_t; |
||||
typedef long __kernel_suseconds_t; |
||||
typedef long __kernel_clock_t; |
||||
typedef int __kernel_daddr_t; |
||||
typedef char *__kernel_caddr_t; |
||||
typedef unsigned short __kernel_uid16_t; |
||||
typedef unsigned short __kernel_gid16_t; |
||||
typedef unsigned int __kernel_uid32_t; |
||||
typedef unsigned int __kernel_gid32_t; |
||||
|
||||
typedef unsigned short __kernel_old_uid_t; |
||||
typedef unsigned short __kernel_old_gid_t; |
||||
|
||||
#ifdef __GNUC__ |
||||
typedef long long __kernel_loff_t; |
||||
#endif |
||||
|
||||
#endif /* __ASM_ARC_POSIX_TYPES_H */ |
@ -0,0 +1,50 @@ |
||||
/*
|
||||
* Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_PTRACE_H |
||||
#define __ASM_ARC_PTRACE_H |
||||
|
||||
struct pt_regs { |
||||
long bta; |
||||
long lp_start; |
||||
long lp_end; |
||||
long lp_count; |
||||
long status32; |
||||
long ret; |
||||
long blink; |
||||
long fp; |
||||
long r26; /* gp */ |
||||
long r25; |
||||
long r24; |
||||
long r23; |
||||
long r22; |
||||
long r21; |
||||
long r20; |
||||
long r19; |
||||
long r18; |
||||
long r17; |
||||
long r16; |
||||
long r15; |
||||
long r14; |
||||
long r13; |
||||
long r12; |
||||
long r11; |
||||
long r10; |
||||
long r9; |
||||
long r8; |
||||
long r7; |
||||
long r6; |
||||
long r5; |
||||
long r4; |
||||
long r3; |
||||
long r2; |
||||
long r1; |
||||
long r0; |
||||
long sp; |
||||
long ecr; |
||||
}; |
||||
|
||||
#endif /* __ASM_ARC_PTRACE_H */ |
@ -0,0 +1,14 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_SECTIONS_H |
||||
#define __ASM_ARC_SECTIONS_H |
||||
|
||||
#include <asm-generic/sections.h> |
||||
|
||||
extern ulong __text_end; |
||||
|
||||
#endif /* __ASM_ARC_SECTIONS_H */ |
@ -0,0 +1,27 @@ |
||||
/*
|
||||
* Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_STRING_H |
||||
#define __ASM_ARC_STRING_H |
||||
|
||||
#define __HAVE_ARCH_MEMSET |
||||
#define __HAVE_ARCH_MEMCPY |
||||
#define __HAVE_ARCH_MEMCMP |
||||
#define __HAVE_ARCH_STRCHR |
||||
#define __HAVE_ARCH_STRCPY |
||||
#define __HAVE_ARCH_STRCMP |
||||
#define __HAVE_ARCH_STRLEN |
||||
|
||||
extern void *memset(void *ptr, int, __kernel_size_t); |
||||
extern void *memcpy(void *, const void *, __kernel_size_t); |
||||
extern void memzero(void *ptr, __kernel_size_t n); |
||||
extern int memcmp(const void *, const void *, __kernel_size_t); |
||||
extern char *strchr(const char *s, int c); |
||||
extern char *strcpy(char *dest, const char *src); |
||||
extern int strcmp(const char *cs, const char *ct); |
||||
extern __kernel_size_t strlen(const char *); |
||||
|
||||
#endif /* __ASM_ARC_STRING_H */ |
@ -0,0 +1,55 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_TYPES_H |
||||
#define __ASM_ARC_TYPES_H |
||||
|
||||
typedef unsigned short umode_t; |
||||
|
||||
/*
|
||||
* __xx is ok: it doesn't pollute the POSIX namespace. Use these in the |
||||
* header files exported to user space |
||||
*/ |
||||
|
||||
typedef __signed__ char __s8; |
||||
typedef unsigned char __u8; |
||||
|
||||
typedef __signed__ short __s16; |
||||
typedef unsigned short __u16; |
||||
|
||||
typedef __signed__ int __s32; |
||||
typedef unsigned int __u32; |
||||
|
||||
#if defined(__GNUC__) && !defined(__STRICT_ANSI__) |
||||
typedef __signed__ long long __s64; |
||||
typedef unsigned long long __u64; |
||||
#endif |
||||
|
||||
/*
|
||||
* These aren't exported outside the kernel to avoid name space clashes |
||||
*/ |
||||
typedef signed char s8; |
||||
typedef unsigned char u8; |
||||
|
||||
typedef signed short s16; |
||||
typedef unsigned short u16; |
||||
|
||||
typedef signed int s32; |
||||
typedef unsigned int u32; |
||||
|
||||
typedef signed long long s64; |
||||
typedef unsigned long long u64; |
||||
|
||||
#define BITS_PER_LONG 32 |
||||
|
||||
/* Dma addresses are 32-bits wide. */ |
||||
|
||||
typedef u32 dma_addr_t; |
||||
|
||||
typedef unsigned long phys_addr_t; |
||||
typedef unsigned long phys_size_t; |
||||
|
||||
#endif /* __ASM_ARC_TYPES_H */ |
@ -0,0 +1,12 @@ |
||||
/*
|
||||
* Copyright (C) 2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_U_BOOT_ARC_H__ |
||||
#define __ASM_ARC_U_BOOT_ARC_H__ |
||||
|
||||
int arch_early_init_r(void); |
||||
|
||||
#endif /* __ASM_ARC_U_BOOT_ARC_H__ */ |
@ -0,0 +1,15 @@ |
||||
/*
|
||||
* Copyright (C) 2013-2014 Synopsys, Inc. All rights reserved. |
||||
* |
||||
* SPDX-License-Identifier: GPL-2.0+ |
||||
*/ |
||||
|
||||
#ifndef __ASM_ARC_U_BOOT_H__ |
||||
#define __ASM_ARC_U_BOOT_H__ |
||||
|
||||
#include <asm-generic/u-boot.h> |
||||
|
||||
/* For image.h:image_check_target_arch() */ |
||||
#define IH_ARCH_DEFAULT IH_ARCH_ARC |
||||
|
||||
#endif /* __ASM_ARC_U_BOOT_H__ */ |
@ -0,0 +1 @@ |
||||
#include <asm-generic/unaligned.h> |
Loading…
Reference in new issue