linux-m68k.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Greg Ungerer <gerg@snapgear.com>
To: Philippe De Muyter <phdm@macqel.be>
Cc: linux-m68k@vger.kernel.org, uclinux-dev@uclinux.org,
	Greg Ungerer <gerg@uclinux.org>
Subject: Re: [PATCH] m68knommu: allow ColdFire CPUs to use unaligned accesses
Date: Tue, 12 Jun 2012 12:25:44 +1000	[thread overview]
Message-ID: <4FD6A8A8.1070809@snapgear.com> (raw)
In-Reply-To: <20120608133503.GA12617@frolo.macqel>

Hi Philippe,

On 08/06/12 23:35, Philippe De Muyter wrote:
> On Fri, Jun 08, 2012 at 10:19:43PM +1000, Greg Ungerer wrote:
>> Hi Philippe,
>>
>> On 06/08/2012 08:39 PM, Philippe De Muyter wrote:
>>> On Fri, Jun 08, 2012 at 03:43:00PM +1000, gerg@snapgear.com wrote:
>>>> From: Greg Ungerer<gerg@uclinux.org>
>>>>
>>>> All current ColdFire CPUs are able to support unaligned memory accesses.
>>>> So remove the CONFIG_CPU_HAS_NO_UNALIGNED option selection for ColdFire.
>>>>
>>>> It seems that the current restriction was inherrited from the early
>>>> non-MMU
>>>> support for the basic 68000 proecssors - which do not support unaligned
>>>> accesses.
>>>
>>> It seems that the first ColdFires needed the restriction :
>>>
>>> I read in the "MCF5200 ColdFire Family ProgrammerÆs Reference Manual"
>>> :
>>>
>>> The ColdFire processor default configuration supports word- and
>>> longword-sized operand references on 0-modulo-2 and 0-modulo-4
>>> addresses, respectively. All other references are defined as
>>> misaligned accesses. Any attempt to access a misaligned operand
>>> generates an address-error exception, unless the optional hardware
>>> module for handling misalignment is present. This misalignment
>>> module converts any misaligned operand references into a series
>>> of aligned bus cycles to access the data. The existence of the
>>> misalignment module is implementation-dependent and is documented
>>> in the appropriate ColdFire userÆs manual.
>
> I mentionned that only to make you able to soften the commit comment :)

Ok, makes sense. I should probably have mentioned that this means
the ColdFire processors currently support by Linux :-)

Something like:

   All of the current Linux supported ColdFire CPUs handle unaligned
   memory accesses. So remove the CONFIG_CPU_HAS_NO_UNALIGNED option
   selection for ColdFire. If we ever support a specific ColdFire CPU
   that does not support unaligned accesses then we can insert the
   CONFIG_CPU_HAS_NO_UNALIGNED for that specific CPU type.


>> I wish Freescale really did make that clear within the doco for each
>> part!
>>
>> The oldest (and I assume simplest) part we support is the 5206, and it
>> does explicitly state in the MCF5206UM that it supports unaligned
>> accesses (Section 6.6). It is not as clear as this in some of the
>> other CPU/SoC User Manuals that I looked through.
>>
>> I am pretty confident that all the parts we currently support in Linux
>> do unaligned accesses.
>
> I agree.  And if some parts did not implement it, we'd see it quickly.

Yep.

Regards
Greg


------------------------------------------------------------------------
Greg Ungerer  --  Principal Engineer        EMAIL:     gerg@snapgear.com
SnapGear Group, McAfee                      PHONE:       +61 7 3435 2888
8 Gardner Close                             FAX:         +61 7 3217 5323
Milton, QLD, 4064, Australia                WEB: http://www.SnapGear.com

  reply	other threads:[~2012-06-12  2:27 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-08  5:43 [PATCH] m68knommu: allow ColdFire CPUs to use unaligned accesses gerg
2012-06-08  7:19 ` Geert Uytterhoeven
2012-06-08  9:10   ` Greg Ungerer
2012-06-08 10:39 ` Philippe De Muyter
2012-06-08 12:19   ` Greg Ungerer
2012-06-08 13:35     ` Philippe De Muyter
2012-06-12  2:25       ` Greg Ungerer [this message]
2012-06-12  7:26         ` Philippe De Muyter
2012-06-12 20:27           ` Geert Uytterhoeven
2012-06-13  0:27             ` Greg Ungerer

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=4FD6A8A8.1070809@snapgear.com \
    --to=gerg@snapgear.com \
    --cc=gerg@uclinux.org \
    --cc=linux-m68k@vger.kernel.org \
    --cc=phdm@macqel.be \
    --cc=uclinux-dev@uclinux.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 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).