Re: [PATCH v0 02/14] drm/amdgpu,drm/radeon: Make I2C terminology more inclusive

Jani Nikula
2024-04-03T13:12:38Z

On Wed, 03 Apr 2024, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Fri, Mar 29, 2024 at 06:38:10PM +0100, Andi Shyti wrote:
>> Hi,
>>
>> On Fri, Mar 29, 2024 at 10:28:14AM -0700, Easwar Hariharan wrote:
>> > On 3/29/2024 10:16 AM, Andi Shyti wrote:
>> > > Hi Easwar,
>> > >
>> > > On Fri, Mar 29, 2024 at 05:00:26PM +0000, Easwar Hariharan wrote:
>> > >> I2C v7, SMBus 3.2, and I3C specifications have replaced "master/slave"
>> > >
>> > > I don't understand why we forget that i3c is 1.1.1 :-)
>> >
>> > That's because it's a copy-paste error from Wolfram's cover letter. :) I'll update
>> > next go-around.
>>
>> not a binding comment, though. Just for completeness, because we
>> are giving the version to the i2c and smbus, but not i3c.
>>
>> > >> with more appropriate terms. Inspired by and following on to Wolfram's
>> > >> series to fix drivers/i2c/[1], fix the terminology for users of
>> > >> I2C_ALGOBIT bitbanging interface, now that the approved verbiage exists
>> > >> in the specification.
>> > >
>> > > The specification talks about:
>> > >
>> > > - master -> controller
>> > > - slave -> target (and not client)
>> > >
>> > > But both you and Wolfram have used client. I'd like to reach
>> > > some more consistency here.
>> >
>> > I had the impression that remote targets (i.e external to the device) were to be called clients,
>> > e.g. the QSFP FRUs in drivers/infiniband, and internal ones targets.
>> > I chose the terminology according to that understanding, but now I can't find where I got that
>> > information.
>>
>> The word "client" does not even appear in the documentation (only
>> one instance in the i3c document), so that the change is not
>> related to the document as stated in the commit log. Unless, of
>> course, I am missing something.
>>
>> I'm OK with choosing a "customized" naming, but we need to reach
>> an agreement.
>>
>> I raised the same question to Wolfram.
>
> I don't know where that discussion happened, but my opinion
> is NAK to "client". Life is already confusing enough with
> these renames, so let's not make it even more confusing by
> inventing new names nowhere to be found in the spec.
>
> And let's especially not invent names that don't even fit
> the purpose. "Client" makes me think of "client/server" or
> some real world analogy. Neither of which seem to have any
> resemblence to how the term would be used for i2c.

Agreed.

I2C 7.0, I3C 1.1.1, and SMBus 3.2 have all switched to controller/target
terminology. The SMBus spec has additionally converted generic host
references to controller.

At least for i915 where I have some say in the matter, controller/target
it shall be.

BR,
Jani.

--
Jani Nikula, Intel