Subject: Re: Error with cardbus?
To: None <paul@whooppee.com>
From: Xning Lee <xning@soforge.com>
List: port-i386
Date: 12/11/2006 11:37:01
Paul Goyette <paul@whooppee.com> writes:

> This is on a 1-year old Acer notebook.  Any clue what can be done to
> make this work?
>
> cbb0 at pci1 dev 9 function 0: ENE Technology CB1410 CardBus
> Controller (rev. 0x01)
> cbb0: bad Vcc request. sock_ctrl 0xffffff88, sock_status 0xffffffff
> cbb0: disabling socket
> cbb0: interrupting at ioapic0 pin 22 (irq 10)
> cardslot0 at cbb0 slot 0 flags 0
>

Try the patch:

Index: pccbb.c
===================================================================
RCS file: /usr/src/sys/dev/pci/pccbb.c,v
retrieving revision 1.137
diff -u -r1.137 pccbb.c
--- pccbb.c	16 Nov 2006 01:33:09 -0000	1.137
+++ pccbb.c	21 Nov 2006 02:08:13 -0000
@@ -909,6 +909,10 @@
 	bus_space_write_1(bmt, bmh, 0x800 + PCIC_INTR,
 	    bus_space_read_1(bmt, bmh, 0x800 + PCIC_INTR) & ~PCIC_INTR_RESET);
 
+        /* Redo card voltage interrogation */
+        if (bus_space_read_4(bmt, bmh, CB_SOCKET_STAT) & CB_SOCKET_STAT_BADVCC)
+                bus_space_write_4(bmt, bmh, CB_SOCKET_FORCE, 0x00004000);
+        
 	/* turn off power */
 	pccbb_power((cardbus_chipset_tag_t)sc, CARDBUS_VCC_0V | CARDBUS_VPP_0V);