From patchwork Mon May 25 14:44:53 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Guennadi Liakhovetski X-Patchwork-Id: 11568939 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 0BC73912 for ; Mon, 25 May 2020 14:45:04 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E822E20888 for ; Mon, 25 May 2020 14:45:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2390955AbgEYOpD (ORCPT ); Mon, 25 May 2020 10:45:03 -0400 Received: from mga04.intel.com ([192.55.52.120]:34251 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388687AbgEYOpD (ORCPT ); Mon, 25 May 2020 10:45:03 -0400 IronPort-SDR: MNEUnyJIl08+wYr3Zn4TJLIB0HcBfpZa0KT5ZQ6dQt7VfJqNOq7PZK1Koc8d0pf9mGEYa/SRSf mDYgE9EmEhnA== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 May 2020 07:45:02 -0700 IronPort-SDR: yV9Ov9Gz0kuWU9Db5dVuhIzcw6jQcENaX56MOivfEnDBMq2FTcuyEcc8IgmIL0CDheHN5rBXhg 666GxjYJsifQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,433,1583222400"; d="scan'208";a="266165815" Received: from gliakhov-mobl2.ger.corp.intel.com (HELO ubuntu.ger.corp.intel.com) ([10.249.41.109]) by orsmga003.jf.intel.com with ESMTP; 25 May 2020 07:44:59 -0700 From: Guennadi Liakhovetski To: kvm@vger.kernel.org Cc: linux-remoteproc@vger.kernel.org, virtualization@lists.linux-foundation.org, sound-open-firmware@alsa-project.org, Pierre-Louis Bossart , Liam Girdwood , "Michael S. Tsirkin" , Jason Wang , Ohad Ben-Cohen , Bjorn Andersson Subject: [PATCH v2 0/5] Add a vhost RPMsg API Date: Mon, 25 May 2020 16:44:53 +0200 Message-Id: <20200525144458.8413-1-guennadi.liakhovetski@linux.intel.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Sender: linux-remoteproc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-remoteproc@vger.kernel.org v2: - remove "default n" from Kconfig - drop patch #6 - it depends on a different patch, that is currently an RFC - update patch #5 with a correct vhost_dev_init() prototype Linux supports RPMsg over VirtIO for "remote processor" /AMP use cases. It can however also be used for virtualisation scenarios, e.g. when using KVM to run Linux on both the host and the guests. This patch set adds a wrapper API to facilitate writing vhost drivers for such RPMsg-based solutions. The first use case is an audio DSP virtualisation project, currently under development, ready for review and submission, available at https://github.com/thesofproject/linux/pull/1501/commits A further patch for the ADSP vhost RPMsg driver will be sent separately for review only since it cannot be merged without audio patches being upstreamed first. Thanks Guennadi Guennadi Liakhovetski (5): vhost: convert VHOST_VSOCK_SET_RUNNING to a generic ioctl vhost: (cosmetic) remove a superfluous variable initialisation rpmsg: move common structures and defines to headers rpmsg: update documentation vhost: add an rpmsg API Documentation/rpmsg.txt | 2 +- drivers/rpmsg/virtio_rpmsg_bus.c | 78 +------- drivers/vhost/Kconfig | 7 + drivers/vhost/Makefile | 3 + drivers/vhost/rpmsg.c | 372 +++++++++++++++++++++++++++++++++++++++ drivers/vhost/vhost.c | 2 +- drivers/vhost/vhost_rpmsg.h | 74 ++++++++ include/linux/virtio_rpmsg.h | 81 +++++++++ include/uapi/linux/rpmsg.h | 3 + include/uapi/linux/vhost.h | 4 +- 10 files changed, 547 insertions(+), 79 deletions(-) create mode 100644 drivers/vhost/rpmsg.c create mode 100644 drivers/vhost/vhost_rpmsg.h create mode 100644 include/linux/virtio_rpmsg.h