All of lore.kernel.org
 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 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.