All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sylwester Nawrocki <s.nawrocki-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
To: hs-ynQEQJNshbs@public.gmane.org
Cc: davinci-linux-open-source-VycZQUHpC/PFrsHnngEfi1aTQe2KTcn/@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
	linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Ben Dooks <ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org>,
	Wolfram Sang <w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>,
	Grant Likely
	<grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>,
	Sekhar Nori <nsekhar-l0cyMroinI0@public.gmane.org>,
	Wolfgang Denk <wd-ynQEQJNshbs@public.gmane.org>
Subject: Re: [RFC PATCH 5/7] ARM: davinci: i2c: add OF support
Date: Tue, 24 Jan 2012 10:51:50 +0100	[thread overview]
Message-ID: <4F1E7F36.50505@samsung.com> (raw)
In-Reply-To: <4F1E5B44.4090200-ynQEQJNshbs@public.gmane.org>

Hello Heiko,

On 01/24/2012 08:18 AM, Heiko Schocher wrote:
>> On 01/23/2012 09:56 AM, Heiko Schocher wrote:
>>> add of support for the davinci i2c driver.
>>>
>>> Signed-off-by: Heiko Schocher<hs-ynQEQJNshbs@public.gmane.org>
>>> Cc: davinci-linux-open-source-VycZQUHpC/PFrsHnngEfi1aTQe2KTcn/@public.gmane.org
>>> Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
>>> Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org
>>> Cc: linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
>>> Cc: Ben Dooks<ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org>
>>> Cc: Wolfram Sang<w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
>>> Cc: Grant Likely<grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
>>> Cc: Sekhar Nori<nsekhar-l0cyMroinI0@public.gmane.org>
>>> Cc: Wolfgang Denk<wd-ynQEQJNshbs@public.gmane.org>
>>> ---
>>>   .../devicetree/bindings/arm/davinci/i2c.txt        |   39 ++++++++++++++++++
>>>   drivers/i2c/busses/i2c-davinci.c                   |   43 ++++++++++++++++++++
>>>   2 files changed, 82 insertions(+), 0 deletions(-)
>>>   create mode 100644 Documentation/devicetree/bindings/arm/davinci/i2c.txt
>>>
>>> diff --git a/Documentation/devicetree/bindings/arm/davinci/i2c.txt b/Documentation/devicetree/bindings/arm/davinci/i2c.txt
>>> new file mode 100644
>>> index 0000000..94ec670
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/arm/davinci/i2c.txt
>>> @@ -0,0 +1,39 @@
>>> +* Texas Instruments Davinci I2C
>>> +
>>> +This file provides information, what the device node for the
>>> +davinci i2c interface contain.
>>> +
>>> +Required properties:
>>> +- compatible: "ti,davinci-i2c";
>>> +- reg : Offset and length of the register set for the device
>>> +- id: id of the controller
>>
>> I was wondering whether we're supposed to use "cell-index" property name
>> for such a device instance index? or doesn't it really matter and "id" is 
>> fine? Such an IP instance index seems quite common so I thought it could
>> be easier to follow to use standard name.
> 
> I just copied the "name" from "struct davinci_nand_pdata" ... it is
> used in the davinci_nand driver as chipselect ... maybe it is better
> I rename this to "chipselect" ?

>From what I can see the 'id' property is used to determine I2C adapter
number. In that case 'id' seems more correct than "chipselect". Are you
sure there is a chip select functionality in I2C controller ?

It seems that your id is just an index of I2C controller in hardware.
I would personally just use cell-index for that, but I'm not a dt expert,
someone nay correct me.

For instance, this is how "cell-index" semantics is described in case
of MPC5200 Programmable Serial Controllers (from Documentation/devicetree/
bindings/powerpc/fsl/mpc5200.txt):

"fsl,mpc5200-psc nodes
---------------------
The PSCs should include a cell-index which is the index of the PSC in
hardware.  cell-index is used to determine which shared SoC registers to
use when setting up PSC clocking.  cell-index number starts at '0'.  ie:
        PSC1 has 'cell-index = <0>'
        PSC4 has 'cell-index = <3>'"

