Received: by 2002:a05:6358:a55:b0:ec:fcf4:3ecf with SMTP id 21csp780440rwb; Thu, 19 Jan 2023 02:34:40 -0800 (PST) X-Google-Smtp-Source: AMrXdXujHkBzYJqyfzFoyLG3GX8Xhh+5dmml7UL/kBtjsEpAcd9BFUkOvCyhz1phtjPxoH2IaovZ X-Received: by 2002:a17:902:a3cc:b0:188:5e99:d84f with SMTP id q12-20020a170902a3cc00b001885e99d84fmr8960044plb.42.1674124479657; Thu, 19 Jan 2023 02:34:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674124479; cv=none; d=google.com; s=arc-20160816; b=kF13xR5XlA+Qb9VCpOgbooTvQFaE1FNk+CDU+Py96MPsUqv1BvmMlbK82/OOxmAMMn qFQDtkW9lTScpdqcfWzKD89oSRtv111gGyFdxmhC0pMGa01Di8/eBOWuiS9ALj1+GXCt kLEwwrECSxs9jcsk/nz84Cv3r7smjBnUylsT7uDmchiWlWgwk7K3RaG0NsJxL2o0Jzph IWOAy4h4C3Fc2iyPXNmdq6iMSKqYX0m0poV19Fyk51rQYvywnovTOMD+K13ujLxZf0mq RkfrggUgMSV8CTJ+IJFKI4Mp1Lw9oU8Oy5juwwau1J2qmGOkzf6s16NWaRey+htqSne2 SABw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id:dkim-signature; bh=9hqI6b+02S9xtB0cOPRffgNHPldpajtdTBy7bKJ9OZY=; b=D9EQHlOvHhnK/JaaHFrlCs2I/mkxFtCX1Yd6GCs+8DxZAwGjx+QHFLYRfYrH6nWNGA ayIwFecJjWDvX71+XgSV5RFzbwRaOlZ99V3uhW3gbjDZvwS+FZKXqswtWNerFA/y4q6X YHvtoRoG5gtgh1AygBJ3Rd6TnlOl09a644XursG0+Jkppqp5MvpBVlPHopSsU02b0vCB fStM/6dVy75h/3lm1PbJhcd+9zx92eI0oqduw4DpdSdOFvyboUffoT/yGfSsE7AkTsX5 7Rvl3QwQgh28EyhRKqji9vPZJWJt+SeUwzLViP0S4lllgAJzKZt8ncYMGabSUbSUk+Im ANTQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=jC2PNGu9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y16-20020a170902b49000b0019295a19dc8si14885361plr.468.2023.01.19.02.34.34; Thu, 19 Jan 2023 02:34:39 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=jC2PNGu9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230006AbjASKKL (ORCPT + 44 others); Thu, 19 Jan 2023 05:10:11 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44842 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230388AbjASKKE (ORCPT ); Thu, 19 Jan 2023 05:10:04 -0500 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A605066FB6; Thu, 19 Jan 2023 02:10:03 -0800 (PST) Received: from [192.168.1.15] (91-154-32-225.elisa-laajakaista.fi [91.154.32.225]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 1F4D77EC; Thu, 19 Jan 2023 11:10:00 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1674123001; bh=KeS3ZYlh0v1hgL0ubBbk0cm/I4qwuUYr/hTn/NPRngw=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=jC2PNGu9dua0vIbdOBh1G+iQ0MzFzcucrYoElYzktJUvYPo770BRKM3Lksy5LKOjn VD7dMrirvMpZTaCupD6iBWTPWYnFJNHpYg9uq7Tu/Il4GfJsywW4TgpFx9O9Lxc77P AG1sd5foL/PfPoZ1TR2hq7a15lL7LfdojcvU8YV0= Message-ID: Date: Thu, 19 Jan 2023 12:09:57 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Subject: Re: [PATCH v7 1/7] i2c: add I2C Address Translator (ATR) support Content-Language: en-US To: Luca Ceresoli , Andy Shevchenko Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-i2c@vger.kernel.org, Rob Herring , Krzysztof Kozlowski , Wolfram Sang , Matti Vaittinen , Laurent Pinchart , Mauro Carvalho Chehab , Peter Rosin , Liam Girdwood , Mark Brown , Sakari Ailus , Michael Tretter , Shawn Tu , Hans Verkuil , Mike Pagano , =?UTF-8?Q?Krzysztof_Ha=c5=82asa?= , Marek Vasut , Luca Ceresoli References: <20230118124031.788940-1-tomi.valkeinen@ideasonboard.com> <20230118124031.788940-2-tomi.valkeinen@ideasonboard.com> <20230118181753.7a325953@booty> <20230119092115.02cbbab3@booty> From: Tomi Valkeinen In-Reply-To: <20230119092115.02cbbab3@booty> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,SPF_HELO_PASS, SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 19/01/2023 10:21, Luca Ceresoli wrote: >>>>> +void i2c_atr_set_driver_data(struct i2c_atr *atr, void *data) >>>>> +{ >>>>> + atr->priv = data; >>>>> +} >>>>> +EXPORT_SYMBOL_NS_GPL(i2c_atr_set_driver_data, I2C_ATR); >>>>> + >>>>> +void *i2c_atr_get_driver_data(struct i2c_atr *atr) >>>>> +{ >>>>> + return atr->priv; >>>>> +} >>>>> +EXPORT_SYMBOL_NS_GPL(i2c_atr_get_driver_data, I2C_ATR); >>>> >>>> Just to be sure: Is it really _driver_ data and not _device instance_ data? >>> >>> It is device instance data indeed. I don't remember why this got >>> changed, but in v3 it was i2c_atr_set_clientdata(). >> >> It's me who was and is against calling it clientdata due to possible >> confusion with i2c_set/get_clientdata() that is about *driver data*. >> I missed that time the fact that this is about device instance data. >> I dunno which name would be better in this case, i2c_atr_set/get_client_priv() ? > > Not sure I'm following you here. The i2c_atr_set_clientdata() name was > given for similarity with i2c_set_clientdata(). The latter wraps > dev_set_drvdata(), which sets `struct device`->driver_data. There is > one driver_data per each `struct device` instance, not per each driver. > The same goes for i2c_atr_set_driver_data(): there is one priv pointer > per each `struct i2c_atr` instance. I'm a bit confused. What is "driver data" and what is "device instance data"? This deals with the driver's private data, where the "driver" is the owner/creator of the i2c-atr. The i2c-atr itself doesn't have a device (it's kind of part of the owner's device), and there's no driver in i2c-atr.c I don't like "client" here, as it reminds me of i2c_client (especially as we're in i2c context). What about i2c_atr_set_user_data()? Or "owner_data"? Tomi