From 237fc5318f5e589dd036152ac583d58868019104 Mon Sep 17 00:00:00 2001 From: Nathan Rossi Date: Fri, 6 Jun 2014 12:18:23 +1000 Subject: qemu: Update qemu to version 2.0.0 * Up version from 1.7.0 -> 2,0.0 * Remove up-streamed patches Signed-off-by: Nathan Rossi --- .../HACK_target-arm_Harcode_the_SCU_offset.patch | 22 ----- ...nx_axienet.c-Add-phy-soft-reset-bit-clear.patch | 29 ------ ...bject_c_Split_out_object_and_class_caches.patch | 101 --------------------- recipes-devtools/qemu/qemu_1.7.0.bbappend | 9 -- recipes-devtools/qemu/qemu_2.0.0.bbappend | 6 ++ 5 files changed, 6 insertions(+), 161 deletions(-) delete mode 100644 recipes-devtools/qemu/files/HACK_target-arm_Harcode_the_SCU_offset.patch delete mode 100644 recipes-devtools/qemu/files/hw-net-xilinx_axienet.c-Add-phy-soft-reset-bit-clear.patch delete mode 100644 recipes-devtools/qemu/files/qom_object_c_Split_out_object_and_class_caches.patch delete mode 100644 recipes-devtools/qemu/qemu_1.7.0.bbappend create mode 100644 recipes-devtools/qemu/qemu_2.0.0.bbappend (limited to 'recipes-devtools') diff --git a/recipes-devtools/qemu/files/HACK_target-arm_Harcode_the_SCU_offset.patch b/recipes-devtools/qemu/files/HACK_target-arm_Harcode_the_SCU_offset.patch deleted file mode 100644 index 68c8dfaa..00000000 --- a/recipes-devtools/qemu/files/HACK_target-arm_Harcode_the_SCU_offset.patch +++ /dev/null @@ -1,22 +0,0 @@ -From: Peter Crosthwaite -Date: Fri, 15 Feb 2013 07:08:24 +0000 -Subject: HACK: target-arm: Harcode the SCU offset - -Becuase the QOM framework to drive this from a property isnt there yet. - -Signed-off-by: Peter Crosthwaite ---- -diff --git a/target-arm/cpu.c b/target-arm/cpu.c -index 496a59f..705688b 100644 ---- a/target-arm/cpu.c -+++ b/target-arm/cpu.c -@@ -531,7 +531,7 @@ static void cortex_a9_initfn(Object *obj) - { - ARMCPRegInfo cbar = { - .name = "CBAR", .cp = 15, .crn = 15, .crm = 0, .opc1 = 4, -- .opc2 = 0, .access = PL1_R|PL3_W, .resetvalue = cpu->reset_cbar, -+ .opc2 = 0, .access = PL1_R|PL3_W, .resetvalue = 0xf8f00000, - .fieldoffset = offsetof(CPUARMState, cp15.c15_config_base_address) - }; - define_one_arm_cp_reg(cpu, &cbar); --- diff --git a/recipes-devtools/qemu/files/hw-net-xilinx_axienet.c-Add-phy-soft-reset-bit-clear.patch b/recipes-devtools/qemu/files/hw-net-xilinx_axienet.c-Add-phy-soft-reset-bit-clear.patch deleted file mode 100644 index 9bc7a564..00000000 --- a/recipes-devtools/qemu/files/hw-net-xilinx_axienet.c-Add-phy-soft-reset-bit-clear.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 425580f9241098c9ef554a33b80153624b1e0318 Mon Sep 17 00:00:00 2001 -From: Nathan Rossi -Date: Wed, 9 Apr 2014 11:15:25 +1000 -Subject: [PATCH] hw/net/xilinx_axienet.c: Add phy soft reset bit clearing - -* Clear the BMCR Reset when writing to registers. - -Signed-off-by: Nathan Rossi ---- - hw/net/xilinx_axienet.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/hw/net/xilinx_axienet.c b/hw/net/xilinx_axienet.c -index 3eb7715..d9c15df 100644 ---- a/hw/net/xilinx_axienet.c -+++ b/hw/net/xilinx_axienet.c -@@ -142,6 +142,9 @@ tdk_write(struct PHY *phy, unsigned int req, unsigned int data) - phy->regs[regnum] = data; - break; - } -+ -+ /* Unconditionally clear regs[BMCR][BMCR_RESET] */ -+ phy->regs[0] &= ~0x8000; - } - - static void --- -1.9.0 - diff --git a/recipes-devtools/qemu/files/qom_object_c_Split_out_object_and_class_caches.patch b/recipes-devtools/qemu/files/qom_object_c_Split_out_object_and_class_caches.patch deleted file mode 100644 index b64a8391..00000000 --- a/recipes-devtools/qemu/files/qom_object_c_Split_out_object_and_class_caches.patch +++ /dev/null @@ -1,101 +0,0 @@ -Subject: [qom,v1,1/1] qom/object.c: Split out object and class caches. -From: Peter Crosthwaite -Message-Id: <23ad4a5a9283ffcf4fc384832f369df46db18ef6.1385612379.git.peter.crosthwaite@xilinx.com> -To: qemu-devel@nongnu.org, - aliguori@us.ibm.com, - pbonzini@redhat.com -Cc: afaerber@suse.de -Date: Wed, 27 Nov 2013 20:27:33 -0800 - -The object-cast and class-cast caches cannot be shared because class -caching is conditional on the target type not being an interface and -object caching is unconditional. Leads to a bug when a class cast -to an interface follows an object cast to the same interface type: - -FooObject = FOO(obj); -FooClass = FOO_GET_CLASS(obj); - -Where TYPE_FOO is an interface. The first (object) cast will be -successful and cache the casting result (i.e. TYPE_FOO will be cached). -The second (class) cast will then check the shared cast cache -and register a hit. The issue is, when a class cast hits in the cache -it just returns a pointer cast of the input class (i.e. the concrete -class). - -When casting to an interface, the cast itself must return the -interface class, not the concrete class. The implementation of class -cast caching already ensures that the returned cast result is only -a pointer cast before caching. The object cast logic however does -not have this check. - -Resolve by just splitting the object and class caches. - -Signed-off-by: Peter Crosthwaite -Reviewed-by: Paolo Bonzini -Upstream-Status: Pending [Pulled from upstream mailing list] ---- -include/qom/object.h | 3 ++- - qom/object.c | 13 +++++++------ - 2 files changed, 9 insertions(+), 7 deletions(-) - -diff --git a/include/qom/object.h b/include/qom/object.h -index a275db2..5f78847 100644 ---- a/include/qom/object.h -+++ b/include/qom/object.h -@@ -358,7 +358,8 @@ struct ObjectClass - Type type; - GSList *interfaces; - -- const char *cast_cache[OBJECT_CLASS_CAST_CACHE]; -+ const char *object_cast_cache[OBJECT_CLASS_CAST_CACHE]; -+ const char *class_cast_cache[OBJECT_CLASS_CAST_CACHE]; - - ObjectUnparent *unparent; - }; -diff --git a/qom/object.c b/qom/object.c -index fc19cf6..21b5a0b 100644 ---- a/qom/object.c -+++ b/qom/object.c -@@ -458,7 +458,7 @@ Object *object_dynamic_cast_assert(Object *obj, const char *typename, - Object *inst; - - for (i = 0; obj && i < OBJECT_CLASS_CAST_CACHE; i++) { -- if (obj->class->cast_cache[i] == typename) { -+ if (obj->class->object_cast_cache[i] == typename) { - goto out; - } - } -@@ -475,9 +475,10 @@ Object *object_dynamic_cast_assert(Object *obj, const char *typename, - - if (obj && obj == inst) { - for (i = 1; i < OBJECT_CLASS_CAST_CACHE; i++) { -- obj->class->cast_cache[i - 1] = obj->class->cast_cache[i]; -+ obj->class->object_cast_cache[i - 1] = -+ obj->class->object_cast_cache[i]; - } -- obj->class->cast_cache[i - 1] = typename; -+ obj->class->object_cast_cache[i - 1] = typename; - } - - out: -@@ -547,7 +548,7 @@ ObjectClass *object_class_dynamic_cast_assert(ObjectClass *class, - int i; - - for (i = 0; class && i < OBJECT_CLASS_CAST_CACHE; i++) { -- if (class->cast_cache[i] == typename) { -+ if (class->class_cast_cache[i] == typename) { - ret = class; - goto out; - } -@@ -568,9 +569,9 @@ ObjectClass *object_class_dynamic_cast_assert(ObjectClass *class, - #ifdef CONFIG_QOM_CAST_DEBUG - if (class && ret == class) { - for (i = 1; i < OBJECT_CLASS_CAST_CACHE; i++) { -- class->cast_cache[i - 1] = class->cast_cache[i]; -+ class->class_cast_cache[i - 1] = class->class_cast_cache[i]; - } -- class->cast_cache[i - 1] = typename; -+ class->class_cast_cache[i - 1] = typename; - } - out: - #endif diff --git a/recipes-devtools/qemu/qemu_1.7.0.bbappend b/recipes-devtools/qemu/qemu_1.7.0.bbappend deleted file mode 100644 index a06eefef..00000000 --- a/recipes-devtools/qemu/qemu_1.7.0.bbappend +++ /dev/null @@ -1,9 +0,0 @@ -QEMU_TARGETS += "microblazeel" - -FILESEXTRAPATHS_append := "${THISDIR}/files:" -SRC_URI_append += " \ - file://HACK_target-arm_Harcode_the_SCU_offset.patch \ - file://HACK_zynq_slcr_Bring_SLCR_out_of_reset_in_kernel_state.patch \ - file://qom_object_c_Split_out_object_and_class_caches.patch \ - file://hw-net-xilinx_axienet.c-Add-phy-soft-reset-bit-clear.patch \ - " diff --git a/recipes-devtools/qemu/qemu_2.0.0.bbappend b/recipes-devtools/qemu/qemu_2.0.0.bbappend new file mode 100644 index 00000000..94296457 --- /dev/null +++ b/recipes-devtools/qemu/qemu_2.0.0.bbappend @@ -0,0 +1,6 @@ +QEMU_TARGETS += "microblazeel" + +FILESEXTRAPATHS_append := "${THISDIR}/files:" +SRC_URI_append += " \ + file://HACK_zynq_slcr_Bring_SLCR_out_of_reset_in_kernel_state.patch \ + " -- cgit v1.2.3-54-g00ecf