Skip to contentSkip to conversation

b43: Honor the no-slow-clock boardflag

PATCH New Michael Buesch 1 participant 1 message Feb 20, 2009 Networking drivers (wireless)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 b43: Honor the no-slow-clock boardflag

Do not turn off the crystal, if the boardflags tell us so.

---

John, this doesn't fix known bugs. Please queue for the next feature release.

drivers/net/wireless/b43/main.c +3 -1
Index: wireless-testing/drivers/net/wireless/b43/main.c
===================================================================
@@ -4185,12 +4185,14 @@ static int b43_wireless_core_init(struct
 	if (phy->radio_ver == 0x2050) {
 		if (phy->radio_rev == 6)
 			hf |= B43_HF_4318TSSI;
 		if (phy->radio_rev < 6)
 			hf |= B43_HF_VCORECALC;
 	}
+	if (sprom->boardflags_lo & B43_BFL_XTAL_NOSLOW)
+		hf |= B43_HF_DSCRQ; /* Disable slowclock requests from ucode. */
 	b43_hf_write(dev, hf);
 
 	b43_set_retry_limits(dev, B43_DEFAULT_SHORT_RETRY_LIMIT,
 			     B43_DEFAULT_LONG_RETRY_LIMIT);
 	b43_shm_write16(dev, B43_SHM_SHARED, B43_SHM_SH_SFFBLIM, 3);
 	b43_shm_write16(dev, B43_SHM_SHARED, B43_SHM_SH_LFFBLIM, 2);
@@ -4223,13 +4225,13 @@ static int b43_wireless_core_init(struct
 	if (err)
 		goto err_chip_exit;
 	b43_qos_init(dev);
 	b43_set_synth_pu_delay(dev, 1);
 	b43_bluetooth_coext_enable(dev);
 
-	ssb_bus_powerup(bus, 1);	/* Enable dynamic PCTL */
+	ssb_bus_powerup(bus, !(sprom->boardflags_lo & B43_BFL_XTAL_NOSLOW));
 	b43_upload_card_macaddress(dev);
 	b43_security_init(dev);
 	if (!dev->suspend_in_progress)
 		b43_rng_init(wl);
 
 	b43_set_status(dev, B43_STAT_INITIALIZED);
Signature · 1 line
Greetings, Michael.