lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200421163811.22720-1-etienne.carriere@linaro.org>
Date:   Tue, 21 Apr 2020 18:38:05 +0200
From:   Etienne Carriere <etienne.carriere@...aro.org>
To:     linux-kernel@...r.kernel.org
Cc:     linux-arm-kernel@...ts.infradead.org, james.morse@....com,
        michal.simek@...inx.com, richard.gong@...ux.intel.com,
        lorenzo.pieralisi@....com, mark.rutland@....com,
        jens.wiklander@...aro.org, tee-dev@...ts.linaro.org,
        sudeep.holla@....com,
        Etienne Carriere <etienne.carriere@...aro.org>
Subject: [RFC PATCH v2 0/6] firmware: conduit method helpers for SMCCC v1.0 calls

V2:
 Fix several build issues reported by kbuild test robot:
 - patch 1/6: fix erroneous ';' in inline functions;
 - patch 5/6: fix bad function label used;
 - patch 6/6: fix bad function label used.
 Reported-by: kbuild test robot <lkp@...el.com>
 Fix function stubs to return -ENXIO not -EINVAL when SMCCC is not supported.
 Few rephrasing in commit message for all patches of the series.
 Add an empty line between a trace and a return instruction in patch 1/6.
 Add argument label in arm_smccc_1_0_set_conduit() prototype in patch 1/6.
 Fix typo in inline description comments in patch 1/6.

These changes propose helper functions and macros to consolidate choice of
the conduit method among devices communicating with a secure world that
complies with SMCCC v1.0 but not SMCCC v1.1 or later. The new helper
functions mimic arm_smccc_1_1_*() function but for SMCCC v1.0 compliant
firmwares.

This series of changes updates several firmware drivers that each define a
conduit method whereas kernel drivers are expected to use the very same
conduit. This series obviously does not enforce these drivers to apply the
proposed changes but the interest of the first patch is this series is that
at least the PSCI driver upgrades as it will allow new drivers to benefit
from the early initialized PSCI conduit method.

Etienne Carriere (6):
  firmware: helper functions for SMCCC v1.0 invocation conduit
  firmware: psci: set SMCCC v1.0 conduit and use helpers functions
  tee: optee: use SMCCC v1.0 helper functions
  firmware: arm_sdei: use SMCCC v1.0 helper functions
  firmware: stratix10: use SMCCC v1.0 helper functions
  firmware: zynqmp: use SMCCC v1.0 helper functions

 drivers/firmware/Makefile            |   1 +
 drivers/firmware/arm_sdei.c          |  79 +++++---------
 drivers/firmware/arm_smccc_conduit.c | 148 +++++++++++++++++++++++++++
 drivers/firmware/psci/psci.c         |  60 ++---------
 drivers/firmware/stratix10-svc.c     |  97 ++----------------
 drivers/firmware/xilinx/zynqmp.c     |  87 ++--------------
 drivers/tee/optee/call.c             |  14 +--
 drivers/tee/optee/core.c             |  85 ++++-----------
 drivers/tee/optee/optee_private.h    |   4 +-
 include/linux/arm-smccc.h            | 106 +++++++++++++++++++
 include/linux/psci.h                 |   1 -
 11 files changed, 338 insertions(+), 344 deletions(-)
 create mode 100644 drivers/firmware/arm_smccc_conduit.c

-- 
2.17.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