<feed xmlns='http://www.w3.org/2005/Atom'>
<title>qemu/hw/cpu, branch master</title>
<subtitle>QEMU development tree</subtitle>
<id>https://git.zx2c4.com/qemu/atom/hw/cpu?h=master</id>
<link rel='self' href='https://git.zx2c4.com/qemu/atom/hw/cpu?h=master'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/'/>
<updated>2024-04-25T10:48:12Z</updated>
<entry>
<title>hw: Add a Kconfig switch for the TYPE_CPU_CLUSTER device</title>
<updated>2024-04-25T10:48:12Z</updated>
<author>
<name>Thomas Huth</name>
<email>thuth@redhat.com</email>
</author>
<published>2024-04-15T06:56:55Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=259181d29f81aa72a489dddc7d59517894b51e0f'/>
<id>urn:sha1:259181d29f81aa72a489dddc7d59517894b51e0f</id>
<content type='text'>
The cpu-cluster device is only needed for some few arm and riscv
machines. Let's avoid compiling and linking it if it is not really
necessary.

Reviewed-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
Signed-off-by: Thomas Huth &lt;thuth@redhat.com&gt;
Message-ID: &lt;20240415065655.130099-3-thuth@redhat.com&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Signed-off-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
</content>
</entry>
<entry>
<title>hw: Fix problem with the A*MPCORE switches in the Kconfig files</title>
<updated>2024-04-25T10:48:12Z</updated>
<author>
<name>Thomas Huth</name>
<email>thuth@redhat.com</email>
</author>
<published>2024-04-15T06:56:54Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=c1c350dc2ccbf92524754694547909e1455e4eef'/>
<id>urn:sha1:c1c350dc2ccbf92524754694547909e1455e4eef</id>
<content type='text'>
A9MPCORE, ARM11MPCORE and A15MPCORE are defined twice, once in
hw/cpu/Kconfig and once in hw/arm/Kconfig. This is only possible
by accident, since hw/cpu/Kconfig is never included from hw/Kconfig.
Fix it by declaring the switches only in hw/cpu/Kconfig (since the
related files reside in the hw/cpu/ folder) and by making sure that
the file hw/cpu/Kconfig is now properly included from hw/Kconfig.

Reviewed-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
Signed-off-by: Thomas Huth &lt;thuth@redhat.com&gt;
Message-ID: &lt;20240415065655.130099-2-thuth@redhat.com&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Signed-off-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
</content>
</entry>
<entry>
<title>target/arm: Move GTimer definitions to new 'gtimer.h' header</title>
<updated>2024-01-26T11:30:49Z</updated>
<author>
<name>Philippe Mathieu-Daudé</name>
<email>philmd@linaro.org</email>
</author>
<published>2024-01-18T20:06:40Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=f4f318b41abe76a68ec1d616744ab9d6ec839abc'/>
<id>urn:sha1:f4f318b41abe76a68ec1d616744ab9d6ec839abc</id>
<content type='text'>
Move Arm A-class Generic Timer definitions to the new
"target/arm/gtimer.h" header so units in hw/ which don't
need access to ARMCPU internals can use them without
having to include the huge "cpu.h".

Suggested-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Signed-off-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Message-id: 20240118200643.29037-20-philmd@linaro.org
Signed-off-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
</content>
</entry>
<entry>
<title>hw/cpu/a9mpcore: Build it only once</title>
<updated>2024-01-26T11:30:48Z</updated>
<author>
<name>Philippe Mathieu-Daudé</name>
<email>philmd@linaro.org</email>
</author>
<published>2024-01-18T20:06:33Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=3896b6ffffe97aa387631a62948a51913f12f7e5'/>
<id>urn:sha1:3896b6ffffe97aa387631a62948a51913f12f7e5</id>
<content type='text'>
hw/cpu/a9mpcore.c doesn't require "cpu.h" anymore.
By removing it, the unit become target agnostic:
we can build it once. Update meson.

Signed-off-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Message-id: 20240118200643.29037-13-philmd@linaro.org
Signed-off-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
</content>
</entry>
<entry>
<title>hw/cpu/cluster: Cleanup unused included header in cluster.c</title>
<updated>2024-01-05T15:20:15Z</updated>
<author>
<name>Zhao Liu</name>
<email>zhao1.liu@intel.com</email>
</author>
<published>2023-11-27T14:56:11Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=a8a9f698ac7883cbce991d7e02db0981d152378e'/>
<id>urn:sha1:a8a9f698ac7883cbce991d7e02db0981d152378e</id>
<content type='text'>
Remove unused header (qemu/module.h and qemu/cutils.h) in cluster.c,
and reorder the remaining header files (except qemu/osdep.h) in
alphabetical order.

Tested by "./configure" and then "make".

