All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Martin <dave.martin@linaro.org>
To: "Anderö, Oskar" <Oskar.Andero@sonyericsson.com>
Cc: Alexander Stevens <alexander.stevens@uqconnect.edu.au>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>
Subject: Re: [PATCH] arm: omap2: enable smc instruction for sleep34xx
Date: Tue, 19 Apr 2011 11:28:52 +0100	[thread overview]
Message-ID: <20110419102852.GA30588@arm.com> (raw)
In-Reply-To: <00D61D20F3A8774CBC77798B3FBC427082058F9871@seldmbx02.corpusers.net>

On Tue, Apr 19, 2011 at 12:13:26PM +0200, "Anderö, Oskar" wrote:
> > > > Ping!
> > > >
> > > > Anyone else that gets bitten by the following when compiling
> > > omap2plus_defconfig with gcc 4.5:
> > > > arch/arm/mach-omap2/sleep34xx.S:150: Error: selected processor does
> > not
> > > support ARM mode `smc #1'
> > > >
> > > > -Oskar
> > > >
> > >
> > > I can report that I get the exact same compile error as this.
> > > OP patch worked beautifully.
> > >
> > > -Alex
> > 
> > Can you check what options are being passed to the compiler
> > and the assembler, and check for .arch / .arch_extension directives
> > in the assembler input?
> > 
> > i.e.,
> > 
> > make V=1 CFLAGS_KERNEL='-v -save-temps' arch/arm/mach-omap2/sleep34xx.o
> > 
> > ...and look at the output and the generated sleep34xx.s
> > 
> > Maybe the options being passed to the compiler/assembler are wrong
> > somewhere along the line.
> Yes, the "+sec" extension of armv7-a (i.e. -march=armv7-a+sec) is missing and hence the smc instruction can't be used. This is what my patch fixes. I guess earlier versions of binutils silently ignored this.
> 
> It's not visible in my patch, but plus_sec is declared as:
> plus_sec := $(call as-instr,.arch_extension sec,+sec)

Ah right, I was slightly confused by the context.

You're right -- sleep34xx.S also needs this change in the Makefile,
as per your patch.  This isn't new; the original patch focused on
omap4, so I guess this file was just missed.

Cheers
---Dave

> 
> The following patch added the same extension for some of the other files, but I guess sleep34xx.S was missed or maybe added later:
> commit fe297dde5ae8f8bf67d3a87759289a99b48ecb2c
> Author: John Rigby <john.rigby@linaro.org>
> Date:   Wed Dec 1 05:57:51 2010 +0000
> 
>     OMAP4: enable smc instruction in new assembler versions
>     
>     New assemblers need -march=armv7-a+sec on command line or
>     .arch_extension sec inline to enable use of the smc instruction.
> <snip>
> 
> -Oskar
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: dave.martin@linaro.org (Dave Martin)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] arm: omap2: enable smc instruction for sleep34xx
Date: Tue, 19 Apr 2011 11:28:52 +0100	[thread overview]
Message-ID: <20110419102852.GA30588@arm.com> (raw)
In-Reply-To: <00D61D20F3A8774CBC77798B3FBC427082058F9871@seldmbx02.corpusers.net>

On Tue, Apr 19, 2011 at 12:13:26PM +0200, "Ander?, Oskar" wrote:
> > > > Ping!
> > > >
> > > > Anyone else that gets bitten by the following when compiling
> > > omap2plus_defconfig with gcc 4.5:
> > > > arch/arm/mach-omap2/sleep34xx.S:150: Error: selected processor does
> > not
> > > support ARM mode `smc #1'
> > > >
> > > > -Oskar
> > > >
> > >
> > > I can report that I get the exact same compile error as this.
> > > OP patch worked beautifully.
> > >
> > > -Alex
> > 
> > Can you check what options are being passed to the compiler
> > and the assembler, and check for .arch / .arch_extension directives
> > in the assembler input?
> > 
> > i.e.,
> > 
> > make V=1 CFLAGS_KERNEL='-v -save-temps' arch/arm/mach-omap2/sleep34xx.o
> > 
> > ...and look at the output and the generated sleep34xx.s
> > 
> > Maybe the options being passed to the compiler/assembler are wrong
> > somewhere along the line.
> Yes, the "+sec" extension of armv7-a (i.e. -march=armv7-a+sec) is missing and hence the smc instruction can't be used. This is what my patch fixes. I guess earlier versions of binutils silently ignored this.
> 
> It's not visible in my patch, but plus_sec is declared as:
> plus_sec := $(call as-instr,.arch_extension sec,+sec)

Ah right, I was slightly confused by the context.

You're right -- sleep34xx.S also needs this change in the Makefile,
as per your patch.  This isn't new; the original patch focused on
omap4, so I guess this file was just missed.

Cheers
---Dave

> 
> The following patch added the same extension for some of the other files, but I guess sleep34xx.S was missed or maybe added later:
> commit fe297dde5ae8f8bf67d3a87759289a99b48ecb2c
> Author: John Rigby <john.rigby@linaro.org>
> Date:   Wed Dec 1 05:57:51 2010 +0000
> 
>     OMAP4: enable smc instruction in new assembler versions
>     
>     New assemblers need -march=armv7-a+sec on command line or
>     .arch_extension sec inline to enable use of the smc instruction.
> <snip>
> 
> -Oskar

  reply	other threads:[~2011-04-19 10:29 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-31 14:19 [PATCH] arm: omap2: enable smc instruction for sleep34xx oskar.andero
2011-04-18 15:51 ` "Anderö, Oskar"
2011-04-18 15:51   ` "Anderö, Oskar"
2011-04-18 15:51   ` "Anderö, Oskar"
2011-04-19  8:18   ` Alexander Stevens
2011-04-19  9:20     ` Dave Martin
2011-04-19 10:13       ` "Anderö, Oskar"
2011-04-19 10:13         ` "Anderö, Oskar"
2011-04-19 10:28         ` Dave Martin [this message]
2011-04-19 10:28           ` Dave Martin
2011-04-19 14:41           ` "Anderö, Oskar"
2011-04-19 14:41             ` "Anderö, Oskar"

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=20110419102852.GA30588@arm.com \
    --to=dave.martin@linaro.org \
    --cc=Oskar.Andero@sonyericsson.com \
    --cc=alexander.stevens@uqconnect.edu.au \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.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 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.