[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <0619eb945f9dc1d4f5fb14bd2de7a101.squirrel@www.codeaurora.org>
Date: Wed, 2 Sep 2015 16:03:47 -0000
From: ygardi@...eaurora.org
To: "Rob Herring" <robherring2@...il.com>
Cc: "Yaniv Gardi" <ygardi@...eaurora.org>,
"Jej B" <james.bottomley@...senpartnership.com>,
"Paul Bolle" <pebolle@...cali.nl>, hch@...radead.org,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
linux-scsi@...r.kernel.org,
"linux-arm-msm" <linux-arm-msm@...r.kernel.org>,
"Santosh Y" <santoshsy@...il.com>,
linux-scsi-owner@...r.kernel.org,
"Subhash Jadavani" <subhashj@...eaurora.org>,
"Gilad Broner" <gbroner@...eaurora.org>,
"Dolev Raviv" <draviv@...eaurora.org>,
"Rob Herring" <robh+dt@...nel.org>,
"Pawel Moll" <pawel.moll@....com>,
"Mark Rutland" <mark.rutland@....com>,
"Ian Campbell" <ijc+devicetree@...lion.org.uk>,
"Kumar Gala" <galak@...eaurora.org>,
"Vinayak Holikatti" <vinholikatti@...il.com>,
"James E.J. Bottomley" <jbottomley@...n.com>,
"Christoph Hellwig" <hch@....de>,
"Sujit Reddy Thumma" <sthumma@...eaurora.org>,
"Raviv Shvili" <rshvili@...eaurora.org>,
"Sahitya Tummala" <stummala@...eaurora.org>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@...r.kernel.org>
Subject: Re: [PATCH v5 6/8] scsi: ufs: make the UFS variant a platform
device
> On Wed, Sep 2, 2015 at 3:32 AM, Yaniv Gardi <ygardi@...eaurora.org> wrote:
>> This change turns the UFS variant (SCSI_UFS_QCOM) into a UFS
>> a platform device.
>> In order to do so a few additional changes are required:
>> 1. The ufshcd-pltfrm is no longer serves as a platform device.
>> Now it only serves as a group of platform APIs such as PM APIs
>> (runtime suspend/resume, system suspend/resume etc), parsers of
>> clocks, regulators and pm_levels from DT.
>> 2. What used to be the old platform "probe" is now "only"
>> a pltfrm_init() routine, that does exactly the same, but only
>> being called by the new probe function of the UFS variant.
>>
>> Signed-off-by: Yaniv Gardi <ygardi@...eaurora.org>
>
> [...]
>
>> diff --git a/drivers/scsi/ufs/ufs-qcom.c b/drivers/scsi/ufs/ufs-qcom.c
>> index 329ac84..5179250 100644
>> --- a/drivers/scsi/ufs/ufs-qcom.c
>> +++ b/drivers/scsi/ufs/ufs-qcom.c
>> @@ -19,6 +19,7 @@
>>
>> #include <linux/phy/phy-qcom-ufs.h>
>> #include "ufshcd.h"
>> +#include "ufshcd-pltfrm.h"
>> #include "unipro.h"
>> #include "ufs-qcom.h"
>> #include "ufshci.h"
>> @@ -1036,7 +1037,7 @@ void ufs_qcom_clk_scale_notify(struct ufs_hba
>> *hba)
>> * The variant operations configure the necessary controller and PHY
>> * handshake during initialization.
>> */
>> -static const struct ufs_hba_variant_ops ufs_hba_qcom_vops = {
>> +static struct ufs_hba_variant_ops ufs_hba_qcom_vops = {
>> .name = "qcom",
>> .init = ufs_qcom_init,
>> .exit = ufs_qcom_exit,
>> @@ -1050,4 +1051,75 @@ static const struct ufs_hba_variant_ops
>> ufs_hba_qcom_vops = {
>> .resume = ufs_qcom_resume,
>> };
>>
>> +/**
>> + * ufs_qcom_probe - probe routine of the driver
>> + * @pdev: pointer to Platform device handle
>> + *
>> + * Always return 0
>> + */
>> +static int ufs_qcom_probe(struct platform_device *pdev)
>> +{
>> + int err;
>> + struct device *dev = &pdev->dev;
>> + struct ufs_hba *hba;
>> +
>> + /* Perform generic probe */
>> + err = ufshcd_pltfrm_init(pdev, &ufs_hba_qcom_vops);
>> + if (err) {
>> + dev_err(dev, "ufshcd_pltfrm_init() failed %d\n", err);
>> + goto out;
>> + }
>> +
>
> All of this:
>
>> + hba = platform_get_drvdata(pdev);
>> +
>> + return 0;
>> +
>> +dealloc_host:
>> + /* disconnect the bind between the qcom host and the hba */
>> + ufshcd_set_variant(hba, NULL);
>> + ufshcd_dealloc_host(hba);
>
> To this is dead code. You should get a warning that dealloc_host is
> unused. Please check and fix all warnings.
>
> Rob
>
correct. V7 has taken care of that.
thanks,
Yaniv
>> +out:
>> + return err;
>> +}
>> +
> --
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists