summaryrefslogtreecommitdiffstats
path: root/sys/dev/pccbb
diff options
context:
space:
mode:
authorimp <imp@FreeBSD.org>2004-04-06 20:13:29 +0000
committerimp <imp@FreeBSD.org>2004-04-06 20:13:29 +0000
commitd531fd6fd2a526e0e840d09b185b5380d5adae24 (patch)
tree4d2717aac868d9d4b1aa9b088162fb625df00f9d /sys/dev/pccbb
parent4383f148019e2c7dc307d6211b616435b0a6b483 (diff)
downloadFreeBSD-src-d531fd6fd2a526e0e840d09b185b5380d5adae24.zip
FreeBSD-src-d531fd6fd2a526e0e840d09b185b5380d5adae24.tar.gz
MFP4: Power up with OE disabled. Similar patches went into NetBSD a
while ago, and it does seem to help at least one card I have and has been in my p4 tree for many months.
Diffstat (limited to 'sys/dev/pccbb')
-rw-r--r--sys/dev/pccbb/pccbb.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/dev/pccbb/pccbb.c b/sys/dev/pccbb/pccbb.c
index 785091a..2139e49 100644
--- a/sys/dev/pccbb/pccbb.c
+++ b/sys/dev/pccbb/pccbb.c
@@ -1339,13 +1339,18 @@ done:;
* detect the voltage for the card, and set it. Since the power
* used is the square of the voltage, lower voltages is a big win
* and what Windows does (and what Microsoft prefers). The MS paper
- * also talks about preferring the CIS entry as well.
+ * also talks about preferring the CIS entry as well. In addition,
+ * we power up with OE disabled. We'll set it later in the power
+ * up sequence.
*/
static int
cbb_do_power(device_t brdev)
{
int voltage;
+ /* Don't enable OE */
+ exca_clrb(&sc->exca, EXCA_PWRCTL, EXCA_PWRCTL_OE);
+
/* Prefer lowest voltage supported */
voltage = cbb_detect_voltage(brdev);
cbb_power(brdev, CARD_OFF);
OpenPOWER on IntegriCloud