]> git.baikalelectronics.ru Git - kernel.git/commit
xtensa: add s32c1i sanity check
authorMax Filippov <jcmvbkbc@gmail.com>
Wed, 28 Nov 2012 07:33:02 +0000 (11:33 +0400)
committerChris Zankel <chris@zankel.net>
Wed, 19 Dec 2012 05:10:22 +0000 (21:10 -0800)
commit58bd8bbf97f6f73be89db0a092b4510c94ddf7f5
tree331f33a0a31f9306f4612ecc25c4c9a476840966
parentf29bd8cd3f2c503028bc2186a5a3d6f617a2d158
xtensa: add s32c1i sanity check

Add a brief sanity test of S32C1I functionality.  This instruction
is needed by the kernel and userland as part of the base ABI
(including GCC atomic builtins, certain threading packages, future
atomic support in the C++ standard, etc).  However, correct operation
of this instruction requires some cooperation by hardware external to
the processor (such as bus bridge, bus fabric, or memory controller).
Minimally exercising this mechanism and reporting explicit status
early in the boot process is helpful to chip vendors using the Linux
kernel as a benchmark of correctness of hardware.

As it turns out, S32C1I is not exercised by the kernel and by uClibc
based userland as of early June 2008.  This is expected to change
soon as both incorporate more recent open source developments.

Signed-off-by: Marc Gauthier <marc@tensilica.com>
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>
arch/xtensa/Kconfig.debug
arch/xtensa/include/asm/regs.h
arch/xtensa/kernel/setup.c