Date: Mon, 27 Aug 2001 01:49:28 -0700 From: Peter Wemm <peter@wemm.org> To: Jonathan Chen <jon@FreeBSD.org> Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/cardbus cardbus.c cardbus_cis.c cardbus_cis.h cardbusvar.h src/sys/dev/pccard card_if.m pccard.c pccardvar.h src/sys/dev/pccbb pccbb.c pccbbvar.h src/sys/sys rman.h Message-ID: <20010827084928.A1E743807@overcee.netplex.com.au> In-Reply-To: <200108270009.f7R09gZ76333@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Jonathan Chen wrote: > Modified files: > sys/dev/cardbus cardbus.c cardbus_cis.c cardbus_cis.h > cardbusvar.h > sys/dev/pccard card_if.m pccard.c pccardvar.h > sys/dev/pccbb pccbb.c pccbbvar.h > sys/sys rman.h > Log: > Part two of this NEWCARD update: > > Briefly, the significant changes include: > * Way better resource management in pccbb, pccard and cardbus. > * pccard hot-removal now appears to work. > * support pre-fetchable memory in cardbus. > * update cardbus to support new pci bus interface functions. > * Fix CIS reading to no longer use rman_get_virtual(). > > What's not there, but in the works: > * pccard needs to do interrupt properly and not read the ISR on single > function cards. > * real resource management for pccard > * a complete implementation of CIS parsing > * need to look into how to correctly use mutex in pccbb Also: * fix it so that it works again :-( For starters: - Undefined function: pccard_lookup_product(). pccardvar.h prototypes this as extern, but it has been made static inside pccard.c and gcc complains about the conflicting declarations. All our pccard drivers currently use this function. - It fails to find any cards on my machine: ... pccbb0: <RF5C478 PCI-CardBus Bridge> at device 12.0 on pci0 pccbb0: PCI Memory allocated: 00000000 acpi_pcib0: matched entry for 0.12.INTA (source \\_SB_.LNKA) acpi_pcib0: device is routed to IRQ 9 cardbus0: <Cardbus bus (newcard)> on pccbb0 pccard0: <16-bit PCCard bus> on pccbb0 pccbb1: <RF5C478 PCI-CardBus Bridge> at device 12.1 on pci0 pccbb1: PCI Memory allocated: 00001000 acpi_pcib0: matched entry for 0.12.INTB (source \\_SB_.LNKB) acpi_pcib0: device is routed to IRQ 9 cardbus1: <Cardbus bus (newcard)> on pccbb1 pccard1: <16-bit PCCard bus> on pccbb1 ... cardbus0: detach_card: no card to detach! pccbb0: pccbb_power: CARD_VCC_0V and CARD_VPP_0V [44] pccbb0: bad Vcc request. ctrl=0xf000ff00, status=0xf000e2c3 pccbb_power: CARD_VCC_0V and CARD_VPP_0V [44] cardbus1: detach_card: no card to detach! pccbb1: pccbb_power: CARD_VCC_0V and CARD_VPP_0V [44] ... and that's it. No insert/remove events, no power light, nothing. Note: 'bad Vcc request.'. Also note: pccbb0: PCI Memory allocated: 00000000 and pccbb1: PCI Memory allocated: 00001000. This is worrying. It used to work: pccbb0: <RF5C478 PCI-CardBus Bridge> at device 12.0 on pci0 pccbb0: PCI Memory allocated: 44000000 acpi_pcib0: matched entry for 0.12.INTA (source \\_SB_.LNKA) acpi_pcib0: device is routed to IRQ 9 cardbus0: <Cardbus bus (newcard)> on pccbb0 pccard0: <16-bit PCCard bus> on pccbb0 pccbb1: <RF5C478 PCI-CardBus Bridge> at device 12.1 on pci0 pccbb1: PCI Memory allocated: 44001000 acpi_pcib0: matched entry for 0.12.INTB (source \\_SB_.LNKB) acpi_pcib0: device is routed to IRQ 9 cardbus1: <Cardbus bus (newcard)> on pccbb1 pccard1: <16-bit PCCard bus> on pccbb1 ... pccbb0: card inserted: event=0x00000000, state=30000410 pccard0: chip_socket_enable pccbb_pcic_socket_enable: pccbb0: pccbb_power: CARD_VCC_0V and CARD_VPP_0V [44] pccbb0: pccbb_power: CARD_VCC_5V and CARD_VPP_VCC [15] pccbb0: pccbb_pcic_wait_ready: status 0x6f pccbb0: card type is mem pccard0: read_cis pccbb_pcic_mem_map window 0 bus 44002000+400+bbffe000 card addr 0 pccbb_pcic_do_mem_map window 0: 8002 8002 3ffe 44 (44002000+00000400.00001000*bbffe000) pccbb_pcic_do_mem_map window 0: 8002 8002 7ffe 44 (44002000+00000400.00001000*bbffe000) cis mem map c95c9000 pccard0: CIS tuple chain: CISTPL_DEVICE type=null speed=null 01 03 00 00 ff CISTPL_DEVICE_A type=sram speed=ext 17 04 67 5a 08 ff unhandled CISTPL 1d 1d 05 01 67 5a 08 ff CISTPL_VERS_1 15 50 05 00 4c 75 63 65 6e 74 20 54 65 63 68 6e 6f 6c 6f 67 69 65 73 00 57 61 76 65 4c 41 4e 2f 49 45 45 45 00 56 65 72 73 69 6f 6e 20 30 31 2e 30 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff CISTPL_MANFID 20 04 56 01 02 00 CISTPL_FUNCID 21 02 06 00 unhandled CISTPL 22 22 02 01 07 unhandled CISTPL 22 22 05 02 40 42 0f 00 unhandled CISTPL 22 22 05 02 80 84 1e 00 unhandled CISTPL 22 22 05 02 60 ec 53 00 unhandled CISTPL 22 22 05 02 c0 d8 a7 00 unhandled CISTPL 22 22 02 03 07 unhandled CISTPL 22 22 08 04 06 00 60 1d f0 d5 86 unhandled CISTPL 22 22 02 05 01 CISTPL_CONFIG 1a 07 03 01 e0 03 00 00 01 CISTPL_CFTABLE_ENTRY 1b 0f c1 01 19 76 c5 4b d5 19 36 36 05 46 7f ff ff CISTPL_END ff pccard0: check_cis_quirks pccard0: CIS version PC Card Standard 5.0 pccard0: CIS info: Lucent Technologies, WaveLAN/IEEE, Version 01.01, pccard0: Manufacturer code 0x156, product 0x2 pccard0: function 0: network adapter, ccr addr 3e0 mask 1 pccard0: function 0, config table entry 1: I/O card; irq mask ffff; iomask 6, iospace 0-3f; rdybsy_active wp_active bvd_active io16 irqpulse irqlevel pccard0: functions scanning pccbb_pcic_socket_enable: pccbb0: pccbb_power: CARD_VCC_0V and CARD_VPP_0V [44] pccbb0: pccbb_power: CARD_VCC_5V and CARD_VPP_VCC [15] pccbb0: pccbb_pcic_wait_ready: status 0x6f pccbb0: card type is io pccard0: ++enabled_count = 1 pccbb_pcic_mem_map window 0 bus 44002000+400+bbffe000 card addr 0 pccbb_pcic_do_mem_map window 0: 8002 8002 3ffe 44 (44002000+00000400.00001000*bbffe000) pccard0: ccr_res == 44002000-440023ff, base=3e0 pccbb_pcic_do_mem_map window 0: 8002 8002 7ffe 44 (44002000+00000400.00001000*bbffe000) pccbb_pcic_do_mem_map window 0: 8002 8002 7ffe 44 (44002000+00000400.00001000*bbffe000) pccard0: function 0 CCR at 0 offset 3e0: 41 80 22 ff, ff ff ff ff, ff wi0: <WaveLAN/IEEE> at port 0x100-0x13f irq 9 function 0 config 1 on pccard0 pccbb_pcic_io_map window 0 auto port 100+40 pccbb_pcic_do_io_map window 0: 0100 013f (00000100+00000040) wi0: found Lucent chip pccbb_pcic_io_map window 0 auto port 100+40 pccbb_pcic_do_io_map window 0: 0100 013f (00000100+00000040) wi0: Ethernet address: 00:60:1d:f0:d5:86 wi0: wi_generic_attach:wi_has_wep = 1 bpf: wi0 attached pccard0: function 0 CCR at 0 offset 3e0: 45 80 22 ff, ff ff ff ff, ff cardbus1: Detaching card: no cards to detach! pccbb1: pccbb_power: CARD_VCC_0V and CARD_VPP_0V [44] Cheers, -Peter -- Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au "All of this is for nothing if we don't go to the stars" - JMS/B5 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010827084928.A1E743807>