diff mbox series

[v2,2/2] Documentation: fpga: dfl: Add description for DFL UIO support

Message ID 1607916981-14782-3-git-send-email-yilun.xu@intel.com (mailing list archive)
State Superseded, archived
Headers show
Series UIO support for dfl devices | expand

Commit Message

Xu Yilun Dec. 14, 2020, 3:36 a.m. UTC
This patch adds description for UIO support for dfl devices on DFL
bus.

Signed-off-by: Xu Yilun <yilun.xu@intel.com>
---
v2: no doc in v1, add it for v2.
---
 Documentation/fpga/dfl.rst | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

Comments

Tom Rix Dec. 14, 2020, 10:14 p.m. UTC | #1
On 12/13/20 7:36 PM, Xu Yilun wrote:
> This patch adds description for UIO support for dfl devices on DFL
> bus.
>
> Signed-off-by: Xu Yilun <yilun.xu@intel.com>
> ---
> v2: no doc in v1, add it for v2.
> ---
>  Documentation/fpga/dfl.rst | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)
Should add your self in the authors list.
>
> diff --git a/Documentation/fpga/dfl.rst b/Documentation/fpga/dfl.rst
> index 0404fe6..a15e81e 100644
> --- a/Documentation/fpga/dfl.rst
> +++ b/Documentation/fpga/dfl.rst
> @@ -502,6 +502,29 @@ FME Partial Reconfiguration Sub Feature driver (see drivers/fpga/dfl-fme-pr.c)
>  could be a reference.
>  
>  
> +UIO support for DFL devices
> +===========================
> +The FPGA is open for users to be reprogramed with newly developed hardware

The purpose of an FPGA is to be reprogrammed with newly developed hardware

components.  New hardware can

> +components. They could instantiate a new private feature in the DFL, and then
> +get a DFL device in their system. In some cases users may need a userspace
> +driver for the DFL device:
> +
> +* Users may need to run some diagnostic test for their hardwares.
* Users may prototype the kernel driver in user space.
> +* Some hardware is designed for specific purposes and does not fit into one of
> +  the standard kernel subsystems.
> +
> +This requires the direct access to the MMIO space and interrupt handling in
> +userspace. We implemented a dfl-uio-pdev module which exposes the UIO device
The dfl-uio-pdev module exposes
> +interfaces. It adds the uio_pdrv_genirq platform device with the resources of
> +the DFL device, and let the generic UIO platform device driver provide UIO
the DLF device, and lets
> +support to userspace.
Use FPGA_DFL_UIO_PDEV to enable this feature.
> +
> +The DFL UIO driver has a special matching algorithem. It will match any DFL
> +device which could not be handled by other DFL drivers. In this way, it will
> +not impact the functionality of the features which are already supported by the
> +system.
(not sure if this section is needed)

> +
> +
>  Open discussion
>  ===============
>  FME driver exports one ioctl (DFL_FPGA_FME_PORT_PR) for partial reconfiguration
Xu Yilun Dec. 15, 2020, 2:22 a.m. UTC | #2
On Mon, Dec 14, 2020 at 02:14:56PM -0800, Tom Rix wrote:
> 
> On 12/13/20 7:36 PM, Xu Yilun wrote:
> > This patch adds description for UIO support for dfl devices on DFL
> > bus.
> >
> > Signed-off-by: Xu Yilun <yilun.xu@intel.com>
> > ---
> > v2: no doc in v1, add it for v2.
> > ---
> >  Documentation/fpga/dfl.rst | 23 +++++++++++++++++++++++
> >  1 file changed, 23 insertions(+)
> Should add your self in the authors list.

OK.

> >
> > diff --git a/Documentation/fpga/dfl.rst b/Documentation/fpga/dfl.rst
> > index 0404fe6..a15e81e 100644
> > --- a/Documentation/fpga/dfl.rst
> > +++ b/Documentation/fpga/dfl.rst
> > @@ -502,6 +502,29 @@ FME Partial Reconfiguration Sub Feature driver (see drivers/fpga/dfl-fme-pr.c)
> >  could be a reference.
> >  
> >  
> > +UIO support for DFL devices
> > +===========================
> > +The FPGA is open for users to be reprogramed with newly developed hardware
> 
> The purpose of an FPGA is to be reprogrammed with newly developed hardware
> 
> components.  New hardware can

Will change it.

> 
> > +components. They could instantiate a new private feature in the DFL, and then
> > +get a DFL device in their system. In some cases users may need a userspace
> > +driver for the DFL device:
> > +
> > +* Users may need to run some diagnostic test for their hardwares.
> * Users may prototype the kernel driver in user space.

Could we just add the line rather than replacing the previous line? I think this
comment is describing a different usecase.

> > +* Some hardware is designed for specific purposes and does not fit into one of
> > +  the standard kernel subsystems.
> > +
> > +This requires the direct access to the MMIO space and interrupt handling in
> > +userspace. We implemented a dfl-uio-pdev module which exposes the UIO device
> The dfl-uio-pdev module exposes

Will change it.

> > +interfaces. It adds the uio_pdrv_genirq platform device with the resources of
> > +the DFL device, and let the generic UIO platform device driver provide UIO
> the DLF device, and lets

Will change it.

> > +support to userspace.
> Use FPGA_DFL_UIO_PDEV to enable this feature.

I didn't get your idea for this.

> > +
> > +The DFL UIO driver has a special matching algorithem. It will match any DFL
> > +device which could not be handled by other DFL drivers. In this way, it will
> > +not impact the functionality of the features which are already supported by the
> > +system.
> (not sure if this section is needed)

I think we may keep it.

