From: ulli.kroll@googlemail.com (Hans Ulli Kroll)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 00/22] Conversion of ARMv4 Gemini to DT and multiplatform
Date: Mon, 13 Feb 2017 10:20:32 +0100 (CET) [thread overview]
Message-ID: <alpine.LNX.2.00.1702131013210.25980@T420s> (raw)
In-Reply-To: <FC5B4F97116B48439B455474D032A2F1087BAD65@FTCPCS74.faraday.com.tw>
Hi John,
On Mon, 13 Feb 2017, John Feng-Hsin Chiang(???) wrote:
> Hi Hans,
>
> > HI Linus,
> >
> > On Sat, 11 Feb 2017, Linus Walleij wrote:
> >
> > > On Mon, Jan 30, 2017 at 5:35 PM, Hans Ulli Kroll
> > > <ulli.kroll@googlemail.com> wrote:
> > > > On Tue, 24 Jan 2017, Florian Fainelli wrote:
> > > >> On 01/24/2017 12:47 PM, Linus Walleij wrote:
> > >
> > > >> >> This is a dual GMAC !
> > > >> >>
> > > >> >> They are two different base address for each GMAC and one shared
> > > >> >> base address for both of them.
> > > >> >> This is all in one address space which remaps the driver.
> > > >> >>
> > > >> >> And to make it worse two interrupt lines, one of them is also shared.
> > > >> >>
> > > >> >> Any ideas to "convert" this into DT ??
> > > >> >> Because I think it's impossible to split both GMAC interfaces ??
> > > >> >
> > > >> > Sounds odd. Yeah hardware.h lists this:
> > > >> >
> > > >> > #define GEMINI_TOE_BASE 0x60000000
> > > >> > #define GEMINI_GMAC0_BASE 0x6000A000
> > > >> > #define GEMINI_GMAC1_BASE 0x6000E000
> > > >> >
> > > >> > I guess one approach is to make a driver handling all of it in
> > > >> > one, let it ioremap all regions and support one or two GMACs on
> > > >> > the same TOE. More complex solutions is to share the TOE using
> > > >> > syscons regmap mechanism but it looks cumbersome.
> > > >> >
> > > >> > {
> > > >> > compatible = "cortina,genesis-gmac-ethernet";
> > > >> > reg = <0x60000000 0xa000>, <0x6000a000 0x4000>,> <0x6000e000 0x4000>;
> > > >> > interrupts = <1 IRQ_TYPE_LEVEL_HIGH>, <2> IRQ_TYPE_LEVEL_HIGH>;
> > > >> > }
> > > >> >
> > > >> > Or something like that?
> > > >
> > > > For addresses, base is here, for both interfaces
> > > > #define GEMINI_TOE_BASE 0x60000000
> > > > and now for each interface, offset to the above code is from the
> > > > headerfile of the openwrt driver.
> > > > #define TOE_GMAC_DMA_BASE(x) (0x8000 + 0x4000 * (x))
> > > > #define TOE_GMAC_BASE(x) (0xA000 + 0x4000 * (x))
> > > >
> > > > maybe some other registers to
> > > > #define TOE_NONTOE_QUE_HDR_BASE 0x2000
> > > > #define TOE_TOE_QUE_HDR_BASE 0x3000
> > > > #define TOE_V_BIT_BASE 0x4000
> > > > #define TOE_A_BIT_BASE 0x6000
> > > >
> > > > AFAICR
> > > > The TOE part was "invented" for the gigabit interface.
> > > > They need to speed up the NIC because without TCP offloading you
> > > > will get only fast ethernet speed on a gigabit NIC.
> > >
> > > I was suspecting that this ethernet is related to the Faraday ethernet
> > > driver that was merged in drivers/net/ethernet/faraday since so many
> > > other Gemini parts seems to be coming essentially directly from Faraday.
>
> 1. Faraday have no TOE design in GMAC, and the GMAC in Gemini is very old one (licensed to Storlink about 13 years ago)
> 2. Storlink may modify the GMC design and add TOE function in it to fit their SoC.
>
Yeah, this was also my idea.
Storlink need to speed up their GMAC NIC, so they do some tricks here.
> > >
> > > I looked through the header files etc there but the registers seem
> > > quite different ... :/
> > >
> > > Still it is using the same "GMAC" naming and I strongly suspect this
> > > is an older Faraday IP that should go into the same driver folder.
>
> Yes, This is not the same one as Faraday's.
>
> > >
> > > Cc:ing some Faraday and Andestech emails to see if we can get some
> > > clarity in this. It would be nice if someone could atleast say "oh
> > > it's this IP FTxxx from Faraday" so we know what to name it.
> > >
>
> You should think this IP is from Storlink
>
I'll do. Thanks for the hint here, John.
Greetings
Hans Ulli Kroll
next prev parent reply other threads:[~2017-02-13 9:20 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-22 12:15 [PATCH 00/22] Conversion of ARMv4 Gemini to DT and multiplatform Linus Walleij
2017-01-22 18:42 ` Florian Fainelli
2017-01-22 22:44 ` Linus Walleij
2017-01-24 17:24 ` Hans Ulli Kroll
2017-01-24 20:47 ` Linus Walleij
2017-01-24 20:49 ` Florian Fainelli
2017-01-30 16:35 ` Hans Ulli Kroll
2017-02-11 13:20 ` Linus Walleij
2017-02-11 17:57 ` Hans Ulli Kroll
2017-02-13 3:22 ` John Feng-Hsin Chiang(江峰興)
2017-02-13 9:20 ` Hans Ulli Kroll [this message]
2017-02-08 13:13 ` Hans Ulli Kroll
2017-02-10 12:26 ` Linus Walleij
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=alpine.LNX.2.00.1702131013210.25980@T420s \
--to=ulli.kroll@googlemail.com \
--cc=linux-arm-kernel@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox