1*5a8559e2SFrancisco Iglesias /* 2*5a8559e2SFrancisco Iglesias * Xilinx CFI interface 3*5a8559e2SFrancisco Iglesias * 4*5a8559e2SFrancisco Iglesias * Copyright (C) 2023, Advanced Micro Devices, Inc. 5*5a8559e2SFrancisco Iglesias * 6*5a8559e2SFrancisco Iglesias * Written by Francisco Iglesias <francisco.iglesias@amd.com> 7*5a8559e2SFrancisco Iglesias * 8*5a8559e2SFrancisco Iglesias * SPDX-License-Identifier: GPL-2.0-or-later 9*5a8559e2SFrancisco Iglesias */ 10*5a8559e2SFrancisco Iglesias #include "qemu/osdep.h" 11*5a8559e2SFrancisco Iglesias #include "hw/misc/xlnx-cfi-if.h" 12*5a8559e2SFrancisco Iglesias xlnx_cfi_transfer_packet(XlnxCfiIf * cfi_if,XlnxCfiPacket * pkt)13*5a8559e2SFrancisco Iglesiasvoid xlnx_cfi_transfer_packet(XlnxCfiIf *cfi_if, XlnxCfiPacket *pkt) 14*5a8559e2SFrancisco Iglesias { 15*5a8559e2SFrancisco Iglesias XlnxCfiIfClass *xcic = XLNX_CFI_IF_GET_CLASS(cfi_if); 16*5a8559e2SFrancisco Iglesias 17*5a8559e2SFrancisco Iglesias if (xcic->cfi_transfer_packet) { 18*5a8559e2SFrancisco Iglesias xcic->cfi_transfer_packet(cfi_if, pkt); 19*5a8559e2SFrancisco Iglesias } 20*5a8559e2SFrancisco Iglesias } 21*5a8559e2SFrancisco Iglesias 22*5a8559e2SFrancisco Iglesias static const TypeInfo xlnx_cfi_if_info = { 23*5a8559e2SFrancisco Iglesias .name = TYPE_XLNX_CFI_IF, 24*5a8559e2SFrancisco Iglesias .parent = TYPE_INTERFACE, 25*5a8559e2SFrancisco Iglesias .class_size = sizeof(XlnxCfiIfClass), 26*5a8559e2SFrancisco Iglesias }; 27*5a8559e2SFrancisco Iglesias xlnx_cfi_if_register_types(void)28*5a8559e2SFrancisco Iglesiasstatic void xlnx_cfi_if_register_types(void) 29*5a8559e2SFrancisco Iglesias { 30*5a8559e2SFrancisco Iglesias type_register_static(&xlnx_cfi_if_info); 31*5a8559e2SFrancisco Iglesias } 32*5a8559e2SFrancisco Iglesias 33*5a8559e2SFrancisco Iglesias type_init(xlnx_cfi_if_register_types) 34*5a8559e2SFrancisco Iglesias 35