Moreover you seem to overwrite platform device name and id,

		if (!of_property_read_u32(pdev->dev.of_node, "id",
+			&prop)) {
+			pdev->id = prop;
+			pdev->dev.init_name = kzalloc(20, GFP_KERNEL);
+			sprintf((char *)pdev->dev.init_name,
+				"i2c_davinci.%d", pdev->id);

I'm not sure if it is a good practice. If you want to pre-define platform
device name (likely for the clock API to work), it might be more appropriate
to use OF_DEV_AUXDATA in the machine code, until there are clock bindings
available.
Then you would just use your 'id'/'cell-index' property to set an I2C adapter
number.

--
Regards,
Sylwester

WARNING: multiple messages have this Message-ID (diff)
From: s.nawrocki@samsung.com (Sylwester Nawrocki)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC PATCH 5/7] ARM: davinci: i2c: add OF support
Date: Tue, 24 Jan 2012 10:51:50 +0100	[thread overview]
Message-ID: <4F1E7F36.50505@samsung.com> (raw)
In-Reply-To: <4F1E5B44.4090200@denx.de>

Hello Heiko,

On 01/24/2012 08:18 AM, Heiko Schocher wrote:
>> On 01/23/2012 09:56 AM, Heiko Schocher wrote:
>>> add of support for the davinci i2c driver.
>>>
>>> Signed-off-by: Heiko Schocher<hs@denx.de>
>>> Cc: davinci-linux-open-source at linux.davincidsp.com
>>> Cc: linux-arm-kernel at lists.infradead.org
>>> Cc: devicetree-discuss at lists.ozlabs.org
>>> Cc: linux-i2c at vger.kernel.org
>>> Cc: Ben Dooks<ben-linux@fluff.org>
>>> Cc: Wolfram Sang<w.sang@pengutronix.de>
>>> Cc: Grant Likely<grant.likely@secretlab.ca>
>>> Cc: Sekhar Nori<nsekhar@ti.com>
>>> Cc: Wolfgang Denk<wd@denx.de>
>>> ---
>>>   .../devicetree/bindings/arm/davinci/i2c.txt        |   39 ++++++++++++++++++
>>>   drivers/i2c/busses/i2c-davinci.c                   |   43 ++++++++++++++++++++
>>>   2 files changed, 82 insertions(+), 0 deletions(-)
>>>   create mode 100644 Documentation/devicetree/bindings/arm/davinci/i2c.txt
>>>
>>> diff --git a/Documentation/devicetree/bindings/arm/davinci/i2c.txt b/Documentation/devicetree/bindings/arm/davinci/i2c.txt
>>> new file mode 100644
>>> index 0000000..94ec670
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/arm/davinci/i2c.txt
>>> @@ -0,0 +1,39 @@
>>> +* Texas Instruments Davinci I2C
>>> +
>>> +This file provides information, what the device node for the
>>> +davinci i2c interface contain.
>>> +
>>> +Required properties:
>>> +- compatible: "ti,davinci-i2c";
>>> +- reg : Offset and length of the register set for the device
>>> +- id: id of the controller
>>
>> I was wondering whether we're supposed to use "cell-index" property name
>> for such a device instance index? or doesn't it really matter and "id" is 
>> fine? Such an IP instance index seems quite common so I thought it could
>> be easier to follow to use standard name.
> 
> I just copied the "name" from "struct davinci_nand_pdata" ... it is
> used in the davinci_nand driver as chipselect ... maybe it is better
> I rename this to "chipselect" ?

>From what I can see the 'id' property is used to determine I2C adapter
number. In that case 'id' seems more correct than "chipselect". Are you
sure there is a chip select functionality in I2C controller ?

It seems that your id is just an index of I2C controller in hardware.
I would personally just use cell-index for that, but I'm not a dt expert,
someone nay correct me.

For instance, this is how "cell-index" semantics is described in case
of MPC5200 Programmable Serial Controllers (from Documentation/devicetree/
bindings/powerpc/fsl/mpc5200.txt):

"fsl,mpc5200-psc nodes
---------------------
The PSCs should include a cell-index which is the index of the PSC in
hardware.  cell-index is used to determine which shared SoC registers to
use when setting up PSC clocking.  cell-index number starts at '0'.  ie:
        PSC1 has 'cell-index = <0>'
        PSC4 has 'cell-index = <3>'"

