[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v1 4/8] hw/misc/xlnx-versal-cfu: Introduce a model of Xilinx
From: |
Peter Maydell |
Subject: |
Re: [PATCH v1 4/8] hw/misc/xlnx-versal-cfu: Introduce a model of Xilinx Versal's CFU_SFR |
Date: |
Thu, 3 Aug 2023 14:49:41 +0100 |
On Mon, 10 Jul 2023 at 15:03, Francisco Iglesias
<francisco.iglesias@amd.com> wrote:
>
> Introduce a model of Xilinx Versal's Configuration Frame Unit's Single
> Frame Read port (CFU_SFR).
>
> Signed-off-by: Francisco Iglesias <francisco.iglesias@amd.com>
> ---
> hw/misc/xlnx-versal-cfu.c | 88 +++++++++++++++++++++++++++++++
> include/hw/misc/xlnx-versal-cfu.h | 15 ++++++
> 2 files changed, 103 insertions(+)
> +static void cfu_sfr_init(Object *obj)
> +{
> + XlnxVersalCFUSFR *s = XLNX_VERSAL_CFU_SFR(obj);
> + SysBusDevice *sbd = SYS_BUS_DEVICE(obj);
> +
> + memory_region_init_io(&s->iomem_sfr, obj, &cfu_sfr_ops, s,
> + TYPE_XLNX_VERSAL_CFU_SFR, KEYHOLE_STREAM_4K);
> + sysbus_init_mmio(sbd, &s->iomem_sfr);
> +}
> +
> static void cfu_fdro_init(Object *obj)
> {
> XlnxVersalCFUFDRO *s = XLNX_VERSAL_CFU_FDRO(obj);
> @@ -380,6 +435,12 @@ static Property cfu_props[] = {
> DEFINE_PROP_END_OF_LIST(),
> };
>
> +static Property cfu_sfr_props[] = {
> + DEFINE_PROP_LINK("cfu", XlnxVersalCFUSFR, cfg.cfu,
> + TYPE_XLNX_VERSAL_CFU_APB, XlnxVersalCFUAPB *),
> + DEFINE_PROP_END_OF_LIST(),
> +};
> +
> static const VMStateDescription vmstate_cfu_apb = {
> .name = TYPE_XLNX_VERSAL_CFU_APB,
> .version_id = 1,
> @@ -427,6 +488,16 @@ static const VMStateDescription vmstate_cfu_fdro = {
> }
> };
>
> +static const VMStateDescription vmstate_cfu_sfr = {
> + .name = TYPE_XLNX_VERSAL_CFU_SFR,
> + .version_id = 1,
> + .minimum_version_id = 1,
> + .fields = (VMStateField[]) {
> + VMSTATE_UINT32_ARRAY(wfifo, XlnxVersalCFUSFR, 4),
> + VMSTATE_END_OF_LIST(),
> + }
> +};
> +
> static void cfu_apb_class_init(ObjectClass *klass, void *data)
> {
> DeviceClass *dc = DEVICE_CLASS(klass);
> @@ -445,6 +516,14 @@ static void cfu_fdro_class_init(ObjectClass *klass, void
> *data)
> xcic->cfi_transfer_packet = cfu_fdro_cfi_transfer_packet;
> }
>
> +static void cfu_sfr_class_init(ObjectClass *klass, void *data)
> +{
> + DeviceClass *dc = DEVICE_CLASS(klass);
> +
> + device_class_set_props(dc, cfu_sfr_props);
> + dc->vmsd = &vmstate_cfu_sfr;
Missing reset again ?
> +}
thanks
-- PMM
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [PATCH v1 4/8] hw/misc/xlnx-versal-cfu: Introduce a model of Xilinx Versal's CFU_SFR,
Peter Maydell <=