On 1/9/24 22:09, Philippe Mathieu-Daudé wrote:
On 9/1/24 22:07, Philippe Mathieu-Daudé wrote:
Hi Cédric,
On 9/1/24 19:06, Cédric Le Goater wrote:
On 1/9/24 18:40, Fabiano Rosas wrote:
Cédric Le Goater writes:
On 1/3/24 20:53, Fabiano Rosas wrote:
Philippe Mathieu-Daudé writes:
+Peter/F
Hi, Michael and Jason
Do you have any other comments?
Is there a schedule for merge the patch into the community?
Thank you
Wentao
-Original Message-
From: Wentao Jia
Sent: Tuesday, January 2, 2024 1:57 PM
To: qemu-devel@nongnu.org
Cc: 'm...@redhat.com' ; Rick Zhong
; 'Jason Wang'
S
On 1/12/24 14:51, Pierrick Bouvier wrote:
On 1/12/24 02:10, Richard Henderson wrote:
On 1/12/24 01:23, Pierrick Bouvier wrote:
Signed-off-by: Pierrick Bouvier
---
tests/plugin/inline.c | 17 -
1 file changed, 17 deletions(-)
Was this supposed to be together with patch 6?
On 1/10/24 07:03, Markus Armbruster wrote:
Peter Xu writes:
On Tue, Jan 09, 2024 at 10:22:31PM +0100, Philippe Mathieu-Daudé wrote:
Hi Fabiano,
On 9/1/24 21:21, Fabiano Rosas wrote:
Cédric Le Goater writes:
On 1/9/24 18:40, Fabiano Rosas wrote:
Cédric Le Goater writes:
On 1/3/24 20:5
On 1/12/24 01:23, Pierrick Bouvier wrote:
Signed-off-by: Pierrick Bouvier
---
contrib/plugins/hotblocks.c | 25 +++--
1 file changed, 19 insertions(+), 6 deletions(-)
Reviewed-by: Richard Henderson
r~
On 1/12/24 01:23, Pierrick Bouvier wrote:
@@ -180,11 +190,11 @@ static void plugin_exit(qemu_plugin_id_t id, void *p)
class = &class_table[i];
switch (class->what) {
case COUNT_CLASS:
-if (class->count || verbose) {
+if (count(class->count) ||
On 1/12/24 12:40, Richard Henderson wrote:
On 1/12/24 14:51, Pierrick Bouvier wrote:
On 1/12/24 02:10, Richard Henderson wrote:
On 1/12/24 01:23, Pierrick Bouvier wrote:
Signed-off-by: Pierrick Bouvier
---
tests/plugin/inline.c | 17 -
1 file changed, 17 deletions(-)
On 1/10/24 07:26, Peter Xu wrote:
On Wed, Jan 10, 2024 at 07:03:06AM +0100, Markus Armbruster wrote:
Peter Xu writes:
On Tue, Jan 09, 2024 at 10:22:31PM +0100, Philippe Mathieu-Daudé wrote:
Hi Fabiano,
On 9/1/24 21:21, Fabiano Rosas wrote:
Cédric Le Goater writes:
On 1/9/24 18:40, Fabia
Thomas Huth writes:
> On 08/01/2024 16.13, Alex Bennée wrote:
>> With the latest fixes for #2010 and #2013 these tests look pretty
>> stable now. Of course the only way to be really sure is to run it in
>> the CI infrastructure and see what breaks.
>> Acked-by: Pavel Dovgalyuk
>> Signed-off-by:
This series implements IOPMP specification v1.0.0-draft4 rapid-k model and add
IOPMP device to RISC-V virt machine.
Patch 1 add config STREAM make other device can reuse /hw/core/stream.c, IOPMP
implementation will use it. Patch 2 implement IOPMP deivce. Patch 3 add IOPMP
device to RISC-V virt mac
Make other device can use /hw/core/stream.c by select this config.
Reviewed-by: Alistair Francis
Signed-off-by: Ethan Chen
---
hw/Kconfig | 1 +
hw/core/Kconfig | 3 +++
hw/core/meson.build | 2 +-
3 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/hw/Kconfig b/hw/Kconfi
On Sun, Jan 07 2024, Thomas Weißschuh wrote:
> misc/pvpanic.h from the Linux UAPI does not define a Linux UAPI but a
> qemu device API.
>
> This leads to a weird process when updates to the interface are needed:
> 1) Change to the specification in the qemu tree
> 2) Change to the header in the Li
Support specification Version 1.0.0-draft4 rapid-k model.
The specification url:
https://github.com/riscv-non-isa/iopmp-spec/blob/main/riscv_iopmp_specification.pdf
The memory transaction from source devices connected to IOPMP will be
checked by IOPMP rule. The method of connecting the source devi
If a source device is connected to the IOPMP device, its memory
transaction will be checked by the IOPMP rule.
When using RISC-V virt machine option "iopmp=on", the generic PCIe host
bridge connects to IOPMP. The PCI devices on the brigde will connets to
IOPMP with default source id(SID) from PCI
On Sun, Jan 07 2024, Thomas Weißschuh wrote:
> The different components of pvpanic duplicate the list of supported
> events. Move it to the shared header file to minimize changes when new
> events are added.
>
> Signed-off-by: Thomas Weißschuh
> ---
> hw/misc/pvpanic-isa.c | 2 +-
> hw/misc
On Sun, Jan 07 2024, Thomas Weißschuh wrote:
> Avoid the necessity to update all tests when new events are added
> to the device.
>
> Acked-by: Thomas Huth
> Signed-off-by: Thomas Weißschuh
> ---
> tests/qtest/pvpanic-pci-test.c | 5 +++--
> tests/qtest/pvpanic-test.c | 5 +++--
> 2 files
On Sun, Jan 07 2024, Thomas Weißschuh wrote:
> Shutdown requests are normally hardware dependent.
> By extending pvpanic to also handle shutdown requests, guests can
> submit such requests with an easily implementable and cross-platform
> mechanism.
>
> Signed-off-by: Thomas Weißschuh
> ---
> d
在 2024/1/11 下午4:26, Thomas Huth 写道:
On 11/01/2024 08.25, gaosong wrote:
Hi,
在 2024/1/11 下午3:08, Thomas Huth 写道:
On 02/01/2024 18.22, Philippe Mathieu-Daudé wrote:
Full build config to run CI tests on a Loongarch64 host.
Forks might enable this by setting LOONGARCH64_RUNNER_AVAILABLE
in their
It's been marked as deprecated since QEMU 8.0, so it should be fine
to remove this now.
Signed-off-by: Thomas Huth
---
docs/about/deprecated.rst | 6 --
docs/about/removed-features.rst | 5 +
system/vl.c | 4
qemu-options.hx | 9 -
4
It's been marked as deprecated since QEMU 8.0, so it should be fine
to remove this now.
Signed-off-by: Thomas Huth
---
docs/about/deprecated.rst | 6 --
docs/about/removed-features.rst | 8
system/vl.c | 4
qemu-options.hx | 7 ---
It's been marked as deprecated since QEMU 8.1 (and was only available
since QEMU 8.0 anyway), so it should be fine to remove this now.
Signed-off-by: Thomas Huth
---
docs/about/deprecated.rst | 5 -
docs/about/removed-features.rst | 5 +
system/vl.c | 6 -
It's been marked as deprecated since QEMU 8.1, so it should be fine
to remove this now.
Signed-off-by: Thomas Huth
---
docs/about/deprecated.rst | 5 -
docs/about/removed-features.rst | 5 +
system/vl.c | 5 -
qemu-options.hx | 12
The -no-hpet, -no-acpi, -async-teardown, -chroot and -singlestep
options have been deprecated for at least two releases, so it should
be fine if we remove them now.
Thomas Huth (5):
qemu-options: Remove the deprecated -no-hpet option
qemu-options: Remove the deprecated -no-acpi option
qemu-o
It's been marked as deprecated since QEMU 8.1, so it should be fine
to remove this now.
Signed-off-by: Thomas Huth
---
docs/about/deprecated.rst | 6 --
docs/about/removed-features.rst | 7 +++
system/vl.c | 18 +-
qemu-options.hx
On Fri, 12 Jan 2024 11:00:57 +0100
Thomas Huth wrote:
> It's been marked as deprecated since QEMU 8.1 (and was only available
> since QEMU 8.0 anyway), so it should be fine to remove this now.
>
> Signed-off-by: Thomas Huth
Reviewed-by: Claudio Imbrenda
> ---
> docs/about/deprecated.rst
On 1/10/24 14:19, Fabiano Rosas wrote:
Markus Armbruster writes:
Peter Xu writes:
On Tue, Jan 09, 2024 at 10:22:31PM +0100, Philippe Mathieu-Daudé wrote:
Hi Fabiano,
On 9/1/24 21:21, Fabiano Rosas wrote:
Cédric Le Goater writes:
On 1/9/24 18:40, Fabiano Rosas wrote:
Cédric Le Goater
From: Helge Deller
NetBSD accesses some astro and elroy registers which aren't accessed
by Linux yet. Add emulation for those registers to allow NetBSD to
boot further.
Please note that this patch is not sufficient to completely boot up
NetBSD on the 64-bit C3700 machine yet.
Signed-off-by: Helg
From: Helge Deller
The value of unwind_breg may reference register %r0, but we need to avoid
accessing gr0 directly and use the value 0 instead.
At runtime I've seen unwind_breg being zero with the Linux kernel when
rfi is used to jump to smp_callin().
Signed-off-by: Helge Deller
Reviewed-by:
From: Helge Deller
Put correct values (depending on CPU arch) into IOR and ISR on fault.
Signed-off-by: Helge Deller
---
target/hppa/cpu.c | 6 +-
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/target/hppa/cpu.c b/target/hppa/cpu.c
index 04de1689d7..fda32d7f59 100644
--- a/ta
From: Helge Deller
The physical hardware allows DIMMs of 4 MB size and above, allowing up
to 3840 MB of memory, but is restricted by setup code to 3 GB.
Increase the limit to allow up to the maximum amount of memory.
Btw. the memory area from 0xf000. to 0x. is reserved by
the archite
From: Helge Deller
There were some regressions introduced with Qemu v8.2 on the hppa/hppa64
target, e.g.:
- 32-bit HP-UX crashes on B160L (32-bit) machine
- NetBSD boot failure due to power button in page zero
- NetBSD FPU detection failure
- OpenBSD 7.4 boot failure
This patch series fixes tho
From: Helge Deller
Recognize the qemu --nodefaults option, which will disable the
following default devices on hppa:
- lsi53c895a SCSI controller,
- artist graphics card,
- LASI 82596 NIC,
- tulip PCI NIC,
- second serial PCI card,
- USB OHCI controller.
Adding this option is very useful to allo
From: Helge Deller
Move functionality to set IOR and ISR on fault into own
function. This will be used by follow-up patches.
Signed-off-by: Helge Deller
---
target/hppa/cpu.h| 1 +
target/hppa/mem_helper.c | 23 ---
2 files changed, 13 insertions(+), 11 deletions(-
From: Helge Deller
The various operating systems (e.g. Linux, NetBSD) have issues
mapping the power button when it's stored in page zero.
NetBSD even crashes, because it fails to map that page and then
accesses unmapped memory.
Since we now have a consistent memory mapping of PDC in 32-bit
and 6
From: Helge Deller
Put correct values (depending on CPU arch) into IOR and ISR on fault.
Signed-off-by: Helge Deller
---
target/hppa/op_helper.c | 6 +-
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/target/hppa/op_helper.c b/target/hppa/op_helper.c
index 7f607c3afd..ce154694
From: Helge Deller
Fix the address translation for PDC space on PA2.0 if PSW.W=0.
Basically, for any address in the 32-bit PDC range from 0xf000 to
0xf100 keep the lower 32-bits and just set the upper 32-bits to
0xfff0.
This mapping fixes the emulated power button in PDC space for 32
D_H
valgrind_stack_deregister(co);
#endif
---
base-commit: f614acb7450282a119d85d759f27eae190476058
change-id: 20240112-asan-eb695c769f40
Best regards,
--
Akihiko Odaki
On Fri, Jan 12, 2024 at 08:01:36AM +0800, Peter Xu wrote:
> On Thu, Jan 11, 2024 at 03:46:02PM -0300, Fabiano Rosas wrote:
> > > (1) Does this apply to all io channel users, or only migration?
> >
> > All file channel users.
>
> I meant the whole idea of flushing on close, on whether there will b
On 12/01/2024 06.21, Harsh Prateek Bora wrote:
On 1/12/24 10:42, Thomas Huth wrote:
On 12/01/2024 05.57, Harsh Prateek Bora wrote:
On 1/11/24 22:16, Thomas Huth wrote:
The character "+" is now forbidden in QOM device names (see commit
b447378e1217 - "Limit type names to alphanumerical and
This ensures the rootfs is never permanently changed as we don't need
persistence between tests anyway.
Message-Id: <20240103173349.398526-3-alex.ben...@linaro.org>
Signed-off-by: Alex Bennée
Reviewed-by: Philippe Mathieu-Daudé
diff --git a/tests/avocado/kvm_xen_guest.py b/tests/avocado/kvm_xen
From: Thomas Huth
When running the test in slow mode on a very loaded system with the
arm/aarch64 target and with --enable-debug, it can take longer than
10 minutes to finish the introspection test. Bump the timeout to twelve
minutes to make sure that it also finishes in such situations.
Signed-
This reverts aeb5f8f248e (gitlab: build the correct microblaze target)
now we actually have a little-endian test in avocado thanks to this
years advent calendar.
Message-Id: <20240103173349.398526-4-alex.ben...@linaro.org>
Signed-off-by: Alex Bennée
Reviewed-by: Thomas Huth
diff --git a/.gitlab
From: Daniel P. Berrangé
The qos-test takes just under 1 minute in a --enable-debug
build. Bumping to 2 minutes will give more headroom.
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Thomas Huth
Message-ID: <20230717182859.707658-10-berra...@redhat.com>
Signed-off-by: Thomas Huth
Message-Id:
From: Daniel P. Berrangé
The npcm7xx_pwm-test takes 3 & 1/2 minutes in a --enable-debug build.
Bumping to 5 minutes will give more headroom.
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Thomas Huth
Message-ID: <20230717182859.707658-5-berra...@redhat.com>
Signed-off-by: Thomas Huth
Message-
The function qemu_chr_fe_init already treats be->fe_open as a bool and
if it acts like a bool it should be one. While we are at it make the
variable name more descriptive and add kdoc decorations.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Alex Bennée
Message-Id: <20231211145959.93759-1-
From: Daniel P. Berrangé
This is reliably hitting the current 2 minute timeout in GitLab CI,
and for the TCI job, it even hits a 6 minute timeout.
Reviewed-by: Thomas Huth
Signed-off-by: Daniel P. Berrangé
Message-ID: <20230717182859.707658-12-berra...@redhat.com>
Signed-off-by: Thomas Huth
M
From: Thomas Huth
We've already got a test for a big endian microblaze machine, but so
far we lack one for a little endian machine. Now that the QEMU advent
calendar featured such an image, we can test the little endian mode,
too.
Signed-off-by: Thomas Huth
Message-Id: <20231215161851.71508-1-t
From: Daniel P. Berrangé
The migration test should take between 1 min 30 and 2 mins on reasonably
modern hardware. The test is not especially compute bound, rather its
running time is dominated by the guest RAM size relative to the
bandwidth cap, which forces each iteration to take at least 30 se
From: Daniel P. Berrangé
On a loaded system with --enable-debug, this test can take longer than
5 minutes. Raising the timeout to 6 minutes gives greater headroom for
such situations.
Signed-off-by: Daniel P. Berrangé
[thuth: Increase the timeout to 6 minutes for very loaded systems]
Signed-off
From: Daniel P. Berrangé
The hmp test takes just under 3 minutes in a --enable-debug
build. Bumping to 4 minutes will give more headroom.
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Thomas Huth
Message-ID: <20230717182859.707658-6-berra...@redhat.com>
[thuth: fix copy-n-paste error in the d
From: Daniel P. Berrangé
Even some of the relatively fast qtests can sometimes hit the 30 second
timeout in GitLab CI under high parallelism/load conditions. Bump the
min to 60 seconds to give a higher margin for reliability.
Reviewed-by: Thomas Huth
Signed-off-by: Daniel P. Berrangé
Message-I
From: Daniel P. Berrangé
The pxe-test uses the boot_sector_test() function, and that already
uses a timeout of 600 seconds. So adjust the timeout on the meson
side accordingly.
Signed-off-by: Daniel P. Berrangé
[thuth: Bump timeout to 600s and adjust commit description]
Signed-off-by: Thomas Hu
The following changes since commit f614acb7450282a119d85d759f27eae190476058:
Merge tag 'pull-target-arm-20240111' of
https://git.linaro.org/people/pmaydell/qemu-arm into staging (2024-01-11
11:05:44 +)
are available in the Git repository at:
https://gitlab.com/stsquad/qemu.git tags/pul
From: Daniel P. Berrangé
The prom-env-test can take more than 5 minutes in a --enable-debug
build on a loaded system. Bumping to 6 minutes will give more headroom.
Signed-off-by: Daniel P. Berrangé
[thuth: Bump timeout to 6 minutes instead of 3]
Signed-off-by: Thomas Huth
Message-Id: <20231215
From: Daniel P. Berrangé
The boot-serial-test takes about 1 + 1/2 minutes in a --enable-debug
build. Bumping to 3 minutes will give more headroom.
Signed-off-by: Daniel P. Berrangé
Reviewed-by: Thomas Huth
Message-ID: <20230717182859.707658-9-berra...@redhat.com>
Signed-off-by: Thomas Huth
Me
From: Daniel P. Berrangé
The qom-test is periodically hitting the 5 minute timeout when running
on the aarch64 emulator under GitLab CI. With an --enable-debug build
it can take over 10 minutes for arm/aarch64 targets. Setting timeout
to 15 minutes gives enough headroom to hopefully make it relia
From: Daniel P. Berrangé
The mtest2make.py script passes the arg '-t 0' to 'meson test' which
disables all test timeouts. This is a major source of pain when running
in GitLab CI and a test gets stuck. It will stall until GitLab kills the
CI job. This leaves us with little easily consumable infor
From: Thomas Huth
When running the tests in slow mode on a very loaded system and with
--enable-debug, the test-aio-multithread can take longer than 1 minute.
Bump the timeout to two minutes to make sure that it also passes in
such situations.
Signed-off-by: Thomas Huth
Message-Id: <20231215070
This reverts commit c2ef5ee89d76f0ab77c4dd6a1c9eeed4d35d20ed.
While the fixes for #2010 and #2013 have improved things locally it
seems GitLab still continues to be flaky.
Signed-off-by: Alex Bennée
diff --git a/tests/avocado/replay_kernel.py b/tests/avocado/replay_kernel.py
index 6fdcbd6ac3d..
This is now expected by rtd so I've expanded using their example as
22.04 is one of our supported platforms. I tried to work out if there
was an easy way to re-generate a requirements.txt from our
pythondeps.toml but in the end went for the easier solution.
Cc:
Signed-off-by: Alex Bennée
Messag
From: Thomas Huth
When running the tests in slow mode on a very loaded system and with
--enable-debug, the test-crypto-block can take longer than 4 minutes.
Bump the timeout to 5 minutes to make sure that it also passes in
such situations.
Signed-off-by: Thomas Huth
Message-Id: <20231215070357.
From: Thomas Huth
When running the tests in slow mode with --enable-debug on a very loaded
system, the fp-test-mulAdd test can take longer than 2 minutes. Bump the
timeout to three minutes to make sure it passes in such situations, too.
Signed-off-by: Thomas Huth
Message-Id: <20231215070357.10
On Fri, 12 Jan 2024 at 11:11, Alex Bennée wrote:
>
> This reverts commit c2ef5ee89d76f0ab77c4dd6a1c9eeed4d35d20ed.
>
> While the fixes for #2010 and #2013 have improved things locally it
> seems GitLab still continues to be flaky.
>
> Signed-off-by: Alex Bennée
>
> diff --git a/tests/avocado/repl
On 1/12/24 11:55, Thomas Huth wrote:
On 12/01/2024 06.21, Harsh Prateek Bora wrote:
On 1/12/24 10:42, Thomas Huth wrote:
On 12/01/2024 05.57, Harsh Prateek Bora wrote:
On 1/11/24 22:16, Thomas Huth wrote:
The character "+" is now forbidden in QOM device names (see commit
b447378e1217 - "L
i and size should be the same type as ehdr.e_phnum (Elf32_Half or
Elf64_Half) to avoid overflows. So the bigger one is chosen.
j should be the same type as file_size for the same reasons.
This commit fixes a minor bug, maybe even a typo.
Found by Linux Verification Center (linuxtesting.org) with
On Fri, 12 Jan 2024 at 11:46, Anastasia Belova wrote:
>
> i and size should be the same type as ehdr.e_phnum (Elf32_Half or
> Elf64_Half) to avoid overflows. So the bigger one is chosen.
>
> j should be the same type as file_size for the same reasons.
>
> This commit fixes a minor bug, maybe even
On Thu, 11 Jan 2024 at 16:28, Gerd Hoffmann wrote:
>
> On Thu, Jan 11, 2024 at 04:02:38PM +, Peter Maydell wrote:
> > On Thu, 11 Jan 2024 at 15:52, Peter Maydell
> > wrote:
> > >
> > > On Thu, 11 Jan 2024 at 14:01, Gerd Hoffmann wrote:
> > > >
> > > > Ping.
> > > >
> > > > As expected this
On Thu, 11 Jan 2024 at 11:29, Song Gao wrote:
>
> The following changes since commit 34eac35f893664eb8545b98142e23d9954722766:
>
> Merge tag 'pull-riscv-to-apply-20240110' of
> https://github.com/alistair23/qemu into staging (2024-01-10 11:41:56 +)
>
> are available in the Git repository at
On Thu, Jan 11, 2024 at 17:46:50 +0100, Thomas Huth wrote:
> We can get rid of the "power5+" / "power7+" hack in qom/object.c
> by using CPU aliases for those names instead (first patch).
>
> I think in the long run, we should get rid of the names with a "+"
> in it completely, so the second patch
The do_cmd variable is only set for the MESSAGE OUT and COMMAND phases i.e.
those which involve transfers from the host to the SCSI bus, and so the unused
case can be removed.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 7 +--
1 file changed, 1 insertion(+), 6 deletions(-)
diff --gi
This function is used to set the current SCSI bus phase in the ESP_RSTAT
register
without affecting any of flag bits.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c| 51 ++--
hw/scsi/trace-events | 1 +
2 files changed, 36 insertions(+), 16 de
Since the DREQ value depends upon the result of the selection process, add a
workaround to each esp_select() to manually assert DREQ durring the MESSAGE OUT
and COMMAND phases.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 25 ++---
1 file changed, 18 insertions(+), 7 d
Since get_cmd() can be called multiple times during a mixed FIFO/DMA request,
move the existing request cancel check into esp_select() which always occurs
at the start of new SCSI request.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 10 +-
1 file changed, 5 insertions(+), 5 delet
This should be exclusively managed by esp_set_tc() rather than being manually
set in multiple places. Start by removing the occurrences exclusive to PDMA
and command completion which are those that can be currently removed without
affecting any test images.
Signed-off-by: Mark Cave-Ayland
---
hw
The ultimate aim is to for esp_do_dma() behaviour to be determined by the SCSI
bus phase, in which case it is necessary to have separate to/from device paths.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 65 +++
1 file changed, 40 insertions
Ensure that esp_dma_done() is only called when TC is zero, which is currently
always the case for DMA transfers.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index 96723efcf3..06be9f2e7
This flag is set once the transfer counter counts down to zero.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index 8c1c6bfc1c..c7b79a2949 100644
--- a/hw/scsi/esp.c
+++ b/hw/scsi/esp.c
@@ -161,9 +161,15
Ensure that the async_len checks for requesting data from the SCSI layer and
the TC == 0 checks to detect the end of the DMA transfer are consistent in both
do_dma_pdma_cb() and esp_do_dma(). In particular this involves adding the check
to see if the FIFO is at its low threshold since PDMA and mixe
Now it is possible to move the end of SCSI transfer check to after the TC
adjustment in do_dma_pdma_cb() when transferring data from the device
without triggering an assert() in the SCSI code. This brings this check in
line with all the others in esp_do_dma() and do_dma_pdma_cb().
Signed-off-by: M
This is to ensure that STAT_TC is triggered during the right parts of the
transfer when it is controlled exclusively by the TC.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index 9e9bbe8431..f08b816aba 10064
The following ti_cmd checks ensure that only DMA and non-DMA TI commmands will
can call into the esp_do_dma() and esp_do_nodma() callbacks.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 17 +++--
1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/hw/scsi/esp.c b/hw/
There are two cases here: the first is when the TI command underflows, in which
case we raise INTR_BS to indicate an early change of phase, and the second is
when the TI command overflows because the host requested a transfer for more
data than is available. In the latter case force TC to zero so t
Now that the TC is updated for each PDMA access (rather than once the FIFO is
full) there is no need to adjust the TC at start of each DMA transfer if the
FIFO is not empty.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 5 -
1 file changed, 5 deletions(-)
diff --git a/hw/scsi/esp.c b/
Instead accumulate in the real FIFO as done in real hardware, and then transfer
to cmdfifo when we're ready to process the MESSAGE OUT and COMMAND phase data.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 49 ++---
1 file changed, 42 insertions(+
In the case when more data is requested from the SCSI layer during a DMA data
transfer from a device, don't immediately fall through to the TC check logic.
Otherwise when TC is zero INTR_BS will be raised immediately rather than when
the next set of SCSI data is ready.
Signed-off-by: Mark Cave-Ayl
Currently only the DATA IN and DATA OUT phases are supported.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 54 +--
1 file changed, 35 insertions(+), 19 deletions(-)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index f6d05b0de7..c1b44e5f18 100
Invert the logic so that the end of DMA transfer check becomes one that checks
for TC == 0 in the from device path in do_dma_pdma_cb().
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 24 +++-
1 file changed, 11 insertions(+), 13 deletions(-)
diff --git a/hw/scsi/esp.c b
This helps simplify the existing implementation.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 39 +++
1 file changed, 11 insertions(+), 28 deletions(-)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index c6151d306e..4d58a49c73 100644
--- a/hw/scsi/esp.c
+
This can now be handled by the existing do_dma_pdma_cb() function.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 22 +-
include/hw/scsi/esp.h | 1 -
2 files changed, 1 insertion(+), 22 deletions(-)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index df4d5f8811..1
Following on from the recent changes to when the TC is updated, it is now
possible to remove another set of manual STAT_TC updates so that its state
is now managed within esp_set_tc().
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 10 --
1 file changed, 10 deletions(-)
diff --git
In the PDMA case the last transfer from the device to the FIFO has occurred
(async_len is zero) but esp_do_dma() is still being called to drain the
remaining FIFO contents.
The additional non-zero transfer check ensures that we still defer the SCSI
layer in the case where we are waiting for data f
There is no need to manually reset these values as the ESP emulation now
correctly handles them within its existing logic.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index f41b2421f9..a4a1f41a40 100644
---
The special logic in write_response_pdma_cb() is now no longer required since
esp_do_dma() can be used as a direct replacement.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 82 ++-
include/hw/scsi/esp.h | 1 -
2 files changed, 57 insertions
This workaround is no longer required with the current code and so can be
removed.
[Note: whilst MacOS itself can boot correctly, removing this hack prevents
a bootable EMILE CDROM from working. This is caused by a separate bug which
will be fixed by a subsequent patch]
Signed-off-by: Mark Cave-A
Currently only the DATA IN and DATA OUT phases are supported.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 40 +++-
1 file changed, 27 insertions(+), 13 deletions(-)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index de8d98082a..67d1d39db2 100644
--- a/h
This makes it clearer that ATN is asserted until the end of the next TI command
in the MESSAGE OUT phase.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 66 ---
1 file changed, 42 insertions(+), 24 deletions(-)
diff --git a/hw/scsi/esp.c b/hw
Now that the accumulation of the CDB is handled by SCSI phase, there is no need
for a separate variable to control it.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 13 -
1 file changed, 13 deletions(-)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index e679b1c39b..1f7dff4ca6 10
This is so that PDMA transfers can be performend by esp_do_dma() as well as
do_dma_pdma_cb().
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 11 ++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index 65b4baab83..14284ef54a 100644
--- a/
The FIFO contents should not be affected if the target selection fails.
Signed-off-by: Mark Cave-Ayland
---
hw/scsi/esp.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
index 3a1c9f7c3b..68d07edc05 100644
--- a/hw/scsi/esp.c
+++ b/hw/scsi/esp.c
@@ -252,11 +25
In the case where a SCSI command with a DATA IN phase has been issued, the host
may preload the FIFO with unaligned bytes before issuing the main DMA transfer.
When accumulating data in the FIFO don't raise the INTR_BS interrupt until the
TI command is issued, otherwise the unexpected interrupt ca
1 - 100 of 337 matches
Mail list logo