Am Montag, 10. Oktober 2005 14:48 schrieben Sie: >Rolf Eike Beer wrote: >>IIRC the call to pci_enable_device() must be the first thing you do. This >> will do the things like assigning memory regions to the device and so on. > >I fixed this one > >>Returning 0 in error cases is just wrong. And you free the assignments even >> in case of success AFAICS. Try the return I introduced above and see what >> happens. > >I fixed this one too .. > > >I have fixed most of the stuff, it is partly working, not ready yet as >there are some more things to be added to .. >I have attached what i was working on. If the kmalloc() fails in mantis_pci_probe() you don't call pci_disable_device(). And you should kzalloc() instead of kmalloc() and memset(). It looks like you never use "__u16 vendor_id;" and "__u16 device_id;" in struct mantis_pci. Eike