coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
memlayout.h File Reference

Go to the source code of this file.

Macros

#define SUPERPAGE_SIZE   ((1 + CONFIG(ARM_LPAE)) * 1M)
 
#define TTB(addr, size)
 
#define TTB_SUBTABLES(addr, size)
 
#define STACK(addr, size)
 
#define DMA_COHERENT(addr, size)
 
#define FRAMEBUFFER(addr, size)
 

Macro Definition Documentation

◆ DMA_COHERENT

#define DMA_COHERENT (   addr,
  size 
)
Value:
_ = ASSERT(size % SUPERPAGE_SIZE == 0, \
"DMA coherency buffer must fit exactly in full superpages!");
#define SUPERPAGE_SIZE
Definition: memlayout.h:8
#define ASSERT(x)
Definition: assert.h:44
static u32 addr
Definition: cirrus.c:14
int dma_coherent(void *ptr)
#define REGION(name, addr, size, expected_align)
Definition: memlayout.h:39

Definition at line 25 of file memlayout.h.

◆ FRAMEBUFFER

#define FRAMEBUFFER (   addr,
  size 
)
Value:
REGION(framebuffer, addr, size, SUPERPAGE_SIZE) \
_ = ASSERT(size % SUPERPAGE_SIZE == 0, \
"Framebuffer must fit exactly in full superpages!");

Definition at line 30 of file memlayout.h.

◆ STACK

#define STACK (   addr,
  size 
)
Value:
REGION(stack, addr, size, 8) \
_ = ASSERT(size >= 2K, "stack should be >= 2K, see toolchain.inc");

Definition at line 21 of file memlayout.h.

◆ SUPERPAGE_SIZE

#define SUPERPAGE_SIZE   ((1 + CONFIG(ARM_LPAE)) * 1M)

Definition at line 8 of file memlayout.h.

◆ TTB

#define TTB (   addr,
  size 
)
Value:
REGION(ttb, addr, size, 16K) \
_ = ASSERT(size >= 16K + CONFIG(ARM_LPAE) * 32, \
"TTB must be 16K (+ 32 for LPAE)!");
@ CONFIG
Definition: dsi_common.h:201

Definition at line 10 of file memlayout.h.

◆ TTB_SUBTABLES

#define TTB_SUBTABLES (   addr,
  size 
)
Value:
REGION(ttb_subtables, addr, size, CONFIG(ARM_LPAE)*3K + 1K) \
_ = ASSERT(size % (1K + 3K * CONFIG(ARM_LPAE)) == 0, \
"TTB subtable region must be evenly divisible by table size!");

Definition at line 15 of file memlayout.h.