Message ID | 20200417191022.5247-6-edgar.iglesias@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | target-microblaze: Misc configurability #2 | expand |
On Fri, Apr 17, 2020 at 12:17 PM Edgar E. Iglesias <edgar.iglesias@gmail.com> wrote: > > From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com> > > Add the pvr-user1 property to control the user-defined > PVR0 User1 field. > > Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Alistair > --- > target/microblaze/cpu.c | 4 +++- > target/microblaze/cpu.h | 1 + > 2 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/target/microblaze/cpu.c b/target/microblaze/cpu.c > index a850c7b23c..0759b23a83 100644 > --- a/target/microblaze/cpu.c > +++ b/target/microblaze/cpu.c > @@ -193,7 +193,8 @@ static void mb_cpu_realizefn(DeviceState *dev, Error **errp) > (cpu->cfg.use_mmu ? PVR0_USE_MMU_MASK : 0) | > (cpu->cfg.endi ? PVR0_ENDI_MASK : 0) | > (version_code << PVR0_VERSION_SHIFT) | > - (cpu->cfg.pvr == C_PVR_FULL ? PVR0_PVR_FULL_MASK : 0); > + (cpu->cfg.pvr == C_PVR_FULL ? PVR0_PVR_FULL_MASK : 0) | > + cpu->cfg.pvr_user1; > > env->pvr.regs[2] |= (cpu->cfg.use_fpu ? PVR2_USE_FPU_MASK : 0) | > (cpu->cfg.use_fpu > 1 ? PVR2_USE_FPU2_MASK : 0) | > @@ -290,6 +291,7 @@ static Property mb_properties[] = { > cfg.opcode_0_illegal, false), > DEFINE_PROP_STRING("version", MicroBlazeCPU, cfg.version), > DEFINE_PROP_UINT8("pvr", MicroBlazeCPU, cfg.pvr, C_PVR_FULL), > + DEFINE_PROP_UINT8("pvr-user1", MicroBlazeCPU, cfg.pvr_user1, 0), > DEFINE_PROP_END_OF_LIST(), > }; > > diff --git a/target/microblaze/cpu.h b/target/microblaze/cpu.h > index ef9081db40..7bb5a3d6c6 100644 > --- a/target/microblaze/cpu.h > +++ b/target/microblaze/cpu.h > @@ -307,6 +307,7 @@ struct MicroBlazeCPU { > bool opcode_0_illegal; > bool div_zero_exception; > bool unaligned_exceptions; > + uint8_t pvr_user1; > char *version; > uint8_t pvr; > } cfg; > -- > 2.20.1 > >
On 4/17/20 9:10 PM, Edgar E. Iglesias wrote: > From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com> > > Add the pvr-user1 property to control the user-defined > PVR0 User1 field. > > Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Reviewed-by: Luc Michel <luc.michel@greensocs.com> > --- > target/microblaze/cpu.c | 4 +++- > target/microblaze/cpu.h | 1 + > 2 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/target/microblaze/cpu.c b/target/microblaze/cpu.c > index a850c7b23c..0759b23a83 100644 > --- a/target/microblaze/cpu.c > +++ b/target/microblaze/cpu.c > @@ -193,7 +193,8 @@ static void mb_cpu_realizefn(DeviceState *dev, Error **errp) > (cpu->cfg.use_mmu ? PVR0_USE_MMU_MASK : 0) | > (cpu->cfg.endi ? PVR0_ENDI_MASK : 0) | > (version_code << PVR0_VERSION_SHIFT) | > - (cpu->cfg.pvr == C_PVR_FULL ? PVR0_PVR_FULL_MASK : 0); > + (cpu->cfg.pvr == C_PVR_FULL ? PVR0_PVR_FULL_MASK : 0) | > + cpu->cfg.pvr_user1; > > env->pvr.regs[2] |= (cpu->cfg.use_fpu ? PVR2_USE_FPU_MASK : 0) | > (cpu->cfg.use_fpu > 1 ? PVR2_USE_FPU2_MASK : 0) | > @@ -290,6 +291,7 @@ static Property mb_properties[] = { > cfg.opcode_0_illegal, false), > DEFINE_PROP_STRING("version", MicroBlazeCPU, cfg.version), > DEFINE_PROP_UINT8("pvr", MicroBlazeCPU, cfg.pvr, C_PVR_FULL), > + DEFINE_PROP_UINT8("pvr-user1", MicroBlazeCPU, cfg.pvr_user1, 0), > DEFINE_PROP_END_OF_LIST(), > }; > > diff --git a/target/microblaze/cpu.h b/target/microblaze/cpu.h > index ef9081db40..7bb5a3d6c6 100644 > --- a/target/microblaze/cpu.h > +++ b/target/microblaze/cpu.h > @@ -307,6 +307,7 @@ struct MicroBlazeCPU { > bool opcode_0_illegal; > bool div_zero_exception; > bool unaligned_exceptions; > + uint8_t pvr_user1; > char *version; > uint8_t pvr; > } cfg; >
diff --git a/target/microblaze/cpu.c b/target/microblaze/cpu.c index a850c7b23c..0759b23a83 100644 --- a/target/microblaze/cpu.c +++ b/target/microblaze/cpu.c @@ -193,7 +193,8 @@ static void mb_cpu_realizefn(DeviceState *dev, Error **errp) (cpu->cfg.use_mmu ? PVR0_USE_MMU_MASK : 0) | (cpu->cfg.endi ? PVR0_ENDI_MASK : 0) | (version_code << PVR0_VERSION_SHIFT) | - (cpu->cfg.pvr == C_PVR_FULL ? PVR0_PVR_FULL_MASK : 0); + (cpu->cfg.pvr == C_PVR_FULL ? PVR0_PVR_FULL_MASK : 0) | + cpu->cfg.pvr_user1; env->pvr.regs[2] |= (cpu->cfg.use_fpu ? PVR2_USE_FPU_MASK : 0) | (cpu->cfg.use_fpu > 1 ? PVR2_USE_FPU2_MASK : 0) | @@ -290,6 +291,7 @@ static Property mb_properties[] = { cfg.opcode_0_illegal, false), DEFINE_PROP_STRING("version", MicroBlazeCPU, cfg.version), DEFINE_PROP_UINT8("pvr", MicroBlazeCPU, cfg.pvr, C_PVR_FULL), + DEFINE_PROP_UINT8("pvr-user1", MicroBlazeCPU, cfg.pvr_user1, 0), DEFINE_PROP_END_OF_LIST(), }; diff --git a/target/microblaze/cpu.h b/target/microblaze/cpu.h index ef9081db40..7bb5a3d6c6 100644 --- a/target/microblaze/cpu.h +++ b/target/microblaze/cpu.h @@ -307,6 +307,7 @@ struct MicroBlazeCPU { bool opcode_0_illegal; bool div_zero_exception; bool unaligned_exceptions; + uint8_t pvr_user1; char *version; uint8_t pvr; } cfg;