Subject: Re: IBM IDE PC Card -support
To: Michael Lorenz <macallan@netbsd.org>
From: None <pmps@onet.eu>
List: port-i386
Date: 06/20/2006 22:12:35
Hello,
I'm sending extended dmesg output:

 0x00004000

    Vendor Name: Silicon Motion, Inc. (0x126f)
    Device Name: LynxEM+ (0x0712)
    Command register: 0x001f
      I/O space accesses: on
      Memory space accesses: on
      Bus mastering: on
      Special cycles: on
      MWI transactions: on
      Palette snooping: off
      Parity error checking: off
      Address/data stepping: off
      System error (SERR): off
      Fast back-to-back transactions: off
    Status register: 0x0230
      Capability List support: on
      66 MHz capable: on
      User Definable Features (UDF) support: off
      Fast back-to-back capable: off
      Data parity error detected: off
      DEVSEL timing: medium (0x1)
      Slave signaled Target Abort: off
      Master received Target Abort: off
      Master received Master Abort: off
      Asserted System Error (SERR): off
      Parity error detected: off
    Class Name: display (0x03)
    Subclass Name: VGA (0x00)
    Interface: 0x00
    Revision ID: 0xa0
    BIST: 0x00
    Header Type: 0x00 (0x00)
    Latency Timer: 0x40
    Cache Line Size: 0x00

  Type 0 ("normal" device) header:
    0x10: 0xfd000000 0x00000000 0x00000000 0x00000000
    0x20: 0x00000000 0x00000000 0x00000000 0x01aa1014
    0x30: 0x00000000 0x00000040 0x00000000 0x000001ff

    Base address register at 0x10
      type: 32-bit nonprefetchable memory
      base: 0xfd000000, size: 0x01000000
    Base address register at 0x14
      not implemented(?)
    Base address register at 0x18
      not implemented(?)
    Base address register at 0x1c
      not implemented(?)
    Base address register at 0x20
      not implemented(?)
    Base address register at 0x24
      not implemented(?)
    Cardbus CIS Pointer: 0x00000000
    Subsystem vendor ID: 0x1014
    Subsystem ID: 0x01aa
    Expansion ROM Base Address: 0x00000000
    Capability list pointer: 0x40
    Reserved @ 0x38: 0x00000000
    Maximum Latency: 0x00
    Minimum Grant: 0x00
    Interrupt pin: 0x01 (pin A)
    Interrupt line: 0xff

  Capability register at 0x40
    type: 0x01 (Power Management, rev. 1.0)

  Device-dependent header:
    0x40: 0x06010001 0x00000000 0x00000000 0x00000000
    0x50: 0x00000000 0x00000000 0x00000000 0x00000000
    0x60: 0x00000000 0x00000000 0x00000000 0x00000000
    0x70: 0x00000000 0x00000000 0x00000000 0x00000000
    0x80: 0x00000000 0x00000000 0x00000000 0x00000000
    0x90: 0x00000000 0x00000000 0x00000000 0x00000000
    0xa0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xb0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xc0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xd0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xe0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xf0: 0x00000000 0x00000000 0x00000000 0x00000000

    Don't know how to pretty-print device-dependent header.

