From: Sascha Hauer <s.hauer@pengutronix•de>
To: Andrey Volkov <avolkov@varma-el•com>
Cc: Sylvain Munaut <tnt@246tNt•com>,
Paul Mackerras <paulus@samba•org>,
Linuxppc-embedded <Linuxppc-embedded@ozlabs•org>
Subject: Re: MPC5200 + LocalPlus Bus + memcpy
Date: Fri, 7 Apr 2006 09:37:01 +0200 [thread overview]
Message-ID: <20060407073701.GC10831@localhost.localdomain> (raw)
In-Reply-To: <583603349.20060406182144@varma-el.com>
Hello,
On Thu, Apr 06, 2006 at 06:21:44PM +0400, Andrey Volkov wrote:
> Hello, Sascha.
>
> On Wednesday, April 5, 2006, Sascha Hauer wrote:
>
> > Hi all,
>
> > I try to use jffs2 on a flash device connected to the mpc5200
> > LocalPlus Bus. This bus does not allow misaligned accesses.
> > The jffs2 code uses memcpy to copy from a word aligned address to an
> > odd address. The ppc memcpy implementation first copies three bytes to get
> > the target address word aligned, but then the source address is on an
> > odd address. The following word accesses on this unaligned address fail
> > badly.
> Invalid crc on 'name' field ;)?
Yes, exactly ;)
>
> > I have fixed my problem by modifying the physmap mtd driver, but some
> > day someone wants to connect SRAM to the LocalPlus Bus and I guess he
> > will expect memcpy to work.
> Heh, I'll have same problem. Patch (dirty hack)
> attached (vs head of vanilla 2.6. tree)
>
> > (BTW the arm implementation of memcpy seems to work around this problem)
> Wrong, memcpy to/from SDRAM _may_ be unaligned, only
> memcpy_fromio/memcpy_toio _must_ be aligned to even addresses.
Hm, then a proper fix would be:
- implement an optimized version of memcpy_fromio/memcpy_toio, this
could be a version of memcpy which only alignes on the io side
- use memcpy_fromio/memcpy_toio in jffs2 code
Do I see this right?
Is SRAM considered io? I know (Arm-)Boards which do not have SDRAM, they
run completely from SRAM.
>
> P.S.
> Paul, Sylvain, any suggestions to fix it?
> AFAIK, memcpy_to/from_io must be it string.s, isn't it?
>
> P.P.S Sacha if you start to write mscan driver, then please wait a
> week, I planned to send my work to can-socket at next Friday.
No I haven't started yet, and I will happily wait another week ;)
Sascha
next prev parent reply other threads:[~2006-04-07 7:37 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-05 11:38 MPC5200 + LocalPlus Bus + memcpy Sascha Hauer
2006-04-06 14:21 ` Andrey Volkov
2006-04-07 7:37 ` Sascha Hauer [this message]
2006-04-07 8:57 ` Re[2]: " Andrey Volkov
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=20060407073701.GC10831@localhost.localdomain \
--to=s.hauer@pengutronix$(echo .)de \
--cc=Linuxppc-embedded@ozlabs$(echo .)org \
--cc=avolkov@varma-el$(echo .)com \
--cc=paulus@samba$(echo .)org \
--cc=tnt@246tNt$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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