From: Sebastian Reichel <sre@debian.org>
To: Sebastian Reichel <sre@debian.org>, Tony Lindgren <tony@atomide.com>
Cc: linux-omap@vger.kernel.org, linux-kernel@vger.kernel.org,
"Pali Rohár" <pali.rohar@gmail.com>,
"Ivaylo Dimitrov" <ivo.g.dimitrov.75@gmail.com>
Subject: [PATCHv2] ARM: OMAP2+: Add support for thumb mode on DT booted N900
Date: Mon, 17 Feb 2014 22:30:58 +0100 [thread overview]
Message-ID: <1392672658-13866-1-git-send-email-sre@debian.org> (raw)
In-Reply-To: <1391603582-11371-1-git-send-email-sre@debian.org>
Without enabling the workaround for ARM errata 430973 thumb
compiled userland crashes randomly on the Nokia N900.
Signed-off-by: Sebastian Reichel <sre@debian.org>
Reviewed-by: Pavel Machek <pavel@ucw.cz>
---
Hi,
This is PATCHv2 for the thumb errata workaround for N900 DT
boot, which should go into 3.14-rc.
Changes since PATCHv1:
* Add Reviewed-By: Pavel Machek
* Add more verbose warning about the errata as suggested by Pavel
I did not increase the verbose level, since the next higher verbose
level is pr_err and the message is not an error.
I think it would make sense to update the Kconfig entry for the errata to
enable the workaround by default for the Nokia N900. That should be done in
its own patch, though.
Apart from that it would be nice if errata workaround could be enabled
via DeviceTree instead of kernel configuration. This will require some
discussion though, so I think we should start with this patch for now.
-- Sebastian
---
arch/arm/mach-omap2/pdata-quirks.c | 20 +++++++++++++++++++-
1 file changed, 19 insertions(+), 1 deletion(-)
diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c
index 3d5b24d..0cc710d 100644
--- a/arch/arm/mach-omap2/pdata-quirks.c
+++ b/arch/arm/mach-omap2/pdata-quirks.c
@@ -22,6 +22,8 @@
#include "common-board-devices.h"
#include "dss-common.h"
#include "control.h"
+#include "omap-secure.h"
+#include "soc.h"
struct pdata_init {
const char *compatible;
@@ -169,6 +171,22 @@ static void __init am3517_evm_legacy_init(void)
omap_ctrl_writel(v, AM35XX_CONTROL_IP_SW_RESET);
omap_ctrl_readl(AM35XX_CONTROL_IP_SW_RESET); /* OCP barrier */
}
+
+static void __init nokia_n900_legacy_init(void)
+{
+ hsmmc2_internal_input_clk();
+
+ if (omap_type() == OMAP2_DEVICE_TYPE_SEC) {
+ if (IS_ENABLED(CONFIG_ARM_ERRATA_430973)) {
+ pr_info("RX-51: Enabling ARM errata 430973 workaround\n");
+ /* set IBE to 1 */
+ rx51_secure_update_aux_cr(BIT(6), 0);
+ } else {
+ pr_warning("RX-51: Not enabling ARM errata 430973 workaround\n");
+ pr_warning("Thumb binaries may crash randomly without this workaround\n");
+ }
+ }
+}
#endif /* CONFIG_ARCH_OMAP3 */
#ifdef CONFIG_ARCH_OMAP4
@@ -259,7 +277,7 @@ struct of_dev_auxdata omap_auxdata_lookup[] __initdata = {
static struct pdata_init pdata_quirks[] __initdata = {
#ifdef CONFIG_ARCH_OMAP3
{ "compulab,omap3-sbc-t3730", omap3_sbc_t3730_legacy_init, },
- { "nokia,omap3-n900", hsmmc2_internal_input_clk, },
+ { "nokia,omap3-n900", nokia_n900_legacy_init, },
{ "nokia,omap3-n9", hsmmc2_internal_input_clk, },
{ "nokia,omap3-n950", hsmmc2_internal_input_clk, },
{ "isee,omap3-igep0020", omap3_igep0020_legacy_init, },
--
1.8.5.3
next prev parent reply other threads:[~2014-02-17 21:31 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-05 12:33 [PATCH] " Sebastian Reichel
2014-02-05 13:12 ` Pali Rohár
2014-02-05 16:31 ` Sebastian Reichel
2014-02-05 16:38 ` Pali Rohár
2014-02-05 17:17 ` Sebastian Reichel
2014-02-05 20:30 ` Ivaylo Dimitrov
2014-02-06 0:39 ` Sebastian Reichel
2014-02-05 20:42 ` Pali Rohár
2014-02-06 0:25 ` Sebastian Reichel
2014-02-16 23:04 ` Pavel Machek
2014-02-17 21:30 ` Sebastian Reichel [this message]
2014-02-21 23:08 ` [PATCHv2] " Tony Lindgren
2014-03-01 21:32 ` Pali Rohár
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=1392672658-13866-1-git-send-email-sre@debian.org \
--to=sre@debian.org \
--cc=ivo.g.dimitrov.75@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=pali.rohar@gmail.com \
--cc=tony@atomide.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
all inboxes | Powered by JetHome®