[PULL 00/46] MIPS patches for 2023-01-13

Philippe Mathieu-Daudé posted 46 patches 1 year, 3 months ago
MAINTAINERS                                   |   3 +-
configs/devices/mips-softmmu/common.mak       |   3 -
disas/meson.build                             |   3 +-
docs/about/deprecated.rst                     |   9 -
docs/about/removed-features.rst               |   9 +
hw/core/qdev-properties-system.c              |  28 +-
hw/i386/kvm/i8259.c                           |   4 +-
hw/i386/kvm/ioapic.c                          |   4 +-
hw/i386/pc_piix.c                             |  18 +-
hw/i386/pc_q35.c                              |  17 +-
hw/intc/apic.c                                |   3 +-
hw/intc/apic_common.c                         |  30 +-
hw/intc/i8259.c                               |  11 +-
hw/intc/kvm_irqcount.c                        |  49 +++
hw/intc/meson.build                           |   6 +
hw/intc/trace-events                          |   9 +-
hw/isa/piix3.c                                |  17 +-
hw/isa/piix4.c                                |  37 +-
hw/mips/Kconfig                               |   2 +
hw/mips/bootloader.c                          | 141 ++++--
hw/mips/boston.c                              |   6 +-
hw/mips/fuloong2e.c                           |   2 +-
hw/mips/malta.c                               | 403 ++++++------------
hw/mips/meson.build                           |   2 +-
hw/mips/trace-events                          |   9 +-
hw/pci-host/Kconfig                           |   6 +
hw/pci-host/bonito.c                          |  37 +-
hw/{mips/gt64xxx_pci.c => pci-host/gt64120.c} | 130 ++++--
hw/pci-host/meson.build                       |   1 +
hw/pci-host/raven.c                           |   3 +-
hw/pci-host/trace-events                      |   7 +
hw/pci-host/versatile.c                       |   3 +-
hw/pci/pci.c                                  |  12 +-
hw/pci/pci_host.c                             |   6 +
hw/remote/machine.c                           |   3 +-
hw/remote/vfio-user-obj.c                     |   4 +-
hw/rtc/mc146818rtc.c                          |  20 +-
hw/rtc/meson.build                            |   3 +-
hw/usb/hcd-uhci.c                             |  16 +-
hw/usb/hcd-uhci.h                             |   4 +
include/exec/poison.h                         |   1 -
include/hw/i386/apic.h                        |   2 -
include/hw/i386/apic_internal.h               |   1 -
include/hw/intc/i8259.h                       |   6 +-
include/hw/intc/kvm_irqcount.h                |  10 +
include/hw/mips/bootloader.h                  |  10 +-
include/hw/pci-host/bonito.h                  |  18 +
include/hw/pci/pci.h                          |   3 +-
include/hw/rtc/mc146818rtc.h                  |   1 +
include/qemu/typedefs.h                       |   1 +
meson.build                                   |   5 -
scripts/git.orderfile                         |   2 +
softmmu/rtc.c                                 |   6 +-
target/mips/cpu.c                             |  38 +-
target/mips/cpu.h                             |   3 -
target/mips/internal.h                        |   3 -
target/mips/kvm.c                             |  11 +-
target/mips/sysemu/addr.c                     |  17 -
target/mips/sysemu/meson.build                |   1 +
target/mips/sysemu/mips-qmp-cmds.c            |  39 ++
target/mips/sysemu/physaddr.c                 |  13 -
tests/avocado/machine_mips_malta.py           |  47 +-
62 files changed, 693 insertions(+), 625 deletions(-)
create mode 100644 hw/intc/kvm_irqcount.c
rename hw/{mips/gt64xxx_pci.c => pci-host/gt64120.c} (91%)
create mode 100644 include/hw/intc/kvm_irqcount.h
create mode 100644 include/hw/pci-host/bonito.h
create mode 100644 target/mips/sysemu/mips-qmp-cmds.c
[PULL 00/46] MIPS patches for 2023-01-13
Posted by Philippe Mathieu-Daudé 1 year, 3 months ago
The following changes since commit 3db29dcac23da85486704ef9e7a8e7217f7829cd:

  Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (2023-01-12 13:51:36 +0000)

are available in the Git repository at:

  https://github.com/philmd/qemu.git tags/mips-20230113

for you to fetch changes up to 4828656f65324249273ad2f2db80844ba90eeb9b:

  scripts/git.orderfile: Display MAINTAINERS changes first (2023-01-13 16:22:57 +0100)

----------------------------------------------------------------
MIPS patches queue

Confronting my triskaidekaphobia, here goes
a bunch of cleanups from various people:

- Improved GT64120 on big-endian hosts
- GT64120 north bridge and MC146818 RTC devices are now target independent
- Bonito64 north bridge converted to 3-phase reset API
- PCI refactors around PIIX devices
- Support for nanoMIPS in bootloader generator API
- New YAMON Malta Avocado test
- Removal of 'trap and emulate' KVM support
- System-specific QMP commands restricted to system emulation

----------------------------------------------------------------

Bernhard Beschow (6):
  hw/pci/pci: Factor out pci_bus_map_irqs() from pci_bus_irqs()
  hw/isa/piix3: Decouple INTx-to-LNKx routing which is board-specific
  hw/isa/piix4: Decouple INTx-to-LNKx routing which is board-specific
  hw/mips/Kconfig: Track Malta's PIIX dependencies via Kconfig
  hw/usb/hcd-uhci: Introduce TYPE_ defines for device models
  hw/intc/i8259: Make using the isa_pic singleton more type-safe

Daniel Henrique Barboza (1):
  hw/mips/boston: Rename MachineState 'mc' pointer to 'ms'

Paolo Bonzini (2):
  mips: Remove support for trap and emulate KVM
  mips: Always include nanomips disassembler

Philippe Mathieu-Daudé (33):
  hw/mips/malta: Split FPGA LEDs/ASCII display updates
  hw/mips/malta: Trace FPGA LEDs/ASCII display updates
  hw/mips/gt64xxx_pci: Accumulate address space changes
  hw/mips/gt64xxx_pci: Endian-swap using PCI_HOST_BRIDGE MemoryRegionOps
  hw/mips/Kconfig: Introduce CONFIG_GT64120 to select gt64xxx_pci.c
  hw/mips/gt64xxx_pci: Let the GT64120 manage the lower 512MiB hole
  hw/mips/gt64xxx_pci: Manage endian bits with the RegisterFields API
  hw/mips/gt64xxx_pci: Add a 'cpu-little-endian' qdev property
  hw/mips/malta: Explicit GT64120 endianness upon device creation
  hw/mips/meson: Make gt64xxx_pci.c endian-agnostic
  hw/mips/gt64xxx_pci: Move it to hw/pci-host/
  tests/avocado: Add tests booting YAMON ROM on MIPS Malta machines
  hw/mips/bootloader: Handle buffers as opaque arrays
  hw/mips/bootloader: Implement nanoMIPS NOP opcode generator
  hw/mips/bootloader: Implement nanoMIPS SW opcode generator
  hw/mips/bootloader: Implement nanoMIPS LI (LUI+ORI) opcode generator
  hw/mips/bootloader: Implement nanoMIPS JALRc opcode generator
  hw/mips/malta: Use bootloader generator API for nanoMIPS CPUs (1/5)
  hw/mips/malta: Use bootloader generator API for nanoMIPS CPUs (2/5)
  hw/mips/malta: Use bootloader generator API for nanoMIPS CPUs (3/5)
  hw/mips/malta: Use bootloader generator API for nanoMIPS CPUs (4/5)
  hw/mips/malta: Use bootloader generator API for nanoMIPS CPUs (5/5)
  hw/mips/malta: Merge common BL code as bl_setup_gt64120_jump_kernel()
  hw/mips/malta: Introduce PIIX4_PCI_DEVFN definition
  hw/mips/malta: Set PIIX4 IRQ routes in embedded bootloader
  hw/isa/piix4: Correct IRQRC[A:D] reset values
  hw/pci/pci_host: Trace config accesses on unexisting functions
  hw/pci-host/bonito: Convert to 3-phase reset
  hw/pci-host/bonito: Use 'bonito_host' for PCI host bridge code
  hw/pci-host/bonito: Use 'bonito_pci' for PCI function #0 code
  hw/pci-host/bonito: Declare TYPE_BONITO_PCI_HOST_BRIDGE in header
  target/mips: Restrict 'qapi-commands-machine.h' to system emulation
  scripts/git.orderfile: Display MAINTAINERS changes first