Silicon Motion, Inc. LynxEM+ (VGA display, revision 0xa0) at ? dev 9 function 0 (tag 0x80004800, intrtag 0x80004800, intrswiz 0, intrpin 0x1, i/o on, mem on, no quirks): Silicon Motion, Inc. LynxEM+ (rev. 0xa0)
wsdisplay0 at vga1 kbdmux 1: console (80x25, dumb emulation)
wsmux1: connecting to wsdisplay0
wsdisplay0: screen 1-7 added (80x25, dumb emulation)
cbb0 at pci0 dev 10 function 0: PCI configuration registers:
  Common header:
    0x00: 0xac1e104c 0x02100007 0x06070000 0x00021000

    Vendor Name: Texas Instruments (0x104c)
    Device Name: PCI1211 PCI-CardBus Bridge (0xac1e)
    Command register: 0x0007
      I/O space accesses: on
      Memory space accesses: on
      Bus mastering: on
      Special cycles: off
      MWI transactions: off
      Palette snooping: off
      Parity error checking: off
      Address/data stepping: off
      System error (SERR): off
      Fast back-to-back transactions: off
    Status register: 0x0210
      Capability List support: on
      66 MHz capable: off
      User Definable Features (UDF) support: off
      Fast back-to-back capable: off
      Data parity error detected: off
      DEVSEL timing: medium (0x1)
      Slave signaled Target Abort: off
      Master received Target Abort: off
      Master received Master Abort: off
      Asserted System Error (SERR): off
      Parity error detected: off
    Class Name: bridge (0x06)
    Subclass Name: CardBus (0x07)
    Interface: 0x00
    Revision ID: 0x00
    BIST: 0x00
    Header Type: 0x02 (0x02)
    Latency Timer: 0x10
    Cache Line Size: 0x00

  Type 2 (PCI-CardBus bridge) header:
    0x10: 0x08000000 0x020000a0 0x20010100 0x00000000
    0x20: 0x00000000 0x00000000 0x00000000 0x00000000
    0x30: 0x00000000 0x00000000 0x00000000 0x07c00109
    0x40: 0x019a1014 0x000003e1

    Base address register at 0x10 (CardBus socket/ExCA registers)
      type: 32-bit nonprefetchable memory
      base: 0x08000000, size: 0x00001000
    Capability list pointer: 0xa0
    Secondary status register: 0x0200
      66 MHz capable: off
      User Definable Features (UDF) support: off
      Fast back-to-back capable: off
      Data parity error detection: off
      DEVSEL timing: medium (0x1)
      PCI target aborts terminate CardBus bus master transactions: off
      CardBus target aborts terminate PCI bus master transactions: off
      Bus initiator aborts terminate initiator transactions: off
      System error: off
      Parity error: off
    PCI bus number: 0x00
    CardBus bus number: 0x01
    Subordinate bus number: 0x01
    CardBus latency timer: 0x20
    CardBus memory region 0:
      base register:  0x00000000
      limit register: 0x00000000
    CardBus memory region 1:
      base register:  0x00000000
      limit register: 0x00000000
    CardBus I/O region 0:
      base register:  0x00000000
      limit register: 0x00000000
    CardBus I/O region 1:
      base register:  0x00000000
      limit register: 0x00000000
    Interrupt line: 0x09
    Interrupt pin: 0x01 (pin A)
    Bridge control register: 0x07c0
      Parity error response: off
      CardBus SERR forwarding: off
      ISA enable: off
      VGA enable: off
      CardBus master abort reporting: off
      CardBus reset: on
      Functional interrupts routed by ExCA registers: on
      Memory window 0 prefetchable: on
      Memory window 1 prefetchable: on
      Write posting enable: on
    Subsystem vendor ID: 0x1014
    Subsystem ID: 0x019a
    Base address register at 0x44 (legacy-mode registers)
      type: 32-bit i/o
      base: 0x000003e0, size: 0x00000004

  Capability register at 0xa0
    type: 0x01 (Power Management, rev. 1.0)

  Device-dependent header:
    0x48: 0x00000000 0x00000000
    0x50: 0x00000000 0x00000000 0x00000000 0x00000000
    0x60: 0x00000000 0x00000000 0x00000000 0x00000000
    0x70: 0x00000000 0x00000000 0x00000000 0x00000000
    0x80: 0x00649060 0x00000000 0x00000000 0x012c1272
    0x90: 0x616482c0 0x00000000 0x00000000 0x00000000
    0xa0: 0x7e210001 0x00c08000 0x00000801 0x0000001f
    0xb0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xc0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xd0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xe0: 0x00000000 0x00000000 0x00000000 0x00000000
    0xf0: 0x00000000 0x00000000 0x00000000 0x00000000

    Don't know how to pretty-print device-dependent header.

