From: Tony Lindgren <tony@atomide.com> To: linux-omap@vger.kernel.org Cc: Nicolas Pitre <nicolas.pitre@linaro.org>, Richard Woodruff <r-woodruff2@ti.com>, Russell King <linux@arm.linux.org.uk>, Kees Cook <keescook@chromium.org>, Tero Kristo <t-kristo@ti.com>, Nishanth Menon <menon.nishanth@gmail.com>, Laura Abbott <labbott@redhat.com>, linux-arm-kernel@lists.infradead.org Subject: [PATCH 2/5] ARM: OMAP2+: Fix l2dis_3630 for rodata Date: Tue, 19 Jan 2016 09:48:51 -0800 [thread overview] Message-ID: <1453225734-16993-3-git-send-email-tony@atomide.com> (raw) In-Reply-To: <1453225734-16993-1-git-send-email-tony@atomide.com> We don't want to write to .text section. Let's move l2dis_3630 to .data and access it via a pointer. Cc: Kees Cook <keescook@chromium.org> Cc: Laura Abbott <labbott@redhat.com> Cc: Nicolas Pitre <nicolas.pitre@linaro.org> Cc: Nishanth Menon <menon.nishanth@gmail.com> Cc: Richard Woodruff <r-woodruff2@ti.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Tero Kristo <t-kristo@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com> --- arch/arm/mach-omap2/sleep34xx.S | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-omap2/sleep34xx.S b/arch/arm/mach-omap2/sleep34xx.S index 787cfda..f7c7bf8 100644 --- a/arch/arm/mach-omap2/sleep34xx.S +++ b/arch/arm/mach-omap2/sleep34xx.S @@ -86,7 +86,9 @@ ENTRY(enable_omap3630_toggle_l2_on_restore) stmfd sp!, {lr} @ save registers on stack /* Setup so that we will disable and enable l2 */ mov r1, #0x1 - adrl r2, l2dis_3630 @ may be too distant for plain adr + adrl r3, l2dis_3630_offset @ may be too distant for plain adr + ldr r2, [r3] + add r2, r2, r3 str r1, [r2] ldmfd sp!, {pc} @ restore regs and return ENDPROC(enable_omap3630_toggle_l2_on_restore) @@ -415,7 +417,9 @@ ENTRY(omap3_restore) cmp r2, #0x0 @ Check if target power state was OFF or RET bne logic_l1_restore - ldr r0, l2dis_3630 + adr r1, l2dis_3630_offset + ldr r0, [r1] + add r0, r0, r1 cmp r0, #0x1 @ should we disable L2 on 3630? bne skipl2dis mrc p15, 0, r0, c1, c0, 1 @@ -484,7 +488,9 @@ l2_inv_gp: mov r12, #0x2 smc #0 @ Call SMI monitor (smieq) logic_l1_restore: - ldr r1, l2dis_3630 + adr r0, l2dis_3630_offset + ldr r1, [r0] + add r1, r1, r0 cmp r1, #0x1 @ Test if L2 re-enable needed on 3630 bne skipl2reen mrc p15, 0, r1, c1, c0, 1 @@ -513,6 +519,10 @@ control_stat: .word CONTROL_STAT control_mem_rta: .word CONTROL_MEM_RTA_CTRL +l2dis_3630_offset: + .long l2dis_3630 - . + + .data l2dis_3630: .word 0 -- 2.7.0.rc3
WARNING: multiple messages have this Message-ID (diff)
From: tony@atomide.com (Tony Lindgren) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 2/5] ARM: OMAP2+: Fix l2dis_3630 for rodata Date: Tue, 19 Jan 2016 09:48:51 -0800 [thread overview] Message-ID: <1453225734-16993-3-git-send-email-tony@atomide.com> (raw) In-Reply-To: <1453225734-16993-1-git-send-email-tony@atomide.com> We don't want to write to .text section. Let's move l2dis_3630 to .data and access it via a pointer. Cc: Kees Cook <keescook@chromium.org> Cc: Laura Abbott <labbott@redhat.com> Cc: Nicolas Pitre <nicolas.pitre@linaro.org> Cc: Nishanth Menon <menon.nishanth@gmail.com> Cc: Richard Woodruff <r-woodruff2@ti.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Tero Kristo <t-kristo@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com> --- arch/arm/mach-omap2/sleep34xx.S | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-omap2/sleep34xx.S b/arch/arm/mach-omap2/sleep34xx.S index 787cfda..f7c7bf8 100644 --- a/arch/arm/mach-omap2/sleep34xx.S +++ b/arch/arm/mach-omap2/sleep34xx.S @@ -86,7 +86,9 @@ ENTRY(enable_omap3630_toggle_l2_on_restore) stmfd sp!, {lr} @ save registers on stack /* Setup so that we will disable and enable l2 */ mov r1, #0x1 - adrl r2, l2dis_3630 @ may be too distant for plain adr + adrl r3, l2dis_3630_offset @ may be too distant for plain adr + ldr r2, [r3] + add r2, r2, r3 str r1, [r2] ldmfd sp!, {pc} @ restore regs and return ENDPROC(enable_omap3630_toggle_l2_on_restore) @@ -415,7 +417,9 @@ ENTRY(omap3_restore) cmp r2, #0x0 @ Check if target power state was OFF or RET bne logic_l1_restore - ldr r0, l2dis_3630 + adr r1, l2dis_3630_offset + ldr r0, [r1] + add r0, r0, r1 cmp r0, #0x1 @ should we disable L2 on 3630? bne skipl2dis mrc p15, 0, r0, c1, c0, 1 @@ -484,7 +488,9 @@ l2_inv_gp: mov r12, #0x2 smc #0 @ Call SMI monitor (smieq) logic_l1_restore: - ldr r1, l2dis_3630 + adr r0, l2dis_3630_offset + ldr r1, [r0] + add r1, r1, r0 cmp r1, #0x1 @ Test if L2 re-enable needed on 3630 bne skipl2reen mrc p15, 0, r1, c1, c0, 1 @@ -513,6 +519,10 @@ control_stat: .word CONTROL_STAT control_mem_rta: .word CONTROL_MEM_RTA_CTRL +l2dis_3630_offset: + .long l2dis_3630 - . + + .data l2dis_3630: .word 0 -- 2.7.0.rc3
next prev parent reply other threads:[~2016-01-19 17:48 UTC|newest] Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-01-19 17:48 [PATCH 0/5] omap assembly fixes for CONFIG_DEBUG_RODATA Tony Lindgren 2016-01-19 17:48 ` Tony Lindgren 2016-01-19 17:48 ` [PATCH 1/5] ARM: OMAP2+: Fix wait_dll_lock_timed for rodata Tony Lindgren 2016-01-19 17:48 ` Tony Lindgren 2016-01-19 17:48 ` Tony Lindgren [this message] 2016-01-19 17:48 ` [PATCH 2/5] ARM: OMAP2+: Fix l2dis_3630 " Tony Lindgren 2016-01-19 18:10 ` Nicolas Pitre 2016-01-19 18:10 ` Nicolas Pitre 2016-01-19 18:40 ` Tony Lindgren 2016-01-19 18:40 ` Tony Lindgren 2016-01-19 17:48 ` [PATCH 3/5] ARM: OMAP2+: Fix save_secure_ram_context " Tony Lindgren 2016-01-19 17:48 ` Tony Lindgren 2016-01-19 18:45 ` Sergei Shtylyov 2016-01-19 18:45 ` Sergei Shtylyov 2016-01-19 21:57 ` Tony Lindgren 2016-01-19 21:57 ` Tony Lindgren 2016-01-19 17:48 ` [PATCH 4/5] ARM: OMAP2+: Fix l2_inv_api_params " Tony Lindgren 2016-01-19 17:48 ` Tony Lindgren 2016-01-19 17:48 ` [PATCH 5/5] ARM: OMAP2+: Fix ppa_zero_params and ppa_por_params " Tony Lindgren 2016-01-19 17:48 ` Tony Lindgren 2016-01-19 18:12 ` [PATCH 0/5] omap assembly fixes for CONFIG_DEBUG_RODATA Kees Cook 2016-01-19 18:12 ` Kees Cook 2016-01-21 19:12 [PATCH v2 " Tony Lindgren 2016-01-21 19:12 ` [PATCH 2/5] ARM: OMAP2+: Fix l2dis_3630 for rodata Tony Lindgren 2016-01-21 19:12 ` Tony Lindgren
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1453225734-16993-3-git-send-email-tony@atomide.com \ --to=tony@atomide.com \ --cc=keescook@chromium.org \ --cc=labbott@redhat.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-omap@vger.kernel.org \ --cc=linux@arm.linux.org.uk \ --cc=menon.nishanth@gmail.com \ --cc=nicolas.pitre@linaro.org \ --cc=r-woodruff2@ti.com \ --cc=t-kristo@ti.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.