[POWERPC] PS3: Remove lpar address workaround

Remove the PS3 workaround needed to support sparsemem SPU mappings.
The SPU mappings no longer use sparsemem, so this workaround is no
longer needed.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
Geoff Levand 2008-01-19 07:32:59 +11:00 committed by Paul Mackerras
parent c4e6752dd4
commit a628df1e9d
3 changed files with 4 additions and 28 deletions

View File

@ -61,17 +61,6 @@ config PS3_DYNAMIC_DMA
This support is mainly for Linux kernel development. If unsure,
say N.
config PS3_USE_LPAR_ADDR
depends on PPC_PS3 && EXPERIMENTAL
bool "PS3 use lpar address space"
default y
help
This option is solely for experimentation by experts. Disables
translation of lpar addresses. SPE support currently won't work
without this set to y.
If you have any doubt, choose the default y.
config PS3_VUART
depends on PPC_PS3
tristate

View File

@ -36,11 +36,6 @@
#endif
enum {
#if defined(CONFIG_PS3_USE_LPAR_ADDR)
USE_LPAR_ADDR = 1,
#else
USE_LPAR_ADDR = 0,
#endif
#if defined(CONFIG_PS3_DYNAMIC_DMA)
USE_DYNAMIC_DMA = 1,
#else
@ -137,11 +132,8 @@ static struct map map;
unsigned long ps3_mm_phys_to_lpar(unsigned long phys_addr)
{
BUG_ON(is_kernel_addr(phys_addr));
if (USE_LPAR_ADDR)
return phys_addr;
else
return (phys_addr < map.rm.size || phys_addr >= map.total)
? phys_addr : phys_addr + map.r1.offset;
return (phys_addr < map.rm.size || phys_addr >= map.total)
? phys_addr : phys_addr + map.r1.offset;
}
EXPORT_SYMBOL(ps3_mm_phys_to_lpar);
@ -309,7 +301,7 @@ static int __init ps3_mm_add_memory(void)
BUG_ON(!mem_init_done);
start_addr = USE_LPAR_ADDR ? map.r1.base : map.rm.size;
start_addr = map.rm.size;
start_pfn = start_addr >> PAGE_SHIFT;
nr_pages = (map.r1.size + PAGE_SIZE - 1) >> PAGE_SHIFT;
@ -1007,7 +999,7 @@ static int dma_sb_region_create_linear(struct ps3_dma_region *r)
if (r->offset + r->len > map.rm.size) {
/* Map (part of) 2nd RAM chunk */
virt_addr = USE_LPAR_ADDR ? map.r1.base : map.rm.size;
virt_addr = map.rm.size;
len = r->len;
if (r->offset >= map.rm.size)
virt_addr += r->offset - map.rm.size;

View File

@ -10,13 +10,8 @@
*/
#define SECTION_SIZE_BITS 24
#if defined(CONFIG_PS3_USE_LPAR_ADDR)
#define MAX_PHYSADDR_BITS 47
#define MAX_PHYSMEM_BITS 47
#else
#define MAX_PHYSADDR_BITS 44
#define MAX_PHYSMEM_BITS 44
#endif
#ifdef CONFIG_MEMORY_HOTPLUG
extern void create_section_mapping(unsigned long start, unsigned long end);