Merge branch 'net-amd-xgbe-add-support-for-yellow-carp-ethernet-device'
Raju Rangoju says: ==================== net: amd-xgbe: Add support for Yellow Carp Ethernet device Add support for newer version of Hardware, the Yellow Carp Ethernet device ==================== Link: https://lore.kernel.org/r/20211220135428.1123575-1-rrangoju@amd.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Коммит
f7a5319b44
|
@ -898,6 +898,8 @@
|
|||
#define PCS_V2_WINDOW_SELECT 0x9064
|
||||
#define PCS_V2_RV_WINDOW_DEF 0x1060
|
||||
#define PCS_V2_RV_WINDOW_SELECT 0x1064
|
||||
#define PCS_V2_YC_WINDOW_DEF 0x18060
|
||||
#define PCS_V2_YC_WINDOW_SELECT 0x18064
|
||||
|
||||
/* PCS register entry bit positions and sizes */
|
||||
#define PCS_V2_WINDOW_DEF_OFFSET_INDEX 6
|
||||
|
@ -1030,8 +1032,8 @@
|
|||
#define XP_PROP_0_PORT_ID_WIDTH 8
|
||||
#define XP_PROP_0_PORT_MODE_INDEX 8
|
||||
#define XP_PROP_0_PORT_MODE_WIDTH 4
|
||||
#define XP_PROP_0_PORT_SPEEDS_INDEX 23
|
||||
#define XP_PROP_0_PORT_SPEEDS_WIDTH 4
|
||||
#define XP_PROP_0_PORT_SPEEDS_INDEX 22
|
||||
#define XP_PROP_0_PORT_SPEEDS_WIDTH 5
|
||||
#define XP_PROP_1_MAX_RX_DMA_INDEX 24
|
||||
#define XP_PROP_1_MAX_RX_DMA_WIDTH 5
|
||||
#define XP_PROP_1_MAX_RX_QUEUES_INDEX 8
|
||||
|
|
|
@ -278,6 +278,13 @@ static int xgbe_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
|||
(rdev->vendor == PCI_VENDOR_ID_AMD) && (rdev->device == 0x15d0)) {
|
||||
pdata->xpcs_window_def_reg = PCS_V2_RV_WINDOW_DEF;
|
||||
pdata->xpcs_window_sel_reg = PCS_V2_RV_WINDOW_SELECT;
|
||||
} else if (rdev && (rdev->vendor == PCI_VENDOR_ID_AMD) &&
|
||||
(rdev->device == 0x14b5)) {
|
||||
pdata->xpcs_window_def_reg = PCS_V2_YC_WINDOW_DEF;
|
||||
pdata->xpcs_window_sel_reg = PCS_V2_YC_WINDOW_SELECT;
|
||||
|
||||
/* Yellow Carp devices do not need cdr workaround */
|
||||
pdata->vdata->an_cdr_workaround = 0;
|
||||
} else {
|
||||
pdata->xpcs_window_def_reg = PCS_V2_WINDOW_DEF;
|
||||
pdata->xpcs_window_sel_reg = PCS_V2_WINDOW_SELECT;
|
||||
|
@ -460,7 +467,7 @@ static int __maybe_unused xgbe_pci_resume(struct device *dev)
|
|||
return ret;
|
||||
}
|
||||
|
||||
static const struct xgbe_version_data xgbe_v2a = {
|
||||
static struct xgbe_version_data xgbe_v2a = {
|
||||
.init_function_ptrs_phy_impl = xgbe_init_function_ptrs_phy_v2,
|
||||
.xpcs_access = XGBE_XPCS_ACCESS_V2,
|
||||
.mmc_64bit = 1,
|
||||
|
@ -475,7 +482,7 @@ static const struct xgbe_version_data xgbe_v2a = {
|
|||
.an_cdr_workaround = 1,
|
||||
};
|
||||
|
||||
static const struct xgbe_version_data xgbe_v2b = {
|
||||
static struct xgbe_version_data xgbe_v2b = {
|
||||
.init_function_ptrs_phy_impl = xgbe_init_function_ptrs_phy_v2,
|
||||
.xpcs_access = XGBE_XPCS_ACCESS_V2,
|
||||
.mmc_64bit = 1,
|
||||
|
|
|
@ -124,10 +124,10 @@
|
|||
#include "xgbe.h"
|
||||
#include "xgbe-common.h"
|
||||
|
||||
#define XGBE_PHY_PORT_SPEED_100 BIT(0)
|
||||
#define XGBE_PHY_PORT_SPEED_1000 BIT(1)
|
||||
#define XGBE_PHY_PORT_SPEED_2500 BIT(2)
|
||||
#define XGBE_PHY_PORT_SPEED_10000 BIT(3)
|
||||
#define XGBE_PHY_PORT_SPEED_100 BIT(1)
|
||||
#define XGBE_PHY_PORT_SPEED_1000 BIT(2)
|
||||
#define XGBE_PHY_PORT_SPEED_2500 BIT(3)
|
||||
#define XGBE_PHY_PORT_SPEED_10000 BIT(4)
|
||||
|
||||
#define XGBE_MUTEX_RELEASE 0x80000000
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче