[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220419163810.2118169-46-arnd@kernel.org>
Date: Tue, 19 Apr 2022 18:38:07 +0200
From: Arnd Bergmann <arnd@...nel.org>
To: robert.jarzmik@...e.fr, linux-arm-kernel@...ts.infradead.org
Cc: Arnd Bergmann <arnd@...db.de>, Daniel Mack <daniel@...que.org>,
Haojian Zhuang <haojian.zhuang@...il.com>,
Marek Vasut <marek.vasut@...il.com>,
Philipp Zabel <philipp.zabel@...il.com>,
Lubomir Rintel <lkundrak@...sk>,
Paul Parsons <lost.distance@...oo.com>,
Tomas Cech <sleep_walker@...e.com>,
Sergey Lapin <slapin@...fans.org>,
Thomas Bogendoerfer <tsbogend@...ha.franken.de>,
Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Viresh Kumar <viresh.kumar@...aro.org>,
Dmitry Torokhov <dmitry.torokhov@...il.com>,
Ulf Hansson <ulf.hansson@...aro.org>,
Dominik Brodowski <linux@...inikbrodowski.net>,
Helge Deller <deller@....de>, Mark Brown <broonie@...nel.org>,
Linus Walleij <linus.walleij@...aro.org>,
linux-kernel@...r.kernel.org, linux-mips@...r.kernel.org,
linux-ide@...r.kernel.org, linux-clk@...r.kernel.org,
linux-pm@...r.kernel.org, linux-input@...r.kernel.org,
patches@...nsource.cirrus.com, linux-leds@...r.kernel.org,
linux-mmc@...r.kernel.org, linux-mtd@...ts.infradead.org,
linux-rtc@...r.kernel.org, linux-usb@...r.kernel.org,
linux-fbdev@...r.kernel.org, dri-devel@...ts.freedesktop.org,
alsa-devel@...a-project.org
Subject: [PATCH 45/48] ARM: PXA: fix multi-cpu build of xsc3
From: Arnd Bergmann <arnd@...db.de>
On a kernel that includes both ARMv4 and XScale support,
the copypage function fails to build with invalid
instructions.
Since these are only called on an actual XScale processor,
annotate the assembly with the correct .arch directive.
Signed-off-by: Arnd Bergmann <arnd@...db.de>
---
arch/arm/mm/copypage-xsc3.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm/mm/copypage-xsc3.c b/arch/arm/mm/copypage-xsc3.c
index 6f0909dda2f9..c86e79677ff9 100644
--- a/arch/arm/mm/copypage-xsc3.c
+++ b/arch/arm/mm/copypage-xsc3.c
@@ -29,6 +29,7 @@ static void xsc3_mc_copy_user_page(void *kto, const void *kfrom)
int tmp;
asm volatile ("\
+.arch xscale \n\
pld [%1, #0] \n\
pld [%1, #32] \n\
1: pld [%1, #64] \n\
@@ -80,6 +81,7 @@ void xsc3_mc_clear_user_highpage(struct page *page, unsigned long vaddr)
{
void *ptr, *kaddr = kmap_atomic(page);
asm volatile ("\
+.arch xscale \n\
mov r1, %2 \n\
mov r2, #0 \n\
mov r3, #0 \n\
--
2.29.2
Powered by blists - more mailing lists