RE: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-07 Thread Santosh Shilimkar
> -Original Message-
> From: Kevin Hilman [mailto:khil...@ti.com]
> Sent: Tuesday, March 08, 2011 3:05 AM
> To: Santosh Shilimkar
> Cc: Dave Martin; linux-arm-ker...@lists.infradead.org;
> patc...@linaro.org; Tony Lindgren; Jean Pihet-XID; linux-
> o...@vger.kernel.org; Nicolas Pitre; linaro-...@lists.linaro.org
> Subject: Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2
> compatibility fixes
>
> Santosh Shilimkar  writes:
>
> > Dave,
> >> -Original Message-
> >> From: Dave Martin [mailto:dave.mar...@linaro.org]
> >> Sent: Friday, March 04, 2011 11:05 PM
> >> To: linux-arm-ker...@lists.infradead.org
> >> Cc: patc...@linaro.org; Tony Lindgren; Santosh Shilimkar; Jean
> >> Pihet; Kevin Hilman; linux-omap@vger.kernel.org; Nicolas Pitre;
> >> linaro-...@lists.linaro.org
> >> Subject: Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2
> >> compatibility fixes
> >>
> >> On Fri, Mar 4, 2011 at 3:33 PM, Dave Martin
> 
> >> wrote:
> >> > This set of patches, along with some other patches under
> >> > discussion on alkml, should enable omap3 and omap4 kernels to
> be
> >> > built with CONFIG_THUMB2_KERNEL.
> >> >
> >> > This patch set builds on recent cleanup done by the omap
> >> > maintainers.
> >> >
> >> > At least some of this code definitely works, most features have
> >> > been tested successfully.  Further testing, especially of
> Thumb-2
> >> > behaviour, is still welcome.
> >> >
> >> > In particular, I still have no Ack/Tested-by on the following
> >> > patches, so it would be great if anyone who has an opportunity
> >> > to do a final review / re-test can do so.
> >> >
> >> >  * ARM: omap3: Convert END() to ENDPROC() for correct linkage
> with
> >> CONFIG_THUMB2_KERNEL
> >> >  * ARM: omap3: Thumb-2 compatibility for sram34xx.S
> >> >  * ARM: omap3: Thumb-2 compatibility for sleep34xx.S
> >>
> >> Following up on this, it looks like I have some locally-recorded
> >> acks
> >> which didn't make it into my posting ...
> >>
> >> The one patch I currently have no feedback on is this one:
> >>
> >>   * ARM: omap4: Provide do_wfi() for Thumb-2
> >>
> > You can drop this one since do_wfi()  won't be needed
> > anymore after my recent series.
> >
> > http://www.spinics.net/lists/linux-omap/msg46495.html
>
> Santosh,
>
> I'm planning to queue/merge Dave's series as-is for 2.6.39, since it
> has
> already received significan review & testing.
>
> When you update your OMAP4 series, feel free to drop it as needed.
>
Fine with me.

Regards,
Santosh
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-07 Thread Kevin Hilman
Dave Martin  writes:

> This set of patches, along with some other patches under
> discussion on alkml, should enable omap3 and omap4 kernels to be
> built with CONFIG_THUMB2_KERNEL.
>
> This patch set builds on recent cleanup done by the omap
> maintainers.
>
> At least some of this code definitely works, most features have
> been tested successfully.  Further testing, especially of Thumb-2
> behaviour, is still welcome.
>
> In particular, I still have no Ack/Tested-by on the following
> patches, so it would be great if anyone who has an opportunity
> to do a final review / re-test can do so.
>
>  * ARM: omap3: Convert END() to ENDPROC() for correct linkage with 
> CONFIG_THUMB2_KERNEL
>  * ARM: omap3: Thumb-2 compatibility for sram34xx.S
>  * ARM: omap3: Thumb-2 compatibility for sleep34xx.S

Jean Pihet and I have now done both retention and off-mode testing
of these, so I'll add a Tested-by for the last two for Jean and queue
these for 2.6.39 in my PM queue

  git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm.git 
for_2.6.39/pm-misc

