Rasesh Mody
eb6088c168
net/qede/base: prevent DMAE transactions during recovery
...
Prevent DMA engine transactions during recovery phase.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:54 +02:00
Rasesh Mody
4727343d27
net/qede/base: add UDP ports in bulletin board message
...
Add UDP ports in bulletin board message.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:54 +02:00
Rasesh Mody
35da959606
net/qede/base: allow PMD to control vport and RSS engine ids
...
Let PMD have control over the vport-id and rss-eng-id of a given VF
during initialization.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:54 +02:00
Rasesh Mody
615438cba3
net/qede/base: add PF parameter
...
Add a common enum to pf_params for RDMA.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:54 +02:00
Rasesh Mody
0863dbe396
net/qede/base: move code bits
...
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:54 +02:00
Rasesh Mody
e32dc0f722
net/qede/base: zero out MFW mailbox data
...
Zero the whole union data of the Management FW mailbox before copying
the actual union member
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:54 +02:00
Rasesh Mody
2c3945f6b8
net/qede/base: add return code check
...
Add a check of the return code of ecore_mcp_cmd_and_union() in
ecore_mcp_send_protocol_stats()
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:54 +02:00
Rasesh Mody
49ca6a7bcb
net/qede/base: set max values for soft resources
...
Add support for the new interface with the Management FW for setting
max values of "soft" resources.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
6da551eeac
net/qede/base: add macro for unsupported command
...
Add a macro for unsupported management FW command
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
619618b938
net/qede/base: add mailbox for resource allocation
...
Add the Management FW mailbox for getting non-l2 resource allocation
information.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
4cf46f140c
net/qede/base: add macro got resource value message
...
Add macro got resource value message
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
6b8962e0ef
net/qede/base: support coalescing for VF
...
Add coalescing support for VFs.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
6ccecc10ba
net/qede/base: update bulletin board during VF init
...
Updated bulletin board with link state during VF initialization.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
2e2680e0d2
net/qede/base: support non-L2 dcbx tlv application
...
Add non-l2 dcbx tlv application support.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
0b6bf70d7e
net/qede/base: support previous driver unload
...
New driver/management fw load request sequence for handling previous
driver unload.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
a261b214b2
net/qede/base: change valloc to vzalloc
...
Change OSAL_VALLOC() into OSAL_VZALLOC() which would also zero memory.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
69d7ba88f1
net/qede/base: use L2-handles for RSS configuration
...
Move RSS configuration into using L2-handles instead of queue-ids.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:53 +02:00
Rasesh Mody
d9c2569c78
net/qede/base: add new image types
...
Add new image types - RECOVERY and PK (Public Key) towards
the second phase of NVRAM security support.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
a5e7b7a2ee
net/qede/base: remove clock slowdown option
...
Remove clock slowdown NVM config option as this is not supported
for current chipsets.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
8a20e270f3
net/qede/base: add API for using MFW resource lock
...
Add base driver API for using the Management FW resource lock
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
70ab4d3d46
net/qede/base: add mask/shift defines for resource command
...
Add several mask/shift defines for the resource command
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
0e9c6de362
net/qede/base: prevent transmitter stuck condition
...
Change OOO TC properly to prevent transmitter stuck condition
due to credit underruns.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
45cf58a14f
net/qede/base: formatting changes
...
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
0b090fd364
net/qede/base: support tunnelling for VF
...
Add new tunnelling support for VFs.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
adce1f86f8
net/qede/base: revise tunnel APIs/structs
...
Revise tunnel APIs/structs.
- Unite tunnel start and update params in single struct
"ecore_tunnel_info"
- Remove A0 chip tunnelling support.
- Added per tunnel info - removed bitmasks.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
a7f3cac315
net/qede/base: change infrastructure for VF tunnelling
...
Infrastructure changes for VF tunnelling.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
6a0f9f5c62
net/qede/base: optimize cache-line access
...
Optimize cache-line access in ecore_chain -
re-arrange fields so that fields that are needed for fastpath
[mostly produce/consume and their derivatives] are in the first cache
line, and the rest are in the second.
This is true for both PBL and NEXT_PTR kind of chains.
Advancing a page in a SINGLE_PAGE chain would still require the 2nd
cacheline as well, but afaik only SPQ uses it and so it isn't
considered as 'fastpath'.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:52 +02:00
Rasesh Mody
43ef668c18
net/qede/base: support handling TLV request from MFW
...
Add support for handling the TLV request from Management FW.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
a55e422e4e
net/qede/base: make L2 queues handle based
...
L2 handler changes:
This is change to remove the queue-id/qzone difference for Tx queues.
It does that by mainly doing:
a. VFs queues are no longer determined by the SBs they're using.
Instead, the ecore-client needs to maintain those and choose the values
to be used by VF when initializing it.
b. Eliminate the HW-cid array in the hw-function.
To do that, have all the rx/tx functionality turn into 'handle' base -
when queue would be started the caller would get a (void*) handle,
which it would later use with ecore for configuring various
queue-related stop [update, close].
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
d411a2b5e4
net/qede/base: refactor code of SP queues
...
Maintain slowpath event queue and consumer queue within HW function
structure, update corresponding alloc and free APIs accordingly.
Cleanup unused code under CONFIG_ECORE_LL2 ifdef.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
ea7c1c6f37
net/qede/base: add interfaces for MFW TLV request processing
...
Add new base driver interfaces for Management FW TLV request processing.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
978580d86c
net/qede/base: prevent driver load with invalid resources
...
Prevent storage drivers from attempting to load with invalid resources.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
de5588af0b
net/qede/base: set driver type before sending load request
...
Set the drv_type before sending LOAD_REQ and remove the
ver_str which is not used by the MFW
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
bd96f72ff9
net/qede/base: check active VF queues before stopping
...
Make sure VF queue are closed before stopping vport.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
4fc58baef7
net/qede/base: print firmware MFW and MBI versions
...
Add a printout of the FW, Management FW and MBI versions.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
5ef4119332
net/qede/base: revamp qm initialization
...
This patch revamps queue initialization.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
6b190a9873
net/qede/base: allow only trusted VFs to be promisc
...
Allow only trusted VFs to be promisc/multi-promisc. The reasonable
thing is to use the 'trusted' node instead of simply allowing VFs to
become promiscuous.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
3750b3f8d8
net/qede/base: remove unneeded step in HW init
...
There is no need to close the OUT_EN NIG registers, so remove that.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
86030347db
net/qede/base: allow probe to succeed with minor HW-issues
...
Allow probe to succeed with various 'minor' HW-issues [if requested]
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:51 +02:00
Rasesh Mody
bdf4267dde
net/qede/base: read card personality via MFW commands
...
Add support to read NIC personality via management FW for non-L2
protocols.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
f60ec68828
net/qede/base: prevent device init failure
...
Device initialization flow should not be failed because the FW interface
command is not available.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
8764367752
net/qede/base: update MFW when default MTU is changed
...
Send mailbox command to Management FW when MTU changes.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
2dfd074e6c
net/qede/base: change queue/sb-id from 8 bit to 16 bit
...
Change the queue/sb-id values from 8 bit fields to 16 bit fields.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
5c11b7066f
net/qede/base: use default MTU from shared memory
...
Read and use the default MTU value from shared-memory.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
5c66fd8592
net/qede/base: add comment
...
Add a comment for the endianness manipulation in
ecore_mcp_send_drv_version().
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
48ba75dd7d
net/qede/base: add nvram options
...
Add a bunch of NVRAM options like MCOT, FEC selection, temperature
threshold, Reset On Lan, etc.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
bb42c23b19
net/qede/base: remove attribute from update current config
...
Remove attribute field from update_current_config() API, Management FW
need to know only the last entity who configured the device.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
8bb13112f3
net/qede/base: move mask constants defining NIC type
...
Move mask constants defining NIC type to ecore.h
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
47a06aaf5a
net/qede/base: decrease maximum HW func per device
...
Decrease MAX_HWFNS_PER_DEVICE from 4 to 2
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00
Rasesh Mody
806474a684
net/qede: upgrade the FW to 8.18.9.0
...
This patchset adds changes to upgrade to 8.18.9.0 FW.
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-04-04 19:02:50 +02:00