Texas Instruments PCI1211 PCI-CardBus Bridge (CardBus bridge) at ? dev 10 function 0 (tag 0x80005000, intrtag 0x80005000, intrswiz 0, intrpin 0x1, i/o on, mem on, no quirks): Texas Instruments PCI1211 PCI-CardBus Bridge (rev. 0x00)
clct0 at pci0 dev 11 function 0: PCI configuration registers:
  Common header:
    0x00: 0x60051013 0x02100006 0x04010001 0x00004000

    Vendor Name: Cirrus Logic (0x1013)
    Device Name: CS4281 CrystalClear Audio Interface (0x6005)
    Command register: 0x0006
      I/O space accesses: off
      Memory space accesses: on
      Bus mastering: on
      Special cycles: off
      MWI transactions: off
      Palette snooping: off
      Parity error checking: off
      Address/data stepping: off
      System error (SERR): off
      Fast back-to-back transactions: off
    Status register: 0x0210
      Capability List support: on
      66 MHz capable: off
      User Definable Features (UDF) support: off
      Fast back-to-back capable: off
      Data parity error detected: off
      DEVSEL timing: medium (0x1)
      Slave signaled Target Abort: off
      Master received Target Abort: off
      Master received Master Abort: off
      Asserted System Error (SERR): off
      Parity error detected: off
    Class Name: multimedia (0x04)
    Subclass Name: audio (0x01)
    Interface: 0x00
    Revision ID: 0x01
    BIST: 0x00
    Header Type: 0x00 (0x00)
    Latency Timer: 0x40
    Cache Line Size: 0x00

  Type 0 ("normal" device) header:
    0x10: 0xfc010000 0xfc000000 0x00000000 0x00000000
    0x20: 0x00000000 0x00000000 0x00000000 0x01a91014
    0x30: 0x00000000 0x00000040 0x00000000 0x1804010a

    Base address register at 0x10
      type: 32-bit nonprefetchable memory
      base: 0xfc010000, size: 0x00001000
    Base address register at 0x14
      type: 32-bit nonprefetchable memory
      base: 0xfc000000, size: 0x00010000
    Base address register at 0x18
      not implemented(?)
    Base address register at 0x1c
      not implemented(?)
    Base address register at 0x20
      not implemented(?)
    Base address register at 0x24
      not implemented(?)
    Cardbus CIS Pointer: 0x00000000
    Subsystem vendor ID: 0x1014
    Subsystem ID: 0x01a9
    Expansion ROM Base Address: 0x00000000
    Capability list pointer: 0x40
    Reserved @ 0x38: 0x00000000
    Maximum Latency: 0x18
    Minimum Grant: 0x04
    Interrupt pin: 0x01 (pin A)
    Interrupt line: 0x0a

  Capability register at 0x40
    type: 0x01 (Power Management, rev. 1.0)

  Device-dependent header:
    0x40: 0x7e220001 0x00008000 0x00008000 0x00008000
    0x50: 0x00008000 0x00008000 0x00008000 0x00008000
    0x60: 0x00008000 0x00008000 0x00008000 0x00008000
    0x70: 0x00008000 0x00008000 0x00008000 0x00008000
    0x80: 0x00008000 0x00008000 0x00008000 0x00008000
    0x90: 0x00008000 0x00008000 0x00008000 0x00008000
    0xa0: 0x00008000 0x00008000 0x00008000 0x00008000
    0xb0: 0x00008000 0x00008000 0x00008000 0x00008000
    0xc0: 0x00008000 0x00008000 0x00008000 0x00008000
    0xd0: 0x00008000 0x00008000 0x00008000 0x00008000
    0xe0: 0x00000000 0x00000000 0x00000004 0x00000005
    0xf0: 0x00000001 0x00000000 0x00000000 0x01a91014

    Don't know how to pretty-print device-dependent header.