Thomas Huth (4):
  hw/intc: Extract the IRQ counting functions into a separate file
  hw/core/qdev-properties-system: Allow the 'slew' policy only on x86
  hw/rtc/mc146818rtc: Make the mc146818 RTC device target independent
  softmmu/rtc: Emit warning when using driftfix=slew on systems without
    mc146818

 MAINTAINERS                                   |   3 +-
 configs/devices/mips-softmmu/common.mak       |   3 -
 disas/meson.build                             |   3 +-
 docs/about/deprecated.rst                     |   9 -
 docs/about/removed-features.rst               |   9 +
 hw/core/qdev-properties-system.c              |  28 +-
 hw/i386/kvm/i8259.c                           |   4 +-
 hw/i386/kvm/ioapic.c                          |   4 +-
 hw/i386/pc_piix.c                             |  18 +-
 hw/i386/pc_q35.c                              |  17 +-
 hw/intc/apic.c                                |   3 +-
 hw/intc/apic_common.c                         |  30 +-
 hw/intc/i8259.c                               |  11 +-
 hw/intc/kvm_irqcount.c                        |  49 +++
 hw/intc/meson.build                           |   6 +
 hw/intc/trace-events                          |   9 +-
 hw/isa/piix3.c                                |  17 +-
 hw/isa/piix4.c                                |  37 +-
 hw/mips/Kconfig                               |   2 +
 hw/mips/bootloader.c                          | 141 ++++--
 hw/mips/boston.c                              |   6 +-
 hw/mips/fuloong2e.c                           |   2 +-
 hw/mips/malta.c                               | 403 ++++++------------
 hw/mips/meson.build                           |   2 +-
 hw/mips/trace-events                          |   9 +-
 hw/pci-host/Kconfig                           |   6 +
 hw/pci-host/bonito.c                          |  37 +-
 hw/{mips/gt64xxx_pci.c => pci-host/gt64120.c} | 130 ++++--
 hw/pci-host/meson.build                       |   1 +
 hw/pci-host/raven.c                           |   3 +-
 hw/pci-host/trace-events                      |   7 +
 hw/pci-host/versatile.c                       |   3 +-
 hw/pci/pci.c                                  |  12 +-
 hw/pci/pci_host.c                             |   6 +
 hw/remote/machine.c                           |   3 +-
 hw/remote/vfio-user-obj.c                     |   4 +-
 hw/rtc/mc146818rtc.c                          |  20 +-
 hw/rtc/meson.build                            |   3 +-
 hw/usb/hcd-uhci.c                             |  16 +-
 hw/usb/hcd-uhci.h                             |   4 +
 include/exec/poison.h                         |   1 -
 include/hw/i386/apic.h                        |   2 -
 include/hw/i386/apic_internal.h               |   1 -
 include/hw/intc/i8259.h                       |   6 +-
 include/hw/intc/kvm_irqcount.h                |  10 +
 include/hw/mips/bootloader.h                  |  10 +-
 include/hw/pci-host/bonito.h                  |  18 +
 include/hw/pci/pci.h                          |   3 +-
 include/hw/rtc/mc146818rtc.h                  |   1 +
 include/qemu/typedefs.h                       |   1 +
 meson.build                                   |   5 -
 scripts/git.orderfile                         |   2 +
 softmmu/rtc.c                                 |   6 +-
 target/mips/cpu.c                             |  38 +-
 target/mips/cpu.h                             |   3 -
 target/mips/internal.h                        |   3 -
 target/mips/kvm.c                             |  11 +-
 target/mips/sysemu/addr.c                     |  17 -
 target/mips/sysemu/meson.build                |   1 +
 target/mips/sysemu/mips-qmp-cmds.c            |  39 ++
 target/mips/sysemu/physaddr.c                 |  13 -
 tests/avocado/machine_mips_malta.py           |  47 +-
 62 files changed, 693 insertions(+), 625 deletions(-)
 create mode 100644 hw/intc/kvm_irqcount.c
 rename hw/{mips/gt64xxx_pci.c => pci-host/gt64120.c} (91%)
 create mode 100644 include/hw/intc/kvm_irqcount.h
 create mode 100644 include/hw/pci-host/bonito.h
 create mode 100644 target/mips/sysemu/mips-qmp-cmds.c

-- 
2.38.1


