Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 10439
b: refs/heads/master
c: 9769c24
h: refs/heads/master
i:
  10437: 691a9ba
  10435: 74d3223
  10431: 86f3180
v: v3
  • Loading branch information
Deepak Saxena authored and Russell King committed Oct 28, 2005
1 parent e8cb6ca commit 2531b9f
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 12 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: c8d2729858d76de4ef7522c8171004fc1959cc44
refs/heads/master: 9769c2468d423a1562dd59a5db250bd0a5533ec9
12 changes: 6 additions & 6 deletions trunk/arch/arm/mm/init.c
Original file line number Diff line number Diff line change
Expand Up @@ -262,8 +262,8 @@ bootmem_init_node(int node, int initrd_node, struct meminfo *mi)
if (end_pfn < end)
end_pfn = end;

map.physical = mi->bank[i].start;
map.virtual = __phys_to_virt(map.physical);
map.pfn = __phys_to_pfn(mi->bank[i].start);
map.virtual = __phys_to_virt(mi->bank[i].start);
map.length = mi->bank[i].size;
map.type = MT_MEMORY;

Expand Down Expand Up @@ -365,7 +365,7 @@ static void __init bootmem_init(struct meminfo *mi)

#ifdef CONFIG_XIP_KERNEL
#error needs fixing
p->physical = CONFIG_XIP_PHYS_ADDR & PMD_MASK;
p->pfn = __phys_to_pfn(CONFIG_XIP_PHYS_ADDR & PMD_MASK);
p->virtual = (unsigned long)&_stext & PMD_MASK;
p->length = ((unsigned long)&_etext - p->virtual + ~PMD_MASK) & PMD_MASK;
p->type = MT_ROM;
Expand Down Expand Up @@ -439,14 +439,14 @@ static void __init devicemaps_init(struct machine_desc *mdesc)
* Map the cache flushing regions.
*/
#ifdef FLUSH_BASE
map.physical = FLUSH_BASE_PHYS;
map.pfn = __phys_to_pfn(FLUSH_BASE_PHYS);
map.virtual = FLUSH_BASE;
map.length = PGDIR_SIZE;
map.type = MT_CACHECLEAN;
create_mapping(&map);
#endif
#ifdef FLUSH_BASE_MINICACHE
map.physical = FLUSH_BASE_PHYS + PGDIR_SIZE;
map.pfn = __phys_to_pfn(FLUSH_BASE_PHYS + PGDIR_SIZE);
map.virtual = FLUSH_BASE_MINICACHE;
map.length = PGDIR_SIZE;
map.type = MT_MINICLEAN;
Expand All @@ -464,7 +464,7 @@ static void __init devicemaps_init(struct machine_desc *mdesc)
* location (0xffff0000). If we aren't using high-vectors, also
* create a mapping at the low-vectors virtual address.
*/
map.physical = virt_to_phys(vectors);
map.pfn = __phys_to_pfn(virt_to_phys(vectors));
map.virtual = 0xffff0000;
map.length = PAGE_SIZE;
map.type = MT_HIGH_VECTORS;
Expand Down
8 changes: 4 additions & 4 deletions trunk/arch/arm/mm/mm-armv.c
Original file line number Diff line number Diff line change
Expand Up @@ -483,15 +483,15 @@ void __init create_mapping(struct map_desc *md)
if (md->virtual != vectors_base() && md->virtual < TASK_SIZE) {
printk(KERN_WARNING "BUG: not creating mapping for "
"0x%08lx at 0x%08lx in user region\n",
md->physical, md->virtual);
__pfn_to_phys(md->pfn), md->virtual);
return;
}

if ((md->type == MT_DEVICE || md->type == MT_ROM) &&
md->virtual >= PAGE_OFFSET && md->virtual < VMALLOC_END) {
printk(KERN_WARNING "BUG: mapping for 0x%08lx at 0x%08lx "
"overlaps vmalloc space\n",
md->physical, md->virtual);
__pfn_to_phys(md->pfn), md->virtual);
}

domain = mem_types[md->type].domain;
Expand All @@ -500,14 +500,14 @@ void __init create_mapping(struct map_desc *md)
prot_sect = mem_types[md->type].prot_sect | PMD_DOMAIN(domain);

virt = md->virtual;
off = md->physical - virt;
off = __pfn_to_phys(md->pfn) - virt;
length = md->length;

if (mem_types[md->type].prot_l1 == 0 &&
(virt & 0xfffff || (virt + off) & 0xfffff || (virt + length) & 0xfffff)) {
printk(KERN_WARNING "BUG: map for 0x%08lx at 0x%08lx can not "
"be mapped using pages, ignoring.\n",
md->physical, md->virtual);
__pfn_to_phys(md->pfn), md->virtual);
return;
}

Expand Down
5 changes: 4 additions & 1 deletion trunk/include/asm-arm/mach/map.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
*/
struct map_desc {
unsigned long virtual;
unsigned long physical;
unsigned long pfn;
unsigned long length;
unsigned int type;
};
Expand All @@ -27,6 +27,9 @@ struct meminfo;
#define MT_ROM 6
#define MT_IXP2000_DEVICE 7

#define __phys_to_pfn(paddr) (paddr >> PAGE_SHIFT)
#define __pfn_to_phys(pfn) (pfn << PAGE_SHIFT)

extern void create_memmap_holes(struct meminfo *);
extern void memtable_init(struct meminfo *);
extern void iotable_init(struct map_desc *, int);
Expand Down

0 comments on commit 2531b9f

Please sign in to comment.