summaryrefslogtreecommitdiff
path: root/Documentation/networking/device_drivers/ethernet/marvell/octeon_ep.rst
blob: c96d262b30beef798a092640551e0e55faaae855 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
.. SPDX-License-Identifier: GPL-2.0+

====================================================================
Linux kernel networking driver for Marvell's Octeon PCI Endpoint NIC
====================================================================

Network driver for Marvell's Octeon PCI EndPoint NIC.
Copyright (c) 2020 Marvell International Ltd.

Contents
========

- `Overview`_
- `Supported Devices`_
- `Interface Control`_

Overview
========
This driver implements networking functionality of Marvell's Octeon PCI
EndPoint NIC.

Supported Devices
=================
Currently, this driver support following devices:
 * Network controller: Cavium, Inc. Device b100
 * Network controller: Cavium, Inc. Device b200
 * Network controller: Cavium, Inc. Device b400
 * Network controller: Cavium, Inc. Device b900
 * Network controller: Cavium, Inc. Device ba00
 * Network controller: Cavium, Inc. Device bc00
 * Network controller: Cavium, Inc. Device bd00

Interface Control
=================
Network Interface control like changing mtu, link speed, link down/up are
done by writing command to mailbox command queue, a mailbox interface
implemented through a reserved region in BAR4.
This driver writes the commands into the mailbox and the firmware on the
Octeon device processes them. The firmware also sends unsolicited notifications
to driver for events suchs as link change, through notification queue
implemented as part of mailbox interface.