Re: [PULL 00/46] MIPS patches for 2023-01-13
Posted by Peter Maydell 1 year, 3 months ago
On Fri, 13 Jan 2023 at 16:05, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
>
> The following changes since commit 3db29dcac23da85486704ef9e7a8e7217f7829cd:
>
>   Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (2023-01-12 13:51:36 +0000)
>
> are available in the Git repository at:
>
>   https://github.com/philmd/qemu.git tags/mips-20230113
>
> for you to fetch changes up to 4828656f65324249273ad2f2db80844ba90eeb9b:
>
>   scripts/git.orderfile: Display MAINTAINERS changes first (2023-01-13 16:22:57 +0100)
>
> ----------------------------------------------------------------
> MIPS patches queue
>
> Confronting my triskaidekaphobia, here goes
> a bunch of cleanups from various people:
>
> - Improved GT64120 on big-endian hosts
> - GT64120 north bridge and MC146818 RTC devices are now target independent
> - Bonito64 north bridge converted to 3-phase reset API
> - PCI refactors around PIIX devices
> - Support for nanoMIPS in bootloader generator API
> - New YAMON Malta Avocado test
> - Removal of 'trap and emulate' KVM support
> - System-specific QMP commands restricted to system emulation

Hi; gpg says your key has expired -- which keyserver can
I get an updated version from?

thanks
-- PMM
Re: [PULL 00/46] MIPS patches for 2023-01-13
Posted by Philippe Mathieu-Daudé 1 year, 3 months ago
On 13/1/23 18:57, Peter Maydell wrote:
> On Fri, 13 Jan 2023 at 16:05, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
>>
>> The following changes since commit 3db29dcac23da85486704ef9e7a8e7217f7829cd:
>>
>>    Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (2023-01-12 13:51:36 +0000)
>>
>> are available in the Git repository at:
>>
>>    https://github.com/philmd/qemu.git tags/mips-20230113
>>
>> for you to fetch changes up to 4828656f65324249273ad2f2db80844ba90eeb9b:
>>
>>    scripts/git.orderfile: Display MAINTAINERS changes first (2023-01-13 16:22:57 +0100)
>>
>> ----------------------------------------------------------------
>> MIPS patches queue
>>
>> Confronting my triskaidekaphobia, here goes
>> a bunch of cleanups from various people:
>>
>> - Improved GT64120 on big-endian hosts
>> - GT64120 north bridge and MC146818 RTC devices are now target independent
>> - Bonito64 north bridge converted to 3-phase reset API
>> - PCI refactors around PIIX devices
>> - Support for nanoMIPS in bootloader generator API
>> - New YAMON Malta Avocado test
>> - Removal of 'trap and emulate' KVM support
>> - System-specific QMP commands restricted to system emulation
> 
> Hi; gpg says your key has expired -- which keyserver can
> I get an updated version from?

"the usuals"? :)

This time I set up an alarm to upload a renewed one before the
expiration date, and submitted it to pgp.mit.edu and keys.openpgp.org.

This worked for me:

$ \
curl 'https://pgp.mit.edu/pks/lookup?op=get&search=0xE3E32C2CDEADC0DE' \
| gpg --import

Re: [PULL 00/46] MIPS patches for 2023-01-13
Posted by Peter Maydell 1 year, 2 months ago
On Fri, 13 Jan 2023 at 20:32, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
>
> On 13/1/23 18:57, Peter Maydell wrote:
> > On Fri, 13 Jan 2023 at 16:05, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
> >>
> >> The following changes since commit 3db29dcac23da85486704ef9e7a8e7217f7829cd:
> >>
> >>    Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (2023-01-12 13:51:36 +0000)
> >>
> >> are available in the Git repository at:
> >>
> >>    https://github.com/philmd/qemu.git tags/mips-20230113
> >>
> >> for you to fetch changes up to 4828656f65324249273ad2f2db80844ba90eeb9b:
> >>
> >>    scripts/git.orderfile: Display MAINTAINERS changes first (2023-01-13 16:22:57 +0100)
> >>
> >> ----------------------------------------------------------------
> >> MIPS patches queue
> >>
> >> Confronting my triskaidekaphobia, here goes
> >> a bunch of cleanups from various people:
> >>
> >> - Improved GT64120 on big-endian hosts
> >> - GT64120 north bridge and MC146818 RTC devices are now target independent
> >> - Bonito64 north bridge converted to 3-phase reset API
> >> - PCI refactors around PIIX devices
> >> - Support for nanoMIPS in bootloader generator API
> >> - New YAMON Malta Avocado test
> >> - Removal of 'trap and emulate' KVM support
> >> - System-specific QMP commands restricted to system emulation
> >
> > Hi; gpg says your key has expired -- which keyserver can
> > I get an updated version from?
>
> "the usuals"? :)
>
> This time I set up an alarm to upload a renewed one before the
> expiration date, and submitted it to pgp.mit.edu and keys.openpgp.org.

Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/8.0
for any user-visible changes.

-- PMM