es1370: Change physical addresses to phys_addr_t.
Solves a TODO and some pointer to integer cast warnings.
This commit is contained in:
@@ -40,7 +40,7 @@
|
|||||||
typedef struct _es1370_mem {
|
typedef struct _es1370_mem {
|
||||||
LIST_ENTRY(_es1370_mem) next;
|
LIST_ENTRY(_es1370_mem) next;
|
||||||
void *log_base;
|
void *log_base;
|
||||||
void *phy_base;
|
phys_addr_t phy_base;
|
||||||
area_id area;
|
area_id area;
|
||||||
size_t size;
|
size_t size;
|
||||||
} es1370_mem;
|
} es1370_mem;
|
||||||
|
|||||||
@@ -65,9 +65,8 @@ round_to_pagesize(uint32 size)
|
|||||||
|
|
||||||
|
|
||||||
area_id
|
area_id
|
||||||
alloc_mem(void **phy, void **log, size_t size, const char *name)
|
alloc_mem(phys_addr_t *phy, void **log, size_t size, const char *name)
|
||||||
{
|
{
|
||||||
// TODO: phy should be phys_addr_t*!
|
|
||||||
physical_entry pe;
|
physical_entry pe;
|
||||||
void * logadr;
|
void * logadr;
|
||||||
area_id areaid;
|
area_id areaid;
|
||||||
@@ -94,7 +93,7 @@ alloc_mem(void **phy, void **log, size_t size, const char *name)
|
|||||||
if (log)
|
if (log)
|
||||||
*log = logadr;
|
*log = logadr;
|
||||||
if (phy)
|
if (phy)
|
||||||
*phy = (void*)(addr_t)pe.address;
|
*phy = pe.address;
|
||||||
LOG(("area = %d, size = %d, log = %#08X, phy = %#08X\n", areaid, size,
|
LOG(("area = %d, size = %d, log = %#08X, phy = %#08X\n", areaid, size,
|
||||||
logadr, pe.address));
|
logadr, pe.address));
|
||||||
return areaid;
|
return areaid;
|
||||||
@@ -107,10 +106,10 @@ alloc_mem(void **phy, void **log, size_t size, const char *name)
|
|||||||
* below does work, and I can't test if using B_ANY_KERNEL_ADDRESS also works.
|
* below does work, and I can't test if using B_ANY_KERNEL_ADDRESS also works.
|
||||||
*/
|
*/
|
||||||
area_id
|
area_id
|
||||||
map_mem(void **log, void *phy, size_t size, const char *name)
|
map_mem(void **log, phys_addr_t phy, size_t size, const char *name)
|
||||||
{
|
{
|
||||||
uint32 offset;
|
uint32 offset;
|
||||||
void *phyadr;
|
phys_addr_t phyadr;
|
||||||
void *mapadr;
|
void *mapadr;
|
||||||
area_id area;
|
area_id area;
|
||||||
|
|
||||||
@@ -119,9 +118,9 @@ map_mem(void **log, void *phy, size_t size, const char *name)
|
|||||||
offset = (uint32)phy & (B_PAGE_SIZE - 1);
|
offset = (uint32)phy & (B_PAGE_SIZE - 1);
|
||||||
phyadr = phy - offset;
|
phyadr = phy - offset;
|
||||||
size = round_to_pagesize(size + offset);
|
size = round_to_pagesize(size + offset);
|
||||||
area = map_physical_memory(name, (addr_t)phyadr, size,
|
area = map_physical_memory(name, phyadr, size, B_ANY_KERNEL_BLOCK_ADDRESS,
|
||||||
B_ANY_KERNEL_BLOCK_ADDRESS, B_READ_AREA | B_WRITE_AREA, &mapadr);
|
B_READ_AREA | B_WRITE_AREA, &mapadr);
|
||||||
*log = mapadr + offset;
|
*log = (uint8 *)mapadr + offset;
|
||||||
|
|
||||||
LOG(("physical = %p, logical = %p, offset = %#x, phyadr = %p, mapadr = %p, size = %#x, area = %#x\n",
|
LOG(("physical = %p, logical = %p, offset = %#x, phyadr = %p, mapadr = %p, size = %#x, area = %#x\n",
|
||||||
phy, *log, offset, phyadr, mapadr, size, area));
|
phy, *log, offset, phyadr, mapadr, size, area));
|
||||||
|
|||||||
@@ -30,8 +30,8 @@
|
|||||||
|
|
||||||
#include <KernelExport.h>
|
#include <KernelExport.h>
|
||||||
|
|
||||||
area_id alloc_mem(void **phy, void **log, size_t size, const char *name);
|
area_id alloc_mem(phys_addr_t *phy, void **log, size_t size, const char *name);
|
||||||
area_id map_mem(void **log, void *phy, size_t size, const char *name);
|
area_id map_mem(void **log, phys_addr_t phy, size_t size, const char *name);
|
||||||
|
|
||||||
cpu_status lock(void);
|
cpu_status lock(void);
|
||||||
void unlock(cpu_status status);
|
void unlock(cpu_status status);
|
||||||
|
|||||||
Reference in New Issue
Block a user