[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <d542b1fa-6e2a-4af1-a14b-eee32a7f3de6@intel.com>
Date: Mon, 28 Jul 2025 12:11:19 +0300
From: Adrian Hunter <adrian.hunter@...el.com>
To: Kamal Dasu <kamal.dasu@...adcom.com>, <andersson@...nel.org>,
<baolin.wang@...ux.alibaba.com>, <robh@...nel.org>, <krzk+dt@...nel.org>,
<conor+dt@...nel.org>, <florian.fainelli@...adcom.com>,
<ulf.hansson@...aro.org>
CC: <bcm-kernel-feedback-list@...adcom.com>,
<linux-remoteproc@...r.kernel.org>, <devicetree@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>, <linux-kernel@...r.kernel.org>,
<linux-mmc@...r.kernel.org>
Subject: Re: [PATCH 0/4] mmc: sdhci-brcmstb: rpmb sharing by claiming host for
TZOS
On 11/07/2025 18:42, Kamal Dasu wrote:
> This patch adds support to claim host for TZOS RPMB access and synchronized
> access to the controller hardware using hwspinlock framework.
> To achieve this Linux OS and the secure TZOS make use of:
> - shared hardware semaphore register
> - a set of SDIO shared work registers and
> - IPI interrupt registers
>
> The currently running OS that needs access to the controller puts itself in its
> slot of work register and if its next in line it can try to grab the hardware
> semaphore and complete its mmc requests. The shared work registers indicate next
> in queue to access the controller, and current agent in the queue. Next agent
> queue state is changed under the hwspinlock is owned by the current OS accessing
> the controller hardware before release the semaphore, send and receive IPI
> interrupts between linux and secure world are used to indicate completion of
> transaction to the waiting OS. TZOS has its own RPMB driver which accesses
> partition when it wants to read/write RPMB frames. Current implementation
> assumes Linux and TZOS as the two work agents.
>
> This patchset is an alternative method to initial RFC patch:
> [PATCH RFC 0/3] mmc: sdhci-brcmstb: Add rpmb sharing support
> https://lkml.org/lkml/2025/2/6/1711
Does it address Ulf's comments? i.e.
https://lore.kernel.org/all/CAPDyKFrCjo8gGnxmXWP6V39N+b1o62VQH9zwMUNb2_+D3-qrdw@mail.gmail.com/
>
> Kamal Dasu (4):
> dt-bindings: brcmstb-hwspinlock: support for hwspinlock
> hwspinlock: brcmstb hardware semaphore support
> dt-bindings: mmc: add brcmstb share register and hwlocks reference
> mmc: sdhci-brcmstb: rpmb sharing by claiming host for TZOS
>
> .../hwlock/brcm,brcmstb-hwspinlock.yaml | 36 +++
> .../bindings/mmc/brcm,sdhci-brcmstb.yaml | 29 ++-
> drivers/hwspinlock/Kconfig | 9 +
> drivers/hwspinlock/Makefile | 1 +
> drivers/hwspinlock/brcmstb_hwspinlock.c | 98 +++++++
> drivers/mmc/host/sdhci-brcmstb.c | 243 +++++++++++++++++-
> 6 files changed, 413 insertions(+), 3 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/hwlock/brcm,brcmstb-hwspinlock.yaml
> create mode 100644 drivers/hwspinlock/brcmstb_hwspinlock.c
>
Powered by blists - more mailing lists