ARM: s3c: fix fiq for clang IAS

[ Upstream commit 7f9942c61fa60eda7cc8e42f04bd25b7d175876e ]

Building with the clang integrated assembler produces a couple of
errors for the s3c24xx fiq support:

  arch/arm/mach-s3c/irq-s3c24xx-fiq.S:52:2: error: instruction 'subne' can not set flags, but 's' suffix specified
    subnes pc, lr, #4 @@ return, still have work to do

  arch/arm/mach-s3c/irq-s3c24xx-fiq.S:64:1: error: invalid symbol redefinition
    s3c24xx_spi_fiq_txrx:

There are apparently two problems: one with extraneous or duplicate
labels, and one with old-style opcode mnemonics. Stefan Agner has
previously fixed other problems like this, but missed this particular
file.

Fixes: bec0806cfe ("spi_s3c24xx: add FIQ pseudo-DMA support")
Cc: Stefan Agner <stefan@agner.ch>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Link: https://lore.kernel.org/r/20210204162416.3030114-1-arnd@kernel.org
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Arnd Bergmann 2021-02-04 17:23:42 +01:00 committed by Greg Kroah-Hartman
parent b9634e38ac
commit 5350b91a73

View File

@ -33,7 +33,6 @@
@ and an offset to the irq acknowledgment word @ and an offset to the irq acknowledgment word
ENTRY(s3c24xx_spi_fiq_rx) ENTRY(s3c24xx_spi_fiq_rx)
s3c24xx_spi_fix_rx:
.word fiq_rx_end - fiq_rx_start .word fiq_rx_end - fiq_rx_start
.word fiq_rx_irq_ack - fiq_rx_start .word fiq_rx_irq_ack - fiq_rx_start
fiq_rx_start: fiq_rx_start:
@ -47,7 +46,7 @@ fiq_rx_start:
strb fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ] strb fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ]
subs fiq_rcount, fiq_rcount, #1 subs fiq_rcount, fiq_rcount, #1
subnes pc, lr, #4 @@ return, still have work to do subsne pc, lr, #4 @@ return, still have work to do
@@ set IRQ controller so that next op will trigger IRQ @@ set IRQ controller so that next op will trigger IRQ
mov fiq_rtmp, #0 mov fiq_rtmp, #0
@ -59,7 +58,6 @@ fiq_rx_irq_ack:
fiq_rx_end: fiq_rx_end:
ENTRY(s3c24xx_spi_fiq_txrx) ENTRY(s3c24xx_spi_fiq_txrx)
s3c24xx_spi_fiq_txrx:
.word fiq_txrx_end - fiq_txrx_start .word fiq_txrx_end - fiq_txrx_start
.word fiq_txrx_irq_ack - fiq_txrx_start .word fiq_txrx_irq_ack - fiq_txrx_start
fiq_txrx_start: fiq_txrx_start:
@ -74,7 +72,7 @@ fiq_txrx_start:
strb fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ] strb fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ]
subs fiq_rcount, fiq_rcount, #1 subs fiq_rcount, fiq_rcount, #1
subnes pc, lr, #4 @@ return, still have work to do subsne pc, lr, #4 @@ return, still have work to do
mov fiq_rtmp, #0 mov fiq_rtmp, #0
str fiq_rtmp, [ fiq_rirq, # S3C2410_INTMOD - S3C24XX_VA_IRQ ] str fiq_rtmp, [ fiq_rirq, # S3C2410_INTMOD - S3C24XX_VA_IRQ ]
@ -86,7 +84,6 @@ fiq_txrx_irq_ack:
fiq_txrx_end: fiq_txrx_end:
ENTRY(s3c24xx_spi_fiq_tx) ENTRY(s3c24xx_spi_fiq_tx)
s3c24xx_spi_fix_tx:
.word fiq_tx_end - fiq_tx_start .word fiq_tx_end - fiq_tx_start
.word fiq_tx_irq_ack - fiq_tx_start .word fiq_tx_irq_ack - fiq_tx_start
fiq_tx_start: fiq_tx_start:
@ -99,7 +96,7 @@ fiq_tx_start:
strb fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ] strb fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ]
subs fiq_rcount, fiq_rcount, #1 subs fiq_rcount, fiq_rcount, #1
subnes pc, lr, #4 @@ return, still have work to do subsne pc, lr, #4 @@ return, still have work to do
mov fiq_rtmp, #0 mov fiq_rtmp, #0
str fiq_rtmp, [ fiq_rirq, # S3C2410_INTMOD - S3C24XX_VA_IRQ ] str fiq_rtmp, [ fiq_rirq, # S3C2410_INTMOD - S3C24XX_VA_IRQ ]