Thanks,
Yilun
Tom Rix Dec. 15, 2020, 4:43 a.m. UTC | #3
On 12/14/20 6:22 PM, Xu Yilun wrote:
> On Mon, Dec 14, 2020 at 02:14:56PM -0800, Tom Rix wrote:
>> On 12/13/20 7:36 PM, Xu Yilun wrote:
>>> This patch adds description for UIO support for dfl devices on DFL
>>> bus.
>>>
>>> Signed-off-by: Xu Yilun <yilun.xu@intel.com>
>>> ---
>>> v2: no doc in v1, add it for v2.
>>> ---
>>
>>> +components. They could instantiate a new private feature in the DFL, and then
>>> +get a DFL device in their system. In some cases users may need a userspace
>>> +driver for the DFL device:
>>> +
>>> +* Users may need to run some diagnostic test for their hardwares.
>> * Users may prototype the kernel driver in user space.
> Could we just add the line rather than replacing the previous line? I think this
> comment is describing a different usecase.

Yes, this is what i ment, please use your original.

I am offering another usecase, one I will use.

Add mine as well, if you want.

>
>>> +* Some hardware is designed for specific purposes and does not fit into one of
>>> +  the standard kernel subsystems.
>>> +
>>> +This requires the direct access to the MMIO space and interrupt handling in
>>> +userspace. We implemented a dfl-uio-pdev module which exposes the UIO device
>> The dfl-uio-pdev module exposes
> Will change it.
>
>>> +interfaces. It adds the uio_pdrv_genirq platform device with the resources of
>>> +the DFL device, and let the generic UIO platform device driver provide UIO
>> the DLF device, and lets
> Will change it.
>
>>> +support to userspace.
>> Use FPGA_DFL_UIO_PDEV to enable this feature.
> I didn't get your idea for this.

I wanted the user to know which kconfig controls this feature.

Leave it out if you don't think it fits.

>
>>> +
>>> +The DFL UIO driver has a special matching algorithem. It will match any DFL
>>> +device which could not be handled by other DFL drivers. In this way, it will
>>> +not impact the functionality of the features which are already supported by the
>>> +system.
>> (not sure if this section is needed)
> I think we may keep it.

Ok.

Tom

>
> Thanks,
> Yilun
>
Xu Yilun Dec. 15, 2020, 5:15 a.m. UTC | #4
On Mon, Dec 14, 2020 at 08:43:31PM -0800, Tom Rix wrote:
> 
> On 12/14/20 6:22 PM, Xu Yilun wrote:
> > On Mon, Dec 14, 2020 at 02:14:56PM -0800, Tom Rix wrote:
> >> On 12/13/20 7:36 PM, Xu Yilun wrote:
> >>> This patch adds description for UIO support for dfl devices on DFL
> >>> bus.
> >>>
> >>> Signed-off-by: Xu Yilun <yilun.xu@intel.com>
> >>> ---
> >>> v2: no doc in v1, add it for v2.
> >>> ---
> >>
> >>> +components. They could instantiate a new private feature in the DFL, and then
> >>> +get a DFL device in their system. In some cases users may need a userspace
> >>> +driver for the DFL device:
> >>> +
> >>> +* Users may need to run some diagnostic test for their hardwares.
> >> * Users may prototype the kernel driver in user space.
> > Could we just add the line rather than replacing the previous line? I think this
> > comment is describing a different usecase.
> 
> Yes, this is what i ment, please use your original.
> 
> I am offering another usecase, one I will use.
> 
> Add mine as well, if you want.

I'll add your usecase.

> 
> >
> >>> +* Some hardware is designed for specific purposes and does not fit into one of
> >>> +  the standard kernel subsystems.
> >>> +
> >>> +This requires the direct access to the MMIO space and interrupt handling in
> >>> +userspace. We implemented a dfl-uio-pdev module which exposes the UIO device
> >> The dfl-uio-pdev module exposes
> > Will change it.
> >
> >>> +interfaces. It adds the uio_pdrv_genirq platform device with the resources of
> >>> +the DFL device, and let the generic UIO platform device driver provide UIO
> >> the DLF device, and lets
> > Will change it.
> >
> >>> +support to userspace.
> >> Use FPGA_DFL_UIO_PDEV to enable this feature.
> > I didn't get your idea for this.
> 
> I wanted the user to know which kconfig controls this feature.

Understood. I'll add it.

Thanks,
Yilun
diff mbox series

Patch

diff --git a/Documentation/fpga/dfl.rst b/Documentation/fpga/dfl.rst
index 0404fe6..a15e81e 100644
--- a/Documentation/fpga/dfl.rst
+++ b/Documentation/fpga/dfl.rst
@@ -502,6 +502,29 @@  FME Partial Reconfiguration Sub Feature driver (see drivers/fpga/dfl-fme-pr.c)
 could be a reference.
 
 
+UIO support for DFL devices
+===========================
+The FPGA is open for users to be reprogramed with newly developed hardware
+components. They could instantiate a new private feature in the DFL, and then
+get a DFL device in their system. In some cases users may need a userspace
+driver for the DFL device:
+
+* Users may need to run some diagnostic test for their hardwares.
+* Some hardware is designed for specific purposes and does not fit into one of
+  the standard kernel subsystems.
+
+This requires the direct access to the MMIO space and interrupt handling in
+userspace. We implemented a dfl-uio-pdev module which exposes the UIO device
+interfaces. It adds the uio_pdrv_genirq platform device with the resources of
+the DFL device, and let the generic UIO platform device driver provide UIO
+support to userspace.
+
+The DFL UIO driver has a special matching algorithem. It will match any DFL
+device which could not be handled by other DFL drivers. In this way, it will
+not impact the functionality of the features which are already supported by the
+system.
+
+
 Open discussion
 ===============
 FME driver exports one ioctl (DFL_FPGA_FME_PORT_PR) for partial reconfiguration