1.. SPDX-License-Identifier: GPL-2.0+ 2 3======================================================== 4Linux Driver for the AMD/Pensando(R) DSC adapter family 5======================================================== 6 7Copyright(c) 2023 Advanced Micro Devices, Inc 8 9Identifying the Adapter 10======================= 11 12To find if one or more AMD/Pensando PCI Core devices are installed on the 13host, check for the PCI devices:: 14 15 # lspci -d 1dd8:100c 16 b5:00.0 Processing accelerators: Pensando Systems Device 100c 17 b6:00.0 Processing accelerators: Pensando Systems Device 100c 18 19If such devices are listed as above, then the pds_core.ko driver should find 20and configure them for use. There should be log entries in the kernel 21messages such as these:: 22 23 $ dmesg | grep pds_core 24 pds_core 0000:b5:00.0: 252.048 Gb/s available PCIe bandwidth (16.0 GT/s PCIe x16 link) 25 pds_core 0000:b5:00.0: FW: 1.60.0-73 26 pds_core 0000:b6:00.0: 252.048 Gb/s available PCIe bandwidth (16.0 GT/s PCIe x16 link) 27 pds_core 0000:b6:00.0: FW: 1.60.0-73 28 29Driver and firmware version information can be gathered with devlink:: 30 31 $ devlink dev info pci/0000:b5:00.0 32 pci/0000:b5:00.0: 33 driver pds_core 34 serial_number FLM18420073 35 versions: 36 fixed: 37 asic.id 0x0 38 asic.rev 0x0 39 running: 40 fw 1.51.0-73 41 stored: 42 fw.goldfw 1.15.9-C-22 43 fw.mainfwa 1.60.0-73 44 fw.mainfwb 1.60.0-57 45 46Info versions 47============= 48 49The ``pds_core`` driver reports the following versions 50 51.. list-table:: devlink info versions implemented 52 :widths: 5 5 90 53 54 * - Name 55 - Type 56 - Description 57 * - ``fw`` 58 - running 59 - Version of firmware running on the device 60 * - ``fw.goldfw`` 61 - stored 62 - Version of firmware stored in the goldfw slot 63 * - ``fw.mainfwa`` 64 - stored 65 - Version of firmware stored in the mainfwa slot 66 * - ``fw.mainfwb`` 67 - stored 68 - Version of firmware stored in the mainfwb slot 69 * - ``asic.id`` 70 - fixed 71 - The ASIC type for this device 72 * - ``asic.rev`` 73 - fixed 74 - The revision of the ASIC for this device 75 76Parameters 77========== 78 79The ``pds_core`` driver implements the following generic 80parameters for controlling the functionality to be made available 81as auxiliary_bus devices. 82 83.. list-table:: Generic parameters implemented 84 :widths: 5 5 8 82 85 86 * - Name 87 - Mode 88 - Type 89 - Description 90 * - ``enable_vnet`` 91 - runtime 92 - Boolean 93 - Enables vDPA functionality through an auxiliary_bus device 94 95Firmware Management 96=================== 97 98The ``flash`` command can update a the DSC firmware. The downloaded firmware 99will be saved into either of firmware bank 1 or bank 2, whichever is not 100currently in use, and that bank will used for the next boot:: 101 102 # devlink dev flash pci/0000:b5:00.0 \ 103 file pensando/dsc_fw_1.63.0-22.tar 104 105Health Reporters 106================ 107 108The driver supports a devlink health reporter for FW status:: 109 110 # devlink health show pci/0000:2b:00.0 reporter fw 111 pci/0000:2b:00.0: 112 reporter fw 113 state healthy error 0 recover 0 114 # devlink health diagnose pci/0000:2b:00.0 reporter fw 115 Status: healthy State: 1 Generation: 0 Recoveries: 0 116 117Enabling the driver 118=================== 119 120The driver is enabled via the standard kernel configuration system, 121using the make command:: 122 123 make oldconfig/menuconfig/etc. 124 125The driver is located in the menu structure at: 126 127 -> Device Drivers 128 -> Network device support (NETDEVICES [=y]) 129 -> Ethernet driver support 130 -> AMD devices 131 -> AMD/Pensando Ethernet PDS_CORE Support 132 133Support 134======= 135 136For general Linux networking support, please use the netdev mailing 137list, which is monitored by AMD/Pensando personnel:: 138 139 netdev@vger.kernel.org 140