All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 00/34] next-cube: more tidy-ups and improvements
@ 2024-12-12 11:45 Mark Cave-Ayland
  2024-12-12 11:45 ` [PATCH v2 01/34] next-cube: remove 0x14020 dummy value from next_mmio_read() Mark Cave-Ayland
                   ` (33 more replies)
  0 siblings, 34 replies; 62+ messages in thread
From: Mark Cave-Ayland @ 2024-12-12 11:45 UTC (permalink / raw)
  To: huth, qemu-devel

This series contains a number of tidy-ups and improvements to the NeXTCube machine
which include:

  - Bringing the code up-to-date with our latest coding standards/APIs, in particular
    related to the board configuration and IRQ wiring

  - Remove the remaining overlapping memory regions and consolidating multiple
    register implementations into a single place

  - Add a new next-scsi device containing the ESP device and its associated
    CSRs

  - Adding the empty_slot device to fill unimplemented devices and removing
    the "catch-all" next.scr memory region

  - QOMifying the next-rtc device and wiring it up with gpios as required

The next-cube machine looks in fairly good shape now, the main remaining work is to
create a separate device for the DMA controller and update the wiring of the IRQs
(including to the CPU) accordingly.

There is no change to the behaviour of the next-cube machine with this series in
that the next-cube machine with a suitable ROM image can now load the kernel from
a pre-installed NeXTStep image and start executing it.

Note that due to the device model changes this is a migration break, however since
the next-cube machine is currently unable to boot anything useful, I don't see
this as an issue.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>

[Patches still needing review: 3, 7, 8, 11, 17, 21, 25, 28, 29, 30, 31, 34]

v2:
- Rebase onto master
- Drop patches 1 and 4 (these have been merged separately as bugfixes)
- Add R-B tags from Thomas and Phil
- Update commit message in patch 2
- Add comments containing system register addresses as requested by Thomas in
  patch 2
- Update description for patch 7 explaining that the SCSI CSRs are also now
  modelled as standard registers (similar to Previous)
- Update description for patch 8 explaining why the previously hardcoded value
  has been dropped
- Add comments suggesting unimplemented devices in patch 14
- Remove next_rtc_vmstate from next_pc_vmstate in patch 25
- Fix cut/paste error in patch 30 headline


Mark Cave-Ayland (34):
  next-cube: remove 0x14020 dummy value from next_mmio_read()
  next-cube: remove overlap between next.dma and next.mmio memory
    regions
  next-cube: create new next.scsi container memory region
  next-cube: move next_scsi_init() to next_pc_realize()
  next-cube: introduce next_pc_init() object init function
  next-cube: introduce next-scsi device
  next-cube: move SCSI CSRs from next-pc to the next-scsi device
  next-cube: move SCSI 4020/4021 logic from next-pc device to next-scsi
    device
  next-cube: move floppy disk MMIO to separate memory region in next-pc
  next-cube: map ESCC registers as a subregion of the next.scr memory
    region
  next-cube: move ESCC to be QOM child of next-pc device
  next-cube: move timer MMIO to separate memory region on next-pc device
  next-cube: move en ethernet MMIO to separate memory region on next-pc
    device
  next-cube: add empty slots for unknown accesses to next.scr memory
    region
  next-cube: remove unused next.scr memory region
  next-cube: rearrange NeXTState declarations to improve readability
  next-cube: convert next-pc device to use Resettable interface
  next-cube: rename typedef struct NextRtc to NeXTRTC
  next-cube: use qemu_irq to drive int_status in next_scr2_rtc_update()
  next-cube: separate rtc read and write shift logic
  next-cube: always use retval to return rtc read values
  next-cube: use named gpio to set RTC data bit in scr2
  next-cube: use named gpio to read RTC data bit in scr2
  next-cube: don't use rtc phase value of -1
  next-cube: QOMify NeXTRTC
  next-cube: move reset of next-rtc fields from next-pc to next-rtc
  next-cube: move rtc-data-in gpio from next-pc to next-rtc device
  next-cube: use named gpio output for next-rtc data
  next-cube: add rtc-cmd-reset named gpio to reset the rtc state machine
  next-cube: add rtc-power-out named gpio to trigger the NEXT_PWR_I
    interrupt
  next-cube: move next_rtc_cmd_is_write() and next_rtc_data_in_irq()
    functions
  next-cube: rename old_scr2 and scr2_2 in next_scr2_rtc_update()
  next-cube: add my copyright to the top of the file
  next-cube: replace boiler-plate GPL 2.0 or later license text with
    SPDX identifier

 hw/m68k/Kconfig     |    1 +
 hw/m68k/next-cube.c | 1026 +++++++++++++++++++++++++++----------------
 2 files changed, 659 insertions(+), 368 deletions(-)

-- 
2.39.5



^ permalink raw reply	[flat|nested] 62+ messages in thread

end of thread, other threads:[~2024-12-22 12:57 UTC | newest]

