DPDK patches and discussions
 help / color / mirror / Atom feed
From: Shreyansh Jain <shreyansh.jain@nxp.com>
To: Thomas Monjalon <thomas.monjalon@6wind.com>
Cc: <dev@dpdk.org>, <viktorin@rehivetech.com>, <david.marchand@6wind.com>
Subject: Re: [dpdk-dev] [PATCH v7 00/21] Introduce SoC device/driver framework for EAL
Date: Wed, 9 Nov 2016 19:06:00 +0530	[thread overview]
Message-ID: <a81a3ef0-f94e-c2b1-0e00-fa3e67494e27@nxp.com> (raw)
In-Reply-To: <15406748.TzsDne6LfD@xps13>

Hello Thomas,

On Wednesday 09 November 2016 03:47 PM, Thomas Monjalon wrote:
> Hi Shreyansh,
>
> I realize that we had a lot of off-list discussions on this topic
> and there was no public explanation of the status of this series.

Thanks for your email. (and all the suggestions you have given 
offline/IRC etc.)
I was beginning to wonder that probably only Jan and me were the ones 
interested in this. Ironically, I felt that being EAL changes, a lot of 
people would come and be critic of it - giving an opportunity to get it 
widely accepted.

>
> 2016-10-28 17:56, Shreyansh Jain:
> [...]
>> As of now EAL is primarly focused on PCI initialization/probing.
>
> Right. DPDK was PCI centric.
> We must give PCI its right role: a bus as other ones.
> A first step was done in 16.11 (thanks to you Shreyansh, Jan and David)
> to have a better device model.
> The next step is to rework the bus abstraction.

