[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZAkV5ZNeK5iHU0Uq@gmail.com>
Date: Wed, 8 Mar 2023 23:10:29 +0000
From: Eric Biggers <ebiggers@...nel.org>
To: Abel Vesa <abel.vesa@...aro.org>
Cc: Ulf Hansson <ulf.hansson@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Andy Gross <agross@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konrad.dybcio@...aro.org>,
Manivannan Sadhasivam <mani@...nel.org>,
Alim Akhtar <alim.akhtar@...sung.com>,
Avri Altman <avri.altman@....com>,
Bart Van Assche <bvanassche@....org>,
Adrian Hunter <adrian.hunter@...el.com>,
"James E . J . Bottomley" <jejb@...ux.ibm.com>,
"Martin K . Petersen" <martin.petersen@...cle.com>,
linux-mmc@...r.kernel.org, devicetree@...r.kernel.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-arm-msm@...r.kernel.org, linux-scsi@...r.kernel.org
Subject: Re: [RFC PATCH v2 4/7] soc: qcom: Make the Qualcomm UFS/SDCC ICE a
dedicated driver
On Wed, Mar 08, 2023 at 11:44:33PM +0200, Abel Vesa wrote:
> On 23-03-08 12:01:41, Eric Biggers wrote:
> > On Wed, Mar 08, 2023 at 05:58:35PM +0200, Abel Vesa wrote:
> > > * Switched QCOM_INLINE_CRYPTO_ENGINE to tristate and made it built-in
> > > if any of the UFS or the SDHC drivers are built-in. This is to allow
> > > the API to be available even if the built-in driver doesn't have
> > > crypto enabled.
> > [...]
> > > diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig
> > > index a8f283086a21..c584369e9810 100644
> > > --- a/drivers/soc/qcom/Kconfig
> > > +++ b/drivers/soc/qcom/Kconfig
> > > @@ -275,4 +275,10 @@ config QCOM_ICC_BWMON
> > > the fixed bandwidth votes from cpufreq (CPU nodes) thus achieve high
> > > memory throughput even with lower CPU frequencies.
> > >
> > > +config QCOM_INLINE_CRYPTO_ENGINE
> > > + tristate
> > > + depends on SCSI_UFS_CRYPTO || MMC_CRYPTO
> > > + default y if SCSI_UFS_QCOM=y || MMC_SDHCI_MSM=y
> > > + select QCOM_SCM
> >
> > What are the "depends on" and "default y" lines above for?
> >
> > You're already selecting this from SCSI_UFS_QCOM and MSM_SDHCI_MSM, as I had
> > suggested. Isn't that enough?
>
> We have the following:
> (SCSI_UFS_QCOM && SCSI_UFS_CRYPTO) || (MMC_SDHCI_MSM && MMC_CRYPTO)
>
> So lets take as example the scenario: (m && y) || (y && n).
>
> The QCOM_INLINE_CRYPTO_ENGINE will be set to 'm' and the sdhci driver
> will not be able to link properly since the ICE API is part of a module.
>
> Therefore, if just one of SCSI_UFS_QCOM and MMC_SDHCI_MSM is built-in
> and at least one of the crypto options are enabled, set the
> QCOM_INLINE_CRYPTO_ENGINE to 'y' by default in order to make the
> built-in one linkage will not fail.
>
That does not make sense. If MMC_CRYPTO is disabled, then the sdhci-msm driver
should not call any of the ICE APIs. Likewise for ufs-qcom and SCSI_UFS_CRYPTO.
- Eric
Powered by blists - more mailing lists