target/xtensa: xtfpga: provide default memory sizes
PATCH 1/1 target/xtensa: xtfpga: provide default memory sizes
Provide default RAM sizes for all XTFPGA boards, so that when started without -m option they do the right thing.
--- hw/xtensa/xtfpga.c | 8 ++++++++ 1 file changed, 8 insertions(+)
hw/xtensa/xtfpga.c +8 -0
@@ -568,6 +568,7 @@ static void xtfpga_lx60_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_lx60_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =64 * MiB; }static const TypeInfo xtfpga_lx60_type = {
@@ -584,6 +585,7 @@ static void xtfpga_lx60_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_lx60_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =64 * MiB; }static const TypeInfo xtfpga_lx60_nommu_type = {
@@ -600,6 +602,7 @@ static void xtfpga_lx200_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_lx200_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =96 * MiB; }static const TypeInfo xtfpga_lx200_type = {
@@ -616,6 +619,7 @@ static void xtfpga_lx200_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_lx200_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =96 * MiB; }static const TypeInfo xtfpga_lx200_nommu_type = {
@@ -632,6 +636,7 @@ static void xtfpga_ml605_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_ml605_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =256 * MiB; }static const TypeInfo xtfpga_ml605_type = {
@@ -648,6 +653,7 @@ static void xtfpga_ml605_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_ml605_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =256 * MiB; }static const TypeInfo xtfpga_ml605_nommu_type = {
@@ -664,6 +670,7 @@ static void xtfpga_kc705_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_kc705_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =1 * GiB; }static const TypeInfo xtfpga_kc705_type = {
@@ -680,6 +687,7 @@ static void xtfpga_kc705_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_kc705_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =256 * MiB; }static const TypeInfo xtfpga_kc705_nommu_type = {
Signature · 1 line
2.11.0
Hi Max,
Quoted 45 lines · Max Filippov
Provide default RAM sizes for all XTFPGA boards, so that when started without -m option they do the right thing.
Signed-off-by Max Filippov <[email protected]>--- hw/xtensa/xtfpga.c | 8 ++++++++ 1 file changed, 8 insertions(+)hw/xtensa/xtfpga.c +4
-0@@ -568,6 +568,7 @@ static void xtfpga_lx60_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_lx60_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =64 * MiB; }static const TypeInfo xtfpga_lx60_type = {@@ -584,6 +585,7 @@ static void xtfpga_lx60_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_lx60_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =64 * MiB; }static const TypeInfo xtfpga_lx60_nommu_type = {@@ -600,6 +602,7 @@ static void xtfpga_lx200_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_lx200_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =96 * MiB; }static const TypeInfo xtfpga_lx200_type = {@@ -616,6 +619,7 @@ static void xtfpga_lx200_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_lx200_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =96 * MiB; }static const TypeInfo xtfpga_lx200_nommu_type = {
hw/xtensa/xtfpga.c static void xtfpga_ml605_class_init(ObjectClass *oc, void *data) · line 639
Quoted 4 lines
hw/xtensa/xtfpga.c +1
-0@@ -632,6 +636,7 @@ static void xtfpga_ml605_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_ml605_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =256 * MiB;
Isn't it 512 MB for the ML605?
hw/xtensa/xtfpga.c static void xtfpga_ml605_nommu_class_init(ObjectClass *oc, void *data) · line 656
Quoted 8 lines
hw/xtensa/xtfpga.c +1
-0}static const TypeInfo xtfpga_ml605_type = {@@ -648,6 +653,7 @@ static void xtfpga_ml605_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_ml605_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =256 * MiB;
Ditto.
Quoted 13 lines
hw/xtensa/xtfpga.c +1
-0}static const TypeInfo xtfpga_ml605_nommu_type = {@@ -664,6 +670,7 @@ static void xtfpga_kc705_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_kc705_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =1 * GiB; }static const TypeInfo xtfpga_kc705_type = {
hw/xtensa/xtfpga.c static void xtfpga_kc705_nommu_class_init(ObjectClass *oc, void *data) · line 693
Quoted 7 lines
hw/xtensa/xtfpga.c +1
-0@@ -680,6 +687,7 @@ static void xtfpga_kc705_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_kc705_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =256 * MiB; }static const TypeInfo xtfpga_kc705_nommu_type = {
Others looks OK.
Regards,
Phil.
Hi Philippe,
thanks for your review.
Quoted 9 lines · Philippe Mathieu-Daudé
hw/xtensa/xtfpga.c static void xtfpga_ml605_class_init(ObjectClass *oc, void *data) · line 639
Quoted 6 lines · Max Filippov
static const TypeInfo xtfpga_lx200_nommu_type = {hw/xtensa/xtfpga.c +1
-0@@ -632,6 +636,7 @@ static void xtfpga_ml605_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_ml605_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =256 * MiB;Isn't it 512 MB for the ML605?
There's 512MB on the board, but the Tensilica prototyping user's guide for the ML605 only documents 256MB in the memory map section. But now that you've mentioned it I recall that in reality both ML605 and KC705 had all onboard memory minus 128MB mapped for cores with MMU.
Quoted 10 lines
hw/xtensa/xtfpga.c static void xtfpga_ml605_nommu_class_init(ObjectClass *oc, void *data) · line 656
Quoted 8 lines
hw/xtensa/xtfpga.c +1
-0}static const TypeInfo xtfpga_ml605_type = {@@ -648,6 +653,7 @@ static void xtfpga_ml605_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_ml605_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =256 * MiB;Ditto.
For noMMU cores there's only 256MB window available for the system memory, so it's capped at 256MB.
I'll send an updated v2.
Signature · 2 lines
Thanks. -- Max
Quoted 33 lines · Max Filippov
Hi Philippe,
thanks for your review.
Quoted 9 lines · Philippe Mathieu-Daudé
hw/xtensa/xtfpga.c static void xtfpga_ml605_class_init(ObjectClass *oc, void *data) · line 639
Quoted 6 lines · Max Filippov
static const TypeInfo xtfpga_lx200_nommu_type = {hw/xtensa/xtfpga.c +1
-0@@ -632,6 +636,7 @@ static void xtfpga_ml605_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_ml605_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_TYPE ; + mc->default_ram_size =256 * MiB;Isn't it 512 MB for the ML605?
There's 512MB on the board, but the Tensilica prototyping user's guide for the ML605 only documents 256MB in the memory map section. But now that you've mentioned it I recall that in reality both ML605 and KC705 had all onboard memory minus 128MB mapped for cores with MMU.
Quoted 10 lines
hw/xtensa/xtfpga.c static void xtfpga_ml605_nommu_class_init(ObjectClass *oc, void *data) · line 656
Quoted 8 lines
hw/xtensa/xtfpga.c +1
-0}static const TypeInfo xtfpga_ml605_type = {@@ -648,6 +653,7 @@ static void xtfpga_ml605_nommu_class_init(ObjectClass *oc, void *data) mc->init = xtfpga_ml605_nommu_init; mc->max_cpus =4 ; mc->default_cpu_type =XTENSA_DEFAULT_CPU_NOMMU_TYPE ; + mc->default_ram_size =256 * MiB;Ditto.
Quoted 2 lines
For noMMU cores there's only 256MB window available for the system memory, so it's capped at 256MB.
This totally makes sense.
Quoted 2 lines
I'll send an updated v2.
Thanks!
Phil.