Cirrus Logic CS4281 CrystalClear Audio Interface (audio multimedia, revision 0x01) at ? dev 11 function 0 (tag 0x80005800, intrtag 0x80005800, intrswiz 0, intrpin 0x1, i/o off, mem on, no quirks): Cirrus Logic CS4281 CrystalClear Audio Interface (rev. 0x01)
clct0: interrupting at irq 10
clct0: ac97: Crystal CS4297A codec; headphone, 20 bit DAC, 18 bit ADC, Crystal Semi 3D
clct0: ac97: ext id 200<AMAP>
audio0 at clct0: full duplex, independent
Lucent Technologies LTMODEM (miscellaneous communications, revision 0x01) at pci0 dev 12 function 0: PCI configuration registers:
  Common header:
    0x00: 0x044911c1 0x02900007 0x07800001 0x00000000

    Vendor Name: Lucent Technologies (0x11c1)
    Device Name: LTMODEM (0x0449)
    Command register: 0x0007
      I/O space accesses: on
      Memory space accesses: on
      Bus mastering: on
      Special cycles: off
      MWI transactions: off
      Palette snooping: off
      Parity error checking: off
      Address/data stepping: off
      System error (SERR): off
      Fast back-to-back transactions: off
    Status register: 0x0290
      Capability List support: on
      66 MHz capable: off
      User Definable Features (UDF) support: off
      Fast back-to-back capable: on
      Data parity error detected: off
      DEVSEL timing: medium (0x1)
      Slave signaled Target Abort: off
      Master received Target Abort: off
      Master received Master Abort: off
      Asserted System Error (SERR): off
      Parity error detected: off
    Class Name: communications (0x07)
    Subclass Name: miscellaneous (0x80)
    Interface: 0x00
    Revision ID: 0x01
    BIST: 0x00
    Header Type: 0x00 (0x00)
    Latency Timer: 0x00
    Cache Line Size: 0x00

  Type 0 ("normal" device) header:
    0x10: 0xfc011000 0x000002e9 0x00001001 0x00000000
    0x20: 0x00000000 0x00000000 0x00000040 0x04401436
    0x30: 0x00000000 0x000000f8 0x00000000 0x0efc010b

    Base address register at 0x10
      type: 32-bit nonprefetchable memory
      base: 0xfc011000, size: 0x00000100
    Base address register at 0x14
      type: 32-bit i/o
      base: 0x000002e8, size: 0x00000008
    Base address register at 0x18
      type: 32-bit i/o
      base: 0x00001000, size: 0x00000100
    Base address register at 0x1c
      not implemented(?)
    Base address register at 0x20
      not implemented(?)
    Base address register at 0x24
      not implemented(?)
    Cardbus CIS Pointer: 0x00000040
    Subsystem vendor ID: 0x1436
    Subsystem ID: 0x0440
    Expansion ROM Base Address: 0x00000000
    Capability list pointer: 0xf8
    Reserved @ 0x38: 0x00000000
    Maximum Latency: 0x0e
    Minimum Grant: 0xfc
    Interrupt pin: 0x01 (pin A)
    Interrupt line: 0x0b

  Capability register at 0xf8
    type: 0x01 (Power Management, rev. 1.0)

  Device-dependent header:
    0x40: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0x50: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0x60: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0x70: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0x80: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0x90: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0xa0: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0xb0: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0xc0: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0xd0: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0xe0: 0xffffffff 0xffffffff 0xffffffff 0xffffffff
    0xf0: 0xffffffff 0xffffffff 0xe4220001 0x00000000

    Don't know how to pretty-print device-dependent header.

Lucent Technologies LTMODEM (miscellaneous communications, revision 0x01) at pci0 dev 12 function 0 (tag 0x80006000, intrtag 0x80006000, intrswiz 0, intrpin 0x1, i/o on, mem on, no quirks) not configured
cbb0: interrupting at irq 9
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 1 device 0
pcmcia0 at cardslot0
isa0 at mainbus0
lpt2 at isa0 port 0x3bc-0x3bf irq : polled
com2 at isa0 port 0x3e8-0x3ef irq 5: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: PC speaker
sysbeep0 at pcppi0
isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
npx0 at isa0 port 0xf0-0xff: using exception 16
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
isapnp0: no ISA Plug 'n Play devices found
apm0 at mainbus0: Power Management spec V1.2
Kernelized RAIDframe activated
wd0 at atabus0 drive 0: <IBM-DARA-212000>
wd0: drive supports 16-sector PIO transfers, LBA addressing
wd0: 11509 MB, 24944 cyl, 15 head, 63 sec, 512 bytes/sect x 23572080 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 4 (Ultra/66)
wd0(piixide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
pcmcia0: CIS version PCMCIA 2.0 or 2.1
pcmcia0: CIS info: PCMCIA, IDE CARD, F1
pcmcia0: Manufacturer code 0xffffffff, product 0xffffffff
pcmcia0: function 0: unspecified, ccr addr 100 mask 3
pcmcia0: function 0, config table entry 1: I/O card; irq mask deb8; iomask a, iospace 320-32f; mwait_required io16 irqlevel
pcmcia0: function 0, config table entry 2: I/O card; irq mask deb8; iomask a, iospace 340-34f; mwait_required io16 irqlevel
pcmcia0: function 0, config table entry 3: I/O card; irq mask deb8; iomask a, iospace 360-36f; mwait_required io16 irqlevel
PCMCIA, IDE CARD, F1 (manufacturer 0xffffffff, product 0xffffffff) at pcmcia0,  function 0 not configured
umass0 at uhub0 port 1 configuration 1 interface 0
umass0: LEXR PLUG DRIVE LEXR PLUG DRIVE, rev 1.10/0.01, addr 2
umass0: using SCSI over Bulk-Only
scsibus0 at umass0: 2 targets, 1 lun per target
sd0 at scsibus0 target 0 lun 0: <LEXAR, DIGITAL FILM, /W1.> disk removable
sd0: 123 MB, 984 cyl, 8 head, 32 sec, 512 bytes/sect x 251904 sectors

Thanks and Cheers...

Michael Lorenz <macallan@netbsd.org>:
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>Hello,
>
>The problem is here:
>
>> cbb0: interrupting at irq 9
>> cardslot0 at cbb0 slot 0 flags 0
>> cardbus0 at cardslot0: bus 1 device 0
>> pcmcia0 at cardslot0
>
>> pcmcia0 function 0: <PCMCIA, IDE CARD, F1> (manufacturer 0xffffffff, 
>> product 0xffffffff)
>>  not configured
>
>So for some reason the PCMCIA code failed to read manufacturer and 
>product ID from your card and that's most likely the reason why it 
>didn't attach. Maybe hosed CIS data, who knows.
>Please add a few lines to your kernel config:
>
>options PCMCIADEBUG
>options PCMCIACISDEBUG
>
>and build a new kernel.
>
>This will result in a lot more output when identifying the card, 
>hopefully it will show why it wasn't identified properly.
>
>have fun
>Michael
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG v1.2.4 (Darwin)
>
>iQEVAwUBRJb6WMpnzkX8Yg2nAQJhjAgAmp9UP7mRgvfMHoaVqHLrZwayFvfpJoZq
>Jv1CV1kaRJRwojmTpWsYuwoaduAq1Y92bglDY2ak2oGddGVAuYpbRxrc/vIKFluO
>jNPFqmEMBNjyn6qK0QLBa/+zuwe6vIreQc36jFCrd46J2FyPbLahE2DhEdeBW0Xh
>SkXuzy6NsJVhjXBrMqVN/VGabvtF+OEPZ+TFjqutTXn19tUWnvQcRTqiGY4aE2+z
>2dM9Xwh0Wb2DuVO/AyCLW7VDl2uNzHocTEvgLfov/9b8rPpf0ILh82fGU9BpYdUn
>lwSQM8sWN3USsqvCzwAqLuohYfsDALRlRDF/dVKOd9NO5S3nBTuKIg==
>=2TW1
>-----END PGP SIGNATURE-----
>