From: Valentine <valentine.barshak@cogentembedded.com>
To: Mark Rutland <mark.rutland@arm.com>
Cc: Simon Horman <horms@verge.net.au>,
"linux-sh@vger.kernel.org" <linux-sh@vger.kernel.org>,
"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
Magnus Damm <magnus.damm@gmail.com>, Tejun Heo <tj@kernel.org>,
Vladimir Barinov <vladimir.barinov@cogentembedded.com>,
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Guennadi Liakhovetski <g.liakhovetski@gmx.de>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>
Subject: Re: [PATCH] ata: sata_rcar: Add RCAR Gen2 SATA PHY support
Date: Fri, 11 Oct 2013 19:14:39 +0400 [thread overview]
Message-ID: <525815DF.4040707@cogentembedded.com> (raw)
In-Reply-To: <20131011144741.GA16477@e106331-lin.cambridge.arm.com>
On 10/11/2013 06:47 PM, Mark Rutland wrote:
> On Fri, Oct 11, 2013 at 11:54:52AM +0100, Valentine wrote:
>> On 10/11/2013 01:41 PM, Mark Rutland wrote:
>>> On Fri, Oct 11, 2013 at 02:00:35AM +0100, Simon Horman wrote:
>>>> [ CCed devicetree@vger.kernel.org as this involves DT compatibility strings ]
>>>
>>> Cheers!
>>>
>>
>> Hi Mark,
>>
>>>>
>>>> On Thu, Oct 10, 2013 at 11:08:03PM +0400, Valentine Barshak wrote:
>>>>> RCAR Gen2 SoC has a different phy which is not compatible with
>>>>> the older H1/M1 versions. This adds OF/platform device table
>>>>> and PHY initialization callbacks for H2/M2 (Gen2) SoC.
>>>
>>> Is the PHY combined with the rest of the controller, or are they
>>> logically separate components in the SoC? I note that the Calxeda
>>> Highbank SATA controller driver treats the phy and the controller as
>>> separate entities, and describes the way the two are attached (though
>>> the driver handles both). Would a similar approach work here?
>>>
>>
>> It seems to be described in the docs as a single entity with the rest of
>> the controller. The phy registers are in the same address space block.
>> We don't need to describe how the phy is attached to the SATA
>> controller. In the future we may need some phy-specific configuration in
>> the device tree. For example, to describe how clock generator is
>> connected to the controller. I think this could be done with optional
>> properties added to the SATA node if needed.
>
> As they're tightly coupled and share the same register block, I guess
> describing them together is ok. Is that clock example hypothetical, or
> something we _will_ need in future?
According to the manual there's some configuration possible,
though it's not verbosely described:
* SSCG (on/off)
* Clock connection (AC/DC)
* Termination Resistor (on/off)
AFAIU, this describes how the external clock generator is connected.
All available Gen2 boards use the same generator type and
the same "default" phy settings (SSCG off/DC/TR on).
It is possible set spread spectrum with a switch on the board (it is
disabled by default)
I don't know if we will need to change those settings in the future.
Probably this could be done as a separate patch if needed.
>
>>
>>> [...]
>>>
>>>>> +static struct of_device_id sata_rcar_match[] = {
>>>>> + {
>>>>> + .compatible = "renesas,rcar-sata",
>>>>> + .data = (void *)RCAR_SATA
>>>>> + },
>>>>> + {
>>>>> + .compatible = "renesas,sata-r8a7790",
>>>>> + .data = (void *)RCAR_GEN2_SATA
>>>>> + },
>>>>> + {
>>>>> + .compatible = "renesas,sata-r8a7791",
>>>>> + .data = (void *)RCAR_GEN2_SATA
>>>>> + },
>>>>> + {},
>>>
>>> These bindings will need documentation. A grep of any of these in
>>> mainline's Documentation/devicetree shows up nothing (not even the
>>> existing "renesas,rcar-sata" string used by the driver.
>>
>> Indeed.
>> Since we need to adjust rcar-sata bindings and add documentation for it,
>> which is not really related to Gen2 phy support, looks like it will be a
>> separate patch.
>
> If you're adding strings, there should be documentation. While it may be
> a separate patch, we should _not_ add compatible strings to the kernel
> without documentation. I'd like to see the documentation patch first.
Right. I meant that there should be a separate patch that adds
documentation for the already existing binding.
I think I'll make a couple of patches then:
* Adjust and document the existing bindings as Simon has suggested
* Add Gen2 support and document Ge2 bindings.
>
> Thanks,
> Mark.
>
Thanks,
Val.
WARNING: multiple messages have this Message-ID (diff)
From: Valentine <valentine.barshak@cogentembedded.com>
To: Mark Rutland <mark.rutland@arm.com>
Cc: Simon Horman <horms@verge.net.au>,
"linux-sh@vger.kernel.org" <linux-sh@vger.kernel.org>,
"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
Magnus Damm <magnus.damm@gmail.com>, Tejun Heo <tj@kernel.org>,
Vladimir Barinov <vladimir.barinov@cogentembedded.com>,
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Guennadi Liakhovetski <g.liakhovetski@gmx.de>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>
Subject: Re: [PATCH] ata: sata_rcar: Add RCAR Gen2 SATA PHY support
Date: Fri, 11 Oct 2013 15:14:39 +0000 [thread overview]
Message-ID: <525815DF.4040707@cogentembedded.com> (raw)
In-Reply-To: <20131011144741.GA16477@e106331-lin.cambridge.arm.com>
On 10/11/2013 06:47 PM, Mark Rutland wrote:
> On Fri, Oct 11, 2013 at 11:54:52AM +0100, Valentine wrote:
>> On 10/11/2013 01:41 PM, Mark Rutland wrote:
>>> On Fri, Oct 11, 2013 at 02:00:35AM +0100, Simon Horman wrote:
>>>> [ CCed devicetree@vger.kernel.org as this involves DT compatibility strings ]
>>>
>>> Cheers!
>>>
>>
>> Hi Mark,
>>
>>>>
>>>> On Thu, Oct 10, 2013 at 11:08:03PM +0400, Valentine Barshak wrote:
>>>>> RCAR Gen2 SoC has a different phy which is not compatible with
>>>>> the older H1/M1 versions. This adds OF/platform device table
>>>>> and PHY initialization callbacks for H2/M2 (Gen2) SoC.
>>>
>>> Is the PHY combined with the rest of the controller, or are they
>>> logically separate components in the SoC? I note that the Calxeda
>>> Highbank SATA controller driver treats the phy and the controller as
>>> separate entities, and describes the way the two are attached (though
>>> the driver handles both). Would a similar approach work here?
>>>
>>
>> It seems to be described in the docs as a single entity with the rest of
>> the controller. The phy registers are in the same address space block.
>> We don't need to describe how the phy is attached to the SATA
>> controller. In the future we may need some phy-specific configuration in
>> the device tree. For example, to describe how clock generator is
>> connected to the controller. I think this could be done with optional
>> properties added to the SATA node if needed.
>
> As they're tightly coupled and share the same register block, I guess
> describing them together is ok. Is that clock example hypothetical, or
> something we _will_ need in future?
According to the manual there's some configuration possible,
though it's not verbosely described:
* SSCG (on/off)
* Clock connection (AC/DC)
* Termination Resistor (on/off)
AFAIU, this describes how the external clock generator is connected.
All available Gen2 boards use the same generator type and
the same "default" phy settings (SSCG off/DC/TR on).
It is possible set spread spectrum with a switch on the board (it is
disabled by default)
I don't know if we will need to change those settings in the future.
Probably this could be done as a separate patch if needed.
>
>>
>>> [...]
>>>
>>>>> +static struct of_device_id sata_rcar_match[] = {
>>>>> + {
>>>>> + .compatible = "renesas,rcar-sata",
>>>>> + .data = (void *)RCAR_SATA
>>>>> + },
>>>>> + {
>>>>> + .compatible = "renesas,sata-r8a7790",
>>>>> + .data = (void *)RCAR_GEN2_SATA
>>>>> + },
>>>>> + {
>>>>> + .compatible = "renesas,sata-r8a7791",
>>>>> + .data = (void *)RCAR_GEN2_SATA
>>>>> + },
>>>>> + {},
>>>
>>> These bindings will need documentation. A grep of any of these in
>>> mainline's Documentation/devicetree shows up nothing (not even the
>>> existing "renesas,rcar-sata" string used by the driver.
>>
>> Indeed.
>> Since we need to adjust rcar-sata bindings and add documentation for it,
>> which is not really related to Gen2 phy support, looks like it will be a
>> separate patch.
>
> If you're adding strings, there should be documentation. While it may be
> a separate patch, we should _not_ add compatible strings to the kernel
> without documentation. I'd like to see the documentation patch first.
Right. I meant that there should be a separate patch that adds
documentation for the already existing binding.
I think I'll make a couple of patches then:
* Adjust and document the existing bindings as Simon has suggested
* Add Gen2 support and document Ge2 bindings.
>
> Thanks,
> Mark.
>
Thanks,
Val.
next prev parent reply other threads:[~2013-10-11 15:14 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-10 19:08 [PATCH] ata: sata_rcar: Add RCAR Gen2 SATA PHY support Valentine Barshak
2013-10-10 19:08 ` Valentine Barshak
2013-10-11 1:00 ` Simon Horman
2013-10-11 1:00 ` Simon Horman
2013-10-11 9:41 ` Mark Rutland
2013-10-11 9:41 ` Mark Rutland
2013-10-11 10:54 ` Valentine
2013-10-11 10:54 ` Valentine
2013-10-11 14:47 ` Mark Rutland
2013-10-11 14:47 ` Mark Rutland
2013-10-11 15:14 ` Valentine [this message]
2013-10-11 15:14 ` Valentine
2013-10-11 9:53 ` Valentine
2013-10-11 9:53 ` Valentine
2013-10-11 19:25 ` Sergei Shtylyov
2013-10-11 20:24 ` Sergei Shtylyov
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=525815DF.4040707@cogentembedded.com \
--to=valentine.barshak@cogentembedded.com \
--cc=devicetree@vger.kernel.org \
--cc=g.liakhovetski@gmx.de \
--cc=horms@verge.net.au \
--cc=kuninori.morimoto.gx@renesas.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=magnus.damm@gmail.com \
--cc=mark.rutland@arm.com \
--cc=tj@kernel.org \
--cc=vladimir.barinov@cogentembedded.com \
/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.