From: Tobias Waldekranz <tobias@waldekranz.com>
To: Vladimir Oltean <olteanv@gmail.com>
Cc: davem@davemloft.net, kuba@kernel.org, andrew@lunn.ch,
vivien.didelot@gmail.com, f.fainelli@gmail.com,
netdev@vger.kernel.org
Subject: Re: [PATCH net-next] net: dsa: mv88e6xxx: Allow dynamic reconfiguration of tag protocol
Date: Wed, 24 Mar 2021 14:01:14 +0100 [thread overview]
Message-ID: <87sg4kln8l.fsf@waldekranz.com> (raw)
In-Reply-To: <20210324113403.gtxcdtnsvqriyn26@skbuf>
On Wed, Mar 24, 2021 at 13:34, Vladimir Oltean <olteanv@gmail.com> wrote:
> On Wed, Mar 24, 2021 at 11:52:49AM +0100, Tobias Waldekranz wrote:
>> >> This is the tragedy: I know for a fact that a DSA soft parser exists,
>> >> but because of the aforementioned maze of NDAs and license agreements
>> >> we, the community, cannot have nice things.
>> >
>> > Oh yeah? You can even create your own, if you have nerves of steel and a
>> > thick enough skin to learn to use the "fmc" (Frame Manager Configuration
>> > Tool) program, which is fully open source if you search for it on CAF
>> > (and if you can actually make something out of the source code).
>>
>> Yes, this is what a colleague of mine has done. Which is how I know that
>> one exists :)
>>
>> > And this PDF (hidden so well behind the maze of NDAs, that I just had to
>> > google for it, and you don't even need to register to read it):
>> > https://www.nxp.com/docs/en/user-guide/LSDKUG_Rev20.12.pdf
>> > is chock full of information on what you can do with it, see chapters 8.2.5 and 8.2.6.
>>
>> Right, but this is where it ends. Using the wealth of information you
>> have laid out so far you can use DPAA to do amazing things using open
>> components.
>>
>> ...unless you have to do something so incredibly advanced and exotic as
>> a masked update of a field. At this point you have two options:
>>
>> 1. Buy the firmware toolchain, which requires signing an NDA.
>> 2. Buy a single-drop firmware binary for lots of $$$ without any
>> possibility of getting further updates because "you should really be
>> using DPAA2".
>
> Uhm, what?
> By "firmware" I assume you mean "FMan microcode"?
>
> To my knowledge, the standard FMan microcode distributed _freely_ with
> the LSDK has support for Header Manipulation, you just need to create a
> Header Manipulation Command Descriptor (HMCD) and pass it to the
> microcode through an O/H port. I believe that:
> (a) the Header Manipulation descriptors allow you to perform raw mask
> based field updates too, not just for standard protocols
This is not the story we were told.
> (b) fmc already has some support for sending Header Manipulation
> descriptors to the microcode
>
> And by "firmware toolchain" you mean the FMan microcode SDK?
> https://www.nxp.com/design/software/embedded-software/linux-software-and-development-tools/dpaa-fman-microcode-sdk-source-code-software-kit:DPAA-FMAN-SDK
>
> In the description for that product it says:
>
> For MOST of NXP communications customers, the microcode that is freely
> accessible via the NXP LSDK or SDK for QorIQ or Layerscape processors
> will handle any communications offload task you could throw at the DPAA.
>
> So why on earth would you need that? And does it really surprise you
Because NXP said we needed it.
> that it costs money, especially considering the fact that you're going
> to need heaps of support for it anyway?
No, it surprised me that we had to pay for a solution to a problem that
we were promised would be solvable using the stock firmware.
> Seriously, what is your point? You're complaining about having the
> option to write your own microcode for the RISC cores inside the network
> controller, when the standard one already comes with a lot of features?
> What would you prefer, not having that option?
>
> This is a strawman. None of the features we talked about in this thread,
> soft parser for DSA tags or masked header manipulation, should require
> custom microcode.
I never made that claim. I was describing our experience with DPAA on
the whole.
next prev parent reply other threads:[~2021-03-24 13:02 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-23 10:23 [PATCH net-next] net: dsa: mv88e6xxx: Allow dynamic reconfiguration of tag protocol Tobias Waldekranz
2021-03-23 11:35 ` Vladimir Oltean
2021-03-23 12:32 ` Andrew Lunn
2021-03-23 14:48 ` Tobias Waldekranz
2021-03-23 16:30 ` Florian Fainelli
2021-03-23 19:03 ` Vladimir Oltean
2021-03-23 21:17 ` Tobias Waldekranz
2021-03-23 23:15 ` Vladimir Oltean
2021-03-24 10:52 ` Tobias Waldekranz
2021-03-24 11:34 ` Vladimir Oltean
2021-03-24 13:01 ` Tobias Waldekranz [this message]
2021-03-24 13:24 ` Vladimir Oltean
2021-03-24 14:03 ` Vladimir Oltean
2021-03-24 14:10 ` Vladimir Oltean
2021-03-24 15:02 ` Tobias Waldekranz
2021-03-24 15:08 ` Vladimir Oltean
2021-03-24 16:07 ` Tobias Waldekranz
2021-03-25 1:34 ` Vladimir Oltean
2021-03-25 8:04 ` Tobias Waldekranz
2021-03-23 12:41 ` Andrew Lunn
2021-03-23 14:49 ` Tobias Waldekranz
2021-03-23 16:53 ` Florian Fainelli
2021-03-23 20:50 ` Tobias Waldekranz
2021-03-24 0:44 ` Andrew Lunn
2021-03-24 12:53 ` Tobias Waldekranz
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=87sg4kln8l.fsf@waldekranz.com \
--to=tobias@waldekranz.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=f.fainelli@gmail.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=olteanv@gmail.com \
--cc=vivien.didelot@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).