* [Qemu-devel] [PATCH arm-midr v3 0/2] Make ARM-MIDR a property and use in Zynq @ 2014-01-20 0:09 Alistair Francis 2014-01-20 0:09 ` [Qemu-devel] [PATCH arm-midr v3 1/2] ARM: Convert MIDR to a property Alistair Francis ` (2 more replies) 0 siblings, 3 replies; 7+ messages in thread From: Alistair Francis @ 2014-01-20 0:09 UTC (permalink / raw) To: qemu-devel; +Cc: peter.maydell, peter.crosthwaite, afaerber This series converts cpu->midr (the MIDR register) to a property. This allows it to be set after init which is useful for specific boards (such as Zynq). The change has been done in such a way that it doesn't break compatibility with boards that don't need a custom MIDR. V3: Removed the initialisation of the MIDR property from arm_cpu_post_init as it is no longer needed V2: Use dc->props to avoid using qdev_* Alistair Francis (2): ARM: Convert MIDR to a property ZYNQ: Implement board MIDR control for Zynq hw/arm/xilinx_zynq.c | 7 +++++++ target-arm/cpu.c | 1 + 2 files changed, 8 insertions(+), 0 deletions(-) ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH arm-midr v3 1/2] ARM: Convert MIDR to a property 2014-01-20 0:09 [Qemu-devel] [PATCH arm-midr v3 0/2] Make ARM-MIDR a property and use in Zynq Alistair Francis @ 2014-01-20 0:09 ` Alistair Francis 2014-01-23 13:08 ` Peter Crosthwaite 2014-01-20 0:09 ` [Qemu-devel] [PATCH arm-midr v3 2/2] ZYNQ: Implement board MIDR control for Zynq Alistair Francis 2014-01-27 18:09 ` [Qemu-devel] [PATCH arm-midr v3 0/2] Make ARM-MIDR a property and use in Zynq Peter Maydell 2 siblings, 1 reply; 7+ messages in thread From: Alistair Francis @ 2014-01-20 0:09 UTC (permalink / raw) To: qemu-devel; +Cc: peter.maydell, peter.crosthwaite, afaerber Convert the MIDR register to a property. This allows boards to later set a custom MIDR value. This has been done in such a way to maintain compatibility with all existing CPUs and boards Signed-off-by: Alistair Francis <alistair.francis@xilinx.com> --- I originally added the properties to the cpu->midr variable in a similar method to how Peter Crosthwaite did in his 'Fix Support for ARM CBAR and reset-hivecs' series. V3: Removed the initialisation of the MIDR property from arm_cpu_post_init as it is no longer needed V2: Use dc->props to avoid using qdev_* target-arm/cpu.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/target-arm/cpu.c b/target-arm/cpu.c index 52efd5d..45ad7f0 100644 --- a/target-arm/cpu.c +++ b/target-arm/cpu.c @@ -982,6 +982,7 @@ static const ARMCPUInfo arm_cpus[] = { static Property arm_cpu_properties[] = { DEFINE_PROP_BOOL("start-powered-off", ARMCPU, start_powered_off, false), + DEFINE_PROP_UINT32("midr", ARMCPU, midr, 0), DEFINE_PROP_END_OF_LIST() }; -- 1.7.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH arm-midr v3 1/2] ARM: Convert MIDR to a property 2014-01-20 0:09 ` [Qemu-devel] [PATCH arm-midr v3 1/2] ARM: Convert MIDR to a property Alistair Francis @ 2014-01-23 13:08 ` Peter Crosthwaite 2014-01-23 13:11 ` Andreas Färber 0 siblings, 1 reply; 7+ messages in thread From: Peter Crosthwaite @ 2014-01-23 13:08 UTC (permalink / raw) To: Alistair Francis Cc: Peter Maydell, qemu-devel@nongnu.org Developers, Andreas Färber On Mon, Jan 20, 2014 at 10:09 AM, Alistair Francis <alistair.francis@xilinx.com> wrote: > Convert the MIDR register to a property. This allows boards to later set > a custom MIDR value. This has been done in such a way to maintain > compatibility with all existing CPUs and boards > > Signed-off-by: Alistair Francis <alistair.francis@xilinx.com> Reviewed-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > --- > I originally added the properties to the cpu->midr variable in a similar > method to how Peter Crosthwaite did in his 'Fix Support for ARM CBAR and > reset-hivecs' series. > V3: Removed the initialisation of the MIDR property from arm_cpu_post_init > as it is no longer needed > V2: Use dc->props to avoid using qdev_* > > target-arm/cpu.c | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/target-arm/cpu.c b/target-arm/cpu.c > index 52efd5d..45ad7f0 100644 > --- a/target-arm/cpu.c > +++ b/target-arm/cpu.c > @@ -982,6 +982,7 @@ static const ARMCPUInfo arm_cpus[] = { > > static Property arm_cpu_properties[] = { > DEFINE_PROP_BOOL("start-powered-off", ARMCPU, start_powered_off, false), > + DEFINE_PROP_UINT32("midr", ARMCPU, midr, 0), > DEFINE_PROP_END_OF_LIST() > }; > > -- > 1.7.1 > > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH arm-midr v3 1/2] ARM: Convert MIDR to a property 2014-01-23 13:08 ` Peter Crosthwaite @ 2014-01-23 13:11 ` Andreas Färber 0 siblings, 0 replies; 7+ messages in thread From: Andreas Färber @ 2014-01-23 13:11 UTC (permalink / raw) To: Alistair Francis Cc: Peter Maydell, Peter Crosthwaite, qemu-devel@nongnu.org Developers Am 23.01.2014 14:08, schrieb Peter Crosthwaite: > On Mon, Jan 20, 2014 at 10:09 AM, Alistair Francis > <alistair.francis@xilinx.com> wrote: >> Convert the MIDR register to a property. This allows boards to later set >> a custom MIDR value. This has been done in such a way to maintain >> compatibility with all existing CPUs and boards >> >> Signed-off-by: Alistair Francis <alistair.francis@xilinx.com> Please use consistent subject prefixes as seen in Git history, in this case "target-arm", not "ARM". Andreas > > Reviewed-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> > >> --- >> I originally added the properties to the cpu->midr variable in a similar >> method to how Peter Crosthwaite did in his 'Fix Support for ARM CBAR and >> reset-hivecs' series. >> V3: Removed the initialisation of the MIDR property from arm_cpu_post_init >> as it is no longer needed >> V2: Use dc->props to avoid using qdev_* >> >> target-arm/cpu.c | 1 + >> 1 files changed, 1 insertions(+), 0 deletions(-) >> >> diff --git a/target-arm/cpu.c b/target-arm/cpu.c >> index 52efd5d..45ad7f0 100644 >> --- a/target-arm/cpu.c >> +++ b/target-arm/cpu.c >> @@ -982,6 +982,7 @@ static const ARMCPUInfo arm_cpus[] = { >> >> static Property arm_cpu_properties[] = { >> DEFINE_PROP_BOOL("start-powered-off", ARMCPU, start_powered_off, false), >> + DEFINE_PROP_UINT32("midr", ARMCPU, midr, 0), >> DEFINE_PROP_END_OF_LIST() >> }; >> >> -- >> 1.7.1 >> >> -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH arm-midr v3 2/2] ZYNQ: Implement board MIDR control for Zynq 2014-01-20 0:09 [Qemu-devel] [PATCH arm-midr v3 0/2] Make ARM-MIDR a property and use in Zynq Alistair Francis 2014-01-20 0:09 ` [Qemu-devel] [PATCH arm-midr v3 1/2] ARM: Convert MIDR to a property Alistair Francis @ 2014-01-20 0:09 ` Alistair Francis 2014-01-23 13:12 ` Peter Crosthwaite 2014-01-27 18:09 ` [Qemu-devel] [PATCH arm-midr v3 0/2] Make ARM-MIDR a property and use in Zynq Peter Maydell 2 siblings, 1 reply; 7+ messages in thread From: Alistair Francis @ 2014-01-20 0:09 UTC (permalink / raw) To: qemu-devel; +Cc: peter.maydell, peter.crosthwaite, afaerber This patch uses the fact that the midr variable is now a property This patch sets the midr variable to the boards custom midr Signed-off-by: Alistair Francis <alistair.francis@xilinx.com> --- hw/arm/xilinx_zynq.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c index 98e0958..9ee21e7 100644 --- a/hw/arm/xilinx_zynq.c +++ b/hw/arm/xilinx_zynq.c @@ -37,6 +37,7 @@ #define IRQ_OFFSET 32 /* pic interrupts start from index 32 */ #define MPCORE_PERIPHBASE 0xF8F00000 +#define ZYNQ_BOARD_MIDR 0x413FC090 static const int dma_irqs[8] = { 46, 47, 48, 49, 72, 73, 74, 75 @@ -125,6 +126,12 @@ static void zynq_init(QEMUMachineInitArgs *args) cpu = ARM_CPU(object_new(object_class_get_name(cpu_oc))); + object_property_set_int(OBJECT(cpu), ZYNQ_BOARD_MIDR, "midr", &err); + if (err) { + error_report("%s", error_get_pretty(err)); + exit(1); + } + object_property_set_int(OBJECT(cpu), MPCORE_PERIPHBASE, "reset-cbar", &err); if (err) { error_report("%s", error_get_pretty(err)); -- 1.7.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH arm-midr v3 2/2] ZYNQ: Implement board MIDR control for Zynq 2014-01-20 0:09 ` [Qemu-devel] [PATCH arm-midr v3 2/2] ZYNQ: Implement board MIDR control for Zynq Alistair Francis @ 2014-01-23 13:12 ` Peter Crosthwaite 0 siblings, 0 replies; 7+ messages in thread From: Peter Crosthwaite @ 2014-01-23 13:12 UTC (permalink / raw) To: Alistair Francis Cc: Peter Maydell, qemu-devel@nongnu.org Developers, Andreas Färber You should add an "arm:" arch prefix to the patch subject. We also tend not to use all caps for "Zynq" in-tree. On Mon, Jan 20, 2014 at 10:09 AM, Alistair Francis <alistair.francis@xilinx.com> wrote: > This patch uses the fact that the midr variable is now a property > This patch sets the midr variable to the boards custom midr > > Signed-off-by: Alistair Francis <alistair.francis@xilinx.com> > --- > > hw/arm/xilinx_zynq.c | 7 +++++++ > 1 files changed, 7 insertions(+), 0 deletions(-) > > diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c > index 98e0958..9ee21e7 100644 > --- a/hw/arm/xilinx_zynq.c > +++ b/hw/arm/xilinx_zynq.c > @@ -37,6 +37,7 @@ > #define IRQ_OFFSET 32 /* pic interrupts start from index 32 */ > > #define MPCORE_PERIPHBASE 0xF8F00000 > +#define ZYNQ_BOARD_MIDR 0x413FC090 It's not really a "BOARD" thing. Zynq is a SoC (and this is really a reference board). I think all you need to do here is drop the "BOARD" to simply make "ZYNQ_MIDR". Regards, Peter > > static const int dma_irqs[8] = { > 46, 47, 48, 49, 72, 73, 74, 75 > @@ -125,6 +126,12 @@ static void zynq_init(QEMUMachineInitArgs *args) > > cpu = ARM_CPU(object_new(object_class_get_name(cpu_oc))); > > + object_property_set_int(OBJECT(cpu), ZYNQ_BOARD_MIDR, "midr", &err); > + if (err) { > + error_report("%s", error_get_pretty(err)); > + exit(1); > + } > + > object_property_set_int(OBJECT(cpu), MPCORE_PERIPHBASE, "reset-cbar", &err); > if (err) { > error_report("%s", error_get_pretty(err)); > -- > 1.7.1 > > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH arm-midr v3 0/2] Make ARM-MIDR a property and use in Zynq 2014-01-20 0:09 [Qemu-devel] [PATCH arm-midr v3 0/2] Make ARM-MIDR a property and use in Zynq Alistair Francis 2014-01-20 0:09 ` [Qemu-devel] [PATCH arm-midr v3 1/2] ARM: Convert MIDR to a property Alistair Francis 2014-01-20 0:09 ` [Qemu-devel] [PATCH arm-midr v3 2/2] ZYNQ: Implement board MIDR control for Zynq Alistair Francis @ 2014-01-27 18:09 ` Peter Maydell 2 siblings, 0 replies; 7+ messages in thread From: Peter Maydell @ 2014-01-27 18:09 UTC (permalink / raw) To: Alistair Francis; +Cc: Peter Crosthwaite, QEMU Developers, Andreas Färber On 20 January 2014 00:09, Alistair Francis <alistair.francis@xilinx.com> wrote: > This series converts cpu->midr (the MIDR register) to a property. > This allows it to be set after init which is useful for specific > boards (such as Zynq). The change has been done in such a way that > it doesn't break compatibility with boards that don't need a > custom MIDR. Thanks, applied to target-arm.next. -- PMM ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-01-27 18:10 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-01-20 0:09 [Qemu-devel] [PATCH arm-midr v3 0/2] Make ARM-MIDR a property and use in Zynq Alistair Francis 2014-01-20 0:09 ` [Qemu-devel] [PATCH arm-midr v3 1/2] ARM: Convert MIDR to a property Alistair Francis 2014-01-23 13:08 ` Peter Crosthwaite 2014-01-23 13:11 ` Andreas Färber 2014-01-20 0:09 ` [Qemu-devel] [PATCH arm-midr v3 2/2] ZYNQ: Implement board MIDR control for Zynq Alistair Francis 2014-01-23 13:12 ` Peter Crosthwaite 2014-01-27 18:09 ` [Qemu-devel] [PATCH arm-midr v3 0/2] Make ARM-MIDR a property and use in Zynq Peter Maydell
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).