patch for 64 bit wide flash
Jörn Engel
joern at wohnheim.fh-wedel.de
Thu Feb 14 11:48:13 EST 2002
Hi!
> in my physmap.c (I should probably check this in):
>
> __u64 physmap_read64(struct map_info *map, unsigned long ofs)
> {
> #ifndef __raw_readll
> #error Your architecture needs a __raw_readll in asm/io.h
> #endif
> return __raw_readll(map->map_priv_1 + ofs);
> }
It is already checked in. As a result, I hit your #error and was
really happy. ;-)
David said, he fixed that, but I haven't checked yet.
> #define __raw_readll(addr) (*(volatile unsigned long long*)(addr))
> #define __raw_writell(v, addr) (*(volatile unsigned long long*)(addr) = (v))
> > I have another version of 64-bit bus support which does not change any of
> > the variable types and only changes one function prototype. It probably is
> > not as fast as this 64-bit version, assuming that it is really doing 64-bit
> > bus accesses, but it is a very low impact solution.
>
> Whether or not you really do 64 bit bus accesses is going to be compiler
> dependant. If it does, then everything is good. If it doesn't, it most
> likely won't be any worse than anything you come up with by hand. IMHO
> it would be a shame to break this for people who have tools which really
> do 64 bit accesses on architectures that can benefit from it.
I agree. This solution appears quite sound and solid. It only has to
have a little more testing, as there is propably only one user, to
this moment. Adam, count me in, as soon as I find a little free time.
--
Remember that not getting what you want is sometimes a wonderful
stroke of luck.
-- reputely from the Dalai Lama, unverified
More information about the linux-mtd
mailing list