Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ionic: update doc files

Update the basic doc file with some configuration hints and a
little bit of stats information.

Signed-off-by: Shannon Nelson <snelson@pensando.io>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Shannon Nelson and committed by
David S. Miller
7c7b58ec f64e0c56

+230 -1
+230 -1
Documentation/networking/device_drivers/pensando/ionic.rst
··· 11 11 ======== 12 12 13 13 - Identifying the Adapter 14 + - Enabling the driver 15 + - Configuring the driver 16 + - Statistics 14 17 - Support 15 18 16 19 Identifying the Adapter ··· 31 28 messages such as these:: 32 29 33 30 $ dmesg | grep ionic 34 - ionic Pensando Ethernet NIC Driver, ver 0.15.0-k 31 + ionic 0000:b5:00.0: 126.016 Gb/s available PCIe bandwidth (8.0 GT/s PCIe x16 link) 35 32 ionic 0000:b5:00.0 enp181s0: renamed from eth0 33 + ionic 0000:b5:00.0 enp181s0: Link up - 100 Gbps 34 + ionic 0000:b6:00.0: 126.016 Gb/s available PCIe bandwidth (8.0 GT/s PCIe x16 link) 36 35 ionic 0000:b6:00.0 enp182s0: renamed from eth0 36 + ionic 0000:b6:00.0 enp182s0: Link up - 100 Gbps 37 + 38 + Driver and firmware version information can be gathered with either of 39 + ethtool or devlink tools:: 40 + 41 + $ ethtool -i enp181s0 42 + driver: ionic 43 + version: 5.7.0 44 + firmware-version: 1.8.0-28 45 + ... 46 + 47 + $ devlink dev info pci/0000:b5:00.0 48 + pci/0000:b5:00.0: 49 + driver ionic 50 + serial_number FLM18420073 51 + versions: 52 + fixed: 53 + asic.id 0x0 54 + asic.rev 0x0 55 + running: 56 + fw 1.8.0-28 57 + 58 + See Documentation/networking/devlink/ionic.rst for more information 59 + on the devlink dev info data. 60 + 61 + Enabling the driver 62 + =================== 63 + 64 + The driver is enabled via the standard kernel configuration system, 65 + using the make command:: 66 + 67 + make oldconfig/menuconfig/etc. 68 + 69 + The driver is located in the menu structure at: 70 + 71 + -> Device Drivers 72 + -> Network device support (NETDEVICES [=y]) 73 + -> Ethernet driver support 74 + -> Pensando devices 75 + -> Pensando Ethernet IONIC Support 76 + 77 + Configuring the Driver 78 + ====================== 79 + 80 + MTU 81 + --- 82 + 83 + Jumbo frame support is available with a maximim size of 9194 bytes. 84 + 85 + Interrupt coalescing 86 + -------------------- 87 + 88 + Interrupt coalescing can be configured by changing the rx-usecs value with 89 + the "ethtool -C" command. The rx-usecs range is 0-190. The tx-usecs value 90 + reflects the rx-usecs value as they are tied together on the same interrupt. 91 + 92 + SR-IOV 93 + ------ 94 + 95 + Minimal SR-IOV support is currently offered and can be enabled by setting 96 + the sysfs 'sriov_numvfs' value, if supported by your particular firmware 97 + configuration. 98 + 99 + Statistics 100 + ========== 101 + 102 + Basic hardware stats 103 + -------------------- 104 + 105 + The commands ``netstat -i``, ``ip -s link show``, and ``ifconfig`` show 106 + a limited set of statistics taken directly from firmware. For example:: 107 + 108 + $ ip -s link show enp181s0 109 + 7: enp181s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000 110 + link/ether 00:ae:cd:00:07:68 brd ff:ff:ff:ff:ff:ff 111 + RX: bytes packets errors dropped overrun mcast 112 + 414 5 0 0 0 0 113 + TX: bytes packets errors dropped carrier collsns 114 + 1384 18 0 0 0 0 115 + 116 + ethtool -S 117 + ---------- 118 + 119 + The statistics shown from the ``ethtool -S`` command includes a combination of 120 + driver counters and firmware counters, including port and queue specific values. 121 + The driver values are counters computed by the driver, and the firmware values 122 + are gathered by the firmware from the port hardware and passed through the 123 + driver with no further interpretation. 124 + 125 + Driver port specific:: 126 + 127 + tx_packets: 12 128 + tx_bytes: 964 129 + rx_packets: 5 130 + rx_bytes: 414 131 + tx_tso: 0 132 + tx_tso_bytes: 0 133 + tx_csum_none: 12 134 + tx_csum: 0 135 + rx_csum_none: 0 136 + rx_csum_complete: 3 137 + rx_csum_error: 0 138 + 139 + Driver queue specific:: 140 + 141 + tx_0_pkts: 3 142 + tx_0_bytes: 294 143 + tx_0_clean: 3 144 + tx_0_dma_map_err: 0 145 + tx_0_linearize: 0 146 + tx_0_frags: 0 147 + tx_0_tso: 0 148 + tx_0_tso_bytes: 0 149 + tx_0_csum_none: 3 150 + tx_0_csum: 0 151 + tx_0_vlan_inserted: 0 152 + rx_0_pkts: 2 153 + rx_0_bytes: 120 154 + rx_0_dma_map_err: 0 155 + rx_0_alloc_err: 0 156 + rx_0_csum_none: 0 157 + rx_0_csum_complete: 0 158 + rx_0_csum_error: 0 159 + rx_0_dropped: 0 160 + rx_0_vlan_stripped: 0 161 + 162 + Firmware port specific:: 163 + 164 + hw_tx_dropped: 0 165 + hw_rx_dropped: 0 166 + hw_rx_over_errors: 0 167 + hw_rx_missed_errors: 0 168 + hw_tx_aborted_errors: 0 169 + frames_rx_ok: 15 170 + frames_rx_all: 15 171 + frames_rx_bad_fcs: 0 172 + frames_rx_bad_all: 0 173 + octets_rx_ok: 1290 174 + octets_rx_all: 1290 175 + frames_rx_unicast: 10 176 + frames_rx_multicast: 5 177 + frames_rx_broadcast: 0 178 + frames_rx_pause: 0 179 + frames_rx_bad_length: 0 180 + frames_rx_undersized: 0 181 + frames_rx_oversized: 0 182 + frames_rx_fragments: 0 183 + frames_rx_jabber: 0 184 + frames_rx_pripause: 0 185 + frames_rx_stomped_crc: 0 186 + frames_rx_too_long: 0 187 + frames_rx_vlan_good: 3 188 + frames_rx_dropped: 0 189 + frames_rx_less_than_64b: 0 190 + frames_rx_64b: 4 191 + frames_rx_65b_127b: 11 192 + frames_rx_128b_255b: 0 193 + frames_rx_256b_511b: 0 194 + frames_rx_512b_1023b: 0 195 + frames_rx_1024b_1518b: 0 196 + frames_rx_1519b_2047b: 0 197 + frames_rx_2048b_4095b: 0 198 + frames_rx_4096b_8191b: 0 199 + frames_rx_8192b_9215b: 0 200 + frames_rx_other: 0 201 + frames_tx_ok: 31 202 + frames_tx_all: 31 203 + frames_tx_bad: 0 204 + octets_tx_ok: 2614 205 + octets_tx_total: 2614 206 + frames_tx_unicast: 8 207 + frames_tx_multicast: 21 208 + frames_tx_broadcast: 2 209 + frames_tx_pause: 0 210 + frames_tx_pripause: 0 211 + frames_tx_vlan: 0 212 + frames_tx_less_than_64b: 0 213 + frames_tx_64b: 4 214 + frames_tx_65b_127b: 27 215 + frames_tx_128b_255b: 0 216 + frames_tx_256b_511b: 0 217 + frames_tx_512b_1023b: 0 218 + frames_tx_1024b_1518b: 0 219 + frames_tx_1519b_2047b: 0 220 + frames_tx_2048b_4095b: 0 221 + frames_tx_4096b_8191b: 0 222 + frames_tx_8192b_9215b: 0 223 + frames_tx_other: 0 224 + frames_tx_pri_0: 0 225 + frames_tx_pri_1: 0 226 + frames_tx_pri_2: 0 227 + frames_tx_pri_3: 0 228 + frames_tx_pri_4: 0 229 + frames_tx_pri_5: 0 230 + frames_tx_pri_6: 0 231 + frames_tx_pri_7: 0 232 + frames_rx_pri_0: 0 233 + frames_rx_pri_1: 0 234 + frames_rx_pri_2: 0 235 + frames_rx_pri_3: 0 236 + frames_rx_pri_4: 0 237 + frames_rx_pri_5: 0 238 + frames_rx_pri_6: 0 239 + frames_rx_pri_7: 0 240 + tx_pripause_0_1us_count: 0 241 + tx_pripause_1_1us_count: 0 242 + tx_pripause_2_1us_count: 0 243 + tx_pripause_3_1us_count: 0 244 + tx_pripause_4_1us_count: 0 245 + tx_pripause_5_1us_count: 0 246 + tx_pripause_6_1us_count: 0 247 + tx_pripause_7_1us_count: 0 248 + rx_pripause_0_1us_count: 0 249 + rx_pripause_1_1us_count: 0 250 + rx_pripause_2_1us_count: 0 251 + rx_pripause_3_1us_count: 0 252 + rx_pripause_4_1us_count: 0 253 + rx_pripause_5_1us_count: 0 254 + rx_pripause_6_1us_count: 0 255 + rx_pripause_7_1us_count: 0 256 + rx_pause_1us_count: 0 257 + frames_tx_truncated: 0 258 + 37 259 38 260 Support 39 261 ======= 262 + 40 263 For general Linux networking support, please use the netdev mailing 41 264 list, which is monitored by Pensando personnel:: 42 265