Moreover you seem to overwrite platform device name and id,

		if (!of_property_read_u32(pdev->dev.of_node, "id",
+			&prop)) {
+			pdev->id = prop;
+			pdev->dev.init_name = kzalloc(20, GFP_KERNEL);
+			sprintf((char *)pdev->dev.init_name,
+				"i2c_davinci.%d", pdev->id);

I'm not sure if it is a good practice. If you want to pre-define platform
device name (likely for the clock API to work), it might be more appropriate
to use OF_DEV_AUXDATA in the machine code, until there are clock bindings
available.
Then you would just use your 'id'/'cell-index' property to set an I2C adapter
number.

--
Regards,
Sylwester

  parent reply	other threads:[~2012-01-24  9:51 UTC|newest]

Thread overview: 88+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-23  8:56 [RFC PATCH 0/7] ARM: davinci: add support for the am1808 based enbw_cmc board Heiko Schocher
2012-01-23  8:56 ` Heiko Schocher
2012-01-23  8:56 ` Heiko Schocher
     [not found] ` <1327308967-8092-1-git-send-email-hs-ynQEQJNshbs@public.gmane.org>
2012-01-23  8:56   ` [RFC PATCH 1/7] ARM: davinci, intc: Add OF support for TI interrupt controller Heiko Schocher
2012-01-23  8:56     ` Heiko Schocher
2012-02-02  4:54     ` Grant Likely
2012-02-02  4:54       ` Grant Likely
     [not found]       ` <20120202045459.GI15343-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2012-02-06  6:36         ` Heiko Schocher
2012-02-06  6:36           ` Heiko Schocher
     [not found]           ` <4F2F74DB.7010604-ynQEQJNshbs@public.gmane.org>
2012-02-14  7:15             ` Heiko Schocher
2012-02-14  7:15               ` Heiko Schocher
2012-01-23  8:56   ` [RFC PATCH 2/7 v2] ARM: davinci: configure davinci aemif chipselects through OF Heiko Schocher
2012-01-23  8:56     ` Heiko Schocher
2012-01-23  8:56   ` [RFC PATCH 3/7] ARM: davinci: mux: add OF support Heiko Schocher
2012-01-23  8:56     ` Heiko Schocher
2012-01-23  8:56   ` [RFC PATCH 5/7] ARM: davinci: i2c: " Heiko Schocher
2012-01-23  8:56     ` Heiko Schocher
     [not found]     ` <1327308967-8092-6-git-send-email-hs-ynQEQJNshbs@public.gmane.org>
2012-01-23 20:35       ` Sylwester Nawrocki
2012-01-23 20:35         ` Sylwester Nawrocki
     [not found]         ` <4F1DC480.4010603-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-01-24  7:18           ` Heiko Schocher
2012-01-24  7:18             ` Heiko Schocher
     [not found]             ` <4F1E5B44.4090200-ynQEQJNshbs@public.gmane.org>
2012-01-24  9:51               ` Sylwester Nawrocki [this message]
2012-01-24  9:51                 ` Sylwester Nawrocki
     [not found]                 ` <4F1E7F36.50505-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2012-01-30 20:13                   ` Grant Likely
2012-01-30 20:13                     ` Grant Likely
     [not found]                     ` <20120130201307.GV28397-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2012-01-31  7:31                       ` Heiko Schocher
2012-01-31  7:31                         ` Heiko Schocher
2012-02-05 20:44                       ` Sylwester Nawrocki
2012-02-05 20:44                         ` Sylwester Nawrocki
2012-01-30 20:04       ` Grant Likely
2012-01-30 20:04         ` Grant Likely
     [not found]         ` <20120130200436.GU28397-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2012-01-31  7:14           ` Heiko Schocher
2012-01-31  7:14             ` Heiko Schocher
2012-02-13 23:37       ` Ben Dooks
2012-02-13 23:37         ` Ben Dooks
     [not found]         ` <20120213233726.GK2999-RazCHl0VsYgkUSuvROHNpA@public.gmane.org>
2012-02-14  7:16           ` Heiko Schocher
2012-02-14  7:16             ` Heiko Schocher
2012-01-23  8:56   ` [RFC PATCH 6/7] ARM: mtd: nand: davinci: add OF support for davinci nand controller Heiko Schocher
2012-01-23  8:56     ` Heiko Schocher
2012-01-23  8:56     ` Heiko Schocher
     [not found]     ` <1327308967-8092-7-git-send-email-hs-ynQEQJNshbs@public.gmane.org>
2012-01-23 23:59       ` Scott Wood
2012-01-23 23:59         ` Scott Wood
2012-01-23 23:59         ` Scott Wood
     [not found]         ` <4F1DF465.60206-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2012-01-24  7:23           ` Heiko Schocher
2012-01-24  7:23             ` Heiko Schocher
2012-01-24  7:23             ` Heiko Schocher
     [not found]             ` <4F1E5C82.60108-ynQEQJNshbs@public.gmane.org>
2012-01-24 19:45               ` Scott Wood
2012-01-24 19:45                 ` Scott Wood
2012-01-24 19:45                 ` Scott Wood
     [not found]                 ` <4F1F0A3E.40805-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2012-01-25  7:09                   ` Heiko Schocher
2012-01-25  7:09                     ` Heiko Schocher
2012-01-25  7:09                     ` Heiko Schocher
     [not found]                     ` <4F1FAAAE.2060007-ynQEQJNshbs@public.gmane.org>
2012-01-26 20:33                       ` Scott Wood
2012-01-26 20:33                         ` Scott Wood
2012-01-26 20:33                         ` Scott Wood
     [not found]                         ` <4F21B8AC.40002-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2012-01-27  6:40                           ` Heiko Schocher
2012-01-27  6:40                             ` Heiko Schocher
2012-01-27  6:40                             ` Heiko Schocher
     [not found]                             ` <4F2246C0.6020905-ynQEQJNshbs@public.gmane.org>
2012-01-27 17:02                               ` Scott Wood
2012-01-27 17:02                                 ` Scott Wood
2012-01-27 17:02                                 ` Scott Wood
2012-01-23  8:56   ` [RFC PATCH 7/7] ARM: davinci: add support for the am1808 based enbw_cmc board Heiko Schocher
2012-01-23  8:56     ` Heiko Schocher
2012-01-23  8:56     ` Heiko Schocher
     [not found]     ` <1327308967-8092-8-git-send-email-hs-ynQEQJNshbs@public.gmane.org>
2012-01-30 20:32       ` Grant Likely
2012-01-30 20:32         ` Grant Likely
2012-01-30 20:32         ` Grant Likely
     [not found]         ` <20120130203252.GX28397-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2012-01-31 13:04           ` Heiko Schocher
2012-01-31 13:04             ` Heiko Schocher
2012-01-31 13:04             ` Heiko Schocher
     [not found]             ` <4F27E6E0.1050608-ynQEQJNshbs@public.gmane.org>
2012-02-01 10:20               ` Sergei Shtylyov
2012-02-01 10:20                 ` Sergei Shtylyov
2012-02-01 10:20                 ` Sergei Shtylyov
     [not found]                 ` <4F2911DD.6010405-Igf4POYTYCDQT0dZR+AlfA@public.gmane.org>
2012-02-02  0:17                   ` Grant Likely
2012-02-02  0:17                     ` Grant Likely
2012-02-02  0:17                     ` Grant Likely
2012-01-23  8:56 ` [RFC PATCH 4/7] ARM: davinci: net: davinci_emac: add OF support Heiko Schocher
2012-01-23  8:56   ` Heiko Schocher
2012-01-23 19:20   ` Anatoly Sivov
2012-01-23 19:20     ` Anatoly Sivov
2012-01-24  6:14     ` Heiko Schocher
2012-01-24  6:14       ` Heiko Schocher
2012-01-30 20:22   ` Grant Likely
2012-01-30 20:22     ` Grant Likely
2012-01-31 11:27     ` Heiko Schocher
2012-01-31 11:27       ` Heiko Schocher
     [not found]       ` <4F27D00F.4040807-ynQEQJNshbs@public.gmane.org>
2012-02-02  0:19         ` Grant Likely
2012-02-02  0:19           ` Grant Likely

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F1E7F36.50505@samsung.com \
    --to=s.nawrocki-sze3o3uu22jbdgjk7y7tuq@public.gmane.org \
    --cc=ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org \
    --cc=davinci-linux-open-source-VycZQUHpC/PFrsHnngEfi1aTQe2KTcn/@public.gmane.org \
    --cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
    --cc=grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org \
    --cc=hs-ynQEQJNshbs@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=nsekhar-l0cyMroinI0@public.gmane.org \
    --cc=w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
    --cc=wd-ynQEQJNshbs@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.