linux/include/asm-ppc
David Gibson a0e60b2033 [PATCH] powerpc: Merge bitops.h
Here's a revised version.  This re-introduces the set_bits() function
from ppc64, which I removed because I thought it was unused (it exists
on no other arch).  In fact it is used in the powermac interrupt code
(but not on pSeries).

- We use LARXL/STCXL macros to generate the right (32 or 64 bit)
  instructions, similar to LDL/STL from ppc_asm.h, used in fpu.S

- ppc32 previously used a full "sync" barrier at the end of
  test_and_*_bit(), whereas ppc64 used an "isync".  The merged version
  uses "isync", since I believe that's sufficient.

- The ppc64 versions of then minix_*() bitmap functions have changed
  semantics.  Previously on ppc64, these functions were big-endian
  (that is bit 0 was the LSB in the first 64-bit, big-endian word).
  On ppc32 (and x86, for that matter, they were little-endian.  As far
  as I can tell, the big-endian usage was simply wrong - I guess
  no-one ever tried to use minixfs on ppc64.

- On ppc32 find_next_bit() and find_next_zero_bit() are no longer
  inline (they were already out-of-line on ppc64).

- For ppc64, sched_find_first_bit() has moved from mmu_context.h to
  the merged bitops.  What it was doing in mmu_context.h in the first
  place, I have no idea.

- The fls() function is now implemented using the cntlzw instruction
  on ppc64, instead of generic_fls(), as it already was on ppc32.

- For ARCH=ppc, this patch requires adding arch/powerpc/lib to the
  arch/ppc/Makefile.  This in turn requires some changes to
  arch/powerpc/lib/Makefile which didn't correctly handle ARCH=ppc.

Built and running on G5.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-11-01 21:49:02 +11:00
..
8xx_immap.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
amigahw.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
amigaints.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
amigappc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
amigayle.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
amipcmcia.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ans-lcd.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bootinfo.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bootx.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bseip.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
btext.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cache.h ppc32: use L1_CACHE_SHIFT/L1_CACHE_BYTES 2005-10-17 11:50:32 +10:00
cacheflush.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
commproc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cpm2.h [PATCH] ppc32: ppc_sys fixes for 8xx and 82xx 2005-10-29 14:49:29 +10:00
current.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
delay.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dma-mapping.h [PATCH] gfp_t: dma-mapping (ppc) 2005-10-28 08:16:48 -07:00
floppy.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
futex.h [PATCH] Remove unused var from asm/futex.h 2005-09-21 16:16:29 -07:00
gg2.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
gt64260_defs.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
gt64260.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
harrier.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hawk_defs.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hawk.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
highmem.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hydra.h [PATCH] ppc trivial iomem annotations: chrp 2005-04-24 14:58:08 -07:00
ibm4xx.h [PATCH] ppc32: Remove board support for REDWOOD 2005-09-05 00:05:54 -07:00
ibm44x.h [PATCH] ppc32: Fix PPC440SP SRAM controller DCRs 2005-08-18 12:53:58 -07:00
ibm403.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ibm405.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ibm_ocp_pci.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ibm_ocp.h [PATCH] ppc32: add missing sysfs node for ocp_func_emac_data.phy_feat_exc 2005-09-07 16:57:15 -07:00
ide.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
immap_85xx.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
immap_cpm2.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
io.h Merge from Linus' tree 2005-10-12 14:43:32 +10:00
ipic.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
kexec.h [PATCH] kexec-ppc: fix for ksysfs crash_notes 2005-07-12 16:01:03 -07:00
kgdb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
m48t35.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
m8260_pci.h [PATCH] ppc32: Support for 82xx PQII on-chip PCI bridge 2005-05-28 16:46:15 -07:00
machdep.h [PATCH] ppc: make phys_mem_access_prot() work with pfns instead of addresses 2005-10-29 14:25:49 +10:00
md.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mk48t59.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mmu_context.h [PATCH] powerpc: merged asm/cputable.h 2005-09-28 15:42:53 +10:00
mmu.h [PATCH] ppc32: Add support for Freescale e200 (Book-E) core 2005-06-25 16:24:26 -07:00
mpc8xx.h [PATCH] ppc32: ppc_sys fixes for 8xx and 82xx 2005-10-29 14:49:29 +10:00
mpc10x.h [PATCH] ppc32: Make the UARTs on MPC824x individual platform devices 2005-07-27 16:25:55 -07:00
mpc52xx_psc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mpc52xx.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mpc83xx.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mpc85xx.h [PATCH] ppc32: 85xx PHY Platform Update 2005-10-29 14:42:28 +10:00
mpc8260_pci9.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
mpc8260.h [PATCH] ppc32: ppc_sys fixes for 8xx and 82xx 2005-10-29 14:49:29 +10:00
mv64x60_defs.h [PATCH] ppc32: mv64x60 updates & enhancements 2005-09-05 00:06:00 -07:00
mv64x60.h [PATCH] mv64x60 iomem annotations 2005-09-29 08:46:27 -07:00
nvram.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ocp_ids.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ocp.h [PATCH] ppc32: Remove FSL OCP support 2005-06-25 16:24:27 -07:00
open_pic.h powerpc/ppc/ppc64: Various compile fixes. 2005-10-20 21:10:09 +10:00
page.h powerpc: Merge lmb.c and make MM initialization use it. 2005-10-06 12:23:33 +10:00
pc_serial.h [PATCH] Serial: Split 8250 port table (part 2) 2005-06-29 18:45:19 +01:00
pci-bridge.h powerpc: Fix compilation for 32-bit configs 2005-10-10 22:58:10 +10:00
pci.h [PATCH] ppc: make phys_mem_access_prot() work with pfns instead of addresses 2005-10-29 14:25:49 +10:00
pgalloc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
pgtable.h [PATCH] ppc: make phys_mem_access_prot() work with pfns instead of addresses 2005-10-29 14:25:49 +10:00
pnp.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ppc4xx_dma.h [PATCH] ppc32: fix ppc4xx stb03xxx dma build 2005-08-18 12:53:58 -07:00
ppc4xx_pic.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ppc_sys.h [PATCH] ppc32: Add ppc_sys descriptions for PowerQUICC I devices 2005-09-17 11:50:01 -07:00
ppcboot.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
prep_nvram.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
prom.h [PATCH] ppc32: fix compilation error in include/asm/prom.h 2005-04-16 15:24:28 -07:00
ptrace.h [PATCH] powerpc: Merge thread_info.h 2005-10-21 22:47:23 +10:00
raven.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
reg_booke.h [PATCH] ppc32: Add support for Freescale e200 (Book-E) core 2005-06-25 16:24:26 -07:00
residual.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rheap.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rtc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
serial.h [PATCH] ppc32: Remove board support for MCPN765 2005-09-05 00:05:54 -07:00
sigcontext.h [PATCH] ppc32: add <linux/compiler.h> to <asm/sigcontext.h> 2005-06-06 17:02:02 -07:00
signal.h [PATCH] asm/signal.h unification 2005-05-04 07:33:15 -07:00
smp.h powerpc: 32-bit CHRP SMP fixes 2005-10-27 22:42:04 +10:00
spinlock.h [PATCH] powerpc: Fix building of power3 config on ppc32 2005-09-25 22:38:45 +10:00
stat.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
suspend.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
system.h [PATCH] ppc32: nvram driver for chrp 2005-10-29 14:35:00 +10:00
time.h [PATCH] qualifiers in return types - easy cases 2005-08-23 18:43:45 -07:00
tlb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tlbflush.h [PATCH] ppc32 8xx: flush_tlb_range() declaration uses wrong pointer type 2005-09-14 14:34:17 -07:00
todc.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
traps.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ucontext.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
xparameters.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
zorro.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00