From: will.deacon@arm.com (Will Deacon)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 01/11] arm: Convert v7 proc infos into a common macro
Date: Mon, 6 Jun 2011 17:55:45 +0100 [thread overview]
Message-ID: <1307379355-13802-2-git-send-email-will.deacon@arm.com> (raw)
In-Reply-To: <1307379355-13802-1-git-send-email-will.deacon@arm.com>
From: Pawel Moll <pawel.moll@arm.com>
As most of the proc info content is common across all v7
processors, this patch converts existing A9 and generic v7
descriptions into a macro (allowing extra flags in future).
Signed-off-by: Pawel Moll <pawel.moll@arm.com>
---
arch/arm/mm/proc-v7.S | 67 +++++++++++++++++-------------------------------
1 files changed, 24 insertions(+), 43 deletions(-)
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
index b3b566e..d5245d4 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
@@ -436,33 +436,36 @@ cpu_elf_name:
.section ".proc.info.init", #alloc, #execinstr
- .type __v7_ca9mp_proc_info, #object
-__v7_ca9mp_proc_info:
- .long 0x410fc090 @ Required ID value
- .long 0xff0ffff0 @ Mask for ID
- ALT_SMP(.long \
- PMD_TYPE_SECT | \
- PMD_SECT_AP_WRITE | \
- PMD_SECT_AP_READ | \
- PMD_FLAGS_SMP)
- ALT_UP(.long \
- PMD_TYPE_SECT | \
- PMD_SECT_AP_WRITE | \
- PMD_SECT_AP_READ | \
- PMD_FLAGS_UP)
- .long PMD_TYPE_SECT | \
- PMD_SECT_XN | \
- PMD_SECT_AP_WRITE | \
- PMD_SECT_AP_READ
- W(b) __v7_ca9mp_setup
+ /*
+ * Standard v7 proc info content
+ */
+.macro __v7_proc initfunc, mm_mmuflags = 0, io_mmuflags = 0, hwcaps = 0
+ ALT_SMP(.long PMD_TYPE_SECT | PMD_SECT_AP_WRITE | PMD_SECT_AP_READ | \
+ PMD_FLAGS_SMP | \mm_mmuflags)
+ ALT_UP(.long PMD_TYPE_SECT | PMD_SECT_AP_WRITE | PMD_SECT_AP_READ | \
+ PMD_FLAGS_UP | \mm_mmuflags)
+ .long PMD_TYPE_SECT | PMD_SECT_XN | PMD_SECT_AP_WRITE | \
+ PMD_SECT_AP_READ | \io_mmuflags
+ W(b) \initfunc
.long cpu_arch_name
.long cpu_elf_name
- .long HWCAP_SWP|HWCAP_HALF|HWCAP_THUMB|HWCAP_FAST_MULT|HWCAP_EDSP|HWCAP_TLS
+ .long HWCAP_SWP | HWCAP_HALF | HWCAP_THUMB | HWCAP_FAST_MULT | \
+ HWCAP_EDSP | HWCAP_TLS | \hwcaps
.long cpu_v7_name
.long v7_processor_functions
.long v7wbi_tlb_fns
.long v6_user_fns
.long v7_cache_fns
+.endm
+
+ /*
+ * ARM Ltd. Cortex A9 processor.
+ */
+ .type __v7_ca9mp_proc_info, #object
+__v7_ca9mp_proc_info:
+ .long 0x410fc090
+ .long 0xff0ffff0
+ __v7_proc __v7_ca9mp_setup
.size __v7_ca9mp_proc_info, . - __v7_ca9mp_proc_info
/*
@@ -472,27 +475,5 @@ __v7_ca9mp_proc_info:
__v7_proc_info:
.long 0x000f0000 @ Required ID value
.long 0x000f0000 @ Mask for ID
- ALT_SMP(.long \
- PMD_TYPE_SECT | \
- PMD_SECT_AP_WRITE | \
- PMD_SECT_AP_READ | \
- PMD_FLAGS_SMP)
- ALT_UP(.long \
- PMD_TYPE_SECT | \
- PMD_SECT_AP_WRITE | \
- PMD_SECT_AP_READ | \
- PMD_FLAGS_UP)
- .long PMD_TYPE_SECT | \
- PMD_SECT_XN | \
- PMD_SECT_AP_WRITE | \
- PMD_SECT_AP_READ
- W(b) __v7_setup
- .long cpu_arch_name
- .long cpu_elf_name
- .long HWCAP_SWP|HWCAP_HALF|HWCAP_THUMB|HWCAP_FAST_MULT|HWCAP_EDSP|HWCAP_TLS
- .long cpu_v7_name
- .long v7_processor_functions
- .long v7wbi_tlb_fns
- .long v6_user_fns
- .long v7_cache_fns
+ __v7_proc __v7_setup
.size __v7_proc_info, . - __v7_proc_info
--
1.7.0.4
next prev parent reply other threads:[~2011-06-06 16:55 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-06 16:55 [PATCH 00/11] Core support for Cortex-A5 and Cortex-A15 Will Deacon
2011-06-06 16:55 ` Will Deacon [this message]
2011-06-06 16:55 ` [PATCH 02/11] arm: Add Cortex A5 proc info Will Deacon
2011-06-06 16:55 ` [PATCH 03/11] ARM: hwcaps: use shifts instead of hardcoded constants Will Deacon
2011-06-06 16:55 ` [PATCH 04/11] ARM: hwcaps: add new HWCAP defines for ARMv7-A Will Deacon
2011-06-06 16:55 ` [PATCH 05/11] ARM: proc: reorder macro parameters for __v7_proc macro Will Deacon
2011-06-06 16:55 ` [PATCH 06/11] ARM: cortex-a5: add HWCAP_VFPv4D16 to proc info structure Will Deacon
2011-06-07 16:17 ` Dave Martin
2011-06-07 16:22 ` Will Deacon
2011-06-08 9:05 ` Dave Martin
2011-06-08 9:24 ` Will Deacon
2011-06-06 16:55 ` [PATCH 07/11] ARM: proc: add proc info for Cortex-A15MP using classic page tables Will Deacon
2011-06-07 16:18 ` Dave Martin
2011-06-06 16:55 ` [PATCH 08/11] ARM: perf: remove confusing comment from v7 perf events backend Will Deacon
2011-06-06 16:55 ` [PATCH 09/11] ARM: perf: add PMUv2 common event definitions Will Deacon
2011-06-07 7:18 ` Jean Pihet
2011-06-07 8:51 ` Will Deacon
2011-06-06 16:55 ` [PATCH 10/11] ARM: perf: add support for the Cortex-A5 PMU Will Deacon
2011-06-06 16:55 ` [PATCH 11/11] ARM: perf: add support for the Cortex-A15 PMU Will Deacon
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=1307379355-13802-2-git-send-email-will.deacon@arm.com \
--to=will.deacon@arm.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox