lkml.org 
[lkml]   [2023]   [Oct]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH 01/11] iio: adc: Update bindings for ADC7 name used on QCOM PMICs
From
Hi Jonathan,

Sorry for the late reply, I could not get back earlier as I got occupied
with other work till now. I have addressed your comments inline.

On 7/8/2023 8:28 PM, Jonathan Cameron wrote:
> On Sat, 8 Jul 2023 12:58:25 +0530
> Jishnu Prakash <quic_jprakash@quicinc.com> wrote:
>
>> The name used initially for this version of Qualcomm Technologies, Inc.
>> PMIC ADC was ADC7, following the convention of calling the PMIC generation
>> PMIC7. However, the names were later amended internally to ADC5 Gen2 and
>> PMIC5 Gen2. In addition, the latest PMIC generation now is known as
>> PMIC5 Gen3 with ADC5 Gen3 supported on it. With this addition, it makes more
>> sense to correct the name for this version of ADCs to ADC5 Gen2 from ADC7.
>> Since this affects ADC devices across some PMICs, update the names accordingly.
>>
>> In order to avoid breaking the existing implementations of ADC7, add
>> support for ADC5 Gen2 first now and remove the ADC7 support in a later
>> patch.
>>
>> Signed-off-by: Jishnu Prakash <quic_jprakash@quicinc.com>
> Hi Jishnu.
>
> Whilst I can appreciate why you've picked this particular approach to
> deal with the renames I'm not sure it's the smoothest path - or the
> easiest to review.
>
> If doing a single patch for the complete rename was too much, perhaps
> doing one header (or if it makes sense set of headers)
> at a time would be easier to read? With a final patch doing the compatible
> addition. Maybe let's see what other reviewers think though.


I don't completely understand what you mean here - but first let me
briefly recap what I was trying to do here.

In patches 1-5 of this series, I intended to update all existing support
for ADC7 by renaming it to ADC5 Gen2 to match the correct name used
internally. In addition, since I am adding support for ADC5 Gen3 in
patches 6 and 7, I thought it would make sense to rename this older
peripheral, to make it more obvious to everyone that this version lies
between ADC5 and ADC5 Gen3.

The patches were organized like  this:

Patch 1 - Update documentation to add gen2 compatible and update
examples(without removing older compatible). Add new binding files
equivalent to existing ADC7 files, just with macros and file names
updated to use "adc5_gen2" instead of "adc7"

Patch 2 - Update driver files to replace usage of "adc7" with "adc5
gen2", adding new compatible for adc5 gen2 without removing exsiting one
for adc7.

Patch 3 - Update compatible, macros and binding files included in all
devicetree files, based on the earlier two changes.

Patch 4 - Delete all instances of adc7 compatible from documentation
files. Delete all older binding files

Patch 5 - Delete the adc7 compatible from the driver


Based on the comments I got, I understand I cannot proceed as such with
patches 4 and 5, I can amend/drop them. But to get back to your above
point about my overall approach, how exactly would you like me to
structure my patch series?

Should I make one big patch for documentation, bindings, driver and
devicetree changes where I update the naming and deprecate adc7 usage?
This may be straightforward but also hard to review.


Or a patch series like this:

One patch to update documentation

One patch to update the bindings (headers) (Or one patch per header file?)

One patch to update driver file (adding new compatible and comment to
deprecate old one)

One patch to update all devicetree files (or separate patches?)

Please let me know what you think.

> A few other comments inline,
>
> Jonathan
>
>
>>
>> properties:
>> @@ -27,6 +27,7 @@ properties:
>> - qcom,spmi-adc5
>> - qcom,spmi-adc-rev2
>> - qcom,spmi-adc7
>> + - qcom,spmi-adc5-gen2
> Alphabetical order (roughly given currently list). So I'd stick
> this after qcom,spmi-adc5


Will reorder them in the next patchset.


>>
>> reg:
>> description: VADC base address in the SPMI PMIC register map
>> @@ -71,7 +72,7 @@ patternProperties:
>> description: |
>> ADC channel number.
>> See include/dt-bindings/iio/qcom,spmi-vadc.h
>> - For PMIC7 ADC, the channel numbers are specified separately per PMIC
>> + For PMIC5 Gen2 ADC, the channel numbers are specified separately per PMIC
>> in the PMIC-specific files in include/dt-bindings/iio/.
>>
>> label:
>> @@ -114,7 +115,7 @@ patternProperties:
>> channel calibration. If property is not found, channel will be
>> calibrated with 0.625V and 1.25V reference channels, also
>> known as absolute calibration.
>> - - For compatible property "qcom,spmi-adc5", "qcom,spmi-adc7" and
>> + - For compatible property "qcom,spmi-adc5", "qcom,spmi-adc5-gen2" and
>> "qcom,spmi-adc-rev2", if this property is specified VADC will use
>> the VDD reference (1.875V) and GND for channel calibration. If
>> property is not found, channel will be calibrated with 0V and 1.25V
>> @@ -213,7 +214,9 @@ allOf:
>> properties:
>> compatible:
>> contains:
>> - const: qcom,spmi-adc7
>> + enum :
>> + - qcom,spmi-adc7
> There is a deprecated marking for dt-bindings. Might be good to use it here.


Thanks for your suggestion, I'll do this in the next patchset.


>
>> + - qcom,spmi-adc5-gen2
>>
>> then:

Thanks,

Jishnu

>>

\
 
 \ /
  Last update: 2023-10-23 08:06    [W:0.175 / U:0.200 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site