1f11051619
artist: only render dirty scanlines on the display surface
...
The framebuffer_update_display() function returns the dirty scanlines that were
touched since the last display update, however artist_update_display() always calls
dpy_gfx_update() with start and end scanlines of 0 and s->height causing the
entire display surface to be rendered on every update.
Update artist_update_display() so that dpy_gfx_update() only renders the dirty
scanlines on the display surface, bypassing the display surface rendering
completely if framebuffer_update_display() indicates no changes occurred.
This noticeably improves boot performance when the framebuffer is enabled on my
rather modest laptop here, including making the GTK UI usable.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Message-Id: <20220504153708.10352-4-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Helge Deller <deller@gmx.de >
Reviewed-by: Sven Schnelle <svens@stackframe.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
ada804eb89
artist: remove unused ROP8OFF() macro
...
This macro is unused and so can simply be removed.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Message-Id: <20220504153708.10352-3-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Helge Deller <deller@gmx.de >
Reviewed-by: Sven Schnelle <svens@stackframe.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
5d61789e04
artist: checkpatch and newline style fixes
...
Ensure that subsequent patches do not cause checkpatch to fail and also tidy up
extra/missing newlines.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Message-Id: <20220504153708.10352-2-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Helge Deller <deller@gmx.de >
Reviewed-by: Sven Schnelle <svens@stackframe.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
297d410387
hppa: simplify machine function names in machine.c
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-51-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
42cc2bf63c
hppa: fold machine_hppa_machine_init() into machine_hppa_machine_init_class_init()
...
There is no need for a separate function to set the machine class properties
separately from the others.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-50-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
c165905c17
hppa: use MACHINE QOM macros for defining the hppa machine
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-49-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
148da67085
hppa: remove the empty hppa_sys.h file
...
This file is now just a simple wrapper that includes hppa_hardware.h so remove
the file completely, and update its single user in machine.c to include
hppa_hardware.h directly.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-48-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
932befaa55
hppa: move enable_lan() define from hppa_sys.h to machine.c
...
Now that the board configuration is in one place, the define is only needed when
wiring up the board in machine.c.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-47-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
192e32284b
hppa: remove unused trace-events from from hw/hppa
...
Now that there are no longer any devices in hw/hppa the trace-events file is
empty and can be removed.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-46-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
3c2ce5bba3
hppa: remove hw/hppa/pci.c
...
The functions and definitions in this file are not used anywhere within the
generic hppa machine.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-45-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
28f5332ae9
hppa: move hppa_pci_ignore_ops from pci.c to machine.c
...
The memory region only has one user which is for ensuring accesses to the ISA
bus memory do not fault.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-44-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
45f569a116
lasi: move from hw/hppa to hw/misc
...
Move the LASI device implementation from hw/hppa to hw/misc so that it is
located with all the other miscellaneous devices.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-43-mark.cave-ayland@ilande.co.uk >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
134ba73f32
hppa: move device headers from hppa_sys.h into individual .c files
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-42-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
8e81ffe320
lasi: use numerical constant for iar reset value
...
This is to allow us to decouple the LASI device from the board logic. If it is
decided later that this value needs to be configurable then it can easily be
converted to a qdev property.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-41-mark.cave-ayland@ilande.co.uk >
Acked-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
ca7b468be8
lasi: use constants for device register offsets
...
Instead of generating the offset based upon the physical address of the
register, add constants for each of the device registers to lasi.h and
update lasi.c to use them.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-40-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
e881e3c83a
lasi: move lasi_initfn() to machine.c
...
Move the simplified lasi_initfn() back to machine.c whilst also renaming it
back to its original lasi_init() name.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-39-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
deaa5d3b4e
lasi: remove address space parameter from lasi_initfn()
...
Now that all of the LASI devices are mapped by the board, this parameter is no
longer required.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-38-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
d26c575c44
lasi: move PS2 initialisation to machine.c
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-37-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
2da547b819
lasi: move second serial port initialisation to machine.c
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-36-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
9701e56943
lasi: move parallel port initialisation to machine.c
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-35-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
c3c3fe4708
lasi: move LAN initialisation to machine.c
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-34-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
954f6f7564
lasi: update lasi_initfn() to return LASIState
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-33-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
fe744ca3ee
lasi: fix serial port initialisation
...
The existing code checks for serial_hd(1) but sets the LASI serial port chardev
to serial_hd(0). Use serial_hd(1) for the LASI serial port and also set the
serial port endian to DEVICE_BIG_ENDIAN (which also matches the endian of the
existing serial port).
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-32-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
e004499fd5
lasi: use qdev GPIOs to wire up IRQs in lasi_initfn()
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-31-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
cb9f6c4b65
lasi: define IRQ inputs as qdev GPIOs
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-30-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
0f04d5777b
lasi: replace lasi_get_irq() with defined constants
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-29-mark.cave-ayland@ilande.co.uk >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:37 +01:00
b514f43244
lasi: move LASIState and associated QOM structures to lasi.h
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-28-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
b3cdb7e4b2
lasi: move initialisation of iar and rtc to new lasi_reset() function
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-27-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
2683758c7c
lasi: move register memory mapping from lasi.c to machine.c
...
The device register should be mapped directly by the board code.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-26-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
46f2594cfc
lasi: move memory region initialisation to new lasi_init() function
...
Create a new lasi_init() instance initialisation function and move the LASI
memory region initialisation into it. Rename the existing lasi_init() function
to lasi_initfn() for now.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-25-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
63588da809
lasi: checkpatch fixes
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-24-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
0db9350e6e
dino: move from hw/hppa to hw/pci-host
...
Move the DINO device implementation from hw/hppa to hw/pci-host so that it is
located with all the other PCI host bridges.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-23-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
e111f288d9
dino: move DINO HPA constants from hppa_hardware.h to dino.h
...
This is to allow us to decouple the DINO device from the board logic.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-22-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
2fb11c7cac
dino: use numerical constant for iar0 and iar1 reset values
...
This is to allow us to decouple the DINO device from the board logic. The choice
of using a hard-coded constant (along with a comment) is to match how this is
already done for toc_addr. If it is decided later that these values need to be
configurable then they can easily be converted to qdev properties.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-21-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
0d06899631
hppa: move dino_init() from dino.c to machine.c
...
Now that dino_init() is completely decoupled from dino.c it can be moved to
machine.c with the rest of the board configuration.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-20-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
36f9bbdb17
dino: remove unused dino_set_timer_irq() IRQ handler
...
According to the comments in dino.c the timer IRQ is unused, so remove the empty
dino_set_timer_irq() handler function and simply pass NULL to mc146818_rtc_init()
in machine.c instead.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-19-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
a4b74c1924
dino: wire up serial IRQ using a qdev GPIO in machine.c
...
This makes it unnecessary to allocate a separate IRQ for the serial port.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-18-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
4b5faaf94f
dino: define IRQ inputs as qdev GPIOs
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-17-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
10c5264172
dino.h: add defines for DINO IRQ numbers
...
This is to allow the DINO IRQs to be defined as qdev GPIOs.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-16-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
efdb3ce2de
machine.c: map DINO device during board configuration
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-15-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
05245daf47
dino: change dino_init() to return the DINO device instead of PCIBus
...
This is in preparation for using more qdev APIs during the configuration of the
HPPA generic machine.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-14-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
0d98fbb57d
hppa: use new CONFIG_HPPA_B160L option instead of CONFIG_DINO to build hppa machine
...
DINO refers to the GSC-PCI bridge device which will soon be handled separately,
however the QEMU HPPA machine is actually based upon the HPPA B160L as indicated
by the Linux kernel dmesg output when booted in qemu-system-hppa and the QEMU
MAINTAINERS file.
Update the machine configuration to use CONFIG_HPPA_B160L instead of CONFIG_DINO
and also update the machine description accordingly.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-13-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
14e275efcb
dino: split declarations from dino.c into dino.h
...
This is to allow access to DinoState from outside dino.c. With the changes to
the headers it is now possible to remove the duplicate definition for
TYPE_DINO_PCI_HOST_BRIDGE from hppa_sys.h.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-12-mark.cave-ayland@ilande.co.uk >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
079e7ad989
dino: return PCIBus from dino_init() using qdev_get_child_bus()
...
This allows access to the PCI bus without having to reference parent_obj directly.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-11-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
ee313d5abb
dino: use QOM cast instead of directly referencing parent_obj
...
Use a QOM cast in both dino_chip_read_with_attrs() and dino_chip_write_with_attrs()
instead of directly referencing parent_obj.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-10-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
98d168f359
dino: move initial register configuration to new dino_pcihost_reset() function
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-9-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
9cf69f444c
dino: move PCI bus master address space setup to dino_pcihost_realize()
...
Add a new dino_pcihost_unrealize() function to remove the address space when the
device is unrealized.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-8-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
5ac6c43c85
dino: move pci_setup_iommu() to dino_pcihost_init()
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-7-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
270b29587f
dino: add memory-as property containing a link to the memory address space
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-6-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00
cc363c4a10
dino: move PCI windows initialisation to dino_pcihost_init()
...
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
Acked-by: Helge Deller <deller@gmx.de >
Message-Id: <20220504092600.10048-5-mark.cave-ayland@ilande.co.uk >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk >
2022-05-08 18:52:36 +01:00