From 16bd16fa930635ce3f536fd1bad24fa8d840a117 Mon Sep 17 00:00:00 2001 From: Kenneth R Westerback Date: Mon, 19 Mar 2007 02:27:41 +0000 Subject: Fix some code relative to chips that don't currently work (BCM5722 & BCM5756). They still don't work but when they do they won't use an inappropriate Jitter bug workaround. No effect on other chips. From Michael Chan of Broadcom, via Linux tg3 via Brad. ok reyk@ --- sys/dev/pci/if_bge.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'sys') diff --git a/sys/dev/pci/if_bge.c b/sys/dev/pci/if_bge.c index b600fd154b7..097a08ebeb3 100644 --- a/sys/dev/pci/if_bge.c +++ b/sys/dev/pci/if_bge.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_bge.c,v 1.207 2007/02/16 01:25:50 krw Exp $ */ +/* $OpenBSD: if_bge.c,v 1.208 2007/03/19 02:27:40 krw Exp $ */ /* * Copyright (c) 2001 Wind River Systems @@ -1844,11 +1844,13 @@ bge_attach(struct device *parent, struct device *self, void *aux) if (BGE_IS_5705_OR_BEYOND(sc)) { if (BGE_ASICREV(sc->bge_chipid) == BGE_ASICREV_BCM5755 || - BGE_ASICREV(sc->bge_chipid) == BGE_ASICREV_BCM5787) - sc->bge_flags |= BGE_PHY_JITTER_BUG; + BGE_ASICREV(sc->bge_chipid) == BGE_ASICREV_BCM5787) { + if (PCI_PRODUCT(pa->pa_id) != PCI_PRODUCT_BROADCOM_BCM5722 && + PCI_PRODUCT(pa->pa_id) != PCI_PRODUCT_BROADCOM_BCM5756) + sc->bge_flags |= BGE_PHY_JITTER_BUG; if (PCI_PRODUCT(pa->pa_id) == PCI_PRODUCT_BROADCOM_BCM5755M) sc->bge_flags |= BGE_PHY_ADJUST_TRIM; - else if (BGE_ASICREV(sc->bge_chipid) != BGE_ASICREV_BCM5906) + } else if (BGE_ASICREV(sc->bge_chipid) != BGE_ASICREV_BCM5906) sc->bge_flags |= BGE_PHY_BER_BUG; } -- cgit v1.2.3