xref: /openbmc/qemu/hw/s390x/virtio-ccw-mem.h (revision aa3a285b5bc56a4208b3b57d4a55291e9c260107)
1*aa910c20SDavid Hildenbrand /*
2*aa910c20SDavid Hildenbrand  * Virtio MEM CCW device
3*aa910c20SDavid Hildenbrand  *
4*aa910c20SDavid Hildenbrand  * Copyright (C) 2024 Red Hat, Inc.
5*aa910c20SDavid Hildenbrand  *
6*aa910c20SDavid Hildenbrand  * Authors:
7*aa910c20SDavid Hildenbrand  *  David Hildenbrand <david@redhat.com>
8*aa910c20SDavid Hildenbrand  *
9*aa910c20SDavid Hildenbrand  * This work is licensed under the terms of the GNU GPL, version 2.
10*aa910c20SDavid Hildenbrand  * See the COPYING file in the top-level directory.
11*aa910c20SDavid Hildenbrand  */
12*aa910c20SDavid Hildenbrand 
13*aa910c20SDavid Hildenbrand #ifndef HW_S390X_VIRTIO_CCW_MEM_H
14*aa910c20SDavid Hildenbrand #define HW_S390X_VIRTIO_CCW_MEM_H
15*aa910c20SDavid Hildenbrand 
16*aa910c20SDavid Hildenbrand #include "virtio-ccw-md.h"
17*aa910c20SDavid Hildenbrand #include "hw/virtio/virtio-mem.h"
18*aa910c20SDavid Hildenbrand #include "qom/object.h"
19*aa910c20SDavid Hildenbrand 
20*aa910c20SDavid Hildenbrand typedef struct VirtIOMEMCcw VirtIOMEMCcw;
21*aa910c20SDavid Hildenbrand 
22*aa910c20SDavid Hildenbrand /*
23*aa910c20SDavid Hildenbrand  * virtio-mem-ccw: This extends VirtIOMDCcw
24*aa910c20SDavid Hildenbrand  */
25*aa910c20SDavid Hildenbrand #define TYPE_VIRTIO_MEM_CCW "virtio-mem-ccw"
26*aa910c20SDavid Hildenbrand DECLARE_INSTANCE_CHECKER(VirtIOMEMCcw, VIRTIO_MEM_CCW, TYPE_VIRTIO_MEM_CCW)
27*aa910c20SDavid Hildenbrand 
28*aa910c20SDavid Hildenbrand struct VirtIOMEMCcw {
29*aa910c20SDavid Hildenbrand     VirtIOMDCcw parent_obj;
30*aa910c20SDavid Hildenbrand     VirtIOMEM vdev;
31*aa910c20SDavid Hildenbrand     Notifier size_change_notifier;
32*aa910c20SDavid Hildenbrand };
33*aa910c20SDavid Hildenbrand 
34*aa910c20SDavid Hildenbrand #endif /* HW_S390X_VIRTIO_CCW_MEM_H */
35