[alsa-devel] limitations on number of alsa controls for a card
Hi,
Is there any limitation on maximum number of controls we can have.
I had some platform side controls to represent DSP and adding them made some of codec controls to vanish. And looks like if I register these platform controls not all codec controls are visible in userpsace. Is there nay max limit I am hitting?
On Wed, Oct 31, 2012 at 07:37:31PM +0530, Vinod Koul wrote:
Is there any limitation on maximum number of controls we can have.
I had some platform side controls to represent DSP and adding them made some of codec controls to vanish. And looks like if I register these platform controls not all codec controls are visible in userpsace. Is there nay max limit I am hitting?
Not that I'm aware of beyond sizeof() type stuff which you're probably still a way away from. How are you listing the controls and are there any name collisons?
On Thu, 2012-11-01 at 14:25 +0000, Mark Brown wrote:
On Wed, Oct 31, 2012 at 07:37:31PM +0530, Vinod Koul wrote:
Is there any limitation on maximum number of controls we can have.
I had some platform side controls to represent DSP and adding them made some of codec controls to vanish. And looks like if I register these platform controls not all codec controls are visible in userpsace. Is there nay max limit I am hitting?
Not that I'm aware of beyond sizeof() type stuff which you're probably still a way away from. How are you listing the controls and are there any name collisons?
alsa_amixer -c"cardname" controls
if there isn't anything in kernel which limits this, would there be something in alsa-lib to have this kind of behavior?
2012/11/1 Vinod Koul vinod.koul@linux.intel.com:
On Thu, 2012-11-01 at 14:25 +0000, Mark Brown wrote:
On Wed, Oct 31, 2012 at 07:37:31PM +0530, Vinod Koul wrote:
Is there any limitation on maximum number of controls we can have.
Not that I'm aware of beyond sizeof() type stuff which you're probably still a way away from.
At least, for USB devices there's a maximum for logical mixer channels (currently, MAX_CHANNELS = 16). This might feel like a limit for the number of mixer controls depending on the respective mixer topoplogy. MAX_CHANNELS can't be raised deliberately in the current code since it is used for some bitshifting. I don't know if something similar exists for PCI devices
2012-11-1 下午11:01 於 "Vinod Koul" vinod.koul@linux.intel.com 寫道:
On Thu, 2012-11-01 at 14:25 +0000, Mark Brown wrote:
On Wed, Oct 31, 2012 at 07:37:31PM +0530, Vinod Koul wrote:
Is there any limitation on maximum number of controls we can have.
I had some platform side controls to represent DSP and adding them
made
some of codec controls to vanish. And looks like if I register these platform controls not all codec controls are visible in userpsace. Is there nay max limit I am hitting?
Not that I'm aware of beyond sizeof() type stuff which you're probably still a way away from. How are you listing the controls and are there any name collisons?
alsa_amixer -c"cardname" controls
if there isn't anything in kernel which limits this, would there be something in alsa-lib to have this kind of behavior?
--
those inactive controls are not listed by amixer
try alsactl store -f foo.state
At Thu, 01 Nov 2012 20:16:51 +0530, Vinod Koul wrote:
On Thu, 2012-11-01 at 14:25 +0000, Mark Brown wrote:
On Wed, Oct 31, 2012 at 07:37:31PM +0530, Vinod Koul wrote:
Is there any limitation on maximum number of controls we can have.
I had some platform side controls to represent DSP and adding them made some of codec controls to vanish. And looks like if I register these platform controls not all codec controls are visible in userpsace. Is there nay max limit I am hitting?
Not that I'm aware of beyond sizeof() type stuff which you're probably still a way away from. How are you listing the controls and are there any name collisons?
alsa_amixer -c"cardname" controls
Better to use alsactl for obtaining the list of raw control elements.
if there isn't anything in kernel which limits this, would there be something in alsa-lib to have this kind of behavior?
In most cases, such a problem is a driver bug, e.g. creating control elements conflicting with each other for the mixer abstraction.
Takashi
participants (5)
-
Felix Homann
-
Mark Brown
-
Raymond Yau
-
Takashi Iwai
-
Vinod Koul