Add support for memory regions to ARM kernel

Registered by Deepak Saxena on 2011-06-03

Implement memory region support, allowing power-up and power-down of independent memory banks on systems that support it.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
Deepak Saxena
Direction:
Needs approval
Assignee:
Thomas Abraham
Definition:
Obsolete
Series goal:
Accepted for devtrack
Implementation:
Deferred
Milestone target:
milestone icon backlog
Completed by
Deepak Saxena on 2012-09-18

Related branches

Sprints

Whiteboard

[thomas-ab] Study of power management techniques available in SoC architectures (including Samsung, TI OMAP, TI Davinci, ST-Ericsson, Freescale and others): POSTPONED
[thomas-ab] Study of power management techniques defined by JEDEC standards for memory devices (DDR, DDR2, DDR3, LPDDR, mDDR): DONE
[thomas-ab] Short study of Linux VM code: TODO
[thomas-ab] Review and study of initial patch that will be submitted by IBM Engineers who are working on memory regions feature: DONE
[thomas-ab] Test the initial patch on memory regions developed by IBM on all available platforms (Exynos4, OMAP, U8500, imx51, others as available): DONE
[thomas-ab] Implement any additional features required to fully and efficiently support memory regions on all available platforms: TODO
[thomas-ab] Study of initial behaviour of memory regions support and identify suitable policies required to be developed that will efficiently perform the memory compaction/copy: TODO
[thomas-ab] Analyze whether copy of memory pages undermine the benefits of creating memory regions: TODO
[thomas-ab] Collect data about improvements in power saving when using memory regions: TODO
[thomas-ab] Analyze whether this mechanism is ideal for large contiguous memory allocations as required by multimedia drivers: TODO
[thomas-ab] Write a document that explains the procedure to test memory regions patches on Samsung's Exynos4 platform and points to be noted with doing the same on other platforms.

finding:
The memory regions blueprint was based on the memory regions patches from IBM. I completed testing of the first version of the patchset which IBM submitted. But there was no reduction in power consumed since the Exynos4 DDR controller is capable of detecting no-activity and moving DDR banks into low power mode. After that, there were no updates posted for the memory regions patchset and I have been only working on device tree support for Exynos.

From the tests that I did, I feel the real benefit of memory regions will be realized when pages of under utlized memory regions are moved / compacted with pages of other memory regions. But doing that is time consuming since portions of memory management subsystem might have to be changed.

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.