Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: PCMCIA on 5.0_RC1 not working?
On Sun, 8 Feb 2009, Iain Hibbert wrote:
> On Sat, 7 Feb 2009, Iain Hibbert wrote:
>
> > With a Thinkpad T60 running 5.0_RC1 if I insert a CF card I get:
> >
> > wdc2 at pcmcia0 function 0: <SanDisk, SDP, 5/3 0.6>
> > wdc2: i/o mapped mode
> > atabus2 at wdc2 channel 0
> >
> > but no wd(4) device node is attached..
>
> further to this, I've booted a 4.0_STABLE kernel and get the same thing,
> so its not a recent problem. On the other hand, a 5.0_RC1 kernel on my old
> machine does attach wd1 to the wdc so its not a generic problem.
and further again, PRs kern/32327 and kern/32328 describe the same trouble
with some older Thinkpads, with the suggested fix being to move the RBUS
area to 12-bit memory with
options RBUS_IO_BASE="0xa00" # orig 0x4000
options RBUS_IO_SIZE="0x0ff" # orig 0x2000
which does allow PCMCIA cards to work, but alas inserting a Cardbus card
caused a panic relating to lack of bus space, hrm. This makes me think
perhaps I'm on the right lines and I don't know where the above values
come from but I've enabled a some options:
options PCI_ADDR_FIXUP
options PCI_BUS_FIXUP
options PCI_INTR_FIXUP_DISABLED
these three by themselves made a slight difference in that the pci5 now
shows as "memory space enabled", then
options CBB_DEBUG
options CARDBUS_DEBUG
options CARDSLOT_DEBUG
options RBUS_DEBUG
options PCMCIADEBUG
options PCMCIAVERBOSE
brings a bunch more information. Is it possible to interpret this and work
out what suitable RBUS base/size values might be or do I have to guess?
During boot:
ppb4 at pci0 dev 30 function 0: vendor 0x8086 product 0x2448 (rev. 0xe2)
pci5 at ppb4 bus 5
pci5: i/o space, memory space enabled
cbb0 at pci5 dev 0 function 0: vendor 0x104c product 0xac56 (rev. 0x00)
(chipflags 2)
rbus_new_body: [4000, 6000] type share name [PCI I/O port space]
rbus_new_body: [40000000, ffffffff] type share name [PCI I/O memory space]
cbb0: socket base address 0xe4300000
CardBus latency timer 0xb0 (b0060605)
PCI latency timer 0xa8 (2a808)
pccbb_power: CARDBUS_VCC_0V and CARDBUS_VPP_0V [0x44]
cbb0: cacheline 0x8 lattimer 0xa8
cbb0: bhlc 0x2a808
cbb0: interrupting at ioapic0 pin 16
cardslot0 at cbb0
cardslot0 attaching CardBus bus...
cardbus0 at cardslot0: bus 6
cardslotattach: found cardbus on cardslot0
pcmcia0 at cardslot0
cardslotattach: found 16-bit pcmcia bus
pccbb_pcmcia_card_detect
pccbb_pci_callback: found cardslot
and then when I insert a CF card:
cbb0: 0x00000000 card inserted, 0x30000910
cardslot_event_throw: an event 16-bit Card inserted comes
pccbb_pcmcia_socket_enable: 3V card
pccbb_power: CARDBUS_VCC_0V and CARDBUS_VPP_0V [0x44]
pccbb_power: CARDBUS_VCC_3V and CARDBUS_VPP_VCC [0x11]
pccbb_pcmcia_delay: "pccen1", sleep 201 ms
Powercycling because of socket event
pccbb_pcmcia_delay: "pccen2", sleep 20 ms
rbus_space_alloc: addr 0, size 1000, mask fff, align 1000
pccbb_pcmcia_alloc_mem: addr 0x40000000 size 0x400, realsize 0x1000
pccbb_pcmcia_mem_map window 0 bus 40000000+0+400 at card addr 0
pccbb_pcmcia_do_mem_map: start 0x40000000 end 0x400003ff off 0xc0000000
pccbb_pcmcia_do_mem_map window 0: 0000 0080 0040 40
pcmcia0: CIS version PCMCIA 2.0 or 2.1
pcmcia0: CIS info: SanDisk, SDP, 5/3 0.6
pcmcia0: Manufacturer code 0x45, product 0x401
pcmcia0: function 0: fixed disk(ata), ccr addr 200 mask f
pcmcia0: function 0, config table entry 0: memory card; irq mask 0; memspace
0-7ff; maxtwins 1; mwait_required rdybsy_active powerdown
pcmcia0: function 0, config table entry 1: I/O card; irq mask ffff; iomask 4,
iospace 0-f; memspace 0-7ff; maxtwins 1; rdybsy_active io8 io16 irqshare
irqpulse irqlevel powerdown
pcmcia0: function 0, config table entry 2: I/O card; irq mask 4000; iomask a,
iospace 1f0-1f7 3f6-3f7; memspace 0-7ff; maxtwins 1; rdybsy_active io8 io16
irqshare irqpulse irqlevel powerdown
pcmcia0: function 0, config table entry 3: I/O card; irq mask 4000; iomask a,
iospace 170-177 376-377; memspace 0-7ff; maxtwins 1; rdybsy_active io8 io16
irqshare irqpulse irqlevel powerdown
pcmcia0: function 0, config table entry 7: I/O card; irq mask 4000; iomask a,
iospace 170-177 376-377; memspace 0-7ff; maxtwins 1; rdybsy_active io8 io16
irqshare irqpulse irqlevel powerdown
wdc2 at pcmcia0 function 0: <SanDisk, SDP, 5/3 0.6>
rbus_space_alloc: addr 0, size 10, mask 1f, align 10
rbus: trying [4000:4010] 10
pccbb_pcmcia_io_alloc alloc port 0x4000+0x10
pccbb_pcmcia_io_map window 0 dynamic port 4000+10
pccbb_pcmcia_do_io_map win 0 addr 0x4000 size 0x10 width 0
pccbb_pcmcia_do_io_map start 00 40, stop 0f 40, ioctl 02 enable 40
wdc2: i/o mapped mode
pccbb_intr_establish start. 0x0
pccbb_intr_establish add pil. 0xc2224860
cbb0: pccbb_pcmcia_socket_settype type io 70
rbus_space_alloc: addr 0, size 1000, mask fff, align 1000
pccbb_pcmcia_alloc_mem: addr 0x40000000 size 0x14, realsize 0x1000
pccbb_pcmcia_mem_map window 0 bus 40000000+200+14 at card addr 0
pccbb_pcmcia_do_mem_map: start 0x40000000 end 0x40000213 off 0xc0000000
pccbb_pcmcia_do_mem_map window 0: 0000 0080 0040 40
atabus2 at wdc2 channel 0
pccbb_pcmcia_socket_disable
pccbb_power: CARDBUS_VCC_0V and CARDBUS_VPP_0V [0x44]
pccbb_pcmcia_delay: "pccwr1", sleep 300 ms
pccbb_intr_disestablish start. 0xc2224860
pccbb_intr_disestablish: pil 0xc2224860
pccbb_intr_disestablish frees one pil
pccbb_intr_disestablish frees one pil
pccbb_intr_disestablish: no interrupt handler
iain
Home |
Main Index |
Thread Index |
Old Index