ARM: kernel: Make 32/64-bit atomics work for ARMv5/6
Support for 64-bit atomic operations for ARMv7+ is currently stubbed out in libroot, but our current targets do not use it anyway. We now select atomics-as-syscalls automatically based on the ARM architecture we're building for. The intent is to do away with most of the board specifics (at the very least on the kernel side) and just specify the lowest ARMvX version you want to build for. This will give flexibility in being able to distribute a single image for a wide range of devices, and building a tuned system for one specific core type.
This commit is contained in:
@@ -10,8 +10,14 @@
|
||||
|
||||
#define STACK_GROWS_DOWNWARDS
|
||||
|
||||
//#define ATOMIC_FUNCS_ARE_SYSCALLS
|
||||
//#define ATOMIC64_FUNCS_ARE_SYSCALLS
|
||||
// If we're building on ARMv5 or older, all our atomics need to be syscalls... :(
|
||||
#if _M_ARM <= 5
|
||||
#define ATOMIC_FUNCS_ARE_SYSCALLS
|
||||
#endif
|
||||
|
||||
// If we're building on ARMv6 or older, 64-bit atomics need to be syscalls...
|
||||
#if _M_ARM < 7
|
||||
#define ATOMIC64_FUNCS_ARE_SYSCALLS
|
||||
#endif
|
||||
|
||||
#endif /* _KERNEL_ARCH_ARM_CONFIG_H */
|
||||
|
||||
Reference in New Issue
Block a user