Thread overview: 62+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-12 11:45 [PATCH v2 00/34] next-cube: more tidy-ups and improvements Mark Cave-Ayland
2024-12-12 11:45 ` [PATCH v2 01/34] next-cube: remove 0x14020 dummy value from next_mmio_read() Mark Cave-Ayland
2024-12-12 11:45 ` [PATCH v2 02/34] next-cube: remove overlap between next.dma and next.mmio memory regions Mark Cave-Ayland
2024-12-13 19:37   ` Thomas Huth
2024-12-14 20:59     ` Mark Cave-Ayland
2024-12-12 11:45 ` [PATCH v2 03/34] next-cube: create new next.scsi container memory region Mark Cave-Ayland
2024-12-14  5:26   ` Thomas Huth
2024-12-14 12:39   ` Philippe Mathieu-Daudé
2024-12-12 11:45 ` [PATCH v2 04/34] next-cube: move next_scsi_init() to next_pc_realize() Mark Cave-Ayland
2024-12-12 11:45 ` [PATCH v2 05/34] next-cube: introduce next_pc_init() object init function Mark Cave-Ayland
2024-12-12 11:45 ` [PATCH v2 06/34] next-cube: introduce next-scsi device Mark Cave-Ayland
2024-12-12 11:45 ` [PATCH v2 07/34] next-cube: move SCSI CSRs from next-pc to the " Mark Cave-Ayland
2024-12-14  5:28   ` Thomas Huth
2024-12-12 11:45 ` [PATCH v2 08/34] next-cube: move SCSI 4020/4021 logic from next-pc device to " Mark Cave-Ayland
2024-12-14  5:32   ` Thomas Huth
2024-12-12 11:45 ` [PATCH v2 09/34] next-cube: move floppy disk MMIO to separate memory region in next-pc Mark Cave-Ayland
2024-12-12 11:45 ` [PATCH v2 10/34] next-cube: map ESCC registers as a subregion of the next.scr memory region Mark Cave-Ayland
2024-12-14 12:42   ` Philippe Mathieu-Daudé
2024-12-12 11:45 ` [PATCH v2 11/34] next-cube: move ESCC to be QOM child of next-pc device Mark Cave-Ayland
2024-12-14  5:50   ` Thomas Huth
2024-12-14  6:10   ` Thomas Huth
2024-12-14 12:45     ` Philippe Mathieu-Daudé
2024-12-14 21:32     ` Mark Cave-Ayland
2024-12-12 11:45 ` [PATCH v2 12/34] next-cube: move timer MMIO to separate memory region on " Mark Cave-Ayland
2024-12-14 13:29   ` Philippe Mathieu-Daudé
2024-12-14 22:09     ` Mark Cave-Ayland
2024-12-12 11:45 ` [PATCH v2 13/34] next-cube: move en ethernet " Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 14/34] next-cube: add empty slots for unknown accesses to next.scr memory region Mark Cave-Ayland
2024-12-14 13:32   ` Philippe Mathieu-Daudé
2024-12-14 22:27     ` Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 15/34] next-cube: remove unused " Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 16/34] next-cube: rearrange NeXTState declarations to improve readability Mark Cave-Ayland
2024-12-14 13:34   ` Philippe Mathieu-Daudé
2024-12-12 11:46 ` [PATCH v2 17/34] next-cube: convert next-pc device to use Resettable interface Mark Cave-Ayland
2024-12-14 13:34   ` Philippe Mathieu-Daudé
2024-12-12 11:46 ` [PATCH v2 18/34] next-cube: rename typedef struct NextRtc to NeXTRTC Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 19/34] next-cube: use qemu_irq to drive int_status in next_scr2_rtc_update() Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 20/34] next-cube: separate rtc read and write shift logic Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 21/34] next-cube: always use retval to return rtc read values Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 22/34] next-cube: use named gpio to set RTC data bit in scr2 Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 23/34] next-cube: use named gpio to read " Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 24/34] next-cube: don't use rtc phase value of -1 Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 25/34] next-cube: QOMify NeXTRTC Mark Cave-Ayland
2024-12-14  6:08   ` Thomas Huth
2024-12-14 21:30     ` Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 26/34] next-cube: move reset of next-rtc fields from next-pc to next-rtc Mark Cave-Ayland
2024-12-14 13:41   ` Philippe Mathieu-Daudé
2024-12-12 11:46 ` [PATCH v2 27/34] next-cube: move rtc-data-in gpio from next-pc to next-rtc device Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 28/34] next-cube: use named gpio output for next-rtc data Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 29/34] next-cube: add rtc-cmd-reset named gpio to reset the rtc state machine Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 30/34] next-cube: add rtc-power-out named gpio to trigger the NEXT_PWR_I interrupt Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 31/34] next-cube: move next_rtc_cmd_is_write() and next_rtc_data_in_irq() functions Mark Cave-Ayland
2024-12-14  6:14   ` Thomas Huth
2024-12-12 11:46 ` [PATCH v2 32/34] next-cube: rename old_scr2 and scr2_2 in next_scr2_rtc_update() Mark Cave-Ayland
2024-12-12 11:46 ` [PATCH v2 33/34] next-cube: add my copyright to the top of the file Mark Cave-Ayland
2024-12-14 13:41   ` Philippe Mathieu-Daudé
2024-12-12 11:46 ` [PATCH v2 34/34] next-cube: replace boiler-plate GPL 2.0 or later license text with SPDX identifier Mark Cave-Ayland
2024-12-12 17:28   ` Daniel P. Berrangé
2024-12-14 20:38     ` Mark Cave-Ayland
2024-12-16 10:38       ` Daniel P. Berrangé
2024-12-16 11:17         ` Thomas Huth
2024-12-22 12:56           ` Mark Cave-Ayland

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.