[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 00/88] qemu-sparc queue 20240213
From: |
Mark Cave-Ayland |
Subject: |
[PULL 00/88] qemu-sparc queue 20240213 |
Date: |
Tue, 13 Feb 2024 19:39:24 +0000 |
The following changes since commit bc2e8b18fba33f30f25b7c2d74328493c0a2231d:
Merge tag 'hppa64-pull-request' of https://github.com/hdeller/qemu-hppa into
staging (2024-02-13 13:56:46 +0000)
are available in the Git repository at:
https://github.com/mcayland/qemu.git tags/qemu-sparc-20240213
for you to fetch changes up to 78d68f312aec905edcb1dc5549a2c3a6f716605a:
esp.c: add my copyright to the file (2024-02-13 19:37:28 +0000)
----------------------------------------------------------------
qemu-sparc queue
- This contains the rework of the ESP controller as agreed with Paolo
----------------------------------------------------------------
Mark Cave-Ayland (88):
esp.c: don't clear cmdfifo when esp_select() fails in get_cmd()
esp.c: move existing request cancel check into esp_select()
esp.c: add FIFO wraparound support to esp_fifo_pop_buf()
esp.c: remove FIFO clear from esp_select()
esp.c: move esp_select() to ESP selection commands from get_cmd()
esp.c: update esp_set_tc() to set STAT_TC flag
esp.c: start removal of manual STAT_TC setting when transfer counter
reaches zero
esp.c: move command execution logic to new esp_run_cmd() function
esp.c: update TC check logic in do_dma_pdma_cb() to check for TC == 0
esp.c: move buffer and TC logic into separate to/from device paths in
esp_do_dma()
esp.c: remove unused case from esp_pdma_read()
esp.c: don't accumulate directly into cmdfifo
esp.c: decrement the TC during MESSAGE OUT and COMMAND phases
esp.c: introduce esp_set_phase() helper function
esp.c: remove another set of manual STAT_TC updates
esp.c: remove MacOS TI workaround that pads FIFO transfers to ESP_FIFO_SZ
esp.c: don't reset the TC and ESP_RSEQ state when executing a SCSI command
esp.c: don't clear RFLAGS register when DMA is complete
esp.c: remove zero transfer size check from esp_do_dma()
esp.c: update condition for esp_dma_done() in esp_do_dma() from device
path
esp.c: update condition for esp_dma_done() in esp_do_dma() to device path
esp.c: ensure that the PDMA callback is called for every device read
esp.c: don't immediately raise INTR_BS if SCSI data needed in esp_do_dma()
esp.c: remove TC adjustment in esp_do_dma() from device path
esp.c: remove unaligned adjustment in do_dma_pdma_cb() to device path
esp.c: remove unneeded if() check in esp_transfer_data()
esp.c: update end of transfer logic at the end of esp_transfer_data()
esp.c: consolidate async_len and TC == 0 checks in do_dma_pdma_cb() and
esp_do_dma()
esp.c: fix premature end of phase logic esp_command_complete
esp.c: move TC and FIFO check logic into esp_dma_done()
esp.c: rename esp_dma_done() to esp_dma_ti_check()
esp.c: copy PDMA logic for transfers to device from do_dma_pdma_cb() to
esp_do_dma()
esp.c: copy logic for do_cmd transfers from do_dma_pdma_cb() to
esp_do_dma()
esp.c: update esp_do_dma() bypass if async_len is zero to include
non-zero transfer check
esp.c: move end of SCSI transfer check after TC adjustment in
do_dma_pdma_cb()
esp.c: remove s_without_satn_pdma_cb() PDMA callback
esp.c: introduce esp_get_phase() function
esp.c: convert esp_do_dma() to switch statement based upon SCSI phase
esp.c: convert do_dma_pdma_db() to switch statement based upon SCSI phase
esp.c: convert esp_do_nodma() to switch statement based upon SCSI phase
esp.c: convert esp_do_dma() do_cmd path to check for SCSI phase instead
esp.c: convert do_dma_pdma_cb() do_cmd path to check for SCSI phase
instead
esp.c: convert esp_do_nodma() do_cmd path to check for SCSI phase instead
esp.c: convert esp_reg_write() do_cmd path to check for SCSI phase instead
esp.c: remove do_cmd from ESPState
esp.c: untangle MESSAGE OUT and COMMAND phase logic in esp_do_dma()
esp.c: untangle MESSAGE OUT and COMMAND phase logic in do_dma_pdma_cb()
esp.c: untangle MESSAGE OUT and COMMAND phase logic in esp_do_nodma()
esp.c: move CMD_SELATN end of message phase detection to esp_do_dma() and
do_dma_pdma_cb()
esp.c: move CMD_TI end of message phase detection to esp_do_dma() and
do_dma_pdma_cb()
esp.c: don't use get_cmd() for CMD_SEL DMA commands
esp.c: move CMD_SELATNS end of command logic to esp_do_dma() and
do_dma_pdma_cb()
esp.c: replace do_dma_pdma_cb() with esp_do_dma()
esp.c: move CMD_ICCS command logic to esp_do_dma()
esp.c: always use esp_do_dma() in pdma_cb()
esp.c: remove unused PDMA callback implementation
esp.c: rename data_in_ready to to data_ready
esp.c: separate logic based upon ESP command in esp_command_complete()
esp.c: separate logic based upon ESP command in esp_transfer_data()
esp.c: use deferred interrupts for both DATA IN and DATA OUT phases
esp.c: remove DATA IN phase logic when reading from FIFO
esp.c: zero command register when TI command terminates due to phase
change
esp.c: remove unneeded ti_cmd field
esp.c: don't raise INTR_BS interrupt in DATA IN phase until TI command
issued
esp.c: move non-DMA TI logic to separate esp_nodma_ti_dataout() function
esp.c: process non-DMA FIFO writes in esp_do_nodma()
esp.c: replace get_cmd() with esp_do_nodma()
esp.c: move write_response() non-DMA logic to esp_do_nodma()
esp.c: consolidate end of command sequence after ICCS command
esp.c: ensure that STAT_INT is cleared when reading ESP_RINTR
esp.c: don't clear the SCSI phase when reading ESP_RINTR
esp.c: handle TC underflow for DMA SCSI requests
esp.c: remove restriction on FIFO read access when DMA memory routines
defined
esp.c: handle non-DMA FIFO writes used to terminate DMA commands
esp.c: improve ESP_RSEQ logic consolidation
esp.c: only transfer non-DMA COMMAND phase data for specific commands
esp.c: only transfer non-DMA MESSAGE OUT phase data for specific commands
esp.c: consolidate DMA and PDMA logic in DATA OUT phase
esp.c: consolidate DMA and PDMA logic in DATA IN phase
esp.c: consolidate DMA and PDMA logic in MESSAGE OUT phase
esp.c: remove redundant n variable in PDMA COMMAND phase
esp.c: consolidate DMA and PDMA logic in STATUS and MESSAGE IN phases
esp.c: replace n variable with len in esp_do_nodma()
esp.c: implement DMA Transfer Pad command for DATA phases
esp.c: rename irq_data IRQ to drq_irq
esp.c: keep track of the DRQ state during DMA
esp.c: switch TypeInfo registration to use DEFINE_TYPES() macro
esp.c: add my copyright to the file
hw/scsi/esp.c | 1371 ++++++++++++++++++++++++++-----------------------
hw/scsi/trace-events | 1 +
include/hw/scsi/esp.h | 18 +-
3 files changed, 727 insertions(+), 663 deletions(-)
- [PULL 00/88] qemu-sparc queue 20240213,
Mark Cave-Ayland <=
- [PULL 01/88] esp.c: don't clear cmdfifo when esp_select() fails in get_cmd(), Mark Cave-Ayland, 2024/02/13
- [PULL 02/88] esp.c: move existing request cancel check into esp_select(), Mark Cave-Ayland, 2024/02/13
- [PULL 03/88] esp.c: add FIFO wraparound support to esp_fifo_pop_buf(), Mark Cave-Ayland, 2024/02/13
- [PULL 04/88] esp.c: remove FIFO clear from esp_select(), Mark Cave-Ayland, 2024/02/13
- [PULL 05/88] esp.c: move esp_select() to ESP selection commands from get_cmd(), Mark Cave-Ayland, 2024/02/13
- [PULL 06/88] esp.c: update esp_set_tc() to set STAT_TC flag, Mark Cave-Ayland, 2024/02/13
- [PULL 08/88] esp.c: move command execution logic to new esp_run_cmd() function, Mark Cave-Ayland, 2024/02/13
- [PULL 07/88] esp.c: start removal of manual STAT_TC setting when transfer counter reaches zero, Mark Cave-Ayland, 2024/02/13
- [PULL 09/88] esp.c: update TC check logic in do_dma_pdma_cb() to check for TC == 0, Mark Cave-Ayland, 2024/02/13
- [PULL 10/88] esp.c: move buffer and TC logic into separate to/from device paths in esp_do_dma(), Mark Cave-Ayland, 2024/02/13