From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: Problem with Avermedia 771 Date: Wed, 20 Oct 2004 15:06:38 +0200 Sender: alsa-devel-admin@lists.sourceforge.net Message-ID: References: <416ED29A.7060200@qanu.de> <20041015101119.GH3866@bytesex> <20041018130114.GA5476@bytesex> <20041019161340.GA12001@bytesex> Mime-Version: 1.0 (generated by SEMI 1.14.5 - "Awara-Onsen") Content-Type: text/plain; charset=US-ASCII Return-path: In-Reply-To: <20041019161340.GA12001@bytesex> Errors-To: alsa-devel-admin@lists.sourceforge.net List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , List-Archive: To: Gerd Knorr Cc: Jaroslav Kysela , Holger Waechtler , dvb list , alsa-devel@lists.sourceforge.net List-Id: alsa-devel@alsa-project.org At Tue, 19 Oct 2004 18:13:40 +0200, Gerd Knorr wrote: > > > > (1) The ones where you can get audio data out of PCI function .1 > > > > (4) Cards where PCI function .1 is simply unused, i.e. you get either > > > nothing or just noise if you try to record audio from there. > > > > I think the alsa driver should only try to use cards which fall into > > > group (1), not everything but (2). Problem with that is that it simply > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > > isn't known for most cards whenever they are in group (1) or (4). > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > > I see the device list in drivers/media/video/bttv-cards.c as mentioned > > in Gerd's original post. Which ones can be as the white list entries > > for ALSA? > > Well, the problem is that no such list exists right now, I didn't keep > track of whenever Function .1 can do audio or not in bttvs card database > because bttv doesn't care, it does video only ... Ok. > So we'll have to build a whitelist from scratch from user feedback, and > maybe add a insmod option so you can ask the driver to grab the device > even if not whitelisted for easy use. We have some options for this kind of behavior: 1. the driver has one pci_driver struct, and its pci_id array includes the default entries (with PCI_ANY_ID for subsystem ids). In this case, the driver checks the pci id in probe and rejects unless it's in the whitelist or a specific module option is given. 2. the driver has two pci_driver structs, one only with whitelist and one with the whitelist and the default entries. In init code, the driver registers the corresponding pci_driver record according to the module option. In this case, the driver accepts all. But which table should be exported via MODULE_DEVICE_TABLE? I think 1 is the better way but my concern is about the hotplug. Can this mechanism work with hotplug properly? I guess yes, but didn't take a look at any example yet... Takashi ------------------------------------------------------- This SF.net email is sponsored by: IT Product Guide on ITManagersJournal Use IT products in your business? Tell us what you think of them. Give us Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more http://productguide.itmanagersjournal.com/guidepromo.tmpl