[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250624-more-qseecom-v3-0-95205cd88cc2@oss.qualcomm.com>
Date: Tue, 24 Jun 2025 05:13:51 +0300
From: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
To: Bjorn Andersson <andersson@...nel.org>,
Maximilian Luz <luzmaximilian@...il.com>,
Konrad Dybcio <konradybcio@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Ard Biesheuvel <ardb@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>
Cc: Johan Hovold <johan@...nel.org>, Steev Klimaszewski <steev@...i.org>,
linux-arm-msm@...r.kernel.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org, linux-efi@...r.kernel.org,
Konrad Dybcio <konrad.dybcio@....qualcomm.com>,
Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
Subject: [PATCH v3 0/8] firmware: qcom: enable UEFI variables on Lenovo
Yoga C630
Lenovo Yoga C630 is a WoA / WoS laptop, which uses a "standard" QSEECOM /
uefisecapp application in order to implement UEFI variables. However as
this platform has only one storage (UFS) shared between Linux and
SecureOS world, uefisecapp can not update variables directly. It
requires some additional steps in order to update variables, which are
not yet reverse engineered.
However even with the current driver it is possible to implement R/O
UEFI vars access, which e.g. lets the RTC driver to read RTC offset,
providing Linux with a correct time.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
---
Changes in v3:
- Picked up patches from another series, reworking the QSEECOM
allowtable
- Added a fix for efivar_set_variable() crashing the machine if R/O UEFI
vars are provided (Johan)
- Link to v2: https://lore.kernel.org/r/20250621-more-qseecom-v2-0-6e8f635640c5@oss.qualcomm.com
- Link to the merged series: https://lore.kernel.org/r/20241103-rework-qseecom-v1-0-1d75d4eedc1e@linaro.org/
Changes in v2:
- Added QSEECOM quirks in order to make UEFI vars r/o on C630.
- Added DT patch, specifying the use of UEFI vars for RTC offset.
- Link to v1: https://lore.kernel.org/r/20240725-more-qseecom-v1-1-a55a3553d1fe@linaro.org
---
Dmitry Baryshkov (8):
efi: efivars: don't crash in efivar_set_variable{,_locked} in r/o case
firmware: qcom: scm: allow specifying quirks for QSEECOM implementations
firmware: qcom: uefisecapp: add support for R/O UEFI vars
firmware: qcom: enable QSEECOM on Lenovo Yoga C630
firmware; qcom: scm: enable QSEECOM on SC8280XP CRD
firmware: qcom: scm: add modparam to control QSEECOM enablement
firmware: qcom: scm: rework QSEECOM allowlist
arm64: dts: qcom: sdm850-lenovo-yoga-c630: fix RTC offset info
arch/arm64/boot/dts/qcom/pm8998.dtsi | 2 +-
.../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 4 +
drivers/firmware/efi/vars.c | 2 +
drivers/firmware/qcom/qcom_qseecom.c | 6 +-
drivers/firmware/qcom/qcom_qseecom_uefisecapp.c | 18 +++-
drivers/firmware/qcom/qcom_scm.c | 99 +++++++++++++---------
include/linux/firmware/qcom/qcom_qseecom.h | 3 +
7 files changed, 93 insertions(+), 41 deletions(-)
---
base-commit: 5d4809e25903ab8e74034c1f23c787fd26d52934
change-id: 20240725-more-qseecom-379933b9c769
Best regards,
--
With best wishes
Dmitry
Powered by blists - more mailing lists