Or, this change can be broken into multiple steps:
1. Create a PCI parallel layer for non-PCI devices. (call it SoC, or 
whatever else - doesn't really matter. More below).
2. Generalize this 'soc' changeset into common
3. Complete generalization by introducing a Linux like model of 
bus<=>device<=>driver.

Which was what my current approach was - expecting that SoC patchset 
would allow me to introduce NXP PMD and parallel to it I can keep 
pushing EAL generic changes towards generic bus arch.

>
> It seems a bus can be defined with the properties scan/match/notify,
> leading to initialize the devices.

'notify' is something which I am not completely clear with - but, in 
principle, agree.

>
> More comments below your technical presentation.
>
> [...]
>> This patchset introduces SoC framework which would enable SoC drivers and
>> drivers to be plugged into EAL, very similar to how PCI drivers/devices are
>> done today.
>>
>> This is a stripped down version of PCI framework which allows the SoC PMDs
>> to implement their own routines for detecting devices and linking devices to
>> drivers.
>>
>> 1) Changes to EAL
>>  rte_eal_init()
>>   |- rte_eal_pci_init(): Find PCI devices from sysfs
>>   |- rte_eal_soc_init(): Calls PMDs->scan_fn
>>   |- ...
>>   |- rte_eal_memzone_init()
>>   |- ...
>>   |- rte_eal_pci_probe(): Driver<=>Device initialization, PMD->devinit()
>>   `- rte_eal_soc_probe(): Calls PMDs->match_fn and PMDs->devinit();
>>
>> 2) New device/driver structures:
>>   - rte_soc_driver (inheriting rte_driver)
>>   - rte_soc_device (inheriting rte_device)
>>   - rte_eth_dev and eth_driver embedded rte_soc_device and rte_soc_driver,
>>     respectively.
>>
>> 3) The SoC PMDs need to:
>>  - define rte_soc_driver with necessary scan and match callbacks
>>  - Register themselves using DRIVER_REGISTER_SOC()
>>  - Implement respective bus scanning in the scan callbacks to add necessary
>>    devices to SoC device list
>>  - Implement necessary eth_dev_init/uninint for ethernet instances
>
> These callbacks are not specific to a SoC.

Agree; this is just a note - it exactly what a PCI PMD does.

> By the way a SoC defines nothing specific. You are using the SoC word
> as an equivalent of non-PCI.

Yes, primarily because SoC is a very broad word which can encompass a 
variety of devices (buses/drivers). So, we have PCI set, VDEV set, and 
everything else represented by 'SoC'.
The complete set is based on this principle: to have a generic subsystem 
_parallel_ to PCI (so as not to impact it) which can represent all 
devices not already included in PCI set'. - Actually, it is _nothing_ 
specific.

> We must have a bus abstraction like the one you are defining for the SoC
> but it must be generic and defined on top of PCI, so we can plug any
> bus in it: PCI, vdev (as a software bus), any other well-defined bus,
> and some driver-specific bus which can be implemented directly in the
> driver (the NXP case AFAIK).

Indeed - that is an ideal approach. And honestly, true attribution, it 
is not my original idea. It is yours, from our IRC discussion.
And it was ironic as well because Declan came up with similar suggestion 
much earlier but no one commented on it.

>
>> 4) Design considerations that are same as PCI:
>>  - SoC initialization is being done through rte_eal_init(), just after PCI
>>    initialization is done.
>>  - As in case of PCI, probe is done after rte_eal_pci_probe() to link the
>>    devices detected with the drivers registered.
>>  - Device attach/detach functions are available and have been designed on
>>    the lines of PCI framework.
>>  - PMDs register using DRIVER_REGISTER_SOC, very similar to
>>    DRIVER_REGISTER_PCI for PCI devices.
>>  - Linked list of SoC driver and devices exists independent of the other
>>    driver/device list, but inheriting rte_driver/rte_driver, these are
>>    also part of a global list.
>>
>> 5) Design considerations that are different from PCI:
>>  - Each driver implements its own scan and match function. PCI uses the BDF
>>    format to read the device from sysfs, but this _may_not_ be a case for a
>>    SoC ethernet device.
>>    = This is an important change from initial proposal by Jan in [2].
>>    Unlike his attempt to use /sys/bus/platform, this patch relies on the
>>    PMD to detect the devices. This is because SoC may require specific or
>>    additional info for device detection. Further, SoC may have embedded
>>    devices/MACs which require initialization which cannot be covered
>>    through sysfs parsing.
>>    `-> Point (6) below is a side note to above.
>>    = PCI based PMDs rely on EAL's capability to detect devices. This
>>    proposal puts the onus on PMD to detect devices, add to soc_device_list
>>    and wait for Probe. Matching, of device<=>driver is again PMD's
>>    callback.
>
> These PCI considerations can be described as a PCI bus implementation in EAL.

Yes. Or, we can continue as it is for PCI and allow more buses to plug 
in. And eventually, make the whole bus thing generic. Step-by-Step.

>
>> 6) Adding default scan and match helpers for PMDs
>>  - The design warrrants the PMDs implement their own scan of devices
>>    on bus, and match routines for probe implementation.
>>    This patch introduces helpers which can be used by PMDs for scan of
>>    the platform bus and matching devices against the compatible string
>>    extracted from the scan.
>>  - Intention is to make it easier to integrate known SoC which expose
>>    platform bus compliant information (compat, sys/bus/platform...).
>>  - PMDs which have deviations from this standard model can implement and
>>    hook their bus scanning and probe match callbacks while registering
>>    driver.
>
> Yes we can have EAL helpers to scan sys/bus/platform or other common formats.
> Then the PMD can use them to implement its specific bus.

And:
  - Framework/Developers should be able to 'register/unregister' buses.
  -- Just like drivers/net
  -- So, probably a drivers/bus/pci, drivers/bus/xxx folder structure
  -- and compatible compilation routine
  -- Or maybe librte_bus?
  --- I still haven't got around solving this.
  - RTE_PMD_REGISTER_BUS probably.
  - just EAL helpers are not enough - or at least, not generic enough.

  - Drivers should be able to 'lookup' buses
  -- PCI PMDs find a 'pci' bus during registration, for example.
  -- Unlike Linux, a device tree doesn't exist to solve this issue of 
