[Skiboot] [PATCH] v4 mambo: Advertise available RADIX page sizes
Michael Neuling
mikey at neuling.org
Tue Oct 11 16:50:49 AEDT 2016
On Sun, 2016-10-02 at 09:17 +1100, Chris Smart wrote:
> This adds a device tree entry which advertises additional support for 2M
> and 1G pages in a PAPR compliant manner. Without this, the kernel will
> default to only 4K and 64K page sizes.
>
> With this patch, 1G (0x40000000) pages for linear mapping will be used.
> This can be seen by when checking the output of "Mapping range" in the
> kernel log:
>
> # dmesg |grep "Mapping range"
> Mapping range 0x0 - 0x100000000 with 0x40000000
>
> Without this patch, the kernel will use 64K (0x10000) instead:
>
> # dmesg |grep "Mapping range"
> Mapping range 0x0 - 0x100000000 with 0x10000
>
> Signed-off-by: Chris Smart <chris at distroguy.com>
Acked-by: Michael Neuling <mikey at neuling.org>
> ---
>
> Changes since v3:
> - split inline comments out
>
> external/mambo/skiboot.tcl | 18 ++++++++++++++++--
> 1 file changed, 16 insertions(+), 2 deletions(-)
>
> diff --git a/external/mambo/skiboot.tcl b/external/mambo/skiboot.tcl
> index e9aea028edcc..f9d92f626c9d 100644
> --- a/external/mambo/skiboot.tcl
> +++ b/external/mambo/skiboot.tcl
> @@ -205,8 +205,20 @@ for { set c 0 } { $c < $mconf(cpus) } { incr c } {
> lappend reg 0x22 0x120 1 0x22 0x0003 ;# 16G seg 16G pages
> mysim of addprop $cpu_node array "ibm,segment-page-sizes" reg
>
> - set reg {}
> if { $default_config == "P9" } {
> + # Set actual page size encodings
> + set reg {}
> + # 4K pages
> + lappend reg 0x0000000c
> + # 64K pages
> + lappend reg 0xa0000010
> + # 2M pages
> + lappend reg 0x20000015
> + # 1G pages
> + lappend reg 0x4000001e
> + mysim of addprop $cpu_node array "ibm,processor-radix-AP-encodings"
> reg
> +
> + set reg {}
> # POWER9 PAPR defines upto bytes 62-63
> # header + bytes 0-5
> lappend reg 0x4000f63fc70080c0
> @@ -226,10 +238,12 @@ for { set c 0 } { $c < $mconf(cpus) } { incr c } {
> lappend reg 0x8000800080008000
> # bytes 62-69
> lappend reg 0x8000000000000000
> + mysim of addprop $cpu_node array64 "ibm,pa-features" reg
> } else {
> + set reg {}
> lappend reg 0x6000f63fc70080c0
> + mysim of addprop $cpu_node array64 "ibm,pa-features" reg
> }
> - mysim of addprop $cpu_node array64 "ibm,pa-features" reg
>
> set irqreg [list]
> for { set t 0 } { $t < $mconf(threads) } { incr t } {
More information about the Skiboot
mailing list