RAM Zones

A RAM zone is a physically contiguous section of RAM address space that has a preference value and a unique ID.

A base port must define the RAM zones for a phone. The Kernel uses RAM zones to decide how to allocate RAM pages so that:

  • only the necessary parts of a device’s RAM ICs are powered and refreshed. This may reduce power consumption.

  • pre-determined regions of physically contiguous RAM can be used for a specific function when required. For example, a buffer required by a camera peripheral.

The system attempts to allocate memory in a preferred RAM zone. A preferred RAM zone is a zone that has a lower preference value than another.

All methods that perform operations on a specific RAM zone take the unique ID of the RAM zone as a parameter.

RAM zones are specified only once during the boot process by the base port. The base port must do this in its ASSP/Variant in its implementation of the Asic::Init1() function.