If you want to do sanity checking with all the other OMAP PM stuff that
is queued for 2.6.39, feel free to test with my pm-core branch in the
tree above.  This has all OMAP PM related changes that will be queued
for 2.6.39 integrated.

FWIW, I also tested on 3430/n900 (retention and off-mode) and 3630/Zoom3
(retention-only, since the Si rev have has off-mode errata.)

Kevin

> Seems to work with CONFIG_SMP_ON_UP and CONFIG_THUMB2_KERNEL
> enabled on Beagle xM A2 and Panda A1.
>
> Thanks also to Santosh Shilimkar and Kevin Hilman for their help
> with testing so far.
>
>
> v3:
> * make SMC instruction syntax more consistent
> * remove do_wfi() in favour of the generic wfi() macro
>
> v4:
> * revert to the OMAP-specific do_wfi() implementation, pending
>   discussion of how generic macros can/should be provided
>
> v5:
> * use ARM for low-level code in mach-omap2/*34xx.S, for
>   correct interoperation with non-Thumb-capable firmware.
>
> I've stripped the Acked/Tested-bys from the major patches to
> mach-omap2/*34xx.S, since the reversion to ARM constitutes a
> significant change -- I would be grateful if people could re-
> test / re-review if they have the chance.
>
> For best future compatibility, I've left the changes which
> avoid architecturally deprecated features.
>
>
> Details below.
>
> Cheers,
> Dave
>
>
> The patches can be found, along with a buildable working tree,
> in the following repo:
>
> git://git.linaro.org/people/dmart/linux-2.6-arm.git
>
>  * arm/omap-thumb2: has the patches proposed here
>  * arm/omap-thumb2+merged: additionally has some patches cherry-
> picked from other trees which are needed in order for the
> patches on arm/omap-thumb2 to work usefully.
>  * dirty/arm/omap-thumb2+merged: buildable test tree, which adds
> 2 local patches to work around a toolchain bug.
>
> A working kernel config for this tree is here:
> http://people.linaro.org/~dmart/arm_omap-thumb2+v2_config :
>
>   CONFIG_SMP_ON_UP=y
>   CONFIG_THUMB2_KERNEL=y
>   CONFIG_SERIAL_OMAP=y (to avoid garbage on xM; for Panda use console=ttyS2)
>
> (The config is derived from the linaro omap config and so turns on
> loads of modules -- don't feel you have to build them all...)
>
>
> Cherry-picked patches originated from Russell's devel tree
> and Tony Lindgren's omap-testing tree:
>
> http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm.git 
> devel
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git 
> omap-testing
>
> This series also depends on one un-merged patch to generic-ise
> the wfi() macro:
>
> git://git.linaro.org/people/dmart/linux-2.6-arm.git arm/wfi-macro
>
>
> Dave Martin (5):
>   ARM: omap4: Provide do_wfi() for Thumb-2
>   ARM: omap4: Convert END() to ENDPROC() for correct linkage with
> CONFIG_THUMB2_KERNEL
>   ARM: omap3: Remove hand-encoded SMC instructions
>   ARM: omap3: Thumb-2 compatibility for sram34xx.S
>   ARM: omap3: Thumb-2 compatibility for sleep34xx.S
>
>  arch/arm/mach-omap2/include/mach/omap4-common.h |4 ++
>  arch/arm/mach-omap2/omap-headsmp.S  |2 +-
>  arch/arm/mach-omap2/omap44xx-smc.S  |8 ++--
>  arch/arm/mach-omap2/sleep34xx.S |   62 ++
>  arch/arm/mach-omap2/sram34xx.S  |   36 ++---
>  5 files changed, 87 insertions(+), 25 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-07 Thread Kevin Hilman
Santosh Shilimkar  writes:

> Dave,
>> -Original Message-
>> From: Dave Martin [mailto:dave.mar...@linaro.org]
>> Sent: Friday, March 04, 2011 11:05 PM
>> To: linux-arm-ker...@lists.infradead.org
>> Cc: patc...@linaro.org; Tony Lindgren; Santosh Shilimkar; Jean
>> Pihet; Kevin Hilman; linux-omap@vger.kernel.org; Nicolas Pitre;
>> linaro-...@lists.linaro.org
>> Subject: Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2
>> compatibility fixes
>>
>> On Fri, Mar 4, 2011 at 3:33 PM, Dave Martin 
>> wrote:
>> > This set of patches, along with some other patches under
>> > discussion on alkml, should enable omap3 and omap4 kernels to be
>> > built with CONFIG_THUMB2_KERNEL.
>> >
>> > This patch set builds on recent cleanup done by the omap
>> > maintainers.
>> >
>> > At least some of this code definitely works, most features have
>> > been tested successfully.  Further testing, especially of Thumb-2
>> > behaviour, is still welcome.
>> >
>> > In particular, I still have no Ack/Tested-by on the following
>> > patches, so it would be great if anyone who has an opportunity
>> > to do a final review / re-test can do so.
>> >
>> >  * ARM: omap3: Convert END() to ENDPROC() for correct linkage with
>> CONFIG_THUMB2_KERNEL
>> >  * ARM: omap3: Thumb-2 compatibility for sram34xx.S
>> >  * ARM: omap3: Thumb-2 compatibility for sleep34xx.S
>>
>> Following up on this, it looks like I have some locally-recorded
>> acks
>> which didn't make it into my posting ...
>>
>> The one patch I currently have no feedback on is this one:
>>
>>   * ARM: omap4: Provide do_wfi() for Thumb-2
>>
> You can drop this one since do_wfi()  won't be needed
> anymore after my recent series.
>
> http://www.spinics.net/lists/linux-omap/msg46495.html

Santosh,

I'm planning to queue/merge Dave's series as-is for 2.6.39, since it has
already received significan review & testing.

When you update your OMAP4 series, feel free to drop it as needed.

Kevin
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-07 Thread Dave Martin
On Fri, Mar 4, 2011 at 9:42 PM, Kevin Hilman  wrote:
> Dave Martin  writes:
>
>> On Fri, Mar 4, 2011 at 5:47 PM, Tony Lindgren  wrote:
>>> * Santosh Shilimkar  [110304 09:36]:
 >
 > Following up on this, it looks like I have some locally-recorded
 > acks
 > which didn't make it into my posting ...
>>>
>>> To me looks like this is ready to go, but I'd like to see Kevin's
>>> acks on this one as this touches the PM code.
>>>
>>> Or if Kevin wants to take the series, here's my ack for the series:
>>>
>>> Acked-by: Tony Lindgren 
>
> Yeah, I'll queue this series.
>
>> Thanks -- I'll wait for Kevin to comment also.
>
> I have to give one more round of sanity testing to this series, but
> otherwise I have no outstanding issues.  I also need to coordinate with
> Santosh on this because he has an additional cleanup series that touches
> the same code.
>
> Dave, just to confirm something The outstanding toolchain bugs only
> affect compiling in Thumb-2 mode, right?  IOW, if I merge just this
> series (without having the other toolchain workaround patches) we should
> still be able to compile/run fine in ARM mode, correct?

Yes, that's right.

Cheers
---Dave
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-04 Thread Nicolas Pitre
On Fri, 4 Mar 2011, Kevin Hilman wrote:

> Dave, just to confirm something The outstanding toolchain bugs only
> affect compiling in Thumb-2 mode, right?  IOW, if I merge just this
> series (without having the other toolchain workaround patches) we should
> still be able to compile/run fine in ARM mode, correct?

Correct.


Nicolas
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-04 Thread Kevin Hilman
Dave Martin  writes:

> On Fri, Mar 4, 2011 at 5:47 PM, Tony Lindgren  wrote:
>> * Santosh Shilimkar  [110304 09:36]:
>>> >
>>> > Following up on this, it looks like I have some locally-recorded
>>> > acks
>>> > which didn't make it into my posting ...
>>
>> To me looks like this is ready to go, but I'd like to see Kevin's
>> acks on this one as this touches the PM code.
>>
>> Or if Kevin wants to take the series, here's my ack for the series:
>>
>> Acked-by: Tony Lindgren 

Yeah, I'll queue this series.

> Thanks -- I'll wait for Kevin to comment also.

I have to give one more round of sanity testing to this series, but
otherwise I have no outstanding issues.  I also need to coordinate with
Santosh on this because he has an additional cleanup series that touches
the same code.

Dave, just to confirm something The outstanding toolchain bugs only
affect compiling in Thumb-2 mode, right?  IOW, if I merge just this
series (without having the other toolchain workaround patches) we should
still be able to compile/run fine in ARM mode, correct?

Kevin


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-04 Thread Dave Martin
On Fri, Mar 4, 2011 at 5:47 PM, Tony Lindgren  wrote:
> * Santosh Shilimkar  [110304 09:36]:
>> >
>> > Following up on this, it looks like I have some locally-recorded
>> > acks
>> > which didn't make it into my posting ...
>
> To me looks like this is ready to go, but I'd like to see Kevin's
> acks on this one as this touches the PM code.
>
> Or if Kevin wants to take the series, here's my ack for the series:
>
> Acked-by: Tony Lindgren 

Thanks -- I'll wait for Kevin to comment also.

Cheers
---Dave
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-04 Thread Tony Lindgren
* Santosh Shilimkar  [110304 09:36]:
> >
> > Following up on this, it looks like I have some locally-recorded
> > acks
> > which didn't make it into my posting ...

To me looks like this is ready to go, but I'd like to see Kevin's
acks on this one as this touches the PM code.

Or if Kevin wants to take the series, here's my ack for the series:

Acked-by: Tony Lindgren 

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-04 Thread Santosh Shilimkar
Dave,
> -Original Message-
> From: Dave Martin [mailto:dave.mar...@linaro.org]
> Sent: Friday, March 04, 2011 11:05 PM
> To: linux-arm-ker...@lists.infradead.org
> Cc: patc...@linaro.org; Tony Lindgren; Santosh Shilimkar; Jean
> Pihet; Kevin Hilman; linux-omap@vger.kernel.org; Nicolas Pitre;
> linaro-...@lists.linaro.org
> Subject: Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2
> compatibility fixes
>
> On Fri, Mar 4, 2011 at 3:33 PM, Dave Martin 
> wrote:
> > This set of patches, along with some other patches under
> > discussion on alkml, should enable omap3 and omap4 kernels to be
> > built with CONFIG_THUMB2_KERNEL.
> >
> > This patch set builds on recent cleanup done by the omap
> > maintainers.
> >
> > At least some of this code definitely works, most features have
> > been tested successfully.  Further testing, especially of Thumb-2
> > behaviour, is still welcome.
> >
> > In particular, I still have no Ack/Tested-by on the following
> > patches, so it would be great if anyone who has an opportunity
> > to do a final review / re-test can do so.
> >
> >  * ARM: omap3: Convert END() to ENDPROC() for correct linkage with
> CONFIG_THUMB2_KERNEL
> >  * ARM: omap3: Thumb-2 compatibility for sram34xx.S
> >  * ARM: omap3: Thumb-2 compatibility for sleep34xx.S
>
> Following up on this, it looks like I have some locally-recorded
> acks
> which didn't make it into my posting ...
>
> The one patch I currently have no feedback on is this one:
>
>   * ARM: omap4: Provide do_wfi() for Thumb-2
>
You can drop this one since do_wfi()  won't be needed
anymore after my recent series.

http://www.spinics.net/lists/linux-omap/msg46495.html
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-04 Thread Dave Martin
On Fri, Mar 4, 2011 at 3:33 PM, Dave Martin  wrote:
> This set of patches, along with some other patches under
> discussion on alkml, should enable omap3 and omap4 kernels to be
> built with CONFIG_THUMB2_KERNEL.
>
> This patch set builds on recent cleanup done by the omap
> maintainers.
>
> At least some of this code definitely works, most features have
> been tested successfully.  Further testing, especially of Thumb-2
> behaviour, is still welcome.
>
> In particular, I still have no Ack/Tested-by on the following
> patches, so it would be great if anyone who has an opportunity
> to do a final review / re-test can do so.
>
>  * ARM: omap3: Convert END() to ENDPROC() for correct linkage with 
> CONFIG_THUMB2_KERNEL
>  * ARM: omap3: Thumb-2 compatibility for sram34xx.S
>  * ARM: omap3: Thumb-2 compatibility for sleep34xx.S

Following up on this, it looks like I have some locally-recorded acks
which didn't make it into my posting ...

The one patch I currently have no feedback on is this one:

  * ARM: omap4: Provide do_wfi() for Thumb-2

Cheers
---Dave
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH v5 REPOST 0/5] ARM: omap[34]: Thumb-2 compatibility fixes

2011-03-04 Thread Dave Martin
This set of patches, along with some other patches under
discussion on alkml, should enable omap3 and omap4 kernels to be
built with CONFIG_THUMB2_KERNEL.

This patch set builds on recent cleanup done by the omap
maintainers.

At least some of this code definitely works, most features have
been tested successfully.  Further testing, especially of Thumb-2
behaviour, is still welcome.

In particular, I still have no Ack/Tested-by on the following
patches, so it would be great if anyone who has an opportunity
to do a final review / re-test can do so.

 * ARM: omap3: Convert END() to ENDPROC() for correct linkage with 
CONFIG_THUMB2_KERNEL
 * ARM: omap3: Thumb-2 compatibility for sram34xx.S
 * ARM: omap3: Thumb-2 compatibility for sleep34xx.S


Seems to work with CONFIG_SMP_ON_UP and CONFIG_THUMB2_KERNEL
enabled on Beagle xM A2 and Panda A1.

Thanks also to Santosh Shilimkar and Kevin Hilman for their help
with testing so far.


v3:
* make SMC instruction syntax more consistent
* remove do_wfi() in favour of the generic wfi() macro

v4:
* revert to the OMAP-specific do_wfi() implementation, pending
  discussion of how generic macros can/should be provided

v5:
* use ARM for low-level code in mach-omap2/*34xx.S, for
  correct interoperation with non-Thumb-capable firmware.

I've stripped the Acked/Tested-bys from the major patches to
mach-omap2/*34xx.S, since the reversion to ARM constitutes a
significant change -- I would be grateful if people could re-
test / re-review if they have the chance.

For best future compatibility, I've left the changes which
avoid architecturally deprecated features.


Details below.

Cheers,
Dave


The patches can be found, along with a buildable working tree,
in the following repo:

git://git.linaro.org/people/dmart/linux-2.6-arm.git

 * arm/omap-thumb2: has the patches proposed here
 * arm/omap-thumb2+merged: additionally has some patches cherry-
picked from other trees which are needed in order for the
patches on arm/omap-thumb2 to work usefully.
 * dirty/arm/omap-thumb2+merged: buildable test tree, which adds
2 local patches to work around a toolchain bug.

A working kernel config for this tree is here:
http://people.linaro.org/~dmart/arm_omap-thumb2+v2_config :

  CONFIG_SMP_ON_UP=y
  CONFIG_THUMB2_KERNEL=y
  CONFIG_SERIAL_OMAP=y (to avoid garbage on xM; for Panda use console=ttyS2)

(The config is derived from the linaro omap config and so turns on
loads of modules -- don't feel you have to build them all...)


Cherry-picked patches originated from Russell's devel tree
and Tony Lindgren's omap-testing tree:

http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm.git devel

git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git 
omap-testing

This series also depends on one un-merged patch to generic-ise
the wfi() macro:

git://git.linaro.org/people/dmart/linux-2.6-arm.git arm/wfi-macro


Dave Martin (5):
  ARM: omap4: Provide do_wfi() for Thumb-2
  ARM: omap4: Convert END() to ENDPROC() for correct linkage with
CONFIG_THUMB2_KERNEL
  ARM: omap3: Remove hand-encoded SMC instructions
  ARM: omap3: Thumb-2 compatibility for sram34xx.S
  ARM: omap3: Thumb-2 compatibility for sleep34xx.S

 arch/arm/mach-omap2/include/mach/omap4-common.h |4 ++
 arch/arm/mach-omap2/omap-headsmp.S  |2 +-
 arch/arm/mach-omap2/omap44xx-smc.S  |8 ++--
 arch/arm/mach-omap2/sleep34xx.S |   62 ++
 arch/arm/mach-omap2/sram34xx.S  |   36 ++---
 5 files changed, 87 insertions(+), 25 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html