Re: [PATCH V1 0/3] scsi: ufs: Add a vops to configure VCC voltage level

nitirawa
2021-02-01T08:32:59Z

On 2021-01-31 19:32, Avri Altman wrote:
>>
>> 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

Hi Avri,
This vops change was done as per the below mail thread
discussion where it was decided to go with vops and
let vendors handle it, until specs provides more clarity.

https://www.spinics.net/lists/kernel/msg3754995.html

Regards,
Nitin