mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-10 10:20:17 -04:00
amd-xgbe: reorganize the xgbe_pci_probe() code path
Reorganize the xgbe_pci_probe() code path to convert if/else statements to switch case to help add future code. This helps code look cleaner. Signed-off-by: Raju Rangoju <Raju.Rangoju@amd.com> Reviewed-by: Simon Horman <horms@kernel.org> Link: https://patch.msgid.link/20250509155325.720499-3-Raju.Rangoju@amd.com Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
committed by
Paolo Abeni
parent
2d4407160f
commit
bbbd7303ea
@@ -165,20 +165,27 @@ static int xgbe_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
||||
|
||||
/* Set the PCS indirect addressing definition registers */
|
||||
rdev = pci_get_domain_bus_and_slot(0, 0, PCI_DEVFN(0, 0));
|
||||
if (rdev &&
|
||||
(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;
|
||||
if (rdev && rdev->vendor == PCI_VENDOR_ID_AMD) {
|
||||
switch (rdev->device) {
|
||||
case XGBE_RV_PCI_DEVICE_ID:
|
||||
pdata->xpcs_window_def_reg = PCS_V2_RV_WINDOW_DEF;
|
||||
pdata->xpcs_window_sel_reg = PCS_V2_RV_WINDOW_SELECT;
|
||||
break;
|
||||
case XGBE_YC_PCI_DEVICE_ID:
|
||||
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;
|
||||
/* Yellow Carp devices do not need cdr workaround */
|
||||
pdata->vdata->an_cdr_workaround = 0;
|
||||
|
||||
/* Yellow Carp devices do not need rrc */
|
||||
pdata->vdata->enable_rrc = 0;
|
||||
/* Yellow Carp devices do not need rrc */
|
||||
pdata->vdata->enable_rrc = 0;
|
||||
break;
|
||||
default:
|
||||
pdata->xpcs_window_def_reg = PCS_V2_WINDOW_DEF;
|
||||
pdata->xpcs_window_sel_reg = PCS_V2_WINDOW_SELECT;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
pdata->xpcs_window_def_reg = PCS_V2_WINDOW_DEF;
|
||||
pdata->xpcs_window_sel_reg = PCS_V2_WINDOW_SELECT;
|
||||
|
||||
@@ -238,6 +238,10 @@
|
||||
(_src)->link_modes._sname, \
|
||||
__ETHTOOL_LINK_MODE_MASK_NBITS)
|
||||
|
||||
/* XGBE PCI device id */
|
||||
#define XGBE_RV_PCI_DEVICE_ID 0x15d0
|
||||
#define XGBE_YC_PCI_DEVICE_ID 0x14b5
|
||||
|
||||
struct xgbe_prv_data;
|
||||
|
||||
struct xgbe_packet_data {
|
||||
|
||||
Reference in New Issue
Block a user