Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Sun, 16 Jun 2002 03:40:38 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Sun, 16 Jun 2002 03:40:37 -0400 Received: from mailg.telia.com ([194.22.194.26]:58067 "EHLO mailg.telia.com") by vger.kernel.org with ESMTP id ; Sun, 16 Jun 2002 03:40:35 -0400 To: Linus Torvalds Cc: Patrick Mochel , Tobias Diedrich , Alessandro Suardi , Subject: Re: 2.5.20 - Xircom PCI Cardbus doesn't work In-Reply-To: From: Peter Osterlund Date: 16 Jun 2002 09:40:28 +0200 Message-ID: Lines: 103 User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Linus Torvalds writes: > On Mon, 10 Jun 2002, Patrick Mochel wrote: > > > > Sorry about the delay. Could you please try this patch and let me know if > > it helps? It attempts to treat cardbus more like PCI, and let the PCI > > helpers do the probing. > > Peter, can you just remove this patch from your kernel, I don't know how > to fix it. It does something bad to all the resource allocations. The > child resources don't find the parent any more, and you can see the result > in /proc/iomem and /proc/ioport clearly. The cardbus devices are not seen > as "children" of the cardbus controller any more from a resource > standpoint. > > So can you go back to the setup before applying this patch, and do a > debugging run of that version instead? Sure, with an unpatched 2.5.21 kernel, bringing up eth0 fails during boot. Tobias Diedrich posted a one-line patch that fixes this problem for me: --- linux-2.5.20/drivers/pcmcia/cardbus.c Sat May 25 03:55:22 2002 +++ linux-2.5.20/drivers/pcmcia/cardbus.c Sun Jun 9 02:27:35 2002 @@ -284,6 +284,7 @@ dev->dev.parent = bus->dev; strcpy(dev->dev.name, dev->name); strcpy(dev->dev.bus_id, dev->slot_name); + dev->dev.bus = &pci_bus_type; device_register(&dev->dev); /* FIXME: Do we need to enable the expansion ROM? */ But he said he didn't know if it was the right fix, and noone has commented on that yet. All tests I have done so far with 2.5.21 based kernels produce an oops at shutdown, which makes the machine hang instead of rebooting or powering off. I'm not sure if it's related to cardbus devices though. It could also be caused by the broken cdrom drive in that machine. Turning off swap: Turning off quotas: Unmounting file systems: Unmounting proc file system: Halting system... flushing ide devices: hda <1>Unable to handle kernel NULL pointer dereference at virtual address 00000004 c017aed3 *pde = 00000000 Oops: 0002 CPU: 0 EIP: 0010:[] Not tainted Using defaults from ksymoops -t elf32-i386 -a i386 EFLAGS: 00010202 eax: c02c6d24 ebx: c3ad2000 ecx: 00000000 edx: 00000000 esi: c02c6d0c edi: c0262460 ebp: 00000000 esp: c3ad3e50 ds: 0018 es: 0018 ss: 0018 Stack: c02c6d0c c02c6bb4 00000001 c017b24d c02c6d0c c02c6bb0 c01b03dc c02c6d0c c02c6bb0 c01a9af6 c02c6bb0 c0261f9c 00000000 00000003 bffffcc8 c011e27c c0261f9c 00000003 00000000 00000001 c3ad2000 fee1dead c011e6ce c02a8b88 Call Trace: [] [] [] [] [] [] [] [] [] [] [] [] [] [] Code: 89 4a 04 89 11 89 46 18 89 40 04 8b 43 10 48 89 43 10 8b 43 >>EIP; c017aed3 <===== Trace; c017b24d Trace; c01b03dc Trace; c01a9af6 Trace; c011e27c Trace; c011e6ce Trace; c010fde9 Trace; c011c810 Trace; c011c8a7 Trace; c011cc45 Trace; c011d81d Trace; c01380ea Trace; c0136bc0 Trace; c0136c31 Trace; c0106ee7 Code; c017aed3 00000000 <_EIP>: Code; c017aed3 <===== 0: 89 4a 04 mov %ecx,0x4(%edx) <===== Code; c017aed6 3: 89 11 mov %edx,(%ecx) Code; c017aed8 5: 89 46 18 mov %eax,0x18(%esi) Code; c017aedb 8: 89 40 04 mov %eax,0x4(%eax) Code; c017aede b: 8b 43 10 mov 0x10(%ebx),%eax Code; c017aee1 e: 48 dec %eax Code; c017aee2 f: 89 43 10 mov %eax,0x10(%ebx) Code; c017aee5 12: 8b 43 00 mov 0x0(%ebx),%eax -- Peter Osterlund - petero2@telia.com http://w1.894.telia.com/~u89404340 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/