From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44836) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cedur-0003SL-ES for qemu-devel@nongnu.org; Fri, 17 Feb 2017 03:29:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cedum-0000sL-FK for qemu-devel@nongnu.org; Fri, 17 Feb 2017 03:29:21 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:37979 helo=mx0a-001b2d01.pphosted.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cedum-0000rZ-8p for qemu-devel@nongnu.org; Fri, 17 Feb 2017 03:29:16 -0500 Received: from pps.filterd (m0098420.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.20/8.16.0.20) with SMTP id v1H8TFQR032462 for ; Fri, 17 Feb 2017 03:29:15 -0500 Received: from e19.ny.us.ibm.com (e19.ny.us.ibm.com [129.33.205.209]) by mx0b-001b2d01.pphosted.com with ESMTP id 28ns6j0s5x-1 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT) for ; Fri, 17 Feb 2017 03:29:15 -0500 Received: from localhost by e19.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 17 Feb 2017 03:28:52 -0500 From: Dong Jia Shi Date: Fri, 17 Feb 2017 09:28:34 +0100 In-Reply-To: <20170217082844.89466-1-bjsdjshi@linux.vnet.ibm.com> References: <20170217082844.89466-1-bjsdjshi@linux.vnet.ibm.com> Message-Id: <20170217082844.89466-2-bjsdjshi@linux.vnet.ibm.com> Subject: [Qemu-devel] [PATCH RFC v3 01/11] vfio: linux-headers update for vfio-ccw List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: kvm@vger.kernel.org, linux-s390@vger.kernel.org, qemu-devel@nongnu.org Cc: bjsdjshi@linux.vnet.ibm.com, renxiaof@linux.vnet.ibm.com, cornelia.huck@de.ibm.com, borntraeger@de.ibm.com, agraf@suse.com, alex.williamson@redhat.com, pmorel@linux.vnet.ibm.com, pasic@linux.vnet.ibm.com, wkywang@linux.vnet.ibm.com From: Xiao Feng Ren This is a placeholder for a linux-headers update. Signed-off-by: Xiao Feng Ren --- linux-headers/linux/vfio.h | 17 +++++++++++++++++ linux-headers/linux/vfio_ccw.h | 28 ++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 linux-headers/linux/vfio_ccw.h diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux/vfio.h index 759b850..b09d247 100644 --- a/linux-headers/linux/vfio.h +++ b/linux-headers/linux/vfio.h @@ -198,6 +198,7 @@ struct vfio_device_info { #define VFIO_DEVICE_FLAGS_PCI (1 << 1) /* vfio-pci device */ #define VFIO_DEVICE_FLAGS_PLATFORM (1 << 2) /* vfio-platform device */ #define VFIO_DEVICE_FLAGS_AMBA (1 << 3) /* vfio-amba device */ +#define VFIO_DEVICE_FLAGS_CCW (1 << 4) /* vfio-ccw device */ __u32 num_regions; /* Max region index + 1 */ __u32 num_irqs; /* Max IRQ index + 1 */ }; @@ -436,6 +437,22 @@ enum { VFIO_PCI_NUM_IRQS }; +/* + * The VFIO-CCW bus driver makes use of the following fixed region and + * IRQ index mapping. Unimplemented regions return a size of zero. + * Unimplemented IRQ types return a count of zero. + */ + +enum { + VFIO_CCW_CONFIG_REGION_INDEX, + VFIO_CCW_NUM_REGIONS +}; + +enum { + VFIO_CCW_IO_IRQ_INDEX, + VFIO_CCW_NUM_IRQS +}; + /** * VFIO_DEVICE_GET_PCI_HOT_RESET_INFO - _IORW(VFIO_TYPE, VFIO_BASE + 12, * struct vfio_pci_hot_reset_info) diff --git a/linux-headers/linux/vfio_ccw.h b/linux-headers/linux/vfio_ccw.h new file mode 100644 index 0000000..4ee74ae --- /dev/null +++ b/linux-headers/linux/vfio_ccw.h @@ -0,0 +1,28 @@ +/* + * Interfaces for vfio-ccw + * + * Copyright IBM Corp. 2017 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License (version 2 only) + * as published by the Free Software Foundation. + * + * Author(s): Dong Jia Shi + */ + +#ifndef _VFIO_CCW_H_ +#define _VFIO_CCW_H_ + +#include + +struct ccw_io_region { +#define ORB_AREA_SIZE 12 + __u8 orb_area[ORB_AREA_SIZE]; +#define SCSW_AREA_SIZE 12 + __u8 scsw_area[SCSW_AREA_SIZE]; +#define IRB_AREA_SIZE 96 + __u8 irb_area[IRB_AREA_SIZE]; + __u32 ret_code; +} __packed; + +#endif -- 2.8.4