From patchwork Wed Nov 8 12:47:49 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jens Wiklander X-Patchwork-Id: 118249 Delivered-To: patches@linaro.org Received: by 10.140.22.164 with SMTP id 33csp5242562qgn; Wed, 8 Nov 2017 04:48:01 -0800 (PST) X-Received: by 10.46.41.152 with SMTP id p24mr181603ljp.173.1510145281180; Wed, 08 Nov 2017 04:48:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510145281; cv=none; d=google.com; s=arc-20160816; b=vLhBG/IjuZhWuryovIGUU29D+HV2m8ItMDCjI2Q4IAnEQxlvNLl03+KS+rVpkWQ72h 1e6mpXilOcGfN9dldDIIAE9k0+ELdFWqxCfmDwnIU6kOaNZTohFb2bt5qs/uoQKeyfVw skHTsG13Rqmg/iTaQvvYXtPQJ88Cn3JWXTD+5ijEjXLRBx62zCEoSMYGZK3UkO3NuhP2 QdfP5jgkBjWXxW4PFsMyK/z46s3D7G3vTDd1diD3DSle29FzwP0idCADe28M67tvsc2k 7PrM3g7YcTyz1SGWL7x1HYlM/0SMVUya6AmDJg7Y2NoK8q6PfY3u3gavKei9DOjxVHZv Nang== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=message-id:date:subject:cc:to:from:dkim-signature :arc-authentication-results; bh=/sQ1AJOuIbnWqE5z4AfHIXZJtXqSVcdmVGFunwdEkH0=; b=KGi4d7L5P/YSqXMhTqXaZzra9obqRNWciJcwnP3QvRHMNpxX4PDkQaG+kmZPQMhlcn iogCN7DOlSj7+eqgvAW6zilTjfYdU1cf0C8eogiLN8JIp9wPrSgd0Jhl7hW9BbMhlz38 Sy+PaXKhmvODumNBQDLmclcZSumuyLVuBo7y/Fz8oAwqhbyQ++GgWUVdgnUufbHv9asv jf5Mn0R+EUFON2jXLkLjJPuK5lDxTVAnTrU8c8xTltReOF0lTeSdnRNTdk9Qx7YDVwZa UcUOsjBPj8R1r9aoOP/awpV/uqktuj4E+wPFINsb3Sddp67HHROR9piowUNlPaUluJNu CRHg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=VuaA1Xm7; spf=pass (google.com: domain of jens.wiklander@linaro.org designates 209.85.220.65 as permitted sender) smtp.mailfrom=jens.wiklander@linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from mail-sor-f65.google.com (mail-sor-f65.google.com. [209.85.220.65]) by mx.google.com with SMTPS id c24sor671311lfb.18.2017.11.08.04.48.01 for (Google Transport Security); Wed, 08 Nov 2017 04:48:01 -0800 (PST) Received-SPF: pass (google.com: domain of jens.wiklander@linaro.org designates 209.85.220.65 as permitted sender) client-ip=209.85.220.65; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=VuaA1Xm7; spf=pass (google.com: domain of jens.wiklander@linaro.org designates 209.85.220.65 as permitted sender) smtp.mailfrom=jens.wiklander@linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=/sQ1AJOuIbnWqE5z4AfHIXZJtXqSVcdmVGFunwdEkH0=; b=VuaA1Xm7hDKnch9EkNlr1DE0eaYrpp2Msnenbv+N7o+Jdztg0xDcUtTeIEM/XrP731 ZbTN4ZcVjmh4Mafx0Y6HJvSfz8VunlMMcXlKB1eKI3Y1UKl583N71n90QffrN6MnK+i6 V5iuKxSEGj6GKuHR8hU40YEtAXoJxaWDzgxl8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=/sQ1AJOuIbnWqE5z4AfHIXZJtXqSVcdmVGFunwdEkH0=; b=oNPWeu/hz0FB4tI2toZI5EzvasvB8csuUawr2y3yLREVBqxWoBNcUaG/Iq5Nwtu+Z5 mrPy51kdUIrg+EHCqS09ZabId6t43XVtllyX0ftz/mkOtzr0JU9P60nFO+o69ERPjAIH HrdWR618gJFFspQCvcxVH2yJz4neLwaruKDBx/9pTdojsKiWOlzvveLOVTlcAZ2h62G9 WFf2RLf5kDD6U7R48437Vxn2UPbVV0aBpimk4JKT17f815qwR8wpXfWFMKFSyCgoI47K 0iBstrZtZnBRs1jHH2v1wHPoyQwcPFtHoO354UwnJ0SiaqemDPEpBWDEUELCJBmLG0iE 8pvg== X-Gm-Message-State: AJaThX4Qc8UUg6JntWf7vy58YuLSeF+iTLICMw+37gjYbFd0RpBVTtc5 LGDW5qYPr75UeKdzZIROuO+vziVb X-Google-Smtp-Source: AGs4zMYEaYaBUl8ZiHiJ82qDaA4/oEqPOELJmaKPPfE9USKNVLUURmym3uzY6z3JFferTsoLDkF8ZA== X-Received: by 10.25.37.201 with SMTP id l192mr156468lfl.35.1510145280775; Wed, 08 Nov 2017 04:48:00 -0800 (PST) Return-Path: Received: from jax.ideon.se ([85.235.10.227]) by smtp.gmail.com with ESMTPSA id x7sm658479lff.91.2017.11.08.04.47.59 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 08 Nov 2017 04:47:59 -0800 (PST) From: Jens Wiklander To: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, tee-dev@lists.linaro.org Cc: Jens Wiklander Subject: [PATCH 0/3] tee: asynchronous supplicant requests Date: Wed, 8 Nov 2017 13:47:49 +0100 Message-Id: <1510145272-14842-1-git-send-email-jens.wiklander@linaro.org> X-Mailer: git-send-email 2.7.4 Hi, Currently all tee supplicant communication is synchronous. This isn't very limiting if the supplicant only is accessing system local resources like storage. With network access via the supplicant it becomes a larger problem. This patch set enables asynchronous communication with the supplicant by introducing meta parameters in the user space API. The meta parameters can be used to tag requests with an id that can be matched against an asynchronous response as is done here in the OP-TEE driver. Asynchronous supplicant communication is needed by OP-TEE to implement GlobalPlatforms TEE Sockets API Specification v1.0.1. The specification is available at https://www.globalplatform.org/specificationsdevice.asp. This change is backwards compatible allowing older supplicants to work with newer kernels and vice versa. Thanks, Jens Jens Wiklander (3): tee: add tee_param_is_memref() for driver use tee: add TEE_IOCTL_PARAM_ATTR_META optee: support asynchronous supplicant requests drivers/tee/optee/core.c | 11 +- drivers/tee/optee/optee_private.h | 43 ++--- drivers/tee/optee/rpc.c | 4 +- drivers/tee/optee/supp.c | 375 ++++++++++++++++++++++++-------------- drivers/tee/tee_core.c | 32 ++-- include/linux/tee_drv.h | 12 ++ include/uapi/linux/tee.h | 7 + 7 files changed, 295 insertions(+), 189 deletions(-) -- 2.7.4