ARM: shmobile: R-car Gen2 CMA reservation support
cover ARM: shmobile: R-car Gen2 CMA reservation support
ARM: shmobile: R-car Gen2 CMA reservation support
[PATCH 01/02] ARM: shmobile: Add shared R-Car Gen2 CMA reservation code [PATCH 02/02] ARM: shmobile: Enable R-Car Gen2 CMA code in board files
These patches add CMA reservation code for R-Car Gen2 SoCs and boards.
Instead of using custom memory reservation hacks for demos and other things, make use of standard CMA to reserve a pool of memory. This memory is suitable for devices that take physically contiguous memory such as DU and VSP1 multimedia devices. At this point no device assignment is included - only memory reservation code is added for now.
All R-Car Gen2 SoCs so far have LPAE support and boards tend to use more than 32-bits of physical addresses to access the system memory. These patches add code that during run time parses the DT memory banks and nick 256MiB from the highest memory bank within the legacy 32-bit physical memory space and use that for CMA.
On Lager and Koelsch boards these 256 MiB is at 0x7000000 -> 0x7fffffff.
The code uses dynamic calculation of the CMA area base address over static DT reservation since this kind of configuration is based on software policy. DT is however still used to describe the system memory banks as expected. Software memory partitioning is excluded from DT by design.
---
Written on top of renesas-devel-v3.15-20140609v2
arch/arm/mach-shmobile/board-koelsch-reference.c | 1 arch/arm/mach-shmobile/board-koelsch.c | 1 arch/arm/mach-shmobile/board-lager-reference.c | 1 arch/arm/mach-shmobile/board-lager.c | 1 arch/arm/mach-shmobile/include/mach/rcar-gen2.h | 1 arch/arm/mach-shmobile/setup-r8a7790.c | 1 arch/arm/mach-shmobile/setup-r8a7791.c | 1 arch/arm/mach-shmobile/setup-rcar-gen2.c | 79 ++++++++++++++++++++++ 8 files changed, 86 insertions(+)
Quoted 19 lines · Magnus Damm
ARM: shmobile: R-car Gen2 CMA reservation support
[PATCH 01/02] ARM: shmobile: Add shared R-Car Gen2 CMA reservation code [PATCH 02/02] ARM: shmobile: Enable R-Car Gen2 CMA code in board files
These patches add CMA reservation code for R-Car Gen2 SoCs and boards.
Instead of using custom memory reservation hacks for demos and other things, make use of standard CMA to reserve a pool of memory. This memory is suitable for devices that take physically contiguous memory such as DU and VSP1 multimedia devices. At this point no device assignment is included - only memory reservation code is added for now.
All R-Car Gen2 SoCs so far have LPAE support and boards tend to use more than 32-bits of physical addresses to access the system memory. These patches add code that during run time parses the DT memory banks and nick 256MiB from the highest memory bank within the legacy 32-bit physical memory space and use that for CMA.
Quoted 8 lines
On Lager and Koelsch boards these 256 MiB is at
0x7000000->0x7fffffff.The code uses dynamic calculation of the CMA area base address over static DT reservation since this kind of configuration is based on software policy. DT is however still used to describe the system memory banks as expected. Software memory partitioning is excluded from DT by design.
Signed-off-by Magnus Damm <[email protected]>
Hi Magnus,
this seems clean to me. Shall I queue it up?
Hi Simon,
Quoted 27 lines · Simon Horman
Quoted 26 lines · Magnus Damm
ARM: shmobile: R-car Gen2 CMA reservation support
[PATCH 01/02] ARM: shmobile: Add shared R-Car Gen2 CMA reservation code [PATCH 02/02] ARM: shmobile: Enable R-Car Gen2 CMA code in board files
These patches add CMA reservation code for R-Car Gen2 SoCs and boards.
Instead of using custom memory reservation hacks for demos and other things, make use of standard CMA to reserve a pool of memory. This memory is suitable for devices that take physically contiguous memory such as DU and VSP1 multimedia devices. At this point no device assignment is included - only memory reservation code is added for now.
All R-Car Gen2 SoCs so far have LPAE support and boards tend to use more than 32-bits of physical addresses to access the system memory. These patches add code that during run time parses the DT memory banks and nick 256MiB from the highest memory bank within the legacy 32-bit physical memory space and use that for CMA.
On Lager and Koelsch boards these 256 MiB is at
0x7000000->0x7fffffff.The code uses dynamic calculation of the CMA area base address over static DT reservation since this kind of configuration is based on software policy. DT is however still used to describe the system memory banks as expected. Software memory partitioning is excluded from DT by design.
Quoted 5 lines
Quoted 1 line
Signed-off-by Magnus Damm <[email protected]>Hi Magnus,
this seems clean to me. Shall I queue it up?
Thanks, yes please queue up!
/ magnus
Quoted 30 lines · Magnus Damm
Hi Simon,
Quoted 27 lines · Simon Horman
Quoted 26 lines · Magnus Damm
ARM: shmobile: R-car Gen2 CMA reservation support
[PATCH 01/02] ARM: shmobile: Add shared R-Car Gen2 CMA reservation code [PATCH 02/02] ARM: shmobile: Enable R-Car Gen2 CMA code in board files
These patches add CMA reservation code for R-Car Gen2 SoCs and boards.
Instead of using custom memory reservation hacks for demos and other things, make use of standard CMA to reserve a pool of memory. This memory is suitable for devices that take physically contiguous memory such as DU and VSP1 multimedia devices. At this point no device assignment is included - only memory reservation code is added for now.
All R-Car Gen2 SoCs so far have LPAE support and boards tend to use more than 32-bits of physical addresses to access the system memory. These patches add code that during run time parses the DT memory banks and nick 256MiB from the highest memory bank within the legacy 32-bit physical memory space and use that for CMA.
On Lager and Koelsch boards these 256 MiB is at
0x7000000->0x7fffffff.The code uses dynamic calculation of the CMA area base address over static DT reservation since this kind of configuration is based on software policy. DT is however still used to describe the system memory banks as expected. Software memory partitioning is excluded from DT by design.
Quoted 7 lines
Quoted 5 lines
Quoted 1 line
Signed-off-by Magnus Damm <[email protected]>Hi Magnus,
this seems clean to me. Shall I queue it up?
Thanks, yes please queue up!
Thanks, done.