linux-stable-rt/arch/ppc/platforms
David Gibson 26ef5c0957 [PATCH] powerpc: Merge cacheflush.h and cache.h
The ppc32 and ppc64 versions of cacheflush.h were almost identical.
The two versions of cache.h are fairly similar, except for a bunch of
register definitions in the ppc32 version which probably belong better
elsewhere.  This patch, therefore, merges both headers.  Notable
points:
	- there are several functions in cacheflush.h which exist only
on ppc32 or only on ppc64.  These are handled by #ifdef for now, but
these should probably be consolidated, along with the actual code
behind them later.
	- Confusingly, both ppc32 and ppc64 have a
flush_dcache_range(), but they're subtly different: it uses dcbf on
ppc32 and dcbst on ppc64, ppc64 has a flush_inval_dcache_range() which
uses dcbf.  These too should be merged and consolidated later.
	- Also flush_dcache_range() was defined in cacheflush.h on
ppc64, and in cache.h on ppc32.  In the merged version it's in
cacheflush.h
	- On ppc32 flush_icache_range() is a normal function from
misc.S.  On ppc64, it was wrapper, testing a feature bit before
calling __flush_icache_range() which does the actual flush.  This
patch takes the ppc64 approach, which amounts to no change on ppc32,
since CPU_FTR_COHERENT_ICACHE will never be set there, but does mean
renaming flush_icache_range() to __flush_icache_range() in
arch/ppc/kernel/misc.S and arch/powerpc/kernel/misc_32.S
	- The PReP register info from asm-ppc/cache.h has moved to
arch/ppc/platforms/prep_setup.c
	- The 8xx register info from asm-ppc/cache.h has moved to a
new asm-powerpc/reg_8xx.h, included from reg.h
	- flush_dcache_all() was defined on ppc32 (only), but was
never called (although it was exported).  Thus this patch removes it
from cacheflush.h and from ARCH=powerpc (misc_32.S) entirely.  It's
left in ARCH=ppc for now, with the prototype moved to ppc_ksyms.c.

Built for Walnut (ARCH=ppc), 32-bit multiplatform (pmac, CHRP and PReP
ARCH=ppc, pmac and CHRP ARCH=powerpc).  Built and booted on POWER5
LPAR (ARCH=powerpc and ARCH=ppc64).

Built for 32-bit powermac (ARCH=ppc and ARCH=powerpc).  Built and
booted on POWER5 LPAR (ARCH=powerpc and ARCH=ppc64).  Built and booted
on G5 (ARCH=powerpc)

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-11-10 13:09:22 +11:00
..
4xx
83xx
85xx
Makefile
apus_pci.c
apus_pci.h
apus_setup.c
bseip.h
ccm.h
chestnut.c
chestnut.h
chrp_nvram.c
chrp_pci.c
chrp_pegasos_eth.c
chrp_setup.c
chrp_smp.c
chrp_time.c
cpci690.c
cpci690.h
est8260.h
ev64260.c
ev64260.h
ev64360.c
ev64360.h
fads.h
gemini.h
gemini_pci.c
gemini_prom.S
gemini_serial.h
gemini_setup.c
hdpu.c
hdpu.h
hermes.h
ip860.h
ivms8.h
katana.c
katana.h
lantec.h
lite5200.c
lite5200.h
lopec.c
lopec.h
lwmon.h
mbx.h
mpc885ads.h
mpc5200.c
mvme5100.c
mvme5100.h
pal4.h
pal4_pci.c
pal4_serial.h
pal4_setup.c
pcu_e.h
pmac_backlight.c
pmac_cache.S
pmac_cpufreq.c
pmac_feature.c
pmac_low_i2c.c
pmac_nvram.c
pmac_pci.c
pmac_pic.c
pmac_pic.h
pmac_setup.c
pmac_sleep.S
pmac_smp.c
pmac_time.c
powerpmc250.c
powerpmc250.h
pplus.c
pplus.h
pq2ads.c
pq2ads.h
prep_pci.c
prep_setup.c
prpmc750.c
prpmc750.h
prpmc800.c
prpmc800.h
radstone_ppc7d.c
radstone_ppc7d.h
residual.c
rpx8260.h
rpxclassic.h
rpxhiox.h
rpxlite.h
sandpoint.c
sandpoint.h
sbc82xx.c
sbc82xx.h
sbs8260.h
spruce.c
spruce.h
tqm8xx.h
tqm8260.h
tqm8260_setup.c