Skip to content

Commit

Permalink
crypto: ux500 - do not build with -O0
Browse files Browse the repository at this point in the history
The ARM allmodconfig build currently warngs because of the
ux500 crypto driver not working well with the jump label
implementation that we started using for dynamic debug, which
breaks building with 'gcc -O0':

In file included from /git/arm-soc/include/linux/jump_label.h:105:0,
                 from /git/arm-soc/include/linux/dynamic_debug.h:5,
                 from /git/arm-soc/include/linux/printk.h:289,
                 from /git/arm-soc/include/linux/kernel.h:13,
                 from /git/arm-soc/include/linux/clk.h:16,
                 from /git/arm-soc/drivers/crypto/ux500/hash/hash_core.c:16:
/git/arm-soc/arch/arm/include/asm/jump_label.h: In function 'hash_set_dma_transfer':
/git/arm-soc/arch/arm/include/asm/jump_label.h:13:7: error: asm operand 0 probably doesn't match constraints [-Werror]
  asm_volatile_goto("1:\n\t"

Turning off compiler optimizations has never really been supported
here, and it's only used when debugging the driver. I have not found
a good reason for doing this here, other than a misguided attempt
to produce more readable assembly output. Also, the driver is only
used in obsolete hardware that almost certainly nobody will spend
time debugging any more.

This just removes the -O0 flag from the compiler options.

Signed-off-by: Arnd Bergmann <[email protected]>
Signed-off-by: Herbert Xu <[email protected]>
  • Loading branch information
arndb authored and herbertx committed Jun 28, 2016
1 parent 61dc0a4 commit 9ac1c32
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 4 deletions.
6 changes: 3 additions & 3 deletions drivers/crypto/ux500/cryp/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
# * License terms: GNU General Public License (GPL) version 2 */

ifdef CONFIG_CRYPTO_DEV_UX500_DEBUG
CFLAGS_cryp_core.o := -DDEBUG -O0
CFLAGS_cryp.o := -DDEBUG -O0
CFLAGS_cryp_irq.o := -DDEBUG -O0
CFLAGS_cryp_core.o := -DDEBUG
CFLAGS_cryp.o := -DDEBUG
CFLAGS_cryp_irq.o := -DDEBUG
endif

obj-$(CONFIG_CRYPTO_DEV_UX500_CRYP) += ux500_cryp.o
Expand Down
2 changes: 1 addition & 1 deletion drivers/crypto/ux500/hash/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# License terms: GNU General Public License (GPL) version 2
#
ifdef CONFIG_CRYPTO_DEV_UX500_DEBUG
CFLAGS_hash_core.o := -DDEBUG -O0
CFLAGS_hash_core.o := -DDEBUG
endif

obj-$(CONFIG_CRYPTO_DEV_UX500_HASH) += ux500_hash.o
Expand Down

0 comments on commit 9ac1c32

Please sign in to comment.