android_kernel_xiaomi_sm7250/include
Michael Ellerman e88bcd1b29 [PATCH] ppc64: Remove redundant abs_to_phys() macro
abs_to_phys() is a macro that turns out to do nothing, and also has the
unfortunate property that it's not the inverse of phys_to_abs() on iSeries.

The following is for my benefit as much as everyone else.

With CONFIG_MSCHUNKS enabled, the lmb code is changed such that it keeps
a physbase variable for each lmb region. This is used to take the possibly
discontiguous lmb regions and present them as a contiguous address space
beginning from zero.

In this context each lmb region's base address is its "absolute" base
address, and its physbase is it's "physical" address (from Linux's point of
view). The abs_to_phys() macro does the mapping from "absolute" to "physical".

Note: This is not related to the iSeries mapping of physical to absolute
(ie. Hypervisor) addresses which is maintained with the msChunks structure.
And the msChunks structure is not controlled via CONFIG_MSCHUNKS.

Once upon a time you could compile for non-iSeries with CONFIG_MSCHUNKS
enabled. But these days CONFIG_MSCHUNKS depends on CONFIG_PPC_ISERIES, so
for non-iSeries code abs_to_phys() is a no-op.

On iSeries we always have one lmb region which spans from 0 to
systemcfg->physicalMemorySize (arch/ppc64/kernel/iSeries_setup.c line 383).
This region has a base (ie. absolute) address of 0, and a physbase address
of 0 (as calculated in lmb_analyze() (arch/ppc64/kernel/lmb.c line 144)).

On iSeries, abs_to_phys(aa) is defined as lmb_abs_to_phys(aa), which finds
the lmb region containing aa (and there's only one, ie. 0), and then does:

 return lmb.memory.region[0].physbase + (aa - lmb.memory.region[0].base)

physbase == base == 0, so you're left with "return aa".

So remove abs_to_phys(), and lmb_abs_to_phys() which is the implementation
of abs_to_phys() for iSeries.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-08-29 10:53:37 +10:00
..
acpi /home/lenb/src/to-linus branch 'acpi-2.6.12' 2005-07-29 23:31:17 -04:00
asm-alpha [PATCH] alpha xchg fix 2005-08-23 18:43:44 -07:00
asm-arm [PATCH] Fix IXP4xx CLOCK_TICK_RATE 2005-08-23 20:06:33 -07:00
asm-arm26 [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-cris [PATCH] CRIS update: new subarchitecture v32 2005-07-27 16:26:01 -07:00
asm-frv [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-generic [PATCH] pci and yenta: pcibios_bus_to_resource 2005-08-04 21:32:46 -07:00
asm-h8300 [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-i386 [PATCH] i386 / desc_empty macro is incorrect 2005-08-16 12:18:01 -07:00
asm-ia64 [IA64] remove unused function __ia64_get_io_port_base 2005-08-18 14:40:00 -07:00
asm-m32r [PATCH] m32r smp.h gcc4 fixes 2005-08-23 18:43:44 -07:00
asm-m68k [PATCH] m68k: fix broken macros causing compile errors 2005-08-24 09:37:40 -07:00
asm-m68knommu [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-mips [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-parisc [PATCH] pci and yenta: pcibios_bus_to_resource 2005-08-04 21:32:46 -07:00
asm-ppc [PATCH] qualifiers in return types - easy cases 2005-08-23 18:43:45 -07:00
asm-ppc64 [PATCH] ppc64: Remove redundant abs_to_phys() macro 2005-08-29 10:53:37 +10:00
asm-s390 [PATCH] s390 __CHECKER__ ifdefs 2005-08-23 18:43:46 -07:00
asm-sh [PATCH] SH: inotify and ioprio syscalls 2005-08-18 12:53:57 -07:00
asm-sh64 [PATCH] SH64: inotify and ioprio syscalls 2005-08-18 12:53:57 -07:00
asm-sparc [SPARC]: Add inotify syscall entries. 2005-07-27 14:14:39 -07:00
asm-sparc64 [SPARC64]: Move kernel unaligned trap handlers into assembler file. 2005-08-19 15:55:33 -07:00
asm-um um: fix __pa/__va macro expansion problem 2005-08-15 17:40:46 -07:00
asm-v850 [PATCH] v850: Define L1_CACHE_SHIFT and L1_CACHE_SHIFT_MAX 2005-07-27 16:26:03 -07:00
asm-x86_64 [PATCH] x86_64: Tell VM about holes in nodes 2005-08-26 19:37:12 -07:00
asm-xtensa [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
linux Fix nasty ncpfs symlink handling bug. 2005-08-19 18:02:56 -07:00
math-emu
media [PATCH] V4L: Miscellaneous fixes 2005-08-01 19:13:59 -07:00
mtd
net [AX25]: UID fixes 2005-08-23 10:11:45 -07:00
pcmcia [PATCH] pcmcia: fix pcmcia-cs compilation 2005-07-12 16:00:59 -07:00
rxrpc
scsi [SCSI] fix target scanning oops with fc transport class 2005-08-08 17:14:55 -05:00
sound [PATCH] Kconfig fix (ISA_DMA_API and sound/*) 2005-08-23 18:43:40 -07:00
video