Signed-off-by: Zhao Liu &lt;zhao1.liu@intel.com&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
Message-ID: &lt;20231127145611.925817-3-zhao1.liu@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>hw/cpu/core: Cleanup unused included header in core.c</title>
<updated>2024-01-05T15:20:15Z</updated>
<author>
<name>Zhao Liu</name>
<email>zhao1.liu@intel.com</email>
</author>
<published>2023-11-27T14:56:10Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=72bb89582447ed896e95883ff9741fa0fc95a5bd'/>
<id>urn:sha1:72bb89582447ed896e95883ff9741fa0fc95a5bd</id>
<content type='text'>
Remove unused header (qemu/module.h and sysemu/cpus.h) in core.c,
and reorder the remaining header files (except qemu/osdep.h) in
alphabetical order.

Tested by "./configure" and then "make".

Signed-off-by: Zhao Liu &lt;zhao1.liu@intel.com&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
Message-ID: &lt;20231127145611.925817-2-zhao1.liu@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>hw/other: spelling fixes</title>
<updated>2023-09-21T08:31:16Z</updated>
<author>
<name>Michael Tokarev</name>
<email>mjt@tls.msk.ru</email>
</author>
<published>2023-07-14T11:32:24Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=9b4b4e510bcb8b1c3c4789615dce3b520aa1f1d3'/>
<id>urn:sha1:9b4b4e510bcb8b1c3c4789615dce3b520aa1f1d3</id>
<content type='text'>
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
Reviewed-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
</content>
</entry>
<entry>
<title>meson: Replace softmmu_ss -&gt; system_ss</title>
<updated>2023-06-20T08:01:30Z</updated>
<author>
<name>Philippe Mathieu-Daudé</name>
<email>philmd@linaro.org</email>
</author>
<published>2023-06-13T13:33:47Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=de6cd7599b518f0c832cc85980196ec02c129a86'/>
<id>urn:sha1:de6cd7599b518f0c832cc85980196ec02c129a86</id>
<content type='text'>
We use the user_ss[] array to hold the user emulation sources,
and the softmmu_ss[] array to hold the system emulation ones.
Hold the latter in the 'system_ss[]' array for parity with user
emulation.

Mechanical change doing:

  $ sed -i -e s/softmmu_ss/system_ss/g $(git grep -l softmmu_ss)

Signed-off-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Message-Id: &lt;20230613133347.82210-10-philmd@linaro.org&gt;
Signed-off-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
</content>
</entry>
<entry>
<title>hw/cpu: Mark arm11 and realview mpcore as target-independent code</title>
<updated>2023-01-16T16:51:20Z</updated>
<author>
<name>Thomas Huth</name>
<email>thuth@redhat.com</email>
</author>
<published>2023-01-12T13:49:26Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=fb73eec46bdbfad0977b9a46f102a53e9083599c'/>
<id>urn:sha1:fb73eec46bdbfad0977b9a46f102a53e9083599c</id>
<content type='text'>
Seems like there is nothing target-specific in here, so these files
can be moved to softmmu_ss to avoid that they get compiled twice
(once for qemu-system-arm and once for qemu-system-aarch64).

Signed-off-by: Thomas Huth &lt;thuth@redhat.com&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Message-Id: &lt;20230112134928.1026006-6-thuth@redhat.com&gt;
Signed-off-by: Laurent Vivier &lt;laurent@vivier.eu&gt;
</content>
</entry>
<entry>
<title>cpu/core: Fix "help" of CPU core device types</title>
<updated>2021-04-09T20:05:16Z</updated>
<author>
<name>Greg Kurz</name>
<email>groug@kaod.org</email>
</author>
<published>2021-04-09T16:03:39Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/qemu/commit/?id=0b47ec4b95ad1952e55e639711d442f8ec6e1345'/>
<id>urn:sha1:0b47ec4b95ad1952e55e639711d442f8ec6e1345</id>
<content type='text'>
Calling qdev_get_machine() from a QOM instance_init function is
fragile because we can't be sure the machine object actually
exists. And this happens to break when passing ",help" on the
command line to get the list of properties for a CPU core
device types :

$ ./qemu-system-ppc64 -device power8_v2.0-spapr-cpu-core,help
qemu-system-ppc64: ../../hw/core/machine.c:1290:
 qdev_get_machine: Assertion `machine != NULL' failed.
Aborted (core dumped)

This used to work before QEMU 5.0, but commit 3df261b6676b
unwillingly introduced a subtle regression : the above command
line needs to create an instance but the instance_init function
of the base class calls qdev_get_machine() before
qemu_create_machine() has been called, which is a programming bug.

Use current_machine instead. It is okay to skip the setting of
nr_thread in this case since only its type is displayed.

Fixes: 3df261b6676b ("softmmu/vl.c: Handle '-cpu help' and '-device help' before 'no default machine'")
Reported-by: Thomas Huth &lt;thuth@redhat.com&gt;
Signed-off-by: Greg Kurz &lt;groug@kaod.org&gt;
Cc: peter.maydell@linaro.org
Message-Id: &lt;20210409160339.500167-3-groug@kaod.org&gt;
Signed-off-by: Eduardo Habkost &lt;ehabkost@redhat.com&gt;
</content>
</entry>
</feed>
