All of lore.kernel.org
 help / color / mirror / Atom feed
From: Murali Karicheri <m-karicheri2@ti.com>
To: Russell King - ARM Linux <linux@arm.linux.org.uk>,
	Rob Herring <robh+dt@kernel.org>
Cc: WingMan Kwok <w-kwok2@ti.com>, Pawel Moll <pawel.moll@arm.com>,
	Mark Rutland <mark.rutland@arm.com>,
	Ian Campbell <ijc+devicetree@hellion.org.uk>,
	Kumar Gala <galak@codeaurora.org>,
	Kishon Vijay Abraham I <kishon@ti.com>,
	Roger Quadros <rogerq@ti.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Santosh Shilimkar <ssantosh@kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v1 0/2] Common SerDes driver for TI's Keystone Platforms
Date: Fri, 16 Oct 2015 10:10:58 -0400	[thread overview]
Message-ID: <56210572.6020405@ti.com> (raw)
In-Reply-To: <20151016080222.GH32532@n2100.arm.linux.org.uk>

On 10/16/2015 04:02 AM, Russell King - ARM Linux wrote:
> On Thu, Oct 15, 2015 at 08:00:41PM -0500, Rob Herring wrote:
>> On Thu, Oct 15, 2015 at 11:51 AM, Russell King - ARM Linux
>> <linux@arm.linux.org.uk> wrote:
>>> On Thu, Oct 15, 2015 at 10:25:43AM -0400, WingMan Kwok wrote:
>>>> On TI's Keystone platforms, several peripherals such as the
>>>> gbe ethernet switch, 10gbe ethether switch and PCIe controller
>>>> require the use of a SerDes for converting SoC parallel data into
>>>> serialized data that can be output over a high-speed electrical
>>>> interface, and also converting high-speed serial input data
>>>> into parallel data that can be processed by the SoC.  The
>>>> SerDeses used by those peripherals, though they may be different,
>>>> are largely similar in functionality and setup.
>>>
>>> Given that serdes is not specific to TI, should this be specific to
>>> TI, or should there be an effort to come up with something which
>>> everyone who has serdes links can make use of?
>>>
Russell,

The serdes on K2 are re-used on multiple hardware blocks as already 
indicated in this thread. It has got multiple lanes, each lane can be 
enabled/disabled, shutdown etc. Isn't generic phy framework added to 
support this type of hardware block? I see some enhancements needed for 
K2 serdes to support monitoring the serdes link and providing a status 
to the higher layer device. So I am not clear what different way you 
would like to handle serdes drivers? Why do you need a new framework?

Murali
>>> Serdes comes in multiple different forms: PCIe, 1G SGMII ethernet,
>>> 1000base-X ethernet, 10g ethernet, SATA... I'd hate to see a
>>> plethora of SoC specific stuff for this.
>>
>> The licensed IP I've seen doesn't provide a standard register
>> interface, but just signals to the IP block. Same with PLL IP. So
>> we'll probably get to see vendors continue to differentiate on PHY
>> register design. :)
>
> So what?  Network drivers differ radically in register design, yet we
> still have a standardised interface to network drivers.
>


-- 
Murali Karicheri
Linux Kernel, Keystone

WARNING: multiple messages have this Message-ID (diff)
From: m-karicheri2@ti.com (Murali Karicheri)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v1 0/2] Common SerDes driver for TI's Keystone Platforms
Date: Fri, 16 Oct 2015 10:10:58 -0400	[thread overview]
Message-ID: <56210572.6020405@ti.com> (raw)
In-Reply-To: <20151016080222.GH32532@n2100.arm.linux.org.uk>

On 10/16/2015 04:02 AM, Russell King - ARM Linux wrote:
> On Thu, Oct 15, 2015 at 08:00:41PM -0500, Rob Herring wrote:
>> On Thu, Oct 15, 2015 at 11:51 AM, Russell King - ARM Linux
>> <linux@arm.linux.org.uk> wrote:
>>> On Thu, Oct 15, 2015 at 10:25:43AM -0400, WingMan Kwok wrote:
>>>> On TI's Keystone platforms, several peripherals such as the
>>>> gbe ethernet switch, 10gbe ethether switch and PCIe controller
>>>> require the use of a SerDes for converting SoC parallel data into
>>>> serialized data that can be output over a high-speed electrical
>>>> interface, and also converting high-speed serial input data
>>>> into parallel data that can be processed by the SoC.  The
>>>> SerDeses used by those peripherals, though they may be different,
>>>> are largely similar in functionality and setup.
>>>
>>> Given that serdes is not specific to TI, should this be specific to
>>> TI, or should there be an effort to come up with something which
>>> everyone who has serdes links can make use of?
>>>
Russell,

The serdes on K2 are re-used on multiple hardware blocks as already 
indicated in this thread. It has got multiple lanes, each lane can be 
enabled/disabled, shutdown etc. Isn't generic phy framework added to 
support this type of hardware block? I see some enhancements needed for 
K2 serdes to support monitoring the serdes link and providing a status 
to the higher layer device. So I am not clear what different way you 
would like to handle serdes drivers? Why do you need a new framework?

Murali
>>> Serdes comes in multiple different forms: PCIe, 1G SGMII ethernet,
>>> 1000base-X ethernet, 10g ethernet, SATA... I'd hate to see a
>>> plethora of SoC specific stuff for this.
>>
>> The licensed IP I've seen doesn't provide a standard register
>> interface, but just signals to the IP block. Same with PLL IP. So
>> we'll probably get to see vendors continue to differentiate on PHY
>> register design. :)
>
> So what?  Network drivers differ radically in register design, yet we
> still have a standardised interface to network drivers.
>


-- 
Murali Karicheri
Linux Kernel, Keystone

  reply	other threads:[~2015-10-16 14:11 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-15 14:25 [PATCH v1 0/2] Common SerDes driver for TI's Keystone Platforms WingMan Kwok
2015-10-15 14:25 ` WingMan Kwok
2015-10-15 14:25 ` WingMan Kwok
2015-10-15 14:25 ` [PATCH v1 1/2] phy: keystone: serdes driver for gbe 10gbe and pcie WingMan Kwok
2015-10-15 14:25   ` WingMan Kwok
2015-10-15 14:25   ` WingMan Kwok
2015-10-15 14:51   ` Arnd Bergmann
2015-10-15 14:51     ` Arnd Bergmann
2015-10-15 16:01     ` Murali Karicheri
2015-10-15 16:01       ` Murali Karicheri
2015-10-15 16:01       ` Murali Karicheri
2015-10-15 19:34       ` Arnd Bergmann
2015-10-15 19:34         ` Arnd Bergmann
2015-10-19 14:47         ` Kwok, WingMan
2015-10-19 14:47           ` Kwok, WingMan
2015-10-19 14:47           ` Kwok, WingMan
2015-10-19 14:47           ` Kwok, WingMan
2015-10-19 18:50           ` Murali Karicheri
2015-10-19 18:50             ` Murali Karicheri
2015-10-20  8:24             ` Arnd Bergmann
2015-10-20  8:24               ` Arnd Bergmann
2015-10-20  8:24               ` Arnd Bergmann
2015-10-20 15:11               ` Murali Karicheri
2015-10-20 15:11                 ` Murali Karicheri
2015-10-15 20:08     ` Kwok, WingMan
2015-10-15 20:08       ` Kwok, WingMan
2015-10-15 20:08       ` Kwok, WingMan
2015-10-15 20:08       ` Kwok, WingMan
2015-10-15 20:53       ` Arnd Bergmann
2015-10-15 20:53         ` Arnd Bergmann
2015-10-15 23:57         ` Kwok, WingMan
2015-10-15 23:57           ` Kwok, WingMan
2015-10-15 23:57           ` Kwok, WingMan
2015-10-15 23:57           ` Kwok, WingMan
2015-10-15 16:14   ` Rob Herring
2015-10-15 16:14     ` Rob Herring
2015-10-15 23:53     ` Kwok, WingMan
2015-10-15 23:53       ` Kwok, WingMan
2015-10-15 23:53       ` Kwok, WingMan
2015-10-15 23:53       ` Kwok, WingMan
2015-10-15 14:25 ` [PATCH v1 2/2] PCI: keystone: update to use generic keystone serdes driver WingMan Kwok
2015-10-15 14:25   ` WingMan Kwok
2015-10-15 14:25   ` WingMan Kwok
2015-10-15 16:51 ` [PATCH v1 0/2] Common SerDes driver for TI's Keystone Platforms Russell King - ARM Linux
2015-10-15 16:51   ` Russell King - ARM Linux
2015-10-15 16:51   ` Russell King - ARM Linux
2015-10-15 19:21   ` Kishon Vijay Abraham I
2015-10-15 19:21     ` Kishon Vijay Abraham I
2015-10-15 19:21     ` Kishon Vijay Abraham I
2015-10-16  0:02     ` Kwok, WingMan
2015-10-16  0:02       ` Kwok, WingMan
2015-10-16  0:02       ` Kwok, WingMan
2015-10-16  0:02       ` Kwok, WingMan
2015-10-16  1:00   ` Rob Herring
2015-10-16  1:00     ` Rob Herring
2015-10-16  1:00     ` Rob Herring
2015-10-16  8:02     ` Russell King - ARM Linux
2015-10-16  8:02       ` Russell King - ARM Linux
2015-10-16 14:10       ` Murali Karicheri [this message]
2015-10-16 14:10         ` Murali Karicheri
2015-10-16 14:14       ` Kishon Vijay Abraham I
2015-10-16 14:14         ` Kishon Vijay Abraham I
2015-10-16 14:14         ` Kishon Vijay Abraham I

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=56210572.6020405@ti.com \
    --to=m-karicheri2@ti.com \
    --cc=bhelgaas@google.com \
    --cc=devicetree@vger.kernel.org \
    --cc=galak@codeaurora.org \
    --cc=ijc+devicetree@hellion.org.uk \
    --cc=kishon@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=mark.rutland@arm.com \
    --cc=pawel.moll@arm.com \
    --cc=robh+dt@kernel.org \
    --cc=rogerq@ti.com \
    --cc=ssantosh@kernel.org \
    --cc=w-kwok2@ti.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.