[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <DM6PR04MB6575D0348161330D21A9B6C5FCB79@DM6PR04MB6575.namprd04.prod.outlook.com>
Date: Sun, 31 Jan 2021 14:02:12 +0000
From: Avri Altman <Avri.Altman@....com>
To: Nitin Rawat <nitirawa@...eaurora.org>,
"asutoshd@...eaurora.org" <asutoshd@...eaurora.org>,
"cang@...eaurora.org" <cang@...eaurora.org>,
"stummala@...eaurora.org" <stummala@...eaurora.org>,
"vbadigan@...eaurora.org" <vbadigan@...eaurora.org>,
"alim.akhtar@...sung.com" <alim.akhtar@...sung.com>,
"jejb@...ux.ibm.com" <jejb@...ux.ibm.com>,
"martin.petersen@...cle.com" <martin.petersen@...cle.com>,
"stanley.chu@...iatek.com" <stanley.chu@...iatek.com>,
"beanhuo@...ron.com" <beanhuo@...ron.com>
CC: "bvanassche@....org" <bvanassche@....org>,
"linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH V1 0/3] scsi: ufs: Add a vops to configure VCC voltage
level
>
> UFS specification allows different VCC configurations for UFS devices,
> for example,
> (1)2.70V - 3.60V (For UFS 2.x devices)
> (2)2.40V - 2.70V (For UFS 3.x devices)
> For platforms supporting both ufs 2.x (2.7v-3.6v) and
> ufs 3.x (2.4v-2.7v), the voltage requirements (VCC) is 2.4v-3.6v.
> So to support this, we need to start the ufs device initialization with
> the common VCC voltage(2.7v) and after reading the device descriptor we
> need to switch to the correct range(vcc min and vcc max) of VCC voltage
> as per UFS device type since 2.7v is the marginal voltage as per specs
> for both type of devices.
>
> Once VCC regulator supply has been intialised to 2.7v and UFS device
> type is read from device descriptor, we follows below steps to
> change the VCC voltage values.
>
> 1. Set the device to SLEEP state.
> 2. Disable the Vcc Regulator.
> 3. Set the vcc voltage according to the device type and reenable
> the regulator.
> 4. Set the device mode back to ACTIVE.
>
> The above changes are done in vendor specific file by
> adding a vops which will be needed for platform
> supporting both ufs 2.x and ufs 3.x devices.
The flow should be generic - isn't it?
Why do you need the entire flow to be vendor-specific?
Why not just the parameters vendor-specific?
Thanks,
Avri
Powered by blists - more mailing lists