Thread (33 messages) flat view 33 messages, 7 authors, 2013-08-26
STALE4727d

[PATCH v4 3/5] net: ethernet: cpsw: introduce ti,am3352-cpsw compatible string

From: Mugunthan V N <hidden>
Date: 2013-08-23 18:29:41
Also in: linux-omap, netdev

On Friday 23 August 2013 11:40 PM, Santosh Shilimkar wrote:
On Friday 23 August 2013 01:39 PM, Sekhar Nori wrote:
quoted
On 8/23/2013 10:58 PM, Santosh Shilimkar wrote:
quoted
On Friday 23 August 2013 01:24 PM, Daniel Mack wrote:
quoted
On 23.08.2013 19:19, Santosh Shilimkar wrote:
quoted
On Friday 23 August 2013 01:09 PM, Sekhar Nori wrote:
quoted
On 8/23/2013 10:26 PM, Santosh Shilimkar wrote:
quoted
So just stick the IP version or call it cpsw-v1... cpsw-v2 etc.
If this could be handled using IP version then the right way would be to
just read the IP version from hardware and use it. No need of DT property.
Thats fine as well but I thought the patch needed additional properties like
CM reg-address come from DT and hence the separate compatible. If you can
manage without that, thats even better.
We can't, that's the whole point :)
I saw that from the patch :)
quoted
Well, theoretically, we could for now, but that's not a clean solution.
Again: the problem here is that the control port is separated from the
cpsw core, and so we have to implement something specific for the AM3352
SoC. I know that's a violation of clean and generic driver ideas, but
there's no way we can assume that every cpsw v2 ip block has a control
port that is compatible to the one found on am335x chips.
But there is a possibility that other SOC will just use the same
control module approach. So using a revision IP is just fine. BTW,
But this is misleading because it makes appear like the same compatible
can be used on on another SoC like DRA7 which probably has the same
version of IP but a different control module implementation, when in
practice it cannot.

The fact is we are doing something SoC specific in the driver and we
cannot hide that behind IP versions. If really in practice there comes
another SoC with the same control module definition then it can always
use ti,am3352-cpsw compatible as well. The compatible name does not
preclude its usage.
My point was the CPSW needs a feature which is implemented using
control module rather than within the IP itself. Its an implementation
detail. As such the additional feature makes sense for that IP. O.w
there was no need to do any monkeying with control module.

E.g
MMC card detect is a basic functionality, implemented by various types
like control module, PMIC or MMC IP itself. As such the driver need
that support and all the implementation details needs to still handled
to make that part work.
CPSW core as such understands only GMII/MII signals, there is an
additional module which converts GMII/MII signals to RGMII/RMII signals
respectively which is called as CPRGMII/CPRMII as specified in the
AM335x TRM in Figure 14-1. Ethernet Switch Integration.

So to control this sub-module, the control register is used and this has
to be configured according to the EVM design like what mode of phy is
connected. CPRGMII and CPRMII is no way related to CPSW core.

Regards
Mugunthan V N
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help