* [PATCH] ARM: omap1: avoid symbol clashes in fiq handler
@ 2025-12-04 9:53 Arnd Bergmann
2025-12-04 16:27 ` Janusz Krzysztofik
0 siblings, 1 reply; 2+ messages in thread
From: Arnd Bergmann @ 2025-12-04 9:53 UTC (permalink / raw)
To: soc, Aaro Koskinen, Janusz Krzysztofik
Cc: Arnd Bergmann, Tony Lindgren, Russell King, linux-arm-kernel,
linux-omap, linux-kernel
From: Arnd Bergmann <arnd@arndb.de>
The ams-delta-fiq-handler.S file has a number of symbols with fairly
generic names, including one named 'exit' that causes a compiler warning
in some configuration options:
vmlinux.o: error: exit() function name creates ambiguity with -ffunction-sections
Change all these symbols to use a .L prefix to make them local to
the fiq handler.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
arch/arm/mach-omap1/ams-delta-fiq-handler.S | 38 ++++++++++-----------
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/arch/arm/mach-omap1/ams-delta-fiq-handler.S b/arch/arm/mach-omap1/ams-delta-fiq-handler.S
index 35c2f9574dbd..5cf6fcca602c 100644
--- a/arch/arm/mach-omap1/ams-delta-fiq-handler.S
+++ b/arch/arm/mach-omap1/ams-delta-fiq-handler.S
@@ -97,7 +97,7 @@ ENTRY(qwerty_fiqin_start)
ldr r13, [r12, #IRQ_ITR_REG_OFFSET] @ fetch interrupts status
bics r13, r13, r11 @ clear masked - any left?
- beq exit @ none - spurious FIQ? exit
+ beq .Lexit @ none - spurious FIQ? exit
ldr r10, [r12, #IRQ_SIR_FIQ_REG_OFFSET] @ get requested interrupt number
@@ -105,25 +105,25 @@ ENTRY(qwerty_fiqin_start)
str r8, [r12, #IRQ_CONTROL_REG_OFFSET]
cmp r10, #(INT_GPIO_BANK1 - NR_IRQS_LEGACY) @ is it GPIO interrupt?
- beq gpio @ yes - process it
+ beq .Lgpio @ yes - process it
mov r8, #1
orr r8, r11, r8, lsl r10 @ mask spurious interrupt
str r8, [r12, #IRQ_MIR_REG_OFFSET]
-exit:
+.Lexit:
subs pc, lr, #4 @ return from FIQ
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@
-gpio: @ GPIO bank interrupt handler
+.Lgpio: @ GPIO bank interrupt handler
ldr r12, omap1510_gpio_base @ set base pointer to GPIO bank
ldr r11, [r12, #OMAP1510_GPIO_INT_MASK] @ fetch GPIO interrupts mask
-restart:
+.Lrestart:
ldr r13, [r12, #OMAP1510_GPIO_INT_STATUS] @ fetch status bits
bics r13, r13, r11 @ clear masked - any left?
- beq exit @ no - spurious interrupt? exit
+ beq .Lexit @ no - spurious interrupt? exit
orr r11, r11, r13 @ mask all requested interrupts
str r11, [r12, #OMAP1510_GPIO_INT_MASK]
@@ -131,7 +131,7 @@ restart:
str r13, [r12, #OMAP1510_GPIO_INT_STATUS] @ ack all requested interrupts
ands r10, r13, #KEYBRD_CLK_MASK @ extract keyboard status - set?
- beq hksw @ no - try next source
+ beq .Lhksw @ no - try next source
@@@@@@@@@@@@@@@@@@@@@@
@@ -145,10 +145,10 @@ restart:
ldr r10, [r9, #BUF_STATE] @ fetch kbd interface state
cmp r10, #0 @ are we expecting start bit?
- bne data @ no - go to data processing
+ bne .Ldata @ no - go to data processing
ands r8, r8, #KEYBRD_DATA_MASK @ check start bit - detected?
- beq hksw @ no - try next source
+ beq .Lhksw @ no - try next source
@ r8 contains KEYBRD_DATA_MASK, use it
str r8, [r9, #BUF_STATE] @ enter data processing state
@@ -162,9 +162,9 @@ restart:
mvn r11, #KEYBRD_CLK_MASK @ prepare all except kbd mask
str r11, [r12, #OMAP1510_GPIO_INT_MASK] @ store into the mask register
- b restart @ restart
+ b .Lrestart @ restart
-data: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
+.Ldata: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
@ r8 still contains GPIO input bits
ands r8, r8, #KEYBRD_DATA_MASK @ is keyboard data line low?
@@ -175,7 +175,7 @@ data: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
mov r10, r10, lsl #1 @ shift mask left
bics r10, r10, #0x800 @ have we got all the bits?
strne r10, [r9, #BUF_MASK] @ not yet - store the mask
- bne restart @ and restart
+ bne .Lrestart @ and restart
@ r10 already contains 0, reuse it
str r10, [r9, #BUF_STATE] @ reset state to start
@@ -189,7 +189,7 @@ data: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
ldr r10, [r9, #BUF_KEYS_CNT] @ get saved keystrokes count
ldr r8, [r9, #BUF_BUF_LEN] @ get buffer size
cmp r10, r8 @ is buffer full?
- beq hksw @ yes - key lost, next source
+ beq .Lhksw @ yes - key lost, next source
add r10, r10, #1 @ incremet keystrokes counter
str r10, [r9, #BUF_KEYS_CNT]
@@ -213,9 +213,9 @@ data: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
@@@@@@@@@@@@@@@@@@@@@@@@
-hksw: @Is hook switch interrupt requested?
+.Lhksw: @Is hook switch interrupt requested?
tst r13, #HOOK_SWITCH_MASK @ is hook switch status bit set?
- beq mdm @ no - try next source
+ beq .Lmdm @ no - try next source
@@@@@@@@@@@@@@@@@@@@@@@@
@@ -230,9 +230,9 @@ hksw: @Is hook switch interrupt requested?
@@@@@@@@@@@@@@@@@@@@@@@@
-mdm: @Is it a modem interrupt?
+.Lmdm: @Is it a modem interrupt?
tst r13, #MODEM_IRQ_MASK @ is modem status bit set?
- beq irq @ no - check for next interrupt
+ beq .Lirq @ no - check for next interrupt
@@@@@@@@@@@@@@@@@@@@@@@@
@@ -245,13 +245,13 @@ mdm: @Is it a modem interrupt?
@@@@@@@@@@@@@@@@@@@@@@@@
-irq: @ Place deferred_fiq interrupt request
+.Lirq: @ Place deferred_fiq interrupt request
ldr r12, deferred_fiq_ih_base @ set pointer to IRQ handler
mov r10, #DEFERRED_FIQ_MASK @ set deferred_fiq bit
str r10, [r12, #IRQ_ISR_REG_OFFSET] @ place it in the ISR register
ldr r12, omap1510_gpio_base @ set pointer back to GPIO bank
- b restart @ check for next GPIO interrupt
+ b .Lrestart @ check for next GPIO interrupt
@@@@@@@@@@@@@@@@@@@@@@@@@@@
--
2.39.5
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] ARM: omap1: avoid symbol clashes in fiq handler
2025-12-04 9:53 [PATCH] ARM: omap1: avoid symbol clashes in fiq handler Arnd Bergmann
@ 2025-12-04 16:27 ` Janusz Krzysztofik
0 siblings, 0 replies; 2+ messages in thread
From: Janusz Krzysztofik @ 2025-12-04 16:27 UTC (permalink / raw)
To: soc, Aaro Koskinen, Arnd Bergmann
Cc: Arnd Bergmann, Tony Lindgren, Russell King, linux-arm-kernel,
linux-omap, linux-kernel, Janusz Krzysztofik
[-- Attachment #1: Type: text/plain, Size: 5809 bytes --]
On Thursday, 4 December 2025 10:53:47 CET Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> The ams-delta-fiq-handler.S file has a number of symbols with fairly
> generic names, including one named 'exit' that causes a compiler warning
> in some configuration options:
>
> vmlinux.o: error: exit() function name creates ambiguity with -ffunction-sections
>
> Change all these symbols to use a .L prefix to make them local to
> the fiq handler.
Reviewed-by: Janusz Krzysztofik <jmkrzyszt@gmail.com>
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> arch/arm/mach-omap1/ams-delta-fiq-handler.S | 38 ++++++++++-----------
> 1 file changed, 19 insertions(+), 19 deletions(-)
>
> diff --git a/arch/arm/mach-omap1/ams-delta-fiq-handler.S b/arch/arm/mach-omap1/ams-delta-fiq-handler.S
> index 35c2f9574dbd..5cf6fcca602c 100644
> --- a/arch/arm/mach-omap1/ams-delta-fiq-handler.S
> +++ b/arch/arm/mach-omap1/ams-delta-fiq-handler.S
> @@ -97,7 +97,7 @@ ENTRY(qwerty_fiqin_start)
>
> ldr r13, [r12, #IRQ_ITR_REG_OFFSET] @ fetch interrupts status
> bics r13, r13, r11 @ clear masked - any left?
> - beq exit @ none - spurious FIQ? exit
> + beq .Lexit @ none - spurious FIQ? exit
>
> ldr r10, [r12, #IRQ_SIR_FIQ_REG_OFFSET] @ get requested interrupt number
>
> @@ -105,25 +105,25 @@ ENTRY(qwerty_fiqin_start)
> str r8, [r12, #IRQ_CONTROL_REG_OFFSET]
>
> cmp r10, #(INT_GPIO_BANK1 - NR_IRQS_LEGACY) @ is it GPIO interrupt?
> - beq gpio @ yes - process it
> + beq .Lgpio @ yes - process it
>
> mov r8, #1
> orr r8, r11, r8, lsl r10 @ mask spurious interrupt
> str r8, [r12, #IRQ_MIR_REG_OFFSET]
> -exit:
> +.Lexit:
> subs pc, lr, #4 @ return from FIQ
> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
>
>
> @@@@@@@@@@@@@@@@@@@@@@@@@@@
> -gpio: @ GPIO bank interrupt handler
> +.Lgpio: @ GPIO bank interrupt handler
> ldr r12, omap1510_gpio_base @ set base pointer to GPIO bank
>
> ldr r11, [r12, #OMAP1510_GPIO_INT_MASK] @ fetch GPIO interrupts mask
> -restart:
> +.Lrestart:
> ldr r13, [r12, #OMAP1510_GPIO_INT_STATUS] @ fetch status bits
> bics r13, r13, r11 @ clear masked - any left?
> - beq exit @ no - spurious interrupt? exit
> + beq .Lexit @ no - spurious interrupt? exit
>
> orr r11, r11, r13 @ mask all requested interrupts
> str r11, [r12, #OMAP1510_GPIO_INT_MASK]
> @@ -131,7 +131,7 @@ restart:
> str r13, [r12, #OMAP1510_GPIO_INT_STATUS] @ ack all requested interrupts
>
> ands r10, r13, #KEYBRD_CLK_MASK @ extract keyboard status - set?
> - beq hksw @ no - try next source
> + beq .Lhksw @ no - try next source
>
>
> @@@@@@@@@@@@@@@@@@@@@@
> @@ -145,10 +145,10 @@ restart:
>
> ldr r10, [r9, #BUF_STATE] @ fetch kbd interface state
> cmp r10, #0 @ are we expecting start bit?
> - bne data @ no - go to data processing
> + bne .Ldata @ no - go to data processing
>
> ands r8, r8, #KEYBRD_DATA_MASK @ check start bit - detected?
> - beq hksw @ no - try next source
> + beq .Lhksw @ no - try next source
>
> @ r8 contains KEYBRD_DATA_MASK, use it
> str r8, [r9, #BUF_STATE] @ enter data processing state
> @@ -162,9 +162,9 @@ restart:
> mvn r11, #KEYBRD_CLK_MASK @ prepare all except kbd mask
> str r11, [r12, #OMAP1510_GPIO_INT_MASK] @ store into the mask register
>
> - b restart @ restart
> + b .Lrestart @ restart
>
> -data: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
> +.Ldata: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
>
> @ r8 still contains GPIO input bits
> ands r8, r8, #KEYBRD_DATA_MASK @ is keyboard data line low?
> @@ -175,7 +175,7 @@ data: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
> mov r10, r10, lsl #1 @ shift mask left
> bics r10, r10, #0x800 @ have we got all the bits?
> strne r10, [r9, #BUF_MASK] @ not yet - store the mask
> - bne restart @ and restart
> + bne .Lrestart @ and restart
>
> @ r10 already contains 0, reuse it
> str r10, [r9, #BUF_STATE] @ reset state to start
> @@ -189,7 +189,7 @@ data: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
> ldr r10, [r9, #BUF_KEYS_CNT] @ get saved keystrokes count
> ldr r8, [r9, #BUF_BUF_LEN] @ get buffer size
> cmp r10, r8 @ is buffer full?
> - beq hksw @ yes - key lost, next source
> + beq .Lhksw @ yes - key lost, next source
>
> add r10, r10, #1 @ incremet keystrokes counter
> str r10, [r9, #BUF_KEYS_CNT]
> @@ -213,9 +213,9 @@ data: ldr r10, [r9, #BUF_MASK] @ fetch current input bit mask
> @@@@@@@@@@@@@@@@@@@@@@@@
>
>
> -hksw: @Is hook switch interrupt requested?
> +.Lhksw: @Is hook switch interrupt requested?
> tst r13, #HOOK_SWITCH_MASK @ is hook switch status bit set?
> - beq mdm @ no - try next source
> + beq .Lmdm @ no - try next source
>
>
> @@@@@@@@@@@@@@@@@@@@@@@@
> @@ -230,9 +230,9 @@ hksw: @Is hook switch interrupt requested?
> @@@@@@@@@@@@@@@@@@@@@@@@
>
>
> -mdm: @Is it a modem interrupt?
> +.Lmdm: @Is it a modem interrupt?
> tst r13, #MODEM_IRQ_MASK @ is modem status bit set?
> - beq irq @ no - check for next interrupt
> + beq .Lirq @ no - check for next interrupt
>
>
> @@@@@@@@@@@@@@@@@@@@@@@@
> @@ -245,13 +245,13 @@ mdm: @Is it a modem interrupt?
> @@@@@@@@@@@@@@@@@@@@@@@@
>
>
> -irq: @ Place deferred_fiq interrupt request
> +.Lirq: @ Place deferred_fiq interrupt request
> ldr r12, deferred_fiq_ih_base @ set pointer to IRQ handler
> mov r10, #DEFERRED_FIQ_MASK @ set deferred_fiq bit
> str r10, [r12, #IRQ_ISR_REG_OFFSET] @ place it in the ISR register
>
> ldr r12, omap1510_gpio_base @ set pointer back to GPIO bank
> - b restart @ check for next GPIO interrupt
> + b .Lrestart @ check for next GPIO interrupt
> @@@@@@@@@@@@@@@@@@@@@@@@@@@
>
>
>
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-12-04 16:27 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-04 9:53 [PATCH] ARM: omap1: avoid symbol clashes in fiq handler Arnd Bergmann
2025-12-04 16:27 ` Janusz Krzysztofik
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).