Index: alsa-driver/acore/memalloc.c =================================================================== RCS file: /suse/tiwai/cvs/alsa/alsa-driver/acore/memalloc.c,v retrieving revision 1.3 diff -u -r1.3 memalloc.c --- alsa-driver/acore/memalloc.c 3 Mar 2003 11:12:15 -0000 1.3 +++ alsa-driver/acore/memalloc.c 4 Mar 2003 09:47:42 -0000 @@ -10,6 +10,21 @@ #include "config.h" #include "adriver.h" +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,3,0) && defined(CONFIG_PROC_FS) +#include +static inline struct proc_dir_entry *create_proc_read_entry(const char *name, + mode_t mode, struct proc_dir_entry *base, + read_proc_t *read_proc, void * data) +{ + struct proc_dir_entry *res=create_proc_entry(name,mode,base); + if (res) { + res->read_proc=read_proc; + res->data=data; + } + return res; +} +#endif + #include "../alsa-kernel/core/memalloc.c" /* compatible functions */ @@ -29,6 +44,7 @@ EXPORT_SYMBOL(snd_pci_compat_set_dma_mask); EXPORT_SYMBOL(snd_pci_compat_get_driver_data); EXPORT_SYMBOL(snd_pci_compat_set_driver_data); +EXPORT_SYMBOL(snd_pci_compat_get_pci_driver); #endif #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 4, 19) Index: alsa-driver/acore/memory_wrapper.c =================================================================== RCS file: /suse/tiwai/cvs/alsa/alsa-driver/acore/memory_wrapper.c,v retrieving revision 1.3 diff -u -r1.3 memory_wrapper.c --- alsa-driver/acore/memory_wrapper.c 3 Mar 2003 11:12:15 -0000 1.3 +++ alsa-driver/acore/memory_wrapper.c 4 Mar 2003 13:31:50 -0000 @@ -14,6 +14,8 @@ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 4, 0) #include "../alsa-kernel/core/memory_wrapper.c" #else +#include +#include #include "pci_compat_22.c" #endif Index: alsa-driver/acore/misc.c =================================================================== RCS file: /suse/tiwai/cvs/alsa/alsa-driver/acore/misc.c,v retrieving revision 1.19 diff -u -r1.19 misc.c --- alsa-driver/acore/misc.c 28 Feb 2003 14:12:15 -0000 1.19 +++ alsa-driver/acore/misc.c 4 Mar 2003 09:49:45 -0000 @@ -91,16 +91,16 @@ switch (rqst) { case PM_SUSPEND: pci_for_each_dev(dev) { - struct pci_driver_mapping *map = get_pci_driver_mapping(dev); - if (map && map->drv && map->drv->suspend) - map->drv->suspend(dev); + struct pci_driver *drv = snd_pci_compat_get_pci_driver(dev); + if (drv && drv->suspend) + drv->suspend(dev); } break; case PM_RESUME: pci_for_each_dev(dev) { - struct pci_driver_mapping *map = get_pci_driver_mapping(dev); - if (map && map->drv && map->drv->resume) - map->drv->resume(dev); + struct pci_driver *drv = snd_pci_compat_get_pci_driver(dev); + if (drv && drv->resume) + drv->resume(dev); } break; } Index: alsa-driver/acore/pci_compat_22.c =================================================================== RCS file: /suse/tiwai/cvs/alsa/alsa-driver/acore/pci_compat_22.c,v retrieving revision 1.2 diff -u -r1.2 pci_compat_22.c --- alsa-driver/acore/pci_compat_22.c 3 Mar 2003 11:12:15 -0000 1.2 +++ alsa-driver/acore/pci_compat_22.c 4 Mar 2003 09:47:09 -0000 @@ -25,6 +25,14 @@ return NULL; } +struct pci_driver *snd_pci_compat_get_pci_driver(struct pci_dev *dev) +{ + struct pci_driver_mapping *map = get_pci_driver_mapping(dev); + if (map) + return map->drv; + return NULL; +} + void * snd_pci_compat_get_driver_data (struct pci_dev *dev) { struct pci_driver_mapping *map = get_pci_driver_mapping(dev); Index: alsa-driver/include/compat_22.h =================================================================== RCS file: /suse/tiwai/cvs/alsa/alsa-driver/include/compat_22.h,v retrieving revision 1.36 diff -u -r1.36 compat_22.h --- alsa-driver/include/compat_22.h 19 Dec 2002 15:53:08 -0000 1.36 +++ alsa-driver/include/compat_22.h 4 Mar 2003 09:48:33 -0000 @@ -271,6 +271,7 @@ const struct pci_device_id * snd_pci_compat_match_device(const struct pci_device_id *ids, struct pci_dev *dev); int snd_pci_compat_register_driver(struct pci_driver *drv); void snd_pci_compat_unregister_driver(struct pci_driver *drv); +struct pci_driver *snd_pci_compat_get_pci_driver(struct pci_dev *dev); unsigned long snd_pci_compat_get_size (struct pci_dev *dev, int n_base); int snd_pci_compat_get_flags (struct pci_dev *dev, int n_base); int snd_pci_compat_set_power_state(struct pci_dev *dev, int new_state);