which PMD is connected to which bus. This needs to solved using explicit 
APIs
  -- Once found, drivers can 'associate' with a bus.

  - Not just bus<->device<->driver, there is pending work with respect 
ethernet devices.
  -- Removing eth_driver->pci_driver linkage. Making it generic.
  -- Multiple places assume eth device to be PCI, rewriting that part.
  -- device_insert changes for vdev

>
> I know that David, you and me are on the same page to agree on this generic
> design. I hope you will be able to achieve this work soon.

I agree with your suggestion in principle - bus model is nice to have. 
There is always a better design. It is about how to achieve it.

I still think that current SoC patchset is a decent first step without 
completely discounting any future changes. (Obviously, assuming it is 
not NACK'd by someone because of some currently unforeseen technical 
argument).
Because:
1. It doesn't break the existing PCI subsystem anywhere. It is disabled 
by default.
2. It is independent - in the sense that changes are limited to SoC 
specific files, with only a few changes in EAL. But, clean patches make 
it easier to validate.
3. It would allow more people to check/validate the overall proposal of 
non-PCI device existence.
4. It paves way for cleaner transit to Bus architecture
  - rte_device/driver inheritance is complete after SoC patchset. Except 
changes in eth_dev/driver which is a completely parallel change with 
little overlap (but wide impact)
  - rte_soc_driver introduces 'scan/match' which can then be generalized 
to rte_driver in next step.
  -- This is very similar to what happened in rte_device/driver change 
where PCI things were generalized to common.

> The goal is to be able to plug a SoC driver in DPDK 17.02 with a clean design.

I am already working on that - now on a higher priority. Hopefully 
within next few days I will send a RFC out. There are still some grey 
ares for me (lack of DPDK internal understand, probably) - but I am 
hoping I would get good support from others - at least this time.

Then, probably for 17.02, we can have either candidate - and we can 
integrate whatever looks best (in terms of design and impact, both).

> My advice to make reviews and contributions easier, is to split the work in
> few steps:
> 	- clean PCI code (generalize non-PCI stuff)
> 	- add generic bus functions
> 	- plug PCI in generic bus abstraction
> 	- plug vdev in generic bus abstraction
> 	- plug the new NXP driver

I agree with above.

>
> Thanks
>

Thank you for your time and suggestions.

-
Shreyansh

      reply	other threads:[~2016-11-09 13:33 UTC|newest]

