This workaround should be triggered based on the chipid and rev and not
the core id and rev. This is based on code in the Broadcom SDK.

Signed-off-by: Hauke Mehrtens <ha...@hauke-m.de>
---
 drivers/bcma/driver_chipcommon_pmu.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/bcma/driver_chipcommon_pmu.c 
b/drivers/bcma/driver_chipcommon_pmu.c
index da8769e..dd2b55d 100644
--- a/drivers/bcma/driver_chipcommon_pmu.c
+++ b/drivers/bcma/driver_chipcommon_pmu.c
@@ -166,6 +166,7 @@ static void bcma_pmu_workarounds(struct bcma_drv_cc *cc)
 void bcma_pmu_init(struct bcma_drv_cc *cc)
 {
        u32 pmucap;
+       struct bcma_bus *bus = cc->core->bus;
 
        pmucap = bcma_cc_read32(cc, BCMA_CC_PMU_CAP);
        cc->pmu.rev = (pmucap & BCMA_CC_PMU_CAP_REVISION);
@@ -180,7 +181,7 @@ void bcma_pmu_init(struct bcma_drv_cc *cc)
                bcma_cc_set32(cc, BCMA_CC_PMU_CTL,
                             BCMA_CC_PMU_CTL_NOILPONW);
 
-       if (cc->core->id.id == 0x4329 && cc->core->id.rev == 2)
+       if (bus->chipinfo.id == 0x4329 && bus->chipinfo.rev == 2)
                pr_err("Fix for 4329b0 bad LPOM state not implemented!\n");
 
        bcma_pmu_pll_init(cc);
-- 
1.7.9.5


_______________________________________________
b43-dev mailing list
b43-dev@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/b43-dev

Reply via email to