ARM: s3c: fix fiq for clang IAS
authorArnd Bergmann <arnd@arndb.de>
Thu, 4 Feb 2021 16:23:42 +0000 (17:23 +0100)
committerKrzysztof Kozlowski <krzk@kernel.org>
Sat, 6 Feb 2021 13:11:09 +0000 (14:11 +0100)
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: bec0806cfec6 ("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>
arch/arm/mach-s3c/irq-s3c24xx-fiq.S

index b54cbd0..5d238d9 100644 (file)
@@ -35,7 +35,6 @@
        @ and an offset to the irq acknowledgment word
 
 ENTRY(s3c24xx_spi_fiq_rx)
-s3c24xx_spi_fix_rx:
        .word   fiq_rx_end - fiq_rx_start
        .word   fiq_rx_irq_ack - fiq_rx_start
 fiq_rx_start:
@@ -49,7 +48,7 @@ fiq_rx_start:
        strb    fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ]
 
        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
        mov     fiq_rtmp, #0
@@ -61,7 +60,6 @@ fiq_rx_irq_ack:
 fiq_rx_end:
 
 ENTRY(s3c24xx_spi_fiq_txrx)
-s3c24xx_spi_fiq_txrx:
        .word   fiq_txrx_end - fiq_txrx_start
        .word   fiq_txrx_irq_ack - fiq_txrx_start
 fiq_txrx_start:
@@ -76,7 +74,7 @@ fiq_txrx_start:
        strb    fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ]
 
        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
        str     fiq_rtmp, [ fiq_rirq, # S3C2410_INTMOD  - S3C24XX_VA_IRQ ]
@@ -88,7 +86,6 @@ fiq_txrx_irq_ack:
 fiq_txrx_end:
 
 ENTRY(s3c24xx_spi_fiq_tx)
-s3c24xx_spi_fix_tx:
        .word   fiq_tx_end - fiq_tx_start
        .word   fiq_tx_irq_ack - fiq_tx_start
 fiq_tx_start:
@@ -101,7 +98,7 @@ fiq_tx_start:
        strb    fiq_rtmp, [ fiq_rspi, # S3C2410_SPTDAT ]
 
        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
        str     fiq_rtmp, [ fiq_rirq, # S3C2410_INTMOD  - S3C24XX_VA_IRQ ]