[PATCH v1 0/2] Re: Drop ignore_memory_transaction_failures for xilink_zynq

Chao Liu posted 2 patches 3 weeks, 5 days ago
Only 0 patches received!
[PATCH v1 0/2] Re: Drop ignore_memory_transaction_failures for xilink_zynq
Posted by Chao Liu 3 weeks, 5 days ago
> The ignore_memory_transaction_failures is used for compatibility
> with legacy board models. 
> 
> I attempted to remove this property from the
> xilink_zynq board and replace it with unimplemented devices to 
> handle devices that are not implemented on the board.
> 
> Chao Liu (2):
>   xilink_zynq: Add various missing unimplemented devices
>   xilink-zynq-devcfg: Fix up for memory address range size not set
>     correctly
> 
>  hw/arm/xilinx_zynq.c      | 44 ++++++++++++++++++++++++++++++++++++++-
>  hw/dma/xlnx-zynq-devcfg.c |  2 +-
>  2 files changed, 44 insertions(+), 2 deletions(-)
> 
> -- 
> 2.46.1

Hello, maintainers,

Could you please provide any suggestions or feedback on the set of patches?
This is my first contribution to the QEMU community,
and it makes me feel very honored.

Additionally, I have used creat_unimplemented_device() to
add all the unimplemented devices on the Xilinx Zynq board,
primarily referencing the Zynq DTS, located at

roms/u-boot/arch/arm/dts/zynq-7000.dtsi.

You can verify whether all the board devices have been added correctly by
following these commands:

Step1:
./qemu/build/qemu-system-arm -M xilinx-zynq-a9 -display none -monitor stdio

Step2:
(qemu) info mtree

I am looking forward to your reply.

Regards,
Chao Liu
Re: [PATCH v1 0/2] Re: Drop ignore_memory_transaction_failures for xilink_zynq
Posted by Peter Maydell 3 weeks, 5 days ago
On Thu, 26 Sept 2024 at 18:05, Chao Liu <chao.liu@yeah.net> wrote:
>
> > The ignore_memory_transaction_failures is used for compatibility
> > with legacy board models.
> >
> > I attempted to remove this property from the
> > xilink_zynq board and replace it with unimplemented devices to
> > handle devices that are not implemented on the board.
> >
> > Chao Liu (2):
> >   xilink_zynq: Add various missing unimplemented devices
> >   xilink-zynq-devcfg: Fix up for memory address range size not set
> >     correctly
> >
> >  hw/arm/xilinx_zynq.c      | 44 ++++++++++++++++++++++++++++++++++++++-
> >  hw/dma/xlnx-zynq-devcfg.c |  2 +-
> >  2 files changed, 44 insertions(+), 2 deletions(-)
> >
> > --
> > 2.46.1
>
> Hello, maintainers,
>
> Could you please provide any suggestions or feedback on the set of patches?
> This is my first contribution to the QEMU community,
> and it makes me feel very honored.
>
> Additionally, I have used creat_unimplemented_device() to
> add all the unimplemented devices on the Xilinx Zynq board,
> primarily referencing the Zynq DTS, located at
>
> roms/u-boot/arch/arm/dts/zynq-7000.dtsi.

Hi; this is on my todo list to review, but I think the
big question here is how much testing you have done and
on how big a range of guest software.

The reason that we set ignore_memory_transaction_failures on
this board (and all the others) was that it kept the behaviour
the same as before we added the support for making memory
transactions fail for accesses to nonexistent devices. This
was the safest thing since we didn't have access to that much guest
software to test on all of them. Getting rid of it for this board
is a good thing, but we need to be reasonably confident that
we have implemented all the devices that guests might be
touching. The cross-check against the dts is helpful there,
but so too is running as much real works-on-the-board code
as we can, to check it still boots.

thanks
-- PMM