From: Tony Lindgren <tony@atomide.com>
To: Russell King - ARM Linux <linux@arm.linux.org.uk>
Cc: linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
Bryan Wu <bryan.wu@canonical.com>,
Will Deacon <will.deacon@arm.com>
Subject: [PATCH 0/6] ARM: Add inline function smp_on_up() for early init testing
Date: Thu, 2 Sep 2010 10:15:02 -0700 [thread overview]
Message-ID: <20100902171502.GS11597@atomide.com> (raw)
In-Reply-To: <20100902170830.GW26319@n2100.arm.linux.org.uk>
* Russell King - ARM Linux <linux@arm.linux.org.uk> [100902 10:00]:
> On Thu, Sep 02, 2010 at 09:18:47AM -0700, Tony Lindgren wrote:
> > >From 7044c13594c3023da6095f8d432eda260bc3207f Mon Sep 17 00:00:00 2001
> > From: Tony Lindgren <tony@atomide.com>
> > Date: Mon, 30 Aug 2010 14:00:54 -0700
> > Subject: [PATCH 1/6] ARM: Add inline function smp_on_up() for early init testing
> >
> > Add inline function smp_on_up() for early init checks, and
> > change build_mem_type_table to use it.
>
> Isn't something missing from this - such as a C-mode definition of
> SMP() and UP() ?
Oops, here's the missing patch.
Tony
>From e52db459dba0088fcff66904069630a24a811db8 Mon Sep 17 00:00:00 2001
From: Tony Lindgren <tony@atomide.com>
Date: Wed, 1 Sep 2010 15:02:50 -0700
Subject: [PATCH] ARM: Add SMP and UP macros for inline assembly
We can't use the macros in asm/assembler.h in C inline functions.
Signed-off-by: Tony Lindgren <tony@atomide.com>
diff --git a/arch/arm/include/asm/assembler.h b/arch/arm/include/asm/assembler.h
index 55974d2..340795c 100644
--- a/arch/arm/include/asm/assembler.h
+++ b/arch/arm/include/asm/assembler.h
@@ -154,6 +154,10 @@
.long 9999b,9001f; \
.popsection
+/*
+ * SMP and UP defines for assembly code. See also asm/smp_plat.h
+ * for the SMP and UP defines for inline code.
+ */
#ifdef CONFIG_SMP
#define SMP(instr...) \
9998: instr
diff --git a/arch/arm/include/asm/smp_plat.h b/arch/arm/include/asm/smp_plat.h
index e621530..8db3512 100644
--- a/arch/arm/include/asm/smp_plat.h
+++ b/arch/arm/include/asm/smp_plat.h
@@ -18,4 +18,25 @@ static inline int cache_ops_need_broadcast(void)
return ((read_cpuid_ext(CPUID_EXT_MMFR3) >> 12) & 0xf) < 1;
}
+/*
+ * SMP and UP defines for inline functions. See also asm/assembler.h
+ * for the SMP and UP defines for assembly code.
+ */
+#ifdef CONFIG_SMP
+#define _str(s...) #s
+#define _9998(s...) _str(9998: s\n)
+
+#define SMP(instr...) \
+ _9998(instr)
+
+#define UP(instr...) \
+ _str(.pushsection ".smpalt.init", "a"\n) \
+ _str(.word 9998b\n) \
+ _str(instr\n) \
+ _str(.popsection\n)
+#else
+#define SMP(instr...)
+#define UP(instr...) _str(instr)
+#endif
+
#endif
next prev parent reply other threads:[~2010-09-02 17:15 UTC|newest]
Thread overview: 115+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-17 10:53 [PATCH 0/4] Hacks to allow booting ARM SMP kernel on UP ARMv7 Tony Lindgren
2010-08-17 10:53 ` [PATCH 1/4] ARM: Add SMP_ON_UP Kconfig option for booting SMP kernel on UP Tony Lindgren
2010-08-17 10:53 ` [PATCH 2/4] ARM: Allow optional UP processor functions for SMP kernels Tony Lindgren
2010-08-17 11:08 ` Russell King - ARM Linux
2010-08-17 11:20 ` Tony Lindgren
2010-08-17 10:53 ` [PATCH 3/4] ARM: Set separate proc-v7 functions for SMP Tony Lindgren
2010-08-17 10:53 ` [PATCH 4/4] omap: Fix SMP on UP interrupt handling for multi-omap Tony Lindgren
2010-08-17 11:07 ` srinidhi
2010-08-17 11:30 ` Tony Lindgren
2010-08-17 12:14 ` srinidhi
2010-08-17 14:14 ` Tony Lindgren
2010-08-17 15:07 ` Shilimkar, Santosh
2010-09-02 16:27 ` Tony Lindgren
2010-08-17 13:52 ` [PATCH 0/4] Hacks to allow booting ARM SMP kernel on UP ARMv7 Russell King - ARM Linux
2010-08-17 14:12 ` Tony Lindgren
2010-08-17 15:40 ` Russell King - ARM Linux
2010-08-19 7:38 ` Tony Lindgren
2010-08-19 9:38 ` Bryan Wu
2010-08-19 9:57 ` Tony Lindgren
2010-08-19 10:20 ` Russell King - ARM Linux
2010-08-20 12:06 ` Tony Lindgren
2010-08-30 22:55 ` Tony Lindgren
2010-09-02 13:36 ` Russell King - ARM Linux
2010-09-02 16:16 ` Tony Lindgren
2010-09-02 16:18 ` [PATCH 1/6] ARM: Add inline function smp_on_up() for early init testing Tony Lindgren
2010-09-02 17:08 ` Russell King - ARM Linux
2010-09-02 17:15 ` Tony Lindgren [this message]
2010-09-02 17:42 ` Tony Lindgren
2010-09-02 19:26 ` [PATCH 1/6] ARM: Add inline function smp_cpu() " Tony Lindgren
2010-09-03 0:08 ` Tony Lindgren
2010-09-03 2:22 ` Tony Lindgren
2010-09-03 8:58 ` Will Deacon
[not found] ` <004601cb4b46$2bf3c120$83db4360$@deacon@arm.com>
2010-09-03 9:02 ` Russell King - ARM Linux
2010-09-03 9:07 ` Will Deacon
2010-09-03 12:12 ` Shilimkar, Santosh
2010-09-03 12:23 ` Will Deacon
[not found] ` <004d01cb4b62$d49c91a0$7dd5b4e0$@deacon@arm.com>
2010-09-03 12:31 ` Shilimkar, Santosh
2010-09-05 1:53 ` Michał Nazarewicz
2010-09-03 12:09 ` [PATCH 1/6] ARM: Add inline function smp_on_up() " Shilimkar, Santosh
2010-09-06 10:17 ` Bryan Wu
2010-09-08 3:26 ` Tony Lindgren
2010-09-08 20:26 ` Tony Lindgren
2010-09-09 3:45 ` Bryan Wu
2010-09-02 16:19 ` [PATCH 2/6] ARM: Use SMP and UP macros for cacheflush Tony Lindgren
2010-09-03 11:57 ` Shilimkar, Santosh
2010-09-04 10:57 ` Russell King - ARM Linux
2010-09-04 11:01 ` Shilimkar, Santosh
2010-09-02 16:20 ` [PATCH 3/6] ARM: Fix v7wbi_tlb_flags for SMP on UP Tony Lindgren
2010-09-02 16:25 ` Russell King - ARM Linux
2010-09-02 16:34 ` Tony Lindgren
2010-09-02 23:47 ` Tony Lindgren
2010-09-03 9:07 ` Russell King - ARM Linux
2010-09-03 9:10 ` Russell King - ARM Linux
2010-09-03 17:04 ` Tony Lindgren
2010-09-03 19:36 ` Russell King - ARM Linux
2010-09-06 11:46 ` Catalin Marinas
2010-09-06 15:34 ` Russell King - ARM Linux
2010-09-06 15:53 ` Catalin Marinas
2010-09-06 16:36 ` Russell King - ARM Linux
2010-09-06 17:11 ` Catalin Marinas
2010-09-02 16:21 ` [PATCH 4/6] ARM: Do not call test_for_ipi or test_for_ltrirq on UP systems Tony Lindgren
2010-09-03 12:00 ` Shilimkar, Santosh
2010-09-04 10:55 ` Russell King - ARM Linux
2010-09-04 10:55 ` Russell King - ARM Linux
2010-09-02 16:22 ` [PATCH 5/6] ARM: Don't set TLB ops broadcasting on UP ARMv7 Tony Lindgren
2010-09-02 16:57 ` Russell King - ARM Linux
2010-09-02 17:21 ` Tony Lindgren
2010-09-02 18:01 ` Russell King - ARM Linux
2010-09-02 18:13 ` Tony Lindgren
2010-09-02 18:18 ` Russell King - ARM Linux
2010-09-02 16:23 ` [PATCH 6/6] omap: Fix SMP on UP interrupt handling for multi-omap Tony Lindgren
2010-09-02 19:30 ` Tony Lindgren
2010-09-03 12:15 ` Shilimkar, Santosh
2010-09-08 3:30 ` Tony Lindgren
2010-09-03 12:06 ` Shilimkar, Santosh
2010-09-04 11:05 ` Russell King - ARM Linux
2010-09-04 11:22 ` Shilimkar, Santosh
2010-09-03 4:20 ` [PATCH 0/4] Hacks to allow booting ARM SMP kernel on UP ARMv7 Bryan Wu
2010-09-03 7:46 ` Russell King - ARM Linux
2010-09-06 9:28 ` Catalin Marinas
2010-09-06 9:34 ` Russell King - ARM Linux
2010-09-06 9:38 ` Catalin Marinas
2010-09-06 10:06 ` Russell King - ARM Linux
2010-09-06 10:39 ` Catalin Marinas
2010-09-02 13:33 ` Russell King - ARM Linux
2010-09-03 1:39 ` Tony Lindgren
2010-08-23 16:59 ` Will Deacon
[not found] ` <000601cb42e4$85c7ed80$9157c880$@deacon@arm.com>
2010-08-30 22:53 ` Tony Lindgren
2010-09-06 10:44 ` Russell King - ARM Linux
2010-09-06 15:16 ` Catalin Marinas
2010-09-06 18:03 ` Tony Lindgren
2010-09-08 3:09 ` Tony Lindgren
2010-09-08 3:12 ` [PATCH] ARM: Check for is_smp for tlb_ops and cache_ops boardcast Tony Lindgren
2010-09-08 3:14 ` [PATCH] ARM: Don't try to send IPI on UP systems with CONFIG_SMP Tony Lindgren
2010-09-08 3:17 ` [PATCH] omap: Fix CONFIG_LOCAL_TIMERS initialization for multi-omap Tony Lindgren
2010-09-08 7:26 ` Shilimkar, Santosh
2010-09-08 7:30 ` [PATCH] ARM: Don't try to send IPI on UP systems with CONFIG_SMP Shilimkar, Santosh
2010-09-08 8:56 ` Russell King - ARM Linux
2010-09-08 19:32 ` Tony Lindgren
2010-10-05 22:19 ` [PATCH] ARM: Check for is_smp for tlb_ops and cache_ops boardcast Tony Lindgren
2010-10-05 22:33 ` Russell King - ARM Linux
2010-10-06 14:44 ` Tony Lindgren
2010-10-06 22:33 ` Russell King - ARM Linux
2010-10-06 23:07 ` Tony Lindgren
2010-09-14 18:59 ` [PATCH] ARM: Handle __flush_icache_all for CONFIG_SMP_ON_UP Tony Lindgren
2010-09-14 19:03 ` [PATCH] omap: Update omap3_defconfig to work with SMP_ON_UP Tony Lindgren
2010-09-14 19:05 ` [PATCH] omap: Update omap3_defconfig for omap2 Tony Lindgren
2010-09-14 19:17 ` [PATCH] omap: Update omap3_defconfig to work with SMP_ON_UP Shilimkar, Santosh
2010-09-14 20:27 ` Tony Lindgren
2010-09-15 6:11 ` Shilimkar, Santosh
2010-09-15 16:11 ` Tony Lindgren
2010-09-15 18:25 ` Shilimkar, Santosh
2010-09-15 23:15 ` Tony Lindgren
2010-09-16 17:05 ` [PATCH] ARM: Handle __flush_icache_all for CONFIG_SMP_ON_UP Catalin Marinas
2010-09-21 16:16 ` 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=20100902171502.GS11597@atomide.com \
--to=tony@atomide.com \
--cc=bryan.wu@canonical.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=will.deacon@arm.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: 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;
as well as URLs for NNTP newsgroup(s).