Re: [PATCH v2 0/5] misc: Add Add Synopsys DesignWare xData IP driver

From: Arnd Bergmann
Date: Tue Nov 17 2020 - 10:11:40 EST


On Tue, Nov 17, 2020 at 3:53 PM Gustavo Pimentel
<Gustavo.Pimentel@xxxxxxxxxxxx> wrote:
> On Tue, Nov 17, 2020 at 14:4:49, Arnd Bergmann <arnd@xxxxxxxxxx> wrote:
> > On Fri, Nov 13, 2020 at 11:37 PM Gustavo Pimentel <Gustavo.Pimentel@xxxxxxxxxxxx> wrote:
> > >
> > > This patch series adds a new driver called xData-pcie for the Synopsys
> > > DesignWare PCIe prototype.
> > >
> > > The driver configures and enables the Synopsys DesignWare PCIe traffic
> > > generator IP inside of prototype Endpoint which will generate upstream
> > > and downstream PCIe traffic. This allows to quickly test the PCIe link
> > > throughput speed and check is the prototype solution has some limitation
> > > or not.
> >
> > I don't quite understand what this hardware is, based on your description.
> > Is this a specific piece of hardware that only serves as a traffic generator,
> > or a particular hardware feature of the DesignWare endpoint, or is it
> > software running on a SoC in endpoint mode while plugged into a Linux
> > system running this driver on the host?
>
> Firstly you have to have in mind that we are talking about an HW
> prototype based on FPGA. This PCIe Endpoint HW prototype from Synopsys
> might have multiple HW blocks inside (depends on the HW design), in this
> particular prototype case, it has an HW block is called xData (available
> internally to Synopsys only) which is a PCIe traffic generator, this
> block has no practical usage, unless for HW validation and testing new
> designs that push forward new PCIe speeds.

Ok, got it. Thanks for the explanation.

> > My feeling is that this should be located more closely to drivers/pci/,
> > but that depends on what it actually does.
>
> I thought to put on /misc because the purpose is very limited and doesn't
> fit in a normal case.

Makes sense. I usually try to ensure we don't add anything to drivers/misc
that could reasonably be grouped with related code elsewhere, but
I agree there isn't much that fits into this category today, so let's leave
it there unless someone comes up with a better idea.

The only alternative I could see would be drivers/pci/testing/

Arnd