summaryrefslogtreecommitdiff
path: root/include/lmb.h
diff options
context:
space:
mode:
authorBecky Bruce <becky.bruce@freescale.com>2008-06-09 20:37:18 -0500
committerWolfgang Denk <wd@denx.de>2008-06-12 00:56:39 +0200
commit391fd93ab23e15ab3dd58a54f5b609024009c378 (patch)
treecbecdac5275d3ee048a0f0402042437b60e816d6 /include/lmb.h
parent61b09fc2952dc636017df4e7970e3de132276ba1 (diff)
downloadu-boot-imx-391fd93ab23e15ab3dd58a54f5b609024009c378.zip
u-boot-imx-391fd93ab23e15ab3dd58a54f5b609024009c378.tar.gz
u-boot-imx-391fd93ab23e15ab3dd58a54f5b609024009c378.tar.bz2
Change lmb to use phys_size_t/phys_addr_t
This updates the lmb code to use phys_size_t and phys_addr_t instead of unsigned long. Other code which interacts with this code, like getenv_bootm_size() is also updated. Booted on MPC8641HPCN, build-tested ppc, arm, mips. Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Diffstat (limited to 'include/lmb.h')
-rw-r--r--include/lmb.h22
1 files changed, 12 insertions, 10 deletions
diff --git a/include/lmb.h b/include/lmb.h
index cc64cbb..03d7667 100644
--- a/include/lmb.h
+++ b/include/lmb.h
@@ -17,13 +17,13 @@
#define MAX_LMB_REGIONS 8
struct lmb_property {
- ulong base;
- ulong size;
+ phys_addr_t base;
+ phys_size_t size;
};
struct lmb_region {
unsigned long cnt;
- ulong size;
+ phys_size_t size;
struct lmb_property region[MAX_LMB_REGIONS+1];
};
@@ -35,16 +35,18 @@ struct lmb {
extern struct lmb lmb;
extern void lmb_init(struct lmb *lmb);
-extern long lmb_add(struct lmb *lmb, ulong base, ulong size);
-extern long lmb_reserve(struct lmb *lmb, ulong base, ulong size);
-extern ulong lmb_alloc(struct lmb *lmb, ulong size, ulong align);
-extern ulong lmb_alloc_base(struct lmb *lmb, ulong size, ulong align, ulong max_addr);
-extern ulong __lmb_alloc_base(struct lmb *lmb, ulong size, ulong align, ulong max_addr);
-extern int lmb_is_reserved(struct lmb *lmb, ulong addr);
+extern long lmb_add(struct lmb *lmb, phys_addr_t base, phys_size_t size);
+extern long lmb_reserve(struct lmb *lmb, phys_addr_t base, phys_size_t size);
+extern phys_addr_t lmb_alloc(struct lmb *lmb, phys_size_t size, ulong align);
+extern phys_addr_t lmb_alloc_base(struct lmb *lmb, phys_size_t size, ulong align,
+ phys_addr_t max_addr);
+extern phys_addr_t __lmb_alloc_base(struct lmb *lmb, phys_size_t size, ulong align,
+ phys_addr_t max_addr);
+extern int lmb_is_reserved(struct lmb *lmb, phys_addr_t addr);
extern void lmb_dump_all(struct lmb *lmb);
-static inline ulong
+static inline phys_size_t
lmb_size_bytes(struct lmb_region *type, unsigned long region_nr)
{
return type->region[region_nr].size;