#
da090917 |
| 27-Dec-2017 |
Tomer Tayar <Tomer.Tayar@cavium.com> |
qed*: Utilize FW 8.33.1.0
Advance the qed* drivers to use firmware 8.33.1.0: Modify core driver (qed) to utilize the new FW and initialize the device with it. This is the lion's share of the patch,
qed*: Utilize FW 8.33.1.0
Advance the qed* drivers to use firmware 8.33.1.0: Modify core driver (qed) to utilize the new FW and initialize the device with it. This is the lion's share of the patch, and includes changes to FW interface files, device initialization flows, FW interaction flows, and debug collection flows. Modify Ethernet driver (qede) to make use of new FW in fastpath. Modify RoCE/iWARP driver (qedr) to make use of new FW in fastpath. Modify FCoE driver (qedf) to make use of new FW in fastpath. Modify iSCSI driver (qedi) to make use of new FW in fastpath.
Signed-off-by: Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by: Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by: Yuval Bason <Yuval.Bason@cavium.com> Signed-off-by: Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by: Manish Chopra <Manish.Chopra@cavium.com> Signed-off-by: Chad Dupuis <Chad.Dupuis@cavium.com> Signed-off-by: Manish Rangankar <Manish.Rangankar@cavium.com> Signed-off-by: Tomer Tayar <Tomer.Tayar@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v4.13.16, v4.14, v4.13.5, v4.13 |
|
#
9e4a5613 |
| 30-Aug-2017 |
Colin Ian King <colin.king@canonical.com> |
qed: fix spelling mistake: "calescing" -> "coalescing"
Trivial fix to spelling mistake in DP_NOTICE message
Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: David S. Miller <
qed: fix spelling mistake: "calescing" -> "coalescing"
Trivial fix to spelling mistake in DP_NOTICE message
Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
bf5a94bf |
| 26-Jul-2017 |
Rahul Verma <Rahul.Verma@cavium.com> |
qed: Read per queue coalesce from hardware
Retrieve the actual coalesce value from hardware for every Rx/Tx queue, instead of Rx/Tx coalesce value cached during set coalesce.
Signed-off-by: Rahul V
qed: Read per queue coalesce from hardware
Retrieve the actual coalesce value from hardware for every Rx/Tx queue, instead of Rx/Tx coalesce value cached during set coalesce.
Signed-off-by: Rahul Verma <Rahul.Verma@cavium.com> Signed-off-by: Yuval Mintz <yuval.mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v4.12 |
|
#
456a5849 |
| 02-Jul-2017 |
Kalderon, Michal <Michal.Kalderon@cavium.com> |
qed: iWARP CM add passive side connect
This patch implements the passive side connect. It addresses pre-allocating resources, creating a connection element upon valid SYN packet received. Calling up
qed: iWARP CM add passive side connect
This patch implements the passive side connect. It addresses pre-allocating resources, creating a connection element upon valid SYN packet received. Calling upper layer and implementation of the accept/reject calls.
Error handling is not part of this patch.
Signed-off-by: Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
c851a9dc |
| 02-Jul-2017 |
Kalderon, Michal <Michal.Kalderon@cavium.com> |
qed: Introduce iWARP personality
iWARP personality introduced the need for differentiating in several places in the code whether we are RoCE, iWARP or either. This leads to introducing new macros fo
qed: Introduce iWARP personality
iWARP personality introduced the need for differentiating in several places in the code whether we are RoCE, iWARP or either. This leads to introducing new macros for querying the personality.
Signed-off-by: Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
0331402a |
| 14-Jun-2017 |
Dan Carpenter <dan.carpenter@oracle.com> |
qed: Fix an off by one bug
The p_l2_info->pp_qid_usage[] array has "p_l2_info->queues" elements so the > here should be a >= or we write beyond the end of the array.
Fixes: bbe3f233ec5e ("qed: Assi
qed: Fix an off by one bug
The p_l2_info->pp_qid_usage[] array has "p_l2_info->queues" elements so the > here should be a >= or we write beyond the end of the array.
Fixes: bbe3f233ec5e ("qed: Assign a unique per-queue index to queue-cid") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Acked-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
cbb8a12c |
| 04-Jun-2017 |
Mintz, Yuval <Yuval.Mintz@cavium.com> |
qed: VF XDP support
The final addition on the qed front - - VFs would now require their PFs to provide multiple CIDs - Based on the availability of connections from PF, determine whether XDP is
qed: VF XDP support
The final addition on the qed front - - VFs would now require their PFs to provide multiple CIDs - Based on the availability of connections from PF, determine whether XDP is feasible and share it with qede via dev_info.
Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
08bc8f15 |
| 04-Jun-2017 |
Mintz, Yuval <Yuval.Mintz@cavium.com> |
qed: Multiple qzone queues for VFs
This adds the infrastructure for supporting VFs that want to open multiple transmission queues on the same queue-zone. At this point, there are no VFs that actuall
qed: Multiple qzone queues for VFs
This adds the infrastructure for supporting VFs that want to open multiple transmission queues on the same queue-zone. At this point, there are no VFs that actually request this functionality, but later patches would remedy that.
a. VF and PF would communicate the capability during ACQUIRE; Legacy VFs would continue on behaving as they do today
b. PF would communicate number of supported CIDs to the VF and would enforce said limitation
c. Whenever VF passes a request for a given queue configuration it would also pass an associated index within said queue-zone
Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
007bc371 |
| 04-Jun-2017 |
Mintz, Yuval <Yuval.Mintz@cavium.com> |
qed: IOV db support multiple queues per qzone
Allow the infrastructure a PF maintains for each one of its VFs to support multiple queue-cids on a single queue-zone.
Signed-off-by: Yuval Mintz <Yuva
qed: IOV db support multiple queues per qzone
Allow the infrastructure a PF maintains for each one of its VFs to support multiple queue-cids on a single queue-zone.
Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
3b19f478 |
| 04-Jun-2017 |
Mintz, Yuval <Yuval.Mintz@cavium.com> |
qed: Make VF legacy a bitfield
Until now we used to have a single VF legacy compatibility mode, one that affected the place of the Rx producers of those VFs [mostly].
As PF would soon support alloc
qed: Make VF legacy a bitfield
Until now we used to have a single VF legacy compatibility mode, one that affected the place of the Rx producers of those VFs [mostly].
As PF would soon support allocating CIDs for VFs instead of having a static CID<->queue configuration for them, we'll need to have an additional legacy mode since existing VFs would need to continue on using the older mode of operation.
Change the infrastrucutre so that the legacy would be able to indicate which of the legacy behaviors is needed for a given VF.
Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
bbe3f233 |
| 04-Jun-2017 |
Mintz, Yuval <Yuval.Mintz@cavium.com> |
qed: Assign a unique per-queue index to queue-cid
When a queue-cid is allocated, assign an index inside that's CID's queue-zone.
For PFs and VFS, this number is going to be unique and derive from a
qed: Assign a unique per-queue index to queue-cid
When a queue-cid is allocated, assign an index inside that's CID's queue-zone.
For PFs and VFS, this number is going to be unique and derive from a per-queue-zone bitmap, while for PF's VFs queues the number is currently going to constant; Later, we'd add the capability of a VF to communicate such an index to its PF.
Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
3946497a |
| 04-Jun-2017 |
Mintz, Yuval <Yuval.Mintz@cavium.com> |
qed: Pass vf_params when creating a queue-cid
We're going to need additional information for queue-cids that a PF creates for its VFs, so start by refactoring existing logic used for initializing sa
qed: Pass vf_params when creating a queue-cid
We're going to need additional information for queue-cids that a PF creates for its VFs, so start by refactoring existing logic used for initializing said struct into receiving a structure encapsulating the VF-specific information that needs to be provided.
This also introduces QED_QUEUE_CID_SELF - each queue-cid would hold an indication to whether it belongs to the hw-function holding it [whether that's a PF or a VF], or else what's the VF id it belongs to.
Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
f604b17d |
| 04-Jun-2017 |
Mintz, Yuval <Yuval.Mintz@cavium.com> |
qed*: L2 interface to use the SB structures directly
Part of an effort of a cleaner seperation between qed and the protocol drivers, the L2 interface is to use the SB structure for initialization pu
qed*: L2 interface to use the SB structures directly
Part of an effort of a cleaner seperation between qed and the protocol drivers, the L2 interface is to use the SB structure for initialization purposes opaquely.
Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
0db711bb |
| 04-Jun-2017 |
Mintz, Yuval <Yuval.Mintz@cavium.com> |
qed: Create L2 queue database
First step in allowing a single PF/VF to open multiple queues on the same queue zone is to add per-hwfn database of queue-cids as a two-dimensional array where entry wo
qed: Create L2 queue database
First step in allowing a single PF/VF to open multiple queues on the same queue zone is to add per-hwfn database of queue-cids as a two-dimensional array where entry would be according to [queue zone][internal index].
Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
4f64675f |
| 23-May-2017 |
Manish Chopra <Manish.Chopra@cavium.com> |
qed: !main_ptt for tunnel configuration
Flows configuring tunnel ports in HW use the main_ptt which should be reserved for core-functionality.
Signed-off-by: Manish Chopra <Manish.Chopra@cavium.com
qed: !main_ptt for tunnel configuration
Flows configuring tunnel ports in HW use the main_ptt which should be reserved for core-functionality.
Signed-off-by: Manish Chopra <Manish.Chopra@cavium.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v4.10.17 |
|
#
74ed053d |
| 18-May-2017 |
Wei Yongjun <weiyongjun1@huawei.com> |
qed: Remove unused including <linux/version.h>
Remove including <linux/version.h> that is not needed.
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> Signed-off-by: David S. Miller <davem@davem
qed: Remove unused including <linux/version.h>
Remove including <linux/version.h> that is not needed.
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v4.10.16, v4.10.15, v4.10.14, v4.10.13 |
|
#
eaf3c0c6 |
| 24-Apr-2017 |
Chopra, Manish <Manish.Chopra@cavium.com> |
qed - VF tunnelling support [VXLAN/GENEVE/GRE]
This patch adds hardware channel APIs support between VF and PF for tunnelling configuration for the VFs. According to that configuration VFs can run V
qed - VF tunnelling support [VXLAN/GENEVE/GRE]
This patch adds hardware channel APIs support between VF and PF for tunnelling configuration for the VFs. According to that configuration VFs can run VXLAN/GENEVE/GRE tunnels over it with tunnel features offloaded.
Using these APIs VF can also request for UDP ports configuration to the PF, although PF and it's child VFs share the same port.
Signed-off-by: Manish Chopra <manish.chopra@cavium.com> Signed-off-by: Yuval Mintz <yuval.mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
97379f15 |
| 24-Apr-2017 |
Chopra, Manish <Manish.Chopra@cavium.com> |
qed/qede: Add UDP ports in bulletin board
This patch adds support for UDP ports in bulletin board to notify UDP ports change to the VFs
Signed-off-by: Manish Chopra <manish.chopra@cavium.com> Signe
qed/qede: Add UDP ports in bulletin board
This patch adds support for UDP ports in bulletin board to notify UDP ports change to the VFs
Signed-off-by: Manish Chopra <manish.chopra@cavium.com> Signed-off-by: Yuval Mintz <yuval.mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
19968430 |
| 24-Apr-2017 |
Chopra, Manish <Manish.Chopra@cavium.com> |
qed: refactor tunnelling - API/Structs
This patch changes the tunnel APIs to use per tunnel info instead of using bitmasks for all tunnels and also uses single struct to hold the data to prepare mul
qed: refactor tunnelling - API/Structs
This patch changes the tunnel APIs to use per tunnel info instead of using bitmasks for all tunnels and also uses single struct to hold the data to prepare multiple variant of tunnel configuration ramrods to be sent to the hardware.
Signed-off-by: Manish Chopra <manish.chopra@cavium.com> Signed-off-by: Yuval Mintz <yuval.mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v4.10.12, v4.10.11 |
|
#
d51e4af5 |
| 13-Apr-2017 |
Chopra, Manish <Manish.Chopra@cavium.com> |
qed: aRFS infrastructure support
This patch adds necessary APIs to interface with qede aRFS support in successive patch.
It also reserves separate PTT entry for aRFS, [as being in fastpath flow] fo
qed: aRFS infrastructure support
This patch adds necessary APIs to interface with qede aRFS support in successive patch.
It also reserves separate PTT entry for aRFS, [as being in fastpath flow] for hardware access instead of trying to acquire it at run time from the ptt pool.
Signed-off-by: Manish Chopra <manish.chopra@cavium.com> Signed-off-by: Yuval Mintz <yuval.mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v4.10.10, v4.10.9 |
|
#
15582962 |
| 06-Apr-2017 |
Rahul Verma <Rahul.Verma@cavium.com> |
qed: Don't use main-ptt in unrelated flows
In order to access HW registers driver needs to acquire a PTT entry [mapping between bar memory and internal chip address]. Since acquiring PTT entries cou
qed: Don't use main-ptt in unrelated flows
In order to access HW registers driver needs to acquire a PTT entry [mapping between bar memory and internal chip address]. Since acquiring PTT entries could fail [at least in theory] as their number is finite and other flows can hold them, we reserve special PTT entries for 'important' enough flows - ones we want to guarantee that would not be susceptible to such issues.
One such special entry is the 'main' PTT which is meant to be used in flows such as chip initialization and de-initialization. However, there are other flows that are also using that same entry for their own purpose, and might run concurrently with the original flows [notice that for most cases using the main-ptt by mistake, such a race is still impossible, at least today].
This patch re-organizes the various functions that currently use the main_ptt in one of two ways:
- If a function shouldn't use the main_ptt it starts acquiring and releasing it's own PTT entry and use it instead. Notice if those functions previously couldn't fail, they now can [as acquisition might fail].
- Change the prototypes so that the main_ptt would be received as a parameter [instead of explicitly accessing it]. This prevents the future risk of adding codes that introduces new use-cases for flows using the main_ptt, ones that might be in race with the actual 'main' flows.
Signed-off-by: Rahul Verma <Rahul.Verma@cavium.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
b5a9ee7c |
| 03-Apr-2017 |
Ariel Elior <Ariel.Elior@cavium.com> |
qed: Revise QM cofiguration
Refactor and clean up the queue manager initialization logic. Also, this adds support for RoC low latency queues, which later would be used for improving RoCE latency in
qed: Revise QM cofiguration
Refactor and clean up the queue manager initialization logic. Also, this adds support for RoC low latency queues, which later would be used for improving RoCE latency in high throughput scenarios.
Signed-off-by: Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v4.10.8, v4.10.7, v4.10.6, v4.10.5, v4.10.4, v4.10.3 |
|
#
9c79ddaa |
| 14-Mar-2017 |
Mintz, Yuval <Yuval.Mintz@cavium.com> |
qed*: Add support for QL41xxx adapters
This adds the necessary infrastructure changes for initializing and working with the new series of QL41xxx adapaters.
It also adds 2 new PCI device-IDs to qed
qed*: Add support for QL41xxx adapters
This adds the necessary infrastructure changes for initializing and working with the new series of QL41xxx adapaters.
It also adds 2 new PCI device-IDs to qede: - 0x8070 for QL41xxx PFs - 0x8090 for VFs spawning from QL41xxx PFs
Signed-off-by: Tomer Tayar <Tomer.Tayar@cavium.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
Revision tags: v4.10.2, v4.10.1, v4.10 |
|
#
c78c70fa |
| 15-Feb-2017 |
Sudarsana Reddy Kalluru <sudarsana.Kalluru@cavium.com> |
qed: Add infrastructure for PTP support
The patch adds the required qed interfaces for configuring/reading the PTP clock on the adapter.
Signed-off-by: Sudarsana Reddy Kalluru <Sudarsana.Kalluru@ca
qed: Add infrastructure for PTP support
The patch adds the required qed interfaces for configuring/reading the PTP clock on the adapter.
Signed-off-by: Sudarsana Reddy Kalluru <Sudarsana.Kalluru@cavium.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|
#
0ee28e31 |
| 16-Jan-2017 |
Shyam Saini <mayhs11saini@gmail.com> |
qed: Replace memset with eth_zero_addr
Use eth_zero_addr to assign zero address to the given address array instead of memset when the second argument in memset is address of zero. Also, it makes the
qed: Replace memset with eth_zero_addr
Use eth_zero_addr to assign zero address to the given address array instead of memset when the second argument in memset is address of zero. Also, it makes the code clearer
Signed-off-by: Shyam Saini <mayhs11saini@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
show more ...
|