* Changed physical_entry::{address,size} to phys_{addr,size}_t and changed

map_physical_memory()'s physicalAddress parameter type from void* to
  phys_addr_t. This breaks source compatibility, but -- as long as
  phys_{addr,size}_t remain 32 bit wide -- keeps binary compatibility with
  BeOS.
* Adjusted all code using the affected interfaces (Oh what fun!). Added a few
  TODOs in places where the wrong types (e.g. void* for physical addresses
  are used). Looks like quite a few drivers aren't 64 bit safe and others
  will break with PAE.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36960 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2010-05-27 22:07:27 +00:00
parent 1716472d36
commit 64d79eff72
86 changed files with 1378 additions and 1334 deletions
+3 -3
View File
@@ -1,5 +1,5 @@
/*
* Copyright 2008-2009, Ingo Weinhold, [email protected].
* Copyright 2008-2010, Ingo Weinhold, [email protected].
* Copyright 2008-2009, Axel Dörfler, [email protected].
* Distributed under the terms of the MIT License.
*/
@@ -106,7 +106,7 @@ private:
uint32 fEntriesEver;
spinlock fLock;
char* fTraceOutputBuffer;
addr_t fPhysicalAddress;
phys_addr_t fPhysicalAddress;
uint32 fMagic3;
};
@@ -380,7 +380,7 @@ TracingMetaData::Create(TracingMetaData*& _metaData)
physical_entry physicalEntry;
if (get_memory_map(metaData->fTraceOutputBuffer, B_PAGE_SIZE,
&physicalEntry, 1) == B_OK) {
metaData->fPhysicalAddress = (addr_t)physicalEntry.address;
metaData->fPhysicalAddress = physicalEntry.address;
} else {
dprintf("TracingMetaData::Create(): failed to get physical address "
"of tracing buffer\n");