aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorWarner Losh <imp@FreeBSD.org>2004-04-06 20:13:29 +0000
committerWarner Losh <imp@FreeBSD.org>2004-04-06 20:13:29 +0000
commit1ca203ae4b3dad856802b60c00c48197f33e9793 (patch)
tree4d2717aac868d9d4b1aa9b088162fb625df00f9d /sys
parent6195fb4102afbdfc3da8c0ac2e4cacb0f37d89a9 (diff)
downloadsrc-1ca203ae4b3dad856802b60c00c48197f33e9793.tar.gz
src-1ca203ae4b3dad856802b60c00c48197f33e9793.zip
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.
Notes
Notes: svn path=/head/; revision=127960
Diffstat (limited to 'sys')
-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 785091aa7079..2139e493069d 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);