Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Mar 2006 09:13:39 -0700 (MST)
From:      "M. Warner Losh" <imp@bsdimp.com>
To:        anderson@centtech.com
Cc:        freebsd-current@freebsd.org
Subject:   Re: Seagate 4GB CF drive in pccard slot won't work
Message-ID:  <20060320.091339.133982805.imp@bsdimp.com>
In-Reply-To: <441ED31B.6030500@centtech.com>
References:  <441EBC32.2070508@centtech.com> <20060320.090409.21564375.imp@bsdimp.com> <441ED31B.6030500@centtech.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In message: <441ED31B.6030500@centtech.com>
            Eric Anderson <anderson@centtech.com> writes:
: M. Warner Losh wrote:
: > In message: <441EBC32.2070508@centtech.com>
: >             Eric Anderson <anderson@centtech.com> writes:
: > : Warner Losh wrote:
: > : >> I'm running the latest 6.1-*, and inserting a cf->pccard reader with a 
: > : >> 4GB seagate cf drive installed gives me these messages:
: > : >>
: > : >> cbb0: ready never happened, status = 0d
: > : >> pcib3: pccard0 requested memory range 0xdfb00000-0xdfbfffff: good
: > : >> pccard0: Card has no functions!
: > : >> cbb0: PC Card card activation failed
: > : >>     
: > : >
: > : > Something bad happened on the way to the forum...  Please set
: > : > hw.cbb.debug=1 and hw.pccard.debug=1 and try again.
: > : >   
: > : 
: > : Here's the latest snippet from /var/log/messages with those two set:
: > : 
: > : Mar 20 08:27:47 neutrino kernel: Status is 0x30001911
: > : Mar 20 08:27:47 neutrino kernel: cbb0: card inserted: event=0x00000000, 
: > : state=30001911
: > : Mar 20 08:27:47 neutrino kernel: pccard0: chip_socket_enable
: > : Mar 20 08:27:47 neutrino kernel: cbb_pcic_socket_enable:
: > : Mar 20 08:27:47 neutrino kernel: cbb0: cbb_power: 2V
: > : Mar 20 08:27:47 neutrino kernel: cbb0: ready never happened, status = 0d
: > : Mar 20 08:27:47 neutrino kernel: pccard0: read_cis
: > : Mar 20 08:27:47 neutrino kernel: pcib3: pccard0 requested memory range 
: > : 0xdfb00000-0xdfbfffff: good
: > : Mar 20 08:27:47 neutrino kernel: pccard0: check_cis_quirks
: > : Mar 20 08:27:47 neutrino kernel: pccard0: Card has no functions!
: > : Mar 20 08:27:47 neutrino kernel: cbb0: PC Card card activation failed
: > : 
: > : 
: > : Anything else I can provide?
: > : 
: > : Also - when inserting this card in the slot, my system freezes for about 
: > : 5-6 seconds.
: >
: > hw.pccard.cis_debug=1 may help.
: >
: > The 2V cbb power looks very wrong, however...
: >
: > Warner
: >   
: 
: Here's what I get with that enabled:
: 
: Mar 20 10:06:16 neutrino kernel: Status is 0x30001911
: Mar 20 10:06:16 neutrino kernel: cbb0: card inserted: event=0x00000000, 
: state=30001911
: Mar 20 10:06:16 neutrino kernel: pccard0: chip_socket_enable
: Mar 20 10:06:16 neutrino kernel: cbb_pcic_socket_enable:
: Mar 20 10:06:16 neutrino kernel: cbb0: cbb_power: 2V
: Mar 20 10:06:16 neutrino kernel: cbb0: ready never happened, status = 0d
: Mar 20 10:06:16 neutrino kernel: pccard0: read_cis
: Mar 20 10:06:16 neutrino kernel: pcib3: pccard0 requested memory range 
: 0xdfb00000-0xdfbfffff: good
: Mar 20 10:06:16 neutrino kernel: cis mem map 0xe7642000 (resource: 
: 0xdfb10000)
: Mar 20 10:06:16 neutrino kernel: pccard0: CIS tuple chain:
: Mar 20 10:06:16 neutrino kernel: CISTPL_END
: Mar 20 10:06:16 neutrino kernel: ff
: Mar 20 10:06:16 neutrino kernel: cis mem map e7642000
: Mar 20 10:06:16 neutrino kernel: CISTPL_LINKTARGET expected, code ff 
: observed
: Mar 20 10:06:16 neutrino kernel: pccard0: check_cis_quirks
: Mar 20 10:06:16 neutrino kernel: pccard0: Card has no functions!
: Mar 20 10:06:16 neutrino kernel: cbb0: PC Card card activation failed
: 
: 
: Thanks for the quick reply!

Based on what you've provided, here's my current theory of the crime:

(1) The card is inserted.
(2) The bridge somehow thinks it is a X.X V card.  It reports this as
    2V in the dmesg because I arbitarily assigned numbers to X and Y.
(3) There's two ways this can happen.  One: is that new cards have been
    released that implement this standard and your bridge is detecting
    it, but either the card or bridge fails to implement it
    correctly.  Two: There is a problem with the bridge's memory
    allocation, so the cbb driver is really talking to something
    else.  Three: the bridge has a bug in detecting X.X V cards and
    they should be ignored.

I'm guessing 'Three' is most likely.  How's your hacking skills?

Warner





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060320.091339.133982805.imp>