Thread overview: 230+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-01 21:05 [dpdk-dev] [RFC 0/7] Support non-PCI devices Jan Viktorin
2016-01-01 21:05 ` [dpdk-dev] [RFC 1/7] eal/common: define rte_soc_* related common interface Jan Viktorin
2016-01-02 18:01   ` Stephen Hemminger
2016-01-02 18:35     ` Wiles, Keith
2016-01-02 18:52       ` Jan Viktorin
2016-01-02 19:13         ` Wiles, Keith
2016-01-02 19:14         ` Stephen Hemminger
2016-01-02 19:22           ` Wiles, Keith
2016-01-02 18:45     ` Jan Viktorin
2016-01-03 17:12       ` Jan Viktorin
2016-01-04 15:21         ` Wiles, Keith
2016-01-01 21:05 ` [dpdk-dev] [RFC 2/7] eal: introduce --no-soc option Jan Viktorin
2016-01-01 21:05 ` [dpdk-dev] [RFC 3/7] eal: add common part of the SoC infra Jan Viktorin
2016-01-01 21:05 ` [dpdk-dev] [RFC 4/7] eal/linuxapp: support SoC infra in linuxapp Jan Viktorin
2016-01-01 21:05 ` [dpdk-dev] [RFC 5/7] eal: init SoC infra on rte_eal_init Jan Viktorin
2016-01-01 21:05 ` [dpdk-dev] [RFC 6/7] eal/soc: make SoC infra testable on any platform Jan Viktorin
2016-01-01 21:05 ` [dpdk-dev] [RFC 7/7] app/test: add SoC infra probe/detach test Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 00/28] Support non-PCI devices Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 01/28] eal: make enum rte_kernel_driver non-PCI specific Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 02/28] eal: extract function eal_parse_sysfs_valuef Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 03/28] eal/linux: extract function rte_eal_unbind_kernel_driver Jan Viktorin
2016-05-13  1:22   ` Jianbo Liu
2016-05-17 18:14     ` Jan Viktorin
2016-05-18 13:45       ` Jianbo Liu
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 04/28] eal/linux: extract function rte_eal_get_kernel_driver_by_path Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 05/28] eal: remove pci_ prefix from pci_(un)map_resource Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 06/28] eal/soc: introduce very essential SoC infra definitions Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 07/28] eal/soc: add rte_eal_soc_register/unregister logic Jan Viktorin
2016-06-13 14:19   ` Shreyansh Jain
2016-06-13 14:25     ` Jan Viktorin
2016-06-15  5:57     ` Shreyansh Jain
2016-06-15  9:50       ` Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 08/28] eal/soc: implement SoC device discovery Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 09/28] eal: introduce --no-soc option Jan Viktorin
2016-05-13  3:28   ` Jianbo Liu
2016-05-17 18:10     ` Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 10/28] eal/soc: init SoC infra from EAL Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 11/28] eal/soc: implement probing of drivers Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 12/28] eal/soc: extend and utilize devargs Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 13/28] eal/soc: update device on probe when already exists Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 14/28] eal/soc: detect assigned kernel driver Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 15/28] eal/soc: map/unmap resources Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 16/28] eal/soc: add intr_handle Jan Viktorin
2016-05-06 13:47 ` [dpdk-dev] [PATCH v1 17/28] eal/soc: hack (const char *) compatible setting Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 18/28] eal/soc: detect numa_node of the rte_soc_device Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 19/28] eal/soc: add drv_flags Jan Viktorin
2016-06-13 14:21   ` Shreyansh Jain
2016-06-13 14:26     ` Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 20/28] eal/soc: map resources conditionally Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 21/28] eal/soc: unbind kernel driver on probe Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 22/28] eal/soc: detect DMA non-coherent devices Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 23/28] eal: define macro container_of Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 24/28] ether: utilize container_of for pci_drv Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 25/28] ether: verify we copy info from a PCI device Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 26/28] ether: extract function eth_dev_get_intr_handle Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 27/28] ether: extract function eth_dev_get_driver_name Jan Viktorin
2016-05-06 13:48 ` [dpdk-dev] [PATCH v1 28/28] ether: support SoC device/driver Jan Viktorin
2016-06-29  9:42   ` Shreyansh jain
2016-07-04 13:04     ` Jan Viktorin
2016-07-04 14:27       ` Shreyansh jain
2016-07-04 14:36         ` Jan Viktorin
2016-07-05  4:42           ` Shreyansh jain
2016-07-05  5:16             ` Jan Viktorin
2016-07-07 10:29               ` Shreyansh jain
2016-07-12  8:45           ` Shreyansh jain
2016-07-12 10:41             ` Jan Viktorin
2016-08-31 11:00 ` [dpdk-dev] [PATCH v2 00/14] Introduce SoC device/driver framework for EAL Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 01/14] eal/soc: introduce very essential SoC infra definitions Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 02/14] eal/soc: add rte_eal_soc_register/unregister logic Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 03/14] eal/soc: Implement SoC device list and dump Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 04/14] eal: introduce --no-soc option Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 05/14] eal/soc: init SoC infra from EAL Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 06/14] eal/soc: implement probing of drivers Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 07/14] eal/soc: extend and utilize devargs Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 08/14] eal/soc: add drv_flags Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 09/14] eal/soc: add intr_handle Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 10/14] ether: utilize container_of for pci_drv Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 11/14] ether: verify we copy info from a PCI device Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 12/14] ether: extract function eth_dev_get_intr_handle Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 13/14] ether: extract function eth_dev_get_driver_name Shreyansh Jain
2016-08-31 11:00   ` [dpdk-dev] [PATCH v2 14/14] ether: Support rte_soc_driver/device for etherdev Shreyansh Jain
2016-09-09  8:43 ` [dpdk-dev] [PATCH v3 00/15] Introduce SoC device/driver framework for EAL Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 01/15] eal/soc: introduce very essential SoC infra definitions Shreyansh Jain
2016-09-15 12:58     ` Hunt, David
2016-09-16  6:17       ` Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 02/15] eal/soc: add rte_eal_soc_register/unregister logic Shreyansh Jain
2016-09-15 13:00     ` Hunt, David
2016-09-15 13:09       ` Jan Viktorin
2016-09-15 14:09         ` Thomas Monjalon
2016-09-16  7:32           ` Panu Matilainen
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 03/15] eal/soc: Implement SoC device list and dump Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 04/15] eal: introduce --no-soc option Shreyansh Jain
2016-09-16 11:36     ` Jan Viktorin
2016-09-16 11:55       ` Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 05/15] eal/soc: init SoC infra from EAL Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 06/15] eal/soc: implement probing of drivers Shreyansh Jain
2016-09-16 12:27     ` Jan Viktorin
2016-09-19  6:47       ` Shreyansh Jain
2016-09-19 11:34         ` Jan Viktorin
2016-09-20  6:46           ` Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 07/15] eal/soc: extend and utilize devargs Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 08/15] eal/soc: add drv_flags Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 09/15] eal/soc: add intr_handle Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 10/15] ether: utilize container_of for pci_drv Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 11/15] ether: verify we copy info from a PCI device Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 12/15] ether: extract function eth_dev_get_intr_handle Shreyansh Jain
2016-09-15 13:02     ` Hunt, David
2016-09-15 14:05       ` Thomas Monjalon
2016-09-16  7:17         ` Panu Matilainen
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 13/15] ether: extract function eth_dev_get_driver_name Shreyansh Jain
2016-09-15 13:03     ` Hunt, David
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 14/15] ether: Support rte_soc_driver/device for etherdev Shreyansh Jain
2016-09-09  8:43   ` [dpdk-dev] [PATCH v3 15/15] eal/crypto: Support rte_soc_driver/device for cryptodev Shreyansh Jain
2016-09-15 12:56   ` [dpdk-dev] [PATCH v3 00/15] Introduce SoC device/driver framework for EAL Hunt, David
2016-09-16  6:14     ` Shreyansh Jain
2016-09-18  5:58   ` Jianbo Liu
2016-09-18  7:22     ` Jan Viktorin
2016-09-18  8:56       ` Jianbo Liu
2016-09-18  9:17         ` Jan Viktorin
2016-09-18  9:41           ` Hemant Agrawal
2016-09-18 10:04             ` Jan Viktorin
2016-09-19 12:33               ` Hemant Agrawal
2016-10-15 13:44   ` [dpdk-dev] [PATCH v4 00/17] " Shreyansh Jain
2016-10-15 13:44     ` [dpdk-dev] [PATCH v4 01/17] eal: define container macro Shreyansh Jain
2016-10-15 13:44     ` [dpdk-dev] [PATCH v4 02/17] eal/soc: introduce very essential SoC infra definitions Shreyansh Jain
2016-10-15 13:44     ` [dpdk-dev] [PATCH v4 03/17] eal/soc: add SoC PMD register/unregister logic Shreyansh Jain
2016-10-15 13:44     ` [dpdk-dev] [PATCH v4 04/17] eal/soc: implement SoC device list and dump Shreyansh Jain
2016-10-15 13:44     ` [dpdk-dev] [PATCH v4 05/17] eal: introduce command line enable SoC option Shreyansh Jain
2016-10-15 13:44     ` [dpdk-dev] [PATCH v4 06/17] eal/soc: init SoC infra from EAL Shreyansh Jain
2016-10-15 13:44     ` [dpdk-dev] [PATCH v4 07/17] eal/soc: implement probing of drivers Shreyansh Jain
2016-10-15 13:44     ` [dpdk-dev] [PATCH v4 08/17] eal/soc: extend and utilize devargs Shreyansh Jain
2016-10-15 13:45     ` [dpdk-dev] [PATCH v4 09/17] eal/soc: add drv_flags Shreyansh Jain
2016-10-15 13:45     ` [dpdk-dev] [PATCH v4 10/17] eal/soc: add intr_handle Shreyansh Jain
2016-10-15 13:45     ` [dpdk-dev] [PATCH v4 11/17] eal/soc: add default scan for Soc devices Shreyansh Jain
2016-10-16  0:56       ` Jan Viktorin
2016-10-16  7:12         ` Shreyansh Jain
2016-10-24 12:08           ` Shreyansh Jain
2016-10-24 16:11             ` Jan Viktorin
2016-10-15 13:45     ` [dpdk-dev] [PATCH v4 12/17] eal/soc: additional features for SoC Shreyansh Jain
2016-10-15 13:45     ` [dpdk-dev] [PATCH v4 13/17] ether: utilize container_of for pci_drv Shreyansh Jain
2016-10-15 13:45     ` [dpdk-dev] [PATCH v4 14/17] ether: verify we copy info from a PCI device Shreyansh Jain
2016-10-15 13:45     ` [dpdk-dev] [PATCH v4 15/17] ether: extract function eth_dev_get_intr_handle Shreyansh Jain
2016-10-15 13:45     ` [dpdk-dev] [PATCH v4 16/17] ether: introduce ethernet dev probe remove Shreyansh Jain
2016-10-15 13:45     ` [dpdk-dev] [PATCH v4 17/17] eal/crypto: Support rte_soc_driver/device for cryptodev Shreyansh Jain
2016-10-15 13:53     ` [dpdk-dev] [PATCH v4 00/17] Introduce SoC device/driver framework for EAL Shreyansh Jain
2016-10-24 11:59     ` [dpdk-dev] [PATCH v5 00/21] " Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 01/21] eal: generalize PCI kernel driver enum to EAL Shreyansh Jain
2016-10-24 16:13         ` Jan Viktorin
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 02/21] eal: generalize PCI map/unmap resource " Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 03/21] eal/linux: generalize PCI kernel unbinding driver " Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 04/21] eal/linux: generalize PCI kernel driver extraction " Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 05/21] eal: define container macro Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 06/21] eal/soc: introduce very essential SoC infra definitions Shreyansh Jain
2016-10-24 16:21         ` Jan Viktorin
2016-10-25  5:36           ` Shreyansh Jain
2016-10-25 12:38             ` Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 07/21] eal/soc: add SoC PMD register/unregister logic Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 08/21] eal/soc: implement SoC device list and dump Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 09/21] eal: introduce command line enable SoC option Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 10/21] eal/soc: init SoC infra from EAL Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 11/21] eal/soc: implement probing of drivers Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 12/21] eal/soc: extend and utilize devargs Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 13/21] eal/soc: add drv_flags Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 14/21] eal/soc: add intr_handle Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 15/21] eal/soc: add default scan for Soc devices Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 16/21] eal/soc: additional features for SoC Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 17/21] ether: utilize container_of for pci_drv Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 18/21] ether: verify we copy info from a PCI device Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 19/21] ether: extract function eth_dev_get_intr_handle Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 20/21] ether: introduce ethernet dev probe remove Shreyansh Jain
2016-10-24 11:59       ` [dpdk-dev] [PATCH v5 21/21] eal/crypto: Support rte_soc_driver/device for cryptodev Shreyansh Jain
2016-10-27 15:17       ` [dpdk-dev] [PATCH v6 00/21] Introduce SoC device/driver framework for EAL Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 01/21] eal: generalize PCI kernel driver enum to EAL Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 02/21] eal: generalize PCI map/unmap resource " Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 03/21] eal/linux: generalize PCI kernel unbinding driver " Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 04/21] eal/linux: generalize PCI kernel driver extraction " Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 05/21] eal: define container macro Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 06/21] eal/soc: introduce very essential SoC infra definitions Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 07/21] eal/soc: add SoC PMD register/unregister logic Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 08/21] eal/soc: implement SoC device list and dump Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 09/21] eal: introduce command line enable SoC option Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 10/21] eal/soc: init SoC infra from EAL Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 12/21] eal/soc: extend and utilize devargs Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 13/21] eal/soc: add drv_flags Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 14/21] eal/soc: add intr_handle Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 15/21] eal/soc: add default scan for Soc devices Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 16/21] eal/soc: additional features for SoC Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 17/21] ether: utilize container_of for pci_drv Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 18/21] ether: verify we copy info from a PCI device Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 19/21] ether: extract function eth_dev_get_intr_handle Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 20/21] ether: introduce ethernet dev probe remove Shreyansh Jain
2016-10-27 15:17         ` [dpdk-dev] [PATCH v6 21/21] eal/crypto: Support rte_soc_driver/device for cryptodev Shreyansh Jain
2016-10-28 12:26         ` [dpdk-dev] [PATCH v7 00/21] Introduce SoC device/driver framework for EAL Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 01/21] eal: generalize PCI kernel driver enum to EAL Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 02/21] eal: generalize PCI map/unmap resource " Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 03/21] eal/linux: generalize PCI kernel unbinding driver " Shreyansh Jain
2016-11-10  2:24             ` Jianbo Liu
2016-11-10  5:46               ` Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 04/21] eal/linux: generalize PCI kernel driver extraction " Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 05/21] eal: define container macro Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 06/21] eal/soc: introduce very essential SoC infra definitions Shreyansh Jain
2016-11-10  4:09             ` Jianbo Liu
2016-11-10  5:51               ` Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 07/21] eal/soc: add SoC PMD register/unregister logic Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 08/21] eal/soc: implement SoC device list and dump Shreyansh Jain
2016-11-10  3:06             ` Jianbo Liu
2016-11-10  5:56               ` Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 09/21] eal: introduce command line enable SoC option Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 10/21] eal/soc: init SoC infra from EAL Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 11/21] eal/soc: implement probing of drivers Shreyansh Jain
2016-11-10  3:30             ` Jianbo Liu
2016-11-10  6:10               ` Shreyansh Jain
2016-11-10  7:41                 ` Jianbo Liu
2016-11-10  9:10                   ` Shreyansh Jain
2016-11-10  9:26                     ` Thomas Monjalon
2016-11-11  1:58                       ` Jianbo Liu
2016-11-11  6:04                       ` Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 12/21] eal/soc: extend and utilize devargs Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 13/21] eal/soc: add drv_flags Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 14/21] eal/soc: add intr_handle Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 15/21] eal/soc: add default scan for Soc devices Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 16/21] eal/soc: additional features for SoC Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 17/21] ether: utilize container_of for pci_drv Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 18/21] ether: verify we copy info from a PCI device Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 19/21] ether: extract function eth_dev_get_intr_handle Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 20/21] ether: introduce ethernet dev probe remove Shreyansh Jain
2016-10-28 12:26           ` [dpdk-dev] [PATCH v7 21/21] eal/crypto: Support rte_soc_driver/device for cryptodev Shreyansh Jain
2016-10-28 12:35           ` [dpdk-dev] [PATCH v7 00/21] Introduce SoC device/driver framework for EAL Shreyansh Jain
2016-11-09 10:17           ` Thomas Monjalon
2016-11-09 13:36             ` Shreyansh Jain [this message]

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=a81a3ef0-f94e-c2b1-0e00-fa3e67494e27@nxp.com \
    --to=shreyansh.jain@nxp.com \
    --cc=david.marchand@6wind.com \
    --cc=dev@dpdk.org \
    --cc=thomas.monjalon@6wind.com \
    --cc=viktorin@rehivetech.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).